Digital Exp 12
Digital Exp 12
Aim:
To study the working of Convolution encoder.
Apparatus Required:
Theory :
A convolutional encoder is a discrete linear time-invariant system. Every output of an encoder can be
described by its own transfer function, which is closely related to the generator polynomial. An impulse response is
connected with a transfer function through Z-transform.it is used for error correction by adding redundancy to the data,
allowing the receiver to detect and correct errors.
Procedure: working:
3.for each bit -shift it into the register, compute the output bits using the generator polynomials (by
Input bits = 1 0 1 1
Shift register state= 100 010 101 110
Output=(1 1), (1 1), (0 0), (0 1) - 11110001
1.length=3
2.code rate=1/2 (1 input bit-2 output bits)
3.G1=[1 1 1], G2=[1 0 1]
MATLAB code:
clc;
clear all;
close all;
input=[1 0 1 1];
K=3;
G1=[1 1 1];
G2=[1 0 1];
Shift_reg = zeros(1,K-1);
Encoded=[ ];
For i=1:length(input)
Current_bit=input(i);
Reg_state=[current_bit shift_reg];
Out1=mod(sum(reg_state.* G1), 2);
Out2=mod(sum(reg_state.* G2), 2);
Encoded=[encoded out1 out2];
Shift_reg=[current_bit shift_reg(1:end-1)];
End
Disp(‘input sequence:’);
Disp(input);
Disp(‘encoded output:’);
Disp(encoded);
OUTPUT:
Input sequence:
1011
Encoded output:
11110001
Result:
The working of convolution encoder is studied, and it can be used for error detection and correction in digital
Communication.
Conclusion:
This experiment demonstrates how convolution encoding introduces redundancy based on input bits
using shift registers, forms the basis for many forward error correction schemes used in modern
communication systems.
Precaution: