www.ietdl.org Published in IET Communications Received on 21st February 2009 Revised on 13th November 2009 doi: 10.1049/iet-com.2009.0125
ISSN 1751-8628
Unified scaling factor approach for turbo decoding algorithms D.-W. Yue1,* H.H. Nguyen2 1
College of Information Science and Technology, Dalian Maritime University, Dalian, People’s Republic of China Department of Electrical and Computer Engineering, University of Saskatchewan, 57 Campus Drive, Saskatoon, Canada SK S7N 5A9 *National Mobile Communications Research Laboratory, Southeast University, Nanjing, People’s Republic of China E-mail:
[email protected] 2
Abstract: Turbo (iterative) decoding can be implemented with a large family of soft-input soft-output (SISO) algorithms, including suboptimal but practical algorithms such as the soft-output Viterbi algorithm (SOVA) and max-log-MAP algorithm. The performance with these practical algorithms can be improved with simple scaling factor methods. However, their theoretical analysis was mainly based on the relaxed assumption proposed by Papke et al. that the extrinsic information is Gaussian distributed. This study proposes a novel scaling factor approach for reducing both the overestimation of reliability values and the correlation between the intrinsic and extrinsic information. Explicit formulae for computing the scaling factors are derived based on mathematical statistics. A key difference compared to the scaling factor method of Papke et al. is that the proposed scaling factors can be computed off-line. The numerical results show that when implemented in the decoding algorithm of block component codes, the proposed scaling factor approach improves the performance of turbo decoding over additive white Gaussian noise and Rayleigh fading channels. It is superior than the method by Papke et al. in both performance and complexity.
1
Introduction
Since their invention in 1993 [1], turbo codes have attracted great interests because of their novel coding/decoding techniques and remarkable error performance. Turbo codes could still be one of the most exciting and important developments in the coding theory in many years to come. Turbo coding, which initially seemed to belong to a restricted research area, has now become a part of the mainstream telecommunication theory and practice. The turbo decoding principle has found widespread applications, not only in error control, but also in detection, interference suppression, cryptography, equalisation and so on [2]. When the turbo decoding principle was first introduced in [1], the maximum a posteriori probability (MAP) algorithm was used in the decoding. Using the MAP algorithm is optimal with regard to the bit-error-rate (BER) performance. However, it is complicated to implement. In IET Commun., 2010, Vol. 4, Iss. 8, pp. 905– 914 doi: 10.1049/iet-com.2009.0125
practice, a modified version of this algorithm, called the log-MAP algorithm, is implemented in the logarithmic domain in order to avoid numerical computation problems. The max-log-MAP algorithm, as will be shown later, is resulted from the log-MAP algorithm with an approximation. Another well-known practical algorithm for turbo decoding is the soft-output Viterbi algorithm (SOVA), which has a moderate complexity but incurs some performance loss. In recent years, some research works have been carried out to improve the performance of these practical turbo decoding algorithms, especially the one based on SOVA. As a result, various modifying techniques have been presented and developed [3– 15]. In particular, scaling factor (SF) methods that improve the SOVA-based turbo decoder have received a lot of attention because of their simplicity and efficiency. It was observed that the standard SOVA overestimates the reliability values. To deal with this problem, an SF-based normalisation of the extrinsic 905
& The Institution of Engineering and Technology 2010
Authorized licensed use limited to: University of Saskatchewan. Downloaded on August 09,2010 at 22:18:53 UTC from IEEE Xplore. Restrictions apply.
www.ietdl.org information was first presented in [4], where the soft output of SOVA is assumed to follow a Gaussian distribution. In [6], an SF was used on the extrinsic information, which increases linearly with the number of decoding iterations. However, the optimal SF was proved to be a constant from a different perspective in [5]. In [7], the method in [6] and the Gaussian assumption from [4] were applied to one decoder output, whereas the other decoder output was normalised by a constant factor. In [8], the SF was quantised to different levels and another normalisation method was proposed, which is based on the pseudomedian filtering technique. This SF method leads to a very powerful SOVA turbo decoder. It was recently applied to improve the performance of the turbo decoder employing a bi-directional SOVA (BSOVA) in [9]. The BSOVA considered in [9] was originally introduced in [10] and is especially suitable for decoding turbo codes built from convolutional codes. Different from the BSOVA proposed by Chen et al. [10], there is another BSOVA that was proposed by Li and Vucetic in [16] and is more suitable for turbo codes built from block codes (i.e. block turbo codes (BTC)) [17, 18]. Another approach was reported in [11, 12], which is based on a similar method in [4], where two attenuators are used with either mathematical expressions or fixed values. The use of these attenuators can reduce the correlation between the intrinsic and extrinsic information, and thus can provide a substantial performance improvement. Based on the modified two-step SF approach for the SOVA decoder’s extrinsic information, it was recently shown in [13] that the error floor can be significantly reduced. Moreover, the SF approach has also been considered and applied for the max-log-MAP algorithm in [14, 15]. Nevertheless, there exist two drawbacks in all of the abovementioned SF techniques. First, the theoretical analysis was mainly based on the assumption that the extrinsic information is Gaussian distributed. In general, the extrinsic information is not strictly Gaussian, especially when the data frame is relatively short [11]. Second, the best values for the SFs were determined mainly by trial-and-error (see [6], and [11 – 13]). Proposed in this paper is a novel SF approach based on mathematical statistics which can be applied for a general turbo decoder’s extrinsic information. The use of SFs here aims not only at reducing the overestimation of reliability values, but also at reducing the correlation between the intrinsic and extrinsic information. A formula for computing the SFs is derived and a simple method for simplifying the SFs is also provided. The BSOVA in [16] shall be employed for decoding BTCs and illustrate the merit of the proposed SFs. The numerical results show that the turbo decoding algorithm that employs the proposed SFs can achieve a better performance than the one without the SFs. 906 & The Institution of Engineering and Technology 2010
2
Turbo decoding algorithms
This section first briefly reviews the MAP decoding of a block code and then discusses its sub-optimal, but practical variants. Although being quite well established theory, the material in this section also defines the system model under consideration and introduces various notations and parameters that are necessary to put our main contribution in Section 3 in context. Let u ¼ [u1 , u2 , . . . , uK ] be the information bit sequence, c ¼ [c1 , c2 , . . . , cN ] the transmitted codeword of code C, and y ¼ [y1 , y2 , . . . , yN ] the sequence of received channel output symbols. Note that the rate of code C is K/N. With binaryphase shift keying modulation, the coded bits in c are related to the channel output symbols in y as follows pffiffiffiffiffi yn ¼ hn Es (2cn 1) þ wn ,
n ¼ 1, 2, . . . , N
(1)
where hn is the channel gain, Es is the energy per coded bit and wn represents additive white Gaussian noise (AWGN). Let N0/2 be the two-sided power spectral density of AWGN. Then wn is modelled as a zero-mean Gaussian random variable with variance N0/2. Note that the channel gain hn is 1 for the case of an AWGN channel, while it is a Rayleigh random variable (with unit mean squared value) for the case of a Rayleigh flat-fading channel. Furthermore, under block-fading the channel gain hn stays constant for the whole codeword length but changes independently from codeword to codeword. Coherent detection with a perfect estimation of hn at the receiver is also assumed for the fading case. The log likelihood ratio (LLR) produced by the MAP algorithm as the reliability estimation for the kth information bit is [17] P P(uk ¼ 1jy) c:u ¼1 P(c, y) ¼ ln P k L(uk ) ¼ ln P(uk ¼ 0jy) c:uk ¼0 P(c, y)
(2)
For a block code, each codeword is represented by a path in its trellis diagram. Hence (2) can be rewritten as P
c[V1 (k)
eM(c,y)
c[V0 (k)
eM(c,y)
L(uk ) ¼ ln P
(3)
where V1(k) and V0(k) consist of all the paths corresponding to the information bits uk ¼ 1 and uk ¼ 0, respectively; M(c, y) ¼ ln P(c, y) denotes the metric of path c in the trellis diagram. Among all the turbo decoding algorithms, the one based on the MAP algorithm gives the best performance. This is due to the fact that the MAP algorithm considers all paths in the trellis diagram or all codewords in the calculation of the LLR for each information bit. However, its implementation complexity is the highest. In order to IET Commun., 2010, Vol. 4, Iss. 8, pp. 905– 914 doi: 10.1049/iet-com.2009.0125
Authorized licensed use limited to: University of Saskatchewan. Downloaded on August 09,2010 at 22:18:53 UTC from IEEE Xplore. Restrictions apply.
www.ietdl.org reduce numerical computation problems, the MAP algorithm can be implemented in the logarithmic domain, and the resulting algorithm is called log-MAP algorithm [19]. When estimating the LLR for each information bit, if only the best path in each sum of (3) is retained, then one obtains an approximated LLR as follows L(uk ) ¼ max M(c, y) max M(c, y) c[V1 (k)
c[V0 (k)
(4)
The quantities maxc[V1 (k) M(c, y) and maxc[V0 (k) M(c, y) can be computed by forward and backward recursions based on the idea of the SOVA. This is precisely what the BSOVA algorithm, proposed in [16], does. Furthermore, if only one maximum term in each sum ofP(3) is retained by applying the max operation, namely ln( i eai ) ’ maxi {ai }, then one obtains the so-called max-log-MAP algorithm. Finally, if multiple paths are retained and/or the more accurate max operation is used instead of the max operation in each sum of (3), different modified versions of SOVA are realised. The max operation is defined and related to the max operation as max (x, y) ¼ ln(ex þ ey ) ¼ max(x, y) þ ln(1 þ ejxyj ). These algorithms can be selected and adapted according to different channel conditions [3]. From the above discussion, all the common soft-input soft-output (SISO) decoding algorithms of component codes are related to each other. In general, the SF approach that we propose in this paper can be applied to any of these algorithms to improve its performance. For simplicity and clarity of presentation, we shall present our SF approach for the BSOVA algorithm, which is also known to benefit the most with the application of the SFs.
3
It is shown in [4] that the soft output of SOVA suffers from two kinds of distortions. First, for bad channels the reliability information of the decoder output is too ‘optimistic’. The second kind of distortion is caused by a correlation between extrinsic and intrinsic information. It is observed in [11, 12] that there is a strong correlation between the extrinsic and intrinsic information of SOVA while the correlation between them for MAP algorithm is very weak. This section introduces two methods to determine the SFs for the extrinsic information, which are used, respectively, to reduce the two kind of distortions mentioned above.
3.1 SFs to reduce the overestimation of reliability values Consider a turbo code that is built from two systematic block codes C1 and C2 . If the optimal MAP algorithm is used in the turbo decoding, the LLR of the information bit u after the ith iteration can be represented as follows [17]
IET Commun., 2010, Vol. 4, Iss. 8, pp. 905– 914 doi: 10.1049/iet-com.2009.0125
If a more practical, but suboptimal algorithm such as BSOVA is used instead of the MAP algorithm, then the LLR for the information bit u after the ith iteration can also be represented in three additive terms as [17] 1 2 b Le (i) þ b Le (i) L(u) ¼ Lc y þ b
(5)
(6)
In general, the estimation j b L(u) is less reliable than the estimation L(u) because b Le (i) is less reliable than Lje (i), j ¼ 1, 2. In order to improve the reliability value b L(u), we propose to use two SFs a1 and a2 on the extrinsic information b L1e (i) and b L2e (i) as follows 1 2 b Le (i) þ a2b Le (i) L(u, a1 , a2 ) ¼ b Lc y þ a1b
Novel SF approach
L(u) ¼ Lc y þ L1e (i) þ L2e (i)
where the constant Lc is called the reliability value of the channel, y is the output of the channel corresponding to u and L1e (i) and L2e (i) are the extrinsic information from decoders 1 and 2, respectively. Note that for simplicity and without loss of generality we have dropped the index of the information bit and channel output in the above expression. The channel reliability depends on the channel model and signal-to-noise ratio pffiffiffiffiffi(SNR). For an AWGN channel with binary inputs + Es , then Lc ¼ 4Es =N0 , where N0/2 is two-sided power spectral density of AWGN. For a Rayleigh flat-fading channel, Lc ¼ 4hn Es =N0 , where hn is the instantaneous channel gain in (1) (i.e. the fading amplitude) [17]. The fact that the calculation of the proposed SFs requires the knowledge of the channel reliability (equivalently the instantaneous SNR) is reasonable and expected. Such a requirement is also standard for any coherent receiver and can be fulfilled with various estimation techniques.
(7)
The two SFs a1 and a2 shall be derived based on the minimum mean-square error (MMSE) criterion [20] as follows. For a fixed channel SNR, defined as Eb/N0 where Eb ¼ (N =K ) Es is the energy per information bit and N0/ 2 is two-sided power spectral density of AWGN, both the optimal MAP algorithm and the modified practical algorithm (such as the BSOVA or the max-log-MAP algorithm) with SFs produce two LLR estimations of the information bit at each iteration. Statistically, their mean-square difference (MSD) j
Le (i) Lje (i))2 } fj (aj ) ¼ E{(aj b
(8)
describes the effectiveness of the modified decoding algorithm. Specifically the smaller the MSD value is, the better the suboptimal decoding becomes. Therefore the parameter aj should be found to minimise the MSD fj (aj ), which means that dfj (aj )=daj ¼ 0. From this 907
& The Institution of Engineering and Technology 2010
Authorized licensed use limited to: University of Saskatchewan. Downloaded on August 09,2010 at 22:18:53 UTC from IEEE Xplore. Restrictions apply.
www.ietdl.org With the above linear transformation, the LLR at the first phase of the ith iteration can be written as follows
equation, aj is found to be j
aj ¼
Le } E{Ljeb j E{(b L e )2 }
,
j ¼ 1, 2
(9)
It should be noted that, under the typical condition of j E{(Lje )2 } E{(b Le )2 }, it follows from the Cauchy– Schwarz inequality [21] that aj 1.
3.2 SFs to reduce the correlation between the intrinsic and extrinsic information At each iteration, Decoder 1 for Code C1 runs first, followed by Decoder 2 for Code C2 . In particular, in the fist phase of the ith iteration, Decoder 1 first produces its extrinsic 1 information b Le (i) based on the intrinsic information
1 b Li (i)
1 1 b L1 (u) ¼ L~ e (i) þ L~ i (i) 2 1 ¼ Lc y þ b Le (i 1) þ (1 b1 )b Le (i)
Similarly, the LLR at the second phase of the ith iteration is 1 2 b L2 (u) ¼ Lc y þ b Le (i) þ (1 b2 )b Le (i)
The correlation between the random intrinsic and extrinsic information can be described by their correlation coefficient [21]. Therefore at the ith iteration we have two correlation coefficients as follows
(15)
From [21], another simple and efficient linear method is as follows 8 j j < L~ j ¼ b Li Le b0j b e : ~ j bj Li ¼ Li
2 þb Le (i
¼ Lc y 1) at its input. Decoder 1 then 1 forwards the extrinsic information b Le (i) to Decoder 2. In the second phase of the1 ith iteration, Decoder 2 uses the extrinsic information b Le (i) from Decoder 1 and the channel information Lc y as its intrinsic information to 2 produce the extrinsic information b Le (i). Decoder 2 then 2 forwards b Le (i) to Decoder 1 for the next iteration.
(14)
(16)
where
b0j
¼
j j j j E{(b Li E{b Li })(b Le E{b Le })}
(17)
j j E{(b Li E{b Li })2 }
With the above method, the LLRs at the first and second phases of the ith iteration are written as 0 2 1 2 b L1 (u) ¼ Lc y þ b Le (i 1) þ [b Le (i) b01 (Lc y þ b Le (i 1))]
(18) j E{(b Li
j j E{b Li })(b Le
j E{b Le })}
j j rj (b Li , b Le ) ¼ qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi , j j j j E{(b Le E{b Le })2 }E{(b Le E{b Le })2 }
j ¼ 1, 2
0 1 2 1 b Le (i) þ [b Le (i) b02 (Lc y þ b Le (i))] L2 (u) ¼ Lc y þ b
(10)
It should be noted that if the SFs aj obtained in Section 3.1 are applied, the correlation betweenj the intrinsic information j b Le cannot be reduced since Li and the extrinsic information b j rj (b Li ,
j Le ) aj b
¼
j rj (b Li ,
j b Le )
(11)
Nevertheless, we can use the linear transform method to make the correlation coefficient rj become zero.
8 j < L~ j ¼ b Le e j j : L~ j ¼ b Le Li bj b i
Now we consider how to choose the better one from the above two groups of parameters, {bj , j ¼ 1, 2} and {b0j , j ¼ 1, 2}. At the first phase of the ith iteration, the variance of LLR b L1 (u) is easily found to be
s2 (b L1 ) ¼ E{(b L1 (u) E{b L1 (u)})2 } 1
(12)
908 & The Institution of Engineering and Technology 2010
(20)
(21)
It is known that the smaller the variance of LLR is, the better the decoding performance will become [11] (see Fig. 4 of [11]). Therefore the following choice of the SF, u1 , follows
u1 ¼ bj ¼
1
0
( j j j E{b Li })(b Le E{b Le })} j j E{(b Le E{b Le })2 }
1
Similarly, the variance of LLR b L1 (u) is
where j E{(b Li
1
¼ (1 r21 (b Li , b Le ))s2 (b Li ) þ s2 (b Le )
0 1 1 1 1 s2 (b L1 ) ¼ s2 (b Li ) þ (1 r21 (b Li , b Le ))s2 (b Le )
One simple and efficient linear method is as follows
(19)
b1 , b01 ,
1 1 s2 (b Le ) , s2 (b Li ) 1 1 s2 (b Le ) s2 (b Li )
(22)
(13) A similar choice of the SF, u2 , at the second phase of the ith IET Commun., 2010, Vol. 4, Iss. 8, pp. 905– 914 doi: 10.1049/iet-com.2009.0125
Authorized licensed use limited to: University of Saskatchewan. Downloaded on August 09,2010 at 22:18:53 UTC from IEEE Xplore. Restrictions apply.
www.ietdl.org approach thatj uses uj ¼ aj bj to scale the extrinsic information b Le (i).
iteration is (
u2 ¼
b2 , b02 ,
2 2 s2 (b Le ) , s2 (b Li ) 2 2 s2 (b Le ) s2 (b Li )
It should be pointed out that the averaging operation, E{}, in all of the above expressions can be done numerically and off-line for given component codes and SNR values. This means that in practice, one can compute the SFs aj and bj off-line. These SFs are usually given in the form of a table (see Tables 1 – 3) for typical SNR values and number of iterations. They can then be built into the modified iterative decoder and used for online decoding of the received signals. Excluding the complexity of the off-line computations and because only two simple multiplication operations are added at each iteration, the online decoding complexity by incorporating our SF approach is almost the same as that of the traditional method without SFs.
(23)
Typically, the two component codes of the turbo code are chosen to be identical, that is, C 1 ¼ C 2 . If that is the case, 2 2 Le ) , s2 (b Li ), which means that one always has one has s2 (b the same choice of SFs at each iteration, namely u1 ¼ b1 and u2 ¼ b2 .
3.3 Unified SF approach At each iteration, we first use the scaling approach for reducing the overestimation of reliability values, followed by the scaling approach for reducing the correlation between the intrinsic and extrinsic information. For simplicity, considered in the following is the typical case of having identical component codes, that is, C 1 ¼ C 2 . With the above unified SF approach, the LLR at the first phase of the ith iteration can be rewritten as follows 2 1 b Le (i 1) þ (a1 b1 )b Le (i) L(u) ¼ Lc y þ a2b
3.4 Comparison with the SF method in [4] It is of interest to compare our proposed SF approach to that presented by Papke et al. in [4], which can also be applied to turbo codes based on block codes. First, in order to overcome the exaggeration of the extrinsic information, under the assumption that the extrinsic information is Gaussian distributed, the related SF expression for the extrinsic information at the ith iteration was proposed in [4, Eq. (7)] as follows
(24)
Similarly, the LLR at the second phase of the ith iteration is 1 2 b Le (i) þ (a2 b2 )b Le (i) L(u) ¼ Lc y þ a1b
(25)
j j Le (i), L~ e (i) ¼ cb
In essence, (24) and (25) describe a simple unified SF
j ¼ 1, 2
(26)
Table 1 SFs a1 and a2 for a BTC built from (15,11) Hamming code
a1 SNR, dB
0.5
1.0
1.5
2.0
2.5
3.0
3.5
4.0
iteration 1
0.6589
0.7178
0.7703
0.8160
0.8535
0.8839
0.9089
0.9281
iteration 2
0.7487
0.8209
0.8768
0.9178
0.9560
0.9639
0.9758
0.9833
iteration 3
0.7755
0.8530
0.9047
0.9405
0.9613
0.9742
0.9827
0.9877
iteration 4
0.7841
0.8596
0.9084
0.9432
0.9635
0.9757
0.9832
0.9876
iteration 5
0.7856
0.8610
0.9102
0.9450
0.9648
0.9762
0.9834
0.9876
iteration 6
0.7863
0.8618
0.9116
0.9460
0.9655
0.9764
0.9834
0.9876
a2 iteration 1
0.7227
0.7874
0.8429
0.8855
0.9181
0.9414
0.9586
0.9706
iteration 2
0.7654
0.8414
0.8962
0.9342
0.9575
0.9718
0.9812
0.9869
iteration 3
0.7824
0.8571
0.9073
0.9421
0.9625
0.9749
0.9830
0.9876
iteration 4
0.7862
0.8598
0.9094
0.9442
0.9635
0.9759
0.9833
0.9875
iteration 5
0.7869
0.8606
0.9109
0.9454
0.9643
0.9761
0.9833
0.9876
iteration 6
0.7873
0.8614
0.9119
0.9461
0.9657
0.9763
0.9834
0.9876
IET Commun., 2010, Vol. 4, Iss. 8, pp. 905– 914 doi: 10.1049/iet-com.2009.0125
909
& The Institution of Engineering and Technology 2010
Authorized licensed use limited to: University of Saskatchewan. Downloaded on August 09,2010 at 22:18:53 UTC from IEEE Xplore. Restrictions apply.
www.ietdl.org Table 2 SFs b1 and b2 for a BTC built from (15,11) Hamming code
b1 SNR, dB
0.5
1.0
1.5
2.0
2.5
3.0
3.5
4.0
iteration 1
20.0006
0.0024
0.0054
20.0010
20.0036
0.0051
0.0010
20.0040
iteration 2
0.0090
0.0215
0.0459
0.0427
0.0600
0.0741
0.0585
0.0639
iteration 3
0.0726
0.1275
0.1691
0.1650
0.1504
0.1350
0.1052
0.1118
iteration 4
0.1084
0.1597
0.1873
0.1652
0.1308
0.1223
0.1007
0.1118
iteration 5
0.1161
0.1667
0.1871
0.1638
0.1314
0.1198
0.0994
0.1108
iteration 6
0.1178
0.1663
0.1869
0.1602
0.1277
0.1179
0.0990
0.1107
b2 iteration 1
0.0064
20.0026
20.0000
20.0069
20.0018
20.0015
20.0050
0.0101
iteration 2
0.0461
0.0790
0.1136
0.1231
0.1280
0.1225
0.0908
0.0916
iteration 3
0.1017
0.1515
0.1813
0.1691
0.1439
0.1243
0.1004
0.1139
iteration 4
0.1205
0.1644
0.1835
0.1632
0.1344
0.1170
0.0966
0.1115
iteration 5
0.1231
0.1667
0.1830
0.1603
0.1281
0.1147
0.0961
0.1113
iteration 6
0.1248
0.1676
0.1843
0.1595
0.1279
0.1138
0.0960
0.1114
Table 3 SFs u1 and u2 for a BTC built from (15,11) Hamming code
u1 SNR, (dB)
0.5
1.0
1.5
2.0
2.5
3.0
3.5
4.0
iteration 1
0.6595
0.7154
0.7649
0.8170
0.8572
0.8789
0.9079
0.9321
iteration 2
0.7396
0.7994
0.8309
0.8751
0.8860
0.8898
0.9173
0.9194
iteration 3
0.7029
0.7255
0.7355
0.7755
0.8108
0.8393
0.8775
0.8759
iteration 4
0.6758
0.6999
0.7211
0.7780
0.8255
0.8534
0.8825
0.8758
iteration 5
0.6695
0.6943
0.7231
0.7813
0.8334
0.8564
0.8840
0.8768
iteration 6
0.6686
0.6955
0.7247
0.7858
0.8378
0.8585
0.8844
0.8769
average-value
0.6860
0.7217
0.7501
0.8021
0.8418
0.8627
0.8923
0.8928
simplified-value
0.7
0.7
0.8
0.8
0.8
0.9
0.9
0.9
u2 iteration 1
0.7162
0.7900
0.8429
0.8924
0.9199
0.9429
0.9635
0.9605
iteration 2
0.7193
0.7625
0.7826
0.8110
0.8295
0.8493
0.8904
0.8954
iteration 3
0.6807
0.7056
0.7260
0.7730
0.8186
0.8506
0.8827
0.8737
iteration 4
0.6657
0.6954
0.7259
0.7810
0.8299
0.8588
0.8866
0.8760
iteration 5
0.6638
0.6939
0.7279
0.7851
0.8371
0.8614
0.8873
0.8763
iteration 6
0.6624
0.6938
0.7276
0.7866
0.8378
0.8624
0.8874
0.8762
average-value
0.6847
0.7235
0.7555
0.8048
0.8455
0.8709
0.8996
0.8930
simplified-value
0.7
0.7
0.8
0.8
0.8
0.9
0.9
0.9
910
& The Institution of Engineering and Technology 2010
IET Commun., 2010, Vol. 4, Iss. 8, pp. 905– 914 doi: 10.1049/iet-com.2009.0125
Authorized licensed use limited to: University of Saskatchewan. Downloaded on August 09,2010 at 22:18:53 UTC from IEEE Xplore. Restrictions apply.
www.ietdl.org where the SF c is defined as c ¼ me
2 s2e
4 Numerical results and discussion (27)
In the above expression, me and s2e are the mean and variance of the instantaneous extrinsic information b Le j (i) from SOVA decoders, respectively. Note that these values must be recalculated online each time the SOVA decoder outputs new extrinsic information. In contrast, in our proposed approach the SF a is given in (9), which can be computed off-line. Furthermore, in order to overcome the correlation between the extrinsic and intrinsic information, the authors in [4] give the following SF expression (see Eq. (19) of [4]) j j j Li (i) þ bb Le (i) L~ e (i) ¼ ab
(28)
where a¼
1 rsi =se 1 r2
(29)
b¼
r2 rse =si 1 r2
(30)
and
the Here r is the correlation coefficient between j b instantaneous extrinsic informationj Le (i) and s2e and s2i are the instantaneous intrinsic information b Li (i), j j Li (i), respectively. the variances of b Le (i) and variance of b The values a and b must be also recalculated online each time the SOVA decoder outputs new extrinsic information (see Fig. 8 of [4]). Moreover, Papke et al. [4] do not consider the influence of the difference between s2e and s2i on the BER performance, which is remarkably different from our approach. Specifically, it can be shown that with our proposed approach, the corresponding SF equation is as follows j L~ e (i)
( ¼
j Le (i), (a b)b j j Le (i) b0b Li (i), ab
In order to verify the performance gains achieved with the proposed SFs, BTCs are chosen and the modified BSOVA (MBSOVA) algorithm is selected to decode them. Specifically, block turbo codes constructed from the (15,11) Hamming code (31,26) Hamming code and (63,57) Hamming code are considered. We first observe in detail the performance improvement over AWGN channels. Tables 1 and 2 tabulate the SFs aj and bj computed by (9) and (13), respectively, for the BTC built from the (15,11) Hamming code. Table 3 lists the values of the unified SF uj ¼ aj bj . Note that 1 – 6 iterations are examined since the BER reduction because of iterative decoding of BTCs becomes negligible for additional iterations beyond 6 [17, 18]. As expected, Table 3 shows that the SFs increase as the channel SNR increases. It should be pointed out that many turbo decoding algorithms (such as MAP, SOVA and max-logMAP) are set up based on the trellis diagram of the constituent code. Since the trellis diagram for a block code is usually more complicated than the one for a convolutional code, the SFs will likely be different for different BTCs, or different SNRs or different numbers of iterations. Fig. 1 plots the BER performances with two sets of SFs, {aj , bj } and {aj , b0j }. The BER performance with the set {aj , bj } is obviously better than that with {aj , b0j }. This validates our analytical result on the LLR’s variances in Section 3.2. Fig. 2 shows the BER performances achieved with three versions of the unified SF uj ¼ aj bj , namely (i) the
j j s2 (b Le (i)) , s2 (b Li (i)) (31) j j s2 (b Le (i)) s2 (b Li (i))
where b and b0 are defined in (13) and (17). More importantly, the above calculation can be done off-line. To summarise, our SF method is simpler and easier to implement than the one in [4]. For example, when we estimate that the SNR is between 1.5 and 2.5 dB, we can choose the SFs to be 0.8 for the block turbo code built from (15,11) Hamming code (see Table 3). Such an SF is found off-line. Simulation results in the next section illustrate the performance improvement by our proposed approach as compared to the approach in [4]. IET Commun., 2010, Vol. 4, Iss. 8, pp. 905– 914 doi: 10.1049/iet-com.2009.0125
Figure 1 BER comparison between two sets of SFs faj , bjg and faj , bj0g: BTC built from the (15,11) Hamming code 911
& The Institution of Engineering and Technology 2010
Authorized licensed use limited to: University of Saskatchewan. Downloaded on August 09,2010 at 22:18:53 UTC from IEEE Xplore. Restrictions apply.
www.ietdl.org close to the BER curves of the optimal MAP algorithm. Interestingly, at the high SNR region from 3 to 4 dB, they can be a little better than those of the optimal MAP algorithm. Note that this phenomenon has been reported in [12]. The superiority of our proposed SF approach over the traditional method in [4] is illustrated in Fig. 4, where the BER simulation results between the SFs a in (9) and c in (27) are compared for the block turbo code constructed from the (15,11) Hamming code. The performance advantage by using our proposed approach is very clear, especially in the low SNR region. As discussed in Section 3.4, such a performance improvement over the method in [4] is remarkable given the simplicity of our method. Figure 2 BER comparison with different versions of the unified SF: BTC built from the (15,11) Hamming code exact value, (ii) its average value and (iii) the simplified (or approximated) value of the average value. It can be seen that these BER performance curves are almost identical. Therefore for simplicity the simplified value of the proposed unified SF shall be used in all the remaining simulations. It is interesting to see that the simplified value of the SF is the same for both u1 and u2 .
Next, we discuss our SF approach and two efficient approaches previously proposed for turbo-convolutional codes [4 – 15]. For convenience, our method shall be called the variable SF method (since the SF values are different for different SNRs) while the other two methods are called fixed SF methods. Note that the best values of the SFs with the fixed SF methods are determined mainly by trialand-error and fixed for various SNRs, while our SF values can be determined systematically based on expressions in (9) and (13).
Fig. 3 plots the BER performance after six iterations of the MBSOVA in which the proposed (simplified) SF is applied on the extrinsic information when different Hamming codes are used as a component code. Also shown for comparison are the BER curves, also after six iterations, obtained with the BSOVA (without applying the SF) and the optimum MAP algorithm. As can be seen from the figure, over the whole SNR range the BER curves of the MBSOVA are clearly better than those of the BSOVA and they are very
The first fixed SF method to compare with our variable SF method is the one that works as a compressor to remedy for the exaggerated extrinsic information. There are nine different SF values in all, ranging from 0.1 to 0.9. Simulation results for the BTC built from the (15,11) Hamming code show that our simplified SF value given in Table 3 is exactly the same as the best fixed SF value for every SNR. For instance, for SNR ¼ 1, 2 and 3 dB, the best SF values determined by trial-and-error are 0.7, 0.8 and 0.9, respectively. They are the same as the values given in Table 3.
Figure 3 BER comparison of turbo decoders with BSOVA, MBSOVA and MAP algorithms for BTCs built from (15,11), (31,26) and (63,57) Hamming codes
Figure 4 BER comparison between our proposed SF a and the scaling factor c in [4] for the block turbo code built from the (15,11) Hamming code
912 & The Institution of Engineering and Technology 2010
IET Commun., 2010, Vol. 4, Iss. 8, pp. 905– 914 doi: 10.1049/iet-com.2009.0125
Authorized licensed use limited to: University of Saskatchewan. Downloaded on August 09,2010 at 22:18:53 UTC from IEEE Xplore. Restrictions apply.
www.ietdl.org For the BTC built from the (15,11) Hamming codes, we also compare the variable SF method with another fixed SF method proposed in [11, 12]. In [11, 12], the authors use a pair of fixed SFs to reduce the inherent strong correlation between the intrinsic and extrinsic information. Their proposed extrinsic information is expressed as (see Eq. (9) in [12]) j
j
j
Li þ b Le ) b Li ] Lje ¼ uc [ud (b
h 2n . 24 dB. As can be seen from Fig. 5, similar to the AWGN case, the BER curves of the MBSOVA with and without the threshold are clearly better than those of the BSOVA and both of them are very close to the BER curves obtained with the MAP algorithm. The figure also clearly shows that imposing a threshold and having retransmission mechanism are needed in order to achieve a practical BER performance.
(32)
where (uc , ud) is a pair of fixed SF values. For SNR ¼ 1, 2 and 3 dB, the best fixed SF pairs are found to be (0.7, 1.0), (0.8, 1.0) and (0.9, 1.0), respectively. Since ud ¼ 1.0, this result means that the scheme with the best pair of fixed SF values essentially reduces to the single fixed SF value as in the first fixed SF method. Now we observe the performance improvement over Rayleigh fading channels. For simplicity, we simulate only the BTC constructed from the (15,11) Hamming code, and compare its BER performance achieved with BSOVA, MBSOVA and MAP algorithms. For a given fading amplitude hn in (1), the instantaneous SNR at the receiver is equal to h2n Es =N0 . Since the receiver is assumed to know hn perfectly, the SFs corresponding to SNR ¼ h2n Es =N0 in an AWGN channel can be used for the fading channel. It is well known (see, e.g. [22]) that the error performance over a fading channel is seriously affected by the event that the fading amplitude hn is very small. In order to obtain a reasonable error performance with a simple and short BTC under consideration, we need to set a threshold k for the instantaneous SNR at the receiver. When h2n Es =N0 , k, the coded system shall be in outage, that is, the turbo decoding will not be carried out and retransmission is requested. Performance comparison between the two cases, with and without a threshold is shown in Fig. 5. For the performance curves obtained with threshold in this figure, we set k ¼ 104=10 (Es =N0 ), which implies that we require
5
Conclusions
Applying SFs on the extrinsic information is a simple but efficient method for improving the performance of practical turbo decoding algorithm. The existing SF methods, however, overestimate the reliability values and the correlation between the intrinsic and extrinsic information in turbo decoding. To overcome these drawbacks, we have proposed in this paper a unified SF approach based on mathematical statistics. The proposed approach is applicable for any suboptimal SISO decoding algorithm and can be done systematically and in an off-line manner. Simulation results for simple BTCs that are built from short Hamming codes have shown that implementing the proposed SFs on the BSOVA makes its performance closely approach that obtained by the optimal MAP algorithm. Compared to a method previously proposed by Papke et al., our approach is simpler, but yet yields a better BER performance.
6
Acknowledgments
This work was supported by an NSERC Discovery Grant. Dian-Wu Yue’s work was also supported by the National Natural Science Foundation of China under grant 60672037, the Research Fund for the Doctoral Program of Higher Education of China Ministry of Education under grant 20092125110006, and by the open research fund of National Mobile Communications Research Laboratory, Southeast University under Grant W200810.
7
References
[1] BERROU C., GLAVIEUX A., THITIMAJSHIMA P.: ‘Near Shannon limit error correcting coding and decoding: turbo-codes (1)’. Proc. IEEE Int. Conf. on Communications (ICC), Geneva, Switzerland, May 1993, pp. 1064 – 1070 [2]
SIEGEL P.H., DIVSALAR D., ELEFTHERIOU E., HAGENAUER J., ROWITCH D.,
TRANTER W.H.:
‘The turbo principle: from theory to practice’, IEEE J. Sel. Areas Commun., 2001, 19, pp. 793–797 [3] WANG C.-H., WANG W.-T., CHAO C.-C.: ‘A unified structure of trellis-based soft-output decoding algorithms for turbo codes’, IEEE Trans. Commun., 2004, 52, pp. 1355 – 1366 Figure 5 BER comparison over a Raleigh fading channel with and without an SNR threshold for turbo decoding IET Commun., 2010, Vol. 4, Iss. 8, pp. 905– 914 doi: 10.1049/iet-com.2009.0125
[4] PAPKE L., ROBERTSON P., VILLEBRUN E.: ‘Improved decoding with SOVA in parallel concatenated (turbo-code) scheme’. 913
& The Institution of Engineering and Technology 2010
Authorized licensed use limited to: University of Saskatchewan. Downloaded on August 09,2010 at 22:18:53 UTC from IEEE Xplore. Restrictions apply.
www.ietdl.org Proc. IEEE Int. Conf. on Commun. (ICC), Dallas, USA, July 1996, pp. 102 – 106
[13] PAPAHARALABOS S., SWEENEY P., EVANS B.G., MATHIOPOULOS P.T.: ‘Improved performance SOVA turbo decoder’, IEE Proc. Commun., 2006, 153, pp. 586 – 590
[5] COLAVOLPE G., FERRARI G., RAHELI R.: ‘Extrinsic information in iterative decoding: a unified view’, IEEE Trans. Commun., 2001, 49, pp. 2088– 2094
[14] VOGT J., FINGER A.: ‘Improving the Max-Log-MAP turbo decoder’, Electron. Lett., 2000, 36, pp. 1937 – 1939
[6] BLAZECK Z., BHARGAVA V.K.: ‘A DSP-based implementation of a turbo decoder’. Proc. IEEE Globecom, Sydney, Australia, November 1998, pp. 3201 – 3205
[15] DOUILLARD C., BERROU C.: ‘Turbo codes with rate m/ (m þ 1) constituent convolutional codes’, IEEE Trans. Commun., 2005, 53, pp. 1630 – 1638
[7] STIRLING-GALLACHER R.A. : ‘Performance of sub-optimal normalisation schemes for a turbo decoder using the soft output Viterbi algorithm’. Proc. IEEE Int. Symp. on Pers. Ind. Mob. Radio Commun. (PIMRC), London, UK, September 2000, pp. 888 – 892
[16] LI Y., VUCETIC B.: ‘A generalized MLSE algorithm’. Proc. Int. Conf. on Neural Networks and Signal Processing, China, 10– 13 December 1995, pp. 718 – 721
[8] WANG Z., PARHI K.K.: ‘High performance, high throughput turbo/SOVA decoder design’, IEEE Trans. Commun., 2003, 51, pp. 570 – 579 [9] CHANG Y.-C., LAIN J.-K.: ‘Improved decoding with the bidirectional SOVA for turbo codes’. IEEE VTC’05, Sweden, Stockholm, 2005, 30 May– 1 June [10] CHEN J., LIN S., XU C.: ‘Bi-directional SOVA decoding for turbo-codes’, IEEE Commun. Lett., 2000, 4, (12), pp. 405– 407 [11] GHRAYEB A., HUANG C.X.: ‘Improvements in SOVA-based decoding for turbo-coded storage channels’, IEEE Trans. Mag., 2005, 41, pp. 4435 – 4442 [12] HUANG C.X. , GHRAYEB A. : ‘A simple remedy for the exaggerated extrinsic information produced by SOVA algorithm’, IEEE Trans. Wirel. Commun., 2006, 5, (5), pp. 996– 1002
914 & The Institution of Engineering and Technology 2010
[17] HAGENAUER J., OFFER E., PAPKE L.: ‘Iterative decoding of binary block and convolutional codes’, IEEE Trans. Inf. Theory, 1996, 42, pp. 429 – 445 [18] PYNDIAH R.M.: ‘Near-optimum decoding of product codes: block turbo codes’, IEEE Trans. Commun., 1998, 46, pp. 1003 – 1010 [19] ROBERTSON P., VILLEBRUN E., HOEHER P.: ‘A comparison of optimal and sub-optimal MAP decoding algorithms operating in the log domain’. Proc. IEEE Int. Conf. on Commun. (ICC), Seattle, USA, June 1995, pp. 1009 – 1013 [20] PAPOULIS A. : ‘Probability, random variables, and stochastic processes’ (McGraw-Hill Inc., Montreal, 1991) [21] ROUSSAS G.G.: ‘A course in mathematical statistics’ (Academic Press, Toronto, 1997) [22] WANG Z., GIANNAKIS G.B.: ‘A simple and general parameterization quantifying performance in fading channels’, IEEE Trans. Commun., 2003, 51, (8), pp. 1389–1398
IET Commun., 2010, Vol. 4, Iss. 8, pp. 905– 914 doi: 10.1049/iet-com.2009.0125
Authorized licensed use limited to: University of Saskatchewan. Downloaded on August 09,2010 at 22:18:53 UTC from IEEE Xplore. Restrictions apply.