About rate-1 codes as inner codes

16
About rate-1 About rate-1 codes as inner codes as inner codes codes C. Berrou, A. Graell i Amat, Y. Ould Cheikh Mouhamedou September 2008 5th International Symposium on Turbo Codes & Related Topics

description

5th International Symposium on Turbo Codes & Related Topics. About rate-1 codes as inner codes. C. Berrou, A. Graell i Amat, Y. Ould Cheikh Mouhamedou September 2008. Rate-1 codes are used, in conjunction with permutation, to increase the minimum Hamming distance of a coding scheme. - PowerPoint PPT Presentation

Transcript of About rate-1 codes as inner codes

Page 1: About rate-1 codes as inner codes

About rate-1 codes About rate-1 codes as inner codes as inner codes

C. Berrou, A. Graell i Amat, Y. Ould Cheikh Mouhamedou

September 2008

5th International Symposium on

Turbo Codes & Related Topics

Page 2: About rate-1 codes as inner codes

2

Rate-1 codes are used, in conjunction with permutation, to increase the minimum Hamming distance of a coding scheme

Example:

input

output

P/S

R = 1/2, dmin= 5 R = 1, wmin= 2

Page 3: About rate-1 codes as inner codes

3

input

output

P/S

R = 1/2, dmin= 5 R = 1, wmin= 2

Permutation to devise with great care!

00000011110100000000001111010000

writingreading

produces only one 1 at the output dmin = 5!

Regular permutation

Page 4: About rate-1 codes as inner codes

4

S/P

2-state SISO

4-state SISO

Only conceivable in an iterative process, with systematic loss on convergence threshold (multiplication of errors at

the first iteration) acts as an R = ½ decoder with dmin= 3

input

output

P/S

R = 1/2, dmin= 5

ai

yiai = yi + yi-1

ai+1 = yi+1 + yi

Page 5: About rate-1 codes as inner codes

5

Question: is there another encoder with larger dmin (for R = 1/2) and no increase in

error multiplication (for R = 1)?(and in passing enabling tail-biting termination)

input

output

P/S

R = 1/2, dmin= 5 R = 1, wmin= 2

For instance, dmin = 4?

input output1

error3 errors (at

least)

The answer is obviously: no...

Page 6: About rate-1 codes as inner codes

6

As a rate-1 encoder, let us consider for instance

As polynomials 15 and 13 are relatively prime, the input cannot be infered from

the output

There are 7 candidate polynomials for parity,

different from the recursivity polynomial and including the

first tap

(input)

recursivity: polynomial 15

parity: polynomial 13output

(input)

10

16

13

12

11

14

17

recursivity: polynomial 15

paritypolynomial

Page 7: About rate-1 codes as inner codes

7

time

W1 (10)

W2 (11)W3 (17)

W4 (14)W5 (13)

W6 (16)W7 (12)

The multiplication of error is equal to 2 and dmin = 4!

Encoding with time-varying parity construction (8-state)

But the code is not efficient (large multiplicity)

(input)

10

16

13

12

11

14

17

recursivity: polynomial 15

paritypolynomial

Page 8: About rate-1 codes as inner codes

8

Encoding with time-varying parity construction (4-state)

time

W1 (4)W2 (7)

In a non-systematic version, this would have been named a

catastrophic code

00

01

10

11

W1 W2 W1 W2 W1 W2 W1 W2

0

00

01

1

11

0

10

11

0

01

0

00

01

1

11

0 input1 input

0

10

11

0

01

0

10

11

0

01

0

10

11

0

01

0

00

01

1

11

0

00

01

1

11

state

(input)

4

7

recursivity: polynomial 5

Page 9: About rate-1 codes as inner codes

9

Breaking the "catastrophic" nature of the code

w2 w2

L

time

W1 (4)W2 (7)

W2 (7)W2 (7)

W1 (4)W2 (7)

Which value for L?

For each replacement, 3 input values cannot be infered from parity

00

01

10

11

W1 W2 W1 W2 W1 W2 W1 W2

0

00

01

1

11

0

10

11

0

01

0 input1 input

0

10

11

0

01

0

10

11

0

01

0

10

11

0

01

0

00

01

1

11

1

state0

10

11

0

01

0

10

11

0

01

(input)

4

7

recursivity: polynomial 5

Page 10: About rate-1 codes as inner codes

10

Eb/N0 (dB)

BER

5

5

5

5

5

5

5

5

10-8

10-3

10-4

10-5

10-6

10-7

10-1

10-2

0 1 5 6 7 8 9432 1110 12

no coding

(5,7)

(3,2) or (5,4)

(5,7:4)

(5,7:4)

R = 1/2

(L=30)(L=10)

The choice of L

L = 30 10% not decoded at the first iteration

L = 10 30% not decoded at the first iteration

R = 1

Page 11: About rate-1 codes as inner codes

11

Exit charts

Page 12: About rate-1 codes as inner codes

12

Possible applications

Accumulate-Repeat-Accumulate codes

(A. Abbasfar, D. Divsalar, and K. Yao IEEE Trans. Commun., April 2007)

3D-turbo codes

("Adding a Rate-1 Third Dimension to Turbo Codes", C. Berrou, A. Graell i Amat, Y. Ould Cheikh Mouhamedou, C. Douillard, Y. Saouter,

ITW 2007)

Punct. 101

X 3

X

Y2

permutation

data(bits)

C1

Y1

C2

patch

(k bits)

P/S W'

(P bits)

puncturing

Rate-1Post-encoder

Page 13: About rate-1 codes as inner codes

13

3D-turbo codes (with double-binary component codes)B

A

data(couples)

C1

C2

Y2

permutation

(N couples)

Y1

patch

P/S W'

(P bits)

puncturing

Intra-symbol swapping

Rate-1Post-encoder

Max-Log-MAP

Eb/N0 (dB)

Frame Error Rate

5

5

5

5

5

5

5

5

10-8

10-3

10-4

10-5

10-6

10-7

10-1

10-2

1 2 3 4

k = 188 bytes

DVB-RCS

R = 1/2

TL

3D-TC

#8

R = 4/5

DVB-RCS

TL

3D-TC

#8

classical 4-state rate-1 patchnew 4-state rate-1 patchL = 12L = 30

Page 14: About rate-1 codes as inner codes

14

Going back over 8-state

time

W1 (10)

W2 (11)W3 (17)

W4 (14)W5 (13)

W6 (16)W7 (12)

(input)

10

16

13

12

11

14

17

recursivity: polynomial 15

paritypolynomial

replaced by w5 replaced by

w5

every L

For each replacement, 4 input values cannot be infered from parity

Page 15: About rate-1 codes as inner codes

15

8-state versus 4-state

Eb/N0 (dB)

BER

5

5

5

5

5

5

5

5

10-8

10-3

10-4

10-5

10-6

10-7

10-1

10-2

0 1 5 6 7 8 9432 1110 12

no coding

(5,7)

(3,2) or (5,4)

(5,7:4)

R = 1/2

(L=10)

(15,10:11:17:14:13:16:12)(L=21)

8-state, L=21 19% not decoded at the first iteration

4-state , L=10 30% not decoded at the first iteration

R = 1

Page 16: About rate-1 codes as inner codes

16

Conclusions

• In the context of iterative decoding, rate-1 codes are powerful components to construct concatenated codes and/or to increase minimum Hamming distances of existing schemes

• There are possible choices other than the classical 2-state accumulator code, with better performance

• Generally speaking, time-varying construction offer interesting perspectives in the search for powerful codes