Вы находитесь на странице: 1из 4

IEEE COMMUNICATIONS LETTERS, VOL. 16, NO.

9, SEPTEMBER 2012

1365

Constrained Interleaving of Turbo Product Codes


John P. Fonseka, Eric M. Dowling, Thomas K. Brown, and Sang Ik Han
AbstractConstrained interleaving is presented to improve the
performance of turbo product codes. Traditional row/column interleaving achieves the highest possible minimum distance while
ignoring the error coefficients, whereas uniform interleaving
focuses on reducing the error coefficients while ignoring the
minimum distance. Constrained interleaving achieves the highest
possible minimum distance thereby forcing error coefficients of
all contributions below the highest achievable minimum distance
to zero while simultaneously lowering the error coefficients of the
remaining contributions close to those of uniform interleaving.
We present a lower bound for the error rate with constrained
interleaving, and demonstrate using 2D and 3D SPC codes
that the bound can be approached reasonably well with a
constrained interleaver that is only 2 to 3 times the size of a
row/column interleaver. Constrained interleaving performs better
than row/column interleaving and the improvement becomes
more significant with increasing order of SPC. While uniform
interleaving typically uses large interleaver sizes and creates an
undesirable error floor, constrained interleaving performs better
at much shorter interleaver sizes and eliminates the error floor.
Index TermsTurbo product codes, interleaving, multidimensional SPC codes.

I. I NTRODUCTION

URBO product codes (TPC), i.e., serially concatenated


block codes that employ iterative decoding, are considered to be powerful codes [1][3]. These codes employ an
inner and an outer code through an interleaver. TPC can have
high code rates and they can be decoded by soft iterative
(turbo) decoding that exchanges extrinsic information between
component codes [4]. When both component codes are the
same, the resulting code is referred to as a 2-dimensional (2D)
code, such as a 2D single parity check (SPC) code [3], [4].
As with any other concatenated code, the performance of a
TPC is bounded by the sum of all contributions made by nonzero codewords of the TPC [1]. These individual contributions
have their own weight starting from the minimum Hamming
distance (MHD) of the concatenation and their own error
coefficient. The performance can be improved by increasing
the MHD (thereby removing contributions corresponding to
lower distances) and/or lowering the error coefficients (which
is also known as achieving interleaver gain [1]). Commonly,
TPCs use a row/column interleaver that ensures the maximum
achievable minimum Hamming distance (MHD) which is
equal to the product of the two MHDs of the component
codes [2], [3]. On the other hand, uniform interleaving tries
to achieve interleaver gain by lowering the error coefficients
disregarding the MHD [1]. As a result, the MHD with uniform
Manuscript received May 24, 2012. The associate editor coordinating the
review of this letter and approving it for publication was A. Graell i Amat.
J. P. Fonseka, T. K. Brown, and S. I. Han are with the Dept. of Electrical
Engineering, University of Texas at Dallas, Richardson, Texas 75080 USA
(e-mail: kjp@utdallas.edu).
E. M. Dowling is with Trellis Phase Communications, Marshall, Texas
USA.
Digital Object Identifier 10.1109/LCOMM.2012.071612.121125

interleaving is usually that of the inner code. Still, uniform


interleaving can perform better than row/column interleaving,
especially in the waterfall region, but at the expense of much
larger interleaver size and an introduction of an error floor
due to the lower MHD. It is known in the literature that the
joint optimization of the MHD and the error coefficient in
a concatenated code is very difficult [1]. However, it would
be desirable to have an interleaver design technique that
could maintain the optimal MHD while lowering the error
coefficients of the remaining terms at the same time, thereby
allowing a much shorter interleaver to be used to obtain error
levels better than those of much longer uniform interleaver,
while also eliminating the undesirable error floor.
The purpose of this study is to present such an interleaving technique called constrained interleaving for TPCs. Constrained interleavers discussed here achieve the same highest
achievable MHD as row/column interleavers and maintain
interleaver gains almost close to those of uniform interleaving.
Constrained interleaving introduced here takes advantage of
the fact that the bits that are fed into the interleaver are
correlated due to the outer code. This correlation is used in
constrained interleaving to introduce constraints to maintain
the highest possible minimum distance while also preserving
most of the interleaver gain achieved by uniform interleaving.
This is because the error coefficients of all terms below the
highest achievable minimum distance are reduced to zero
while the remaining error coefficients are reduced to nearly
the same values as achieved with uniform interleaving.
We theoretically bound the performance of constrained interleaving of a 2D SPC over a Gaussian channel, and compare
it with row/column interleaving and uniform interleaving.
We also construct and analyze 3-dimensional (3D) SPC that
employ two stages of constrained interleaving. Numerical
results presented for 2D and 3D SPC demonstrate that TPC
constructed with constrained interleaving can perform significantly better than TPC constructed with row/column or
uniform interleaving, and that the theoretical results match
well with the simulations.
II. C ONSTRAINED I NTERLEAVING
Let us consider a constrained interleaver with an (n1 , k1 )
outer code with MHD do and an (n2 , k2 ) inner code with
MHD di . Constrained interleaving is characterized by an
integer parameter, , that is equal to the factor by which
the size of the constrained interleaver expands with respect
to row/column interleaving. Hence, the above combination
of component codes can construct a (n1 n2 , k1 k2 ) serially
concatenated code with constrained interleaving. In order to
construct one codeword of the concatenation, let us consider
constrained interleaving of n1 k2 coded bits of the outer
code. A constrained interleaver is formed according to a
rectangular array with the aim of feeding columns of it to

c 2012 IEEE
1089-7798/12$31.00 

1366

IEEE COMMUNICATIONS LETTERS, VOL. 16, NO. 9, SEPTEMBER 2012

the inner code. Hence, a constrained interleaver should have


k2 rows and n1 columns. The constrained interleaver can
be designed to guarantee the maximum achievable minimum
distance for the concatenation, which is equal to the product
do di , by enforcing the constraint that the coded bits of every
codeword of the outer code are placed in different columns
of the constrained interleaver array. In addition to satisfying
this constraint, it is desirable to achieve the maximum possible
interleaver gain. To achieve interleaver gain, the constrained
interleaver allows bits on every row and every column of
the k2 by n1 array to be uniformly randomized separately.
A constrained interleaver that preserves the above constraint
and uniformly randomizes the contents of rows and columns
independently can be constructed using the following three
steps: 1. Feed-in the coded bits of the outer code into the
k2 by n1 interleaver array row by row. 2. Randomize the
placement of bits in each row independently. 3. Randomize
the placement of bits in each column independently. These
three steps ensure that coded bits from any single codeword
remain in separate columns thereby maintaining the MHD at
do di , and any coded bit of the outer code has the possibility
of being placed anywhere in the interleaver array.
III. A NALYSIS OF 2D SPC WITH C ONSTRAINED
I NTERLEAVING
Let us consider constrained interleaving of 2D SPC codes
formed by two (m, m 1) SPC codes (also referred to as 1D
SPC codes) each with rate R = (m1)/m. In this case, n1 =
n2 = m, k1 = k2 = (m 1), do = di = 2 and the code rate
of the 2D SPC is R2 . Let us compute the performance bound
with constrained interleaving by focusing on the significant
contributions made by codewords with the MHD which for 2D
SPC is do di = 4. A codeword with weight 4 of the 2D SPC,
with constrained interleaving, can only be generated either by
(a) a single codeword of the outer code with weight 2 placed
anywhere in the interleaver array, or (b) by two codewords
of the outer code each with weight two with the two nonzero bits placed along the same columns. Following [1], the
error coefficient corresponding to the contribution made by a
codeword of the concatenation formed by a weight w message
sequence that generates a codeword of weight l at the output
of the outer code and then forms a weight h at the output of
the inner code is given by
c(w, l, h) =

No (w, l)Ni (l, h)


w

k1
N (l)

(1)

where, No (w, l) is the number of ways the outer code can


generate a weight l output from a weight w input, Ni (l, h) is
the number of ways the inner code can generate a weight h
output from a weight l input, and N (l) is the number of ways
a weight l sequence can be placed in the interleaver subjected
to the constraint. Using (1), the contributions to the bit error
rate (BER) made by weight four codewords in cases (a) and
(b) discussed above, over a Gaussian channel can be expressed
respectively as


8R2
(2)
P1 (m 2) Q
P2

(m1)m14 m 


2
2
2
2 Q
8R
m
(m 1)6 4

(3)

 
n!
and Q()
where is the signal to noise ratio, nx = x!(nx)!
is the standard Q-function. Focusing on the error coefficient,
it is seen that the error coefficient of (2) is on the
 order of
O(m) and is independent of . Similarly, since nx is on the
order of O(nx ) for large n and small x, the error coefficient
of (3) is on the order of O(m2 /). Hence, the effective BER
bound of 2D SPC with constrained interleaving, which is given
by the sum (P1 + P2 ), can be decreased down to P1 in (2)
by increasing , and hence, (2) acts as a lower bound of
performance with constrained interleaving. The choice of
is a tradeoff between the desired performance and the frame
size. The numerical results show that even a choice of = 3
is sufficient to reasonably approach the bound given by (2).
For comparison, we also consider the performance of 2D
SPC with uniform interleaving [1] with the same interleaver
size N = m(m 1). It is noticed that the MHD with
uniform interleaving is 2, which results from the case when
a codeword of weight 2 of the outer code feeds both of
its non-zero bits into the same codeword of the inner code.
However, when a weight 2 codeword of the outer code is
interleaved, the two non-zero bits are much more likely to
be placed in different codewords of the inner code. Hence, a
single weight 2 codeword of the outer code can generate (a) a
weight 2 codeword of the concatenation achieving interleaver
gain, or (b) a weight 4 codeword of the concatenation without
achieving interleaver gain. Focusing on contributions made by
a single weight 2 codeword of the outer code, Pbe of 2D SPC
with uniform interleaving can be approximated to
2





m
2 m1
2
4R2 +(m2)Q
8R2
P3
m(m1) Q
(m 1)
2
(4)
The first term of (4), that corresponds to weight 2 codewords
of the concatenation, achieves interleaver gain on the order of
O(1/) while the second term that corresponds to weight 4
codewords of the concatenation, which is identical to P1 in
(2) of constrained interleaving, achieves no interleaver gain.
Hence, the performance of 2D SPC with uniform interleaving
can be made closer to that of constrained interleaving given
by (2) by increasing the interleaver size. With row/column
interleaving, it is known that Pbe of n-dimensional SPC (nD
SPC) code is approximately equal to [3]


2n+1 rn
(5)
Pbe,row/column (m 1)n Q
Fig.1 shows the numerical results of 2D SPC with m = 10
with = 3 and 10 for constrained interleaving, along with
those of uniform and row/column interleaving. For comparison, theoretical bounds obtained for constrained interleaving given by (2), uniform interleaving given by (4), and
row/column interleaving given by (5) are also plotted. Numerical results show that the theoretical bounds match well with
the simulated results. Further, constrained interleaving with
= 3 performs reasonably close to the lower bound given by
(2) and gets better with increasing . However, the majority of
the improvement can be achieved with = 3. Improvements
of 0.5dB over row/column interleaving can be achieved
with constrained interleaving at the expense of increased frame
size by a factor . Even though the selection of depends on
the component codes, typically a value of equal to 2 or 3 is

FONSEKA et al.: CONSTRAINED INTERLEAVING OF TURBO PRODUCT CODES

Fig. 1.

BER variations of 2D codes with different interleavers.

sufficient to reach the performance bound. It is also noted that


when = 1, constrained interleaving with 2D SPC will have
the same performance as row/column interleaving because
every column of the interleaver is guaranteed to contain coded
bits from the same set of codewords of the outer 1D SPC. This
can also be justified numerically as the effective bound of 2D
SPC (given by the sum of (2) and (3)) closely follow (5) when
and = 1 and n = 2.
IV. 3D SPC WITH C ONSTRAINED I NTERLEAVING
A 3D SPC code with constrained interleaving can be
constructed using multiple codewords of the 2D SPC code
with constrained interleaving discussed in section II and III
and employing a second stage constrained interleaver. This
second stage interleaver, referred to as interleaver 2, can be
constructed by placing multiple codewords of the 2D SPC on
a single row, forming (m1) such rows, and then interleaving
according to the three steps listed in section II. In order
to keep the construction general, we consider 1 number
of (m, m 1) 1D SPC codewords along a single row of
the first stage interleaver (interleaver 1) and 2 number of
(1 m2 , 1 (m 1)2 ) codewords of the 2D SPC along a single
row of interleaver 2. As a result, the dimensions of the two
interleavers are; (m 1) by m1 and (m 1) by 1 2 m2
respectively. The 3D SPC codewords are finally generated by
feeding the interleaved bits of the interleaver 2 along columns
into the third (m, m 1) 1D SPC code.
The analysis of 3D SPC codes with constrained interleaving
is similar to that of 2D SPC codes discussed in section III.
For the analysis, the codewords of the first 1D SPC can be
grouped into 2 (m 1) groups, each consisting of 1 (m 1)
codewords of the first (m, m1) 1D SPC code and responsible
for generating a single 2D SPC codeword that feeds into the
interleaver 2. Following the analysis in section III, it is seen
that, within any of these groups, the contribution made by
a single non-zero 1D SPC codeword does not achieve any
interleaver gain while those contributions made by multiple
non-zero 1D SPC codewords can be lowered by increasing
the value of 1 in interleaver 1. Further, as discussed earlier,
the minimum weight of a 2D SPC codeword generated by any
group is four. Following the same argument into interleaver
2, it is seen that when only a single group feeds one of

1367

its minimum weight (weight 4) codewords into interleaver 2,


its contribution achieves no interleaver gain, while multiple
groups feed non-zero 2D SPC codewords into the interleaver
2, their contributions can be lowered by increasing the number
of columns of interleaver 2 which is equal to 1 2 m2 . Hence,
it is seen that 1 plays a bigger role in achieving interleaver
gain as it can increase the interleaver gain in both interleaver 1
and interleaver 2, while 2 can only increase interleaver gain in
interleaver 2. Hence, any given overall frame size expansion
factor = 1 2 can be best utilized by using 1 = and
2 = 1. Further, since the constrained interleaver 2 places
coded bits of all 2D SPC codewords (with minimum weight
of 4) in different columns, the final 1D SPC ensures that the
minimum weight of the 3D SPC code is equal to eight. Hence,
the two constrained interleavers guarantee the highest possible
MHD of 8 for the overall 3D SPC.
Following the above observations, it is seen that the performance of 3D SPC with constrained interleaving is limited by
the contributions made by codewords with minimum weight
(weight 8) that are initiated by non-zero codewords in a single
group that end up achieving no interleaver gain in interleaver
2. As in section II, contributions made by a single 1D SPC
codeword with weight two and two 1D SPC codewords
each with weight two within any single selected group can
determine the dominant contributions of the 3D SPC. These
two BER contributions are respectively given by modifying
(2) and (3) for 3D SPC codes as


16R3
(6)
P1a (m 2) Q
P1b

(m1)1 m14 m1  




2
2
2
3


16R
Q
1
1 (m 1)6 m
4
4

(7)

As in 2D SPC codes, (6) achieves no interleaver gain and


acts as a lower bound to the overall performance of 3D SPC
codes which can be approached by increasing 1 thereby
reducing the impact of (7). The combined effect of (6) and
(7) provides the effective bound. Comparing the lower bound
of 3D SPC in (6) with the performance of 3D SPC with
row/column interleaving in (5), it is seen that 3D SPC with
constrained interleaving can achieve interleaver gain on the
order of O(m2 ) over row/column interleaving. Recalling that
the improvement of constrained interleaving over row/column
interleaving for 2D SPC was on the order of O(m), it is
seen that the improvement of constrained interleaving becomes
more significant as the order of SPC increases.
As with 2D SPC, 3D SPC with uniform interleaving has a
MHD of two. In addition, significant contributions to the BER
of 3D SPC with uniform interleaving are made by weight
4 and weight 8 codewords. Following the discussion of 2D
SPC with uniform interleaving, the performance of 3D SPC
codes can be bounded by focusing on the codewords of the
concatenation generated by a single 1D SPC codeword with
weight 2 of the first SPC code. A single weight 2 codeword
of the first SPC code can generate (a) a weight 2 codeword
after the second SPC code followed by a weight 2 codeword
after the third SPC code achieving interleaver gain in both
interleaver 1 and interleaver 2 , or (b) a weight 2 codeword
after the second SPC code followed by a weight 4 codeword
after the third SPC code achieving interleaver gain only in

1368

Fig. 2.

IEEE COMMUNICATIONS LETTERS, VOL. 16, NO. 9, SEPTEMBER 2012

BER variations of 3D codes with different interleavers.

interleaver 1, or (c) a weight 4 codeword after the second SPC


code followed by a weight 4 codeword after the third SPC
code achieving interleaver gain only in interleaver 2, or (d) a
weight 4 codeword after the second SPC code followed by a
weight 8 codeword after the third SPC code without achieving
interleaver gain in either interleaver. Hence, the performance
with uniform interleaving can be bounded by considering the
contributions of all of the above four cases. Note that the
contribution from the weight 8 codewords described in case
(d) is the same as that of constrained interleaving given by (6).
Also note that the cases (a)-(c) that achieve interleaver gain but
correspond to lower weights (weights 2 and 4) contribute to
the error floor of the concatenation with uniform interleaving.
Comparing the bounds with constrained interleaving given by
(6) and uniform interleaving given by the sum of cases (a)(d), it is seen that constrained interleaving performs better
than uniform interleaving while also eliminating the error floor
present in uniform interleaving. Similar to 2D SPC codes, 3D
SPC codes are decoded using SISO iterations. As in 2D SPC
codes four SISO iterations are found to be sufficient in all
cases.
Fig.2 shows the bit error rate variation of 3D SPC of
constrained interleaving with m = 10, 1 = 1, 2, 3 and
2 = 1, along with those of corresponding uniform, and
row/column interleaving with their respective bounds. Unlike in the case of 2D SPC, constrained interleaving with
= 1 performs better than row/column interleaving. This
improvement is possible because the columns of interleaver
2 have the freedom to be composed of coded bits of different sets of 1D SPC codewords of the first SPC due to
constrained interleaving. It is seen that, as with 2D SPC,
constrained interleaving of 3D SPC performs better than other
interleaving techniques, and the theoretical results match well
with simulations. The improvement of constrained interleaving
over uniform interleaving becomes very significant after the
error floor impacts the performance with uniform interleaving.
Specifically, constrained interleaving with = 2 can achieve
a gain of about 0.4dB at BER = 106 and possibly more
than 1dB at BER = 107 over uniform interleaving with
= 2 or even with = 3. The impact of the error floor
in uniform interleaving (contributions of the cases (a) through

(c)) can be reduced by increasing the interleaver size. Hence,


compared with uniform interleaving, constrained interleaving
can perform better at lower interleaver sizes. It was also
seen in Fig.1 that the error floor (given by the first term of
(4)) has a more noticeable effect in 2D SPC with uniform
interleaving compared with 3D SPC suggesting that the effect
of the error floor can be lowered by increasing the order of
SPC and/or increasing the size of the interleaver. However,
constrained interleaving can eliminate effect of error floor and
perform better than uniform interleaving while using a shorter
interleaver. Comparing with Fig.1, as expected, it is noticed
that the performance improvement of constrained interleaving
over row/column interleaving becomes more significant as the
order of the SPC increases. It also follows from Fig.2 that
3D SPC with constrained interleaving only requires a frame
multiplication factor of two, as opposed a factor of three
in 2D SPC shown in Fig.1, to achieve most of the benefits
of constrained interleaving suggesting that = 2 is sufficient
when the order of the SPC is three or more. The BER variation
of constrained interleaving with = 1 shows that, if the order
of the concatenation is three or more, constrained interleaving
can perform better than row/column interleaving without any
expansion in the interleaver size. Specifically, around BER
= 106 , 3D SPC with constrained interleaving gains about
0.5dB over row/column interleaving with no interleaver size
expansion and gains about 0.8dB by doubling the interleaver
size.
V. C ONCLUSIONS
Constrained interleaving can be used to improve the performance of TPC. The interleaver constraints ensure optimal
MHD, thereby eliminating contributions from the most problematic lower-distance codewords. Also, the error coefficients
of the remaining codewords are reduced to levels close to
those of uniform interleaving. TPC can be constructed with
constrained interleaving to outperform row/column interleaving with a zero increase or a moderate increase in interleaver
size (depending on the code) and to outperform uniform
interleaving with much smaller interleaver sizes at moderate
to high SNR. This improvement has been demonstrated by
constructing and evaluating the performance of 2D and 3D
SPC codes. Theoretical performance bounds with constrained
interleaving have been derived and simulation results have
been provided.
R EFERENCES
[1] S. Benedetto, D. Divsalar, G. Montorsi, and F. Pollara, Serial concatenation of interleaved codes: performance analysis, design, and iterative
decoding, IEEE Trans. Inf. Theory, vol. 44, no. 3, pp. 909926, May
1998.
[2] F. Daneshgaran, M. Laddomada, and M. Mondin, Interleaver design for
serially concatenated convolutional codes: theory and application, IEEE
Trans. Inf. Theory, vol. 50, no. 6, pp. 11771188, June 2004.
[3] D. M. Rankin, T. A. Gulliver, and D. P. Taylor, Parallel and serial
concatenated single parity check product codes, EURASIP J. Applied
Signal Process., vol. 2005, pp. 775783, Jan. 2005.
[4] J. Hagenauer, E. Offer, and L. Papke, Iterative decoding of binary block
and convolutional codes, IEEE Trans. Inf. Theory, vol. 42, no. 2, pp.
429445, Mar. 1996.

Вам также может понравиться