Example: confidence

Computer Time Synchronization - NIST

The personal Computer revolution that began in the 1970's created a huge new groupof time and frequency users, those people who need to keep Computer clocks on time . Asyou probably know, Computer clocks aren't particularly good at keeping time . Simple clockslike your wristwatch and most of the clocks in your home usually keep better time than acomputer poor performance of a Computer clock can cause problems, since many computerapplications require time kept to the nearest second or better. For example, the computers ina financial institution must keep very accurate records of when transactions were completed,for legal or other reasons.

equivalent device). This timer-counter generates an interrupt every 54.936 milliseconds, or about 18.2 times per second. The computer's BIOS (Basic Input Output System) contains a software routine that counts the interrupt requests and generates a time-of-day clock that can Computer Time Synchronization Michael Lombardi Time and Frequency Division

Tags:

  Computer, Time, Interrupts, The interrupt, Computer time

Information

Domain:

Source:

Link to this page:

Please notify us if you found a problem with this document:

Other abuse

Transcription of Computer Time Synchronization - NIST

1 The personal Computer revolution that began in the 1970's created a huge new groupof time and frequency users, those people who need to keep Computer clocks on time . Asyou probably know, Computer clocks aren't particularly good at keeping time . Simple clockslike your wristwatch and most of the clocks in your home usually keep better time than acomputer poor performance of a Computer clock can cause problems, since many computerapplications require time kept to the nearest second or better. For example, the computers ina financial institution must keep very accurate records of when transactions were completed,for legal or other reasons.

2 Computer systems that make physical measurements and acquirescientific data need to know precisely when the measurements were made. Software used ona manufacturing floor may need to turn a piece of equipment on or off at a specified , any system involved with synchronous communications must keep accurate time . Forexample, radio and TV stations may need computers that can switch feeds or link up withremotes at the right paper describes several methods to keep accurate time by Computer . Beforelooking at these methods, let's look at how a PC-compatible Computer keeps - How a Personal Computer keeps timeSince the introduction of the IBM-AT personal Computer in 1984, all PC-compatiblecomputers have kept time the same way.

3 Each PC contains two clocks, regardless ofwhether it uses the 286, 386, 486, or Pentium microprocessor (or a derivative). These clocksgo by several different names, but for simplicity, we'll call them the software and hardwareclocks. The software clock runs when the Computer is turned on and stops when thecomputer is turned off. The hardware clock uses a battery and runs even while the computeris turned software clock is generated by an Intel 8254 timer-counter (or a functionallyequivalent device). This timer-counter generates an interrupt every milliseconds, orabout times per second.

4 The Computer 's BIOS (Basic Input Output System) contains asoftware routine that counts the interrupt requests and generates a time -of-day clock that canComputer time SynchronizationMichael LombardiTime and Frequency DivisionNational Institute of Standards and TechnologyComputer time Synchronization12 Computer time Synchronizationbe read or set by other software programs. For example, the operating system might use thetime-of-day information from the software clock to date and time stamp software clock is a poor timekeeper. Its timing uncertainty is limited by thestability of the interrupt requests.

5 Any change in the interrupt request rate causes the clock togain or lose time . If you leave your Computer turned on for long periods, the software clockmight be off by large amounts, perhaps a minute or more for every day that the Computer wasleft turned on. It's also possible for an ill-behaved software program to use the timer-counterfor another purpose and change its interrupt rate. This could cause the clock to rapidly gainor lose software clock also has limited resolution. It can only display values that areeven multiples of the time interval between interrupts (55 milliseconds).

6 For example,00:00 could never be displayed by the software clock. The closest possible values itcan display are 00:00 and 00:00 single biggest drawback of the software clock, however, is that when thecomputer is turned off, the clock stops running and loses all of its time -of-day this reason, a hardware clock is also necessary. The hardware clock is based on theMotorola 146818 Real time Clock Chip, or an equivalent device. When the Computer isturned off, the hardware clock runs off batteries. When the Computer is turned back on, thesoftware clock starts running again and sets itself (within 1 second) to the hardware the hardware and software clocks are synchronized at power-up, they run atdifferent rates and will gain or lose time relative to each other while the Computer is hardware clock is updated once per second and cannot display fractions of asecond.

7 Its timing uncertainty is determined by the quality of the crystal oscillator it uses asits time base. These crystals cost less than $1 in single quantities and offer only marginaltimekeeping performance. They are sensitive to temperature and other factors and theirfrequency uncertainty is not likely to be better than 1 x 10-5 (about 1 second per day). Inactual operation, most hardware clocks gain or lose about 5 to 15 seconds per day, with 10seconds per day being typical. Although the hardware clock usually outperforms thesoftware clock, its performance pales in comparison to even a low-cost you can see, neither the software or hardware clock is suitable for accuratetimekeeping.

8 Fortunately, there are ways to solve the PC timekeeping problem. Let's start bylooking at how to synchronize a Computer clock using an Internet time Synchronization3 Section - Internet time Setting ServicesIf your Computer is connected to the Internet, you can synchronize its clock to anInternet time server. The process is fast and easy. All you need is an active Internetconnection and client time servers use several standard timing protocols defined in a series of RFC(Request for Comments) documents. The three major timing protocols are the TimeProtocol, the Daytime Protocol, and the Network time Protocol (NTP).

9 The time serversare continually listening for timing requests sent using any of these three protocols. Whenthe server receives a request, it sends the time to your Computer in the appropriate protocol that you use depends upon the type of client software that you have. Mostclient software requests that the time is sent using either the Daytime Protocol or software that uses the Simple Network time Protocol (SNTP) makes the same timingrequest as an NTP client, but does less processing and provides less accuracy. Table the protocols and their port - Internet time ProtocolsNameDocumentFormatPort AssignmentsTime ProtocolRFC-868 Unformatted 32-bit binary numbercontains time in UTC seconds sinceJanuary 1, 37tcp/ip, udp/ipDaytime ProtocolRFC-867 Exact format not specified in only requirement is that time codeis sent as standard ASCII 13tcp/ip, udp/ipNetwork TimeProtocol (NTP)RFC-1305 The server provides a data packet thatincludes a 64-bit timestamp containingthe time in UTC seconds since January1, 1900 with a resolution of 200picoseconds.

10 NTP provides accuracyof 1 to 50 milliseconds. NTP clientsoftware normally runs continuouslyand gets periodic updates from 123udp/ipSimple NetworkTime Protocol(SNTP)RFC-1769 The data packet sent by the server isthe same as NTP, but the clientsoftware does less processing andprovides less 123udp/ip4 Computer time SynchronizationNIST operates a Internet time Service from Boulder, Colorado using multiple serversdistributed around the country. The NIST servers distribute time using the time , Daytime,and NTP formats and currently handle many millions of timing requests per day.


Related search queries