0% found this document useful (0 votes)
13 views29 pages

Slide 5 Channel Coding SD 5.3 Convolutional Codes

The document discusses channel coding techniques used in digital communication systems. It covers block codes, convolutional codes, and error detection and correction methods. Specific channel coding techniques described include repetition codes, BCH codes, Hamming codes, and Reed-Solomon codes.

Uploaded by

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

Slide 5 Channel Coding SD 5.3 Convolutional Codes

The document discusses channel coding techniques used in digital communication systems. It covers block codes, convolutional codes, and error detection and correction methods. Specific channel coding techniques described include repetition codes, BCH codes, Hamming codes, and Reed-Solomon codes.

Uploaded by

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

Chapter 5:

Channel Coding
T E K N O L O G I M A S A D E PA N

AMIN SUHARJONO

T. T E L E K O M U N I K A S I
Konsep Komunikasi Digital

Ch.2 Ch.3
Ch.5 Ch.4

04/09/2024 TMD BAB 5 CHANNEL CODING 2


Outline

5.1 General Concept of Channel Coding


5.2 Block Codes
5.3 Convolutional Codes
5.4 Most Recent Codes

04/09/2024 TMD BAB 5 CHANNEL CODING 3


5.1 General Concept of Channel Coding
A. Definition of Error
 An error occurs when a transmitted bit is a 1 and its corresponding received bit
 becomes a 0 or a 0 becomes a 1.
 All digital transmission systems introduce errors
 To reduce the bit error rate is the application of error-control coding through
the calculated use of redundancy.
 The entire field of error-control coding is devoted to the development of
techniques to achieve the performance that Shannon’s channel coding
theorem promised possible.

04/09/2024 TMD BAB 5 CHANNEL CODING 4


5.1 General Concept of Channel Coding
A. Definition of Error
 The acceptability of a bit error rate depends on the application requirement
and the transmission medium performance.
 For instance, bit error rates may be roughly as high as in cellular systems, in
the order of in copper wires, and as high as in fiber optics.
 In order to improve the error rate performance required for an application in a
digital communication system with an unacceptable bit error rate, error-
control coding needs to be employed, but generally at the expense of an
increase in bandwidth requirements.

04/09/2024 TMD BAB 5 CHANNEL CODING 5


5.1 General Concept of Channel Coding
B. Types of Errors
 Two types of errors: random (single-bit) errors and burst (multiplebit) errors.
 In random errors, the bit errors occur independently of each other, and usually
when one bit has changed, its neighbouring bits remain correct (unchanged).
 Examples :
 shot noise in the transmitting and receiving equipment
 thermal noise in free-space communication channel
 additive white Gaussian noise (AWGN)

04/09/2024 TMD BAB 5 CHANNEL CODING 6


5.1 General Concept of Channel Coding
B. Types of Errors
 In burst errors, two or more bits in a row have usually changed
 Examples:
 magnetic recording channels (tape or disk)
 impulse noise due to lightening and switching transients in radio channels,
 mobile fading channels
 A burst error is more common to occur than a random error.

04/09/2024 TMD BAB 5 CHANNEL CODING 7


5.1 General Concept of Channel Coding
C. Methods of Controlling Errors
 The central concept in detecting and/or correcting errors is adding redundancy
 The transmitter sends the information bits along with some extra (also
known as parity) bits.
 The receiver uses the redundant bits to detect or correct corrupted bits,
and then removes the redundant bits.
 1) Error detection:
 Only to find out if errors have occurred.
 Error detection may result in data rejection.
 The prerequisite to the retransmission request.
04/09/2024 TMD BAB 5 CHANNEL CODING 8
5.1 General Concept of Channel Coding
C. Methods of Controlling Errors
 2) Error Correction:
 Need to find out which bits are in error, i.e., to determine their locations in
the received bit stream.
 In other words, the initial part of error correction is inherently error
detection.
 The techniques known as forward error correction (FEC) coding techniques.
 FEC codes more complex than error-detecting codes
 Require more redundancy (parity) bits.
 Generally yields a lower bit error rate, but at the expense of significantly
higher transmission bandwidth and more decoding complexity.
04/09/2024 TMD BAB 5 CHANNEL CODING 9
5.1 General Concept of Channel Coding
D. Classes of Codes
 Error control codes are divided into two broad classes:
 block codes
 convolutional codes
 Concatenated codes (combination block and convolutional codes)
 Block codes
 a block of k information bits is followed by r(=n-k) check bits that are exclusively
derived from the block of information bits.
 Convolutional codes
 Check bits are continuously interleaved with information bits
04/09/2024 TMD BAB 5 CHANNEL CODING 10
5.1 General Concept of Channel Coding
D. Classes of Codes
 Decoding of a code: hard decisions or soft decisions
 Hard decisions
 demodulation outputs only a symbol value for each received symbol
 employ minimum Hamming distance (the number of bits in which n-bit codewords differ)
 Soft decisions
 demodulation outputs an estimate of the received symbol value along with an indication
of the reliability of this value using multi-level quantization.
 utilize minimum Euclidean distance (the distance between the received and transmitted
signals in n-dimensional Euclidean space).

04/09/2024 TMD BAB 5 CHANNEL CODING 11


5.1 General Concept of Channel Coding
E. Error-detection Methods
 Parity-Check Codes
 extra bit is added to every data unit
 The objective of adding the parity bit (a 0 or a 1) is to make the total number of 1s in the
data unit (including the parity bit) to become even.
 Checksum
 calculated using one’s complement arithmetic
 if there is a carry in the most significant bit, the carry bit back to the least significant bit.
 Cyclic redundancy check (CRC)
 used to detect data units, such as packets, especially with burst
 CRC is based on modulo-2 division

04/09/2024 TMD BAB 5 CHANNEL CODING 12


5.2 Linear Block Codes
A. General Concept
 Linear block codes are the most important and widely used class of block codes.
 A block code is linear if any linear combination of two codewords is a codeword.
 In the binary case, this means that the sum of any two codewords is a codeword.
 In linear block codes the codewords form a -dimensional subspace of an -dimensional
space.
 Linear block codes are described in terms of a generator matrix , which is a binary matrix
such that each codeword can be written in the form

 where is the binary data sequence of length (the encoder input).

04/09/2024 TMD BAB 5 CHANNEL CODING 13


5.2 Linear Block Codes
A. General Concept
 An important to determine the error-correcting capabilities of a block code, is the minimum
(Hamming) distance
 The minimum distance:

 For linear codes the minimum distance is equal to the minimum weight of the code

 that is, the minimum number of 1 's in any nonzero codeword

04/09/2024 TMD BAB 5 CHANNEL CODING 14


5.2 Linear Block Codes
A. General Concept
 Example 1: => =
 Determine all the codewords and
the minimum weight of the code for
the (6,3) code with generator matrix:

 The minimum weight = 3

 Answer :
 General form:
 = all possible binary sequence of length
3 bit

04/09/2024 TMD BAB 5 CHANNEL CODING 15


5.2 Linear Block Codes
A. General Concept
 Example 2:
 The generator matrix for a ( 1 0, 4) linear block code is given by

 Determine all the codewords and the minimum weight of the code

 Answer :
 See Proakis et.al. (2012), page 444 (Illustrative Problem 10.8)

04/09/2024 TMD BAB 5 CHANNEL CODING 16


5.2 Linear Block Codes
A. General Concept
 Exercise 1:
a) Determine all codewords for a (6, 3) systematic linear block code whose generator matrix is as follows:
=
b) Calculate the minimum weight of the code

 Exercise 2:
a) Determine all codewords for a (7, 4) systematic linear block code whose generator matrix is as follows:

 b) Calculate the minimum weight of the code

04/09/2024 TMD BAB 5 CHANNEL CODING 17


5.2 Linear Block Codes
B. Well-Known Linear Block Codes
 Repetition codes
 Bose-Chaudhuri-Hocquenghem (BCH) codes
 Hamming codes
 Reed-Solomon (RS) codes

04/09/2024 TMD BAB 5 CHANNEL CODING 18


5.3 Convolutional Codes
A. General Concept
 Expressed as a three-tuple with:
 output bits
 input bits
 delayed (memory) bits
 This technique of coding as bit by bit shifted multiplication, followed by superposition.
 The operation is very much similar to that of shifting, multiply through window and
addition. That’s why the technique is named as convolutional coding.
 The current outputs are linear combinations of the present input bits and the previous
input bits.

04/09/2024 TMD BAB 5 CHANNEL CODING 19


5.3 Convolutional Codes
B. Encoder
 A binary convolutional encoder :
 a combination of shift registers and modulo-2 adders (XOR)
 the output bits are modular-2 additions of selective shift register contents and present input bits.
 Example 3:  Example 4:
 Encoder for binary (2,1,2) convolutional code  Encoder for binary (3,2,2) convolutional code

04/09/2024 TMD BAB 5 CHANNEL CODING 20


5.3 Convolutional Codes
B. Encoder
 Example 5:
 Determine the output of the convolutional encoder shown in following figure

when the information sequence is: 10011100110000111

Answer: See Proakis et.al. (2012), page 458, Illustrative Problem 10.13

04/09/2024 TMD BAB 5 CHANNEL CODING 21


5.3 Convolutional Codes
B. Encoder
 Exercise 3:

04/09/2024 TMD BAB 5 CHANNEL CODING 22


5.3 Convolutional Codes
B. Encoder
 Exercise 4:

04/09/2024 TMD BAB 5 CHANNEL CODING 23


5.3 Convolutional Codes
C. Trellis Diagram
 A convolutional code can be represented by either the structure of the encoder or G, the
generator matrix.
 Another method for representing a convolutional codes is trellis diagram.
 A trellis diagram is a state transition diagram plotted versus time.

04/09/2024 TMD BAB 5 CHANNEL CODING 24


5.3 Convolutional Codes
C. Trellis Diagram
 Example 6: A convolutional encoder Answer:
is shown as follow. Determine the
trellis diagram

04/09/2024 TMD BAB 5 CHANNEL CODING 25


5.3 Convolutional Codes
C. Trellis Diagram
 Exercise 5: Determine the trellis diagram of  Exercise 6: Determine the trellis diagram
the following Convolutional Code: of the following Convolutional Code:

04/09/2024 TMD BAB 5 CHANNEL CODING 26


5.3 Convolutional Codes
D. Viterbi Decoder
 There exist many algorithms for decoding of convolutional codes.
 The Viterbi algorithm is probably the most widely used decoding method.
 This algorithm is particularly interesting because it is a maximum-likelihood decoding
algorithm, which-upon receiving the channel output-searches through the trellis to find the
path that is most likely to have generated the received sequence.
 If hard-decision decoding is used, this algorithm finds the path that is at the minimum
Hamming distance from the received sequence,
 If soft-decision decoding is employed, the Viterbi algorithm finds the path that is at the
minimum Euclidean distance from the received sequence.
 Further discussion of The Viterbi Decoder will be presented on the other slide separately.

04/09/2024 TMD BAB 5 CHANNEL CODING 27


Referensi
 John G. Proakis, Masoud Salehi, Gerhard Bauch (2012), “Contemporary Communication Systems Using
MATLAB 3rd Edition”, Cengage Learning, Boston, USA (Chapter 10)
 Apurba Das (2010), “Digital Communication Principle and System Modelling”, Springer, Heidelberg, Germany
(Chapter 09)
 Ali Grami (2016), “Introduction to Digital Communications”, Elsevier Inc., London, UK (Chapter 10)

04/09/2024 TMD BAB 5 CHANNEL CODING 28


Terima Kasih
“Siapa pun yang mengobarkan semangatnya untuk
menang, harus menyiapkan keikhlasan yang sama
besarnya untuk merasa damai saat dia dikalahkan…“

[email protected] suharjono.amin

04/09/2024 TMD BAB 5 CHANNEL CODING 29

You might also like