Code Rate
Understanding Code Rate
Every FEC code adds redundancy to protect against channel errors. The code rate quantifies how much. At R = 1/2, the encoder outputs 2 bits for every 1 input bit. The extra bits carry parity information that the decoder uses to detect and correct errors. Lower rates provide stronger protection (more parity) but consume more bandwidth.
Adaptive modulation and coding (AMC), used in LTE, 5G NR, and Wi-Fi, dynamically selects the code rate based on real-time channel quality. A user near the base station with 25 dB SNR might use rate 5/6 with 256-QAM (maximum throughput). A cell-edge user at 3 dB SNR uses rate 1/3 with QPSK (maximum reliability). The MCS (Modulation and Coding Scheme) tables in 3GPP and IEEE 802.11 standards define the allowed combinations.
η = R × log2(M) bits/s/Hz
R=1/2, QPSK (M=4): η = 1.0 bit/s/Hz
R=3/4, 64-QAM (M=64): η = 4.5 bits/s/Hz
Bandwidth expansion:
BWcoded = BWuncoded / R
Shannon limit (Eb/No for BER→0):
R=1/2: Eb/Nomin = 0.19 dB
R=1/3: Eb/Nomin = −0.55 dB
R=3/4: Eb/Nomin = 1.63 dB
Modern LDPC codes operate within 0.2-1.0 dB of these limits.
Code Rates in Communication Standards
| System | Code Type | Rate Range | Typical High-Throughput |
|---|---|---|---|
| 5G NR (data) | LDPC | 1/5 to 11/12 | R=5/6 + 256-QAM |
| 5G NR (control) | Polar (CA-SCL) | 1/8 to 2/3 | R=1/2 + QPSK |
| Wi-Fi 6 | LDPC | 1/2 to 5/6 | R=5/6 + 1024-QAM |
| DVB-S2 | LDPC+BCH | 1/4 to 9/10 | R=9/10 + 32APSK |
| GPS L1 C/A | Convolutional | 1/2 (fixed) | R=1/2 + BPSK |
Frequently Asked Questions
How does code rate affect performance?
Lower rate = stronger correction at lower SNR but less spectral efficiency. R=1/2 with QPSK: 1 bit/s/Hz, works at 3 dB Eb/No. R=3/4 with 64-QAM: 4.5 bits/s/Hz, needs 8 dB. AMC dynamically selects based on channel quality.
What rates do common systems use?
5G NR: 1/5 to 11/12 (LDPC). Wi-Fi 6: 1/2 to 5/6. DVB-S2: 1/4 to 9/10. GPS: fixed 1/2. Deep-space: down to 1/6, within 0.5 dB of Shannon limit.
What is the Shannon limit for code rate?
The minimum Eb/No for error-free communication at a given rate. R=1/2: 0.19 dB. R=1/3: −0.55 dB. Negative values are possible because bandwidth expansion provides processing gain. Modern codes operate within 0.2-1.0 dB of these limits.