Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 16 Jun 1996 12:47:40 +1000
From:      Bruce Evans <bde@zeta.org.au>
To:        nate@sri.MT.net, wollman@lcs.mit.edu
Cc:        current@FreeBSD.org
Subject:   Re: NTP gurus
Message-ID:  <199606160247.MAA01710@godzilla.zeta.org.au>

next in thread | raw e-mail | index | archive | help
>The difference between the nominal and measured frequency of the timer
                                                 period
>(as determined by Bruce's code) is about 10 ns in the period of the
>oscillator (which is about 838.1 us); by my calculation, this could
>account for about one second per day.

The oscillator period is actually about 838.1 ns.  The difference needs
to be 10/1000 ns to be consistent with this and a drift of 1 second/day.

On one of my systems, the difference between the periods is about 64 times
as large - far too large.  The (rtc) reference clock seems to be accurate
to 1 second per day or better, so using the measured frequency reduces the
drift from about 64 seconds/day to only a few seconds/day.

>I suspect that there is enough
>hour-to-hour variation in the oscillator for this difference to make
>no matter.

I hope the hour-to-hour variation is quite small and the long term variation
is smaller.  However, the current code has a builtin rounding error of
between -0.5 and 0.5 parts per (timer_freq/hz), because the timer frequency
has to be converted to a maximum count of approximately (timer_freq/hz) and
the fractional part is discarded.  For the usual timer_freq and hz, this
translates to an error of up to 41 parts/million = 3.5 seconds/day.  1
second/day is already better than you should expect.  (You could expect
better if the nominal timer_freq is a multiple of hz, but it isn't.).

Bruce



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199606160247.MAA01710>