[time-nuts] Frequency Comparator Ideas needed.

Bob Camp lists at rtty.us
Wed Aug 10 16:57:58 UTC 2011


Without knowing what you are doing, and the source of the unknown signal,
this is difficult to address. Here it goes anyway:

If the unknown is a free running source, then it has both a frequency (or
phase) modulation and a static phase offset. In other words, it can be on
the same frequency as the reference, but not at the same phase. I'm assuming
that is the case.

With an unknown (and possibly varying) static phase offset, phase detectors
are going to be tough to use. Any mix down approach (heterodyne to baseband
/ FM discriminator / PLL) will give you a tone between DC and 150 KHz. You
will have trouble getting a response in tens of ns from that signal. 

If you start your process when you get a positive edge on the reference, you
may not get a positive edge on the unknown for almost 20ns. The
corresponding negative edge would be at 40ns. That will limit a sequential
digital approach to something over 40ns for a valid output. 

The unknown signal swings +/-150 KHz. You want to know when it crosses zero.
How close do you want to know that? Is 75 KHz good enough or do you need 1.5
KHz? 75 KHz means measuring the period to <30 ps. 1.5 KHz gets you to <0.6
ps. A TDC for 0.6 ps is a bit more exotic than one for 30 ps. 

Is this a lab bench / one time sort of thing or are there environmental
constraints on it? The same 0.6 ps to 30 ps issue above could be a stability
limit on what ever you implement over your environment. 

Is your unknown signal likely to be quiet enough to estimate it's frequency
this fast? Jitter, spurs, and noise are all directly related. The better the
accuracy you are after, the lower jitter your unknown signal needs to be.
Going crazy to get a 0.01 ps floor isn't useful if the signal has 100 ps
cycle to cycle jitter on it. 

The only likely solution I see is to come up with a TDC (time to digital
converter) that will output data at a 50 MHz rate and give you a floor
that's good enough. Then feed it's output into something simple that tells
you if the period is greater or less than 20 ns. 

To get adequate stability with the TDC you may need two (or more) of them in
a ping pong arrangement. Check the reference with one, check the unknown
with the other and then swap. Always have one ready for the next edge on
each channel.  



-----Original Message-----
From: time-nuts-bounces at febo.com [mailto:time-nuts-bounces at febo.com] On
Behalf Of Dan Kemppainen
Sent: Wednesday, August 10, 2011 10:20 AM
To: time-nuts at febo.com
Subject: [time-nuts] Frequency Comparator Ideas needed.

Hi All,

Been lurking here for a while, some neat traffic going around. I'm 
thinking this may be a question for this list...

I'm wondering if there are any ways to compare two frequencies and 
tell if one is lower or higher than the other, at a very high rate of 
speed with a digital output. I would like to know how each cycle of 
the signals compare in terms of frequency, basically is one higher 
than the other or not. Ideally this returned signal would be a digital 
logic signal (high or low) and be glitch free.

Basically I have a relatively high frequency signal, say around 50Mhz 
+/- 150Khz that I would like to compare to a reference frequency 
(50Mhz) on a cycle by cycle basis. The two signals are not locked 
together, and the signals should never be exactly the same with the 
exception of transitions of the input signal across the reference 
frequency. I'd like to know when the transition happens to within a 
few tens of nanoseconds if possible.

I've currently been looking at digital Phase/Frequency type detectors, 
and am considering building a discrete unit based on high speed 74AUP 
or ECL/PECL type logic.

Just wondering if I'm missing something obvious, that you guys may 
know about!

Dan Kemppainen

time-nuts mailing list -- time-nuts at febo.com
To unsubscribe, go to
and follow the instructions there.

More information about the time-nuts mailing list