Turbo Decoder for Low-Power Ultrawideband Communication Systems

A new method to reduce the computational complexity of the turbo decoding in ultrawideband (UWB) orthogonal frequency division multiplexing (OFDM) system is proposed. Existing stopping techniques for turbo decoding process using constrained decoding assume fixed signal-to-noise ratio (SNR) for all the OFDM symbol bits so they fail to yield an acceptable bit-error rate (BER) performance in multicarrier systems. In this paper, we propose a bit-level stopping technique for turbo decoding process based on the constrained decoding method. In this technique, we combine the cyclic redundancy check (CRC) with an adaptive threshold on the log likelihood ratio (LLR) on each subcarrier to detect for convergence. The threshold is adaptive in the sense that the threshold on the LLR of a bit is determined by the average SNR of the OFDM symbol and the channel gain of the transmission subcarrier. Results show that when the channel state information (CSI) is used to determine the threshold on LLR, the stopping technique can reduce the computational complexity by about 0.5–2.5 equivalent iterations compared to GENIE turbo without degradation in the BER performance.


INTRODUCTION
A leading candidate for fast data transfer is the ultrawideband (UWP), a wireless technology designed for short-range Personal area networks (PANs).High data throughput and low power consumption for distances of less than 10 meters are among the main features of UWB orthogonal frequency division multiplexing (OFDM) systems, which are very applicable to digital home requirements.Due to the Shannon limit approaching performance, turbo codes are expected to play a key role in UWB systems.Turbo codes make it possible to increase data rate without increasing the power of transmission, or they can be used to decrease the amount of power used to transmit at a certain data rate.However, the increase in computational complexity, power consumption, and latency due to the additional computations is big considerations before implementation in UWB systems.
The main challenge in implementing turbo codes in the UWB systems is the consequent complexity consideration in spite of the high bit-error rate (BER) performance and savings in transmission power consumption as pointed out above.The complexity of Log-MAP is approximately four times that of Viterbis algorithm for a single iteration, which means that to complete 10 full iterations in turbo code, the computational complexity will be around 40 times the computational complexity of the convolutional decoder in addition to increased power consumption and latency due to additional computations.The attractive enhancement in performance and reduction in transmission power for the system with turbo codes makes it important to study the implementation issue in UWB systems in order to reduce the complexity to a reasonable level while maintaining the same performance.
Approaches for reducing the complexity of turbo decoder have appeared and are referred to as early detection or stopping techniques [1][2][3][4][5][6][7][8].These approaches are based on stopping the iterative process of turbo decoder at a certain point instead of continuing a fixed number of iterations.A criterion is used to determine when the iterative process can be stopped with minimum loss in BER performance.All previously proposed stopping techniques were based on single-carrier systems, where the signal-to-noise ratio is assumed to be constant for all frame bits.These approaches may not be directly implemented for turbo decoder in International Journal of Digital Multimedia Broadcasting multicarrier systems like UWB OFDM, since each bit (or group of bits) undergoes different signal-to-noise ratios (SNRs) due to the different fading parameters of different subcarriers.The resultant different SNRs for each subcarrier after channel equalizations imply different reliabilities, this necessitates different stopping strategies at each subcarrier in turbo decoding.
In this paper, we introduce a new criterion for bit-level stopping for turbo decoders on UWB systems that assign different stopping strategies to each subcarrier based on the average SNR and the instantaneous SNR of that subcarrier.The proposed technique uses constrained decoding method [1,5] by clamping the bits satisfying the log likelihood ratio (LLR) threshold condition, and stops the decoding process when the cyclic redundancy check (CRC) detects that the whole frame is correctly decoded.The threshold is adaptively determined using channel state information (CSI) values of the UWB channel.The results are compared to the ideal case of the stopping techniques, which is called the GENIE case.In GENIE stopping technique, the decoder is assumed to know all the transmitted bits and stops the decoding process when all the bits are correctly decoded, unless the number of iterations reaches the maximum allowed iterations.Therefore, GENIE case is assumed to have the best BER performance and the least number of iterations that can be achieved by any frame-based stopping criterion for a given BER performance.
The remainder of the paper is organized as follows.The quasistatic UWB channel model and general assumptions made for the system model used in the simulations are given in Section 2. In Section 3, we briefly review the current stopping techniques and present simulation results for existing packet-level stopping techniques in UWB channels.The propose stopping technique for turbo decoder is presented in Section 4.

SIMULATION ENVIRONMENT
The UWB channel is classified as multipath quasistatic fading channel, meaning that the channel impulse response remains almost constant for a number of transmitted frames and the channel estimation gives almost perfect estimates for the CSI.The channel modeling subgroup of the IEEE 802.15.3 committee proposed a channel model for UWB systems [9] based on the S-V model [10] for arriving multipath components, which are considered to arrive in clusters of rays (paths).The rays have independent uniform phases, and independent Rayleigh amplitudes with variances that decay exponentially with cluster and ray delays.The clusters and the rays within the cluster form Poisson arrival processes with different, but fixed, rates.The clusters are formed by the building superstructure, while the individual rays are formed by objects in the vicinity of both the transmitter and the receiver.According to [9], the channel impulse response for the mth transmitted multiband OFDM symbol is given by where α m (c, r) and ρ m (c, r) are the multipath gain and reflection coefficient, respectively, of the rth ray in the cth cluster, and the reflection coefficient has equal probability on "+1" or "−1."The total number of clusters is C, each contains R c rays.T m c and τ m c,r are the excess delay of the cth cluster and the excess delay of the rth ray in the cth cluster, respectively.The values of α m (c, r), ρ m (c, r), R c , T m c , and τ m c,r are assumed to be constant for each OFDM symbol transmission (quasistatic channel).The corresponding channel frequency response for this realization at the kth subcarrier is given by where f 0 is the first subcarrier (lowest frequency) of the OFDM symbol, and Δ f is the bandwidth of each subcarrier.
The CRC turbo-encoded sequence is first interleaved and converted to modulation symbols and then the latter is OFDM modulated.Frequency hopping is applied to the OFDM symbols before transmitting them through the UWB channel.At the receiver, the channel output is converted back to the frequency domain by fast Fourier transform (FFT) after removing the cyclic prefix.In the frequency domain, if we let X = [X 1 , X 2 , . . ., X N ] T be the binary phase shift keying (BPSK) modulated baseband symbols transmitted in a single OFDM symbol, then the received symbols where and N is the number of subcarriers.
The matrix H components "channel gains" are used to equalize the received signal Y.The resultant soft channel output BPSK demodulated vector after equalization For all the simulations in this paper, the channel is assumed to be perfectly estimated and there is no intercarrier interference (ICI) (i.e., the delay spread is less than the cyclic prefix).All interleavers used in the simulation model, the turbo encoder interleaver, and the channel interleaver which proceeds the OFDM modulation, are random interleavers.After adding the CRC sequence for the frame, the 1024 bit frame is turbo encoded with 1/2 (7, 5) oct recursive systematic convolutional (RSC) encoder.For each UWB channel model, CM1 line of sight (LOS) (0-4 m), CM2 nonline of sight (NLOS) (0-4 m), CM3 NLOS (4-10 m), and CM4 extreme NLOS, the channel impulse response is obtained randomly according to the channel model characteristics in [11].

REVIEW OF THE CURRENT STOPPING TECHNIQUES BASED ON CRC DETECTION
It is noted from simulations of turbo codes that after a certain number of iterations, the improvement in BER performance for any additional iteration is so small that the decoding process can be stopped with minimum degradation in performance.Considering this, many researchers have sought the best method to detect the stopping point considering three main targets: (1) to maintain the performance degradation (if the stopping method results in a degradation) within certain limits from the performance of turbo decoder with fixed number of iterations; (2) to minimize the number of iterations while keeping in mind the first objective; (3) to assure that the added computation complexity for detecting the early stopping point should not exceed the computation complexity reduced by stopping the iterations.Generally, stopping techniques can be categorized into three different classes according to the clamping level of bits: frame level, packet level, and bit level.The framelevel stopping technique terminates the iterative process for the entire frame only when the condition for termination has been satisfied.On the other hand, packet and bitlevel stopping techniques use constrained decoding by only clamping the bits that are satisfying the criterion condition and continuing on decoding process for remaining bits.There are many examples in the literature of stopping techniques based on frame level, but few methods use the bitand packet-level terminations.An example of the bit-level stopping technique is the method [2] which implements a trellis slicing algorithm to detect information and codeword symbols as well as state variables during the decoding.However, since the slicing in [2] is based on LLR values, a very large error floor may result.
A generic packet-level method for early detection in iterative decoding processes is introduced in [1], which suggests dividing the full frame into smaller packets and adding a small CRC sequence to each individual packet.The CRC sequences are used at the receiver as an inner code to detect any decoding error in the turbo-decoded packet after each half iteration.If a certain packet is error-free, the decoder stops decoding "constrain" its bits.The bits found by CRC detection stage to be correct are constrained on the trellis in the following decoding stages so that the number of possible paths are reduced.
The method suggested in [1] is an efficient method when implemented for single-carrier systems.It reduces the average computational complexity by reducing the number of paths in trellis as the termination process starts to clamp the correctly decoded packets.However, the constrained decoding methods can lead to error propagation if the clamped bits were not correct.By observing the performance of CRC detection techniques, it was noted that there is a chance of erroneously determining that a CRC protected packet to be correct while it is not (the misdetection in CRC decoder).If a CRC misdetection occurs, some bits will be erroneously clamped; consequently, the number of search paths for the decoding process will be limited and potentially lead to decoding errors for the neighboring bits.
Simulations show that error propagation problem is more serious in multicarrier channels than single-carrier channels.This might be due to the fact that every bit (or group of bits) is transmitted over a different channel with different SNRs, and since the bits with low SNR are more likely to be erroneously clamped than bits with high SNR, the effect of low SNR bits on the performance will dominate over the effect of bits with high SNR, especially for the hard to decode frames.Thus, a good termination method for multicarrier systems (such as UWB OFDM) should take into account the different SNRs for different bits if constrained decoding is implemented.
The error propagation in CRC early stopping techniques can be alleviated by setting the minimum number of CRC detected correct packets (ρ min ) required before starting to clamp their bits.Figure 1 shows the BER performance of a turbo decoding in the UWB CM1 channel with CRCstopping criterion that starts searching for correct packets immediately after the first stage of decoding and starts clamping bits when ρ min = 1, 4, and 8, respectively, packets are found to be correct.

NEW STOPPING TECHNIQUE
In single-carrier systems, the channel reliability, which can be obtained by measurement of the channel at the receiver input, is given by L c = 4R(E b /N 0 ) which is four times the SNR at this single carrier, where R is the code rate.However, in multicarrier systems such as MB-OFDM, each subcarrier has a different fading coefficient (frequency channel response) and thus will have different SNR value from adjacent subcarriers.Therefore, it is more reasonable to derive the channel reliability for each subcarrier from the SNR of that subcarrier.In our system, we use the following relation to calculate channel reliability values that will be multiplied by the corresponding soft input bits: where the part (E b /N 0 )|H i | 2 represent the instantaneous SNR of the channel, E b /N 0 is the average SNR for all carriers, and |H i | is magnitude of the channel frequency response at subcarrier i as shown in (2).As shown in Figure 2, large improvement in BER performance is gained when this relation is used to calculate channel reliability from the CSI values obtained from the channel estimator.In this paper, we show only the results for the turbo decoder using the channel reliability obtained from (4).
In this section, we propose a CRC-based early detection method combined with a bit-level stopping using threshold on LLR.The CRC early detection method serves as an accurate method to determine when all the bits of decoded frame have converged to the correct sequence, and the LLR threshold method works as bit-level stopping for early stages of the decoding process.The bit-level stopping threshold on LLR in our the proposed technique differs from one bit to another and is dynamically updated for each bit from the CSI, unlike the bit-level stopping technique proposed in [2].
For easy-to-decode frames, the LLR output after each decoding stage keeps growing and the hard decision output converges more to the correct sequence.While the change in magnitude of LLR output might be large for easy-todecode frames, it is small for hard-to-decode frames.The average signal-to-noise ratio has significant effect on the difference between LLR values after each iteration.One way to implement an efficient bit-level early detection is to monitor the magnitudes of the LLR for the decoded bits and clamp the bits that exceed a certain LLR threshold.However, it was noted from simulations that, in general, the hard-decoded outputs and the magnitude of LLR of the bits carried over subcarriers with small SNR are affected by the magnitude of LLR of the neighboring bits with high SNR.Hence, when designing an early detection method that is based on thresholding of LLR, it is crucial to consider  two main factors: the average SNR of the OFDM symbol (E b /N 0 ) and the instantaneous SNR at each subcarrier (E b /N 0 ) i .This threshold should increase when the average SNR increases and it should be higher for the bits conveyed on subcarriers with low SNR, so that the bits carried over low SNR subcarriers will not be misdetected.One simple implementation satisfying the above two main factors for this threshold is the following: where L max is a multiplicative factor and is used to adjust the maximum threshold.H i is channel state information that is given in (2), and l min is a constant equal to fixed percent of L max and is used to adjust the minimum threshold.The value of l min is chosen experimentally to minimize the loss in BER performance and to maximize the percent of early detected bits.The normalization to the maximum term in the denominator (max j (|H j | 2 )) can be set to a fixed value to simplify the implementation.where, in this example, we chose linear equations to relate average SNR value with the maximum threshold, however, the maximum threshold for each E b /N 0 can be selected differently so that the maximum threshold L max increases when the average SNR increases.The relation between the value of the CSI for a subcarrier and the corresponding threshold on LLR for the bits carried over this subcarrier, for two values of E b /N 0 = 1.5 dB and 3 dB, is shown in Figure 4, where the maximum value for CSI is assumed to be 3 dB.The results in Figure 3 show that the BER performance of the CSI-CRC-turbo decoder will have small degradation when the threshold has more tolerance (as the maximum threshold L max decreases).At this point, it is important to compare the reduction in computational complexity resulting from the new stopping technique for different thresholding strategies after each decoding stage.Figure 5 displays the average number of bits found to be correct after each decoding stage by the proposed stopping technique applying the three thresholding strategies Th 1 , Th 2 , and Th 3 .In the case where the threshold Th 1 was used, about 47% of the bits on average will be clamped after the first decoding stage (after 0.5 iteration) at E b /N 0 = 3 dB, and about 89% and 98% of bits on average will be clamped after 1.0 and 1.5 iterations, respectively, which results in a large reduction in computational complexity.Comparing these numbers to the GENIE turbo, at the same SNR, about 2%, 53%, and 88% of bits on average will be decoded by the 0.5, 1.0, 1.5 iterations , respectively.Since there is no bit-level stopping for the case of GENIE turbo (which is the ideal case when the receiver is assumed to know all the received bits sequence and so stops the decoding process when all frame bits are found to be correctly decoded), the curves in Figure 5 for the GENIE case represent the percentage of the total transmitted frames that were completely decoded after each decoding stage.When taking the average percentage of completely decoded frames after a certain decoding stage, this number is equivalent to the average percentage of frame bits decoded in a bit-level stopping technique after that decoding stage.
Considering this reduction in complexity after each decoding stage, we can compute the effective number of iterations based on the total computations required for each method.For ordinary turbo decoder without stopping techniques applied, the total number of computations required to complete the full N iterations (unconstrained decoding) C ud is expressed by (6), where L is the frame length in bits and C is the total number of computations required to get soft LLR output for single bit in one stage of decoding.For a system applying bit and packet-level early detection, the total number of computations required (constrained decoding) C cd is defined in (7): where 0 ≤ l i ≤ 1 is the percent of bits decoded (not yet early detected) in the ith decoding stage; it is equal to "0" when all the bits of the frame are considered as correctly decoded, and it is equal to "1" when none of the frame bits are constrained in the trellis decoding.Note that in case i = 1 for all i, then (7) reduces to (6).Equation ( 7) is used to calculate the average effective number of iterations required to completely decode the bit sequence by dividing it by the total number of computations by the number of computations per decoding stage (L×C) to get the average number of iterations.Figure 6 shows the equivalent average number of iterations for the three thresholds examples shown in Figure 5 compared to the ideal case (GENIE turbo).
From the results for the effective number of iteration in Figure 6 we can infer that the computational complexity of the system with the new stopping technique is reduced by equivalently 2.5 iterations at low SNR and about 0.5 iteration at high SNR for the system with Th 1 thresholding strategy.The main reason why the proposed method is more effective at low SNR, that is, that the stopping technique saves more computations with no degradation in performance, is that the CRC detection technique takes fewer decoding stages to decide that the decoded sequence is correct since there are more errors at low SNR, but the thresholding technique still can detect the bits sent over high SNR subcarriers and clamp these bits, satisfying the LLR condition.
In the following results, we examine the performance of the proposed stopping technique in the other four types of UWB channels presented in [11].Figure 7 displays the BER performance results for the turbo decoder using CRC detection combined with thresholding on LLR using L max = 2 * E b /N 0 + 3 and l min = 0.2 * L max .The effective number of iterations for these configurations of the stopping technique is shown in Figure 8. Simulation results show that using the new stopping technique gives a BER performance that is very close to the GENIE turbo.While the CRC detection   gives an accurate method to terminate the decoding process, the dynamic thresholding method helps in gaining large reduction in computational complexity so as to make the turbo codes a good alternative in UWB OFDM system.

CONCLUSION
In this paper, we show that the existing early stopping constrained decoding methods for turbo decoder are not  appropriate in multicarrier systems with different fading coefficients for each subcarrier since they give equal weights for bits with variable SNR.We present a bit-level stopping technique with adaptive thresholding to reduce the total number of computations and the power consumed by turbo decoder in UWB OFDM systems.
The proposed stopping technique uses CRC detection combined with thresholding technique.It reduces the total computational complexity in the early decoding stages by using a novel technique that compares the LLR outputs with flexible thresholds that are calculated from the CSI values of the UWB channel to take into account the low and high values of SNR for different subcarriers and thus decreasing the average number of iterations.The CRC detection part of this technique is used to determine the accurate stopping point when all the bits of the sequence have converged to the correct sequence.
The results show a large reduction in computational complexity by reducing the average number of iterations to less than one iteration while keeping the BER performance with minimum degradation.This means that if turbo decoding technique is to be implemented in UWB system, only four times or less the decoding complexity of Viterbi decoding is needed to obtain a huge improvement in performance.

BER:
Bit-error rate SNR: Signal-to-noise ratio BPSK: Binary phase shift keying UWB: Ultrawideband OFDM: Orthogonal frequency division multiplexing CRC: Cyclic redundancy check LLR: Log likelihood ratio CSI: Channel state information FFT: Fast Fourier transform AWGN: Additive white Gaussian noise ICI: Intercarrier interference NLOS: Nonline of sight RSC: Recursive systematic convolutional ARQ: Automatic repeat request PANs: Personal area networks LOS: Line of sight.

Figure 2 :
Figure 2: BER performance for turbo decoder with single-carrier channel reliability and multicarrier channel reliability obtained from (4).

Figure 3 :
Figure 3: BER performance for the proposed method on CM1 channel applying different thresholding strategies: Th 1 , Th 2 , Th 3 displayed together with BER performance of GENIE turbo decoder.

Figure 3 displaysi
BER performance for the turbo decoder with the new stopping technique based on 32 bit CRC detection combined with thresholding on the values of LLR (code rate is 992/2048 ≈ 0.484).The figure shows the results for three arbitrarily selected thresholds by setting l min = 0.2L max (experimental value) and choosing different values for the maximum threshold L max as (1) Th 1 : L max = 1.5 * E b /N 0 + 2, (2) Th 2 : L max = 2.5 * E b /N 0 + 2, (3) Th 3 : L max = 5 * E b /N 0 + 5, Th 1 at SNR = 3 dB Th 2 at SNR = 3 dB Th 3 at SNR = 3 dB Th 1 at SNR = 1.5 dB Th 2 at SNR = 1.5 dB Th 3 at SNR = 1.5 dB

10 Figure 5 :
Figure 5: Average percent of early detected bits in turbo decoder with CRC detection and thresholding on LLR stopping technique applied for the three thresholds Th 1 , Th 2 , Th 3 , and GENIE.

Figure 6 :
Figure 6: Average effective number of iterations for turbo decoder with CRC12 detection combined with thresholding on LLR stopping technique.

Figure 7 :
Figure 7: The performance of the new stopping technique in the four different types of UWB channels.

Figure 8 :
Figure 8: The effective number of iterations for the new stopping technique in the four different types of UWB channels used.