Channel Coding
Channel Coding
Channel coding has been used in digital cellular handsets and base stations for the past 10 years as a mechanism for improving transmission quality in a band-limited, noiselimited Rayleigh faded channel. Channel encoding adds bits to the source coded data calculated from the source coded data. The decoder uses these extra bits to detect and correct errors. Errors are detected when the actual transmitted redundancy value fails to match the redundancy value calculated from the transmitted data. Two code types are used: Block codes. Segment the message into blocks adding a parity check number, which is a product of the information bits contained in the block. Convolutional codes. Also known as tree codes, the encoder has memory and the output code words depend on the current bit value and adjacent bits held within the register. Block codes are good for detecting bursty errors, and convolutional codes work best with evenly distributed errors. Interleaving is used to help randomize error distribution to ensure convolutional encoders/decoders deliver coding gain. If an error burst lasts longer than the interleaving depth, the convolutional decoder will suffer from error extension, making matters worse. This will hopefully be detected by the block code parity check. The voice, image, or video sample can be discarded and the prior sample reused. Figure 1.12 shows a simple convolutional encoder. Each time an information bit arrives at the front end of the encoder, a branch code word is produced. As the bit moves through the code register, it influences subsequent branch word outputs. The objective is to increase the distance between 0s and 1s. The memory action enables the decoder to construct and evaluate a multiple decision process on the recovered bits. This weighted analysis provides coding gain. These decoders are commonly described as maximum likelihood decoders. Figure 1.13 shows how coding gain is achieved in a GSM vocoder (encoder/decoder).
A20-ms speech sample is described as a 260-bit word, which effectively contains the speech sample frequency coefficients. The 260 bits are split into Class 1 bits, which have parity bits added and are then convolutionally encoded. Note the 1/2 encoder doubles the number of bits�"2 bits out for every 1 bit in. Class 2 bits are uncoded. In the decoder, coded bits pass through the convolutional decoder. If the burst errors are longer than the interleaving depth (40 ms in GSM), the block coded parity check detects a parity error, the speech sample is discarded, and the prior sample is reused. Increasing K, the length of the convolutional encoder, increases resilience against burst errors and delivers additional coding gain (K = 7 typically delivers 5.2 dB gain, K = 9 delivers 6 dB of gain) but requires an exponential increase in decoder complexity (trading instructions per second against receive sensitivity). This coding gain depends on having sufficient interleaving depth available on the air interface. Interleaving depth in 3GPP1 (IMT2000DS/W-CDMA) is a variable: a minimum of 10 ms, a maximum of 80 ms. Increasing the interleaving depth from 10 to 80 ms increases coding gain by just under 1 dB for slow mobility users (3 km/h), by just over 1 dB for medium mobility users (20 km/h). However, increasing interleaving depth increases delay. Figure 1.14 shows how interleaving is implemented in GSM. Each 456-bit block is split into 8 × 57 sub-bit blocks and interleaved over eight time slots and eight frames (approximately 40 ms). This is an irreducible delay. You cannot reduce it by using faster processors, because the delay is a function of the fixed frame rate.
An alternative is that careful implementation of fast power control, using the 1500 Hz power control loop specified in 3GPP1, makes it possible to follow the fast fading envelope, which was already partly tamed by the coherence bandwidth of the 5 MHz channel. If the fast fading can be counteracted by the power control loop, the Rayleigh channel becomes a Gaussian channel in which burst errors no longer occur. Fast power control in a 5 MHz channel can therefore, theoretically, deliver additional coding gain at least for medium-mobility users (up to 20 km/h) without the need for deep interleaving. This shows the intricate and rather complex relationship between source rate, convolutional encoding (the choice of 1/2 or 2/3 encoders, for example), interleaving depth and coding gain, which in turn determines uplink and downlink sensitivity. All the preceding parameters can be dynamically tuned to optimize handset performance. 29
334 times read
|