Inter-range instrumentation group timecodes, commonly known as IRIG timecode, are standard formats for transferring timing information. Atomic frequency standards and GPS receivers designed for precision timing are often equipped with an IRIG output. The standards were created by the Tele Communications Working Group of the U.S. military's Inter-Range Instrumentation Group, the standards body of the Range Commanders Council. Work on these standards started in October 1956, and the original standards were accepted in 1960. The original formats were described in IRIG Document 104-60, later revised and reissued in August 1970 as IRIG Document 104-70, upgraded later that year as the IRIG Document to the status of a Standard, IRIG Standard 200-70. The latest version of the Standard is IRIG Standard 200-16 from August 2016.
Timecodes
The different timecodes defined in the Standard have alphabetic designations. A, B, D, E, G, and H are the standards currently defined by IRIG Standard 200-04. C was in the original specification, but was replaced by H. The main difference between codes is their rate, which varies between one pulse per minute and 10,000 pulses per second.
IRIG Code B Calculation: Bit rate = 100 Hz = 100 × = 100 / second = 100 / 1000 ms = 1 / 10ms Bit time = 1 / = 1 / = 10 ms There are 100 Bits per frame. Frame time = × = 100 × 10 ms = 1000 ms = 1 second Frame rate = 1 / = 1 / 1 second = 1 Hz The bits are modulated on a carrier. A three-digit suffix specifies the type and frequency of the carrier, and which optional information is included: ;Modulation type:
;Coded expressions: Binary-coded decimalday of year, hours, minutes, and seconds and fractions are always included. Optional components are:
Year number
User-defined "control functions " occupying bits not defined by IRIG
"Straight binary seconds ", a 17-bit binary counter that counts from 0 to 86399.
BCD, CF, SBS
BCD, CF
BCD
BCD, SBS
BCD, BCD_Year, CF, SBS
BCD, BCD_Year, CF
BCD, BCD_Year
BCD, BCD_Year, SBS
The recognized signal identification numbers for each format according to the standard 200-04 consist of:
Format
Modulation Type
Carrier Frequency
Coded Expressions
A
0,1,2
0,3,4,5
0,1,2,3,4,5,6,7
B
0,1,2
0,2,3,4,5
0,1,2,3,4,5,6,7
D
0,1
0,1,2
1,2
E
0,1
0,1,2
1,2,5,6
G
0,1,2
0,4,5
1,2,5,6
H
0,1
0,1,2
1,2
Thus the complete signal identification number consists of one letter and three digits. For example, the signal designated as B122 is deciphered as follows: Format B, Sine wave, 1 kHz carrier, and Coded expressions BCDTOY. The most commonly used of the standards is IRIG B, then IRIG A, then probably IRIG G. Timecode formats directly derived from IRIG H are used by NIST radio stations WWV, WWVH and WWVB. For example, one of the most common formats, IRIG B122:
Timecode structure
IRIG timecode is made up of repeating frames, each containing 60 or 100 bits. The bits are numbered from 0 through 59 or 99. At the start of each bit time, the IRIG timecode enables a signal. The signal is disabled, at one of three times during the bit interval:
Bit 0 is the frame marker bit Pr. Every 10th bit starting with bit 9, 19, 29,... 99 is also a marker bit, known as position identifiers P1, P2,..., P9, P0. Thus, two marker bits in a row marks the beginning of a frame. The frame encodes the time of the leading edge of the frame marker bit. All other bits are data bits, which are transmitted as binary 0 if they have no other assigned purpose. Generally, groups of 4 bits are used to encode BCD digits. Bits are assigned little-endian within fields.
Bits 1–4 encode seconds, and bits 6–8 encode tens of seconds
Bits 10–13 encode minutes, and bits 15–17 encode tens of minutes
Bits 20–23 encode hours, and bits 25–26 encode tens of hours
Bits 30-33 encode day of year, 35-38 encode tens of days, and bits 40–41 encode hundreds of days
Bits 45–48 encode tenths of seconds
Bits 50–53 encode years, and bits 55–58 encode tens of years
Bits 80–88 and 90–97 encode "straight binary seconds" since 00:00 on the current day
In IRIG G, bits 50–53 encode hundredths of seconds, and the years are encoded in bits 60–68. Not all formats include all fields. Obviously those formats with 60-bit frames omit the straight binary seconds fields, and digits representing divisions less than one frame time are always transmitted as 0. No parity or check bits are included. Error detection can be achieved by comparing consecutive frames to see if they encode consecutive timestamps. Unassigned 9-bit fields between consecutive marker bits are available for user-defined "control functions". For example, the IEEE 1344 standard defines functions for bits 60–75.
IRIG timecode
IRIG J timecode
IRIG standard 212-00 defines a different time-code, based on RS-232-style asynchronous serial communication. The timecode consists of ASCII characters, each transmitted as 10 bits:
The on-time marker is the leading edge of the first start bit. IRIG J-1 timecode consists of 15 characters, sent once per second at a baud rate of 300 or greater: DDD:HH:MM:SS
SOH is the ASCII "start of header" code, with binary value0x01.
At the end of the timecode, the serial line is idle until the start of the next code. There is no idle time between other characters. IRIG J-2 timecode consists of 17 characters, sent 10 times per second at a baud rate of 2400 or greater: DDD:HH:MM:SS.S This is the same, except that tenths of seconds are included. The full-timecode specification is of the form "IRIG J-xy", where x denotes the variant, and y denotes a baud rate of 75×2y. Normally used combinations are J-12 through J-14, and J-25 through J-29.