Communication Technology

 

 

 

Channel Capacity/Shannon's Law

 

One of the most important goals for the engineers designing a communication system is to achieve the highest data rate with as low as possible resource allocation (e.g, spectrum allocation). However, you can easily guess that there would be some physical limit however good/fancy technology you use. Then, the question is 'how can we figure out the physical limit of the achievable data throughput in a given condition ?'.

What does Shannon's Law say?

Shannon's Law fits on one line, and every symbol in it is something an engineer can measure. Reading it slowly is worth more than memorising it, because each term answers a different design question.

Shannon's Law (or Shannon-Hartly equation) is the equation (theory) to answer this question. The equation shows as follows. If you just verbablize (express in words) this equation, you will get a lot of practical information.

Depending on the implementation and various conditions during the communication, the terms in the log () term would vary as mentioned below.

Now let's convert this equation into words. Just try to interpret this equation into your own words before you read the followings. This kind of practice (converting a mathemtical equation into words and vice versa is very important practice in engineering).

  • Maximum Capacity (Maximum throughput) achievable is determined by Bandwidth(B) and SNR of the communication channel, Singal Power and Noise Power

  • The capacity is directly proportional to the channel bandwidth. It implies that you can infinately increase the capacity if you can increase bandwidth infinitely. ==> In theory it is true, but there are a lot of practical issues and difficulties of increasing the bandwidth increasingy.

  • With a given Bandwidth, Maximum capacity increases as SNR (signal to noise ratio) increases. ==> But there is one thing you should notice. Since SNR is in log() function, the rate it increases decreases as SNR increases. It mean in relatively low SNR, SNR improvement impact a lot but in very good SNR, beter SNR does not play much role in increasing the capapcity. You would notice this from log plot that you learned from high school.

  • If we assume that SNR stay same, Maximum capacity increases as Channel Bandwidth increases.

  • If we assume the Bandwidth is fixed and Noise Level stay same, the Maximum Capacity increase as Signal Power increases.

  • If we assume the Bandwidth is fixed and Signal Power stay same, the Maximum Capacity increases as Noise Level decreases.

  • (This is unrealistic, but ) if Noise Level goes to Zero, we can achieve Infinite Capacity (This is possible only in mathemtical sense. It cannot be achievable in reality because it is impossible to achieve Zero noise in reality)

 

How does the equation change for MIMO?

Spatial multiplexing adds a term that none of the reasoning above covers. Where that term sits in the equation matters more than its value, because it multiplies the whole expression rather than sitting inside the logarithm.

In case of MIMO, we may expand the equation as follows. Interpretation is simple. Channel Capacity is directly proportional to the number of MIMO channel meaning we can indefinately increase channel capacity by increasying the number of MIMO streams (layers) infinately. But practically it would be more and more difficult to increase the number of MIMO streams.

Two details in that form are worth separating. The multiplier M counts layers rather than antennas. A device with four antennas does not automatically get M = 4, and the useful figure is the rank the channel actually supports.

The position of M is the more important half. Bandwidth and layers both multiply the expression, so doubling either one doubles the capacity. SNR sits inside the logarithm instead, so doubling it adds roughly one bit per second per hertz and no more. That is why spatial multiplexing became the main way to raise capacity once SNR was already good.

  • M counts layers, not antennas : the rank the channel supports is the figure that belongs in the equation.
  • Position in the equation is the whole story : M multiplies, so it scales capacity linearly, while SNR only ever scales it logarithmically.
  • Doubling SNR buys one bit per second per hertz : doubling the layer count doubles the capacity instead.

What does the law not promise?

The equation gives a number, and that number is an upper bound rather than a forecast. Three things it leaves out catch people regularly, and two of them are written on the equations themselves rather than in the text.

Capacity is a limit, not a throughput. The law says that some code exists which can carry any rate below C with an error probability as small as you like. It does not say what that code is, how long its blocks have to be, or how much delay it needs. A real system running at half of C can still be a good system.

The SNR in the equation is a linear ratio, not a figure in dB. This is the most common arithmetic slip on the whole topic. An SNR of 20 dB enters the equation as 100, and putting 20 in instead understates the capacity badly.

Bandwidth has a cost too, which completes the caveat on the bandwidth bullet above. Thermal noise power grows with bandwidth, because it is the noise density multiplied by the bandwidth. Widening B therefore raises N at the same time, and the SNR falls as the bandwidth grows. Capacity does keep rising, but it approaches a ceiling of about 1.44 times the signal power divided by the noise density.

  • Capacity is an upper bound : the law proves a code exists, and says nothing about its complexity or its delay.
  • The SNR term is linear : 20 dB enters as 100, and using the dB figure directly is the usual mistake.
  • Infinite bandwidth does not give infinite capacity : noise power grows with bandwidth, so capacity approaches about 1.44 S/N0 instead.
  • The conditions are written on the equations : the linear SNR note and the layers-not-antennas note both sit in the annotations rather than in the prose.