Sie sind auf Seite 1von 82

Convolutional coding

&
Viterbi Decoding
Presented By

Ahmed Sheriff IbrahimNoran Mostafa Asker

BASEM ABD EL-AZIZMostafa khamis Fouad

El-Tayeb Abd ElNaem

Supervised By
Introduction
outline
Convolutional Encoder
Modulation (BPSK Modulation)
Additive white Gaussian noise
(AWGN Channel)
Demodulation (BPSK Demodulation)
Viterbi Decoding
MATLAB Simulation
Introduction
INTRODUCTION
Problem Statement

Motivation

Objective
Problem Statement
Every communication channel is exposed to different kinds of
noise sources such as the Additive white Gaussian
noise(AWGN) it changes the value of the transmitted signal.
Those reasons cause some loss or changes in the data
transmitted over the channel.
however retransmission is not efficient and waste a lot of
time that is not acceptable in some applications specially with
the advanced new technologies communication systems
which have very high data rates.
That what made convolutional encoding and Viterbi decoding
very common because of its high speed, throughput, and
immediate data delivery.
Motivation
TheConvolution Encoder and Viterbi decoder
solve the problems.

this
project will allow the receiver to detect and
correct the without the need of retransmission.
Objective
The aim of this project is to design and construct an encoder and a
Viterbi decoder for convolutional codes. Field Programmable Gate Array
(FPGA) is the recommended hardware platform.

Learning outcomes :-
Learn what the types of error correcting codes are and how they
operate
Understand the parameters and limitations of error correcting codes
Gain a deep understanding of the encoding and decoding processes
Design and implement a system to achieve the encoding and decoding
Learn how to implement a system on an FPGA
Why Channel Coding?
In digital communication systems to improve the quality
of data at output, channel coding is employed.

It deals with various numbers of techniques that are


being used for the improvement of performance of our
communication system

It increases the information transfer rate at a fixed


error rate or error rate can be reduced with a fixed
information transfer rate.
Shannon limit
The maximum performance of the system is restricted
by Shannon limit.

C=B*log2 (1+SNR)
Digital communication
system
(BPSK Modulation & BPSK
Information Convolutional BPSK
source Demodulation)
encoder Modulator

AWGN
Channel

Information Viterbi BPSK


Sink Decoder Demodulator
Information Source
REFERENCES
[1]Robert H.morelos zaragoza, the art of error correcting coding .Second
Edition, John Wiley & Sons, 2006

[2]George C.clark jr jbibbcain, error correction coding for digital


communications

[3]B.g Evans , Satellite Communication Systems, 3rd Edition


Convolutional Encoder
Convolutional Encoder
Contents of convolutional
encoder

D
+
Properties of convolutional encoder
K=number of input bits
N= number of output bits
R= K/N= code rate
Encoder memory , M=number of shift reg.
L= constraint length ,L= K (M-1)
(N,K,L)
(K)
(N)
Types of Convolutional codes

Non-Recursive Non-Systematic Convolutional Recursive Systematic Convolutional


Encoder Encoder
State Diagram
G1

G2

Trellis Diagram for Convolutional
Encoder
Trellis Diagram for Viterbi decoding
Final OUTPUT
Input from Trellis Diagram
from Encoder
REFERENCES

[1]Ajay Dholakia, introduction to convolutional codes with


applications

[2]Rolf Johannesson,Kamil Sh.Zigangirov, fundamental of


convolutional coding
Modulation
(BPSK Modulation)
What is Modulation?

In modulation, a message signal , which contains the


information is used to control the parameters of a
carrier signal , so as to impress the information onto
the carrier.

The Messages
The message or modulating signal may be either:
Analogue denoted by m(t)
Digital denoted by d(t) i.e. sequences of 1's
and 0's
The Carrier
The carrier could be a 'sine wave' or a cosine wave'.

The basic sine wave

V(t) = Vo sin (2 f t + )

If the message signal m(t) controls


Amplitude _ Amplitude Modulation (AM) .
Frequency _ Frequency Modulation (FM) .
Phase _ Phase Modulation (PM) .
Why do we need modulation?

To separate signal from different transmitters .

To Reduce size and Height of Antenna .

Transmit The Information To long Distance Without interference.

Reduce bandwidth.
Digital Modulation
Modulation of Analog Signals for Digital Data
BPSK Modulation
The additive
noise channel
The additive noise channel
Transmitted signal s(t) is corrupted by noise
source n(t), and the resulting received signal is
r(t)
Noise could result form many sources,
including electronic components and
transmission interference

s(t) + r(t)

n(t)
Additive white Gaussian
noise(AWGN)
When an additive noise channel has a white Gaussian
noise source, we call it an AWGN channel
Additive:because it is added to any noise that might be
intrinsic to the information system.
White:refers to the idea that it has uniform power
across the frequency band for the information system.
Gaussian:because it has anormal distributionin the
time domain with an average time domain value of zero
Additive white Gaussian
noise(AWGN)

42
Additive white Gaussian
noise(AWGN)

Most frequently used model in communications

Reasons why we use this model


Its easy to understand and compute
It applies to a broad class of physical channels
Additive white Gaussian noise
(AWGN)
Additive White Gaussian Noise (AWGN)
White noise assumption in most situations
Gaussian Probability Density Function ( Gaussian
PDF )


2
: Variance
: Standard deviation
Data Transmission
Additive White Gaussian Noise (AWGN)

Power spectral density of


AWGN with N(0,0.25)
Histogram of AWGN superimposed on the
probability density function for a Gaussian
random variable of N(0,0.25)
Signal to Noise Ratio
(SNR)
Signal to Noise Ratio (SNR)

Ps
Ratio of the signal power level to the noise power level: SNR
Pn
Ps
Express in logarithmic function: SNR(dB ) 10 log
Pn

SNR measures the quality of a transmission channel, The greater


the ratio, the easier it is to identify and isolate and eliminate the
source of noise.
Signal to Noise Ratio (SNR)
Bit Error Rate (BER)

(BER)is a measure of how bits are transferred from


TX to RX.

(BER)is the number of bits received in error divided


by the total number of bits received.
Demodulation
(BPSK Demodulation)
What is Demodulation?

Demodulation is the reverse process (to


modulation) to recover the message signal m(t)
at the receiver.
BPSK DEMODULATION
REFERENCES

John G. Proakis (2001). Digital Communication. McGraw Hill,


Singapore. pp502-507, 471-475.

[2]George C.clark jr jbibbcain, error correction coding for digital


communications
Viterbi
decoding
Viterbi decoder
BMU(Branch metric unit)
Branch metric calculation (BMC): This unit calculates the distance
between
the received codeword and the valid codewords (state dependent)

In Hamming distance with 2 bits value is 0, 1, or 2

The BMC unit is thus simply a number of XOR (distance) or XNOR


(metric) gates plus a very simple encoder to convert bit agreement
to distance
PMU(Path metric unit)
ACS(Add-Compare-Select)
ACS(Add-Compare-Select)
The sample implementation of the ACS module .

Path metric of the state is found by adding the path metric from
the previous stage and the present branch metrics.

Since there are two possible way to reach any state two path
metrics are obtained, these two are compared to select the one
with the least path metric.

The selected least path metric is sent for storage as well as it is


used as benchmark for calculating the path metric of next stage.
TBU (trace back unit)
TBU (trace back unit)

Once the minimum path metrics of all the nodes at each stage
is calculated, the minimum path metric at the last stage is
found.

The node having the minimum path metrics at the last stage is
given as input to Trace Back Unit and then it starts trace
backing the survival paths from that node and outputs the
corresponding bit which has caused the transition of that path.
Applications

Viterbi Decoder is commonly used in decoding convolution


codes for wireless communication like

Decoding convolution codes in satellite communications.

Computer storage devices such as hard disc drives.

digital video broadcasting.

Mobile brad band Applications


REFERENCES

[1] Andrew J.Viterbi, Jim k.omura, Principles of digital communication


& coding

[2]"Digital Video Broadcast (DVB); Second generation framing structure,


channel coding and modulation systems for Broadcasting, Interactive
Services, News Gathering and other satellite broadband applications
(DVB-S2)". En 302 307 (ETSI) (V1.2.1). April 2009.
Simulation
Results
and
design
Matlab Design before add
The Convolution Encoder and Viterbi
decoder
Matlab Results
MATLAB Design after add
The Convolution Encoder and
Viterbi decoder
The Bernoulli binary
Convolutional Encoder Block
Convolutional encoder
design
Convolutional encoder
design(contd)

Rate
9 shift registers
[111111111] 1st O/P
[111011010] 2nd O/P
Recursive NON-Systematic Convolutional encoder
AWGN Channel
Viterbi decoder block
(BER)Bit Error Rate
BER & Eb/no(db)
Hardware
IMPLEMENTATION
project Gantt chart
REFERENCES

Digital Video Broadcast (DVB); Second generation framing structure, [ "1]


channel coding and modulation systems for Broadcasting, Interactive
Services, News Gathering and other satellite broadband applications (DVB-
S2)". En 302 307 (ETSI) (V1.2.1). April 2009.

[2] Vasily P. Pribylov, Alexander I. Plyasunov (2005). A Convolutional Code


Decoder Design Using Viterbi Algorithm with Register Exchange History
Unit. SIBCON.IEEE

Das könnte Ihnen auch gefallen