Library

4.9 CONCATENATED CODES

As communication systems evolved, engineers sought increasingly powerful error-control codes capable of operating reliably over very noisy channels while maintaining high transmission efficiency. Simply increasing the complexity of a single coding scheme, however, soon led to impractical encoder and decoder implementations. An elegant solution was to combine two or more different coding techniques, allowing each to perform the task for which it is best suited. Such combinations are known as concatenated codes.

A concatenated coding system employs two or more encoders connected in series. As illustrated in Figure 4-26, the information is first encoded by one code, known as the outer code, and the resulting encoded data is then passed to a second encoder, known as the inner code. At the receiver, the reverse process is performed: the inner decoder first removes most of the transmission errors, after which the outer decoder corrects any residual errors that remain. Because each code performs a different role, the overall system can often achieve significantly better performance than either code could provide on its own.

Figure 4-26. A simple block diagram of an encoder for a concatenated code.

The outer and inner codes are usually selected to complement one another. Block codes such as ReedSolomon codes are particularly effective at correcting burst errors and symbol errors, while convolutional codes perform well against random bit errors produced by noisy communication channels. By combining these two coding techniques, the inner convolutional decoder converts many channel errors into a much smaller number of residual errors, allowing the outer Reed–Solomon decoder to correct the remaining error patterns with high probability. The result is an overall coding system that is considerably more robust than either individual code operating alone.

Interleaving is frequently employed between the outer and inner encoders. As discussed in the previous section, the interleaver spreads burst errors over many codewords before they reach the outer decoder. This further improves the effectiveness of the concatenated coding scheme by ensuring that the residual errors presented to the outer decoder are more evenly distributed and therefore easier to correct.

Concatenated coding offers several practical advantages. Existing coding techniques can be combined without requiring the development of entirely new algorithms, allowing system designers to tailor performance to the characteristics of a particular communication channel. Different combinations of outer and inner codes provide different balances between coding gain, complexity, decoding delay, and implementation cost. Furthermore, because each decoder operates independently, the overall system is often easier to implement and verify than a single decoder providing equivalent performance.

One of the most influential applications of concatenated coding appeared in deep-space communications, where extremely weak signals and long propagation delays make retransmission impractical. Similar coding structures were subsequently adopted in digital broadcasting, optical communication systems, data-storage devices, wireless networks, and many other high-reliability communication systems. For many years, concatenated Reed–Solomon and convolutional codes represented the state of the art in practical error-control coding.

The concept of concatenation also paved the way for more advanced coding techniques. Turbo codes, introduced during the 1990s, may be viewed as a special form of parallel concatenated coding in which two recursive systematic convolutional encoders operate together through an interleaver and exchange probabilistic information during iterative decoding. More recently, LDPC (Low-Density Parity-Check) and polar codes have achieved even closer performance to the theoretical Shannon limit, but they continue to embody the same general philosophy of combining multiple sources of redundancy with sophisticated decoding algorithms to achieve exceptionally reliable communication.

Today, concatenated coding remains an important design principle in digital communications. Rather than relying upon a single error-control code to solve every problem, engineers frequently combine complementary coding techniques, together with interleaving and adaptive decoding strategies, to obtain the desired balance between reliability, complexity, latency, and spectral efficiency. The concept demonstrates an important principle of modern communications engineering: by combining relatively simple techniques in carefully designed ways, remarkably powerful communication systems can be constructed.