Channel Coding Slides

13

Click here to load reader

Transcript of Channel Coding Slides

Page 1: Channel Coding Slides

BPSK with Block Coding

BPSK

modulator

Coherent

BPSK

demodulator

Channel

decoding

cos(2 )cV f tπ± { }kb( )tr

( )tw0AWGN, 2-sided PSD of

2

NCoded bit error probability is ε

Channel coding

by mapping

bits to bitsm n

{ }(1) ( ), , mk kb b⋯ ⋯ ⋯

{ }(1) ( ), , nk kc c⋯ ⋯ ⋯

Information bits

Coded bits

Code rate is

<1m

Rn

=

Block coding adds redundancy by mapping each block of m

information bits into a block of n coded bits, where n > m.

If properly designed, can help reduce energy per bit (Eb), whileproviding the same information rate (rb) with the same bit errorprobability (P [error]), but by increasing the transmission bandwidth.

Equivalently: For a fixed transmission bandwidth, can reduce Eb toachieve the same P [error] by slowing down the information rate rb.

Note that ǫ = Q(√

2Eb·RN0

)

, where R = mn

is the code rate.

EE456 – Digital Communications Ha H. Nguyen

Page 2: Channel Coding Slides

BPSK with Repetition Coding

Repetition

coding by n

times

BPSK

modulator

Coherent

BPSK

demodulator

Decoding by

majority voting

on each block

of n coded bits

{ }kb cos(2 )cV f tπ± { }kb( )tr{ }k kb b⋯

( )tw0AWGN, 2-sided PSD of

2

NCoded bit error probability is ε

This is a special form of block coding by simply repeating oneinformation bit (m = 1) n times.

Let k represent the number of coded bits equal to 1, then the

majority voting decision is: kbk=1

Rbk=0

n2 .

P [error] =

n∑

k= n+12

(n

k

)

ǫk(1 − ǫ)n−k, ǫ = Q

(√

2Eb

nN0

)

.

EE456 – Digital Communications Ha H. Nguyen

Page 3: Channel Coding Slides

Performance of BPSK with Repetition Coding

0 2 4 6 8 1010

−6

10−5

10−4

10−3

10−2

10−1

100

Eb/N

0 (dB)

P[e

rror

]

Uncoded BPSKBPSK with repetition code(7,4) Hamming code

n=[3,9,13,17,21]

Repetition code turns out to be not useful at all. It is too simple.Upon reflection one realizes that the transmitted signals after repetition codingare still a BPSK signal set over a duration of Tb sec (the transmissionbandwidth is actually unchanged!). As such optimum BPSK detection surelyoutperforms the detection based on majority voting.

EE456 – Digital Communications Ha H. Nguyen

Page 4: Channel Coding Slides

BPSK with (7,4) Hamming Code

BPSK

modulator

Coherent

BPSK

demodulator

Channel

decoding

cos(2 )cV f tπ± { }kb( )tr

( )tw0AWGN, 2-sided PSD of

2

NCoded bit error probability is ε

Channel coding

by mapping

bits to bitsm n

{ }(1) ( ), , mk kb b⋯ ⋯ ⋯

{ }(1) ( ), , nk kc c⋯ ⋯ ⋯

Information bits

Coded bits

Code rate is

<1m

Rn

=

b(1)k

b(2)k

b(3)k

b(4)k

c(1)k

c(2)k

· · · c(7)k

(0000) (0000000)(1000) (1101000)(0100) (0110100)(1100) (1011100)(0010) (1110010)(1010) (0011010)(0110) (1000110)(1110) (0101110)(0001) (1010001)(1001) (0111001)(0101) (1100101)(1101) (0001101)(0011) (0100011)(1011) (1001011)(0111) (0010111)(1111) (1111111)

ck =[

c(1)k

c(2)k

· · · c(7)k

]

=

[

b(1)k

, b(2)k

, b(3)k

, b(4)k

]

·

1 1 0 1 0 0 00 1 1 0 1 0 01 1 1 0 0 1 01 0 1 0 0 0 1

︸ ︷︷ ︸

Generator matrix G

Note: Multiplication and addition are modulo-2 operations.

EE456 – Digital Communications Ha H. Nguyen

Page 5: Channel Coding Slides

Decoding (7,4) Hamming Code I

For a (n,m) block code, there is (n − m) × n parity-check

matrix H such that every valid codewordc =

[c(1), c(2), · · · , c(n)

]satisfies

c ·H⊤ = 0.

This parity-check matrix H can be used for decoding.

The parity-check matrix of the (7,4) Hamming code is

H =

1 0 0 1 0 1 10 1 0 1 1 1 00 0 1 0 1 1 1

EE456 – Digital Communications Ha H. Nguyen

Page 6: Channel Coding Slides

Decoding (7,4) Hamming Code II

Let y be the length-n vector of the decoded bits after BPSKdemodulator. The decoding consists of three steps:

1 Compute the syndrome of y, namely y · H⊤.2 Locate the coset leader el whose syndrome is equal to y ·H⊤.

Then el is taken to be the error pattern caused by the channel.3 Decode the vector y into the codeword c∗ = y + el. From c∗

find the corresponding k information bits by inverse mapping.

Syndrome Coset leaders

(100) (1000000)(010) (0100000)(001) (0010000)(110) (0001000)(011) (0000100)(111) (0000010)(101) (0000001)

EE456 – Digital Communications Ha H. Nguyen

Page 7: Channel Coding Slides

Performance of BPSK with (7,4) Hamming Code

0 2 4 6 8 1010

−6

10−5

10−4

10−3

10−2

10−1

100

Eb/N

0 (dB)

P[e

rror

]

Uncoded BPSKBPSK with repetition code(7,4) Hamming code

n=[3,9,13,17,21]

P [error] = 9 · ǫ2 · (1 − ǫ)5 + 19 · ǫ3 · (1 − ǫ)4 + 16 · ǫ4 · (1 − ǫ)3

+ 12 · ǫ5 · (1 − ǫ)2 + 7 · ǫ6 · (1 − ǫ) + ǫ7, ǫ = Q

2Eb

(47

)

N0

.

EE456 – Digital Communications Ha H. Nguyen

Page 8: Channel Coding Slides

A 4-State Rate-1/3 Convolutional Encoder and Its State

Diagram

1kb − 2kb −kb

(3)kc

(2)kc

(1)kc��� ������ ����� ���

01

10

00 11

(b) State diagram

1 2k kb b− −

0kb =

1kb =

0S

1S

2S

3S000

111

101 010

011

100

110

001

(1) (2) (3)k k kc c c

EE456 – Digital Communications Ha H. Nguyen

Page 9: Channel Coding Slides

Trellis Diagram and Viterbi Decoding

00

10

01

11

(c) Trellis diagram

1 2k kb b− − (1) (2) (3)k k kc c c

0000S

2S

1S

3S001 001

111

111

111

111000 000 000

011

011

101

101

101

010010

010110

110

100100

01

10

00 11

(b) State diagram

0S

1S

2S

3S

000

111

011

100

101

110

001

010

Let {r(1)k , r

(2)k , r

(3)k } be the received signal samples (at the output of

the matched filter) corresponding to the coded bits {c(1)k , c

(2)k , c

(3)k }.

Then it can be shown that the branch metric is∑3

j=1 r(j)k [2c

(j)k − 1].

With the above branch metric computation, the Viterbi algorithmfinds that path through the trellis that maximizes the path metric.

EE456 – Digital Communications Ha H. Nguyen

Page 10: Channel Coding Slides

Performance Comparison with Uncoded BPSK

and (7,4) Hamming-Coded BPSK

0 2 4 6 8 1010

−7

10−6

10−5

10−4

10−3

10−2

10−1

100

Eb/N

0 (dB)

P[e

rror

]

Rate−1/34−stateconvolutionalcode

UncodedBPSK

(7,4)Hammingcode

EE456 – Digital Communications Ha H. Nguyen

Page 11: Channel Coding Slides

Convolutional Code used in CDMA2000

���� � ������������� �������� ���� ����� � ��� � ! ��� �"�� ��#���� �� !$%% &'()))*+,+�-EE456 – Digital Communications Ha H. Nguyen

Page 12: Channel Coding Slides

Convolutional Code used in WCDMA

./01 234 567891:;/680<1: 167891: =>0< :/01 23? >@ /A@8 91B>619 >6 ?CDD EF 4GH424IEE456 – Digital Communications Ha H. Nguyen

Page 13: Channel Coding Slides

Convolutional Code used in WiMAX

JKL MNOPQRL STUVWUXW TUYZ[YTYV\ ]^V_ Z`TY^VUZ ]^WLPEE456 – Digital Communications Ha H. Nguyen