A Stopping criteria for turbo decoding based on the LLR histogram Imed Amamra,
Nadir Derouiche
Laboratoire de Recherche en Electronique de Skikda (LRES) Université du 20 Aout 1955 Skikda, Algeria
[email protected] Abstract—The present paper proposes an early stopping method for iterative turbo decoding. Many criterions were proposed to date, motivated by a variety of reasons, such as increasing average decoding throughput or reducing average decoder power consumption. The method is devised on observing the behavior of LLR (Log-Likelihood Ratio). Simulation results in comparing the proposed method with some normalization techniques show that our method achieves an acceptable BER (Bit Error Rate) performance and reduces considerably the average number of iterations.
I.
INTRODUCTION
In recent years, turbo codes that achieve near-Shannon limit performance have attracted great interest and have been chosen for the third mobile communication standard (IMT2000/3GPP). As the decoding proceeds, a soft-in soft-out (SISO) turbo decoder plays an important role in determining the decoding quality. This SISO turbo decoder computes the a posteriori probability (APP), i.e. a reliability value, for each received information symbol.
RSC1
1
Puncturing Mechanism
interleaver
RSC2
1
or
2
2
Figure 1. Turbo encoder block diagram.
Techniques for early stopping of the iterative decoding of turbo codes are of interest for a variety of reasons, such as increasing average decoder throughput or reducing average decoder power consumption. In recent literatures, various forms of early stopping have been proposed [1-8], and they can be categorized into two classes [6]. One class is based on soft-bit decisions, such as cross entropy (CE), absolute loglikelihood ratio (LLR) measurement, mean estimation (ME), and a priori LLR measurement. The other class is based on hard-bit decisions, such as sign-change ratio (SCR), hard decision-aided (HDA), and sign-difference ratio (SDR). In addition, some methods are based on extra checking policies,
978-1-4673-0784-0/12/$31.00 ©2012 IEEE
such as cyclic redundancy check (CRC). Most stopping criteria cannot terminate the decoding process at half iteration, so the minimum controllable number of iterations is 1. II.
TURBO CODES
The basic turbo codes are made up with two parallel concatenated and identical recursive systematic convolutional (RSC) encoders, separated by an interleaver. The RSC encoders generate the systematic codeword which consists the parity bits followed by the information bit , .A typical structure of the turbo encoder with the coding rate (R) of 1/2 (with puncturing) or with the rate R of 1/3 is shown in Fig.1. The constituent encoders are generally used to the identical component codes which are the same constraint length and the generator polynomial [7]. The performance of a turbo code with the RSC encoders improves as the size of an interleaver in a turbo encoder increases, and depends on the structure of an interleaver. A turbo code with a block interleaver has better performances than that with other interleavers, when the frame size of an interleaver is small, and a turbo code with a random interleaver has better performances than that with other interleavers, when the frame size of an interleaver is large. In digital communication systems, an interleaver has been used to randomize the burst errors caused by the channel and to improve the correction capability of a channel coding. Also, an interleaver in a turbo encoder shuffles the input data bits. In a turbo code, an interleaver has an effect on the weight distribution, because the codeword of an interleaved information bit makes the different distance spectrum [7]. 1, … , , be the information bits, whose code Let , bits are BPSK modulated and transmitted through 0, Additive White Gaussian Noise (AWGN) channel. At the are signals corresponding to , turbo decoder, , , is the systematic signal, , are the parity where signals for a RSC1 and a RSC2 encoder, respectively. The first encoder encodes the input bit and the second encoder . We adopt the usual encodes the interleaved input bit strategy of terminating just one of the component codes [9].
699
The codeword output can be punctured to change the overall code rate. We denote by , the parallel concatenated turbo code with RSC encoders and . Where is terminated. Note that in general and get the same component codes. The RSC encoders are denoted by (FBoct , FFoct), where FBoct and FFoct are the feedback and the feedforward encoding polynomials, respectively. The feed-forward polynomial and the feedback polynomial of the generator polynomial for a RSC encoder are relatively prime. The feedback polynomial of the generator polynomial for a RSC encoder should be primitive to improve the BER performance of a turbo code. The effectiveness of the turbo decoding scheme is based on iterating the maximum a posteriori (MAP) algorithm, applied to each constituent code. In general, the MAP algorithm is implemented by means of a soft-in soft-out (SISO) decoder. This SISO decoder computes the a posteriori probability (APP), i.e., a reliability value, for each received information symbol. However, this computation is extremely complex owing to the multiplications and exponential operations required for the forward and backward recursions in the trellis diagram. In order to reduce the decoding complexity of the MAP algorithm, researchers have developed other SISO decoders, which are less complex and can be used instead of the MAP algorithm. Two of such algorithms are the Max-Log-MAP and the Log-MAP algorithms. The Log-MAP algorithm was proposed by Robertson et al. [10], which corrected the approximation used in the Max-Log-MAP algorithm and hence attained a performance virtually identically to that of the MAP algorithm at a fraction of its complexity. The basic iterative decoding structure is depicted in Fig.2. As shown, One SISO decoder takes the systematic sequence and the parity sequence (or ) as input and computes the log-likelihood ratio (LLR) of each information bit based on the trellis structure of the RSC.
follows. The branch metrics Γ are calculated from the received signals and the soft output of the previous Log-MAP is the channel decoder according to equation (1), where reliability [9]. Γ
1 2
,
1
2
a constant that will be omitted in the LLR ratio. The back-ward state metrics , the forward state metrics and the LLR are calculated in the following order using equations (2), (3) and (4) [9], and then the soft output is obtained. exp Γ
,
2
exp
Γ
,
3
| ∑
,
exp
Γ
,
∑
,
exp
Γ
,
4
Where , and are the received symbol sequence, the previous state and the present state of the trellis. After completing the final iteration process, the decoded hard decision data is obtained from the de-interleaved LLR sequence of the second Log-MAP decoder. In a Log-MAP turbo decoder, each component decoder make the forward recursion to compute the metric , then make the backward recursion to compute the metric . With metrics , and the branch transition metrics Γ , each component decoder for the other component produces the extrinsic information decoder. III.
LLR HISTOGRAM AS DECODING CONVERGENCE METRIC
Based on iterative decoding, the input a priori LLR of one component decoder comes from the output extrinsic LLR of the other component decoder. The observation of the LLRs of one component decoder can characterize the convergence of the turbo decoder toward the final decoded frame. Figure 2. Turbo decoder block diagram
200
Each Log-MAP decoder calculates the LLR for the input bits using the Log-MAP criterion. After defining the number of decoding iterations, the hard decisions are estimated from the LLR. The procedure of the Log-MAP algorithm is as
700
180 ité1 déc1 ité1 déc2 ité2 déc1 ité2 déc2 ité4 déc1 ité4 déc2 ité8 déc1 ité8 déc2
160 Histogramme (EbN0=1.75dB)
We consider the Log-MAP algorithm for the decoding of a turbo code. For the component decoders, the log-MAP algorithm is suitable for hardware implementation, due to its relative simplicity compared with the original MAP algorithm and has better performance than the Max-Log-MAP algorithm. The Log-MAP algorithm, which is suitable for the iterative decoding and has less complex hardware implementation without multiplication by using of “log” operation, is adopted as a SISO decoding algorithm [9].
140 120 100 80 60 40 20 0 -300
-200
-100
0 LLR Lyk
100
200
300
Figure 3. Convergence of the Histogram of LLR during iterating
In a Soft-In-Soft-Out decoding algorithm (Log-MAP decoding), the output LLR of the component decoder can be modeled with an independent Gaussian random variable, where the variance of the LLR corresponds to the variance of the AWGN channel, and its mean value to the transmitted systematic bit. That is the sign of LLR determines the binary symbol, negative for 0 and positive for 1, and the magnitude quantify the decision certainty. Hence, when values of LLR are close to zero, the decoder decision is ambiguous. The LLR histograms of the two component decoder outputs are shown in Fig.3 for each iteration, it is obvious that the curve converges to the Gaussian shape centered on two means, which represent the two binary symbols. In high SNR conditions, and by observing the number of erroneous bits in the frame to be decoded, after each iteration for the two component decoder outputs, we can conclude that the major parts of the frame are correctly and completely decoded (no erroneous bits) just after a few iterations without reaching the maximum number of iterations. In the other hand, in low SNR conditions, the maximum number of iterations is not sufficient to reach zero erroneous bits, moreover further iterations don’t improve the situation and the values of LLR are saturated. IV.
PROPOSED EARLY TERMINATION METHOD
Automatic Repeat Request (ARQ) message to the transmitter for data retransmitting. V.
SIMULATION RESULTS
In this section we investigate the performance of the proposed method in terms of Bit-Error-Rate and average number of iterations, as a function of ⁄ , where is the the noise power spectral energy per information bit and density. The following simulations are conducted over AWGN channel, with a BPSK modulation. We performed with turbo codes of rate 1⁄3 , that have the generator polynomial [7 , 5] in octal, and with a random interleaver. For each ⁄ value, we transmitted 1000 data frames, each frame of length N=1568 bits. The maximum number of iterations allowed was fixed to 10. For the bins of the HLLR, we used different widths (5, 6, 7, 9) over the interval [-3width:3width]. These values were chosen by trial and error, with the objective of covering a reasonable range of undetected frame-error rates. Fig.4 and Fig.5 show examples of how the LLRs (bit reliability) histogram evolves with iterations in the two cases (solvable and unsolvable conditions respectively). The HLLRs are shown for one selected frame at the end of each halfiteration. For the unsolvable frame, we see that the bitreliabilities stay near zero for more than three iterations.
In high SNR conditions, it is expected that the decoder decodes successfully, and it can stop operating at early stage without further iterations. On the other hand, the decoder should stop operating for unnecessary iterations in low SNR conditions when there is an unsolvable situation. From the HLLR discussion in section 3, it was shown that the histogram of the output LLR gives an important information about the convergence of the decoding process to one of the above two situations. Therefore, we propose a new stopping criterion based on the HLLR metric. In turbo decoding, the magnitude of the LLR is an index of reliability for the decoded information. So we divide the variation interval of the LLR into sub-intervals that we call bins. However, by counting the values of LLRs that fall in each bin for the whole decoded frame after each half iteration (after each component decoder output), we can observe their change during iterations or half iterations. The number and the size of the bins are important in terms of hardware implementation complexity or the efficiency of the stopping criterion, especially the central one (around zero).
HLLR of a solvable frame 900
800 0.5 iter 1 iter 1.5 iter 2 iter 3.5 iter 4 iter 7.5 iter 8 iter
700
600
500
400
300
200
100
0 -20
-15
-10
-5
0 LLR bins
5
10
When the unsolvable decoding situation is encountered, the bins of the extremities remain zero and the central bin doesn’t fall under some value and oscillates around it. In this case the decoding can be terminated after this observation, precisely when the central bin value is still more than 4% of the frame length, and decreases with less than 5% of its previous value after 3 iterations, so the decoder can send an
701
20
Figure 4. HLLR of a solvable frame HLLR of an unsolvable frame 800
700
600
0.5 iter 1 iter 1.5 iter 2 iter 3.5 iter 4 iter 7.5 iter 8 iter
500
Clearly, the decoding is complete and can be terminated when the central bin of the histogram is zero, which means that there are no ambiguous values of LLRs. Therefore further iterations do only amplify the absolute values of LLRs.
15
400
300
200
100
0 -20
-15
-10
-5
0 LLR bins
5
10
15
Figure 5. HLLR of an unsolvable frame
20
To compare the proposed stopping criterion with the previous ones, we chose two other criterions: 1) The magic Genie that is an unrealizable rule, which is useful for establishing an unbeatable performance benchmark against which other criterions are measured. 2) HDA (Hard Decision Aided) [8] that is a well known rule which attempts to detect unreliable decoded sequences by evaluating the tentative decoded bits (hard bit decisions) at the end of each iteration in comparison with the previous iteration. 0
10
Genie HDA HLLR5 HLLR6 HLLR7 HLLR9
-1
10
-2
BER
10
-3
10
-4
10
-5
10
example at ⁄ 0.5 , the HLLR method achieves an average number of iterations less than the HDA with a difference of about 0.835 iteration. This difference can be interpreted as a reduction of complexity and a save of power consumption of about 25.14% by eliminating unnecessary operations. Of course, this is the coast of the slight degradation in BER performance (-1.2133e-005). VI.
CONCLUSION
Iterative turbo decoding achieves a good performance as the number of iterations increases along with the decoding process. However too many iterations cause computational burden and latency. Stopping rules treats this problem by finding an acceptable compromise between performance and complexity through reducing the number of iterations. The method presented in this paper has a simple criterion and can be introduced with minimal computations in the implementation. We have focused this rule in reducing considerably the average number of iterations compared to conventional HDA at the expense of a negligible loss of performance. The new method does not need additional memories for saving calculations between iterations because it operates with a few parameters and can stop iterating at the half of an iteration.
-6
10
-2
-1.5
-1
-0.5
0 Eb/N0
0.5
1
1.5
2
REFERENCES
Figure 6. BER performance of the proposed criterion with different bin widths in comparison with Genie and HDA
We simulated the performance of the proposed method in accordance with HDA and Genie for comparison purposes. Fig.6 shows the results of the BER versus ⁄ . All methods have almost the same performance in view of BER in the region of low signal-to-noise ratio. When ⁄ is increasing, a slight performance degradation can be seen compared to the reference curves, which is acceptable for most communication systems (BER