aboutsummaryrefslogtreecommitdiff
path: root/html/pps.htm
diff options
context:
space:
mode:
Diffstat (limited to 'html/pps.htm')
-rw-r--r--html/pps.htm106
1 files changed, 106 insertions, 0 deletions
diff --git a/html/pps.htm b/html/pps.htm
new file mode 100644
index 000000000000..a20dd4d744ea
--- /dev/null
+++ b/html/pps.htm
@@ -0,0 +1,106 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<html>
+<head>
+<meta name="generator" content="HTML Tidy, see www.w3.org">
+<title>Pulse-per-second (PPS) Signal Interfacing</title>
+</head>
+<body>
+<h3>Pulse-per-second (PPS) Signal Interfacing</h3>
+
+<img align="left" src="pic/alice32.gif" alt="gif"><a href=
+"http://www.eecis.udel.edu/~mills/pictures.htm">from <i>Alice's
+Adventures in Wonderland</i>, Lewis Carroll</a>
+
+<p>Alice is trying to find the PPS signal connector.<br clear=
+"left">
+</p>
+
+<hr>
+<p>Some radio clocks and related timekeeping gear have a
+pulse-per-second (PPS) signal that can be used to discipline the
+local clock oscillator to a high degree of precision, typically to
+the order less than 10 <font face="Symbol">m</font>s in time and
+0.01 parts-per-million (PPM) in frequency. The PPS signal can be
+connected in either of two ways: via the data carrier detector
+(DCD) pin of a serial port or via the acknowledge (ACK) pin of a
+parallel port, depending on the hardware and operating system.
+Connection via a serial port may require signal conversion and
+regeneration to RS232 levels, which can be done using a circuit
+such as described in the <a href="gadget.htm">Gadget Box PPS Level
+Converter and CHU Modem</a> page. Note that NTP no longer supports
+connection via the data leads of a serial port.</p>
+
+<p>Both the serial and parallel port connection require operating
+system support, which is available in only a few operating systems,
+including Linux, FreeBSD and latest Solaris beginning with 2.7.
+Support on an experimental basis is available for several older
+systems, including SunOS, Digital Ultrix and HP-UX, and in current
+Digital Tru64 (Alpha). The PPS application program interface
+defined in RFC-2783 (PPSAPI) is the only interface currently
+supported. Older PPS interfaces based on the <tt>ppsclock</tt> and
+<tt>tty_clk</tt> streams modules are no longer supported. As the
+PPSAPI is expected to become an IETF cross-platform standard, it
+should be used by new applications.</p>
+
+<p>The PPSAPI inerface requires a <tt>
+/usr/include/sys/ppstime.h</tt> header file. This file is included
+in Linux and FreeBSD distributions, but not in other distributions
+or standard workstation products at this time. Header files for
+other systems, including Solaris, can be found in the <tt>
+nanokernel.tar.gz</tt> distribution, which can be found via the
+Collaboration Resources link at www.ntp.org. The top level
+directory contains a number of subdirectories for each
+architecture, including Solaris. The <tt>ppstime.h</tt> file for
+each architecture can be found in the subdirectory of the same
+name.</p>
+
+<p>In the preferred mode of operation, PPS signals are processed by
+the <a href="driver22.htm">PPS Clock Discipline</a> driver and
+other clock drivers which might be involved need not know or care
+about them. In some cases where there is no other driver, time
+might be obtained from remote NTP servers via the network and local
+PPS signals, for instance from a calibrated cesium oscillator, used
+to stabilize the frequency and remove network jitter. Note that the
+<tt>pps</tt> configuration command has been obsoleted by this
+driver.</p>
+
+<p>The PPS driver operates in conjunction with a preferred peer, as
+described in the <a href="prefer.htm">Mitigation Rules and the <tt>
+prefer</tt> Keyword</a> page. One of the drivers described in the
+<a href="refclock.htm">Reference Clock Drivers</a> page or another
+NTP server furnishes the coarse timing and disambiguates the
+seconds numbering of the PPS signal itself. The NTP daemon
+mitigates between the clock driver or NTP server and the PPS driver
+as described in that page in order to provide the most accurate
+time, while respecting the various types of equipment failures that
+could happen.</p>
+
+<p>Some Unix system kernels support a PPS signal directly, as
+described in the <a href="kern.htm">A Kernel Model for Precision
+Timekeeping</a> page. Specifically, the PPS driver can be used to
+direct the PPS signal to the kernel for use as a discipline source
+for both time and frequency. The presence of the kernel support is
+automatically detected during the NTP build process and supporting
+code automatically compiled. Note that the PPS driver does not
+normally enable the PPS kernel code, since performance is generally
+better without it. However, this code can be enabled by a driver
+fudge flag if necessary.</p>
+
+<p>Some configurations may include multiple radio clocks with
+individual PPS outputs. In some PPSAPI designs multiple PPS signals
+can be connected to multiple instances of the PPS driver. In such
+cases the NTP mitigation and grooming algorithms operate with all
+the radio timecodes and PPS signals to develop the highest degree
+of redundancy and survivability.</p>
+
+<hr>
+<a href="index.htm"><img align="left" src="pic/home.gif" alt=
+"gif"></a><br>
+<br>
+
+
+<address><a href="mailto:mills@udel.edu">David L. Mills
+&lt;mills@udel.edu&gt;</a></address>
+</body>
+</html>
+