Performance of Concatenated RS & Turbo Codes in AWGN

Download Report

Transcript Performance of Concatenated RS & Turbo Codes in AWGN

Inserting Turbo Code Technology into the DVB Satellite Broadcasting System Matthew Valenti Assistant Professor West Virginia University Morgantown, WV 26506-6109 [email protected]

in collaboration with Mike Stelling, Bill Snelling, and Eugene Estinto Coleman Research Corporation

Outline of Talk

      Goal of this study.

To show how turbo codes can improve energy efficiency by 1-2 dB (at BER 10 -7 ) when used in satellite communication systems.

Turbo codes.

The DVB standard.

Replacing convolutional encoder in DVB with a turbo code.

 1 dB gain.

Further performance improvements:    Optimizing the Reed Solomon code Using turbo codes with larger frame size.

2 dB gain.

Suggestions for future improvements.

Turbo Codes

  Berrou & Glavieux    1993 International Conf. on Commun. (ICC) Rate ½ performance within 0.5 dB of Shannon capacity.

Patent held by France Telecom.

Features:     Parallel code concatenation • Can also use a serial concatenation Nonuniform interleaving Recursive systematic encoding • Usually RSC convolutional codes are used.

• Can use block codes.

Iterative decoding algorithm.

• Optimal approaches: BCJR/MAP, SISO, log-MAP • Suboptimal approaches: max-log-MAP, SOVA

Recursive Systematic Convolutional Encoding

m i m i r i

D D D D

x i

( 0 )

x i

( 1 ) Constraint Length K= 3

x i

( 0 )

x i

( 1 )

x i x i

 A conventional convolutional encoder is an FIR filter with operations over GF(2).

 An RSC encoder can be constructed from a standard convolutional encoder by feeding back one of its outputs.

 An RSC encoder has an infinite impulse response.

  An arbitrary input will cause a “good” (high weight) output with high probability.

Some inputs will cause “bad” (low weight) outputs.

Turbo Encoder

Systematic Output Data D Upper RSC D MUX Parity Output nonuniform interleaver D D Lower RSC  The data is encoded in parallel by two identical RSC encoders   A nonuniform interleaver changes the ordering of bits at the input of the second encoder.

MUX can increase code rate from 1/3 to 1/2.

Turbo Decoder

systematic data parity data

DeMUX Decoder #1 Deinterleaver

Extrinsic Information

Interleaver Decoder #2

Extrinsic Information APP for hard bit decisions

Interleaver  Turbo codes are decoded with an iterative decoding algorithm.

 Decoding complexity comparison:   Convolutional codes O(2 K ).

Turbo codes O(4x2 K ) per iteration.

10 0 10 -1 10 -2

Turbo Code Performance as a Function of Number of Iterations

1 iteration  Berrou encoder  K=5  r=1/2  L=65,536 2 iterations 10 -3 10 -4 6 iterations 10 -5 10 -6 10 -7 0.5

10 iterations 18 iterations 1 E b /N o in dB 1.5

3 iterations 2 BER “floor”

187 Data Bytes + 1 Synch Byte

The Digital Video Broadcasting Standard

RS Encoder (204,188,8) convolutional interleaver Convolutional Encoder depth = 12 Constraint length = 7 Decoded Data RS decoder convolutional deinterleaver Viterbi Decoder AWGN noise    Shortened Reed Solomon Outer Code   188 data bytes, 204 coded bytes t=8 byte error correcting capability.

Convolutional interleaver  Depth of 12 Convolutional Inner Code   Constraint length K = 7 Odenwalder code Rates r =

1/2

, 2/3, 3/4, 5/6, and 7/8

DVB with Turbo Inner Encoder

 First, we replaced the convolutional inner encoder with a turbo encoder.

 Rate r = 1/2  Constraint length K = 5  Berrou & Glavieux code polynomial  4 tail bits used to terminate upper encoder.

 S-random interleaver (from JPL).

 Interleaver/frame size of 8*204+4 = 1636 bits  12 iterations of log-MAP decoding  Reed Solomon outer code is unchanged  Convolutional interleaver also unchanged.

Assumptions

 For our simulation, we make the following assumptions:  QPSK modulation.

 AWGN channel.

 No modem implementation loss • Perfect carrier & phase synchronization.

• Perfect symbol timing.

• Ideal pulse shaping filters.

 Raised-cosine rolloff factor r=0.35

 Noise variance known by the decoder.

Comparison of Turbo and Convolutional Inner Codes

10 0 10 -2 original DVB system 10 -4 10 -6 10 -8 0  At BER 10 0.5

-7 , extra 1 dB of coding gain 1 1.5

Eb/No in dB turbo code modified DVB system 2 2.5

3

Optimizing the Outer Reed Solomon Code

 The Reed Solomon code used by DVB was optimized for the DVB convolutional code.

 This code might not be optimal for use with turbo codes.

 In particular, a full-length RS code offers better performance:  (255,255-2t,t) rather than (204,204-2t,t)  With convolutional codes, performance usually improves with increasing t.

 This is not necessarily true for turbo codes.

 The impact of t on performance must be studied through simulation.

Performance with (255,255-2t,t) RS code and length 2044 turbo code

10 0 10 -2 performance with outer RS code 10 -4 t=8 turbo code without outer RS code 10 -6 10 -8 0 0.2

0.4

0.6

0.8

1 Eb/No in dB 1.2

1.4

t=3 t=4 t=2 t=1 1.6

1.8

2

Improved Performance Through Larger Frame Size

 Up until now, we have matched the frame size of the turbo encoder to equal the size of the Reed Solomon code word.

247 255*8 = Data Bytes RS Encoder 2040 code bits convolutional Convolutional (255,247,4) interleaver Encoder  However, performance of turbo codes improve with increasing frame size.

   Berrou & Glavieux considered 65K frame size.

We consider larger frame sizes: • 8 RS frames per turbo frame: 2040*8 + 4 = 16,324 bits • 32 RS frames per turbo frame: 2040*32 + 4 = 65,284 bits Convolutional interleaver no longer needed

10 0

Performance with (255,255-2t,t) RS code and length 16,234 turbo code

10 -2 performance with outer RS code 10 -4 10 -6 10 -8 0 0.2

0.4

0.6

0.8

Eb/No in dB t=4 t=3 t=2 1 1.2

turbo code without outer RS code t=1 1.4

1.6

10 0

Performance with (255,255-2t,t) RS code and length 65,284 turbo code

10 -2 performance with outer RS code 10 -4 10 -6 10 -8 0 0.2

0.4

turbo code without outer RS code t=2 0.6

0.8

Eb/No in dB t=1 1 1.2

1.4

Comparison of Results

10 0 10 -2 DVB standard: concatenated K=7 CC and (204,188) RS code 10 -4 10 -6 Concatenated length 65,284 turbo code and (255,251) RS code 10 -8 0 0.5

Concatenated length 16,324 turbo code & (255,247) RS code Concatenated length 2044 turbo code and (255,247) RS code reference BER = 10 -7 1 1.5

Eb/No in dB 2 2.5

3

Suggestions for Further Improvements

 Errors and erasures decoding.

 Exploit the soft-output of the turbo code to perform softer decoding of Reed Solomon code.

   Explore other generator polynomials   Using a primitive feedback polynomial lowers the BER floor.

Perhaps the RS outer code won’t be needed.

Use BCH outer code   RS outer code is well matched to Viterbi decoder.

However a BCH code may be better for turbo codes.

Exploit unequal error protection property of turbo codes   Only need to protect the most error prone bits.

See Narayanan and Stuber.

Using Turbo Codes to Improve Throughput

10 0 10 -2 10 -4 10 -6 DVB standard r  0.46

  At BER 10 -7 , turbo codes allow 73% higher data rate over same bandwidth. Actually requires slightly less SNR to do this. 10 -8 0 0.5

1 1.5

Eb/No in dB 2 2.5

r=4/5 turbo code w/ 65K frame 3 r=7/8 turbo code w/ 65K frame 3.5

Conclusion

 Satellite communication systems such as DVB can be improved by using turbo codes.

 Improved energy efficiency • 1 dB improvement with direct replacement of the convolutional code with a turbo code.

• 2 dB improvement when the turbo code and Reed Solomon code are optimized for BER 10 -7  Improved bandwidth efficiency • Rate 4/5 turbo code gives same performance as DVB  at BER = 10 -7  No RS outer code is needed in this case.

• This translates to a 73% increase in bandwidth efficiency with no loss in energy efficiency.