Calculate the maximum channel capacity of a communication channel

The Shannon-Hartley Theorem is a fundamental principle in information theory that defines the maximum rate at which data can be transmitted over a communication channel with a given bandwidth and noise level, without errors. This maximum rate is known as the channel capacity, denoted as C, and is measured in bits per second (bps). The theorem provides a mathematical formula to calculate this capacity, taking into account the channel’s bandwidth and the signal-to-noise ratio. Below, I’ll explain the theorem in detail, including the formula, its components, and a practical example to illustrate how it works.


This formula tells us that the channel capacity depends on two key factors: the bandwidth and the signal-to-noise ratio. The logarithmic term reflects how many bits can be encoded per unit of bandwidth, while the bandwidth scales this up to give the total capacity in bits per second.


Let’s break down each part of the formula:

Channel Capacity (C):

This is the theoretical maximum rate at which information can be reliably sent over the channel without errors. Think of it as the “speed limit” for data transmission under given conditions.

Bandwidth (B):

Bandwidth is the range of frequencies available for transmission. For example, if a channel transmits frequencies from 300 Hz to 3300 Hz, the bandwidth is 3300−300=3000 Hz. A wider bandwidth allows more data to be sent, but the effect is moderated by noise.

Signal Power (S) and Noise Power (N):

Signal power is the energy of the transmitted signal, while noise power is the energy of the interference (e.g., static, background noise). Both are typically measured in watts.

The signal-to-noise ratio (S/N​) is critical: a higher SNR means the signal stands out more clearly against the noise, allowing more data to be transmitted reliably.

Logarithm Base 2 (log2⁡​):

The use of base 2 relates to binary communication, where each bit represents a choice between 0 and 1. The term log⁡2(1+S/N) calculates how many bits can be transmitted per hertz of bandwidth, based on the SNR.


The theorem assumes the noise is additive white Gaussian noise (AWGN), a common model for random noise in communication systems. The logarithmic relationship arises because the number of distinguishable signal levels (or symbols) you can send depends exponentially on the SNR. Adding 1 to the SNR inside the logarithm accounts for the signal power relative to the noise floor, ensuring the formula works even when the SNR is low.

Multiplying by the bandwidth B scales the capacity to the total frequency range available, giving the maximum data rate in bits per second.


Let’s apply the Shannon-Hartley Theorem with a practical example.

Scenario:

Suppose we have a telephone line with:

  • Bandwidth (B): 3000 Hz (typical for voice-grade telephone lines).
  • Signal Power (S): 1 watt.
  • Noise Power (N): 0.001 watt (a relatively low noise level).

Result:

The maximum channel capacity is approximately 29,904 bps, or about 29.9 kbps. This is the theoretical limit for error-free transmission under these ideal conditions.


To convert a value from the decibel (dB) scale to its corresponding “normal value” (typically meaning the linear scale value), you need to reverse the logarithmic process used to compute decibels. The exact formula depends on whether the decibel value represents a power ratio or an amplitude ratio.

Shannon-Hartley Theorem uses the power ratio Signal power(S) to Noise power(N) = S/N

The formula to convert the the ratio of Signal power(S) to Noise power(N) from decibel value to normal power ratio:

  • S/N ratio = 10 ^((S/N ratio in dB)/10)

Example

If the signal-to-noise ratio is 9 dB, then it can represented in power ratio of (S/N):

S/N ratio = 10^(9/10) = 7.943


Example_1

In real world, the data of Signal to Noise ratio (S/N) is available in decibel scale.

  • Bandwidth (B): 10000 Hz
  • Signal to noise Ratio (S/N) (in dB): 3 dB

To convert Signal to Noise Ratio (S/N) from dB to simple ratio = 10^((Signal to noise ratio in decibel(dB))/10)

Signal to noise Ratio (S/N) = 10^(9/10) = 1.995

Channel capacity(Bits per second) = B*log2(1+(S/N)) = 10000 * log2(1+1.995) = 15825.560 bits/sec = 15.825 Mbits/sec

Example_2

  • Bandwidth (B): 5 MHz = 5 * 10^6 Hz
  • Signal to noise Ratio (S/N) (in dB) : 6 dB

To convert Signal to Noise Ratio (S/N) from dB to simple ratio = 10^((Signal to noise ratio in decibel(dB))/10)

Signal to noise Ratio (S/N) = 10^(6/10) = 3.981

Channel capacity(Bits per second) = B*log2(1+(S/N)) = 5 * 10^6 * log2(1+3.981) = 11.5821 *10^6 bits/sec = 11.582 Mbits/sec

Example_3

  • Bandwidth (B): 20 MHz = 20 * 10^6 Hz
  • Signal to noise Ratio (S/N) (in dB) : 9 dB

To convert Signal to Noise Ratio (S/N) from dB to simple ratio = 10^((Signal to noise ratio in decibel(dB))/10)

Signal to noise Ratio (S/N) = 10^(9/10)= 7.943

Channel capacity(Bits per second) = B*log2(1+(S/N)) = 20 * 10^6 * log2(1+8) = 63.215 *10^6 bits/sec = 63.215 Mbits/sec


Channel capacity value of 20 MHz channel for various value of Signal to Noise Ratio

Signal to Noise Ratio (S/N)
(in dB)
Channel Capacity
( in Mbits/sec)
-200.2871
-150.8983
-102.750
-57.9281
-311.722
020
123.5127
227.4020
331.6536
646.3291
963.2160
1281.4917
15100.556
20133.1642
25166.1875