/
Convolutional codes In previous linear block coding, each k data digits are encoded into Convolutional codes In previous linear block coding, each k data digits are encoded into

Convolutional codes In previous linear block coding, each k data digits are encoded into - PowerPoint Presentation

madison
madison . @madison
Follow
66 views
Uploaded On 2023-07-09

Convolutional codes In previous linear block coding, each k data digits are encoded into - PPT Presentation

nk code by adding the r parity digits An alternative scheme that groups the data stream into much smaller blocks k digits and encode them into n digits with order of k say 1 2 or 3 digits at most is the convolutional codes Such code structure can be realized using convolutional structure for ID: 1007414

diagram convolutional encoder state convolutional diagram state encoder code output draw states bits codes shift branches digits input rate

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "Convolutional codes In previous linear b..." is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

1. Convolutional codesIn previous linear block coding, each k data digits are encoded into n digits to generate (n,k) code by adding the r parity digits. An alternative scheme that groups the data stream into much smaller blocks k digits and encode them into n digits with order of k say 1, 2 or 3 digits at most is the convolutional codes. Such code structure can be realized using convolutional structure for the data digits.Structure of the convolutional codesA convolutional code is specified by three parameters : ( n, k, L) where :k input bit(s) to the encoder (k bit at a time)n no. of output bits for each k input L is the constraint length of the convolutinal code (no. of groups each group has k shift register) The code rate is k/nConvolutional code is defined by giving it’s generators. These are n vectors[ , each of Lk length describing the selected taps from the shift register to be mod-2 summed 

2. Structure of the convolutional codes Output bits

3. Example1: Consider the convolutional encoder with L=3, k=1, n=3 [g1]=[100], [g2]=[101], [g3]=[111] Since k=1 then we have one bit at a time (one shift register in each group).L=3, then we have 3 groups each with one stage( k=1), so we have 3 shift registers.n=3 so we have 3 output bits C1,C2 and C3 and the 3 generator vectors are: [g1]=[100], [g2]=[101], [g3]=[111] describing the connections for C1,C2 and C3 output (in octal form, these generators are given as 4, 5, 7). Q1 Q2 Q3[g1]=[1 0 0], C1=Q1 [g2]=[1 0 1] , C2=Q1+Q3 [g3]=[1 1 1 ], C3=Q1+Q2+Q3

4. Example2: Consider the 2/3 rate convolutional encoder with generators [g1]=[1011], [g2]=[1101], [g3]=[1010](in octal these generators are 13,15,12).Since k=2 then we have two input bits at a time (two shift register in each group).n=3 so we have 3 output bits C1,C2 and C3 and the 3 generator vectors are: [g1]=[1011], [g2]=[1101], [g3]=[1010 ]describing the connections for C1,C2 and C3 output (in octal form, these generators are given as 13,15,12). C1=Q1+Q3+Q4C2=Q1+Q2+Q4C3=Q1+Q3Since the generator vectors have 4 bits then L=2, then we have 2 groups each with two stages( k=2), so we have 4 shift registers.

5. convolutional Codes with Code Rate 1/5

6. convolutional Codes with Code Rate 1/3

7. convolutional Codes with Code Rate 1/4

8. convolutional Codes with Code Rate 1/2

9. There are 3 methods that are used to describe a convolutional code. tree diagramstate diagram trellis diagram.1) Tree diagram: To draw the tree diagram of the coder described in example1. Here, we make a simple tree structure starting with Q1Q2Q3=[000]L=3, k=1, n=3 [g1]=[100], [g2]=[101], [g3]=[111] C1=Q1; C2=Q1+Q3; C3=Q1+Q2+Q3 If say the data input is 1011…, then the output sequence will be: 111 001 100 110

10.

11. Example2: Draw the tree diagram of the convolutional encoder given in example2g1 = (1011) g2 = (1101)g3 = (1010)The state of the first (L-1)kstages of the shift register: a=00; b=01;c=10; d=11If the input bits 1011Then the output bits 111000L=2, k=2, n=3 convolutional encoder

12. 2) State diagram: An alternative picture to the convolutional encoder is to draw the state diagram of the encoder as a finite state machine. Determine the following parameters: *no. of states = states depending on the content of the last L-1 groups.*no. of branches= branches leaving each state and branches entering into each state.2) Prepare the transition table3) Draw the state diagram Example1: Draw the state diagram of the convolutional encoder given in example1. Here L=3, k=1, [g1]=[100],[g2]=[101],[g3]=[111]. Solution:1) no. of states= = =4 states which are the same states a,b,c,d  no. of branches= = =2 branches leaving from or entering into each node( state) 2) we will prepare the transition table that gives the present state of Q2Q3, next state of Q2Q3 and the output for each possible two inputs:

13. 3) draw the state diagram). For example, for data sequence :1011…. The output will be:111 001 100 110 ……

14. Example2: Draw the state diagram of the encoder of example2.L=2, k=2, n=3 convolutional encoder, g1 = (1011) ; g2 = (1101); g3 = (1010)1) no. of states= = =4 states which are the same states a,b,c,d no. of branches= = =4 branches leaving from or entering into each node( state)2) Prepare the transition table :input bitsQ1Q2 present states of Q3Q4 next state of Q3Q4 output C1C2C3 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 1 0 1 1 0 0 1 1 0 0 0 1 0 0 0 0 0 0 1 0 1 0 1 1 0 0 1 1 0 1 1 0 1 1 1 0 0 1 0 0 0 0 0 0 0 1 1 0 0 1 1 0 1 0 1 0 1 1 1 0 1 1 0 0 1 1 0 0 0 0 0 0 1 1 1 0 1 1 0 1 1 1 0 1 1 1 1 1 1 bcad

15.

16. 3) Trellis diagram: This is a very important diagram for the convolutional encoder since the very powerful decoder depends on this diagram. This diagram is directly obtained from the same transition table already obtained when we draw the state diagram. The only difference is that transitions between states are given as levels between the possible statesExample: Draw the trellis diagram of the encoder of example1

17.

18. Example2 : Draw the trellis diagram of the encoder of example2

19. Decoding of convolutional codes(Viterbi Algorithm):