1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D...

23
1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ) ,(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier to represent in transform domain Sometimes referred to as systematic recursive convolutional code (SRCC). But note that the feedback is an encoder property

Transcript of 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D...

Page 1: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

1

Systematic feedback (recursive) encoders

• G’(D) = [1,(1 + D2)/(1 + D + D2) ,(1 + D)/(1 + D + D2) ]

• Infinite impulse response (not polynomial)

• Easier to represent in transform domain

• Sometimes referred to as systematic recursiveconvolutional code (SRCC). But note thatthe feedback is an encoder property

Page 2: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

2

Example

11

11

001110

111101

001110

111101

D

DDD

G

)1(

)1(

)1(1

)1(

1)1(

)1)(1(

11

2

2

2

2

22

2

10

01

0

1)1/(1

1)1/(1

1)1/(1

11

)1/(1)1/()1/(1

DD

D

DD

DD

DD

DDD

DDD

DD

DDDDD

DD

D

DDDDDDG

Page 3: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

3

Example (Cont.)

1

10

01

)1(

)1(

)1(1

)1(

)1(

)1(1

2

2

2

2

2

2

DD

D

DD

DD

D

DD

H

G

Controller canonical form

1

10

01

)1(

)1(

)1(1

)1(

)1(

)1(1

2

2

2

2

2

2

DD

D

DD

DD

D

DD

H

G

Observer canonical form

Page 4: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

4

Some notes on minimality• For rate 1/n codes, a minimal encoder is in controller canonical form

provided common factors are removed from G• Why:

• k = 1, only one row of polynomials• If common factors not removed:

• G(D) = [1 + D2 , 1 + D3 ] =3 but • G’(D) = [1 + D, 1 +D+ D2 ] =2

• For rate (n -1)/n codes, there is a minimal encoder in observer canonical form corresponding to a systematic recursive encoder G’, provided • common factors are removed from H, the systematic rational function parity

check matrix derived from G’, and • all functions in G’ are realizable (delay of denominator exceeds delay of

enumerator)• Why:

• k = n -1, only one row of polynomials in H

• For rate k/n: More difficult

Page 5: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

5

Example: Nonsystematic feedback encoder

We need a common denominator in each row for the feedback of the shift registers:

Controller canonical form Observer canonical form

Page 6: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

6

Summary

• Any rate 1/n code can be represented by a minimal feedforward encoder G(D), or its rational systematic counterpart

• Any rate (n-1)/n code can be represented by a minimal systematic feedback matrix H(D), or its polynomial counterpart

Page 7: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

7

Feedforward Encoder Inverse

• What if we want an encoder inverse; i. e. a way to find an estimate of the information by inverting the received word without decoding?

• Systematic encoders: Easy. Nonsystematic encoders?

• Recall: V(D) = U(D) G(D)

• Then we need an inverse matrix G-1(D) : G(D) G-1(D) = I(D)Dl

• Then V(D) G-1(D) = U(D) G(D) G-1(D) = U(D) I(D)Dl = U(D)Dl

• When does a feedforward inverse exist?

• Rate 1/n code: a feedforward inverse exists iff

• GCD {g (0) (D), g (1)

(D), ..., g (n-1) (D) } = Dl

• Rate k/n code: a feedforward inverse exists iff

• GCD {i(D)} = Dl

• where {i(D)} is the set of all determinants of kk submatrices

Page 8: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

8

Example

• G(D) = [1 + D2 + D3, 1 + D + D2 + D3 ]

• GCD {1 + D2 + D3, 1 + D + D2 + D3 } = 1

2

21 1

)(DD

DDDG

Page 9: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

9

Example

11

11

D

DDDG

11,1,1 22 DDDDDDDCDG

D

D

1

11

001G

Page 10: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

10

Example 11.10 Catastrophic encoders

• G(D) = [1 + D, 1 + D2 ]• GCD {1 + D, 1 + D2 } = 1+D• There is no feedforward inverse

• Example: U(D) = 1/(1+D) = 1 + D + D2 + D3 + ...• will correspond to the codeword

V(D) = U(D) G(D) = 1/(1+D) [1 + D, 1 + D2 ] = (1, 1+D)• infinite input weight, finite output weight• A catastrophic encoder

• Must not be used

• Minimal encoders and systematic encoders are noncatastrophic

Page 11: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

11

Structural properties• From now on: Assume a minimal encoder

• The state diagram

• State: Describes the content of the encoder’s memory elements

• Implies a natural state labelling

• State transitions: Describes what happens when k input block arrives when the encoder is in a given state

• Direction: What will be the new state?

• Label: Which n output bits are produced?

Page 12: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

12

Example

Page 13: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

13

Example

Page 14: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

14

Example: Catastrophic encoder• G(D) = [1 + D, 1 + D2 ]

• GCD {1 + D, 1 + D2 } = 1+D

Page 15: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

15

Weight Enumerator Functions• A codeword Weight Enumerating Function (WEF) is an expression

that completely describes the weights of all codewords

• The WEF is a code (not encoder specific) property

• The WEF can be derived by inspection of the state diagrams with some enhancements

• Split state S0 into an initial and a terminal state

• Label each branch by Xd, where d is the Hamming weight of the n-bit output block corresponding to the branch

• The path gain of a particular path is the product of the branch labels over the path. Thus the Hamming weight of the path is the power of X in the path gain

Page 16: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

16

Modified state diagrams for WEF determination

Page 17: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

17

Modified state diagrams for WEF determination

Page 18: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

18

Mason’s gain formula• Want to compute the transfer function A(X) = d A d X d

• Definitions:• Forward path: Path going from initial to final state, touching each

state at most once. A finite number of such paths

• Fi : gain of the ith forward path

• Cycle: Path starting at one state and coming back to the same path, touching any other state at most once. A finite number of such cycles. Ci : gain of the ith cycle

= 1 - i Ci + i,j Ci Cj - i,j,l Ci Cj Cl + ... (sum over nonintersecting cycles)

m = 1 - i Ci (m) + i,j Ci

(m) Cj (m)

- i,j,l Ci (m)

Cj (m) Cl(m) + ...

(sum over nonintersecting cycles not touching the mth forward path)

• A(X) = i Fi i /

Page 19: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

19

Example 11.13

Page 20: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

20

Example (cont.)

Page 21: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

21

Other weight enumerators

• Can describe the code parameters in more detail by enhancing the branch labels

• Multiply label by Ww, where w is the branch input weight

• Multiply label by L : denoting that each branch has length 1

• Input-Output weight enumerating function IOWEF

• A(W,X,L) = w,d,l A w,d,l W wX dL l

Page 22: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

22

Example

Page 23: 1 Systematic feedback (recursive) encoders G’(D) = [1,(1 + D 2 )/(1 + D + D 2 ),(1 + D)/(1 + D + D 2 ) ] Infinite impulse response (not polynomial) Easier.

23

Suggested exercises

• 11.7-11.16