Frequency sweep with constant signal delay

Jun 16, 2005 10 Replies

I would like to do some ESR tests on a switched-capacitor converter but I am having problems developing a proper test circuit.



I'm using two square wave signals, sig1 and sig2, to drive the MOSFET switches and I would like to do a frequency sweep from 1kHz to 1MHz but my problem is keeping a constant delay between the two. Sig1 has a 45% duty cycle and period T. Sig2 has a 35% duty cycle and I need to keep sig2 delayed so that its pulse sits between .55T and .9T of sig1 during the frequency sweep. Since the delay on sig2 will be entirely dependent on the period of sig1 I'm not sure if this is possible over such a large frequency range.



The traditional way of doing this is with a frequency of some multiple of the final frequency, and using a digital divider chain to generate the different phases. Using ring counters for the dividers may automatically give you the raw outputs you need. More generically called a "overlapping phase clock generator".

Another approach is phase-locked loops to ensure phasing between two oscillatorsbut for a 1kHz to 1MHz range you'd probably need several C's switched in and out of the oscillator/loop filters. Doing it all digitally is such a win.

Tim.

I can't imagine why not.

T00: S1 high T45: S1 low T55: S2 high T90: S2 Low repeat (T100 => T00')

And clock that at from 100 KHz to 100 MHz. Nothin' to it! You could even divide by five by hand first, to bring the clock down to 20 KHz to 20 MHz. It's a walk in the park! ;-)

Cheers! Rich

I agree that this will be easier to accomplish with digital circuitry but I cannot visualize the circuit that you guys are talking about. Would it not be possible to use a counter with state detection to toggle two different flip-flops (S1 & S2) at the proper times?

Yes, that's exactly what I was suggesting.

I wish you googlegroupies would learn to cut and paste some context.

Good Luck! Rich

looking at your signals at 1kHz and assuming that you want Sig2 to go high during the time that sig 1 is low, we\'ll wind up with something like this: ||| _________________ _____ SIG1____________| |_____________________| ||| _______ _____________ SIG2 |_________________________| |___________ --->| |

MacArthur park, maybe, but when you start advocating invoking a 100MHz sampling rate with no supporting documentation, your glib "solution" turns into shit. As does most of your commentary. What the fuck is it with you, anyway? Do you think that your opinions are so precious that they should cause events to sway "Rich\'s way" and then be judged by you and allowed to exist only if you approve of them? Can you say "megalomania"?

Yes. Another way would be to use a chip like the HC4017.

It is a counter/decoder. It also outputs a signal that goes high when it wraps to 0. If you clock it at 20x your target frequency, you have signals which correspond to 5% of the intended period. Using a D flipflop, configured in the standard clock-toggle configuration, you can differentiate between the first and second 1/2 of the target period using that 'wrap' signal. Now, it is just a matter of 'or'ing the proper outputs of the 4017 for each signal, and 'and'ing the result with the output of the flipflop, and you can achieve waveforms like you require.

You can use wire-or with diodes to decrease the part-count, but it'll affect the accuracy of the output, particularly at the highest frequency you need.

Make sure all the logic you use is fast enough.

Regards, Bob Monsen "I\'m mad as hell, and I\'m not going to do anything about it!"

How do you propose to maintain constant duty cycles with variable periods?

In article , Bob Monsen wrote: [....]

Better yet:

Run the outputs of the CD4017 to the J and K inputs on some flip-flops. The flip-flop's output will go high on the clock after its J goes high and low on the one just after its K goes high.

The advantage is that there can't be a race condition created glitch on the output like there could be with the OR gate method.

-- kensmith@rahul.net forging knowledge

Yes, that is better. There is still some logic required to select the first or second half period. Perhaps a reset or an enable pin on the JKs could be used for this.

"I\'m mad as hell, and I\'m probably going to just sit here and take it!"

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required