[time-nuts] TimeLab

Tom Van Baak tvb at LeapSecond.com
Sun Oct 9 17:13:34 EDT 2016

Hi Adrian,

> The dead zone random jumps can not be unwrapped by any software

Correct, the dead zones are real. But it is *not* true that the jumps cannot be unwrapped by any software. Let me explain...

When I collect data from an instrument, from thermometer to TIC, over RS-232 or GPIB or USB or LAN, I log the data to a file and prefix every line with a 9 decimal place MJD timestamp. This not only allows me to know when (historically) the data was collected, but by subtracting timestamp pairs, it also tells me how long each measurement took.

For frequency measurements, this allows you to determine counter dead time. For time interval measurements, this allows you to immediately detect when the counter goes into the dreaded too-close-to-zero sample skip mode. That is, when start/stop acts more like stop/start resulting in one reading every 2 seconds instead of every 1 second.

Right, it is impossible to retroactively re-measure the lost samples -- but by knowing when the sample rate is 1 sps vs. 2 sps you can reconstruct a valid phase data stream with constant tau, even with simple 2 sample interpolation. The result is that this repaired/fixed data is then perfectly usable for phase and frequency strip charts, as well as ADEV plots, and even FFT. Without this fix, all these plots can behave very badly because the universal assumption of some fixed tau0 has been violated.

The PC MJD (or equiv) timestamp does not need to be absolutely accurate. That is, you don't need NTP or anything like that. Just 0.1 or 0.01 second resolution is all you need. So this works on any microcontroller, or computer running any operating system, with or without internet connection.

If you don't like MJD, even something like the old unix clock() function is enough to disambiguate 2 sps from 1 sps. But the key point is never just blindly log plain serial data and then cry later. Always time-stamp or time-interval it as it is being read and written to a log file.


----- Original Message ----- 
From: "Adrian" <rfnuts at arcor.de>
To: "Discussion of precise time and frequency measurement" <time-nuts at febo.com>
Sent: Sunday, October 09, 2016 9:34 AM
Subject: Re: [time-nuts] TimeLab

Hi Magnus,

unfortunately, you can't measure 0 delay between two signals with a counter.
With a 53131A, there is 500ps of LSB jitter and jitter from the measured
signal as well as from the reference signal.
When both signals are exactly in phase, the counter will randomly jump
between 0 and 1 second (assuming you are measuring 1pps signals).
In order to avoid this dead zone, you must add a sufficiently large
phase offset between both signals.
And, keep the acquisition time small enough to avoid phase wraps due to
drift between both sources.
The dead zone random jumps can not be unwrapped by any software.


More information about the time-nuts mailing list