Channel coding
Introduced By
Murtadha Baji Eidan
Electronic and Communication Engineering
M.Sc. 2022 - 2023
Why channel coding?
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.
Digital Communication system key parameters are:
 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/No.
Why channel coding?
In practical , there are a limit on the value that we can assign to
Eb /No.
So, it is impossible to provide acceptable data quality (low enough
error performance).
there's option available for changing data quality, is to use
“ ERROR-CONTROL CODING “.
The two main methods of Error Control are:
I.Forward Error Correction (FEC).
II.Automatic Repeat request (ARQ).
CHANNEL CODING Block
Diagram
Forward Error Correction (FEC)
The key idea of FEC is to transmit enough redundant data to
allow receiver to recover from errors all by itself. No
sender retransmission required.
The major categories of FEC codes are:
i. Block codes,
ii. Cyclic codes,
iii. Convolutional codes
iv. Turbo codes, etc.
Forward Error Correction (FEC)
FEC require only a one-way link between the transmitter and
receiver.
In the use of error-control coding there are trade offs between:
i.Efficiency & Reliability.
ii.Encoding/Decoding complexity & Bandwidth .
BLOCK CODES
A block code encoder divides the information sequence "u" into
message blocks of "k" information bits (symbols) and converts each
message "u" into an n-bit code (symbols). The coding rate is defined
as "R = k/n". The redundant bits (symbols), (n-k), give the code the
ability to deal with channel noise.
BLOCK CODES
Systematic Form:
In this form, the code word consists of (n-k) parity check
bits followed by k bits of the message.
The structure of the code word in systematic form is:
In systematic form, Codeword information sequence
doesn’t change at the encoder output.
The rate or efficiency for this code R= k/n
BLOCK CODES
Minimum Distance Consideration:
 The minimum distance, dmin, between two closest codewords,
which specifies the minimum amount of data changes required to
turn one valid codeword into another, is an essential parameter of
a block code. This parameter determines a code's ability to detect
and correct errors.
 Usually, an FEC code can detect up to 2t = (dmin – 1) mistakes
per codeword.
 Usually, an FEC code can correct up to t = (dmin – 1)/2 mistakes
per codeword.
Linear BLOCK CODES
Generator Matrix:
 All code words can be obtained as linear combination of basis
vectors.
 The basis vectors can be designated as {𝑔1, 𝑔2, 𝑔3,….., 𝑔𝑘}
 For a linear code, there exists a k by n generator matrix such that
𝑐1∗𝑛 = 𝑚1∗𝑘 . 𝐺𝑘∗𝑛
where c={𝑐1, 𝑐2, ….., 𝑐𝑛} and m={𝑚1, 𝑚2, ……., 𝑚𝑘}
Linear BLOCK CODES
Example: Let us consider (7, 4) linear code where k=4 and n=7,
the message word is (1110). Find the Codeword.
Solution:
C=m.G= (𝑚1, 𝑚2, 𝑚3, 𝑚4) (Xor)
- By matrix multiplication we obtain :
𝑐1=𝑚1 + 𝑚3 + 𝑚4, 𝑐2=𝑚1 + 𝑚2 + 𝑚3, 𝑐3= 𝑚2 + 𝑚3 + 𝑚4,
𝑐4=𝑚1, 𝑐5=𝑚2, 𝑐6=𝑚3, 𝑐7=𝑚4
The Code word corresponding to the message (1110) is (0101110)
1 1 0 1 0 0 0
0 1 1 0 1 0 0
1 1 1 0 0 1 0
1 0 1 0 0 0 1
Linear BLOCK CODES
Syndrome And Error Detection:
For a code word c, transmitted over a noisy channel, let r be
the received vector at the output of the channel with error ‘e’
Syndrome of received vector r is given by:
s = r.H =(𝑠1, 𝑠2, 𝑠3, … … . . , 𝑠𝑛−𝑘)
+
c r = c+e
e
1, if r ≠c
0, if r=c
i
e =
Linear BLOCK CODES
Properties of syndrome:
 The syndrome depends only on the error pattern and not on the
transmitted word.
s = (c+e).H = c.H + e.H
 All the error pattern differ by at least a code word have the same
syndrome ‘s’.
 The corresponding parity check matrix is:
H=
1 0 0
0 1 0
0 0 1
1 0 1
1 1 1
0 1 1
1
0
1
Linear BLOCK CODES
Example: Let C=(0101110) be the transmitted code and r=(0001110)
be the received vector.
Solution:
s=r. 𝐻𝑇=(𝑠1, 𝑠2, 𝑠3) =(𝑟1, 𝑟2, 𝑟3, 𝑟4, 𝑟5, 𝑟6, 𝑟7) (Xor)
𝟏 𝟎 𝟎
𝟎 𝟏 𝟎
𝟎 𝟎 𝟏
𝟏 𝟏 𝟎
𝟎 𝟏 𝟏
𝟏 𝟏 𝟏
𝟏 𝟎 𝟏
The syndrome digits are:
𝑠1 = 𝑟1 + 𝑟4 + 𝑟6 + 𝑟7 = 0
𝑠2 = 𝑟2 + 𝑟4 + 𝑟5 + 𝑟6 = 1
𝑠3 = 𝑟3 + 𝑟5 + 𝑟6 + 𝑟7 = 0
At receiver, The error vector obtained from the syndrome is,
e=(𝑒1, 𝑒2, 𝑒3, 𝑒4, 𝑒5, 𝑒6, 𝑒7)=(0100000)
C*= r + e = (0001110)+(0100000)
= (0101110) where C* is the actual transmitted code word
- Then, S = 010 = (Bit number 2)
With k=4 there is 2^4=16 distinct message ward.
The code ward is obtained by c=m G.
From the table : the minimum distance dmin= 3.
From to t = (dmin – 1)/2 we note that t=1
This mean that the hamming codes are single error correcting binary
codes
Hamming Code
Automatic Repeat request (ARQ)
Upon the detection of an error in a transmitted code word , the
receiver requests a repeat transmission of the corrupted code word
(on feedback channel).
As such , ARQ can be used only on
i.Half-duplex .
ii.Full-duplex links.
In a half-duplex link , data transmission over the link can be made
in either direction but not simultaneously .
On the other hand , in a full-duplex link , it is possible for data
transmission to proceed over the link in both direction
simultaneously.
Automatic Repeat request (ARQ)
Types of ARQ:
1. Stop-And-Wait ARQ (SAW ARQ).
2. Go-Back-N ARQ(GBN ARQ)(pullback)
3. Selective-Repeat ARQ (SR ARQ).
Automatic Repeat request (ARQ)
Automatic Repeat request
(ARQ)
Automatic Repeat request
(ARQ)
Automatic Repeat request
(ARQ)
FER
1. Require only one-way
link.
2. Increased decoding
complexity.
3. Used in Radio
Transmission applications
ARQ
1. a half-duplex or full-
duplex link.
2. Simple decoder design.
3. Noiseless feedback
channel.
4. Widely used in computer
communication system.
Error-Correcting Techniques
Comparison
Any Question ?

Channel Coding .pptx

  • 1.
    Channel coding Introduced By MurtadhaBaji Eidan Electronic and Communication Engineering M.Sc. 2022 - 2023
  • 2.
    Why channel coding? Thechallenge 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. Digital Communication system key parameters are:  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/No.
  • 3.
    Why channel coding? Inpractical , there are a limit on the value that we can assign to Eb /No. So, it is impossible to provide acceptable data quality (low enough error performance). there's option available for changing data quality, is to use “ ERROR-CONTROL CODING “. The two main methods of Error Control are: I.Forward Error Correction (FEC). II.Automatic Repeat request (ARQ).
  • 4.
  • 5.
    Forward Error Correction(FEC) The key idea of FEC is to transmit enough redundant data to allow receiver to recover from errors all by itself. No sender retransmission required. The major categories of FEC codes are: i. Block codes, ii. Cyclic codes, iii. Convolutional codes iv. Turbo codes, etc.
  • 6.
    Forward Error Correction(FEC) FEC require only a one-way link between the transmitter and receiver. In the use of error-control coding there are trade offs between: i.Efficiency & Reliability. ii.Encoding/Decoding complexity & Bandwidth .
  • 7.
    BLOCK CODES A blockcode encoder divides the information sequence "u" into message blocks of "k" information bits (symbols) and converts each message "u" into an n-bit code (symbols). The coding rate is defined as "R = k/n". The redundant bits (symbols), (n-k), give the code the ability to deal with channel noise.
  • 8.
    BLOCK CODES Systematic Form: Inthis form, the code word consists of (n-k) parity check bits followed by k bits of the message. The structure of the code word in systematic form is: In systematic form, Codeword information sequence doesn’t change at the encoder output. The rate or efficiency for this code R= k/n
  • 9.
    BLOCK CODES Minimum DistanceConsideration:  The minimum distance, dmin, between two closest codewords, which specifies the minimum amount of data changes required to turn one valid codeword into another, is an essential parameter of a block code. This parameter determines a code's ability to detect and correct errors.  Usually, an FEC code can detect up to 2t = (dmin – 1) mistakes per codeword.  Usually, an FEC code can correct up to t = (dmin – 1)/2 mistakes per codeword.
  • 10.
    Linear BLOCK CODES GeneratorMatrix:  All code words can be obtained as linear combination of basis vectors.  The basis vectors can be designated as {𝑔1, 𝑔2, 𝑔3,….., 𝑔𝑘}  For a linear code, there exists a k by n generator matrix such that 𝑐1∗𝑛 = 𝑚1∗𝑘 . 𝐺𝑘∗𝑛 where c={𝑐1, 𝑐2, ….., 𝑐𝑛} and m={𝑚1, 𝑚2, ……., 𝑚𝑘}
  • 11.
    Linear BLOCK CODES Example:Let us consider (7, 4) linear code where k=4 and n=7, the message word is (1110). Find the Codeword. Solution: C=m.G= (𝑚1, 𝑚2, 𝑚3, 𝑚4) (Xor) - By matrix multiplication we obtain : 𝑐1=𝑚1 + 𝑚3 + 𝑚4, 𝑐2=𝑚1 + 𝑚2 + 𝑚3, 𝑐3= 𝑚2 + 𝑚3 + 𝑚4, 𝑐4=𝑚1, 𝑐5=𝑚2, 𝑐6=𝑚3, 𝑐7=𝑚4 The Code word corresponding to the message (1110) is (0101110) 1 1 0 1 0 0 0 0 1 1 0 1 0 0 1 1 1 0 0 1 0 1 0 1 0 0 0 1
  • 12.
    Linear BLOCK CODES SyndromeAnd Error Detection: For a code word c, transmitted over a noisy channel, let r be the received vector at the output of the channel with error ‘e’ Syndrome of received vector r is given by: s = r.H =(𝑠1, 𝑠2, 𝑠3, … … . . , 𝑠𝑛−𝑘) + c r = c+e e 1, if r ≠c 0, if r=c i e =
  • 13.
    Linear BLOCK CODES Propertiesof syndrome:  The syndrome depends only on the error pattern and not on the transmitted word. s = (c+e).H = c.H + e.H  All the error pattern differ by at least a code word have the same syndrome ‘s’.  The corresponding parity check matrix is: H= 1 0 0 0 1 0 0 0 1 1 0 1 1 1 1 0 1 1 1 0 1
  • 14.
    Linear BLOCK CODES Example:Let C=(0101110) be the transmitted code and r=(0001110) be the received vector. Solution: s=r. 𝐻𝑇=(𝑠1, 𝑠2, 𝑠3) =(𝑟1, 𝑟2, 𝑟3, 𝑟4, 𝑟5, 𝑟6, 𝑟7) (Xor) 𝟏 𝟎 𝟎 𝟎 𝟏 𝟎 𝟎 𝟎 𝟏 𝟏 𝟏 𝟎 𝟎 𝟏 𝟏 𝟏 𝟏 𝟏 𝟏 𝟎 𝟏 The syndrome digits are: 𝑠1 = 𝑟1 + 𝑟4 + 𝑟6 + 𝑟7 = 0 𝑠2 = 𝑟2 + 𝑟4 + 𝑟5 + 𝑟6 = 1 𝑠3 = 𝑟3 + 𝑟5 + 𝑟6 + 𝑟7 = 0 At receiver, The error vector obtained from the syndrome is, e=(𝑒1, 𝑒2, 𝑒3, 𝑒4, 𝑒5, 𝑒6, 𝑒7)=(0100000) C*= r + e = (0001110)+(0100000) = (0101110) where C* is the actual transmitted code word - Then, S = 010 = (Bit number 2)
  • 15.
    With k=4 thereis 2^4=16 distinct message ward. The code ward is obtained by c=m G. From the table : the minimum distance dmin= 3. From to t = (dmin – 1)/2 we note that t=1 This mean that the hamming codes are single error correcting binary codes Hamming Code
  • 16.
    Automatic Repeat request(ARQ) Upon the detection of an error in a transmitted code word , the receiver requests a repeat transmission of the corrupted code word (on feedback channel). As such , ARQ can be used only on i.Half-duplex . ii.Full-duplex links. In a half-duplex link , data transmission over the link can be made in either direction but not simultaneously . On the other hand , in a full-duplex link , it is possible for data transmission to proceed over the link in both direction simultaneously.
  • 17.
  • 18.
    Types of ARQ: 1.Stop-And-Wait ARQ (SAW ARQ). 2. Go-Back-N ARQ(GBN ARQ)(pullback) 3. Selective-Repeat ARQ (SR ARQ). Automatic Repeat request (ARQ)
  • 19.
  • 20.
  • 21.
  • 22.
    FER 1. Require onlyone-way link. 2. Increased decoding complexity. 3. Used in Radio Transmission applications ARQ 1. a half-duplex or full- duplex link. 2. Simple decoder design. 3. Noiseless feedback channel. 4. Widely used in computer communication system. Error-Correcting Techniques Comparison
  • 23.