View Single Post
  #61   Report Post  
David Maynard
 
Posts: n/a
Default Why aren't computer clocks as accurate as cheap quartz watches?

lid wrote:
In sci.electronics.basics
wrote:

Why do the battery powered clocks in personal computers tend to keep
worse time than quartz watches, even the $1 ones?



The computer batteries measure fine, at least 3.15V.



I thought that the problem was temperature swings in the computers
(25-38C), but a couple of cheapo watches taped inside the computers
kept better time.



The answers I found useful in the thread a
* Use internal capacitor to adjust for the crystal.
* Provide stable voltage.
* DS1387 (suns?) have a good track record.
* Crystal chassi shall be grounded.

Useing these facts it should be possible to construct a fairly precise clock.
A precise crystal with internal capacitor in shielded box powered by it's
own linear voltage regulator should do it?

It could then countup a synchronous counter on positive flank. And be read on
negative flank (and only then).

Regulator could use diodes to enable proper batteri/psu operation. Separate
regulator for counter and crystal.


Sure its possible to make an 'accurate' hardware clock, and plenty exist,
but there isn't a compelling reason to be obsessive about it for a
'typical' PC as it is either of little consequence (like a standalone PC)
or there is a more convenient solution such as domain/internet time
synchronization.

And domain time synchronization would be needed even if every PC in the
domain had an 'accurate' (however we define that) clock because there are
too many ways even an 'accurate' clock can get off time, not the least of
which being that 'time', when running, is different than the CMOS clock.

Its really more complex than just the CMOS clock as that clock isn't what a
PC really needs. A computer needs a regular interrupt to schedule tasks and
do other time keeping functions so you end up with the situation where the
'software' time doesn't match the 'hardware' time, regardless of how
'accurate' the CMOS clock is, and contrary to w_tom's global assertion that
the software time doesn't affect the CMOS clock it depends on the O.S..
Modern Linux systems (e.g. Debian 2.2 and up), for example, set the CMOS
clock to the software clock at shutdown so they're synchronized.

At any rate, you'd end up going through the pain of trying to make a
blisteringly accurate CMOS clock simply so it's blazingly accurate at post
rather than waiting a minute for it to synchronize after boot and network
access comes up. Is that worth it?