G-TOR is a trademark of Kantronics, Inc. G-TOR (Golay-Teleprinting Over Radio) can be viewed, in part, as a variant of the Automatic Link Establishment (ALE) protocol, outlined in MIL-STD-188-141A. G-TOR combines the error correcting properties of ALE, including Forward Error Correction (FEC) coding and full-frame interleaving, the Automatic Repeat reQuest (ARQ) cycle of Packet and a new application of the invertibility of the Golay code, to produce a faster new mode.


G-TOR is a synchronous transmission system with a data frame duration of 1.92 seconds and a 0.48-second window between data fraines, for a total cycle time of 2.40 seconds regardless of transmission rate. Data frames are 192, 384, or 576 bits long sent at 100, 200, or 300 symbols/sec, respectively, with the data rate dependent on band conditions. Each data frame consists of a Data field and Status byte, followed by a two-byte Cyclic Redundancy Check (CRC). No start or ending flags are added to any of the frames, thus lowering overhead and resulting in improved frame efficiency relative to AMTOR and PacTOR. The Data field contains 21, 45, or 69 eight-bit bytes sent at 100, 200, or 300 symbols/sec, respectively. The Status byte provides the frame number identification, data format (whether standard 8-bit ASCII or Huffman compressed), and a command (data, turnaround request, disconnect, or connect) for a total of 8 bits.


ACK frames are used to acknowledge correct or incorrect receipt of data frames, to request changes in transmission speed, and to change the direction of information flow. There are five different ACK frames: Data frame received without error (send next frame), Data frame error detected, Speed-up, Speed-down, and Changeover. Each of the ACK frames consists of two eight-bit bytes sent from the information-receiving station to the information- sending station at 100 symbols/sec, for a duration of 0.16-second during the 0.48-second window between data frames. The Changeover ACK frame initiates a changeover in information flow direction by starting out with a two-byte Changeover ACK (which causes the information-sending station to stop sending) followed by 19 data bytes, a single status byte, and a two-byte CRC, for a duration of 1.92 seconds (the same as a data frame). None of the ACK frames are interleaved; however, each is generated from a set of pseudorandom numbers and up to three bit-errors are allowed per ACK, thus reducing needless retransmissions from faulty ACK signals. Hence the ACKs are called fuzzy. Link quality, denoted by a set number of consecutive good or bad frames, determines link speed.


G-TOR frames are sent in normal ASCII or are Huffman and run-length encoded, depending upon which is more efficient on a frame-by-frame basis. The Huffman table for G-TOR is unique: It differs from the PacTOR table in that it emphasizes English over German character usage and upper and lower case characters are swapped automatically (frame-by-frame) in a third attempt to compress data—hence Huffman forms A and B.


G-TOR uses extended Golay coding which is capable of correcting three or fewer errors in a received 24-bit code word. The Golay code used in G-TOR is a half-rate code, so that the encoder generates one error-correction bit (a parity bit) for every data transmitted. Interleaving is also used to correct burst errors which often occur from lightning, other noise, or interference. Interleaving is the last operation performed on the frame before transmission and de-interleaving is the first operation performed upon reception. Interleaving rearranges the bits in the frame so that long error bursts can be randomized when the de-interleaving is performed. When operating at 300 symbols/second, the interleaver reads 12-bit words into registers by columns and reads 48-bit words out of the registers by rows. The de-interleaver performs the inverse, reading the received data bits into registers by rows and extracting the original data sequence by reading the columns. A long burst of errors, for example 12-bits in duration, will be distributed into 48 separate 12-bit words before the error correction process is applied. This effectively nullifies the errors. Both data frames and parity frames are completely interleaved.

In addition, by using the invertibility characteristic of Golay code words, data frames are always alternated with data frames coded in Golay parity bits. In this way, G-TOR can maintain full speed (when band conditions are good)—rather than fall to rate-1/2. Receiving parity bits can be used as data or as parity.


To establish a link, the information-sending station transmits the call sign of the intended receiver. Once the information-receiving station has synchronized, it sends an ACK to the information-sending station and data transmission begins.


G-TOR uses frequency-shift keying like PACTOR and packet radio. At 300 symbols/second, and with the recommended frequency shift of 170 or 200 Hz, G-TOR’s spectral characteristics are almost identical to those of packet radio.


G-TOR provides error correction by using a combination of both ARQ retransmission and forward error-correction. The error-detection code transmitted with each frame is a 2-byte CRC code, the same used in the AX.25 packet protocol, and it is used to determine if the frame was received correctly before error correction is initiated and after error correction is completed, to ensure that the error-correction process has successfully removed all errors in the packet. Although the CRC error-detection code is used on every frame to detect errors, the Golay error-correction procedure is skipped unless errors are detected. This ability to skip unnecessary error correction is extremely valuable since forward error correction is very costly in terms of throughput. The Golay code used in G-TOR is a half-rate code, with one error-correction bit required for every information bit; however, by using the invertibility of the extended Golay code, the half-rate transmission result normally encountered with FEC systems is avoided. Frames made up of parity bits can be fully converted to data frames. Received frames are synchronized, deinterleaved, decoded and checked for proper CRC. If the frame is found to be in error, the information-receiving station will request that the matching parity frame be sent. If the parity (or data) frame that follows is found to be correct, that frame is acknowledged. If, however, it too is in error, it is combined with the previous data (or parity) frame in an attempt to recover the original data bits. In this way the system has three chances to recover the original data from the transmission of one data and one parity frame. If unsuccessful, the ARQ cycle begins again. The dispersal of noise-burst errors via interleaving, combined with the power of the Golay code to correct 3 bits in every 24, usually results in the recovery of error-free frames.


Anderson, Phil: “G-TOR’s Evolutionary Improvements!” Kantronics Inc., Lawrence, KS, 1994.

Anderson, Phil: “H F ARQ Protocols,” RTTY Digital Journal, April 1994.

Anderson, Phil, and Glenn Prescott: “Error-Correcting Codes,” RTTY Digital Journal, March 1994.

Anderson, Phil, Michael Huslig, Glenn Prescott, and Karl Medcalf: “G-TOR: The New, Faster HF Digital Mode for the KAM Plus,” RTTY Digital Journal, March 1994, pp.1-2.

Ford, Steve: “G-TOR vs. PacTOR vs. AMTOR: A Nonscientific Throughput Test,” QEX, American Radio Relay League, Newington, CT, May 1994, p. 18.

Kantronics: “G-TOR: The New HF Digital Mode for the KAM Plus and KAM Enhancement Board,” Kantronics Inc., Lawrence, KS, 1994.

Karn, Phil: “Toward New Link-Layer Protocols,” QEX, American Radio Relay League, Newington, CT, June 1994, pp. 3-10.

Prescott, Glenn, Phil Anderson, Mike Huslig, and Karl Medcalf: “G-TOR: A Hybrid ARQ Protocol for Narrow Bandwidth HF Data Communication,” QEX, American Radio Relay League, Newington, CT, May 1994, pp. 12-19.


This technical description was prepared by Steven L Karty, N5SK.


Donate Now