# A History of Channel Coding in Aeronautical Mobile Telemetry and Deep-Space Telemetry
## 3 Deep-Space Telemetry
### The Story behind the Pioneer and Mariner Code Designs
Instead, the decoder was programmed in software on the Scientific Data Systems (SDS) 920 mainframe computer [24]. The SDS 920 used 24-bit words [36]. To produce a decoder that operated in real-time (512 bits/s), the constraint length of the code was limited to 25 so that the copy of the 24-bit binary sequence defining the encoder memory fit into one 24-bit binary word on the SDS 920 [24]. The result was the code recommended in [17; 18] and described by the polynomials (1) and illustrated in Figure 5(a). _Pioneer_ 9 was launched in November 1968 **before**_Mariner_ 6, thus, making its experimental convolutional code the first used in space. Following the standard operating procedure for experimental hardware, _Pioneer_ 9 was launched with the encoder bypassed. In December 1968, the experimental encoder was activated [24] and remained active except for occasional passes where the only ground stations available were ones without a decoder. The experiment was so successful that convolutional encoders were planned for the next two missions, _Pioneer_ 10 and _Pioneer_ 11, on a non-experimental basis. As described in Section 3.1, a more powerful non-systematic \((32,1/2)\) convolutional code described by the polynomials (2) and illustrated in Figure 5(b) was used for _Pioneer_ 10 and 11. The code was also used in on the West German _Helios A_ and _Helios B_ solar orbiters [37; 38]. In 1983, this code was believed to be the most widely used code in deep-space communications [33]. A postscript to this story is the 1967 publication of the Viterbi Algorithm (VA) [39]. Originally, the algorithm was thought to be \"asymptotically optimal\". In 1973, [PERSON] reformulated the VA as a trellis search (the form most familiar to contemporary readers) and showed that the VA performs maximum likelihood sequence detection (MLSD) [40]. In the context of deep-space communications, the advantages of the Viterbi algorithm were as follows: (1) MLSD came closer to unlocking the coding gain a convolutional code was capable of achieving, and (2) the number of computations (and therefore the decoding delay) is fixed. The number of computations required by the VA grows exponentially with constraint length. Consequently, the earliest codes to use MLSD decoding were called \"short constraint length codes\" (such as the constraint length-7 code used by _Voyager_) to distinguish them from the long constraint length codes intended for sequential decoding. Because VA decoding performs MLSD, good convolutional codes are those that have good free distance profiles. (This is in contrast to convolutional codes designed for sequential decoding where, as explained above, a good column distance is preferable). The prospect of MLSD decoding prompted the search for a different class of convolutional codes. A noteworthy early contribution is the 1970 dissertation by one of [PERSON]'s UCLA PhD students, [PERSON] [41]. The \((7,1/2)\) convolutional code used by _Voyager_ [described by the polynomials (6) and illustrated in Figure 12 in the next section] was one of the codes published in [PERSON]'s dissertation. MLSD decoding essentially ended the use of sequential decoding for deep-space communications [33].