[ntp:questions] Installing more stable oscillator?
David L. Mills
mills at udel.edu
Sat Jul 14 21:02:47 UTC 2007
As you know, the CPU oscillator is not the oscillator that drives the
timer interrupt and the two are not syntonic. The kernel disciplines the
software clock by nudging it one way or another at each timer interrupt,
then uses the CPU clock to interpolate over some period, tick interrupts
in my code. The code works hard to avoid tiny wigglesecnods due to the
lack of syntonicity betwee the CPU and timer oscillators.
The interpolation process has to be done carefully, as the CPU
temperature and thus the oscillator frequency, varies with the
instruction set (e.g., integer/floating point arithmetic, running/idle,
etc.). The timer oscillator is a separate chip and follows more closely
the ambient temperature.
There are two ways known to me to implement the CPU oscillator, one
using an on-chip oscillator and frequency divider and 33/66-MHz (?)
quartz oscillator in a phase-lock loop. The other, as in the Digital (!)
Alpha, uses a surface accuostic wave (SAW) oscillator at the CPU
frequency. My last remaining Alpha uses that method and it's darn good.
In my four other Alphae, now retired, all of them were better than 5 PPM
nominal frequency error.
Paul.Croome at softwareag.com wrote:
> NTP's mission in life is to discipline a cheap, unstabilized computer
> system clock
> (quartz oscillator) to one or more better quality, more stable time
> If your computer has a Grade A system clock, you would have to
> carefully whether you would make matters better or worse by trying to
> discipline it from time sources derived via the Internet.
>>Is it possible to have NTP completely ignore the computer's crystal
>>oscillator and use an external oscillator?
> The computer's crystal oscillator (system clock) is an essential part
> of an
> NTP server; it's the entity that NTP is controlling. Don't confuse the
> external oscillator(s), which NTP uses as its input, and the system
> which is the end result. Using a better-quality, e.g. ovenized, quartz
> will give NTP an easier job; but NTP has been designed and engineered
> cope with the vagaries of typical computers with typical system
> Yes, it should be possible to use a GPS to number the seconds and
> long-term disciplining of a rubidium oscillator, which in turn
> provides the PPS
> input to NTP.
More information about the questions