24
Linear Block Code 指指指指 指指指 指指 指指 指指指 2004.02.10

Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

Embed Size (px)

Citation preview

Page 1: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

Linear Block Code

指導教授:黃文傑 博士學生:吳濟廷2004.02.10

Page 2: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

2

OUTLINE Introduction Encoding

Generator matrix Decoding

Parity check matrix Syndrome Error correction

Conclusion

Page 3: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

3

Page 4: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

4

Source v.s. Channel Coding Why source coding ?

Eliminate redundancy in the data Send same information in fewer bits

Why channel coding ? Combat channel effects Coding gain

Page 5: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

5

Code taxonomy

Today

Page 6: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

6

Linear Block Code A (n,k) block code , where

Block : encoder accepts a block of message symbols and generates a block of codeword

Linear : addition of any two valid codeword results in another valid codeword

n k

Page 7: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

7

Code Rate Code rate

Code rate increases , error correcting capability decreases

more bandwidth efficiency Code rate decreases , error correcting capability increases

waste of bandwidth

k

n

Page 8: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

8

Vector Space In a binary field

011

100

10+

addition multiplication

101

000

10

Page 9: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

9

Vector Space and Subspace Vector space : set of all binary n-tuples , Vector subspace : subset S of vector space

All-zeros vector is in S Sum of any two vectors in S is also in S

nV

nV

0000 0001 0010 0011 0100 0101 0110 0111

1000 1001 1010 1011 1100 1101 1110 1111

= 16 4-tupels4

4 2V

4VSubset of

0000 0101 1010 1111

Page 10: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

10

Vector Space structure

Packing the space with as many codewords as possible

Codewords to be as far apart from one another as possible

Linear block-code structure

nV

Page 11: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

11

A (6,3) Linear Block Code

6-tuples 32 message vector 32

But ….. How to generate all these codewords ?

Page 12: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

12

Generator Matrix We could use look-up table for small k But for larger k, we use the generator matrix G For (6,3) code

1

2

3

1 1 0 1 0 0

0 1 1 0 1 0

1 0 1 0 0 1

V

G V

V

1

4 2

3

1 2 3

1 1 0 1 1 0

1 1 0

1 1 0 1 0 0 0 1 1 0 1 0

1 0 1 1 1 0

V

U G V

V

V V V

The same method for the other messages….

Page 13: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

13

Generator Matrix

11 12 1,( )

21 22 2,( )

1 2 ,( )

1 0 0

0 1 0

0 0 1

k

n k

n k

k k k n k k n

G P I

P P P

P P P

P P P

where P is the parity array

and is the k*k identity matrix

(0,1)ijp

kI

(n-k)

k

k

Page 14: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

14

Codeword using Generator MatrixFor a (n,k) code

where

Page 15: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

15

Parity-Check Matrix Parity-check matrix H enable us to decode For (k*n) generator matrix G, there exist an (n-k)*n

matrix H

(n-k)

k

(n-k)

Page 16: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

16

Parity-Check Matrix It’s easy to verify that for each codeword U, ge

nerated by G and the

to check if each basis still has orthogonality

TH

1 2 1 211 21 1,( )

21 2,( )

1 2 ,( )

1 1 2 2

1 0 0

0 1 0

0

0 0 1, ,..., , , ,...,

, ,..., 0

Tn k k

n k

n k

k k k n k

n k n k

UH p p p m m mp p p

p p

p p p

p p p p p p

Page 17: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

17

Syndrome Testing Let r be a received vector,

where is an error pattern Syndrome of r is defined

r U e

1 2, ,..., ne e e e

( )

T

T

T T

T

S rH

U e H

UH eH

eH

Page 18: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

18

Syndrome Testing For example, if transmited

and received The syndrome

And the syndrome of error pattern

1 0 1 1 1 0U

0 0 1 1 1 0r error

1 3 1 6

6 3

1 0 0

0 1 0

0 0 10 0 1 1 1 0

1 1 0

0 1 1

1 0 1

1 1 1 1 1 1 0 0

TS rH

1 0 0 0 0 0 1 0 0T TS eH H

Page 19: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

19

Error Correction Stand array : represent possible received vectors

contains all the correctable error

=0

coset

Coset leader

2n k

2k

(n,k) standard array

Page 20: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

20

Standard Array Coset : a set of numbers having a common syndrome

Coset leader : correctable error patterns Received vector doesn’t mean the Tx mes

sage is for sure except the error pattern is

( ) T Ti j jS U e H e H

i jr U e

iU je

Page 21: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

21

Error Correction Decoding Procedure Calculate syndrome of r : Locate the coset leader : Corrected codeword :

TS rH

je

jU r e

Page 22: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

22

Example for (6,3) code

1 0 0

0 1 0

0 0 1

1 1 0

0 1 1

1 0 1

jS e

Standard array for (6,3) code

Page 23: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

23

Example for (6,3) code Assume transmitted

received Syndrome

Use look-up table

1 0 1 1 1 0U

0 0 1 1 1 0r

0 0 1 1 1 0 1 0 0TS H

ˆ 1 0 0 0 0 0eˆ ˆ

0 0 1 1 1 0 1 0 0 0 0 0

1 0 1 1 1 0

U r e

The same as transmitted codeword !!

Page 24: Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷 2004.02.10. 2 OUTLINE Introduction Encoding Generator matrix Decoding Parity check matrix Syndrome Error correction

24

Conclusion Linear block code is easy to implement Will be extended to space-time block code Still some other kinds of code to introduce …