240 likes | 751 Views
Improving the Performance of Turbo Codes by Repetition and Puncturing. Youhan Kim March 4, 2005. Outline. Conventional Turbo Codes Motivation Proposed Turbo Coding Scheme Codeword Distance Spectrum Iterative Decoder Structure Simulation Results Conclusions. Turbo Codes.
E N D
Improving the Performance ofTurbo Codes byRepetition and Puncturing Youhan Kim March 4, 2005
Outline • Conventional Turbo Codes • Motivation • Proposed Turbo Coding Scheme • Codeword Distance Spectrum • Iterative Decoder Structure • Simulation Results • Conclusions
Turbo Codes • Parallel Concatenated Convolutional Code • Pseudo-random interleaver between RSC1 and RSC2 • Reduce the chance of both RSC1 and RSC2 generating low weight parity sequences at the same time Codeword distance spectrum thinning Turbo Code Encoder
Turbo Codes • Near channel capacity performance achieved when very large interleaver is used • Near ML performance can be achieved usingiterative decoder as well
Interleaver Size • Conventional Turbo code • Interleaver gain • Performance enhanced as interleaver size increases • Interleaver size = Frame length Require very large frame size for good performance • Limit on frame length due to • Transmission delay • Decoding delay • Hardware complexity Unsuitable for • Short frames • Applicationsrequiringvery low error rate Interleaver gain
Motivation • Why limit ourselves to the case ofinterleaver size = frame length? • Design turbo codes withinterleaver size > frame length • For short frames, Large interleaver gain even with short transmission delay • For large frames, Achieve very low error rate • Reuse existing encoder/decoder hardware available for conventional turbo codes
Repeat-Puncture Turbo Code(RPTC) • Repeateach bit L times prior to interleaving • Interleaver size = L x Frame length • Puncture RSC2 parity sequence tocontrol code rate • Asymmetry between CC1 and CC2
Benefits of Repeating • Greater interleaver gain • Low weight parity sequences generated byweight 2 input sequences dominate the performance of turbo codes [Benedetto96, Divsalar96]
Benefits of Repeating • RPTC: RSC2 encodes sequence of weight 2L • In the case of weight 1 input sequence with L=2
Puncturing Pattern • Puncture RSC2 parity sequence to control code rate • Simple puncturing pattern • Transmit the first n bits out of every L bits • E.g.) L=4, n=2 • Easy to compute codeword distance spectrum
Performance Analysis • Transition matrix approach for Turbo codes with puncturing [Kousa02] • Transition matrix for RSC • Encoder state transition over 2 input bits
Performance Analysis (2) • Assume both RSC encoders start and end in the all-zero state • Component code 1 • Encoder state transition of CC1 over entire frame • Conditional weight enumerating function
Performance Analysis (3) • Component code 2 • Period transition matrix • Only first n bits out of L bits are transmitted • Encoder state transition of CC2 over entire frame • Conditional weight enumerating function
Performance Analysis (4) • Assuming uniform interleaver, • Conditional weight enumerating function of RPTC • Union bound on FER
Codeword Distance Spectrum of RPTC • Uniform Interleaver • Code rate = 1/3 (n=1) • RSC polynomial: (1+D2)/(1+D+D2)
Codeword Distance Spectrum of RPTC • More than 10 fold decrease in Adfor L=2
Union Bound • Uniform interleaver • Code rate = 1/3 (n=1) • N=128
Simulation Parameters • RSC polynomial: (1+D2)/(1+D+D2) • Code rate = 1/3 (n=1) • Max. 40 iterations • Non-fading channel
Performance with Uniform Intlv. • SNR gain at FER = 10-3 • N=256: 1.0 dB • N=1024: 1.5 dB • N=8192: 1.9 dB • SNR gain at BER = 10-5 • N=256: 0.7 dB • N=1024: 0.6 dB
Performance with Prime Intlv. • Note: Prime interleaver is optimized for conventional Turbo codes
Price for Improvement • Increase in encoder and decoder complexity • Memory • Computational requirement • Hardware complexity • Many systems support multiple frame lengths • Short frames may use larger interleaver structures already available at the transmitter/receiver Memory requirement not a problem
Conclusions • Repeat-Puncture Turbo Code • Use simple repetition and puncturing • Repeater: Interleaver size > Frame length • Puncturer: No loss in code rate • Improved codeword distance spectrum • Iterative decoding • Superior performance than conventional turbo codesfor moderate to high SNRs • Suitable for • Improving the performance of short frames in systems supporting multiple frame lengths • Applications requiring very low error rate