# A History of Channel Coding in Aeronautical Mobile Telemetry and Deep-Space Telemetry
## 3 Deep-Space Telemetry
### Cassini-Huygens  
The _Cassini-Huygens_ mission was an international collaboration involving the National Aeronautics and Space Administration (NASA), the European Space Agency (ESA), the Italian Space Agency (ASI), and European academic and industrial partners [69]. The mission was designed to explore the Saturnian system. The spacecraft comprised two parts, an orbiter called _Cassini_ and a probe called _Huygens_. The probe separated from the orbiter and descended into the atmosphere of Titan (the largest Saturnian moon) eventually landing on Titan's surface. The spacecraft was launched in October 1997 and was inserted into Saturn's orbit in July 2004. The main mission lasted until 2007. The orbiter-to-Earth telemetry system is illustrated in the top part of the block diagram in Figure 16. One of the functions of the command and data subsystem (CDS) was to collect engineering data, science data, and probe relay data. The collected data were either transmitted in real-time or stored for later transmission. Real-time engineering data were provided at a variable rate from 5 bits/s to 1869 bits/s. The science data rate varied, depending on the experiment, from 5 bits/s to 248,850 bits/s. The telemetry to be transmitted was framed following the CCSDS packet telemetry standard CCSDS 102.0-B-5 [70] and encoded using the same (255,223) Reed-Solomon code used by _Voyager_ (see Section 3.5) [69]. Interleaving was performed by a depth-5 interleaver [69]. The framed, encoded, and interleaved packet produced by the CDS was transferred to the telemetry control unit (TCU) where it was optionally encoded with a \((7,1/2)\) or \((15,1/6)\) convolutional encoder. The optionally encoded data modulated a subcarrier or directly phase-modulated an X-band carrier. In the former case, the subcarrier-modulated signal phase-modulated the X-band carrier. The \((7,\
icefrac{{1}}{{2}})\) convolutional code was the same one used by _Voyager_ shown in Figure 12 and described by the polynomials (6). The \((15,\
icefrac{{1}}{{6}})\) convolutional code is described by the following polynomials [65; 71]:  
\[ \begin{split} G^{(1)}(D)&=1+D^{3}+D^{4}+D^{7}+D^{8}+ D^{10}+D^{14}\\ G^{(2)}(D)&=1+D^{2}+D^{5}+D^{7}+D^{9}+D^{10}+D^{11}+D^{1 4}\\ G^{(3)}(D)&=1+D+D^{2}+D^{6}+D^{8}+D^{10}+D^{11}+D^{1 2}+D^{14}\\ G^{(4)}(D)&=1+D+D^{4}+D^{5}+D^{6}+D^{7}+D^{9}+D^{10}+D^{ 12}+D^{13}+D^{14}\\ G^{(5)}(D)&=1+D+D^{2}+D^{4}+D^{5}+D^{7}+D^{9}+D^{10}+D^{ 11}+D^{12}+D^{13}+D^{14}\\ G^{(6)}(D)&=1+D+D^{2}+D^{3}+D^{4}+D^{6}+D^{8}+D^{1 1}+D^{13}+D^{14}\end{split}  \tag{13}\]  
and is characterized by the impressive \(d_{\text{free}}=56\). The probe telemetry system is illustrated by the block diagram in the lower portion of Figure 16. Packets containing scientific measurement data and packets containing housekeeping data were used to form telemetry frames following the CCSDS packet telemetry standard CCSDS 102.0-B-5 [70]. The data were encoded using the same (255,223) Reed-Solomon code used by the orbiter. The Reed-Solomon encoded data were interleaved and encoded using the same \((7,\
icefrac{{1}}{{2}})\) convolutional code used by the orbiter. The convolutional encoder output, at 16384 bits/s, BPSK modulated two subcarriers in parallel. Each subcarrier modulated a different S-band carrier. One of the S-band transmissions was delayed by about 6 s relative to the other to avoid data loss in the event a temporary link outage occurred, say, due to transmit antenna misalignment caused by strong winds in the Titan atmosphere [69; 72]. On the orbiter, the parallel received signals were coherently detected and soft information was passed to the MLSE decoder, implemented using the VA, for the \((7,\
icefrac{{1}}{{2}})\) convolutional code. The most reliable VA output was selected and passed to the CDS for storage and transmission to Earth. Note that Reed-Solomon decoding was _not applied_ to the relay data. Consequently, the CDS did not have to apply the Reed-Solomon code to the data from the PSE. PSE data were applied directly to the selected convolutional encoder.