Complexity adaptive iterative receiver performing TBICMIDSSD
 1.8k Downloads
 3 Citations
Abstract
Flexible and iterative baseband receivers with advanced channel codes like turbo codes are widely adopted nowadays, ensuring promising error rate performances. Extension of this principle with an additional iterative feedback loop to the demapping function has proven to provide substantial error performance gain at the cost of increased complexity. However, this complexity overhead constitutes commonly an obstacle for its consideration in real implementations. This article illustrates the opposite of what is commonly assumed and proposes a complexity adaptive iterative receiver performing iterative demapping with turbo decoding (TBICMIDSSD). Targeting identical error rate, the article shows that for certain system configurations TBICMIDSSD presents lower complexity than TBICMSSD (without iterative demapping). This original result is obtained when considering the equivalent number of iterations through detailed analysis of the corresponding computational and memory access complexity. The analysis is conducted for different parameters in terms of modulation orders and code rates and independently from the architecture for a fair comparison. Considering the proposed adaptive receiver which is able to perform both TBICMIDSSD and TBICMSSD modes, results demonstrate a reduced complexity with TBICMSSD for high modulation orders. However, for low modulation orders as for QPSK, results show a reduction in arithmetic operations and read access memory up to 45.9% and 47%, respectively for using the TBICMIDSSD mode rather than TBICMSSD performing six turbo decoding iterations over Rayleigh fading channel with erasures.
Keywords
Fading Channel Arithmetic Operation Code Rate Turbo Code Extrinsic InformationIntroduction
Advanced wireless communication standards impose the use of modern techniques to improve spectral efficiency and reliability. Among these techniques, bitinterleaved coded modulation (BICM) [1] with different modulation orders and Turbo Codes with various code rates are frequently adopted.
The BICM principle currently represents the stateoftheart in coded modulations over fading channels. The BICM with iterative demapping (BICMID) scheme proposed in [2] is based on BICM with additional soft feedback from the softinput softoutput (SISO) convolutional decoder to the constellation demapper. In [3], the convolutional code classically used in BICMID schemes was replaced by a turbo code. Only a small gain of 0.1 dB was observed. This result makes BICMID with turbolike coding solutions (TBICMID) unsatisfactory with respect to the added decoding complexity.
On the other hand, signal space diversity (SSD) technique, which consists of a rotation of the constellation followed by a signal space component interleaving, has been recently proposed [4, 5]. It increases the diversity order of a communication system without using extra bandwidth.
Combining SSD technique with TBICMID at the receiver side has shown excellent error rate performance results particularly in severe channel conditions (erasure, multipath, real fading models) [6, 7]. These results were behind the adoption of this system in DVBT2 standard (using LDPC channel code). These results will also lead for further adoption discussions in the upcoming standards using turbo codes [6]. The TBICM and TBICMID modes applying the SSD technique are denoted by TBICMSSD and TBICMIDSSD.
In fact, almost all related works using these techniques have focused only on error rate performance without considering the implementation perspective. This is due mainly to the commonly assumed impact in terms of complexity overhead. In this article, we demonstrate the effectiveness of the iterative demapping even in terms of complexity for certain system configurations (modulation orders and code rates). In this context, a novel complexity adaptive iterative receiver, performing either in TBICMIDSSD mode or in TBICMSSD mode, is proposed. This original proposal is based on a thorough analysis of the corresponding computational and memory access complexity.
It is worth to note that the article does not provide a comparison in terms of area, as one iterative receiver is considered to perform both modes (TBICMIDSSD and TBICMSSD).
The rest of the article is organized as follows. Section System model and algorithms presents the system model with the associated parameters and gives a brief description of the underlined algorithms for iterative demapping and turbo decoding. Section Complexity evaluation and normalization presents an evaluation of the receiver complexity in terms of number and type of arithmetic operations and memory access. Section Number of iterations analysis for identical complexity analyzes the number of TBCIMSSD and TBCIMIDSSD iterations for identical complexity. Section Complexity analysis for identical performance shows a complexity analysis for identical TBCIMSSD and TBCIMIDSSD error rate performances. Finally, Section Conclusion concludes the article.
System model and algorithms
System model
On the transmitter side, information bits U which are called systematic bits are regrouped into symbols u_{ i }consisting of q bits, and encoded with an qbinary turbo encoder. It consists of a parallel concatenation of two identical convolutional codes (PCCC). The output codeword C is then punctured to reach a desired coding rate R_{ c }. We consider in this work the 8state double binary (q=2) [8] turbo code adopted in the WiMax standard.
In order to gain resilience against error bursts, the resulting sequence is interleaved using an Srandom interleaver π_{2} with $S=\sqrt{N/4}$. Punctured and interleaved bits denoted by v_{ i } are then gray mapped to complex channel symbols s_{ q }chosen from a 2^{ M }ary constellation X, where M is the number of bits per modulated symbol.
Rotation angle values in DVBT2, adopted in this work
Modulation  Rotation angle (degrees) 

QPSK  29 
16QAM  16.8 
64QAM  8.6 
256QAM  3.6 
The second step when applying SSD at the transmitter consists of signal space component interleaving. A simple delay is introduced between the transmission of I and Q components. Mapped and shifted symbols ${s}_{r,q}^{\u2033}$are then transmitted over a noisy and Rayleigh fast fading channel with or without erasure. The erasure channel model has been used in the case of the DVBT2 standard to model the destructive interferences caused by the existence of a singlefrequency network (SFN). Each received symbol ${x}_{r,q}^{\u2033}$is affected by a different fading coefficient, an erasure coefficient, and an additive Gaussian noise.
where h_{ q } is the Rayleigh fast fading coefficient, ρ_{ q }is the erasure coefficient probability taking value 0 with a probability P_{ ρ } and value 1 with a probability of 1−P_{ ρ }. n_{ q } is a complex white Gaussian noise with spectral density N_{0}/2 in each component axes, and ${h}_{q}^{\u2033}$is the channel attenuation.
Maxlogmap demapping algorithm
All demapping equations are valid for erasure and no erasure channel. In fact, the channel coefficient ${h}_{q}^{\u2033}$will take into consideration the erasure coefficient given by the channel detector. These simplified expressions exhibit three main computation steps: (a) Euclidean distance computation referred by A_{ q }, (b) a priori adder referred by B_{k,q}, and (c) minimum finder referred by the min operation of Equation (4).
MaxlogMAP decoding algorithm
where SF is the constant scale factor for the MaxLogMAP decoding algorithm.
These expressions exhibit three main computation steps: (a) branch metrics computation referred by γ_{ k }, (b) state metrics computation referred by (α_{ k } and β_{ k }), and (c) extrinsic information computation referred by L_{apr,Dem} and z.
Complexity evaluation and normalization
In order to appreciate the complexity of the two iterative modes, an accurate evaluation of the complexity in terms of number and type of operations and memory accesses is required. In this section, we consider the two main blocks of the TBICMSSD and TBICMIDSSD system configurations which are the SISO demapper and the SISO decoder. The proposed evaluation considers the low complexity algorithms presented in Section System model and algorithms.
Total number of required quantization bits for each parameter of the MaxLogMAP algorithms
Parameter  Number of bits 

SISO demapper  
Received complex input $({x}_{r,q}^{I},{x}_{r,q}^{Q})$  (10,10) 
Coeff. fading & variance (${h}_{q}^{\u2033}$)/(σ)  8 
Constellation complex symbol $({s}_{r,j}^{I},{s}_{r,j}^{Q})$  (8,8) 
Euclidean distance A_{ q }  19 
SISO decoder  
Received 4 LLRs  4×5 
Branch metric γ_{ k }  10 
State metric α_{ k }, β_{ k }  10 
Extrinsic information z  10 
Complexity evaluation of SISO demapper
Complexity evaluation of the SISO demapper and SISO decoder in terms of number and type of arithmetic computations and memory access
SISO rotated demapper with a priori input  
Computation units  Number and type of operations per modulated symbol per demapping iteration 
Euclidean distance  2^{ M }Add(18,18) + 2^{M + 1}Sub(8,10) + 2^{M + 1}Mul(18,18) + 2^{M + 1}Mul(8,10) + 2load(10) + (1 + 2^{M + 1})load(8) 
A priori adder  $({2}^{M}2)\left\{E\right[\frac{M1}{2}\left]\text{Add}\right(8,8)+E[\frac{M1}{4}\left]\text{Add}\right(9,9)+E[\frac{M1}{8}\left]\text{Add}\right(10,10)+M\text{Sub}(8,11)+M\text{Sub}(11,19\left)\right\}+M\text{load}\left(8\right)+({2}^{M}2)\text{load}\left(M\right)$ 
For QPSK M(2^{ M }−2)Sub(11,19) + M load(8) + (2^{ M }−2)load(M)  
Minimum finder  M Sub(8,8) + M. 2^{ M }Sub(19,19) + M store(8) 
SISO double binary turbo decoder  
Computation units  Number and type of operations per coded symbol per turbo decoding iteration 
Branch metric  4Add(5,5) + 38Add(5,10) + 4Sub(5,5) + 8load(5) + 6load(10) 
State metric  64Add(10,10) + 48Sub(9,9) + 8store(10) 
Extrinsic information  32Add(10,10) + 32Sub(9,9) + 9Sub(10,10) + 3Mul(4,10) + 8load(10) + 5store(10) 
 (1)
Euclidean distance computation
For each modulated symbol (input of the demapper):
One load(8) to access the fading channel coefficient normalized by the channel variance $\frac{{h}_{q}^{\u2033}}{\sigma}$

Two load(10) to access the channel symbols ${x}_{r,q}^{I}$ and ${x}_{r,q}^{Q}$.
 For each one of the 2^{ M }symbols of the constellation (${s}_{r,j}^{I}$, ${s}_{r,j}^{Q}$):

Two load(8) to access the constellation symbols ${s}_{r,j}^{I}$ and ${s}_{r,j}^{Q}$

Two Sub(8,10) to compute (${x}_{r,q}^{I}{s}_{r,j}^{I}$) and (${x}_{r,q}^{Q}{s}_{r,j}^{Q}$)

Two Mul(8,10) to multiply with the channel coefficients $\frac{{h}_{q}^{\u2033}}{\sigma}$ and $\frac{{h}_{q1}^{\u2033}}{\sigma}$

Two Mul(18,18) to compute the square of the results above

One Add(18,18) to realize the sum of the two Euclidean distance terms


 (2)
A priori adder
For each modulated symbol (input of the demapper):
M load(8) to access the a priori information L_{apr,Dem}(c_{i,q})
 For each one of the 2^{ M }symbols of the constellation (${s}_{r,j}^{I}$, ${s}_{r,j}^{Q}$), except two symbols corresponding to all zeros and all ones:

One load(M) to access constellation symbol bits c_{i,q}. i=0,1,…,M−1
 One addition of M a priori information to compute $\sum _{i=0,{c}_{i,q}=1}^{M1}{L}_{\mathrm{apr},\mathrm{Dem}}\left({c}_{i,q}\right)$ of Equation (6). L_{apr,Dem}(c_{i,q}) are quantized on 8 bits as shown in Table 2. This addition of M operands is equivalent to the sum of the following 2input addition operations:
 *
$E\left[\frac{M1}{2}\right]$ Add(8,8) to realize the sum of the couples of L_{apr,Dem}(c_{i,q}). Results are quantized on 9 bits.
$E\left[\frac{M1}{4}\right]$
 *
Add(9,9) to realize the sum of the couples of the results above. Results are quantized on 10 bits.
 *
$E\left[\frac{M1}{8}\right]$ Add(10,10) to realize the final 2input addition of the results above. Note that $E\left[\frac{M1}{8}\right]$ equals 0 except for QAM64 and QAM256 where it is equal to 1. The result is quantized on 11 bits.E[x] represents here the ordinary rounding of the positive number x to the nearest integer. Taking the example of QAM16 (M=4), $E\left[\frac{M1}{2}\right]$=2, $E\left[\frac{M1}{4}\right]$=1, $E\left[\frac{M1}{8}\right]$=0.
 *

M Sub(8,11) to subtract the LLR of the specific k th bit and thus obtain B_{k,q}

M Sub(11,19) to realize A_{ q }− B_{k,q}

However, for the simple QPSK modulation the above operations can be simplified as only two LLRs exist for one modulated symbol. In fact, in Equation (6) there is no need to execute an addition followed by a subtraction of the same LLR. Thus, the total number of required arithmetic operations in this case is 4 Sub(11,19).

 (3)
Minimum finder
For each one of the M bits per modulated symbol:
2^{ M }Sub(19,19) to realize the two min operations of Equation (4)

One Sub(8,8) to subtract the above found two minimum values

One store(8) to store the extrinsic information value

Complexity evaluation of SISO decoder
 (1)
Branch metrics (γ)
For each coded symbol (input of the decoder):
4 load(5) to access systematic and parity LLRs

3 load(10) to access demapper normalized extrinsic informations

2 Add(5,5) and 2 Sub(5,5) to compute systematic and parity branch metrics ${\gamma}_{11}^{\mathrm{Sys}}$, ${\gamma}_{10}^{\mathrm{Sys}}$, ${\gamma}_{11}^{\mathrm{Parity}}$ and ${\gamma}_{10}^{\mathrm{Parity}}$

19 Add(5,10) to compute branch metrics γ_{ k }and ${\gamma}_{k}^{\mathrm{Sys}}+{\gamma}_{k}^{\mathrm{Parity}}$
Operations above should be multiplied by 2 to generate forward and backward branch metrics.

 (2)
State metrics (α,β)
For each coded symbol (input of the decoder):
32 Add(10,10) to compute ${\alpha}_{k1}\left({s}^{{}^{\u2033}}\right)+{\gamma}_{k}({s}^{{}^{\u2033}},s)$ for the 32 trellis transitions (8state double binary trellis)

24 Sub(9,9) to realize the 8 max (4input) operations of Equation (7). In fact, finding the maximum of N values can be implemented as N1 max (2input) operations

8 store(10) to store computed state metrics only for left butterfly algorithm
Operations above should be multiplied by 2 to generate forward α and backward β state metrics.

 (3)
Extrinsic information ( z )
For each coded symbol (input of the decoder):
8 load(10) to access state metric values

32 Add(10,10) to compute the second required addition operation in Equation (10) for the 32 trellis transitions

28 Sub(9,9) to realize the 4 max (8input) operations of Equation (10)

4 Sub(10,10) to subtract symbollevel intrinsic information from the computed soft value (generating symbollevel extrinsic information)

8 Sub(9,9) and 4 Sub(10,10) to realize the 8 max (2input) operations and compute 4 bitlevel (systematic and parity) extrinsic information as demapper a priori information (Equations (12) and (13)). This computation is done only for one of the two SISO decoders

4 store(10) to store the computed bitlevel (systematic and parity) extrinsic information

3 Sub(10,10) to normalize symbollevel extrinsic information by subtracting the one related to decision 00

3 Mul(4,10) to multiply the symbollevel extrinsic information by a scaling factor SF

3 store(10) to store the computed DEC_{ 1 }symbollevel extrinsic information as DEC_{ 2 }a priori symbollevel information

Complexity normalization
Normalization of basic arithmetic operations in terms of Add (1,1) when n _{ 2 } > n _{ 1 }
Arithmetic operations  Normalized arithmetic operations 

1 Add(n_{1}, n_{2})  0.5×(n_{1} + n_{2}−1)Add(1,1) 
1 Sub(n_{1},n_{2})  0.5×(n_{1} + n_{2})Add(1,1) 
1 Mul(n_{1}, n_{2})  [(n_{1}−1)(n_{2}−1) + 1−0.5×n_{1}]Add(1,1) 
Complexity evaluation of the SISO demapper and SISO decoder in terms of number and type of arithmetic computations and memory access after normalization
SISO rotated demapper with a priori input  
Computation units  Number and type of operations per modulated symbol per demapping iteration 
Euclidean distance  358.75×2^{M + 1}Add(1,1) + load(28 + 2^{M + 4}) 
A priori adder  (2^{ M }−2){7.5$E\left[\frac{M1}{2}\right]$+ 8.5$E\left[\frac{M1}{4}\right]$ + 9.5$E\left[\frac{M1}{8}\right]$ + 24.5.M}Add(1,1) + load(8M) + load(M(2^{ M }−2)) 
For QPSK 15M(2^{ M }−2)Add(1,1) + load(8.M + M(2^{ M }−2))  
Minimum finder  (8 + 19.2^{ M })M Add(1,1) + store(8.M) 
SISO double binary turbo decoder  
Computation units  Number and type of operations per coded symbol per turbo decoding iteration 
Branch metric  304Add(1,1) + load(100) 
State metric  1040Add(1,1) + store(80) 
Extrinsic information  760Add(1,1) + load(80) + store(50) 
Number of iterations analysis for identical complexity
This section discusses and analyzes the complexity of the two iterative modes at different modulation orders and code rates. The first subsection defines the complexity of each mode, while the second subsection analyzes the required number of iterations assuming identical complexity.
TBICMSSD and TBICMIDSSD complexity definition
where ${C}_{\mathrm{dem}}^{}\left(M\right)$ designates the complexity of processing one modulated symbol, which depends on the constellation size, without taking into consideration the a priori computation, and C_{dec}designates the complexity of processing one coded symbol.
Regarding the complexity of TBICMIDSSD, we consider the work of [11] which proposes an original iteration scheduling by reducing two demapping iterations with reasonable performance loss of less than 0.15 dB for all configurations. The authors have also shown that omitting only one demapping iteration will keep the error rate performance almost identical for number of iterations y>3. This latter scheme is adopted in this work and we denote the required number of iterations by yIDem _zEIDec, where z designates the extra decoding iterations.
where ${C}_{\mathrm{dem}}^{+}\left(M\right)$ designates the complexity of processing one modulated symbol taking into consideration the a priori computation.
For the complexity evaluation of C_{dec}and C_{dem}(M), the low complexity algorithms presented in Section System model and algorithms were thoroughly analyzed.
In addition to the modulation order and the code rate, a third parameter should be considered regarding the iterative demapping implementation choice. In this regard, two configurations should be analyzed. In the first configuration, denoted CASE 1, the Euclidean distances are recalculated at each demapping iteration. While in the second configuration, denoted CASE 2, the computation of the Euclidean distances are done only once, at the first iteration, then stored and reused in later demapping iterations. Thus, CASE 1 implies higher arithmetic computations, however less memory access, than CASE 2.
Number of iterations for identical complexity
This equation can be used to compute individually y_{Lim}for identical arithmetic, identical read memory access or identical write memory access operations.
Required number of demapping iterations y _{ Lim } for different modulation schemes and code rates to achieve identical complexity (arithmetic operations, or read, or write access memory) as for x =6 and z =0
Modulation scheme  CASE1 (with recomputed Euclidean distances)  CASE2 (with stored Euclidean distances)  

R_{ c }=1/2  R_{ c }=6/7  R_{ c }=1/2  R_{ c }=6/7  
Arith  Load  Store  Arith  Load  Store  Arith  Load  Store  Arith  Load  Store  
QPSK  4.2  4.4  5.5  4.8  4.9  5.7  5.6  4.2  4.9  5.8  4.8  5.3 
QAM16  2.9  3.9  5.5  3.6  4.6  5.7  4.1  3.4  4.4  4.7  4  5 
QAM64  1.8  2.8  5.5  2.2  3.4  5.7  2.4  2.2  2.7  2.9  2.8  4 
QAM256  1.3  1.7  5.5  1.4  2.1  5.7  1.4  1.5  −2.9  1.7  1.8  0.6 
y_{Lim}can have positive values as well as negative values. Negative values mean that for the chosen configuration, TBICMIDSSD has always a higher complexity than TBICMSSD. The positive values represent the limits for which performing less demapping iterations will lead to a lower complexity than TBCIMSSD, and the inverse is true. Hence, it might be possible to perform less y iterations (y<y_{Lim}) with less complexity while having the same error correction capability than TBICMSSD. In fact, Table 6 shows that this last situation can potentially happen for QPSK and QAM16 configurations where y_{Lim}varies in a higher range (between 2.9 and 5.8) than QAM64 and QAM256 configurations (most y_{Lim}values are around 2 corresponding to identical arithmetic operations). This analysis will be extended in the next section taking into consideration error rate performance simulations.
Complexity analysis for identical performance
The main motivation behind this analysis is to improve the receiver implementation quality by choosing the mode with the less complexity depending on each system configuration. In order to appreciate this study, an accurate evaluation of the complexity in terms of number and type of operations and memory access has been done in Section Number of iterations analysis for identical complexity.
TBICMIDSSD iterations, xIDec and yIDem respectively, iterative processing at the demapper side is shown to provide additional error correction [6]. Thus, for a considered number of x iterations, identical error rate performance results can be reached by using y iterations with y<x.
Complexity analysis for a chosen x
On the other hand, Table 6 shows that for QPSK modulation, the minimum number of required TBICMIDSSD iterations y_{Lim}for all code rates and for identical required arithmetic operations as 6IDec is y_{Lim}=4.2 with z=0. So using y=3<4.2 iterations will lead to less arithmetic complexity, meanwhile it has the same error correction capacity as illustrated in Figure 2 for (1).
Achieved reduction values in terms of number of operations, read/write access memory for considering “3 IDem _1 EIDec ” rather than “6IDec” for different modulation schemes, code rates and no erasure events
Modulation scheme  CASE1 (with recomputed Euclidean distances)  CASE2 (with stored Euclidean distances)  

R_{ c }=1/2  R_{ c }=6/7  R_{ c }=1/2  R_{ c }=6/7  
Arith  Load  Store  Arith  Load  Store  Arith  Load  Store  Arith  Load  Store  
QPSK  13.5%  16.8%  28.6%  21.4%  23.5%  30.6%  28%  14%  19.1%  30.1%  21.8%  25% 
QAM16  −15.6%  9.3%  28.6%  2.7%  18.9%  30.6%  10.7%  −3.5%  9.5%  19.2%  11.2%  19.3% 
QAM64  −89.5%  −22.9%  28.6%  −50.9%  −1.5%  30.6%  −35.8%  −58.6%  −22.3%  −14%  −23.7%  0.6% 
QAM256  −207.4%  −108.4%  28.6%  −158.5%  −62.3%  30.6%  −117.9%  −195.6%  −124.1%  −87.2%  −121.1%  −59.3% 
Achieved reduction values in terms of number of operations, read/write access memory for considering “3 IDem _0 EIDec ” rather than “6IDec” for different modulation schemes, code rates and erasure events
Modulation scheme  CASE1 (with recomputed Euclidean distances)  CASE2 (with stored Euclidean distances)  

R_{ c }=1/2  R_{ c }=6/7  R_{ c }=1/2  R_{ c }=6/7  
Arith  Load  Store  Arith  Load  Store  Arith  Load  Store  Arith  Load  Store  
QPSK  28.9%  32.6%  45%  37.2%  39.6%  47%  43.3%  29.8%  35.4%  45.9%  38%  41.4% 
QAM16  −1.6%  24.9%  45%  17.7%  34.9%  47%  24.7%  12.1%  25.9%  34.2%  27.2%  35.8% 
QAM64  −78.8%  −8.6%  45%  −38.3%  13.7%  47%  −25.1%  −44.3%  −5.9%  −1.5%  −8.5%  17.1% 
QAM256  −201.4%  −97.2%  45%  −150.4%  −49.3%  47%  −111.9%  −184.4%  −107.8%  −79%  −108.1%  −42.8% 
This last equation has been used to obtain individually the complexity reduction ratios of Tables 7 and 8 in terms of arithmetic, read memory access and write memory access operations. Positive values correspond to a decreasing in complexity, meanwhile negative values correspond to a an increasing in complexity.
In the following, we analyze the values of Table 7 which correspond to a no erasure channel. Similar behavior is seen in Table 8 for erasure channel.
For CASE 1, results show improvements in terms of number of arithmetic operations (up to 21.4%) and read access memory (up to 23.5%) for QPSK scheme. Higher modulation orders require the demapper to fetch symbols from higher constellation memory sizes, which lead to more complexity computations and memory accesses. An increasing in complexity is shown for QAM256 in terms of number of arithmetic operations (−207%) and read access memory (−108%). Moreover, Equation (21) shows that higher the code rate is, higher the benefits are. On the other hand, the improvements in write memory access (28.6% for R_{ c }=1/2 and 30.6% for R_{ c }=6/7) are positive for all modulations orders.
In fact, in the SISO demapper, write memory access is required only to store the extrinsic information which is composed of M×8 bits. This term is required per modulated symbol and when converted to the equivalent number per coded symbol (Equation (16)) for a fixed code rate, a constant value independent from M is obtained.
Similar behavior is shown for CASE 2, except for two points. The first one concerns the improvements in arithmetic operations and read memory access. In fact, compared to CASE 1, this configuration implies less arithmetic and more memory access operations in the SISO demapper which lead to more benefits for the former operations and less benefits for the latter (Equation (21)). The second point concerns the benefits in write memory access. In fact, besides the term M×8 bits, a value of 19×2^{ M } is required to store the 2^{ M }Euclidean distances quantized on 19 bits each. Therefore the benefits in write access memory operations will be less for high constellation sizes.
Taking an example of QAM64 and code rate $\frac{6}{7}$ for CASE 1 with no erasure. Table 8 shows an increasing in complexity in terms of arithmetic operations (−38.3%), meanwhile positive ratios are seen for read/write access memory. However, it should be noted that the number of required memory access are much less than the arithmetic operations. Thus, those latter are considered as the primary criteria for choosing between the two modes.
We can conclude from the results above that using TBICMIDSSD rather than TBICMSSD for QPSK and QAM16 orders will lead to a significant complexity reduction for almost all code rates.
Finally, as the proposed adaptive iterative receiver targets to reduce the overall normalized processing complexity, this should lead a priori to improved power consumption, throughput and latency. However, analyzing the detailed gains in terms of throughput and latency depends on the heterogeneous architecture and the parallelism degree of the considered demapper and decoder algorithms.
Complexity analysis for different values of x
The second part of this study is to look to the gains for different values of x. To that end, and for presentation simplicity, we consider one system configuration which corresponds to QPSK, code rate $\frac{4}{5}$ and erasure probability 0.15.
Equivalent number of TBICMIDSSD iterations y for a considered TBICMSSD x iterations to achieve identical BER performances for QPSK, code rate $\frac{4}{5}$ and erasure probability equals to 0.15
x  1  2  3  4  5  6  7  8 
y  1  1.7  2.2  2.5  2.75  2.9  2.95  3 
Conclusion
In this article we have proposed a complexity adaptive iterative receiver performing TBICMIDSSD. For low and medium constellation sizes, feedback to the SISO demapper has shown to reduce the complexity in terms of computation and access memory at the receiver side for identical error rate performances. This constitutes a very interesting result as it demonstrates the opposite of what is commonly assumed. In fact, the number of normalized arithmetic operations is reduced in a range between 28.9 and 45.9% for QPSK configuration for using TBICMIDSSD rather than TBICMSSD with 6 iterations over fading channel with erasures. Similarly, the number of read/write access memory is reduced in a range between 29.8% and 47%. This complexity reduction increases significantly for higher turbo decoding iterations and reduces consequently the power consumption of the iterative receiver. On the other had, for high modulation orders, as for QAM64 and QAM256, the TBICMIDSSD receiver should be configured in TBICMSSD mode which provide less complexity for identical error rate performances.
Finally, it is worth to note that for very low error rates, TBICMIDSSD configuration should be used as it provides more error correction in the error floor region. Future work targets the extension of this analysis to other baseband iterative applications and its integration into available hardware prototypes.
Supplementary material
References
 1.Caire G, Taricco G, Biglieri E: Bitinterleaved coded modulation. IEEE International Symposium on Information Theory 1997.Google Scholar
 2.Li X, Ritcey J: Bitinterleaved coded modulation with iterative decoding. IEEE Commun. Lett 1997, 1(6):169171.CrossRefGoogle Scholar
 3.Abramovici I, Shamai S: On turbo encoded BICM. Ann. des Telecommun 1999, 54: 225234.Google Scholar
 4.Kiyani N, Weber J: Iterative demodulation and decoding for rotated MPSK constellations with convolutional coding and signal space diversity. IEEE Vehicular Technology Conference, VTC’07Fall 2007, 17121716.Google Scholar
 5.Boutros J, Viterbo E: Signal space diversity: a power and bandwidthefficient diversity technique for the Rayleigh fading channel. IEEE Trans. Inf. Theory 1998, 44(4):14531467. 10.1109/18.681321MathSciNetCrossRefGoogle Scholar
 6.Nour C, Douillard C: On lowering the error floor of high order turbo BICM schemes over fading channels. IEEE Global Telecommunications Conference, GLOBECOM’06 2006, 15.Google Scholar
 7.Nour CA, Douillard C: Improving BICM performance of QAM constellations for broadcasting applications. International Symposium on Turbo Codes and Related Topics 2008, 5560.CrossRefGoogle Scholar
 8.Part 16: Air Interface for Fixed and Mobile Broadband Wireless Access Systems – Amendment for Physical and Medium Access Control Layers for Combined Fixed and Mobile Operation in Licensed Bands IEEE Std 80216e/D52004,Nov2004.Google Scholar
 9.Ten Brink S, Speidel J, Yan RH: Iterative demapping and decoding for multilevel modulation. Global Telecommunications Conference, 1998. GLOBECOM 98. The Bridge to Global Integration. IEEE, vol. 1 1998, 579584.Google Scholar
 10.Robertson P, Hoeher P, Villebrun E: Optimal and suboptimal maximum a posteriori algorithms suitable for turbo decoding. Eur. Trans. Telecommun. (ETT) 1997, 8(2):119125. 10.1002/ett.4460080202CrossRefGoogle Scholar
 11.Haddad S, Baghdadi A, Jezequel M: Reducing the number of iterations in iterative demodulation with turbo decoding. The 19th International Conference on Software, Telecommunications and Computer Networks (SoftCOM 2011) 2011.Google Scholar
Copyright information
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.