2280
IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 57, NO. 8, AUGUST 2009
Design and Performance Analysis of a New Class of Rate Compatible Serially Concatenated Convolutional Codes Alexandre Graell i Amat, Member, IEEE, Guido Montorsi, Senior Member, IEEE, and Francesca Vatta, Member, IEEE
Abstract—In this paper, a novel class of serially concatenated convolutional codes (SCCCs) is addressed. In contrast to standard SCCCs, where high rates are obtained by puncturing the outer code, the heavy puncturing is moved to the inner code, which can be punctured beyond the unitary rate. We derive analytical upper bounds on the error probability of this code structure by considering an equivalent code construction consisting of the parallel concatenation of two codes, and address suitable design guidelines for code optimization. It is shown that the optimal puncturing of the inner code depends on the outer code, i.e., it is interleaver dependent. This dependence cannot be tracked by the analysis for standard SCCCs, which fails in predicting code performance. Based on the considerations arising from the bounds analysis, we construct a family of rate-compatible SCCCs with a high level of flexibility and a good performance over a wide range of code rates, using simple constituent codes. The error rate performance of the proposed codes is found to be better than that of standard SCCCs, especially for high rates, and comparable to the performance of more complex turbo codes. Index Terms—Serially concatenated convolutional codes, iterative decoding, rate-compatible codes, turbo codes, performance bounds.
I. I NTRODUCTION
R
ATE-COMPATIBLE codes were introduced for the first time in [1], where the concept of punctured codes was extended to the generation of a family of rate-compatible punctured convolutional (RCPC) codes. Two codes of different rate, belonging to a rate-compatible code family, are said to be rate-compatible if the higher rate code is embedded into the lower rate code of the family. Namely, a higher rate code is obtained from a lower rate code of the family Paper approved by T. M. Duman, the Editor for Coding Theory and Applications of the IEEE Communications Society. Manuscript received October 22, 2007; revised July 21, 2008 and January 16, 2009. A. Graell i Amat was with the Department of Electronics, Politecnico di Torino, 10129 Torino, Italy. He is now with the Department of Electronics, IT/TELECOM Bretagne, CS 83818 - 29238 Brest Cedex 3, France (e-mail:
[email protected]). G. Montorsi is with the Department of Electronics, Politecnico di Torino, 10129 Torino, Italy (e-mail:
[email protected]). F. Vatta is with DEEI, Università di Trieste, 34127 Trieste, Italy (e-mail:
[email protected]). The material in this paper was presented in part at the IEEE International Symposium on Information Theory, Adelaide, Australia, September 2005. This work has been supported by Galileo 2007/2008 Programme of scientific cooperation between Italy and France and by a Marie Curie Intra-European Fellowship within the 6th European Community Framework Programme. Digital Object Identifier 10.1109/TCOMM.2009.08.070550
by adding some more puncturing (up to the desired (higher) rate), while keeping unaltered the bits which were already punctured in the lower rate code. In other words, the ratecompatibility restriction requires that the rates are organized in a hierarchy, where all code bits of a high rate punctured code are used by all the lower rate codes. This technique can be used in automatic repeat request / forward-error correction (ARQ/FEC) schemes (see, e.g., [2] and [3]), where, if the transmission is unsuccessful, information or parity bits are not simply repeated, but additional code bits of a lower rate code are transmitted, until the code is powerful enough to achieve error free decoding. Furthermore, rate-compatible codes can be used to provide unequal error protection (UEP) (see, e.g., [4] and [5]), since the rate-compatibility allows rate variation within a data frame to achieve unequal error protection. The concept of rate-compatible codes was later extended to parallel concatenated convolutional codes (PCCCs) [6, 7] and to serially concatenated convolutional codes (SCCCs) [8]. A new class of hybrid serially concatenated codes was proposed in [9] with bit error performance between that of PCCCs and SCCCs. A similar concept was presented in [10, 11] to obtain well performing rate-compatible SCCC families. In contrast to standard SCCCs, codes in [10, 11] were obtained puncturing both inner code parity bits and systematic bits, thereby obtaining rates beyond the outer code rate. Some design criteria to obtain good rate-compatible SCCC families were also discussed in [10, 11]. However, the considerations in [10, 11] were limited to heuristic design guidelines, with no theoretical analysis support. On the other hand, the analysis for standard SCCCs [12] fails in predicting the performance of this code structure, hence it is not suited to derive proper design guidelines. Therefore, a deeper and more formal insight on the performance of this new class of SCCCs is required, in order to provide suitable design guidelines aimed at code optimization. The main goal of this paper is to fill this gap to provide a performance analysis of this new class of concatenated codes. The error probability performance of turbo-like codes is characterized by a steep transition region, the so-called waterfall region, followed by a more gently sloping plateau region, referred to as the error floor region. Code design criteria in the error floor region are usually based on union bounds to the error probability, since they allow to connect the performance of the code to some code parameters (essentially the weight spectrum) [13]. On the other hand, the design of turbo-like
c 2009 IEEE 0090-6778/09$25.00 Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:57:28 EST from IEEE Xplore. Restrictions apply.
AMAT et al.: DESIGN AND PERFORMANCE ANALYSIS OF A NEW CLASS OF RATE COMPATIBLE SERIALLY CONCATENATED CONVOLUTIONAL CODES 2281
codes in the waterfall region is mainly based on extrinsic information transfer (EXIT) charts or related techniques [14, 15], since it is hard to relate code performance in the low signal to noise ratio region with code parameters to derive code design criteria. Moreover, in most cases design criteria for the waterfall and error floor regions do not coincide. In fact, optimizing the performance in the waterfall region leads in general to a bad performance in the error floor region and vice versa. In this paper, by properly redrawing the SCCC as the parallel concatenation of two codes, we derive the analytical upper bounds on the error probability, based on the union bound, using the concept of uniform interleaver. We then propose suitable design criteria for code optimization in the error floor. The analysis shows that the optimal puncturing of the inner code depends on the outer code and, therefore, it is interleaver dependent. This explains why the analysis for standard SCCCs fails in predicting the performance of this code structure. Based on the considerations arising from the union bounds analysis, we address design guidelines to obtain well-performing rate-compatible SCCC families. The proposed codes offer very good performance over a range of rates, including very high ones, using simple constituents. They perform better than standard SCCCs and compare favorably to more complex turbo codes. It is worth mentioning that bounds improving the union bounds have been presented, e.g., in [16] and [17]. The bounds in [16] and [17] are tighter than the union bound at low SNR values while they coincide with the union bound for high SNR values. Unfortunately, from these bounds it seems very difficult to extract code design criteria in the waterfall region, which still remains an open problem. For these reasons we have elected to use the union bound argument, and we have focused on the puncturing design optimization in the error floor region. The remainder of the paper is organized as follows. In Section II, we describe the new class of concatenated codes addressed in the paper. In Section III, upper bounds on the error probability are derived, and design criteria are addressed. Design guidelines to obtain well-performing SCCC families are discussed in Section IV. In Section V simulation results are given and some conclusions are drawn in Section VI. II. A N EW C LASS OF S ERIALLY C ONCATENATED C ONVOLUTIONAL C ODES The block diagram of an SCCC (C) is shown in Fig. 1. We consider the concatenation of two convolutional codes. The information sequence u of length K bits is first encoded by an encoder Ca of rate Ra , punctured by a fixed puncturer Pa and interleaved before being forwarded to encoder Cb of rate Rb . The interleaver length is denoted by Nπ . While no assumptions are made for Ca , we require Cb to be systematic and recursive1. The output of Cb is punctured by puncturers Pbs and Pbp , for systematic bits and parity bits, respectively. The resulting punctured systematic bits xsb and parity bits xpb are finally multiplexed to form the transmitted codeword x 1 According to [12] the inner encoder must be recursive to yield an interleaver gain.
of length N bits. Encoder Ca together with puncturer Pa are referred to as the outer code CO and encoder Cb together with puncturers Pbs and Pbp are referred to as the inner code CI . Correspondingly, we denote by RO and RI the rates of CO and CI , respectively. Also, we denote by R the rate of the SCCC. In contrast to standard SCCCs, where high rates are obtained by concatenating a heavy punctured outer code with a rate RI 1 inner code (typically rate-1) such that the rate of the SCCC is less than or equal to the rate of the outer code (R RO ), we allow the inner encoder in Fig. 1 to be punctured beyond the unitary rate, i.e., the overall code rate can be larger than the outer code rate. A puncturer P is defined by a puncturing pattern p with a certain pattern length, also called period, Np . For each puncturer, we also define the permeability rate ρ (0 ≤ ρ ≤ 1) as the fraction of bits remaining after puncturing. In this paper, we refer to puncturing patterns as vectors, rather than matrices. A rate-compatible code family can be then described by a single vector with entries listing the indices of the bits positions to be punctured in a specific order. For example, for the puncturing pattern p = [4, 2, 1, 3], with Np = 4, bit in position 4 is punctured first, followed by bits in positions 2 and 1. Therefore, we obtain the series of binary puncturing patterns [1, 1, 1, 1], [1, 1, 1, 0], [1, 0, 1, 0], and [0, 0, 1, 0], which represent a rate compatible code family with permeability rates 1, 3/4, 1/2, and 1/4, respectively. For block lengths longer than Np , the puncturing patterns are just repeated with period Np . Pa , Pbs and Pbp have puncturing patterns pa , psb and ppb of lengths Na , Nbs and Nbp , and permeability rates ρa , ρsb and ρpb , respectively. With these definitions the rate of the resulting SCCC is given by R=
K Ra 1 = RO RI = · N ρa ρs + 1−Rb ρp b b Rb
(1)
As it will be shown later, this code structure offers superior performance to that of standard SCCCs, especially for highrates. High-rate standard SCCCs suffer from a high error floor, due to the heavy puncturing of the outer code, which leads to a poor code in terms of free distance. On the other hand, the code structure discussed here allows for a constant block length of the outer code, maintaining its distance spectrum properties and thus keeping the interleaver gain for all code rates. The result is a much lower error floor. Moreover, this structure is well suited for the construction of rate-compatible code families. III. A NALYTICAL U PPER B OUNDS ON THE E RROR P ROBABILITY The design of concatenated codes with interleavers involves the choice of the interleaver and the constituent encoders. Unfortunately, a joint optimization is prohibitively complex. In [13] Benedetto and Montorsi proposed a method to evaluate the error probability of PCCCs independently from the interleaver used. The method consists in a decoupled design, in which one first designs the constituent encoders, and then tailors the interleaver on their characteristics. To achieve
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:57:28 EST from IEEE Xplore. Restrictions apply.
2282
IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 57, NO. 8, AUGUST 2009
M U X
Fig. 1.
Block diagram of the serially concatenated code.
this goal, the notion of uniform interleaver was introduced in [13]. The use of the uniform interleaver drastically simplifies the performance evaluation of turbo codes. Following this approach, design criteria for the construction of serially concatenated codes were derived in [12]. The performance of the code in Fig. 1 depends on Pa , Pbs and Pbp , i.e., on puncturing patterns pa , psb and ppb , and, subsequently, on the permeability rates ρa , ρsb and ρpb , which should be properly optimized. In this section, we clarify some relevant aspects of this code structure providing the clues for code optimization and addressing design guidelines to properly select {Ca , Pa }, and {Cb , Pbs , Pbp }. To this purpose, we derive the analytical upper bounds on the bit and frame error probabilities, following the concept of uniform interleaver. It is worth stressing that in the analysis of this section, we do not treat the code structure of Fig. 1 as a standard SCCC. Therefore, we do not apply the considerations in [12], but rather derive a new bound and new design criteria. The analysis in [12] would consider Cb and the puncturers Pbs and Pbp as a single entity (the inner code CI ) therefore diluting the contribution of the inner code systematic bits and parity bits to the performance. Here, the key idea is to decouple the contribution of inner code systematic bits and inner code parity bits to the error probability bound to better identify how to choose {psb , ρsb } and {ppb , ρpb }. In fact, we shall show that to obtain good SCCCs in the form of Fig. 1, the selection of the inner code puncturing directly depends on the outer code (and therefore it is interleaver dependent), which has a crucial impact on performance. This dependence cannot be taken into account by the upper bounds derived in [12] for SCCCs. a the minimum weight of an input sequence Denote by wm generating an error event of code Ca , and by hm the minimum weight of the codewords of C. Also, let ACw,h denote the InputOutput Weight Enumerating Function (IOWEF), the number of codewords in code C with input weight w and output weight O I and ACl,h for codes CO and CI , h. Similarly, we define ACw,l respectively. The bit error probability of an SCCC over an additive white Gaussian noise channel can be upper bounded by [12] N K 1 w C hREb A erfc Pb (e) ≤ (2) 2 K w,h N0 w=w a h=hm
m
where N0 /2 is the two-sided noise power spectral density, and Eb is the energy per information bit. Likewise, the frame error probability is upper bounded by N hREb 1 C Ah erfc Pw (e) ≤ (3) 2 N0 where
M U X
ACh
=
K a w=wm
h=hm
ACw,h .
Fig. 2. Fig. 1.
Equivalent code construction of the serially concatenated code of
ACw,h can be calculated by replacing the actual interleaver with the uniform interleaver [13] and exploiting its properties. The uniform interleaver transforms a codeword of weight l at the output of the outer encoder into all its distinct Nlπ permutations. As a consequence, each codeword of the outer code of weight l, through the action of the uniform interleaver, enters the inner encoder generating Nlπ codewords of the inner code. The IOWEF of the overall SCCC can then be evaluated from the knowledge of the IOWEFs of CO and CI [12]: ACw,h =
Nπ ACO ACI w,l l,h Nπ l=0 l
(4)
To evaluate the performance of the code structure of Fig. 1, instead of proceeding as in [12] using (4), it is more suitable to refer to Fig. 2, which properly redraws the encoder of Fig. 1 for the derivation of the upper bound. In Fig. 2, C1 = Ca , Rb P0 = Pa , and C2 is now the rate 1−Rb convolutional code corresponding to the parity part of Cb . Further, P1 = π −1 (Pbs ), while P2 is identical to Pbp . Therefore, xU in Fig. 2 is a scrambled version of xsb in Fig. 1 (i.e., it gives the same contribution to the output weight as xsb ), while xL = xpb . The lengths of xU and xL are denoted by NU and NL , respectively. Note also that the vectors v and z in Fig. 1 and Fig. 2 contain the same bits. For later reference, the three dashed boxes in Fig. 2 define three corresponding codes referred to as the outer code CO (equal to CO in Fig. 1), the upper code CU and the lower code CL , respectively. We call CU the code C1 punctured by the concatenation of P0 and P1 , and CL the code C2 punctured by P2 . P1 and P2 have puncturing patterns p1 and p2 of lengths N1 and N2 , and permeability rates ρ1 and ρ2 , respectively. Fig. 2 allows us to decouple the contribution of inner code systematic bits and parity bits to the error probability bound. Now, the serially concatenated code structure under consideration can be interpreted as the parallel concatenation of CU and CL . Therefore, the weight h of code C codewords can be split into two contributions j and m, corresponding to the weights of the codewords of CU and CL , respectively, such that h = j + m. For later use denote by dCf O and dCf U the free distance of code CO and code CU , respectively, and by RU the rate of CU . Also, let nU be the number of concatenated error events in a codeword of CU of weight j associated to a codeword of CO of weight l generated by a weight w information sequence, and define nU M as the maximum value of nU . In a similar way we define nL as the number of
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:57:28 EST from IEEE Xplore. Restrictions apply.
AMAT et al.: DESIGN AND PERFORMANCE ANALYSIS OF A NEW CLASS OF RATE COMPATIBLE SERIALLY CONCATENATED CONVOLUTIONAL CODES 2283
concatenated error events in a codeword of CL of weight m and input weight l, and nL M as its maximum value. With reference to Fig. 2, equation (4) can then be rewritten as
CU CL Nπ NU
A A
w,l,j l,m ACw,h = ACw,j+m = (5) Nπ
CO CU l=df j=df
l j+m=h U where ACw,l,j denotes the number of codewords of CU of weight j associated with a codeword of CO of weight l generL indicates ated by an information word of weight w, and ACl,m the number of codewords of CL of weight m generated by an input weight l. U Assume R = k/n with RO = k/p and RI = p/n. ACw,l,j CL and Al,m can be expressed as [12]
U ACw,l,j
Nπ /p U ACw,l,j,n U U n U
(6)
nL M Nπ /p L ACl,m,n L L n L
U where ACw,l,j,n U represents the number of code CU sequences of weight j associated with a codeword of CO of weight l generated from an information word of weight w, and L number of concatenated error events nU . ACl,m,n L represents the number of code CL sequences of weight m, input weight l, and number of concatenated error events nL . Substituting (6) in (5) we get [12]: Nπ /p Nπ /p U L n n N N π U M M nU nL ACw,j+m Nπ C C U L l=df O j=df U n =1 n =1 l
CL U ACw,l,j,n U Al,m,nL
Nπ
NU
nU M
nL M
L
C C l=df O j=df U n =1 n =1
CL U · ACw,l,j,n U Al,m,nL
(7)
Finally, substituting (7) into (2), we obtain the upper bound on the bit error probability, ⎞ ⎛ N (j + m)RE 1 b⎠ Pb (e) erfc ⎝ 2 N0 j+m=hm
· ·
K
Nπ
a w=wm
C l=df O
p
U
L
nM nM NU C j=df U
nU =1
U
Nπn
·
Nπ
a w=wm
C l=df O
p
U
L
nM nM NU C j=df U
nU =1
U
Nπn
+nL −l
+n −l−1 L
(9)
nL =1
ll l! ACU U ACL L nU !nL ! w,l,j,n l,m,n
nU +nL
For large Nπ and for a given h = j + m, the dominant coefficient of the exponentials in (8) and (9) is the one for which the exponent of Nπ is maximum. This maximum exponent is defined as [12] α(h = j + m) max{nU + nL − l − 1}
(10)
For large Eb /N0 , the dominating term is α(hm ), corresponding to the minimum value h = hm [12], (11)
Substituting (11) in (8) and truncating to the first term of the summation with respect to h we obtain: C h RE 1−df O m b Pb (e)≤BN erfc (12) π N0 asymptotic with respect to Eb /N0 , where B is a constant that depends on the weight properties of the encoders. On the other hand, the dominant contribution to the bit and frame error probability for Nπ −→ ∞ is the largest exponent of Nπ , defined as αM max α(h = j + m) = max{nU + nL − l − 1} (13) h
w,l,h
We consider only the case of recursive convolutional inner encoders. In this case, αM is given by [12] dCf O + 1 (14) αM = − 2
N n +n −l ll l! π nU +nL nU !nL ! p U L U
·
K
α(hm ) ≤ 1 − dCf O
n =1
·
j+m=hm
w,l
nU M
n =1
L ACl,m
the frame error probability is given by ⎞ ⎛ N (j + m)RE 1 b⎠ erfc ⎝ Pw (e) 2 N0
(8)
nL =1
ll l! w CU CL A UA L U L n !n ! RO w,l,j,n l,m,n
nU +nL
Equivalently, substituting (7) into (3) the upper bound on
Then, substituting (14) in (8) and truncating to the term of the summation corresponding to h(αM ) we obtain the following result, asymptotic with Nπ and Eb /N0 : ⎞ ⎛ h(α )RE M b⎠ αM ⎝ Pb (e)≤CN (15) π erfc N0 where C is a constant that depends on the weight properties of the encoders and h(αM ) is the weight associated to the highest exponent of Nπ . Denote by dCi L the minimum weight of code CL sequences generated by input sequences of weight i. For instance, dC2 L and dC3 L are the minimum weight of code CL sequences generated by input sequences of weight 2 and 3, respectively. Following similar derivations as in [12] for standard SCCCs,
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:57:28 EST from IEEE Xplore. Restrictions apply.
2284
IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 57, NO. 8, AUGUST 2009
we obtain the following results for the weight h(αM ) associated to the highest exponent of Nπ :
reason we have not included this technique in the paper. The reader however should be aware that for the careful design of concatenated schemes both aspects must be considered and this implies that comparison of the designed schemes through simulation cannot be avoided. This fact also allows to justify some differences in the simulation results which are not evident from the uniform interleaver analysis. A convergence analysis of this class of SCCCs using EXIT charts is discussed in [18].
dCf O dC2 L U + dCmin (dCf O ) 2 (dCO − 3)dC2 L U h(αM ) = f (dCf O ) + dC3 L + dCmin 2
h(αM ) =
if dCf O even if dCf O odd (16)
U where dCmin (dCf O ) is the minimum weight of CU code sequences corresponding to a CO code sequence of weight dCf O . Finally from (14)-(16) we obtain: C −df O /2
even Nπ Pb (e)≤C ⎞ ⎛ CO CL d d RE b⎠ U · erfc ⎝ f 2 + dCmin (dCf O ) 2 N0
(17)
if dCf O is even, and CO +1
d − f
odd Nπ 2 Pb (e)≤C ⎛ ⎞ C (d O − 3)dCL RE b C C C 2 f U ⎠ + d3 L + dmin · erfc ⎝ (df O ) 2 N0 (18)
dCf O
if is odd. Constants Ceven and Codd can be derived as in [12] for standard SCCCs. Similar expressions can be obtained for the frame error probability. We can draw from (17) and (18) some important design considerations for the code structure of Fig. 1: • Similar to standard SCCCs, {C1 , P0 } should be chosen so that the output weight enumerating function (OWEF) of CO is optimized, i.e., the terms dCf O , dCf O +1, . . . , must be orderly maximized and their multiplicities minimized. • The coefficient h(αM ) that multiplies the signal to noise U ratio Eb /N0 increases with dC2 L , dC3 L , and dCmin (dCf O ). P1 and {C2 , P2 } should be chosen so that h(αM ) is maximized. For a fixed pair of permeability rates ρ1 and ρ2 , this turns into two design rules: (1) {C2 , P2 } must be chosen so that the IOWEF of CL is optimized, i.e., the coefficients dC2 L , dC3 L , . . . , must be orderly maximized and their multiplicities D2CL , D3CL , . . . , minimized. (2) P1 U must be selected to maximize dCmin (dCf O ) and successive terms and to minimize their multiplicities. Finally, to construct the SCCC of Fig. 1, set {Ca , Pa } = {C1 , P0 }, {Cbp , Pbp } = {C2 , P2 }, Pbs = π(P1 ) and Cb = {1, Cbp }, where 1 and Cbp stand for the systematic part and the parity part of Cb in Fig. 1, respectively. Note that the equality Pbs = π(P1 ) introduces the dependence of the optimization of the inner code CI on the outer code CO through the interleaver. A complementary analysis tool for the design of concatenated schemes is to consider the EXIT charts or equivalent plots [14, 15]. EXIT charts predict very well the behavior of iterative decoding schemes in the low SNR region (convergence region) and often lead to design rules that are in contrast with those arising from union bounds, which are more suited for the analysis in the error floor region. Unfortunately, EXIT chart analysis is mainly based on Monte Carlo simulations and does not allows to extract useful code design parameters. For this
IV. R ATE - COMPATIBLE S ERIALLY C ONCATENATED C ONVOLUTIONAL C ODES The code structure of Fig. 1 is ideal for designing ratecompatible code families, since puncturing is moved to the inner code. To satisfy the rate-compatibility constraint the outer code should be kept fixed for all rates. This implies the use of a fixed puncturing pattern pa . Then, the design of wellperforming rate-compatible code families reduces to choose the puncturing patterns psb and ppb and the permeability rates ρsb and ρpb to yield the best performance in both the error floor and the waterfall region. Unfortunately, a joint optimization is not feasible. Here, we consider a different approach, yet practical. The key idea is to optimize the puncturing patterns psb and ppb based on the design criteria derived in the previous section, thus optimizing the puncturing order for the error floor. Then ρsb and ρpb can be tuned to yield good performance in the waterfall region. The optimization of puncturings psb and ppb can be formulated in terms of the optimization of p1 and p2 in Fig. 2 as follows: • Optimization of p2 : We recall that p2 gives the order in which the bits must be punctured in puncturer P2 , so that the resulting punctured code is rate-compatible. The optimization of p2 is then performed through a search algorithm that works incrementally, finding one punctured position at a time. The algorithm starts with a binary puncturing vector v2 of length N2 with all entries set to 1. Then, it finds the first position to be punctured by comparing the N2 IOWEFs of all encoders CL resulting from the puncturing of C2 through all possible N2 binary puncturing patterns (all binary vectors of length N2 with a single zero) and keeping the puncturing position that gives the best IOWEF (see Section III). This gives the first entry of vector p2 . To ensure rate-compatibility, this position must be kept while searching the following positions to be punctured. To find the second position to be punctured the IOWEFs of all N2 − 1 possible encoders CL resulting from the puncturing of C2 through all N2 − 1 puncturing patterns with two zero entries (one corresponding to the index given by the first entry of vector p2 ) are compared. The position that gives the best IOWEF is kept and determines the second entry of vector p2 . This method can be continued until the order of all N2 possible bits to be punctured is found. The result is a vector p2 of N2 indices stating the order in which the parity bits of the lower code C2 shall be punctured. The proposed search algorithm is summarized in the flow chart of Fig. 3, where IOWEFb stands for the best IOWEF, j is the j-th entry of vector p2 and i is the
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:57:28 EST from IEEE Xplore. Restrictions apply.
AMAT et al.: DESIGN AND PERFORMANCE ANALYSIS OF A NEW CLASS OF RATE COMPATIBLE SERIALLY CONCATENATED CONVOLUTIONAL CODES 2285
start
v2 of length N2 with all entries set to 1, j=1
i=1, IOWEFb=0
• i>N2?
YES
V. N UMERICAL R ESULTS
NO YES
i++
v2(i)=0? NO
v2(p2(j))=0 set v2(i)=0 j++ compute IOWEF of C2 punctured through v2 & compare with IOWEFb
j>N2?
NO
YES
v2(i)=1
NO
is IOWEF best?
end
YES
set p2(j)=i & IOWEFb=IOWEF
Fig. 3.
•
first entry of vector p1 ) are compared. The position that U U gives the best sequence of dCmin (dCf O ), dCmin (dCf O )+1, . . . , is kept and determines the second entry of vector p1 . This method is continued until the order of all N1 possible bits to be punctured is found. Note that since p1 may also puncture outer code information bits, the resulting code might be non-invertible2 and/or catastrophic. Therefore, at each step, the invertibility and non-catastrophicity of the code must be guaranteed. Finally, set ppb = p2 and psb = π(p1 ).
Flow chart of the optimization of puncturing pattern p2 .
index for the loop over the N2 − (j − 1) IOWEFs to be compared to determine entry j of p2 . Optimization of p1 : The best puncturing pattern p1 for U CU is found in a similar way by maximizing dCmin (dCf O ) and successive terms and minimizing the corresponding multiplicities. The algorithm starts with a binary puncturing vector of length N1 with all entries set to 1. Then, it finds the first position to be punctured by comparing the U U (dCf O ), dCmin (dCf O )+1, . . . , and the correspondterms dCmin ing multiplicities of all codes CU obtained by puncturing CO through all possible N1 puncturing patterns (all binary vectors of length N1 with a single zero) and keeping U (dCf O ) and the lowest the one giving the maximum dCmin U (dCf O ) multiplicity. If two encoders have the same dCmin and corresponding multiplicity, we consider the second U (dCf O ) + 1, and so on. This gives the first entry term dCmin of vector p1 . Again, to ensure rate-compatibility this position must be kept while searching the following positions to be punctured. To find the second position to be U U (dCf O ), dCmin (dCf O )+1, . . . , of all punctured the terms dCmin N1 − 1 possible encoders CU obtained by puncturing CO through all possible N1 − 1 puncturing patterns with two zero entries (one corresponding to the index given by the
For the examples here, we have chosen Ca and Cb to be identical rate-1/2 (Ra = Rb = 1/2) 4-state systematic recursive convolutional codes, with generator polynomials (1, 5/7) in octal form3. Ca is punctured to rate 2/3 by applying the fixed binary puncturing pattern [1, 1, 1, 0] (i.e., pa = [4, 2, 3, 1] and ρa = 3/4). With this puncturing pattern the free distance of code CO is dCf O = 3. The overall code rate is R = 1/3. Higher rates are then obtained by puncturing the inner encoder by puncturers Pbs and Pbp for systematic and parity bits, respectively, as previously discussed. We have chosen Nbs = Nbp = 300, providing a high resolution for choosing the code rate R. Table I reports the puncturing pattern p1 for puncturer P1 (the de-interleaved version of Pbs ), optimized assuming pa above as the puncturing pattern of Pa . As stated in Section III the optimization of P1 depends on the outer code, thus for each pa a new p1 must be found. p1 was optimized according to the design rules in the previous section. The puncturing pattern psb is then obtained by interleaving p1 , psb = π(p1 ). Table I lists the indices of the successive bits positions to be punctured (see Section II). For instance, assuming Nπ = Nbs = Nbp , if three bits are punctured in Pbs (i.e., ρsb = 297/300) the bits in positions π(101), π(1), and π(193) will be punctured. Note that pattern p1 in Table I has only 100 entries, while Nbs = 300. The reason is that we restrict the rate of the equivalent code CU to be RU ≤ 1, since it must be invertible. Since RU = RρO s and b being RO = 2/3 the maximum number of bits that can be max punctured in Pbs is Nbs · (1 − RO /RU ) = 300 · (1/3) = 100. The puncturing pattern p2 for puncturer P2 is shown in Table II. As explained in Section III the puncturing pattern must be optimized so that dC2 L , dC3 L , . . . , are maximized and their multiplicities D2CL , D3CL , . . . , are minimized for each puncturing position. The evolution of the values (dCi L , DiCL ), for i = 2 and i = 3, as a function of the number of bits punctured in P2 (0 N2 · (1 − ρ2 ) 300) is reported in Fig. 4. For all i there are some dCi L = 0 with a corresponding DiCL = 0, which means that the corresponding code CL is not invertible. Also, given a value of dCi L , DiCL is an increasing function of the number of punctured bits by construction. 2 A code is said to be invertible if, knowing only the parity-check symbols of a code vector, the corresponding information symbols can be uniquely determined [19]. 3 According to [12] it can be convenient to choose as outer code a nonrecursive encoder. Here, for simplicity, we considered identical encoders for Ca and Cb . Moreover, it is worth mentioning that the difference in performance is marginal.
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:57:28 EST from IEEE Xplore. Restrictions apply.
2286
IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 57, NO. 8, AUGUST 2009
TABLE I P UNCTURING PATTERN p1 : IT LISTS THE INDICES OF THE SUCCESSIVE BITS POSITIONS TO BE PUNCTURED IN xsb (psb = π(p1 )) Number of punctured bits 1 - 10 11 - 20 21 - 30 31 - 40 41 - 50 51 - 60 61 - 70 71 - 80 81 - 90 91 - 100
101 73 297 108 148 96 160 268 105 92
1 169 181 276 244 20 208 392 16 165
193 217 229 345 8 396 112 176 201 29
285 25 37 389 64 281 305 128 68 288
Bit index 341 49 265 121 133 253 309 89 124 220 184 136 257 377 212 45 365 272 380 188
145 385 13 373 172 232 349 353 140 336
241 325 61 329 292 52 33 152 5 249
369 85 157 196 260 333 317 236 321 274
313 357 205 40 360 76 80 300 225 48
TABLE II P UNCTURING PATTERN p2 : IT LISTS THE INDICES OF THE SUCCESSIVE BITS POSITIONS TO BE PUNCTURED IN xpb (ppb = p2 ) Number of punctured bits 1 - 10 11 - 20 21 - 30 31 - 40 41 - 50 51 - 60 61 - 70 71 - 80 81 - 90 91 - 100 101 - 110 111 - 120 121 - 130 131 - 140 141 - 150 151 - 160 161 - 170 171 - 180 181 - 190 191 - 200 201 - 210 211 - 220 221 - 230 231 - 240 241 - 250 251 - 260 261 - 270 271 - 280 281 - 290 291 - 300
299 47 161 205 156 73 51 110 140 16 147 206 244 114 98 75 292 263 70 227 6 234 204 262 171 74 116 67 124 26
0 224 241 82 101 58 298 272 127 249 232 186 195 216 203 55 150 111 34 164 267 15 248 214 146 255 80 202 185 270
5 264 212 269 131 165 92 85 191 81 109 153 78 237 287 29 99 219 271 22 215 38 134 235 90 181 266 14 19 168
294 126 89 68 187 135 1 9 240 213 8 295 162 261 184 40 176 141 254 45 197 223 83 274 10 211 7 160 155 62
Bit index 276 77 54 151 250 36 217 31 169 118 122 196 220 253 286 39 72 117 32 290 275 25 221 43 50 4 13 228 252 91 210 198 61 154 167 48 208 79 242 128 258 27 296 71 178 284 23 65 246 132 30 277 53 238 288 112 281 243 190 76
96 17 283 229 200 183 233 64 201 180 256 268 143 130 159 84 3 239 103 115 87 152 158 291 56 194 37 259 97 251
257 174 113 179 289 279 148 157 46 57 88 35 20 136 66 280 297 125 285 94 107 188 2 121 108 293 137 41 49 104
139 192 236 144 42 260 28 102 265 95 282 123 105 60 273 189 230 11 182 52 278 119 33 199 222 93 175 86 129 207
24 106 63 12 245 21 209 173 225 166 133 69 170 177 120 247 18 193 138 145 172 59 100 44 163 149 231 218 226 142
TABLE III PARAMETERS OF SEVERAL R = 2/3 SCCC S WITH Nπ = 300 BITS AND PUNCTURING PATTERNS p1 AND p2 OF TABLES I AND II, RESPECTIVELY
ρpb 20/300 40/300 60/300 80/300 100/300
dC3 L 0 0 0 0 0
U dCmin (dCf O ) 3 2 2 2 1
h(αM ) 3 2 2 2 1
U Listed in Table III are the parameters dC3 L , dCmin (dCf O ), h(αM ), hm and its multiplicity Hhm , for several R = 2/3 SCCCs of permeability rate ρpb . ρsb can be obtained from (1) fixing R = 2/3 and Ra = Rb = 1/2. The block length is K = 200 bits (Nπ = 300). The different values of ρpb are listed as rational numbers with denominator Nbp . For all permeability rates dC3 L = 0, thus h(αM ) is completely dominated by U (dCf O ). The union bounds to the frame error rate (FER) of dCmin the codes listed in Table III are depicted in Fig. 5. We observe that the error floor is lowered by increasing ρpb . The higher error floor is obtained for ρpb = 20/300, whereas increasing ρpb leads to better performance in the error floor region.
hm 3 2 2 2 1
Hhm 3.60E-01 4.81E-03 7.12E-03 5.28E-03 1.40E-04
Markers × ◦
Nevertheless, it should be stressed that a sufficient number of systematic bits should be preserved in order to ensure a good behavior for high Eb /N0 values. This can be observed for the curve ρpb = 100/300, which shows a worse slope. Indeed, for asymptotic values of Eb /N0 , the performance is dominated by hm , the minimum weight of code sequences. Therefore, the best performance for very high signal-to-noise ratios Eb /N0 is obtained for ρpb = 20/300 (curve with squares in Fig. 5), since the corresponding code has hm = 3, whereas the worst performance is obtained for ρpb = 100/300 (curve with circles in Fig. 5), since the corresponding code has hm = 1. In the same figure we report the union bounds for codes
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:57:28 EST from IEEE Xplore. Restrictions apply.
AMAT et al.: DESIGN AND PERFORMANCE ANALYSIS OF A NEW CLASS OF RATE COMPATIBLE SERIALLY CONCATENATED CONVOLUTIONAL CODES 2287 1.E+06
4 1.E+05
-1
1.E+04
1.E+05
10 d3
D3
1.E+03 1
1.E+02
1.E+04
3
-2
10
1.E+01
-3
0 0
50
100
150
200
250
10
300
2
-4
FER
1.E+03
d2
1.E+00
D2
0
10
2
10
-5
10
1.E+02 1
-6
10
p
ρ =20/300 p ρ =40/300
1.E+01 -7
10
1.E+00 0
50
100
150
200
250
0 300
Number of punctured bits in P2 C d2 L
C d3 L
Fig. 4. and (thick lines) and their multiplicities (thin lines) as a function of the number of punctured bits in
p
ρ =60/300 p ρ =80/300
-8
10
p
ρ =100/300
-9
10
C D2 L P2 .
and
C D3 L
with ρpb = 20/300 and ρpb = 100/300 computed following the approach for standard SCCCs [12] (curve with solid squares for ρpb = 20/300 and with solid circles for ρpb = 100/300). It is interesting to observe that the union bound analysis in [12] fails in predicting the performance of the SCCC of Fig. 1. In Fig. 6 we give FER curves (solid curves with empty markers) together with the union bounds on the error probability (dashed curves with empty markers) for the rate-2/3 SCCCs of Table III. Here, the block length is K = 2000 bits. The curves were obtained with a log-map SISO algorithm and 10 decoding iterations and assumed random interleavers. The puncturing patterns of Tables I and II were applied periodically. The simulation results show a very good agreement with the analytical bounds. We observe that lower error floors can be obtained by increasing ρpb . For example, the code ρpb = 8/30 shows a gain of 1.4 dB at FER= 10−5 with respect to the code ρpb = 2/30. However this gain tends to vanish for very high Eb /N0 , where the term hm is dominant (note the crossing of the two curves at Eb /N0 = 8 dB). In the same figure we plot the union bound of the SCCC with ρpb = 20/300 computed using the approach in [12] (the dashed curve with solid squares). The bound does not match the simulated curve. On the other hand, the performance in the waterfall region can d beC explained in part by looking at the cumulative function 1 Ah of the output distance spectrum of the serially concatenated code C. The codes for which the cumulative function of the average distance spectrum is minimum perform better at low SNRs, since, in this region, the higher distance error events have a nontrivial contribution to error performance. The cumulative functions of the codes listed in Table III are traced in Fig. 7. The worst performance for low signal-to-noise ratios Eb /N0 is obtained for ρpb = 20/300 (curve with squares in Fig. 5), since the corresponding code has the maximum cumulative function of the average distance spectrum, whereas the best performance is obtained for ρpb = 100/300 (curve with circles in Fig. 5), since the corresponding code has the minimum cumulative function of the average distance spectrum. This is in agreement with the simulation results of Fig. 6. For comparison purposes, we also report in Fig. 6 the
0
1
2
3
4
5
6
7
8
9
Eb/N0 (dB)
Fig. 5. Union bound on the frame error rate for the R = 2/3, K = 200 bits (Nπ = 300), SCCCs of Table III. The markers correspond to those used in Table III. The curves with solid markers correspond to the bounds computed following the approach in [12] (squares: ρpb = 20/300; circles: ρpb = 100/300).
simulated performance of the rate-2/3 PCCC proposed in [20], of the rate-2/3 SCCC proposed in [8] and the simulated performance of a standard SCCC consisting of an outer 8-state code punctured to rate-2/3 and inner accumulator. The PCCC code in [20] was obtained by optimally puncturing the mother code specified in the wideband code-division multiple-access (WCDMA) and CDMA2000 standards, consisting of the parallel concatenation of two rate-1/2, 8-state, convolutional codes. The SCCC in [8] is the same as our baseline code (two rate1/2, 4-state, systematic recursive encoders), but puncturing is limited to inner code parity bits. As it can be observed in Fig. 6, the proposed SCCC shows a significant gain in the error floor region with respect to the more complex code in [20]. On the other hand, the code in [8] performs much worse than our code since puncturing is limited to parity bits, which penalizes code performance in the error floor as discussed above. The proposed code with ρbp = 80/300 performs also slightly better than the standard SCCC of similar complexity. Note that the standard SCCC construction is not adapted to rate-compatibility. Fig. 8 depicts the FER of rate-9/10 SCCCs as a function of the permeability rate ρpb for several values of Eb /N0 . The minimum of each curve indicates the permeability rate that minimizes the FER for that particular Eb /N0 . The figure shows that the optimal permeability rates depend on the region of interest. For high Eb /N0 (i.e., error floor region), to achieve low error rates more parity bits should be kept, i.e., ρpb must be increased. On the other hand, for low Eb /N0 (i.e., convergence region) ρsb and ρpb should be more evenly balanced. Finally, in Fig. 9 we compare the simulated performance of several SCCCs of rate R = 9/10 with the analytical upper bounds. The block length is K = 2000 bits. Similar to the case R = 2/3 the curves show that lower error floors are obtained by keeping more parity bits in CI , i.e., for higher ρpb . Nevertheless, it should be stressed that some inner code systematic bits must be kept in order to allow convergence of the decoding process. For comparison purposes, we also report
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:57:28 EST from IEEE Xplore. Restrictions apply.
2288
IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 57, NO. 8, AUGUST 2009 1.E+00
0
10
Eb/N0=4dB 4.2dB
-1
10
4.4dB
1.E-01
-2
10
4.6dB -3
10
1.E-02
4.8dB
-4
10
FER
5dB
-5
1.E-03
FER
10
5.2dB
-6
5.4dB
10
ρ =20/300 p ρ =40/300
-8
10
5.8dB
ρ =80/300
-9
1.E-06
Std. SCCC
200 22/300
-11
10
0
1
2
6.4dB
Eb/N0=6.8dB
SCCC [8]
10
6.2dB
1.E-05
PCCC [20]
-10
6dB 6.6dB
p
10
5.6dB
1.E-04
p
-7
10
3
4
5
6
7
8
9
202 20/300
204 18/300
206 16/300
208 14/300
210 12/300
ρ
10
212 10/300
214 8/300
216 6/300
218 4/300
220 2/300
p
Eb/N0 (dB)
Fig. 6. Simulation results (solid curves) and performance bounds (dashed curves) of several R = 2/3 SCCCs, K = 2000 bits (Nπ = 3000). The curve with solid squares corresponds to the bound in [12] with ρpb = 20/300.
Fig. 8. FER performance versus ρpb for several Eb /N0 . R = 9/10, K = 2000 bits. 0
10
-1
10 14
10
-2
10
12
10
-3
10
10
FER
Cumulative Function
10
8
10
6
-4
10
-5
10
10
p
4
10
ρ =4/300 p ρ =10/300
-6
10
p
ρ =16/300
2
10
p
0
10
-7
ρ =20/300 p ρ =40/300
10
ρ =60/300
10
-8
p
-2
ρ =80/300
10
ρ =100/300
-4
0
5
10
15
20
25
30
35
2
3
4
5
6
7
8
9
10
Eb/N0 (dB)
p
10
PCCC [20] Std. SCCC
p
40
weight (d)
Fig. 7. Cumulative function, d1 AC h , of the distance spectra of the R = 2/3 SCCCs listed in Table III. The markers correspond to those in Table III.
Fig. 9. Simulation results (solid curves) and performance bounds (dashed curves) of several R = 9/10 SCCCs, K = 2000 bits. The curve with solid circles corresponds to the bound computed following the approach in [12] with ρpb = 16/300.
VI. C ONCLUSIONS in the same figure the performance of the rate-9/10 PCCC proposed in [20] and that of a standard SCCC consisting of an outer 8-state code punctured to rate 9/10 and inner accumulator. A gain of 2 dB at FER 10−5 is obtained for the code with ρpb = 16/300 with respect to the code in [20]. Further, the proposed codes perform much better than the standard SCCC, which shows a high error floor due to the heavy puncturing of the outer code. In the same figure we report the union bound for SCCCs in [12] for the code with ρpb = 16/300 (dashed curve with solid circles). The predicted floor is much higher than the actual floor. On the other hand, the analysis of Section III correctly predicts code performance. Indeed, the bound in [12] and the bound of Section III coincide for R = 1/3, i.e., when no puncturing is applied to the inner code. However, for higher rates, the bound in [12] is not able to capture the performance of the code structure of Fig. 1. The disagreement with respect to the simulation results is more significant for higher rates, as it can be observed in Figs. 6 and 9.
In this paper, we provided a performance analysis of a novel class of serially concatenated convolutional codes, where the inner code can be punctured beyond the unitary rate. We derived the union bounds on the error probability of this code structure by considering an equivalent code construction consisting of the parallel concatenation of two codes. The analysis showed that the optimization of the inner code puncturing depends on the outer code. This dependence cannot be tracked by the analysis for standard SCCCs, which explains that they fail in predicting the performance of this code structure. Based on the union bounds analysis, we derived design criteria for code optimization and design guidelines for the construction of well-performing rate-compatible code families. The proposed codes show superior performance than standard SCCCs, especially for high rates, and perform better than more complex PCCCs. The code analyzed in this paper, due to its simplicity and versatility, was chosen for the implementation of a very high speed (1Gbps) Adaptive Coded Modulation modem for satel-
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:57:28 EST from IEEE Xplore. Restrictions apply.
AMAT et al.: DESIGN AND PERFORMANCE ANALYSIS OF A NEW CLASS OF RATE COMPATIBLE SERIALLY CONCATENATED CONVOLUTIONAL CODES 2289
lite application. The interested reader can find implementation details in [21]. R EFERENCES [1] J. Hagenauer, “Rate-compatible punctured convolutional codes (RCPC codes) and their applications," IEEE Trans. Commun., vol. 36, pp. 389400, 1988. [2] S. Ryoo, S. Kim, and S. P. Lee, “Hybrid ARQ using rate compatible block turbo codes for mobile satellite systems," in Proc. IEEE 2003 Veh. Technol. Conf. (VTC 2003-Fall), vol. 4, pp. 2673-2677, Oct. 2003. [3] J. Li and H. Imai, “Performance of hybrid-ARQ protocols with rate compatible turbo codes," in Proc. 1st Int. Symp. on Turbo Codes, pp. 188-191, Sept. 1997. [4] A. Bernard, X. Liu, R. Wesel, and A. Alwan, “Speech transmission using rate-compatible trellis codes and embedded source coding," IEEE Trans. Commun., vol. 50, pp. 309-320, Feb. 2002. [5] C.-H. Wang, T.-M. Wu, L.-D. Jeng, and C.-W. Chen, “Rate-compatible punctured space-time codes for unequal error protection," in Proc. IEEE 2004 Veh. Technol. Conf. (VTC 2004-Fall), vol. 7, pp. 2379-2383, 2004. [6] C. Berrou and A. Glavieux, “Near optimum error correcting coding and decoding: turbo codes," IEEE Trans. Commun., vol. 44, pp. 126–1271, Oct. 1996. [7] A. S. Barbulescu and S. Pietrobon, “Rate compatible turbo codes," IEE Electron. Lett., vol. 31, pp. 535-536, Mar. 1995. [8] H. Kim and G. L. Stüber, “Rate compatible punctured SCCC," in Proc. IEEE Veh. Techno. Conf. (VTC’01), pp. 2399-2403, Oct. 2001. [9] N. Chandran and M. C. Valenti, “Bridging the gap between parallel and serial concatenated codes," in Proc. Virginia Tech. Symp. Wir. Pers. Commun., pp. 145-154, 2002. [10] F. Babich, G. Montorsi, and F. Vatta, “Partially systematic ratecompatible punctured SCCCs," IEEE Commun. Lett., vol. 4, pp. 241243, Apr. 2004. [11] F. Babich, G. Montorsi, and F. Vatta, “Design of rate-compatible punctured serial concatenated convolutional codes," in Proc. IEEE Int. Conf. Commun. (ICC’04), pp. 552-556, 2004. [12] S. Benedetto, D. Divsalar, G. Montorsi, and F. Pollara, “Serial concatenation of interleaved codes: Performance analysis, design and iterative decoding," IEEE Trans. Inform. Theory, vol. 44, pp. 909-926, May 1998. [13] S. Benedetto and G. Montorsi, “Unveiling turbo codes: some results on parallel concatenated coding schemes," IEEE Trans. Inform. Theory, vol. 42, pp. 409-429, Mar. 1996. [14] S. ten Brink, “Design of concatenated coding schemes based on iterative decoding convergence," Ph.D. dissertation, Institute of Telecommun., University of Stuttgart, 2001. [15] D. Divsalar, S. Dolinar, and F. Pollara, “Iterative turbo decoder analysis based on density evolution," IEEE J. Select. Areas Commun., vol. 19, pp. 591–600, May 2001. [16] T. M. Duman and M. Salehi, “New performance bounds for turbo codes," IEEE Trans. Commun., vol. 46, no. 6, pp. 717-723, 1998. [17] S. Shamai and I. Sason, “Variations on the Gallager bounds, connections, and applications," Trans. Inform. Theory, vol. 48, pp. 3029-3051, Dec. 2002. [18] A. Graell i Amat, F. Brännström, and L. K. Rasmussen, “On the design of rate-compatible serially concatenated convolutional codes," European Trans, Telecommun., vol. 18, pp. 519-527, Aug. 2007. [19] S. Lin and D. J. Costello, Jr., Error Control Coding, Fundamentals and Applications. Prentice-Hall, Inc., 1983. NJ. [20] F. Babich, G. Montorsi, and F. Vatta, “Some notes on rate-compatible punctured turbo codes (RCPTC) design," IEEE Trans. Commun., vol. 52, pp. 681-684, May 2004. [21] S. Benedetto, R. Garello, G. Montorsi, C. Berrou, C. Douillard, D. Giancristofaro, A. Ginesi, L. Giugno, and M. Luise, “MHOMS: high-speed ACM modem for satellite applications," IEEE Wireless Commun., [see also IEEE Personal Commun.], vol. 12, no. 2, pp. 66-77, 2005.
Alexandre Graell i Amat was born in Barcelona, Catalonia, Spain, on January 28, 1976. He received the M.S. degree in Telecommunications Engineering from Universitat Politècnica de Catalunya, Barcelona, Catalonia, Spain, in 2001, and the M.S. and the Ph.D. degrees in Electrical Engineering from the Politecnico di Torino, Turin, Italy, in 2000 and 2004, respectively. From September 2001 to April 2002, he was a Visiting Scholar at the Center for Magnetic Recording Research, University of California at San Diego, La Jolla, CA. From September 2002 to May 2003, he held a visiting appointment at Universitat Pompeu Fabra, and at the Telecommunications Technological Center of Catalonia, both in Barcelona. During 2001- 2004, he also held a part-time appointment at STMicroelectronics Data Storage Division, Milan, Italy, as consultant on coding for magnetic recording channels. From March 2004 to December 2005, he was a visiting professor at Universitat Pompeu Fabra. Since January 2006 he has been with the Department of Electronics of ENST Bretagne, Brest, France, where he is currently an Associate Professor. His research interests are in the area of Communication Theory and Information Theory, and include error-control coding, iterative decoding algorithms, and MIMO systems. Dr. Graell i Amat received the post-doctoral Juan de la Cierva Fellowship of the Spanish Ministry of Education and Science, and the Marie Curie IntraEuropean Fellowship of the European Commission. Guido Montorsi was born in Turin, Italy, on January 1, 1965. He received the Laurea in Ingegneria Elettronica in 1990 from Politecnico di Torino, Turin, Italy, with a master thesis, concerning the study and design of coding schemes for HDTV, developed at the RAI Research Center, Turin. In 1992 he spent the year as visiting scholar in the Department of Electrical Engineering at the Rensselaer Polytechnic Institute, Troy, NY. In 1994 he received the Ph.D. degree in telecommunications from the Dipartimento di Elettronica of Politecnico di Torino. In December 1997 he became assistant professor at the Politecnico di Torino. From July 2001 to July 2002 he spent one year at Sequoia Communications developing baseband algorithm for 3G wireless receivers. In 2003 he became senior member of IEEE and associate professor at Politecnico di Torino. His research interests are in the area of channel coding, particularly on the analysis and design of concatenated coding schemes and study of iterative decoding strategies. Guido Montorsi is author of more the one hundred papers on international journal and conferences. Francesca Vatta received a Laurea in Ingegneria Elettronica in 1992 from University of Trieste, Italy. From 1993 to 1994 she has been with Iachello S.p.A., Olivetti group, Milano, Italy. Since 1995 she has been with the Department of Electrical Engineering (DEEI) of the University of Trieste where she received her Ph.D. degree in telecommunications, in 1998. In November 1999 she became assistant professor at University of Trieste. Starting in 2002, she spent several months as visiting scholar at the University of Notre Dame, Notre Dame, IN, U.S.A., cooperating with the Coding Theory Research Group under the guidance of Prof. D. J. Costello, Jr. She is author of more than 60 papers published on international journals and conference proceedings. Her current research interests are in the area of channel coding concerning, in particular, the analysis and design of concatenated coding schemes for wireless applications.
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:57:28 EST from IEEE Xplore. Restrictions apply.