Forward error correction
What Is Forward Error Correction?
Forward error correction (FEC) is a technique for controlling transmission errors in digital communication and storage systems by adding structured redundancy to data before it is sent, allowing the receiver to detect and correct errors without requesting a retransmission. It is a form of channel coding, drawing on the mathematical theory of error-correcting codes developed by Claude Shannon and Richard Hamming in the late 1940s. The term "forward" distinguishes this approach from automatic repeat request (ARQ) schemes, where the receiver detects errors and asks the sender to resend. Because FEC does not require a return channel, it is indispensable for broadcast scenarios, deep-space links, and any application where retransmission latency would be prohibitive.
FEC codes introduce overhead in the form of parity bits or check symbols. The ratio of information bits to total coded bits defines the code rate, which captures the trade-off between redundancy and throughput. Feedforward systems in the broader sense, including feedforward equalizers and open-loop control structures, share the conceptual property of acting without feedback; FEC inherits this character by performing correction purely from the received codeword.
Code Design
FEC codes have evolved through several distinct families. Convolutional codes, introduced by Peter Elias in 1955, encode a continuous stream of bits by passing them through a shift register with XOR operations, producing a code with memory. Reed-Solomon codes, standardized in the 1960s, operate on symbols rather than individual bits and are particularly effective against burst errors; they became the basis for error protection in compact discs, DVDs, and RAID storage. Turbo codes, published by Berrou and Glavieux in 1993, approached the Shannon limit for the first time in practice by concatenating two recursive convolutional codes with an interleaver and iterative decoding. Low-density parity-check (LDPC) codes, originally proposed by Robert Gallager in 1960 and rediscovered in the 1990s, represent the codeword structure as a sparse bipartite graph and are used in Wi-Fi (IEEE 802.11n), DVB-S2 satellite broadcasting, and 5G NR. A unified FEC accelerator covering turbo, LDPC, and polar decoding, published in the ACM/IEEE International Symposium on Low Power Electronics and Design, illustrates how all three families are now implemented on common hardware platforms.
Decoding Algorithms
The receiver's task is to find the most likely codeword given the noisy received sequence. Hard-decision decoding maps each received symbol to the nearest discrete value before searching for the codeword; it is computationally simple but leaves soft information on the table. Soft-decision decoding retains the analog confidence measure on each received symbol, enabling the Viterbi algorithm and belief-propagation approaches to exploit probabilistic information about the channel. For LDPC codes, belief propagation over the Tanner graph iterates messages between variable nodes and check nodes until the parity constraints are satisfied or a maximum iteration count is reached. Turbo decoding applies the same iterative philosophy between two component decoders, passing extrinsic information back and forth until convergence. Research on energy-efficient FEC decoders published on IEEE Xplore examines the implementation trade-offs between decoding accuracy and power consumption in hardware realizations.
Performance and Channel Models
Evaluating an FEC scheme requires characterizing both the channel and the code. The additive white Gaussian noise (AWGN) channel is the standard benchmark, with performance plotted as bit error rate versus signal-to-noise ratio. A comparative performance study of LDPC and turbo codes for power-line communication channels, published in IEEE, demonstrates how channel memory and burst-noise characteristics shift the relative performance ranking of code families away from AWGN predictions.
Applications
Forward error correction has applications in a range of fields, including:
- Wireless communications, including 4G LTE, 5G NR, and Wi-Fi standards where turbo and LDPC codes protect air-interface transmissions
- Satellite communications and deep-space probes where return-channel retransmission is impractical
- Optical fiber networks, where FEC overhead allows operation at lower optical signal-to-noise ratios
- Digital storage, including SSDs and HDDs where read errors must be corrected without rereading from a slower medium
- Digital broadcasting, including DVB-T2 and DVB-S2 standards for terrestrial and satellite television