[time-nuts] GPSDO disciplining algorithms
csteinmetz at yandex.com
Mon Apr 13 19:52:17 EDT 2015
>I'm interested in GPSDO disciplining algorithms - presumably the
>good ones are really well thought out stochastic control algorithms.
There are two regimes a GPSDO must deal with -- normal operation, and holdover.
There is not a whole lot of mystery about normal, locked
operation. GPS is quite noisy at low tau -- e-8 or so at 1 second --
and improves steadily with increasing tau for many decades until
reaching a floor in the e-13 to e-14 range. By contrast, OCXOs are
much better at low tau, falling off when tau reaches ~1000 seconds
(typically) and their random-walk drift mechanisms take over. So,
you want a very slow loop to allow the local oscillator to determine
the stability more or less by itself with little influence from the
GPS at all tau where the LO is more stable than the GPS, crossing
over to GPS dominance al longer tau. The required time constant is
longer than practicable for an analog loop, so the control loop must
necessarily be digital.
For reasonably fast acquisition (and probably a necessity for
acquisition at all), it is common practice to implement a loop with
switchable or variable time constants, starting with a TC of a few
seconds and, as lock is approached and then held, and the OCXO
settles in, increases to the normal operating value (in the hundreds
to thousands of seconds range, depending on the particular
OCXO). Frequency control is typically implemented by a DAC driving
an EFC (varactor) input on the OCXO. The DAC steps should be small
enough to set the OCXO to the required accuracy, and numerous enough
to provide a sufficient range for tracking significant temperature
changes and crystal drift.
There really isn't much more to it than that (although "that"
includes a mind-numbing number of details that need to be worked out
and optimized -- I don't mean to imply that it is anything less than
a lot of very hard work).
The holdover regime is clearly entered when the GPS loses
lock. However, it begins much earlier, when GPS stability is reduced
due to link noise, multipath, poor antenna location, etc. Some means
must be used to determine when the GPS timing is compromised, and by
how much, and measures taken to maintain the best possible stability
from the GPSDO under the circumstances. At some point, the best that
can be done is to set an alarm indicating that the GPSDO output
cannot be trusted.
The simplest thing to do is to hold the DAC output at the
last-known-good value until normal locked operation is resumed. In
an effort to improve on this, many commercial GPSDOs use predictive
algorithms to learn the drift characteristics of the OCXO over time
and temperature while it is operating normally, and then adjust the
DAC output in accordance with the learned patterns during
holdover. Kalman filtering is typically used for this. (There is a
large body of literature on Kalman filtering and other predictive algorithms.)
Unfortunately, as others have already said, there is very little in
the literature about GPSDO disciplining algorithms. It appears that
most of the research has been done by GPSDO manufacturers and is
More information about the time-nuts