Time Interval Measurement Techniques

From the Time-Nuts mailing list:

Trevor Higgins wrote:

Hello!
Just a couple of backslashes probing the world of insanely accurate time.

My first question, which will doubtlessly lead to many more, is where
can I find some information on the circuitry to derive the difference
between two PPS signals and read it in some sort of digital format.
I'd also be interested in finding some information on deriving PPS
signals from a raw 10Mhz signal, since it seems that rubidium
frequency standards are a fair bit cheaper than 1PPS standards.
I hope to build my first GPS disciplined atomic standard within a few
months, learning all sorts of things along the way. Sorry if I'm
already asking some questions that have obvious answers, but i wanted
to start on the best possible information out there, and anyone on
this list probably has the best advice that I could ask for.

I've got a lot of raw potential, and have been feeding my interest in
timekeeping with a ton of random information for a long time, and it
is time to do something with it.
Glad to be part of a group that might understand how fascinating this
all is to me.

Obsessed with all things precise and accurate,


Trevor

Trevor

The answer to your question depends on your accuracy and resolution requirements.

The easiest method is to obtain a time interval counter like the HP5370A (or HP5370B), the SR620, the Agilent 53131A. Agilent 53132A, etc.

Alternatively you can build your own:

1) If your resolution requirements are more modest (eg 100ns) then you can easily build your own time interval counter. With some ingenuity its possible to use a suitable micro to do this. The best method being to sample a free running counter (extended in software as required) with the synchronised leading edge of the PPS pulses and subtract the corresponding time stamps. Done correctly, this ensures that no PPS pulses are lost due to processing time.

2) If you need higher resolution you can use a gate array and microprocessor together with a faster clock (100MHz or more depending on the gate array). Its also possible to use a suitable DSP (eg an Analog Devices Blackfin DSP) to timestamp the leading edge of a PPS pulse with a resolution of a few nanosec (<3) with little external logic required.

3) Subnanosecond resolution requires an interpolator as GHz clocks are usually impractical and/or expensive. There are many interpolation techniques including:

a) Sampling a a pair of quadrature phased sine waves. The clock usually has the same frequency as and is phase locked to the sinewave.

b) Charging a capacitor for the time interval from the leading edge of a PPS pulse to the next active clock edge. Use an ADC to measure the voltage across the capacitor, combine this with the digital time stamp derived by sampling a continuously clocked counter and reset the capacitor for the next PPS pulse. A variant of this is to charge the capacitor with a current I and discharge it with a lower current such as I/1000 and measure the time taken to discharge the capacitor to zero using a conventional counter. This technique can increase the resolution by a factor of 1000 or more.

c) Triggered phase locked vernier oscillators as used in the HP5370 (A or B).

d) Use a tapped delay line consisting of a long string of gates within an IC (custom or FPGA) as in the Acam time interval measurement chips.

e) Low pass filter the PPS signals and then sample the resultant low passed signals with a high resolution high sampling rate ADC (one per PPS input) such as a pipeline ADC clocked at 100MHz or more. Low pass filtering the PPS signal ensures that the ADC takes several samples during each PPS signal transitions. One can then use software to accurately time stamp the instant at which the transitions of the low pass filtered PPS signals cross a threshold. When measuring the time delay between the active transitions of two PPS pulses each PPS signal has its own dedicated ADC and low pass filter. The differential delay (filter + ADC) between channels has to be measured and subtracted to give the actual delay between the two PPS edges. With a fast enough DSP or similar processor no auxiliary logic is required. With a less capable processor an FPGA or equivalent will be required as well.

All the clocks need to be phase locked to a low noise frequency standard to maintain accuracy for longer time intervals.

For short time delays between the 2 PPS pulses an interpolator circuit by itself may suffice.

Thus the relevant questions are:

1) What is the maximum range you need/want to be able to measure?

2) What resolution do you need/want?

3) What accuracy do you need/want?

Bruce