FEC / Digital Communications

Channel Coding

/CHAN-ul KOH-ding/
Forward error correction (FEC) adds structured redundancy to digital data before RF transmission, enabling the receiver to detect and correct bit errors from noise and fading. The Shannon limit C = B·log2(1 + SNR) sets the theoretical ceiling. Modern codes (turbo, LDPC, polar) approach within 0.5 dB. Coding gain Gc = SNRuncoded − SNRcoded at target BER.
Code rate: R = k/n
Gain: 5–11 dB typical
Near Shannon: 0.5 dB gap

Understanding Channel Coding

Every RF communication link contends with noise, interference, and fading that introduce bit errors. Channel coding combats these impairments by adding redundancy in a mathematically structured way, enabling the receiver to reconstruct the original data even when some bits are corrupted. The code rate R = k/n expresses the ratio of useful information bits (k) to total transmitted bits (n). A lower code rate provides more protection but consumes more bandwidth.

The evolution of channel coding spans four generations. First-generation block codes (Hamming, BCH, Reed-Solomon) offer algebraic decoding with modest coding gain. Second-generation convolutional codes with Viterbi decoding became the workhorse of 2G/3G cellular and satellite links. Third-generation turbo codes, discovered in 1993, demonstrated near-Shannon-limit performance and were adopted for 3G/4G. Fourth-generation LDPC and polar codes now dominate 5G NR, Wi-Fi 6/7, and next-generation satellite systems, with polar codes being the first codes mathematically proven to achieve Shannon capacity.

Fundamental Equations

Shannon capacity:
C = B·log2(1 + SNR)  bps

Code rate:
R = k/n  (information bits / total bits)

Coding gain:
Gc = SNRuncoded − SNRcoded  dB (at same BER)

Spectral efficiency with coding:
η = R × log2(M)  bps/Hz
M = modulation order

Eb/N0 relationship:
Eb/N0 = (C/N) × (B / Rb)
Rb = information bit rate

FEC Code Family Comparison

Code FamilyRate RangeGap to ShannonDecoderLatencyStandard
Convolutional1/2–7/82–5 dBViterbi / MAPLowGSM, DVB-S
Reed-SolomonVariable3–6 dBBerlekamp-MasseyLowDVB-S, CD/DVD
Turbo1/3–0.95~1 dBIterative BCJRHigh3G/4G LTE
LDPC1/5–0.950.5–1 dBBelief propagationMedium5G data, Wi-Fi 6
Polar1/8–0.95~0.5 dBSCL + CRCLow-Med5G NR control

5G NR Coding Configuration

Channel TypeFEC CodeMax BlockBase GraphRate RangeHARQ
PDSCH (data DL)LDPC8448 bitsBG1 (high rate)1/5–0.95Incremental redundancy
PUSCH (data UL)LDPC8448 bitsBG2 (low rate)1/5–0.95Incremental redundancy
PDCCH (ctrl DL)Polar512 bitsN/A1/8–0.75N/A
PUCCH (ctrl UL)Polar/RM1706 bitsN/AVariableN/A
PBCH (broadcast)Polar864 bitsN/A1/4N/A
Common Questions

Frequently Asked Questions

What is coding gain?

Coding gain is the SNR reduction to achieve a target BER vs. uncoded: Gc = SNRuncoded − SNRcoded. Convolutional (K=7): ~5 dB. Turbo: ~8–10 dB. LDPC/Polar: ~9–11 dB, within 0.5 dB of Shannon at BER = 10−6. The cost is bandwidth expansion by 1/R.

Why LDPC and polar in 5G?

LDPC handles data channels: parallelizable decoding supports multi-Gbps throughput with block sizes up to 66560 bits. Polar handles control channels: proven Shannon-achieving with shorter blocks (up to 1024 bits) and lower latency. This dual architecture optimizes both use cases.

Hard vs. soft decision?

Hard decision: 1-bit quantization per symbol. Soft decision: multi-bit log-likelihood ratios preserving confidence. Soft decoding yields 2–3 dB improvement. All modern FEC (turbo, LDPC, polar) use soft input. The trade-off is increased decoder memory and complexity.

RF Test Solutions

Precision RF Components

RF Essentials provides precision terminations and custom RF assemblies for communications test benches, BER measurement systems, and coded modulation validation setups.

Request a Quote