Subject Name: Information Theory Coding Subject Code: 10EC55 Prepared By: Shima Ramesh,Pavana Department: ECE Date: 10/11/2014 11/20/2018 MVJCE
UNIT 8 Convolution codes 11/20/2018 MVJCE
Convolution codes Time domain approach Transfer domain approach
Convolution codes Convolution codes can be designed to detect or correct errors. The encoder is labeled as (n,k,m) =(2,1,2) encoder At each input bit time one bit is shifted into the left most stage nad the bits that were Present in the register shifted to right by one position.
Encoding procedure. consider the input sequence u=101 (i) Initially the registers are in reset mode (0,0). (ii) at first time unit the input bit is 1.the bit enters the first register and pushes out the previous content ‘0’ which will now enter the 2nd register and pushes out the previous content. (iii) all these bits are passed to xor-gate and out pair (1,1) is obtained. (iv)the same steps are repeated until time unit 4 and zeros are introduced to clear reg content producing two more output pairs. (v) hence after (L+m ) time units i.e (3+2)=5 time unit the output sequence will be v=(11,10,00,10,11) m=memory order L= length of input sequence.
Problem illustration where the input is u=101
Convolution encoding time domain approach (2,1,3) encoder Here the encoder consists of m=3 stage shift register , n=2 modulo 2 adders And multiplexer to serial the encoder output.
For the above given encoder (2,1,3) two impulse response The information sequence u=(u1,u2,u3……) enters encoder one bit at a time starting from u1. specifically the encoder output sequence in this is case Are obtained by discrete convolution of information sequence with encoder Impulse response. The impulse response are also called as generator sequence. Impulse response can last upto m+1 time units. For the above given encoder (2,1,3) two impulse response
By inspection the impulse response can be written as The encoder output are defined as Hence for the above given encoder the output is given as And the out sequence is given by
Suppose for the above example the input u=(10111) the output sequence is The output sequence is given by
Generation matrix can be written as If the information sequence u is of finite length L the generation matrix G has L rows and n*(m+L) columns.and output v has length of n*(m+L). Generation matrix can be written as The encoding equation in matrix form is given by
Consider the example u=(10111) Performing multiplication v=uG we get v=(11, 01, 00, 01, 01, 00,11)
Consider example (3,2,1) Here as k=2, the encoder consists of 2 m=1 shift register, n=3 three modulo-2-adders, two multiplexers.
The input sequences is given by The generator sequences for the encoder are The encoding equations can be written as
The convolution operation implies Code word can be written as
Consider the example u=(110110) hence V=u.G
u=(110110) Hence the output is given by Code rate is given by R= k/n Fractional rate loss given by=
Encoding of convolutional codes; Transform domain approach Example (2,1,m): the encoding equations become Where u(X) is the informational polynomial V(X) is the encoded polynomial
Generator polynomials are written as After multiplexing the code word become The indeterminate X can be regarded as a unit-delay operator
Consider the example as (2,1,3) The impulse response is The generator polynomials The information sequence can be written as u=10111 the information polynomial is The two code polynomials are then
From the polynomials so obtained can be written as The code word can be written as
OR We may use the multiplexing technique and write The code polynomial is The code word can be written as
The transfer function matrix (k*n) is given by Using the transfer function matrix, the encoding equations for (n,k,m ) Code can be expressed Is the k vector , representing information polynomials n-vector represents encoded sequences The code word becomes
The encoder we have For the information sequence
Hence the code word is
Encoder state at time unit T’ State Diagram The state of an encoder is defined as shift register contents. For an (n,k,m) code with K>1 i-th shift register contains Ki previous information bits Is the encoder memory Encoder state at time unit T’ The encoder inputs Are the binary k-tuple of inputs There are 2^k different possible states Each new block of k-inputs causes a transition to a new state. Hence there are 2^k branches leaving each state. One each corresponding To the input block
Consider the example (2,1,3) State table for the (2,1,3) encoder can be written as
The two output sequence
Catastrophic code For catastrophic code “the state diagram consists of a loop of zero weight other than the self loop around the state So. The characteristic of a catastrophic code that an information sequence of infinite weight produce a finite code word. Non-Catastrophic code It contains no zero weight loops other than the self loop around the all Zero state So. All infinite weight information sequence must generate infinite weight code words.
State diagram of (2,1,2) catastrophic code
Procedure for writing tree-graph: If the input is 0 the upper path is followed and if the input is 1 then the lower path is followed. The vertical line is called node and horizontal line is called branch. The output code words for each input bit are shown on the branches. The encoder output for any information sequence can be traced through tree paths.
Tree graph for the (2,1,2) convolution encoder
To obtain complete code sequence corresponding to information sequence of length kL. The tree graph is to extended by n(m-l) time units. The extended part unit is called “tail of the tree”.2kL right most nodes are called “terminal nodes”. Illustration of tail of the tree The completed sequence is