[time-nuts] Newbie question: GPSDO filtering principles

Dr Bruce Griffiths bruce.griffiths at xtra.co.nz
Sun Apr 22 10:46:10 EDT 2007

Peter Vince wrote:
> Hello all,
>      The recent talk about the ideal GPSDO has reminded this newbie of a
> question I hope someone might be able to simply answer:  we have a couple
> of Rubidium GPSDOs which track in the long term, but their phase drifts
> by several hundreds of nanoseconds with an irregular, but roughly daily,
> pattern.  The units have a log output which shows the changes to the EFC
> DAC, and this changes usually after a period of 8192 seconds - sometimes
> longer, but rarely less.  I understand the need to average the GPS
> reading over this sort of period, but by only changing the EFC at this
> period leads to comparatively wild frequency swings - parts (plural!) in
> 10^11!
>      I was wondering if a "sliding window" scheme would be better -
> average over a period of, say, 8192 seconds, but recalculate this average
> more often - say every hundred seconds.  The problem would be that having
> applied a correction to your oscillator, subsequent averages would be
> difficult as the slope of the readings before and after the correction
> would be different.  Perhaps you could process the old data to remove the
> slope of your recent correction?  Another option would be to use a DDS,
> and then readings wouldn't be affected by your corrections, and so long
> term averages could be taken over any period.  But the disadvantage would
> be that you would have no feedback, and hence not know if you applied an
> appropriate amount of correction.
>      Hmmm, the brain is spinning with all the possibilities and problems!
>  Can some provide a quick explanation of the way it is (properly) done,
> or is there a website that discusses it?
>      Thanks,
>           Peter
> _______________________________________________
> time-nuts mailing list
> time-nuts at febo.com
> https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts

You are correct, a properly implemented disciplining algorithm should be 
gradually updating the rubidium efc inputs somewhat more frequently than 
If your observations are indeed correct, whoever designed the discipling 
algorithm didn't have a clue how it should actually be done.
Either that or something has gone wrong with the firmware.
Some of these disciplining algorithms are tunable, has the integral term 
been set to zero?

The simplest algorithms can be viewed as a digital implementation of a 
type 2 phase lock loop including the integral and proportional terms.
The loop time constants will be large but the efc value should be 
updated much more frequently than every 8192 seconds.
Some averaging (running average ) of the phase errors before calculating 
the the integral and proportional terms is OK but not too much or the 
loop will become unstable.


More information about the time-nuts mailing list