Forward Error Correction (FEC)
Understanding FEC
FEC is the reason modern wireless systems work at all. Without coding, a 256-QAM signal would need 29 dB of SNR for BER=10-6. With LDPC coding, it needs about 19 dB. That 10 dB coding gain means either 3x more range, 10x less transmit power, or 10x more capacity at the same power. Every wireless standard since GSM has relied on FEC as the cornerstone of reliable communication. The evolution from convolutional codes to turbo codes to LDPC and polar codes represents one of the greatest achievements in information theory and engineering.
FEC Fundamentals
C = B·log2(1+SNR)
Coding gain:
Gc = (Eb/N0)uncoded − (Eb/N0)coded dB
Code rate:
R = k/n (information bits / total bits)
Net data rate:
Rnet = Rgross × Rcode
FEC Code Comparison
| Code | Coding Gain | Shannon Gap | Decoder | Standard |
|---|---|---|---|---|
| Convolutional | 5-7 dB | 3-5 dB | Viterbi | GSM, 802.11a/g |
| Reed-Solomon | 4-6 dB | 4-6 dB | Algebraic | DVB-S, fiber |
| Turbo | 7-9 dB | ~1 dB | Iterative MAP | LTE, 3G |
| LDPC | 8-10 dB | ~0.5 dB | Belief propagation | 5G NR, Wi-Fi 6 |
| Polar | 7-9 dB | ~1 dB | SCL + CRC | 5G NR control |
Key Equations
Power: dB = 10log(P2/P1)
Voltage: dB = 20log(V2/V1)
dBm to watts:
P(W) = 10(dBm−30)/10
0 dBm = 1 mW, +30 dBm = 1 W
Wavelength:
λ = c/f = 300/f(MHz) meters
Comparison
| Code | Rate | Gain | Latency | Standard |
|---|---|---|---|---|
| Conv 1/2 | 0.5 | 5–7 dB | Low | Legacy WiFi |
| Turbo | 1/3–4/5 | 7–9 dB | Medium | 3G/4G |
| LDPC | 1/2–5/6 | 8–10 dB | Medium | WiFi 6, 5G, DVB |
| Polar | 1/2–5/6 | 8–10 dB | Low | 5G control |
| RS(255,239) | 0.937 | 3–5 dB | Low | Optical, storage |
Frequently Asked Questions
Coding gain?
Eb/N0 reduction vs. uncoded. LDPC R=1/2: ~8.5 dB at BER=1e-6. Means 3x more range or 10x less power. Net coding gain accounts for BW expansion: NCG = gain - 10*log(1/R).
5G NR codes?
LDPC for data (PDSCH/PUSCH): rates 1/5 to 948/1024, within 0.5 dB of Shannon. Polar for control (PDCCH/PUCCH/PBCH): capacity-achieving, better than LDPC at short blocks. First commercial polar code deployment.
Shannon limit?
Minimum Eb/N0 for error-free communication: -1.59 dB. LDPC: 0.5 dB gap. Turbo: ~1 dB. Convolutional: 3-5 dB. 30 years of coding research closed the gap from 5 dB to 0.5 dB.