Channel coding

Channel coding is a branch of information theory and communications engineering that designs codes adding structured redundancy to transmitted data, allowing a receiver to detect and correct errors caused by noise, interference, or fading without retransmission.

What Is Channel Coding?

Channel coding is a branch of information theory and communications engineering concerned with the design of codes that protect data from errors introduced during transmission over noisy channels. When a signal travels from a transmitter to a receiver, noise, interference, and fading can corrupt individual bits. Channel coding adds structured redundancy to the transmitted data so the receiver can detect and correct these errors without requesting retransmission. The field traces its theoretical foundations to Claude Shannon's 1948 capacity theorem, which established the theoretical maximum rate at which information can be transmitted reliably over any given channel.

Channel coding is distinct from source coding, which reduces data redundancy for compression. Where source coding strips out repetition, channel coding deliberately introduces it in a controlled form that enables error recovery. The two operations are complementary and appear together in nearly every modern digital communication system.

Convolutional Codes

Convolutional codes encode a continuous stream of input bits by passing them through a shift-register circuit with fixed feedback connections, producing output bits that depend on both the current input and a window of past inputs. This memory property means errors can be corrected across multiple bit periods. The Viterbi algorithm, introduced in 1967, provides maximum-likelihood decoding for convolutional codes with computational complexity that grows linearly with the number of information bits. Turbo codes, introduced in 1993, combined two parallel convolutional encoders with an interleaver and iterative decoding, approaching Shannon's capacity limit more closely than any previous practical scheme. Convolutional and turbo codes formed the backbone of 3G and 4G cellular standards.

Polar Codes

Polar codes, introduced by Erdal Arikan in 2009, were the first class of error-correcting codes proven to achieve the symmetric capacity of binary-input memoryless channels with an explicit construction and efficient encoding. The construction exploits channel polarization: as a large number of copies of a channel are combined and split in a recursive pattern, the resulting bit-channels polarize toward either perfect or completely noisy conditions. Data bits are assigned to the near-perfect channels; known frozen bits occupy the rest. Successive cancellation decoding operates in linear time. Polar codes were selected as the control-channel coding scheme for the 5G New Radio standard (3GPP Release 15), marking the first time an information-theoretically proven capacity-achieving code entered a major wireless specification.

Space-Time Codes

Space-time codes extend channel coding across multiple transmit antennas and multiple time slots, exploiting spatial diversity to combat fading in multiple-input multiple-output (MIMO) systems. The Alamouti code, described in a 1998 IEEE Transactions on Communications paper, provided a simple two-antenna space-time block code that achieved full diversity with a simple linear decoder. More general constructions use space-time trellis codes, which provide both coding gain and diversity gain simultaneously. Space-time coding is a key component of IEEE 802.11n Wi-Fi and LTE, where multiple transmit and receive antennas improve reliability without sacrificing spectral efficiency.

A comparative analysis of convolutional, turbo, LDPC, and polar codes shows that performance trade-offs depend strongly on block length and code rate: polar codes offer particular advantages at short block lengths relevant to control channels, while LDPC codes are preferred for the longer data blocks in 5G. The channel coding landscape continues to evolve for 6G, where ultra-reliable low-latency communication requires codes that operate near capacity with very short block lengths and sub-millisecond decoding latency.

Applications

Channel coding has applications in a wide range of systems and domains, including:

  • Cellular wireless networks (3G, 4G LTE, 5G NR)
  • Satellite and deep-space communications
  • Optical fiber and DWDM transmission systems
  • Digital storage media such as hard drives and flash memory
  • Digital video broadcasting and streaming
Loading…