Слайд 1Convolutional Codes
Mohammad Hanaysheh
Mahdi Barhoush
Слайд 2
* A convolutional code is generated by passing the information sequence
to be transmitted through a linear finite shift register.
* The input data to the encoder, which is assumed to be binary is shifted into and along the shift register k bits at a time. The number of output bits for each k bit sequence is n bits.
R = k / n.
Слайд 3Example.
Consider the binary convolutional encoder with k=1 and n=3.
Слайд 4>>> Initially, the shift register is assumed to be in the
all-zero state. suppose the first input is a 1.then the output sequence of three bits is 111.suppose the second bit is 0.the output sequence will be 001.if the third bit is 1,the output will be 100,and so on.
>>> There are three alternative methods that are often used to describe a convolutional code:
1. Tree diagram.
2. Trellis diagram.
3.State diagram.
Слайд 6
Information bit 0 or 1
Register states 00,01,10 or 11
a
00
b 01
c 10
d 11
Слайд 9Decoding
A message m is encoded into the code sequence c.
Each code
sequence represents a path in the trellis diagram.
Minimum Distance Decoding
Upon receiving the received sequence r, search for the path that is closest ( in Hamming distance) to r .
Слайд 10The Viterbi Algorithm:
* The viterbi algorithm is used to decode convolutional
codes and any structure or system that can be described by a trellis.
* It is a maximum likelihood decoding algorithm that selects the most probable path that maximizes the likelihood function.
* The algorithm is based on add-compare-select the best path each time at each state.