Error Control Coding
Channel coding and interleaving techniques have long been used for combating noise, interference, jamming, fading, and other channel impairments. The basic idea of channel coding is to introduce controlled redundancy into the transmitted signals that is subsequently exploited at the receiver for error correction. There are many different types of error correcting codes, but historically they have been classified into block codes and convolutional/trellis codes. This chapter first starts with an introduction to block codes and space-time block codes. This is followed by an introduction to convolutional codes, and decoding algorithms for convolutional codes, including the Viterbi algorithm and BCJR algorithm. The chapter then introduces trellis coded modulation, followed by the performance analysis of convolutional and trellis codes on additive white Gaussian noise (AWGN) channels. Block and convolutional interleavers are discussed that are useful for coding on fading channels. This is followed by a consideration of the design and performance analysis of trellis codes on interleaved flat fading channels. Later, the performance of space-time codes and the decoding of space-time codes is considered. Finally, the chapter wraps up with a treatment of parallel and serial turbo codes.
KeywordsFading Channel Block Code Turbo Code Convolutional Code Parity Check Matrix
Unable to display preview. Download preview PDF.