Module 5 built a ladder of schemes for packing more bits into every symbol — and each rung cost noise margin. That raises the question the whole ladder is climbing toward: for a given channel, how many bits per second is it possible to send, by any scheme whatsoever? In 1948 Claude Shannon answered it exactly, and the answer — a single, short equation — founded the entire field of information theory. It sets a hard ceiling no clever modulation or coding can beat.
Shannon’s capacity theorem gives the channel capacity C — the maximum rate at which information can be sent with arbitrarily small error — for a channel of bandwidth B corrupted by additive white Gaussian noise:
The formula is quick to apply. A classic case is the old telephone line: about 3.1 kHz of bandwidth at roughly 30 dB SNR (a ratio of 1000), giving C = 3100 × log₂(1001) ≈ 30.9 kbps — which is exactly why dial-up modems stalled near 33.6 kbps. Modern channels are wider and cleaner:
| Channel | Bandwidth B | SNR | Capacity C |
|---|---|---|---|
| Telephone line | 3.1 kHz | 30 dB (×1000) | ≈ 31 kbps |
| WiFi channel (1 stream) | 20 MHz | 25 dB (×316) | ≈ 166 Mbps |
| 5G NR carrier | 100 MHz | 20 dB (×100) | ≈ 666 Mbps |
| Deep-space link | 1 MHz | 0 dB (×1) | 1 Mbps |
Notice the deep-space row: even when the signal and noise are equal (0 dB), the channel still carries one bit per second per hertz. Capacity never drops to zero until the signal does.
There are only two ways to raise C, and they are not equal:
This split defines two regimes. When bandwidth is scarce and SNR is high, you are bandwidth-limited and reach for higher-order QAM (Module 5). When power is scarce and bandwidth is plentiful — a deep-space probe — you are power-limited and spread the signal over more bandwidth instead.
Shannon proved two halves. The achievability half says that for any rate below C, a code exists that drives the error rate as close to zero as you like — given enough coding and delay. The converse half says that above C, no code can keep the error rate from rising; errors become unavoidable. Together they make C a genuine wall, not merely the best anyone has managed. What Shannon did not do was tell us how to build the codes — only that they exist.
Push the bandwidth-limited logic to its extreme. If bandwidth were truly unlimited, how little energy per bit could a link survive on? Taking B → ∞ in the theorem yields a hard floor on the energy-per-bit to noise ratio:
For fifty years Shannon’s ceiling stood far above what real systems reached. Then two families of error-correcting codes closed the gap almost entirely. Turbo codes (1993) and LDPC codes (invented by Gallager in 1962, forgotten, and rediscovered in the 1990s) get within a fraction of a dB of capacity by using long blocks and iterative decoding. They are now everywhere: LDPC in WiFi, DVB-S2 satellite TV, and 5G data channels; turbo codes in 3G and 4G LTE; and polar codes (2009), the first codes proven to reach capacity, in 5G control channels. Shannon told us the wall was there in 1948; it took the industry until the 2000s to build codes that press right up against it.