Abstract

This paper investigates the decoding of turbo codes in impulsive symmetric α-stable (SαS) noise. Due to the nonexistence of a closed-form expression for the probability density function (pdf) of α-stable processes, numerical-based SαS pdf is used to derive branch transition probability (btp) for the maximum a posteriori turbo decoder. Results show that in Gaussian noise, the turbo decoder achieves similar performance using both the conventional and the proposed btps, but in impulsive channels, the turbo decoder with the proposed btp substantially outperforms the turbo decoder utilizing the conventional btp. Results also confirm that the turbo decoder incorporating the proposed btp outperforms the existing Cauchy-based turbo decoder in non-Cauchy impulsive noise, while the two decoders accomplish similar performance in Cauchy noise.

1. Introduction

Turbo codes invented in 1993 [1] have many applications in various fields [24]. However, they were developed under the assumption of Gaussian noise despite the fact that many practical environments are known through experimental measurements to suffer from frequent occurrence of impulsive noise. Examples of such impulsive transmission links include radio channels [5], power-line communication channels [6], and digital subscriber lines [7]. Since systems optimized for Gaussian noise usually perform poorly in impulsive noise channels [8, 9], it is important to study and improve the performance of turbo codes in the presence of impulsive interference.

One commonly used impulsive noise model is the class of symmetric α-stable (SαS) distributions [10], of which the Gaussian and Cauchy distributions are special cases. This family possesses some desirable properties, but no closed-form expressions exist for their probability density function (pdf), except for the two limiting cases of Gaussian and Cauchy. Thus, previous studies have developed only noncoherent receivers based on the Gaussian and Cauchy pdfs. For uncoded systems, the authors in [11, 12] proposed Cauchy-based receivers to work in impulsive SαS noise. In [13], the authors studied soft-decision decoding in SαS noise based on the required side information. In their approach, Gaussian and Cauchy pdfs were used to derive closed-form soft-decision metrics which lead to exact receivers in Gaussian and Cauchy noise. The exact metrics were then simplified by averaging some parameters in order to lessen the required side information. It was then empirically shown that the exact Cauchy-based metric could outperform other metrics in impulsive SαS noise.

In this paper, we propose a new branch transition probability (btp) for the maximum a posteriori (MAP) turbo decoder which covers all cases of SαS noise including Gaussian and Cauchy. Unlike previous work where Cauchy-based receivers [11, 12] or closed-form Gaussian and Cauchy-based solutions [13] were suggested, the current work is based on the SαS pdf which is not available in closed form but is computed numerically.

The rest of this paper is organized as follows. In Section 2, we present the basic definitions and properties of SαS noise. In Section 3, a brief review of the turbo decoder is presented and the proposed numerical btp is described. In Section 4, the performance of the turbo decoder using the existing analytical and the new numerical btps is compared through simulation results. Finally, the conclusions are drawn in Section 5.

2. SαS Noise

SαS random processes have been found to agree well with the measured data of a variety of man-made and natural noises [10], and this family possesses strong theoretical justifications according to the generalized central limit theorem. A random variable 𝑋 follows a SαS distribution if its characteristic function has the following form:𝜙𝑋(𝜔)=exp(𝛾|𝜔|𝛼),<𝜔<,(1) where the parameter 𝛼(0,2] is the characteristic exponent which determines the level of the impulsiveness of the SαS random process. A smaller value of α signifies a more impulsive behavior and vice versa. The scale parameter 𝛾>0 is called the dispersion which measures the spread of 𝑋. Note that when 𝛼=2, Gaussian noise is obtained with the following closed-form pdf:𝑓2(𝜉)=12𝜋𝛾exp14𝛾𝜉2(2) while 𝛼=1 leads to a Cauchy noise pdf𝑓1(𝜉)=𝛾𝜋𝛾2+𝜉2.(3) However, when (0<𝛼<2, 𝛼1,2), no closed-form expressions exist for the pdf, but 𝑓𝛼(𝜉) can be evaluated by taking the inverse Fourier transform of the characteristic function𝑓𝛼(𝜉)=12𝜋exp(𝛾|𝜔|𝛼)𝑒𝑗𝜔𝜉𝑑𝜔.(4)

Due to the nonexistence of second- and higher-order moments for non-Gaussian SαS distributions, it is necessary to define an alternative measure for the power of SαS non-Gaussian noise. For this purpose, we use the 𝐸𝑏/𝑁0 for SαS noise defined in [14]𝐸𝑏𝑁0=GSNR2𝑟𝑚,(5) where 𝑟 is the code rate, 𝑚 is the number of bits carried per 𝑀-ary symbol (𝑚=1 for binary codes), and GSNR represents the geometric signal-to-noise ratio defined for non-Gaussian SαS noise [15].

3. Turbo Decoder

In this paper, we focus on the standard turbo code formed by two recursive systematic convolutional codes [1]. The general structure of the iterative turbo decoder is shown in Figure 1.

The two component decoders are linked by an interleaver and a deinterleaver. As shown in Figure 1, each component decoder accepts three inputs: (1) the systematically encoded channel output bits, (2) the parity bits transmitted from the respective component encoder, and (3) the information bits from the other component decoder for use as the prior information. The component decoders work iteratively to generate the a posteriori probability log-likelihood ratio (APP-LLR)𝐿𝑢𝑘𝐲=ln𝑃𝑢𝑘=+1𝐲𝑃𝑢𝑘=1𝐲,(6) where 𝑃(𝑢𝑘=±1𝐲) is the APP of the 𝑘th data bit 𝑢𝑘, 𝑘=1,2,,𝐾, and 𝐲=𝐱+𝐧 is the noisy received codeword. We assume that 𝑢𝑘 and the components of 𝐱 take values in the set {±1} and 𝐧 is the noise vector. The optimal solution to generate the APP-LLR can be obtained using the MAP algorithm which is also known as BCJR algorithm due to its inventors [16]. The MAP algorithm estimates (6) by incorporating the code’s trellis𝐿𝑢𝑘𝐲=ln𝑈+𝑘𝑃𝑠𝑠𝐲𝑈𝑘𝑃(𝑠𝑠𝐲),(7) where 𝑈+𝑘 is the set of transitions from the previous state 𝑠 to the present state 𝑠 caused by 𝑢𝑘=+1, and similarly for 𝑈𝑘. The joint probability 𝑃(𝑠𝑠𝐲) in (7) can be decomposed into a product of three terms [1]𝑃(𝑠𝑠𝐲)=𝑃𝑦𝑗>𝑘𝑠𝑃𝑦𝑘𝑠|𝑠𝛽𝑘(𝑠,𝑠)𝑃𝑠𝑦𝑗<𝑘,(8) where 𝑃(𝑦𝑗>𝑘𝑠) and 𝑃(𝑠𝑦𝑗<𝑘) can be calculated recursively from the btp 𝛽𝑘(𝑠,𝑠) [1]𝛽𝑘𝑠,𝑠=𝑃𝐲𝑘𝑠𝑠=𝑃𝐲𝑘𝑠𝑠𝑃𝑠𝑠=𝑃𝐲𝑘𝑠𝑠𝑃𝑢𝑘,(9) where𝑃𝑢𝑘=𝑒𝐿(𝑢𝑘)/21+𝑒𝐿(𝑢𝑘)𝑒(𝑢𝑘𝐿(𝑢𝑘)/2)(10) is the a priori probability of the data bit 𝑢𝑘, and 𝐿(𝑢𝑘)=ln(𝑃(𝑢𝑘=+1)/𝑃(𝑢𝑘=1)) is its LLR. The term 𝑃{𝐲𝑘(𝑠𝑠)} in (9) is equivalent to 𝑃(𝐲𝑘𝐱𝑘), where 𝐱𝑘 is the transmitted codeword associated with the transition from 𝑠 to 𝑠. Thus, for a nonfading and memoryless channel with BPSK modulation, we can write𝑃𝐲𝑘𝑠𝑠𝑃𝐲𝑘𝐱𝑘=𝑛𝑙=1𝑃𝑦𝑘𝑙𝑥𝑘𝑙=𝑛𝑙=1𝑓𝑦𝑘𝑙𝑥𝑘𝑙,(11) where 𝑦𝑘𝑙 are the individual bits within the received codeword 𝐲𝑘 and similarly for 𝑥𝑘𝑙 and 𝑓 is the pdf of the additive noise. By substituting (10) and (11) into (9), the btp can be written as 𝛽𝑘𝑠,𝑠=𝐶𝑒(𝑢𝑘𝐿(𝑢𝑘)/2)𝑛𝑙=1𝑓𝑦𝑘𝑙𝑥𝑘𝑙,(12) where𝐶=𝑒𝐿(𝑢𝑘)/21+𝑒𝐿(𝑢𝑘)(13) depends only on the LLR 𝐿(𝑢𝑘) and not on the sign of the data bit 𝑢𝑘 or the transmitted codeword 𝐱𝑘 and so is constant over the summations in the numerator and denominator in (7) and is canceled out.

3.1. The Gaussian btp

In the original MAP decoding algorithm, the btp is defined based on the Gaussian noise assumption. Thus, 𝑓(𝑦𝑘𝑙𝑥𝑘𝑙) can be obtained using (2), and the Gaussian btp may be expressed as𝛽2,𝑘𝑠,𝑠=𝐶𝑒(𝑢𝑘𝐿(𝑢𝑘)/2)𝑛𝑙=1𝑓2𝑦𝑘𝑙𝑥𝑘𝑙=𝐶𝑒(𝑢𝑘𝐿(𝑢𝑘)/2)𝑛𝑙=112𝜋𝛾exp14𝛾𝑦𝑘𝑙𝑥𝑘𝑙2=𝐶2𝑒(𝑢𝑘𝐿(𝑢𝑘)/2)exp12𝛾𝑛𝑙=1𝑦𝑘𝑙𝑥𝑘𝑙,(14) where the subscript 2 indicates the Gaussian (𝛼=2) assumption and the constant term 𝐶2=𝐶12𝜋𝛾𝑛exp14𝛾𝑛𝑙=1𝑦2𝑘𝑙+𝑥2𝑘𝑙(15) will be cancelled out in the calculation of (7). In this paper, the conventional MAP decoding algorithm is also called the Gaussian-based MAP decoder since it has the Gaussian btp in its structure.

3.2. The Cauchy btp

To modify the MAP algorithm to work in Cauchy noise, the Cauchy btp can be obtained in closed form based on the Cauchy pdf (3) 𝛽1,𝑘𝑠,𝑠=𝐶𝑒(𝑢𝑘𝐿(𝑢𝑘)/2)𝑛𝑙=1𝑓1𝑦𝑘𝑙𝑥𝑘𝑙=𝐶𝑒(𝑢𝑘𝐿(𝑢𝑘)/2)𝑛𝑙=1𝛾𝜋𝛾2+𝑦𝑘𝑙𝑥𝑘𝑙2=𝐶1𝑒(𝑢𝑘𝐿(𝑢𝑘)/2)𝑛𝑙=11𝛾2+𝑦𝑘𝑙𝑥𝑘𝑙2,(16) where the subscript 1 indicates the Cauchy (𝛼=1) assumption and𝐶1=𝐶𝛾𝜋𝑛(17) is a constant and is canceled out in the calculation of (7). In this paper, the MAP decoder utilizing the Cauchy btp is referred to as the Cauchy-based MAP decoder.

3.3. The Proposed Numerical btp

In order to define the numerical btp, we rewrite (12) as𝛽𝛼,𝑘𝑠,𝑠=𝐶𝑒(𝑢𝑘𝐿(𝑢𝑘)/2)𝑛𝑙=1𝑓𝛼𝑦𝑘𝑙𝑥𝑘𝑙=𝐶𝑒(𝑢𝑘𝐿(𝑢𝑘)/2)exp𝑛𝑙=1ln𝑓𝛼𝑦𝑘𝑙𝑥𝑘𝑙,(18) where 𝛽𝛼 and 𝑓𝛼 are the btp and the pdf, respectively, for SαS noise with characteristic exponent α. Despite the non-existence of a closed-form expression, 𝑓𝛼(𝑦𝑘𝑙𝑥𝑘𝑙) can be computed numerically based on (4). Suppose that 𝑓𝛼(𝜉) can be approximated to within some acceptable tolerance by an integral over a finite interval𝑓𝛼(𝜉)12𝜋𝜋𝐿𝜋𝐿exp(𝛾|𝜔|𝛼)𝑒𝑗𝜔𝜉𝑑𝜔.(19) By subdividing [𝜋𝐿,𝜋𝐿] into 𝑁 subintervals of length 2𝜋𝐿/𝑁 and choosing partition points 𝜔𝑚=2𝜋𝑚𝐿/𝑁 for 𝑚=(𝑁/2),(𝑁/21),,1,0,1,, (𝑁/22), (𝑁/21), 𝑓𝛼(𝜉) can be obtained by a Riemann sum𝑓𝛼(𝜉)12𝜋𝑁/21𝑚=(𝑁/2)exp𝛾|||2𝜋𝑚𝐿𝑁|||𝛼𝑒2𝜋𝑗𝑚𝐿𝜉/𝑁2𝜋𝐿𝑁=𝐿𝑁𝑁/21𝑚=(𝑁/2)exp𝛾|||2𝜋𝑚𝐿𝑁|||𝛼𝑒2𝜋𝑗𝑚𝐿𝜉/𝑁.(20) If 𝑓𝛼(𝜉) is sampled at intervals of 1/𝐿 at sampling points 𝑛=0, ±1, ±2,, (20) can be written as𝑓𝛼𝑛𝐿𝐿𝑁𝑁/21𝑚=(𝑁/2)exp𝛾|||2𝜋𝑚𝐿𝑁|||𝛼𝑒2𝜋𝑗𝑚𝑛/𝑁.(21) The sum on the right of (21) has the form of a discrete Fourier transform; therefore, it has period 𝑁 in the variable 𝑛. However, the pdf 𝑓𝛼(𝑛/𝐿) does not have period 𝑁. To keep the tolerance at an acceptable range, |𝑛|𝑁/8 is commonly used [17]. This implies that 𝑁 meets 𝑁8𝐿×max, where max is the largest value of |𝑦𝑘𝑙𝑥𝑘𝑙| and 𝐿 is chosen large enough such that the area under the characteristic function beyond the range 𝜋𝐿 to 𝜋𝐿 is small and can be neglected. The computational complexity is 2𝑁 operations for every 𝑓𝛼(𝑛/𝐿), where 𝑁 determines the accuracy of the numerical method. However, by computing 𝑓𝛼(𝜉) in advance for a desired range and storing the result in a lookup table, the real time complexity will be as low as one operation per 𝑓𝛼(𝑛/𝐿). Although this prior computation needs 2𝑁2 operations, with the aid of the fast Fourier transform (FFT) algorithm and choosing 𝑁 as a positive integer power of two, the complexity will be reduced to 4𝑁log2(𝑁) arithmetic operations. In the next section, we show, through simulation results, that 𝑁=256 yields highly accurate results. This means that with today’s advancement in computer and VLSI technology, it is feasible to implement the proposed numerical method in practical systems.

Referring back to the definition of the numerical btp, although the second line of (18) seems unnecessary, it is needed when converting the resultant MAP algorithm to the Log-MAP algorithm [18]. In fact, the rest of the modification is similar to that of [18] and thus is omitted for the sake of brevity. The Log-MAP algorithm gives a performance identical to that of the MAP algorithm, but at a fraction of its complexity. Hence, it is preferred over the MAP algorithm in practice.

4. Results and Discussion

4.1. Comparative Analysis

The difference between the three aforementioned btps lies in the numerical calculation of the conditional probabilities 𝑓𝛼(𝑦𝑘𝑙𝑥𝑘𝑙). Therefore, the resultant MAP decoding algorithms can be compared by studying the conditional LLR which is defined as 𝐿𝛼𝑦𝑘𝑥𝑘=ln𝑃𝛼𝑦𝑘𝑥𝑘=+1𝑃𝛼𝑦𝑘𝑥𝑘=1=ln𝑓𝛼𝑦𝑘1𝑓𝛼𝑦𝑘+1,(22) where 𝑦𝑘 is the receiver’s matched filter output. The sign of 𝐿𝛼(𝑦𝑘𝑥𝑘) indicates whether the transmitted bit 𝑥𝑘 is more likely to be +1 or −1, and its magnitude gives an indication of how likely its sign gives the correct value of 𝑥𝑘. For Gaussian (𝛼=2) and Cauchy (𝛼=1) distributions, the conditional LLR can be expressed in closed form as𝐿2𝑦𝑘𝑥𝑘=ln𝑓2𝑦𝑘1𝑓2𝑦𝑘+1=14𝛾𝑦𝑘1214𝛾𝑦𝑘+12=𝑦𝑘𝛾,(23)𝐿1𝑦𝑘𝑥𝑘=ln𝑓1𝑦𝑘1𝑓1𝑦𝑘+1=ln𝛾2+𝑦𝑘+12𝛾2+𝑦𝑘12,(24) respectively. Figure 2 shows the analytical and numerical 𝐿𝛼(𝑦𝑘𝑥𝑘) results for several values of α, from 1 to 2, using 𝛾=1, where 𝑁=256 is used in the numerical method.

From Figure 2, it is clear that the proposed numerical method agrees well with the analytical results, as exemplified by 𝐿1(𝑦𝑘𝑥𝑘) and 𝐿2(𝑦𝑘𝑥𝑘), for Cauchy (𝛼=1) and Gaussian (𝛼=2), respectively. It confirms that the numerical method with 𝑁=256 can produce very accurate results for 𝛼=1 and 𝛼=2, which also implies the accuracy of the numerical method with 𝑁=256, for 1<𝛼<2. Figure 2 also illustrates the limitation of the Gaussian-based MAP algorithm in impulsive noise, as 𝐿2(𝑦𝑘𝑥𝑘) increases linearly with 𝑦𝑘. Other 𝐿𝛼(𝑦𝑘𝑥𝑘) for 𝛼<2 are nonlinear, which can suppress outlying 𝑦𝑘 and act as a protection mechanism against impulses. This difference between 𝐿2(𝑦𝑘𝑥𝑘) and 𝐿𝛼<2(𝑦𝑘𝑥𝑘) explains the poor performance of the classical Gaussian-based turbo decoder in the presence of impulsive noise. This is also consistent with findings in [1113], where Cauchy-based receivers were reported to perform relatively well in impulsive environments.

In order to heuristically illustrate the advantage of the proposed numerical btp over the Gaussian and Cauchy btps in non-Cauchy impulsive noise, we examine the APP-LLR outputs generated by the MAP decoder using the Gaussian, Cauchy, and numerical btps in impulsive SαS noise (𝛼=1.7). Figure 3 shows the APP-LLR outputs for 250 symbols taken from the second component decoder where the channel 𝐸𝑏/𝑁0 is 4 dB. The encoder input is a string of all +1 s; hence, positive APP-LLR values correspond to correct hard decisions.

As seen in Figure 3, a large number of the APP-LLR outputs created by the MAP decoder using the Gaussian btp are negative valued in the first iteration and most of them remain negative valued even at the eighth iteration. This predicts a very poor performance for the Gaussian-based MAP decoder in such an environment. Although the MAP decoder with the Cauchy btp has achieved better results, a few erroneous decisions are observed as spikes, leading to unsatisfactory performance. On the contrary, the numerical btp has greatly influenced the MAP decoder where it is observed that after eight iterations the generated APP-LLR outputs improve in strength progressively towards error-free decisions.

4.2. Performance Comparison of btps

Numerical performance results are obtained in terms of bit error rate (BER) versus the 𝐸𝑏/𝑁0 for SαS noise (5) in decibels. Information bits are encoded using a rate-1/3 turbo code with constituent encoders having a constraint length of three (𝐺0=7, 𝐺1=5), and a random interleaver of size 1024 bits is used. Results are obtained for up to eight iterations for the MAP decoder utilizing the Gaussian, Cauchy, and numerical btps, but only results for the first and eighth iterations are shown.

4.2.1. Performance in Non-Cauchy Impulsive SαS Noise with 𝛼=1.7 and 𝛼=1.3

Figure 4 shows the performance in impulsive SαS noise (𝛼=1.7). It is clear that the conventional Gaussian-based MAP decoder has been paralyzed by the impulsive disturbance and almost no performance improvement is gained from the first iteration onwards. However, as expected, the Cauchy-based MAP decoder has achieved better results which has been shown in previous work [1113]. Ultimately, the MAP decoder furnished with the numerical btp offers better results than the Cauchy-based decoder (by about 0.7 dB), which is valuable for applications requiring reliable data communication at low 𝐸𝑏/𝑁0 values.

Similar trends are also observed in impulsive channel with 𝛼=1.3 in Figure 5, with higher improvement (about 1.65 dB) achieved by using the numerical btp over the Cauchy btp. From Figure 5, it is observed that the Gaussian btp has caused the MAP decoder to produce worse performance as the iteration number increases. This is due to error propagation in the first iteration, which causes the succeeding iterations to suffer more performance degradations.

4.2.2. Performance in Gaussian (𝛼=2) and Cauchy (𝛼=1) Noise

Figure 6 compares the performance in a Gaussian noise (𝛼=2) channel. It can be seen that the numerical btp offers almost identical results as the Gaussian btp which is optimized for this channel. Although we have used an approximate technique to calculate the SαS pdf in our numerical method, the influence on performance is negligible. On the other hand, the Cauchy-based MAP decoder has suffered a performance penalty of 1 dB by assuming that the noise is Cauchy.

Similar comparison is made in Figure 7, albeit in Cauchy noise (𝛼=1). This time, the numerical btp shows almost identical performance as the Cauchy btp and once again is proven to be near optimal. The Gaussian btp, however, has suffered substantial performance degradations.

5. Conclusion

In this paper, we have investigated the decoding of turbo codes using the MAP algorithm in environments impaired by impulsive SαS noise. Due to the non-existence of a closed-form expression for the pdf of SαS noise, a numerical-based btp is proposed for the MAP algorithm to work effectively in impulsive SαS noise. The resultant decoder is then compared with the existing Gaussian- and Cauchy-based MAP decoders. Results show that in Gaussian noise channels (𝛼=2), the MAP decoder furnished with the proposed numerical btp achieves almost identical performance to the conventional Gaussian-optimized MAP decoder, but the Cauchy-based MAP decoder fails to provide such near-optimal performance. Similar trends are seen in Cauchy noise (𝛼=1), where the MAP decoder with the proposed numerical btp achieves near-optimal performance exhibited by the Cauchy-based decoder, but the Gaussian-based MAP decoder is paralyzed by the impulsive disturbance. In non-Cauchy impulsive noise channels (𝛼<2, 𝛼1, 2), however, the MAP decoder utilizing the numerical btp substantially outperforms the conventional Gaussian-based MAP decoder and offers better results than the Cauchy-based MAP decoder.

The complexity of the proposed numerical method can be surmounted by the use of the FFT algorithm and a lookup table. Furthermore, the resultant MAP algorithm can be modified to obtain the Log-MAP algorithm using the conventional approach used in [18]. Thus, the MAP decoder with the proposed numerical btp can be used in applications requiring reliable data communication at very low 𝐸𝑏/𝑁0 values in impulsive noise, such as power-line communications, for which the impulsive noise is well modeled as SαS noise [14].

Acknowledgments

This research was sponsored in part by the Ministry of Science, Technology and Innovation under the Science Fund Grant 01-02-01-SF0074 and by Telekom Malaysia Research & Development under Grant RDTC/100760.