Channel Coding For Modern Communication Systems: Presented by Yasir Mehmood (200411018)

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 20

CHANNEL CODING FOR

MODERN COMMUNICATION
SYSTEMS

Presented By
Yasir Mehmood (200411018)
CONTENTS
• Background of Project

• Introduction

• Types of Channel coding

• Cyclic codes

• Convolutional codes

• Advantages
BACKGROUND OF PROJECT

 With the advancement in technology new techniques should be


used
 This
data is transferred in form of binary bits but contains a lot of
unwanted information
 So, channel coding strategy may be used
INTRODUCTION

 Channel coding, also known as forward error control coding


(FECC)
 Channel coding is performed both at the transmitter and at the
receiver.
 Channel coding enables the receiver to detect and correct errors
TYPES OF CHANNEL CODES

 There are two types of channel coding, to be


specific block codes and convolutional codes
 Block codes are based thoroughly on limited field math and
theoretical math based used to distinguish or rectify errors
 On the other hand, Convolutional codes are one of the
foremost broadly utilized channel codes in practical
communication
TYPES OF CHANNEL CODES

 There are a lot of further different kind of coding schemes related


to block coding and convolutional code

 Herewe mainly discuss only two of them in detail such as cyclic


codes and convolution codes
CYCLIC CODES

 A Cycliccode is a block code, where the circular shifts of each


code word gives another word that belongs to the code
 Cyclic code has a simple mathematical structure that permits
design of higher order error correcting codes
 The encoder can be realized by simply using shift registers
PROPERTIES

A binary code is said to be cyclic if it exhibits the two following


properties
1. The sum of any two code words in the code is also a code word
(linearity)
2. Any cyclic shift of a code word in the code is also a code word
(cyclic)
 EXAMPLE OF A CYCLIC CODE
SUB-CATEGORIES

 Other remarkable cyclic codes are


I. Cyclic redundancy check (CRC) codes
II. Bose-Chaudhuri-Hocquenghem (BCH) codes
III. Reed-Solomon codes
CONVOLUTIONAL CODES

 Convolutional coding is a broadly utilized coding strategy which


isn't based on blocks of bits but rather the output code bits are
decided by logic operations to convert the entire data stream into one
single code word

 The convolutional coding can be applied to a continuous data stream


as well as to blocks of data whereas the block codes can be applied
only for the block of data.
PARAMETERS AND PROPERTIES

 Convolutional codes are commonly specified by three parameters:


(n,k,m)
 n = number of output bits
 k = number of input bits
 m = number of memory registers
 Code Rate: The quantity k/n is called as code rate. It is a measure of
the efficiency of the code.
 Constraint Length: The quantity L is called the constraint length of
the code. It represents the number of bits in the encoder memory.
CONVOLUTIONAL ENCODER

 The encoder can be represented in several different but equivalent


ways. They are:
I. Generator Representation
II. Tree Diagram Representation
III. State Diagram Representation
IV. Trellis Diagram Representation
Here i explain only III and IV
DECODING OF CONVOLUTIONAL CODES

 There are several different approaches to decoding of convolutional


codes. These are grouped in two basic categories:
I. Fano Algorithm
II. Viterbi Algorithm
Here i explain only II
PROCESS OF VITERBI ALGORITHM

 Following steps are to be followed to solve Viterbi Algorithm :


I. Make trellis encoder
II. Using encoder make trellis diagram
III. Match weightage with respect to trellis diagram
IV. Find minimum weightage path on trellis
EXPLANATION OF VITERBI ALGORITHM
 Some of steps are explain in previous slide of convolutional code
using trellis encoder
 Step 2: making of trellis diagram
EXPLANATION OF VITERBI ALGORITHM
 Step 3: Match weightage with respect to trellis diagram
 Let consider received bit sequence as: 01 10 11 00 00
ADVANTAGES OF CONVOLUTIONAL
CODES

 Convolution coding is a popular error-correcting coding method used


in digital communications
 Convolution encoding with Viterbi decoding is a powerful FEC
technique that is particularly suited to a channel.
 It is simple and has good performance with low implementation cost.
All the data is collected from book:
1)Coding theory : algorithms, architectures and applications by Andre Neubauer,
Jurgen Freudenberger, Volker Kuhn
2) https://vtechworks.lib.vt.edu/handle/10919/36910

Thank you

You might also like