[time-nuts] How does sawtooth compensation work?

Bob Camp kb8tq at n1k.org
Mon Jul 18 19:20:47 EDT 2016


The sawtooth process “picks” the closest clock edge and spits out the PPS based on it.

If the internal TCXO is off of a point that divides to 1Hz, the edge guess changes fairly often
and you can average it out. A drifting TCXO will (effectively) never be at a modulo 1 Hz 
frequency long enough to matter. 

If the TCXO happens to hit a modulo 1 Hz point *and* remain fairly stable, the pick process
will always pick the same edge of the clock. Now the averaging process stops working. The
edge guess is no longer bouncing back and forth. If you graph what happens, it is a parabolic 
looking structure in the data between two triangle waves. The normal term for this is a hanging 

The gotcha is that depending on the TCXO, the temperature, and the guess process, the bridge
can “hang in there” for quite a while. If it hangs on one edge of the clock for a few hundred seconds,
the offset will likely chug right through your filter. 


On a receiver with sawtooth correction, you have a manufacturer specific message that gives
you information on the state of the receiver. It is defined as either applying to the next pps
or to the pps that just came out. There is a field that may give you picosecond resolution 
(as opposed to accuracy) data on the proper location of the PPS edge. Depending on how
you evaluate the correction, it can get the jitter down below 1 ns (again, jitter as opposed
to accuracy). 

A device that uses the sawtooth data shoves it into the control loop along with the measured 
early / late information on the PPS. 


> On Jul 18, 2016, at 6:31 PM, Nick Sayer via time-nuts <time-nuts at febo.com> wrote:
> I've read Tom's page about sawtooth PPS jitter and I believe I understand where it comes from.    My current GPSDOs ignore the phenomenon. Certainly at the moment, I'm satisfied with that.  The systems gravitate towards PLL time constants that average it all away. 
> What I'd like to understand is how sawtooth compensation works with receivers that support it. Is it that I expect an NMEA sentence with a nanosecond offset value that I add to any phase difference observation that I get?
> Sent from my iPhone
> _______________________________________________
> time-nuts mailing list -- time-nuts at febo.com
> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
> and follow the instructions there.

More information about the time-nuts mailing list