2014 IEEE 22nd Signal Processing and Communications Applications Conference (SIU 2014) 1 New Early Termination Methos For Turbo Decoders Orhan Gazi Abstract— Turbo codes have large latency due to iterative decoding steps and complex decoding algorithms. To decrease the decoding delay it is essential to terminate the decoding operation as soon as there is sufficient information for data bits. Early termination can be achieved by defining stopping criteria beyond which negligible achievement is observed. In this article, we investigate some efficient stopping criteria based on the variance of extrinsic information and population of the bits below a predetermined threshold. We show that variance based method is better than its previously suggested counterparts, and threshold based method is the least complex one considering the available methods. I. INTRODUCTION T Urbo codes were introduced in 1993 by [1]. This was a breakthrough in coding society. Turbo codes employ complex soft decision decoding algorithms. For practical use of turbo codes in communication systems, it is essential to find high speed implementation techniques. High speed implementation can be supported either by using parallel processors or by reducing the complexity of the decoding algorithms. The latter can be accomplished by reducing total iteration number. This can be done by early termination of the decoding operation without degrading the code performance. Recently, there are a number of stopping criteria proposed. Kullback in [2] introduced cross-entropy (CE) which is used to compare a true distribution to a reference one. CE is used as a stopping criteria in [3]-[4] where output distributions of two component decoders are inspected by CE rule. Based on CE criterion another stopping criteria called sign change ration (SCR) is studied in [4]. Some less complex stopping criteria such as mean estimate (ME) [5], sign difference ratio (SDR) [6] and variance estimate (VE) [7] are also available in the literature. ME method considers the absolute values of LLRs. SDR criteria accounts the number of sign differences of the extrinsic information between consecutive iterations at a component decoder. In VE method variance of the LLR of the extrinsic information is taken into consideration for early termination. The aim of the stopping criteria is to reduce the computation amount, therefore the complexity of the stopping criteria should be as low as possible otherwise there may not be a big advantage of the stopping rule. Stopping rules are especially useful from medium to high SNR regions. Since at high SNR regions for a medium size interleaver only 1 or 2 iterations are necessary. On the other hand at low SNR regions due to poor performance too many iteration numbers are required. The general algebraic stopping models designed for turbo decoders usually are complex and requires extra hardware Orhan Gazi (phone: +90 312 284 45 00-4015, e-mail: o.gazi@cankaya.edu.tr), is with Electronics and Communication Engineering Department, Cankaya University, Ankara, Turkiye. 1215 and additional calculations. Since, communication systems are constructed with known encoder and decoder units, our approach in this article is to propose stopping method for communication systems with certain encoder decoder units. We propose two new early termination technique. One is based on the variance of the extrinsic information, and it is shown that the proposed technique is better than the one proposed in [7] which is also based on variance of the extrinsic information.In our second approach, we define a threshold zone for the extrinsic information, and monitor the population in the zone between thresholds. Thresholds are determined by simulations for certain turbo codes. When the population in the threshold zone goes below a predefined number, stopping decision is taken. We compare our approach with the other ones by simulation results. Considering the complexity of stopping criteria our second approach has the least complexity and simple to implement. The outline of the paper is as follows. Section II is devoted to the review of MAP algorithm. In Section III, we first introduce the variance and threshold-zone approaches and then present the simulation results. Finally, conclusions are drawn in Section IV. II. T HE MAP A LGORITHM W ITH T URBO D ECODER In this section we review the turbo decoding operation with MAP algorithm [3] and point out expressions which are used for variance computation and population based stopping criteria. The turbo codes under consideration have component codes RSC(1, 5/7)octal . BPSK modulation is used. The aposteriori probability for information bit uk = +1 given the received signal y is P (uk = +1|y) = αk (s )γk (s , s)βk+1 (s) (1) s ,s uk =1 where αk (s ), γk (s , s), and βk+1 (s) are the forward state, transition, and backward state probabilities. The log values of the a-posteriori, forward state, backward state, and transition probabilities are defined as, P (uk = +1|y) = log(P (uk = +1|y)) α k (s ) = log(αk (s )) βk+1 (s) = log(βk+1 (s)) γ k (s , s) = log(γk (s , s)). Using the above definitions, equation (1) can be written as, P (uk = +1|y) = log eαk (s )+γk (s ,s)+βk+1 (s) (2) s ,s uk =1 which can further be expressed for a turbo code with rate 1/2 constituent codes RSCs(1, 5/7)octal as, 2014 IEEE 22nd Signal Processing and Communications Applications Conference (SIU 2014) 2 TABLE I α (s )+ yp cp +β (s) yu k+1 σ2 e k , P (uk = +1|y) = 2 + L1e21 + log σ AVERAGE ITERATION NUMBER AND BER RESULTS FOR DIFFERENT VARIANCE THRESHOLDS , GM MEANS GENIE M ETHOD , K IS THE MULTIPLYING FACTOR USED IN s ,s uk =1 (3) where yu and yp are the received signals for BPSK modulated data and parity bits, σ 2 is the noise variance, cp is the BPSK modulated parity symbol in the trellis diagram. L1e21 is the extrinsic information for bit ’1’ supplied by the accompanying component decoder. In a similar manner the log a-posteriori probability for information bit ’0’ is expressed as α (s )+ yp cp +β (s) −yu k+1 σ2 P(uk = 0|y) = 2 + L0e21 + log e k . σ s ,s uk =1 (4) Eb /N0 1dB 1.2dB V arth 0.880 0.988 0.990 0.992 0.992 0.994 0.997 - log10 (BER) −2.79 −4.64 −4.73 −4.98 −4.92(GM) −4.23, K=10 −4.43, K=14 −4.57, K=16 −4.74, K=18 −5.30 −5.40 −5.51 −5.62(GM) −4.83, K=10 −4.98, K=12 −5.06, K=14 −5.34, K=16 [7] Avg. Itr. Num. 2.47 3.86 3.94 4.04 2.99(GM) 3.90 4.38 4.53 4.71 3.43 3.50 4.07 2.5(GM) 3.69 3.97 4.18 4.35 where yu , and yp are the received signals for BPSK modulated data and parity bits, cp is the BPSK modulated parity symbol in trellis diagram, L0e21 is the logarithmic extrinsic information supplied by the second decoder to the first one. Using the aposteriori probabilities, log likelihood ratio is defined as constituent codes in turbo decoder. Frame length is chosen as 1024. S-random (S = 15) interleaver is used. We compared the simulation results with the one obtained using the GENIE method [8] where it is assumed that the receiver knows the transmitted frames, and compares them to the decoded frames, P (uk = 1|y) LLR = log if exact matching occurs iteration is stopped, otherwise next P (uk = 0|y) iteration is performed. In [8] it is shown for Eb /N0 = 1dB = P(uk = 1|y) − P (uk = 0|y) that average iteration number with any stopping criteria is at α (s )+ yp cp +β (s) 2yu 1 0 k k+1 2 σ = 2 + Le21 − Le21 + log e − least one more than the one obtained with GENIE method. We σ now explain both approaches in the following sub-sections. s ,s uk =1 yp cp log eαk (s )+ σ2 +βk+1 (s) A. Variance Approach s ,s,u =0 k (5) where L1e21 and L0e21 are the logarithmic extrinsic bit probabilities for bits ’1’ and ’0’, the actual extrinsic bit probabilities 1 0 e1 are Pe1 = eLe21 , Pe0 = eLe21 . This leads to Le21 = log( P Pe0 ). Let’s denote the extrinsic information supplied by the second decoder to the first one L1e21 −L0e21 by Le21 and from equation (5) the extrinsic information supplied by the first decoder to the second one is: Le12 = log eαk (s )+ yp cp σ2 k+1 (s) +β s ,s uk =1 log eαk (s )+ yp cp σ2 k+1 (s) +β − . (6) s ,s uk =0 III. E ARLY T ERMINATION F OR T URBO D ECODERS In this section we will consider two different approaches for the early termination of the turbo decoders. In our first Pi i i approach variance of |Pe1 −Pe0 | and |log( Pe1 i )| are considered e0 separately. The second approach considers the populations of Pi i i − Pe0 | and |log( Pe1 |Pe1 i )| below a predetermined threshold. e0 We tested our early termination methods by turbo codes. For our simulations, we employed RSCs (1, 5/7)octal for 1216 In [7] using the variance of extrinsic information the termination condition was suggested as V ar(Lie21 ) > K × V ar(L1e21 ), i.e., iteration is stopped when the variance of the LLR of the extrinsic information at ith iteration is K times greater than that of the first iteration. In our approach, we i i compute the variance for |Pe1 − Pe0 | and check whether it is greater than a predetermined threshold or not. The stopping i i decision is taken when the variance(|Pe1 − Pe0 |) is above the i i predetermined threshold. In Fig. 1 variance(|Pe1 − Pe0 |) v.s. iteration number ’i’ is plotted. It is clear from Fig. 1 that for different Eb /N0 values variance saturates for different iteration numbers beyond which no change in variance is observed. It is clear from Fig. 1 that we can determine a threshold for variance of (|Pe1 − Pe0 |) and use it as a stopping criteria. In Table 1 the performance of the variance-threshold based approach along with average iteration numbers are depicted. It is obvious from tabulated data that the proposed technique achieves almost the same performance as that of the one by GENIE method with one more iteration. In addition, the proposed technique is better than the one in [7] in terms of BER and average iteration number. B. Population Approach We have two sub categories for population approach. 2014 IEEE 22nd Signal Processing and Communications Applications Conference (SIU 2014) |P −P | population in threshold−zone Variance(|P −P |) w.r.t Iteration Number e1 3 e1 e0 e0 400 1 Eb/N0=1.2dB Eb/N0=1dB Eb/N0=0.8dB Eb/N0=0.6dB E /N =0.4dB 0.9 b E /N =1.2dB b 0 Eb/N0=1dB Eb/N0=0.8dB Eb/N0=0.6dB 350 0 300 |Pe1−Pe0| population Variance 0.8 0.7 0.6 250 200 150 100 0.5 50 0.4 0 0 2 4 6 8 Iteration Number 10 12 14 16 Fig. 1. Variance of |Pe1 − Pe0 | vs iteration number. Interleaver Size=1024. TABLE II AVERAGE ITERATION NUMBER AND BER POPULATION THRESHOLDS Eb /N0 0.8dB 1dB 1.2dB Np 36 20 6 10 4 6 - 2 4 6 8 Iteration Number 10 12 14 16 Fig. 2. |Pe1 − Pe0 | population in threshold-zone vs iteration number. Interleaver Size=1024. Pth = 0.5 TABLE III RESULTS FOR DIFFERENT AVERAGE ITERATION NUMBER AND BER RESULTS FOR DIFFERENT POPULATION THRESHOLDS Ñth , AND P̃th = 3 Np , Pth = 0.75, |Pe1 − Pe0 | < Pth . log10 (BER) −3.64 −4.03 −4.00(GM) −4.90 −4.81 −4.92(GM) −5.62 −5.26 −5.62(GM) 0 Avg. Itr. Num. 4.04 4.33 3.71(GM) 4.06 3.82 2.99(GM) 3.63 3.43 2.50(GM) Eb /N0 1dB 1.2dB 0.8dB 1) First Population Approach: In our first population approach, for each iteration i we check the inequality i i − Pe0k | < Pth 1 if |Pe1k w(k) = 0 otherwise where k denotes the information bit, and takes values k = 1 . . . 1024. With the w(k) definition, the termination condition can be stated as: terminate if k w(k) < Np , otherwise go on with next iteration, Pth and Np are probability and population thresholds. Figure 2 shows k w(k) population in threshold-zone for different Eb /N0 values and Pth = 0.5. It is seen from Fig. 2 that initially there is a sharp drop in population which saturates after certain iteration numbers. The performance of the proposed technique is tabulated in table II where it is that the proposed technique achieves GENIE method’s performance with only one more iteration. 2) Second Population Approach: In our next population approach, we check the inequality Pi 1 if |log( P ie1k) | < P̃th , w̃(k) = e0k 0 otherwise. In a similar manner the termination condition can be stated as: terminate if k w̃(k) < Ñp , otherwise continue, Ñp is the predetermined population threshold. The simulation results are depicted in Table III where it is seen than with one more iteration the proposed schemes 1217 p N 15 17 8 10 22 32 100 - log10 (BER) −4.70 −4.60 −4.92(GM) −5.40 −5.30 −5.62(GM) −3.95 −3.83 −3.26 −4.00(GM) Avg. Itr. Num. 3.92 3.87 2.99(GM) 3.57 3.48 2.50(GM) 4.63 4.46 3.76 3.71(GM) approximately achieve the same performance as the one with GENIE method. Since, in practical applications usually logMAP based turbo decoder is used, the second population approach is the most suitable one for practical applications considering the complexity and easy of implementation. In [9] all the available stopping criteria are inspected, and shown that all require some additional computation. Hence, there is always an increase in total computation amount when stopping algorithms are employed. However, in our second population approach when log-MAP algorithm is employed the additional computation amount is almost negligible. The only overhead is to check the inequality and increase bit counter and when it passes threshold level the stopping decision is taken. As a result, it can be concluded that instead of using generalized stopping methods it is logical to find some threshold levels for known decoders units which are employed in communication units. IV. C ONCLUSION In this article, we inspected two new early stopping criteria for turbo codes which are based on variance and threshold. We see from simulation results that, the previously proposed variance stop criteria in [7] is less accurate compared to threshold based variance stopping criteria. For practical use, the second 2014 IEEE 22nd Signal Processing and Communications Applications Conference (SIU 2014) population approach proposed is the best from implementation perspective due to its much lower complexity compared to other stopping criteria. From simulation results, it is concluded that population based approach gives similar performance as variance method, and its complexity is much smaller compared to other early stopping criteria. For communication systems where latency is a critical issue population threshold based approach is more suitable due to its much lower complexity compared to other stopping methods. R EFERENCES [1] C. Berrou, A. Glavieux, and P. Thitimajshima, ”Near Shannon limit error-correcting coding and decoding: turbo codes”, in Proc. IEEE Int. Conf. Commun., vol. 2, Geneva, Switzerland, 1993, pp. 10641070. [2] D. J. C. MacKay, Information theory, inference, and learning algorithms. 1st ed., UK: Cambridge University Press, 2003. [3] J. Hagenauer, E. Offer, and L. Papke, ”Iterative decoding of binary block and convolutional codes,” IEEE Trans. Inform. Theory, vol. 42, pp. 429445, Mar. 1996. [4] R. Y. Shao, S. Lin and M. P. C. Fossorier, ”Two simple stopping criteria for turbo decoding,” IEEE Trans. Communication, vol. 47, pp. 11171120, Aug.1999. [5] Z. Fengqin. and I. J. Fair, ”New error detection techniques and stopping criteria for turbo code,” in Proc. IEEE Electrical and Computer Engineering Conf., 2000, pp.58- 62. 80 [6] D. Bokolamulla and T. Aulin, ”A new stopping criterion for iterative decoding,” IEEE Commun. Society, 2004, pp. 538-541. [7] B. Kim and H. S. Lee, ”Reduction of the Number of Iterations in Turbo Decoding Using Extrinsic Information,” in Proceedings of IEEE TENCON 99, Inchon, South Korea, 1999, pp. 494-497. [8] Y. S. Kim, S. W. Ra, ”A Simple Efficient Stopping Crterion for Turbo Decoder,” ETRI Journal, vol. 28 No. 6, December 2006. [9] K. Cheng, ”Comparison and Analysis of Stopping Rules for Iterative Decoding of Turbo Codes”, M.S. Thesis, Russ College of Engineering and Technology of Ohio University, June 2008. 1218 4