[time-nuts] Help understanding an ADEV

Tom Van Baak tvb at LeapSecond.com
Thu Sep 11 16:53:59 EDT 2014

> I've been wondering if it would be better to look in the frequency domain.  
> I'll have to look at Tom's site to see if he has code to do that.
> Bob

Hi Bob,

Ok, I think I found the problem with your plot. There's one mistake, one misunderstanding, and a miscalibration.

1) It appears you're allowing bogus DAC readings to pollute the ADEV calculation. Based on the raw data you kindly sent, your nominal DAC value is about 2.1 volts and your DAC voltage typically changes by tens or low hundreds of microvolts.

However the first couple of data points are 0.0 and 1.0 volts. The ADEV calculation is therefore seeing changes of millions (!) of microvolts. This completely messes up every ADEV calculation at every tau of your plot. You must feed clean data into any ADEV calculation. Either fix your instrumentation, or put checks in your scripts, or visually examine time series data before you blindly feed it into a statistical formula or a tool.

I don't know why the plotting package you used does not show these points. Those four bogus points should have been an instant red flag.

2) Realize that we normally make ADEV plots only from phase data or from frequency data. Phase data is the net time difference (or time interval) between the DUT and the REF. Units are seconds. Frequency data is the (normalized) relative frequency difference between the DUT and the REF. This is unitless.

Now in your case, you want to make an ADEV plot from DAC data. This is ok, since DAC voltage is essentially a proxy for frequency offset. But you can't feed DAC or frequency data into the adev1 tool, since that tool expects phase data only. Make sense?

The details are that ADEV is based on the 2nd difference in phase, which is the 1st difference in frequency. You have accidentally feed frequency data into a phase calculation and the result is some sort of 3rd difference! This is not what you want.

The solution is either to integrate your DAC or frequency data so it looks like phase. Or, just use a tool that will take frequency data instead of phase data. Stable32 and TimeLab offer this option. Or you can use adev1f.exe (www.leapsecond.com/tools/) which I just made for you.

3) To get an accurate ADEV plot you must scale your arbitrary DAC voltage to real Hz. Use the known or measured EFC offset and gain to convert absolute voltage to relative voltage to relative frequency error. This data can then be given to Stable32 (Data Type: Freq), or TimeLab (File data: Frequency difference), or feed directly to the new tool, adev1f.

Let me know if you have any questions.


More information about the time-nuts mailing list