0% found this document useful (0 votes)
29 views40 pages

8.part II - Channel Code Introduction M

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
29 views40 pages

8.part II - Channel Code Introduction M

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 40

Vietnam National University – University of Engineering and

Technology

Channel Codes

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN Truyền thông số và mã hóa
Content

1. Introduction

2. Repetition Code

3. Signal space of Channel code

4. Capacity of Channel (Shannon limit)

5. Revision

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 2 Truyền thông số và mã hóa
Introduction
 The challenge in digital communication system is
that of providing a cost effective facility for
transmitting Information, at a rate and a level
of reliability and quality that are acceptable to
a user at the receiver.

The key system parameters :

• Transmitted signal power.


• Channel bandwidth.
• Power spectral density of receiver noise.

These parameters determine the signal energy per bit


to-noise power spectral density ratio Eb/N0.

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 3 Truyền thông số và mã hóa
1. Introduction
There are two kinds of coding:
 Source coding for compacting the message. It
eliminates the redundant bits from message before
transmission.
For a specific source, there is a below limit of
bit number/codeword.
… Under this limit we cannot recover the message without
the distortion.
 Channel coding for decreasing the error probability. It
adds the redundant bits to message before transmission.
For a specific channel, there is a
upper limit of data rate.
… Under this limit the transmission can be reliable.
 This subject basically focus on the channel coding

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 4 Truyền thông số và mã hóa
Introduction
❑ Error occurs in the transmitted signal due to the
transmission in a non-ideal channel
◼ Noise exists in channels.
◼ Noise signals corrupt the transmitted data.
 Channel coding can be divided into two major classes:
1. Waveform coding by signal design: Deals with
transforming waveform into “better waveform” robust
to channel distortion hence improving detector
performance. (Antipodal signaling, orthogonal
signaling, bi-orthogonal signaling, M-ary signaling).
2. Structured sequences by adding redundancy (Channel
coding).

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 5 Truyền thông số và mã hóa
Why Channel coding?
 The answer is the 'noise' which is added by 'Channel'. As you
can guess, this noise would make a lot of errors while the
reciever is demodulate the received signal into the bit stream.

 What would be the solution for this problem ?


 We can think about two possible options.
• Make the channel noise-free. (Construct the channel in such a
way there is no noise).
• Use some method to detect and correct the error.

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 6 Truyền thông số và mã hóa
Introduction to Channel coding

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 7 Truyền thông số và mã hóa
Introduction to Channel coding
 Channel Coding is a method to replace 'original data bits'
with 'some other bits (normally longer than the original bits)'.
For example, the simplest coding would be as follows :
◼ 0 --> 0000 : replace all ‘0' in orginal data into '0000'
◼ 1 --> 1111 : replace all '1' in orginal data into '1111'
 Another example of coding would be addition of parity bits as
in RS 232 communication
◼ original seven bit data --> original seven bit data +
one parity bit

 In communication system, we usually call 'the original data'


as a 'message' and call the ecoded data as 'Codeword'. In
all encoding process, the length of Codeword is greater than
the length of 'message', in means that in coding process some
additional bits are added to the original data(message) and
this additional bits are called 'redundancy bits'.

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 8 Truyền thông số và mã hóa
Channel coding
 The only option is to develop some method (algorithm)
to detect and correct the error caused by the noisy
channel.

 What is the gain for Encoding/Decoding ? It is the received


data with less or almost no error.

 What is the loss? What is downside of this process ? Following


are the major issues caused by Encoding/Decoding process.

• Data Transmission Overhead (Due to redundancy bits)


• Complicate the data transmission and reception process
(due to encoding/decoding algorithm)

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 9 Truyền thông số và mã hóa
Example: Repetition code Channel

 Given a BSC
(Binary symmetric
channel)
❑ Assume 𝑝 = 10−3 (Error rate)
 Consider a repetition code:
In transmitter:
111 substitutes for 1, 000 substitutes for 0
• Encoding example: 1 . 0 . 1 . → 111 . 000 . 111 .
• Decoding rule: Majority vote!
Examples of received codewords:
110 . 000 . 111 . → 1 . 0 . 1 . Error-free!
111 . 000 . 010 . → 1 . 0 . 0 . Error!
Khoa Điện tử - Viễn thông Digital Communications and Coding
Trường Đại học Công nghệ, ĐHQGHN 10 Truyền thông số và mã hóa
Analysis of Repetition Code
➔ Error rate:
𝑃𝑒1 = 𝑃𝑟 001 + 𝑃𝑟 010 +𝑃𝑟 100 +𝑃𝑟 000
= 3𝑝2 1 − 𝑝 + 𝑝3 = 3. 10−2.3 1 − 10−3 + 10−3.3 ≈ 3.10−6
 As n gets bigger, the decoding error probability goes down. Here’s
what happens with a 10% probability of transmission error (p =0.1)
Number of repetitions Probability of incorrect decoding
3 0.028
5 0.0086
7 0.002728
9 0.000892
 It seems that we can push the error probability as close to zero as
we wish by using more repetitions.
 If we let the number of repetitions grow and grow, we can
approach perfect reliability (No error at all!)

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 11 Truyền thông số và mã hóa
Analysis of Repetition Code

❑ The redundancy in repetition of bits is measured by


the efficiency or rate of the code, denoted by R:
R= (#information bits / # bits in codeword) x 100%
❑ For the 3-repetition code: R=33%
?As the number of repetitions grows to infinity, the
transmission rate shrinks to zero!!!

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 12 Truyền thông số và mã hóa
Trade off in repetition code
 Using BPSK 𝑥 𝑚 = ± 𝑃, ⇒ 𝑝𝑒 = 𝑄 𝑃Τ𝜎 2
 Repeat n times to transmit one bit. Soft decision
𝐱𝐴 = 𝑃 1, … , 1 𝑡 and 𝐱 𝐵 = 𝑃 −1, … , −1 𝑡
𝐲 = 𝐱𝐴 + 𝐰
𝐱𝐴 − 𝐱 𝐵 𝑛𝑃
⇒ 𝑝𝑒 = 𝑄 =𝑄
2𝜎 𝜎2
 Error probability decays exponentially with block length 𝑛 or
number of repetition. It makes slowly the rate of information.
𝑛𝑃
 For increasing data rate using M-PAM 𝑝𝑒 = 𝑄
𝑀−1 𝜎
 It is reliable when 𝑀 less than 𝑛, but data rate is bounded by
log 𝑛 Τ𝑛 then it still goes to zero as the block length increases.
 M-PAM does not solve the problem speed go to 0

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 13 Truyền thông số và mã hóa
Communication and ball packing
❑ Problem: How to efficiently transmit a signal or message
in the presence of noise?
❑ To convert the signal to digital form we must sample it.
❑ Cannot reconstruct the original signal from the samples because
there are other signals that may have given rise to the same
samples. If we had sampled faster, then the sampling theorem
would guarantee that we could recover the signal uniquely.

Red curve is signal. Black dots correspond to samples. Dashed curve is another signal which
would result in the same values for samples taken at the same points. This plot shows that
sampling frequency here is not sufficient because cannot uniquely reconstruct original signal.

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 14 Truyền thông số và mã hóa
Ball packing

❑ The size of the error ball is


determined by how noisy the
channel is – the noisier the
channel, the larger the ball and
the possible error.

❑ So how can we communicate if the


signal sent is not necessarily the
signal received? To do this we must
agree ahead of time on a restricted
vocabulary of signals. When we
receive a signal, we pick the
geometrically closest possible
signal in the vocabulary. Ball = Possible value of
received signal (include
NOISE)
Khoa Điện tử - Viễn thông Digital Communications and Coding
Trường Đại học Công nghệ, ĐHQGHN 15 Truyền thông số và mã hóa
Ball packing

Overlap balls
❑ The situation we don't want is one
in which it is ambiguous where
the signal came from? Here the
two error balls overlap,
introducing the ambiguity. So we Non-Overlap balls
must choose the words of the
vocabulary sufficiently far apart, as
in second image, so there is no
ambiguity.
❑ In order to have as large a
Perfect!
vocabulary as possible, we clearly
want to pack as many balls as
possible into our space of signals.

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 16 Truyền thông số và mã hóa
Ball packing

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 17 Truyền thông số và mã hóa
3. Repetition in signal-space

1 dimension signal!

a ➔ aaaaaaaaaaa

Decision Bound.

Figure 1: Repetition coding packs points inefficiently in the high dimensional signal

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 18 Truyền thông số và mã hóa
Packing Spheres
 When expanded to 𝑁 dimension

Figure : The number of noise spheres that can be packed into the y-sphere yields
the maximum number of codewords that can be reliably distinguished

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 19 Truyền thông số và mã hóa
4. Capacity of channel (Shannon limit)
 The maximum number of noise spheres in Power spheres
(The volume of the large sphere divided by the volume of
𝑁 𝑁
the small sphere 𝑁 𝑃+ 𝜎2 : 𝑁𝜎 2
 Then the maximum number of bit per symbol/ dimension
𝑁
1 𝑁 𝑃+𝜎2 1 𝑃
log 𝑁 = log 1 + (bit/channel use)
𝑁 𝑁𝜎2 2 𝜎2

➔This is indeed the capacity of the AWGN channel.


 Bandwidth 𝑊 has 2W independent channel use/s

ത 𝑊 = 𝑊log 1 + 𝑃 =𝑊log 2 1 + 𝑆
𝐶𝑎𝑤𝑔𝑛 𝑃, bits/s 𝜎 2 =N0
𝑁 𝑊 0 𝑁
𝑃 = 𝐸𝑏 𝑅𝑏
𝐶 𝐸𝑏 𝑅𝑏 𝑆
= log 2 1 + =log 2 1 + bit/s/Hz
𝑊 𝑁0 𝑊 𝑁

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 20 Truyền thông số và mã hóa
Capacity of channel (Shannon limit)
 Example What is the theoretical maximum data rate that can
be supported in a 200 𝑘𝐻𝑧 channel for 𝑆𝑁𝑅 = 10 𝑑𝐵, 30 𝑑𝐵 ?
How does this compare to the GSM standard ?
 Solution
For 𝑆𝑁𝑅 = 10 𝑑𝐵 = 10, 𝐵 = 200 𝑘𝐻𝑧.
Using Shannon’s channel capacity formula, the maximum possible
data rate kbps
𝑆
𝐶 = 𝐵log 2 1 + = 200000log 2 1 + 10 = 691.886𝑘𝑏𝑝𝑠
𝑁
The GSM data rate is 270.833 kbps, which is only about 40% of the
theoretical limit for 10 𝑑𝐵 SNR conditions.
For 𝑆𝑁𝑅 = 30 𝑑𝐵 = 1000, 𝐵 = 200 𝑘𝐻𝑧 . The maximum possible
data rate Mbps.
𝑆
𝐶 = 𝐵log 2 1 + = 200000log 2 1 + 1000 = 1.99𝑀𝑏𝑝𝑠
𝑁

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 21 Truyền thông số và mã hóa
Capacity of channel (Shannon limit)
 Definition We define the “information” channel capacity
of a discrete memoryless channel as
𝑪 = 𝐦𝐚𝐱 𝑰 𝑿; 𝒀 = 𝐦𝐚𝐱 𝑯(𝑿) − 𝑯(𝑿 ∣ 𝒀)
𝒑(𝒙) 𝒑 𝒙

where maximum is taken over all possible input distributions 𝑝(𝑥).

 Ex: Consider the behavior


of this channel

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 22 Truyền thông số và mã hóa
Capacity of channel (Shannon limit)
 When |𝑎| ≠ 1, this is a Noisy Channel with Nonoverlapping
Outputs. Capacity of the channel in this situation,
𝐶 = max 𝐼(𝑋; 𝑌)
𝑝(𝑥)
= max 𝐻(𝑋) − 𝐻(𝑋 ∣ 𝑌)
𝑝(𝑥)

 Because 𝑋 can be determined


by 𝑌, 𝐻(𝑋 ∣ 𝑌) = 0. Therefore,
𝐶 = max 𝐻(𝑋) = 1bit
𝑝(𝑥)

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 23 Truyền thông số và mã hóa
Capacity of channel (Shannon limit)

 When |𝑎| = 1, this is a Binary


Erasure Channel. We will compute the
capacity for 𝑎 = 1. We begin by
defining the conditional entropy,

𝐻(𝑋 ∣ 𝑌) = ෍ 𝑃(𝑌 = 𝑦)𝐻(𝑋 ∣ 𝑌 = 𝑦)


𝑦∈𝑌
1 1
= 𝐻(𝑋 ∣ 𝑌 = 0) + 𝐻(𝑋 ∣ 𝑌 = 1)
4 2
1
+ 𝐻(𝑋 ∣ 𝑌 = 2)
4
1
= 𝐻(𝑋)
2

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 24 Truyền thông số và mã hóa
Capacity of channel (Shannon limit)

 We can now compute the capacity,


𝐶 = max 𝐼(𝑋; 𝑌)
𝑝(𝑥)
= max 𝐻(𝑋) − 𝐻(𝑋 ∣ 𝑌)
𝑝(𝑥)
1
= max 𝐻(𝑋) − 𝐻(𝑋)
𝑝(𝑥) 2
1
= max 𝐻(𝑋)
𝑝(𝑥) 2
1
= max 𝐻(𝑋)
2 𝑝(𝑥)
1
= bit
2
The computation for a = −1 is similar

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 25 Truyền thông số và mã hóa
Capacity of channel (Shannon limit)
 Given a BSC (Binary symmetric channel)
Assume 𝑝 (Error rate)

 We bound the mutual information by:


𝐼(𝑋; 𝑌) = 𝐻(𝑋) − 𝐻(𝑋 ∣ 𝑌)

= 𝐻(𝑋) − ෍ 𝑝(𝑥)𝐻(𝑌 ∣ 𝑋 = 𝑥)

= 𝐻(𝑋) − ෍ 𝑝(𝑥)𝐻(𝑝)

= 𝐻(𝑋) − 𝐻(𝑝)
≤ 𝟏 − 𝑯(𝒑)
where the last inequality follows because 𝑌 is a binary random
variable. Equality 𝑯 𝑿 = 𝟏 when the input distribution is
uniform.
Khoa Điện tử - Viễn thông Digital Communications and Coding
Trường Đại học Công nghệ, ĐHQGHN 26 Truyền thông số và mã hóa
The channel coding theorem (No proof)
 Capacity in BSC

Figure: Channel capacity of a binary symmetric channel with transition probability 𝑝.

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 27 Truyền thông số và mã hóa
The channel coding theorem (No proof)
 For Gaussian channel

𝐼(𝑋; 𝑌) = 𝐻(𝑌) − 𝐻(𝑌 ∣ 𝑋)


= 𝐻(𝑌) − 𝐻(𝑋 + 𝑍 ∣ 𝑋)
= 𝐻(𝑌) − 𝐻(𝑍 ∣ 𝑋)
= 𝐻(𝑌) − 𝐻(𝑍)
since 𝑍 is independent of 𝑋. Now, 𝐻(𝑍) = 1/2log2𝜋𝑒N,
𝐸𝑌 2 = 𝐸(𝑋 + 𝑍)2 = 𝐸𝑋 2 + 2𝐸𝑋𝐸𝑍 + 𝐸𝑍 2 = 𝑃 + 𝑁, since 𝑋 and 𝑍 are
independent and 𝐸𝑍 = 0. ⇒ The entropy of 𝑌 is bounded by
𝐻 𝑌 = 1/2log2𝜋𝑒(𝑃 + 𝑁)
because the normal maximizes the entropy for a given variance.

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 28 Truyền thông số và mã hóa
The channel coding theorem (No proof)

 Applying this result to bound the mutual information, we obtain:


𝐼(𝑋; 𝑌) = 𝐻(𝑌) − 𝐻(𝑍)
1 1
≤ log 2𝜋𝑒(𝑃 + 𝑁) − log 2𝜋𝑒𝑁
2 2
𝟏 𝑷
= 𝐥𝐨𝐠 𝟏 +
𝟐 𝑵
 Hence, the information capacity of the Gaussian channel is:
1 𝑃
𝐶 = max2 𝐼(𝑋; 𝑌) = log 1 +
𝑓(𝑥)𝐸𝑋 ≤𝑃 2 𝑁
and the maximum is attained when 𝑋 ∼ 𝑁(0, 𝑃).

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 29 Truyền thông số và mã hóa
The channel coding theorem (No proof)

 If a discrete memoryless channel has capacity C and


a source generates information at a rate R<C, then
there exists a coding technique such that the
output of the source may be transmitted over the
channel with an arbitrarily low probability of symbol
error

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 30 Truyền thông số và mã hóa
The ultimate Shannon limit
 Power efficiency is defined as the ratio of signal energy per
bit (Eb) to noise power spectral density per bit (N0 –
required at the receiver input to achieve certain BER.

 Condition for reliable transmission through a channel with


spectral efficiency given by

 ➔ Shannon limit on power efficiency for reliable communication


is given by

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 31 Truyền thông số và mã hóa
The ultimate Shannon limit

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 32 Truyền thông số và mã hóa
The ultimate Shannon limit

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 33 Truyền thông số và mã hóa
Fundamental Questions of Channel Coding
 How many bits of redundancy bits I have to add to
minimize the number of redundancy bits and
maximize the error correction ?
 Which Encoding/Decoding algorithms would be the
best for the communication system I am
implementing.

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 34 Truyền thông số và mã hóa
Fundamental Questions of Channel Coding

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 35 Truyền thông số và mã hóa
Historical View of Channel Coding Algorithms

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 36 Truyền thông số và mã hóa
Historical View of Channel Coding Algorithms

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 37 Truyền thông số và mã hóa
Classification of Channel Coding Algorithms

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 38 Truyền thông số và mã hóa
5. Revision
 What are the source code and the channel code
 Why repetition code can decrease error probability
 What are disadvantages of repetition code
 What is the capacity (Shannon limit) of specific AWGN
channel.
 How does mean the reliable transmission
 Note: The channel coding theorem asserts the
existence of good codes but does not tell us how to
find them

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 39 Truyền thông số và mã hóa
HW (Simulation)

❑ Capacity of a Binary Input AWGN Channel

❑ Capacity Versus Bandwidth and SNR

❑ Error Probability in Simple Repetition Codes

❑ Hamming Code

Khoa Điện tử - Viễn thông Digital Communications and Coding


Trường Đại học Công nghệ, ĐHQGHN 40 Truyền thông số và mã hóa

You might also like