View
232
Download
0
Category
Preview:
Citation preview
L36-1
EEL 6509 Wireless Communications Lecture 36Dr. John M. Shea
1 Overview
� Advanced Coding Techniques
– Trellis Codes
– Interleaving
� Block
� Convolutional
� Pseudorandom
– Concatenated Codes
– Turbo Codes
L36-3
� For uncoded QPSK, any symbol is valid
� ��� �
� ����
�
�
� �
� �� For the coded 8-PSK shown in the example, there are two types of errors:
1. One bit is uncoded, so that bit can take on either value for any symbol– C=coded bits (Figure was provided on blackboard)
� � � � �
L36-5
� The overall free distance for the trellis code is
� ��� � � � � � � � �� � � � � � � � � � � �
� The coding gain is
� �� � � � � � � �
� ���� � � ���� � � �
� � � �
� � � dB
� 8-PSK and 4-PSK have the same bandwidth, but can achieve 3 dB performancegain by using coded 8-PSK instead of uncoded 4-PSK
L36-6
3 Interleaving� We often need to “shuffle” or rearrange code symbols
– For instance, for a channel with burst errors, rearranging the channelsymbols can break up the bursts
� Definition: Interleaving is the process of reorganizing a group of symbols.
� Definition: Deinterleaving is the process of reversing an interleaving process.
� 3 Types of interleavers are commonly used in communications:
1. Block
2. Convolutional
3. Pseudorandom
L36-8
� Any burst of length � � channel symbols results in isolated errors atdeinterleaver that are separated by � � symbols
� Example, p. 361 [2] (Figure on next page)
� Interleaver/deinterleaver delay is � �
�
symbols
� requires minimum �
�
symbol array at Tx and Rx; 2MN symbol arrayoften used to allow one � � � array to be filled while other is emptied
L36-10
� similar performance to block interleaver� end-to-end delay of � � � � � � (vs. � � for block interleaver)
� memory requirement is � � � � � �� (vs. MN for block interleaver)
L36-11
3.3 Pseudorandom Interleaver� Usually based on block interleaving scheme
� Writes into array by rows or columns; reads out according to specifiedpseudo-random pattern
� Used with turbo codes to scramble input sequence for different encoders
L36-12
4 Concatenated Codes� Definition: A concatenated code is a code that results from combining two
or more codes. The codes that make up the concatenated codes are referredto as the constituent codes.
� Will start with discussion of traditional concatenated codes
� In a traditional concatenated coding scheme, 2 levels of coding are used: aninner code and an outer code[2], p.365
L36-13
� Concatenated coding achieves low error rates with a lower complexity thanwould be required with a single code
� Provides power of block codes with that of soft-decision decoding wheninner code is convolutional and outer code is a block code
� Popularly used with inner convolutional and outer Reed-Solomon codes
� Interleaver is used between inner and outer codes to break up error burstsat output of inner decoder
� Used in Voyager and Galileo deep-space explorers
� Standardized by CCSDS for spacecraft telemetry
� Concatenated Reed-Solomon codes are used for CD and DVD
L36-14
5 Turbo Codes� Also known as parallel concatenated convolutional codes (PCCCs)
– concatenated convolutional codes � more than 1 conv. encoder is employed
– parallel � the information bits are fed into each encoder, but in differentorders
L36-15
� For best performance,
– Constituent codes are systematic codes, and information bits are onlytransmitted once
– Constituent codes are recursive codes
– Pseudorandom interleaver is used to avoid creating error patterns thatreduce code performance
� Probability of error is proportional to inverse of interleaver size; this isreferred to as the interleaver gain
� Error probabilities very close to theoretical limits can be achieved for largeinterleavers
� No computationally efficient ML decoder is known for turbo codes
– decoding is usually done by iterating between two MAP decoders forthe constituent codes
– on each iteration, the probabilities for the information bits are updated
Recommended