TURBO CODES   (Cont)

 

Puncturing Output

Puncturing output, Code Rate 1/2

Based on above example the default code rate is 1/3. When output puncturing is implemented the code rate will be reduced to 1/2. This is particular useful to increase the bandwidth efficiency as the message we sent has more information and compact. As the code rate decreases however, redundancy is decreases as well and hence hurting the BER performance of Turbo Code. This means non-puncturing will has better BER performance as more redundant information was sent along the faded channel. Needless to say the bandwidth efficiency for the non-puncturing case will decrease. Therefore we trade the bandwidth efficiency for bit error rate. It is evidenced from below figure that the BER performance of Turbo Code is better with non-punctured output.

Increasing the number of decoding iteration can reduce the performance gap between the punctured and non-punctured. However this will also introduce another problem, which will be discussed shortly.

On the other hand, when compare with non-puncturing output at the same code rate, system with puncturing will improves BER performance because we will have more uncorrelated encoded message. This implies that puncturing will introduce another level of randomness to the encoded message.


Number of Decoding Iteration

One distinctive characteristic of Turbo Code is iterative decoding, in which the results of one decoder will passed to the another decoder for the next decoding iterations. Iteration is useful in sharing the information from one decoding to another. In our example, the first decoder does not have the information of the second encoder output in the first iterations. After the first iterations, the output of the second decoder will feed back into the input of the first encoder. Thus first decoder has more information in the second iterations and the decoding performance should be improved. The following figure compared the BER performance of Turbo Code for different decoding iteration.

Based on above figure, the BER performance increases with the number of decoding iterations. However, the decoding time will also increases with the number of decoding iterations. This is because after the information is shared between decoders, the decoders have more information about the input and thus make more accurate decision. But this improvement will slowly vanish after certain number of iteration. After some iteration, the decoders already have enough information decode the message and further exchange of output (iteration) does not provide extra useful data as compare to the first iteration.

If the decoding iteration is further increases beyond the threshold, we will found that the performance of Turbo Code will degrade. After the threshold, more iteration does not give any more information to the decoders. This implies more iteration will not help the error performance, but can only hurt the real-time performance.


Noise Level

Noise is unavoidable in wireless communication and hence will have direct impact on BER performance of Turbo Code. Noise level can be represented by signal energy per bit to noise power spectral density (Eb/No). In any environment larger noise level means smaller SNR, or vice versa. Based on the following figures, we can see the BER performance of Turbo Code for any configuration improves as SNR increases (noise level decreases).


Type of Channel

Most wire-line channel can be modeled as an AWGN channel with stationary noise. In AWGN channel, message signal is affected only by the noise. The received signal can be expressed as following where s(t) is the message signal, A is the channel gain (constant) and n is the Gaussian noise.

In wireless environments the channel is no longer AWGN, but has a time-varying statistical behavior (non-stationary) or also term as fading. Fading means the nature of channel with which the channel gain is a random process described by a probability density function and an auto-correlation function. The message signal not only affected by Gaussian noise but also the time-varying channel gain with Rayleigh fading distribution.


Rayleigh fading distribution is typically used to describe the time varying nature of the received envelope of a flat fading signal, or the envelope of an individual multi-path component. It is well known that the envelope of the sum of two quadrature Gaussian noise signals obeys a Rayleigh distribution, which has the probability density function given by

The fading due to multipath effect (causing time delay spread and frequency selective fading) has made the wireless communication environment suffer much at a higher noise level. Needless to say, the Rayleigh fading will have worst BER performance compares to AWGN channel.


Home | Error Correcting Codes | Block Codes | Convolution Codes | Turbo Codes | References
________________________________________________________________________________________________
For comments and suggestions
contact the Webmaster