Application Note – 26
IRIG B Time Code (Simplified)

Introduction
Inter Range Instrumentation Group – IRIG – is the standards group of the Range Commanders Council, and amongst other things is responsible for the standard for IRIG Time Codes. The time code standard has been around for many years, and is still widely used for time communication between instrumentation systems worldwide. The most commonly used format is the IRIG B time code, due to it suitability in terms of precision and convenience (the 1kHz amplitude modulated version can be carried for several hundred meters over standard coaxial cable).
While there are more recent protocols and implementations, such as Network Time Protocol, and most recently Precision Time Protocol, IRIG will certainly maintain a place in instrumentation systems for many years to come.
This document is not intended to provide a comprehensive description of the various different formats of time code available, but rather is intended as a simple reference guide for people servicing and existing or implementing a new IRIG B system.
Description
IRIG B Time Code is one of a number of different IRIG time code formats. A list of those formats is shown in appendix A. The characteristic that differentiates different IRIG time code formats is primarily resolution, which directly relates to data rate. On one end of the scale is IRIG D, with a “time frame” ( how long it takes to transmit a complete set of information) of 1 hour, and at the other end is IRIG G, with a “time frame” of 0.01 seconds.
IRIG B has a “time frame” of 1 second, and that time frame is divided into a data rate of 100 Hz to provide time of day and day of year information. The two most commonly found forms of IRIG B are “DCLS” and “AM”.
DCLS
DCLS stands for DC Level Shifted and describes the digital (i.e. TTL pulses) pulse width modulated form of IRIG B. The more definitive description of this version, is IRIG B 000 (see appendix B) which defines:
First 0 Pulse Width Code
Second 0 No Carrier
Third 0 Contains BCD time of year, Control Functions, Straight Binary Seconds
Often, it is most convenient to first digitally generate this format, and then (if required) subsequently convert it to the AM version.
When monitored on an oscilloscope, the DCLS version looks like figure 1 below.

Figure 1 – IRIG B DCLS
The top trace shows the 1PPS (1 pulse per second) pulse on which the oscilloscope was triggered, to show the bottom trace, beginning of the IRIG B DCLS pulse stream. From the figure, it can be seen that the end of one cycle and beginning of the next is marked by two, 8 milli second wide, pulses (one marks the end of a cycle, the other marks the beginning, leading edge coincident with the 1PPS). The next, 5 milli second wide, pulse is the least significant digit of seconds, and in fact alternates between 5 and 2 millisecond pulse width, as the least significant bit alternates between a ‘1’ and a ‘0’. The next, 2 milli second wide, pulse is the next least significant bit of the BCD seconds count, in this case a ‘0’ (thus the 2 milli second width). The first four pulses after the market are units of seconds, followed by three pulses representing tens of seconds, therefore from the diagram above it can be determined that the seconds count represented is;
Bit 1 1 |
Bit 2 0 | Represents 5 |
Bit 3 1 | |
Bit 4 0 | | Seconds total is 05
|
Bit 5 0 | |
Bit 6 0 | Represents 0 |
Bit 7 0 |
AM
AM stands for “Amplitude Modulated” and describes the 1kHz sine, amplitude modulated version form of IRIG B. The more definitive description of this version, is IRIG B 120 (see appendix B) which defines:
First 1 Sine Wave, amplitude modulated
Second 2 Frequency of sine wave 1kHz
Third 0 Contains BCD time of year, Control Functions, Straight Binary Seconds
The modulated version is shown below, figure 2.

Figure 2 – IRIG B Amplitude Modulated
Again, the top trace shows the 1PPS (1 pulse per second) pulse on which the oscilloscope was triggered, to show the bottom trace, beginning of the IRIG B AM data stream.
Bit 1 1 |
Bit 2 0 | Represents 9 |
Bit 3 0 | |
Bit 4 1 | | Seconds total is 49
|
Bit 5 0 | |
Bit 6 0 | Represents 4 |
Bit 7 1 |
IEEE standard (IEEE 1344) specifies the implementation of IRIG B code to include the segment of the transmission dedicated to providing additional information in a number of “Control Functions” such as:
leap second pending, daylight saving in effect, and a number of other pieces of information. The control codes are shown in Fig 3 below.
IEEE 1344 IRIG B Time Code Control Functions | ||
Bit No. | Designation | Description |
49 | Position Identifier P5 | |
50 | Year BCD encoded 1 | Low nibble of BCD encoded year |
51 | Year BCD encoded 2 | |
52 | Year BCD encoded 4 | |
53 | Year BCD encoded 8 | |
54 | empty, always zero | |
55 | Year BCD encoded 10 | High nibble of BCD encoded year |
56 | Year BCD encoded 20 | |
57 | Year BCD encoded 40 | |
58 | Year BCD encoded 80 | |
59 | Position Identifier P6 | |
60 | LSP – Leap Second Pending | set up to 59 seconds before ls insertion |
61 | LS – Add leap second | 0 = Add, 1 = Delete, leap second |
62 | DSP – Daylight Saving Pending | set up to 59 seconds before DS changeover |
63 | DST – Daylight Saving Time | set during Daylight Saving Time |
64 | Time zone Offset Sign | sign of TZ offset, 0 = + , 1 = – |
65 | TZ offset, binary encoded 1 | Offset from IRIG time to UTC time. Encoded IRIG time plus TZ offset ALWAYS equals UTC |
66 | TZ offset, binary encoded 2 | |
67 | TZ offset, binary encoded 4 | |
68 | TZ offset, binary encoded 8 | |
69 | Position Identifier P7 | |
70 | TZ offset 0.5 hour | set if additional half hour offset |
71 | TFOM Time Figure Of Merit | Time figure of merit represents approximated clock error, 0x00=clock locked, 0x0F=clock failed |
72 | TFOM Time Figure Of Merit | |
73 | TFOM Time Figure Of Merit | |
74 | TFOM Time Figure Of Merit | |
75 | PARITY | Parity on all preceding bits, incl. IRIG-B time |
Figure 3 – IRIG B Control Codes
General
The type of IRIG B used (DCLS or AM) depends very much on the application. Best accuracy can be achieved using DCLS, as the leading edge of the first Marker pulse is well defined and can be generated to a few tens of nano seconds with a good source clock. The AM version has a less well defined leading edge as it is a function of the sine wave “cross-over” point, and this limitation reduces the accuracy somewhat to around a micro second, although some manufacturers do inject a small “blip” on the first Marker pulse to assist with cross-over detection accuracy.
Interfaces vary somewhat between equipment manufacturers, but most typical is a coaxial output connection via BNC type connector with an output impedance of either 50 ohms or 600 ohms.
Unfortunately, although it tends to be more accurate, the digital nature of the DCLS code make it unsuitable for transmitting over long (several hundred feet) cable distances and therefore in these cases the AM version is much more popular.
Summary
Although IRIG B (and other) time codes have been around for a long time, there are still many applications where it is the best solution for time communication between devices. Accuracies of the order of a few microseconds and better are readily attainable and there is a large selection of available equipment for both generating and receiving IRIG B time code information.
Newer protocols include Network Time Protocol (NTP) which can provide accuracies of better than 10milli seconds over Ethernet (adequate for many computer applications), and the even newer Precision Time Protocol (PTP) that can provide sub microsecond accuracies, also over Ethernet, however for which the implementation to achieve comparable accuracy to IRIG B is somewhat more complex, requiring specialized PTP devices within the network. While NTP will probably never replace IRIG B in applications requiring precision timing, it is probable that over the next decade, PTP will find a place in many applications currently utilizing IRIG B.
For more detailed information on the complete IRIG standard, please follow the link below;
http://www.irigb.com/pdf/wp-irig-200-04.pdf
Appendix A
Different Time Code Formats
- Time code A has a time frame of 0.1 seconds with an index count of 1 millisecond and contains time-of-year and year information in a binary coded decimal (BCD) format, and seconds-of-day in straight binary seconds (SBS).
- Time code B has a time frame of 1 second with an index count of 10 milliseconds and contains time-of-year and year information in a BCD format, and seconds-of-day in SBS.
- Time code D has a time frame of 1 hour with an index count of 1 minute and contains time-of- year information in days and hours in a BCD format.
- Time code E has a time frame of 10 seconds with an index count of 100 milliseconds and contains time-of-year and year information in a BCD format.
- Time code G has a time frame of 0.01 seconds with an index count of 0.1 milliseconds and contains time-of year information in days, hours, minutes, seconds, fractions of seconds and year information in a BCD format.
- Time code H has a time frame of 1 minute with an index count of 1 second and contains time-of-year information in days, hours, and minutes in a binary coded decimal BCD format.