Comm Notes
Channel coding fundamentals, Shannon
Channel Coding: Beating the Noise Barrier
Channel coding is the discipline of adding structured redundancy to transmitted data so that a receiver can reliably reconstruct the original information despite errors introduced by the communication channel. It is the practical answer to Claude Shannon's revolutionary 1948 theorem proving that error-free communication is possible at any rate below channel capacity — if you use sufficiently clever coding.
Shannon's Promise and the Coding Challenge
In 1948, Shannon proved mathematically that for any noisy channel, there exists a code that achieves arbitrarily low error probability at rates up to the channel capacity C. This was revolutionary — before Shannon, engineers believed that reducing errors required reducing data rate indefinitely.
Think of it this way: Shannon proved that a magic dictionary exists — one that can protect messages against almost any amount of noise. The catch? He proved the dictionary exists without telling us how to build it. The entire field of channel coding has been a 75-year quest to construct practical codes approaching Shannon's limit.
How Channel Coding Works
The principle is deceptively simple: don't transmit all possible bit patterns — only transmit those from a carefully chosen subset (codewords) where each pair of valid codewords differs in many bit positions.
Without coding: Transmit raw data bits. Any single bit error creates an undetectable mistake.
With coding: Only certain patterns are valid. If received pattern is not valid → error detected. If received pattern is closest to one specific valid pattern → error corrected.
Analogy: Imagine if English only used words differing by at least 4 letters. If you received "COFT," you would know it is wrong (not a valid word) and could guess it should be "COAT" or "SOFT" — the closest valid words.
Key Parameters
Code rate (R): R = k/n — ratio of information bits (k) to total coded bits (n)
- R = 1/2: Half the bits carry data, half carry redundancy
- R = 3/4: 75% data, 25% redundancy
- Higher R → better throughput but weaker protection
Minimum distance (dmin): Smallest Hamming distance between any two codewords
- Error detection: up to dmin - 1 errors detectable
- Error correction: up to ⌊(dmin-1)/2⌋ errors correctable
Coding gain (dB): How much less power (Eb/N₀) is needed compared to uncoded transmission for the same BER
- Typical values: 3-10 dB
- 6 dB coding gain → 4× less transmit power needed
The Channel Coding Theorem
Shannon's theorem states:
For a channel with capacity C bits/channel use, codes exist that achieve rate R < C with probability of error Pe → 0 as codeword length n → ∞.
Conversely, for R > C, no code achieves Pe → 0.
For the AWGN channel: C = (1/2) × log₂(1 + SNR) bits/channel use
Practical implication: A channel with SNR = 0 dB has capacity C = 0.5 bits/channel use. With rate 1/2 coding, reliable communication is theoretically possible even at 0 dB SNR!
Categories of Channel Codes
Block Codes: Encode k bits into n-bit codewords independently
- Hamming codes: Simple, correct 1 error (dmin = 3)
- BCH codes: Flexible multi-error correction
- Reed-Solomon: Corrects burst errors at symbol level
- LDPC: Near-capacity performance with iterative decoding
Convolutional Codes: Encode data as continuous stream with memory
- Viterbi decoding: Maximum-likelihood sequence detection
- Typical: rate 1/2, constraint length 7
- Coding gain: ~5 dB with soft-decision Viterbi
Concatenated/Iterated Codes: Combine codes for maximum performance
- Turbo codes: Two convolutional codes + interleaver + iterative decoding
- LDPC codes: Sparse parity-check matrix + belief propagation
- Polar codes: Channel polarization + successive cancellation
The Path to Shannon Capacity
| Era | Code | Gap to Capacity | Application |
|---|---|---|---|
| 1950s | Hamming (7,4) | ~10 dB | Memory |
| 1960s | BCH, RS | ~5-7 dB | Storage, space |
| 1970s | Convolutional + Viterbi | ~3-5 dB | Satellite, mobile |
| 1993 | Turbo codes | ~0.5 dB | 3G/4G cellular |
| 1990s-2000s | LDPC codes | ~0.1 dB | WiFi, DVB-S2, 5G |
| 2009 | Polar codes | ~0.3 dB | 5G control |
Soft Information and Iterative Decoding
Modern codes achieve near-capacity performance through:
Soft-decision input: Rather than hard 0/1, the demodulator provides log-likelihood ratios (LLRs) indicating confidence:
- LLR = +5 → "Very likely a 0"
- LLR = -0.3 → "Slightly likely a 1"
- Using soft information gains 2-3 dB over hard decisions
Iterative decoding: Multiple passes through the decoder, each pass refining probability estimates:
- Turbo codes: 8-10 iterations between two component decoders
- LDPC: 20-50 iterations of belief propagation
- Each iteration improves performance until convergence
Design Trade-offs
| More... | Means... | Cost |
|---|---|---|
| Redundancy (lower rate) | Better protection | Less throughput |
| Codeword length | Closer to capacity | More latency, more complexity |
| Iterations | Better decoding | More power, more delay |
| Constraint length | Better convolutional performance | Exponential decoder complexity |
Applications of Channel Coding
Channel coding appears everywhere:
- Deep space: Voyager, Mars missions (turbo/LDPC at rate 1/6)
- Cellular: 5G uses LDPC for data, Polar for control
- WiFi: 802.11ax uses LDPC with rates 1/2 to 5/6
- Storage: Flash memory uses BCH/LDPC to tolerate aging cells
- Broadcasting: DVB-S2 uses LDPC + BCH concatenation
- Optical fiber: 100+ Gbps links use soft-decision FEC
Key Takeaways
- Channel coding adds structured redundancy enabling receivers to detect and correct transmission errors without retransmission.
- Shannon's theorem guarantees that reliable communication is possible at any rate below channel capacity — coding makes this practical.
- Minimum distance determines correction capability, while code rate determines the throughput cost of protection.
- Modern codes (LDPC, Turbo, Polar) operate within 0.1-0.5 dB of Shannon capacity using iterative soft-decision decoding.
- The fundamental trade-off is between protection strength (rate, distance) and resources consumed (complexity, latency, bandwidth).
- Coding gain of 6-10 dB means practical codes reduce required transmitter power by 4-10× — an enormous engineering benefit.
Exam Focus
Revise definitions, diagrams, examples, and short-answer points for Channel Coding.
Interview Use
Prepare one clear explanation, one practical example, and one common mistake for this Communication Systems topic.
Search Terms
communication-systems, communication systems, communication, systems, information, theory, channel, coding
Related Communication Systems Topics