3154
IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 6, NO. 9, SEPTEMBER 2007
Bit-Interleaving in Fast FH/SSMA Systems with M -FSK Modulation
Yu-Sun Liu, Member, IEEE
Abstract— The effects of bit-interleaving on the performance of convolutional codes and turbo codes in fast frequencyhop/spread-spectrum multiple-access systems with M -FSK modulation are investigated. It is observed that bit-interleaving induces two counter-acting forces on decoder performance. On the one hand, bit-interleaving disperses consecutive error bits caused by a noisy M -ary signal and makes the errors more correctable. On the other hand, the same measure makes it difficult for the decoder to make use of the bit dependency information. Both theoretical upper bounds and simulation results show that bitinterleaving degrades the performance of soft-decision decoded convolutional codes and turbo codes. Index Terms— Frequency hop communication, multiaccess communication, interleaved coding, convolutional codes, turbo codes.
fast FH/SSMA systems with M -FSK modulation remains to be clarified. In this paper, both convolutional codes and turbo codes with soft-decision decoding are considered. Theoretical upper bounds on bit error rates show that bit-interleaving induces two counter-acting forces on the decoder performance. On the one hand, bit-interleaving increases the free distances of codes and thus, steepens the bit error rate curve. On the other hand, it causes the loss of bit dependency information, which results in decoder performance degradation. The theoretical and numerical results further show that the performance degradation caused by information loss exceeds the performance improvement gained by free distance increment. Thus, convolutional codes and turbo codes without bit-interleaving greatly outperform those with bit-interleaving. II. S YSTEM AND C HANNEL M ODEL The fast FH/SSMA systems considered here are similar to those in [6]. In these systems, U transmitters and U receivers are connected in a pairwise topology. Each transmitter communicates with its receiver using error-correcting codes and fast frequency-hopping with L-fold diversity and M -FSK. In this paper, we focus on convolutional codes and turbo codes with soft-decision decoding for error correction. At the transmitters, each data sequence is encoded by error-correcting codes and then bit-interleaved or symbolinterleaved to form a packet. Here, bit-interleaving means that binary coded sequences are first randomly interleaved and then mapped into sequences of M -ary symbols, while symbol-interleaving means that binary coded sequences are first mapped into sequences of M -ary symbols and then randomly interleaved. Each M -ary symbol is transmitted using L chips. Let Ts and Tc be the symbol interval and the chip interval, respectively. Then, Tc = Ts /L. During each chip interval Tc , each transmitter selects and transmits the tone x=m⊕a (1)
I. I NTRODUCTION NE of the important issues that arise in the design of frequency-hop/spread-spectrum multiple-access (FH/SSMA) systems is the effective use of error-correction coding to combat the errors caused by multiple access interference (MAI). For FH/SSMA systems with M -ary frequency shift keying (M -FSK) modulation, Reed-Solomon (RS) codes over finite field GF(M ) are generally regarded as an appropriate choice for error-correcting codes [1]. A number of hard-decision decoding schemes for RS codes, including errors-only decoding, erasures-only decoding, and errors-anderasures decoding, were proposed in [1]–[5]. Fiebig and Robertson [6] considered using soft-decision decoding in fast FH/SSMA systems with convolutional codes and turbo codes. In their systems, binary coded sequences are bit-interleaved before being mapped to M -ary modulation symbols, and consequently, soft-decision information for each coded bits is used as input for decoders. They found that no significant improvement is attained by substituting convolutional codes and turbo codes with soft-decision decoding in place of RS codes with hard-decision decoding. Given that soft-decision decoding makes use of more information in decoding, the conclusion is somewhat unexpected. The shortfall has motivated us to examine the other important issues that could affect the decoder performance. In this paper, the use of bit-interleaving is investigated. It is well known that bit-interleaving process disperses consecutive error bits caused by a noisy M -ary modulation symbol and thus, makes the errors more correctable. However, whether bit-interleaving process improves the performance of
O
Manuscript received December 12, 2005; revised September 6, 2006; accepted September 10, 2006. The associate editor coordinating the review of this paper and approving it for publication was H. Boelcskei. This work is sponsored by the National Science Council, R.O.C., under grant NSC 942213-E-027-007. Y.-S. Liu is with the Department of Electronic Engineering, National Taipei University of Technology, Taipei, Taiwan 10608 (e-mail: ysliu@ntut.edu.tw). Digital Object Identifier 10.1109/TWC.2007.05987.
in M -FSK based on the incoming coded symbol m and a hopping variable a in the transmitter’s hopping sequence. Note that the operation ⊕ in this paper is the moduloM addition. We assume that transmitters have independent hopping sequences, and each hopping sequence is modeled by a sequence of independent random variables that are uniformly distributed over {0, 1, 2, . . . , M −1}. Transmission occurs over a channel that includes multiple access interference, Rayleigh fading, and thermal noise with power spectral density N0 /2. We assume that both signals in different chip intervals and signals from different transmitters are subjected to independent Rayleigh fading. Moreover, we assume that fading is slow enough (relative to the hopping rate) so that it remains constant over a chip interval.
1536-1276/07$25.00 c 2007 IEEE
IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 6, NO. 9, SEPTEMBER 2007
3155
m 0 1 2 3 4 5 6 7 0 1* 0 1 0 1 0 0
L=4 0 0 0 1* 0 1 0 1 0 1 1* 0 0 1 0 0 1 0 0 0 0 1 0 1* M=8
transmitters, which are called interferers. The probability that a certain interferer is in set Um is 1/M ; hence, the probability that there are i interferers in set Um is ph (i) = U −1 i 1 M
i
1−
1 M
U−1−i
.
(7)
1 due to intended transmitter 1* due to interferer 1 1 due to interferer 2
Fig. 1. An example of output matrix with M = 8, L = 4, and U = 3, where m = 5 is the symbol transmitted by the intended transmitter.
From (3)-(5), we observe that Rm is a Rayleigh distributed random variable with probability density function f (r) = 2 2 (r/σ 2 )e−r /2σ and σ 2 = N0 /2 + |Um |Ec /2, where |Um | is the number of transmitters in Um . It follows that when |Um | = j, the probability that Sm = 1 (i.e. Rm > T ) is pon (j) = e−T
2
/(N0 +jEc )
.
(8)
If the intended transmitter transmits coded symbol m in a chip, the probability of Sm = 1 for the chip is given by
U−1
P1 =
i=0
ph (i)pon (i + 1);
(9)
The fast FH/SSMA systems are synchronous; in other words, the chip intervals of different transmitters are timealigned at all receivers. The received signal is demodulated by a non-coherent M -FSK demodulator, which consists of a bank of M envelope detectors matched to the M tones in M -FSK. Let Ri be the detector output for the ith tone and R = (R0 , R1 , . . . , RM−1 ) be the received vector of a chip. The received vector is then despread to form the vector R = (R0 , R1 , . . . , RM−1 ) with Rm = Rm⊕a (2)
otherwise, the probability of Sm = 1 for the chip is given by
U−1
P2 =
i=0
ph (i)pon (i).
(10)
Assuming that S0 , . . . , SM−1 are statistically independent, the conditional probability of the output matrix S given that the intended transmitter transmits the coded symbol m, which is called the likelihood function of symbol m, is given by p(S|m) =
n P2 tot −nm (1 − P2 )(M−1)L−ntot +nm n ×P1 m (1 − P1 )L−nm (11)
where a is the intended transmitter’s hoping variable in the chip. Thus, 2 2 (3) Rm = rI + rQ where rI =
j∈Um
αj αj
j∈Um
Ec cos φj + nm,1 , Ec sin φj + nm,2 ,
(4) (5)
rQ =
Um is the set of transmitters which transmit the tone x = m⊕a in the chip, αj represents the Rayleigh distributed fading level for transmitter j, Ec is chip energy, φj is uniformly distributed over [0, 2π], and nm,1 and nm,2 are independent and identically distributed zero-mean Gaussian random variables with variance N0 /2. Observe that the intended transmitter is in set Um , if it transmits coded symbol m in the chip. Each element in the vector R is compared with the threshold T of a hardlimiter. Let S = (S0 , S1 , . . . , SM−1 ) be the output vector of hard-limiters, where Si = 1, 0, if Ri > T, otherwise. (6)
where nm is the number of one’s in the mth row of the output matrix S, and ntot is the total number of one’s in S. S0 , . . . , SM−1 are in fact not independent. However, the decoder performance achieved by using (11) is indistinguishable from the decoder performance achieved by using the actual likelihood function, which can be obtained only through the Monte Carlo simulation method. Note that the derivation of the likelihood function of symbol m is similar to the one proposed in [7]. Finally, assuming all symbol m to be equally likely, the a posteriori probabilities of the coded symbol m and the coded bit b are given by p(S|m) (12) p(m|S) = M−1 m =0 p(S|m ) and p(m|S), c = 0, 1, (13) p(b = c|S) =
m∈Mb=c
Finally, the output matrix S of each M -ary coded symbol is constructed by putting all the output vectors S of the symbol’s L chips together, each as a column vector. Thus, the output matrix S is an M × L zero-one matrix. Fig. 1 is an example of the output matrix S. The receiver calculates the a posteriori probability of each coded symbol by the following equations, in which we distinguish between the intended transmitter and the other U − 1
respectively, where Mb=c is the set of all symbols in which the coded bit b equals c. We first consider the case that coded sequences are bitinterleaved before modulation. In this case, the log2 M bits mapped to the same symbol are not consecutive coded bits. Thus, decoders use the a posteriori probability of each coded bit (defined in (13)) to recover the transmitted data. In the case that coded sequences are symbol-interleaved before modulation, the log2 M bits mapped to the same symbol are consecutive coded bits. Hence, decoders use the a posteriori probability of each coded symbol (defined in (12)) as the joint probability of the log2 M bits mapped to the symbol to recover the transmitted data.
3156
IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 6, NO. 9, SEPTEMBER 2007
III. C ONVOLUTIONAL C ODES We consider two interleaving schemes for convolutional codes: the convolutional code with bit-interleaving scheme (CC-BI scheme) in which convolutional-coded sequences are bit-interleaved before modulation and the convolutional code with symbol-interleaving scheme (CC-SI scheme) in which convolutional-coded sequences are symbol-interleaved before modulation. The rate-1/2, rate-1/3, and rate-1/4 convolutional codes considered in this paper are memory six convolutional codes with octal generators (133, 171), (133, 165, 171), and (123, 145, 157, 171), respectively. Random interleavers with length of 11520 bits are used for simulation results; infinitelength random interleavers are assumed for deriving theoretical upper bounds on bit error rates. The threshold T of hardlimiters is optimized for each coding scheme. We first derive upper bounds on bit error rates of both CCBI and CC-SI schemes. Let PCC−BI denote the bit error rate of the CC-BI scheme. Let
∞ ∞
0.1
0.01
M=64
M=256 D0 MF0 /2
0.001 0 10 20 30 40 50 60 number of transmitter and receiver pairs, U 70
Fig. 2. D0 and its upper bound M F0 /2 for systems with N0 = 0, L = 4, and M = 64 and 256.
T (D, N ) =
i=df ree j=1
Aij Di N j
(14)
be the transfer function [8] of the convolutional code, where df ree is the free distance, and Aij is the total number of paths with Hamming weight i that are generated by data sequences with j nonzero bits. By assuming that infinite-length random bit-interleaver is employed, the channel can be viewed as a stationary memoryless channel for each coded bit with channel transition probability p(S|b = c) = 2 M p(S|m), c ∈ {0, 1}.
m∈Mb=c
total number of paths with i non-zero coded symbols that are generated by data sequences with j nonzero bits. Observe that in this scheme, the channel is a stationary memoryless channel for each coded symbol with channel transition probability p(S|m), and that the value of F0 , F0 =
S
p(S|m) · p(S|m ), m = m ,
(19)
does not depend on m and m . Using these two observations, the upper bound on bit error rate of the non-binary tree code is given by [8] PCC−SI ≤ = 1 dT ∗ (F, N ) k dN ⎛ N =1,F =F0 ⎞ ∞ ∞ 1 i ⎝ j · Bij ⎠ F0 . k j=1
i=ff ree
(15)
Therefore, an upper bound on bit error rate is given by [8] PCC−BI ≤ =
i=df ree
dT (D, N ) dN ⎛
∞
(20)
N =1,D=D0
⎝
∞
⎞
i j · Aij ⎠ D0
(16)
j=1
where D0 =
S
p(S|b = 0) · p(S|b = 1)
(17)
We observe that the dominating terms in the upper bounds on PCC−BI and PCC−SI in (16) and (20) decrease as df ree and ff ree increase and increase as D0 and F0 increase, respectively. Since df ree and ff ree are free distances of the same code measured in bit and symbol, respectively, df ree > ff ree . On the other hand, it can be easily shown that F0 ≤ D0 ≤ M F0 /2. (22) (21)
and the summation in (17) is over all possible output matrix S. We now consider the CC-SI scheme, and let PCC−SI denote the bit error rate of this scheme. Let k = r log2 M , where r is the code rate of the convolutional code. In this scheme, the convolutional code can be viewed as a 2k -ary tree code. In the encoder of the 2k -ary tree code, k input data bits are fed into shift registers at each instant of time, and k/r = log2 M coded bits, which are mapped into a M -ary coded symbol, are calculated. Let T ∗ (F, N ) =
∞ ∞
Bij F i N j
i=ff ree j=1
(18)
be the transfer function of the non-binary tree code, where ff ree is the minimum number of different symbols between any two different coded symbol sequences, and Bij is the
Fig. 2 plots the values of D0 and its upper bound M F0 /2 for parameters N0 = 0 (no thermal noise), L = 4, and M = 64 and 256. We observe that the value of D0 is close to the value of M F0 /2 and thus is much larger than the value of F0 . Combining this observation with (21), we conclude that the bit error rate of the CC-SI scheme is less than that of the CC-BI scheme except for very small bit error rates. This conclusion is in agreement with both the theoretical upper bounds and the simulation results plotted in Fig. 3. We now investigate the insight behind the phenomenon. Bitinterleaving induces two counter-acting forces on decoding performance. On the one hand, bit-interleaving disperses consecutive error bits caused by a noisy M -ary signal and makes
IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 6, NO. 9, SEPTEMBER 2007
3157
1
10-1
10-1
10-2
10
-2
bit error rate
bit error rate
10-3
10
-3
10
-4
rate-1/2, CC-BI scheme 10
-4
rate-1/2, CC-SI scheme rate-1/2, iteratively decoded CC-BI scheme rate-1/3, CC-BI scheme
10
-5
M=64
M=256
PCC-BI PCC-SI
10-5
10
-6
upper bound on PCC-BI upper bound on PCC-SI 0 20 40 60 80 100 120 140 number of transmitter and receiver pairs, U
rate-1/3, CC-SI scheme rate-1/3, iteratively decoded CC-BI scheme 5 10 15 20 25 30 35 40 number of transmitter and receiver pairs, U
Fig. 3. Bit error rates PCC−BI and PCC−SI and their upper bounds for the rate-1/2 convolutional code with parameters N0 = 0, L = 4, and M = 64 and 256.
Fig. 4. Bit error rates of CC-BI scheme, CC-SI scheme, and iteratively decoded CC-BI scheme for both rate-1/2 and rate-1/3 convolutional codes with parameters Eb /N0 = 25dB, M = 64, and L = 2.
1
the errors more correctable. On the other hand, the same measure loses bit dependency information in the process of computing a posteriori probability of each coded bit and therefore compromises decoder performance. The following example with parameters N0 = 0 and M = 64 is used to illustrate how receiver loses bit dependency information. The intended user transmits the 64-ary coded symbol corresponding to b1 b2 b3 b4 b5 b6 = 000000. At the receiver, only two rows in the output matrix S corresponding to b1 b2 b3 b4 b5 b6 = 000000 and b1 b2 b3 b4 b5 b6 = 011011 are all one’s. In other words, symbol ambiguity arises with both 000000 and 011011 being possible transmitted symbols. Thus, the entropy of b1 b2 b3 b4 b5 b6 in the output matrix is 1 bit. The process of computing a posteriori probability for each coded bit causes the entropy of these bits to increase to 4 bits, since the a posteriori probabilities indicate that b2 , b3 , b5 , and b6 can be 0 or 1 with equal probability. Thus, when symbol ambiguities arise, the receiver loses bit dependency information in the process of computing a posteriori probability of each coded bit. Observe that a large population of users results in frequent occurrence of symbol ambiguities and the loss of a large amount of bit dependency information by employing bit-interleaving. Hence, we conclude that when there are a large number of users, the benefit of error dispersion in bit-interleaving is outweighted by the performance degradation caused by loss of bit dependency information. Iterative decoding (ID) technique has been shown to improve the performance of bit-interleaved coded modulation (BICM) for PSK and QAM modulations [9], [10]. So a simple iterative decoding technique similar to the one in [9] is employed in the CC-BI scheme to enhance the performance of the CC-BI scheme. We refer to this scheme as the iteratively decoded CC-BI scheme. Simulation results for the bit error rates of CC-BI scheme, CC-SI scheme, and iteratively decoded CC-BI scheme after the third round of decoding are shown in Figs. 4 and 5. We observe that the CC-SI scheme significantly outperforms the CC-BI scheme except for very small bit error rates (bit error rate < 10−6 ). This result corroborates our observation in the previous paragraph. We also observe that the iterative decoding technique indeed improves the performance
10-1
10 bit error rate
-2
10-3 rate-1/2, CC-BI scheme 10
-4
rate-1/2, CC-SI scheme rate-1/2, iteratively decoded CC-BI scheme rate-1/4, CC-BI scheme
10
-5
rate-1/4, CC-SI scheme rate-1/4, iteratively decoded CC-BI scheme 50 100 150 200 250 number of transmitter and receiver pairs, U
Fig. 5. Bit error rates of CC-BI scheme, CC-SI scheme, and iteratively decoded CC-BI scheme for both rate-1/2 and rate-1/4 convolutional codes with parameters Eb /N0 = 25dB, M = 256, and L = 4.
of the CC-BI scheme. However, the CC-SI scheme still achieves substantially better performance then the iteratively decoded CC-BI scheme. IV. T URBO C ODES Turbo code is the parallel concatenation of two recursive systematic convolutional (RSC) codes (henceforth denoted as component codes) connected via a interleaver [11]. In order to illustrate the effects of bit-interleaving on the performance of fast FH/SSMA systems with turbo codes, we consider three different encoding and mapping schemes, each with different degree of bit-interleaving. 1) Turbo code with bit-interleaving (TC-BI) scheme: The interleaver between the two component codes is a random bit-interleaver. Moreover, each turbo-coded sequence is bit-interleaved before modulation. Note that the maximum a posteriori (MAP) decoders use the a posteriori probability of each coded bit to recover transmitted data. 2) Turbo code with symbol-interleaving (TC-SI) scheme: The interleaver between the two components codes
3158
IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 6, NO. 9, SEPTEMBER 2007
1
10-1
10 bit error rate
-2
10
-3
TC-BI scheme 10
-4
TC-SI scheme SI-TC scheme CC-BI scheme
10-5
CC-SI scheme (256,64) RS code over GF(256) 50 100 150 200 250 300 350 number of transmitter and receiver pairs, U
Fig. 6. Bit error rates of three turbo-coded schemes, two convolutionalcoded schemes, and a RS-coded scheme for code rate 1/4, Eb /N0 = 25dB, M = 256, and L = 4.
is a random bit-interleaver. Furthermore, both of the RSC-coded sequences, which are subsequences of a turbo-coded sequence, are separately symbol-interleaved before modulation. Thus, each component code can be viewed as a 2k -ary tree code. In the encoder of the 2k ary tree code, a block of k data bits is shifted into the shift registers at each instant of time, and an M -ary coded symbol is calculated. At the receiver, component decoders use the a posteriori probabilities of coded symbols to obtain the joint extrinsic information of data blocks. At the output of each component decoder, the marginal extrinsic information of each data bit is obtained from the joint extrinsic information before being bit-interleaved (or bit-deinterleaved) and fed into the next decoding stage as the new a priori information. 3) Symbol-interleaved turbo code (SI-TC) scheme: The transmitter is the same as that of the TC-SI scheme except that the interleaver between the two component codes is a block-interleaver. Here, block-interleaving means that each data sequence is first divided into blocks of length k bits, and the blocks are then interleaved to form the interleaved data sequence, which is the input of the second component encoder. As a result, the extrinsic information at the outputs of both component decoders, which is the joint extrinsic information of each data block, is used as the a priori information in the next decoding stage after being interleaved (or deinterleaved). In other words, no calculation of marginal extrinsic information for each data bit is necessary in the decoder. Fig. 6 plots the bit error rates of the three turbo-coded schemes, in which both component codes of the turbo code are the rate-1/2 RSC code with octal generator (23, 35) and memory four. Among the three turbo-coded schemes, the SI-TC scheme achieves the best performance; the TCSI scheme comes as the second; and the worst performance is that of the TC-BI scheme. As observed in the previous section, employing bit-interleaving before modulation loses bit-dependency information. Therefore, the TC-SI scheme improves the performance of TC-BI scheme by substituting bit-interleaving with symbol-interleaving. The SI-TC scheme
further enhances the performance of the TC-SI scheme by replacing the bit-interleaver in the turbo code with blockinterleaver, since computing extrinsic information of each data bit between component decoders again results in the loss of bit-dependency information within each data block. For comparison with the turbo-coded schemes, Fig. 6 also plots the bit error rates of the two convolutional-coded schemes described in the previous section and RS codes with errors-and-erasures decoding [6]. We observe that in comparison with the RS-coded scheme with hard-decision decoding, the use of soft-decision decoding in TC-BI and CCBI schemes only slightly improves the system performance, since a large portion of the soft-decision information is lost in the process of bit-interleaving. On the other hand, the use of soft-decision decoding in CC-SI and SI-TC schemes, in which no information is lost via bit-interleaving, substantially improves the performance of the RS-coded scheme with hard-decision decoding. Finally, among the five softdecision decoding schemes, the SI-TC scheme achieves the best performance. V. C ONCLUSION In this paper, we investigated the effects of bit-interleaving on the performance of fast FH/SSMA systems with M -FSK modulation. We identified two main factors that affect the bit error rates, including the free distance and the amount of soft-decision information at decoders’ inputs. Bit-interleaving process increases the free distance, but loses bit-dependency soft-decision information. Moreover, the performance improvement gained by the increment of free distance is outweighted by the performance degradation due to information loss, except for very small bit error rates. Thus, the softdecision decoding methods (for both convolutional codes and turbo codes) without bit-interleaving substantially outperform those with bit-interleaving within the range of interest. R EFERENCES
[1] Q. Wang and Y. Chao, “Frequency-hopped multiple access communications with coding and side information,” IEEE J. Sel. Areas Commun., vol. 10, pp. 317-327, Feb. 1992. [2] J. D. Kim and S. W. Kim, “Logical and diversity combining in FH/SSMA packet radio networks,” IEEE Commun. Lett., vol. 3, pp. 1-3, Jan. 1999. [3] T. Ketseoglou and A. Polydoros, “Code combining techniques for FH/SSRA slotted networks,” in Proc. IEEE MILCOM’90, pp. 344-348. [4] G. Li, Q. Wang, and V. K. Bhargava, “Performance of a ratio-threshold diversity combining scheme in FFH/FSK spread spectrum systems in partial band noise interference,” in Proc. IEEE ICC’92, pp. 672-676. [5] A. M. Y. Bigloo, T. A. Gulliver, and V. K. Bhargava, “A slotted frequencyhopped multiple-access network with packet combining,” IEEE J. Sel. Areas Commun., vol. 14, pp. 1859-1865, Dec. 1996. [6] U.-C. Fiebig and P. Robertson, “Soft-decision and erasure decoding in fast frequency-hopping systems with convolutional, turbo, and Reed-Solomon codes,” IEEE Trans. Commun., vol. 47, pp. 1646-1654, Nov. 1999. [7] Y.-S. Liu and C.-C. Yeh, “Bit-interleaving in fast FH/SSMA systems with convolutional codes and turbo codes,” in Proc. IEEE Tencon 2005. [8] A. J. Viterbi, “Convolutional codes and their performance in communication systems,” IEEE Trans. Commun., vol. 19, pp. 751-771, Oct. 1971. [9] X. Li and J. A. Ritcey, “Bit-interleaved coded modulation with iterative decoding,” IEEE Commun. Lett., vol. 1, pp. 169-171, Nov. 1997. [10] X. Li and J. A. Ritcey, “Trellis-coded modulation with bit interleaving and iterative decoding,” IEEE J. Sel. Areas Commun., vol. 17, pp. 715723, Apr. 1999. [11] C. Berrou, A. Glavieux, and P. Thitimajshima, “Near Shannon limit error-correcting coding and decoding: turbo codes,” in Proc. ICC’93, pp. 1064-1070.