se. Though effective, the performance of munity by introducing a novel class of error-correcting TCM codes is considerably worse than information codes, turbo codes, which, for a binary-input AWGN theoretic bounds. channel, achieved a BER of 10- with code rate 1/2 and Eb/No as close as 0.5 dB to the practical Shannon limit (see Section 3.4.2.4). 3.4.3.3 Interleaving A turbo code is a parallel concatenation of two or more codes connected by pseudo-random interleavers. The While the codes described earlier are convenient for constituent codes are usually identical, recursive memoryless channels with small error rates, most of systematic convolutional (RSC) codes of rate 1/2. An them are not suited to the protection against errors that example of an RSC encoder is shown in Figure 3.4-10. occur in bursts. When errors occur in bursts, as in fading Its main property is the existence of a feedback in the channels, a transmitted codeword is either free of errors shift-register realization. or contains a large number of successive errors. The problem of burst errors can be alleviated with special codes (e.g., Fire codes [17]). An alternative is interleaving, which shuffles the symbols from different Table 3.4-2 Block interleaver of size 4 X 7. To transmit four code- words of length 7, the codeword symbols are sent columnwise, in the order 1, 8, 15, 22, 7, 14, 21, 28. A burst error of length four produces no more than a single error in a transmitted codeword. 1. Codeword 2. Codeword 3. Codeword 4. Codeword Figure 3.4-10 A recursive systematic convolutional code. Channel protection fundamentals CHAPTER 3.4 k-bit Deinterleaver RSC Encoder 1 k-bit Decoder 1 Decoder 2 Interleaver Puncturing k-bit Interleaver k-bit Deinterleaver RSC Encoder 2 Figure 3.4-12 Block scheme of a classical turbo decoder. Figure 3.4-11 A classical turbo encoder with two RSC codes. are estimated in an iterative way by exchanging in- Figure 3.4-11 shows a classical turbo encoder with two formation between the two constituent decoders. constituent RSC co