An input reference is an interface to a time reference. While a time reference can take many forms its fundamental responsibilities are to:
- Provide a 1PPS on-time-point
- Provide a time-of-day and date input (usually), and
- Provide a control and status protocol to the time source (sometimes).
The input references can also provide other time related data such as Leap Second indication and number of seconds, Julian date, day of year, day of week, week of year, status, sync indication, accuracy indication and other fields unrelated to time.
The TSync Time Code Processor architecture’s input reference subsystem is designed to support multiple possible input references, while allowing only a single time reference and 1PPS reference to discipline the local clock subsystem at any given time. The user can choose to use the factory default priority list for input references, or may define a proprietary priority list. This user priority list can be created to combine different time and 1PPS sources (such as GNSS time coupled with the external 1PPS). The user is also provided with the means to enable or disable the selection of a specified input reference allowing them to disregard the list and synchronize to a specific output.
GNSS receivers are usually the highest precision and accuracy time references a TSync Time Code Processor card can select. GNSS receivers use coaxial GNSS antenna input and typically provides a serial interface and a 1PPS output. The serial interface can be used for bi-directional communication with the GNSS receiver to implement a control and status protocol which conveys time and position information.
Inter-range instrumentation group time codes, more commonly referred to as “IRIG” time codes, were created by the Tele-Communications Working Group of the Inter-Range Instrumentation Group, which is a standard body formed by Range Commanders Council. This standard was used by US Government military test ranges, NASA, and other research organizations to distribute telemetry information, including time and frequency. The current standard version is IRIG Standard 200-4. The TSync Time Code Processor architecture uses IRIG formats as both input and output references. IRIG formats can be amplitude modulated, or they can be digital signals at various carrier and clock rates.
The TSync Time Code Processor architecture supports IRIG inputs with Formats A, B, and G. It supports inputs and outputs using modulation frequency values of pulse width code, also known as DCLS (0), and sine wave amplitude modulated coding. Additionally, the card supports inputs with frequency/resolution values of no carrier/index count interval, 1kHz/1ms, 10 kHz/0.1 ms, and 100 kHz/10 ms, as well as IRIG input coded expressions of the fields BCDTOY, CF, SBS, and BCDYEAR.
TSync Time Code Processor cards support IRIG inputs of the following coded expressions combinations for BCDTOY, CF, SBS, and BCDYEAR fields:
- 0 – BCDTOY, CF, SBS
- 1 – BCDTOY, CF
- 2 – BCDTOY
- 3 – BCDTOY, SBS
- 4 – BCDTOY, BCDYEAR, CF, SBS
- 5 – BCDTOY, BCDYEAR, CF
TSync Time Code Processor cards support synchronization with the following analog and DCLS IRIG input formats:
IRIG Input Reference Formats
|A – DCLS||A – AM||B – DCLS||B – AM||G – DCLS||G – AM|
|A – DCLS||A – AM||B – DCLS||B – AM||G – DCLS||G – AM|
TSync Time Code Processor cards support the IRIG B variant NASA36 as an input format, as well as the IEEE C37.118-2005 (which is an IRIG B format with extensions as an input format). The IEEE C37.118-2005 specification supersedes IEEE 1344-1996. The TSync Time Code Processor is backward compatible to IEEE 1344-1996 by compliance with IEEE C37.118-2005.
The card can automatically detect IRIG formats A, B, G, and NASA36. However, IRIG format IEEE1344, coded expression, and control field information cannot be auto-detected. These must be specified by the user if these inputs are to be used.
Note: Always configure IRIG parameters in the following order: format, coded expressions, control field definitions.
In operation, the TSync Time Code Processor card receives IRIG input data and any time code messages transmitted, performs signal conditioning on the data, and decodes the data per its manually set parameters and automatically detected functions. In turn, the card provides a serial time code data message and a 1PPS reference. It also returns the IRIG input message’s raw serial time code data in Spectracom’s data format. (This is useful in debugging serial time code source and hardware implementations.)
TSync Time Code Processor cards also accept as input any non-standard IRIG format generated by Spectracom Netclock units, including the non-standard BCDYEAR found in the Control field. This is intended to support the Spectracom 91xx and 92xx IRIG formats, which use the BCDYEAR in the Control field.
The card’s external 1PPS reference provides the on-time-point for the current second. This reference is used by the TSync Time Code Processor as the primary source of frequency synchronization (while another input reference is required to serve as the source of time and date information). The external 1PPS reference can be set to use either the rising or falling edge.
The TSync Time Code Processor card provides built-in references that support specialized user applications.
The TSync Time Code Processor can be set to use the host as the source of date and time information, while another input reference is required to serve as the source of frequency input. This allows the host to provide time to the card while providing a means to determine and indicate whether that time is valid for synchronization. Using the host as a reference means it could conceivably be used to receive date and time information from a source not available to the card, providing that information to the card for synchronization to it (while using a separate frequency input).
The TSync Time Code Processor provides a built-in reference that allows the card to operate without a separate input reference. The date and time or frequency information from this self reference is always considered valid. This allows a user to operate the card as if it were synchronizing to an input reference, without a valid external reference input. The self reference priority table entry defaults to “disabled.”
Input Reference Monitor
The input reference monitor subsystem maintains the reference priority table and determines which input reference(s) are selected to synchronize the clock subsystem.
Three tables are maintained by the system:
- A default table, which provides the default reference pairings in timing accuracy priority
- A working table, which is the table used for selecting reference inputs
- A user table, which can be stored persistently and, if present, will be loaded into the working table at startup.
Example default table
|Enable||Priority||Time Ref||1PPS Ref|
Legend: gps = GPS Reference, ird = IRIG DCLS Reference, ira = IRIG AM Reference, epp = External 1PPS Reference, hst0 = Host Reference, self = Self Reference
Entries can be added to and deleted from the working table. In addition, individual entries can be enabled or disabled. Their priorities can be changed at any time. Any changes to the table will cause the reference monitor to reevaluate the best reference to use for synchronization. The working table can be saved to the user table and persisted, or it can be reset to the default table or an already existing user table at any time.
At any given time, the highest priority enabled entry in the table that has both a valid time and a valid 1PPS reference will be used as the best reference for synchronization. The power of the reference monitor is in its ability to generate any combination of time and 1PPS references in any priority. For example, if a user has a high precision 1PPS source, this can serve as the provided external 1PPS reference and can be paired with a GNSS time reference.
The reference tables, the currently selected best reference, and the current validity states of all input references can be requested from the card.