ARP and QPP Interleavers Selection Based on the ... · Horia Balta, Maria Kovaci, Alexandru Isar,...
Transcript of ARP and QPP Interleavers Selection Based on the ... · Horia Balta, Maria Kovaci, Alexandru Isar,...
Abstract—This paper presents the results obtained in a second
algorithmic step of the design of Duo Binary Turbo Codes (DBTCs). The design as a whole is based on an exhaustive search on the code-interleaver pairs having as selection criterion the convergence of the iterative decoding process. The first step of this search establishes a hierarchy of the recursive systematic duo-binary convolutional (RSDBC) codes with memory 2, 3, 4 and 5. The second step consists in searching the interlevears set individually for each of the best codes found previously. In this paper the obtained results for the 16-state DBTCs are presented. The permutations considered in this paper correspond at two of the most efficient types of interleavers: Almost Regular Permutations (ARP) and Quadratic Polynomial Permutations (QPP). The Bit and the Frame Error Rate (BER/FER) performances obtained in this paper with the best code-interleaver pairs are superior to those already reported in literature.
Keywords—convergence, generator matrix, iterative methods, permutation, turbo code.
I. INTRODUCTION NDOUBTEDLY, one of the basic parts of a turbo code (TC), [1] is the interleaver. The interleaver’s role is to implement a bi-univocal function (permutation) of the
form JJ →π : , where { }1,...1,0 −= NJ , and N is the length of the interleaver. The interleaver design is still an open problem, despite to the numerous solutions already proposed. There are two main constraints imposed to the designer. The first one, related to the purpose of the interleaver, is to disperse and mix as well as possible. Unfortunately, the two requirements (scatter and mix) are antagonistic. The second assessment comes through practical considerations of implementation. A deterministic interleaver (corresponding to an analytically writable permutation) is desirable. These are the so called „on the fly” interleavers. If we define, [2], the interleaving distance between two current positions i, j ∈ J as: ( ) ( ) ( )jijijid π−π+−=, (1) then the interleaver which spreads best has the highest minimum distance of interleaving: ( )jidd
Jji,min
,min ∈= . (2)
This paper was supported by the project "Development and support for
multidisciplinary postdoctoral programs in primordial technical areas of the national strategy for research - development - innovation" 4D-POSTDOC, contract nr. POSDRU/89/1.5/S/52603, project co-funded from the European Social Fund through the Sectorial Operational Program Human Resources 2007-2013.
The authors are with the Communications Department, University “Politehnica”, of Timisoara, Romania (e-mail: [email protected]).
This is a rectangular interleaver: ( ) pYqi +⋅=π , qXpi +⋅= , Xp <≤0 , Yq <≤0 (3) (where X and Y are integers such that X ⋅ Y = N), for which,
( )YXd ,minmin = . This value is maximum if X=Y. Unfortunately this type of interleaver spreads very well but it does not mix, implying a poor performance in turbo coding (TC). In contrast, the random interleaver (for which the positions ( )iπ are randomly chosen) mixes very well but it does not spread, having dmin = 2. A high-performance type is the S interleaver, [3]. It spreads and mixes very well, but it does not satisfy the second design constraint, its implementation being difficult. As a result, during time different types of interleavers which can disperse, mix and which can be implemented on the fly, have been proposed. Two of the best, which we use in the following, are the ARP [4], and QPP [5], interleavers. The TC design procedure also involves the choice of a particular quality criterion. Although in the literature various criteria which consider the intrinsic merits of the interleavers have been proposed, in this paper we considered the need of a very good collaboration between the interleaver and the component (convolutional) code. The powerful code-interleaver pair might not indicate the interleaver with the best intrinsic qualities (dmin or the interleaving distance spectrum, defined in [6]). Next is presented the proposed design strategy, which is based on a huge number of simulations. In a first step we performed a classification of the RSDBC code components in conjunction with an S interleaver using as selection criteria the convergence of the iterative decoding process, which was estimated by simulations [7]. The results are presented in [8].
In the second step we looked for ARP and QPP type interleavers for the best codes selected at the end of the first step, using the same criterion. The results obtained for RSDBC codes with 16 states are presented in this paper. A final step will be necessary for the selection and verification (through more consistent simulations) of the best code-interleaver pairs.
The rest of the paper is structured as follows. Section II presents the involved RSDBC codes and their hierarchy. The implementation of those codes is known (see for example [9]) but the hierarchy obtained is novel due the selection criterion used. This hierarchy represents the result of the first step of design. Section III describes the ARP and the QPP interleavers. Their implementation, based on the selection of some parameters, was already presented in literature (see for example [4] and [5]). Varying these parameters we have made an exhaustive search of the best interleavers associated with the best RSDBC codes obtained at the end of the first step.
ARP and QPP Interleavers Selection Based on the Convergence of Iterative Decoding Process for the Construction of 16-state Duo Binary Turbo Codes
Horia Balta, Maria Kovaci, Alexandru Isar, Miranda Nafornita, and Maria Balta
U
978-1-4577-1409-2/11/$26.00 ©2011 IEEE TSP 2011116
Section IV presents the results of this search. These results are new due to the exhaustive character of the search and to the search criterion used. Some conclusions and some future research directions are enumerated in Section V.
II. THE CONVOLUTIONAL CODE OF RATE 2/3 Fig 1 shows the general scheme of a recursive and
systematic convolutional encoder with r inputs, known in the literature [9], as a canonical form „observer”. Using the notations from Fig. 1 and the transform “D” ( ( ) ∑ = ⋅= m
jj
iji DgDg 0 and ( ) ∑∞= ⋅= 0n
nn DcDC ), it can be
shown that the redundant sequence and the transfer function matrix, G(D), of the encoder are given through the relations, [9]: C(D) = G(D)⋅ U(D) (4)
( ) ( )( )
( )( )
( )( )⎥⎦
⎤⎢⎣
⎡=
DgDg
DgDg
DgDg
DG r
0
1
0
2
0... . (5)
where: ( ) ( ) ( ) ( )[ ]T12... DuDuDuDU r= , ( ) ∑∞
=⋅=
0n
nini DuDu .
For a compact writing, we use the notation G=[gr … g1 g0], where the numbers gi, with i from 0 to r form the decimal transpose of the binary sequence [gi,m … gi,1 gi,0]. For r=2 we have: G=[g2 g1 g0], (6)
were gi, i=0, 1 or 2, are decimal numbers with values between 1 and 2m+1-1. In [8] is presented an analysis on these sets of codes, having the memory length between 2 and 5, in terms of convergence of iterative turbo decoding process, defined as:
Cv = NbNbiter
Nb
)(lim∞→
, (7)
where iter(Nb) represents the total number of performed iterations necessary for the decoding of the Nb blocks, considering that the TC is equipped with an iterations stop criterion. We used the stop criterion defined in [10]. In [8], we also presented values for the encoders cardinal sets. For the case m=4, considered in this paper, the total number of valid codes is 6600, from which 552 are bad, because g0=g1 or g0= g2 or g0⊕g1⊕g2=0, where ⊕ is the bit-wise or-exclusive operation. Following the search made on TCs that incorporates these codes and an S-type interleaver with the length N = 752 (which means 1504 bits or 188 bytes), we have obtained a RSDBC-hierarchy.
As shown in Table I, this hierarchy depends on the value of the signal to noise ratio (SNR) considered for the decoding process. We have considered an AWGN channel and a BPSK
modulation. In order to continue the search on the interleavers crowd (ARP and QPP) the encoders hierarchy obtained for SNR = 1.8 dB has been considered. We have observed analyzing the results (presented in Section IV) the equivalence of some codes. Two (convolutional) codes can be considered equivalent (definition given in [11]) if for the same set of input sequences, U, they generate the same set of code words (output sequences), V. We will customize this definition in case of the RSDBC encoders defined by (6). The peculiarity is the truncation of the sequences from U, V respectively, when used in TCs, the convolutional codes can be viewed as block codes. In addition we will accept that they are "equal" for sets of sequences obtained by rotating with 180 degrees (mirror image). So, we have: Theorem 1. If the polynomials g0, g1, g2, g3 satisfy the conditions: ( ) ( )1
02−⋅= DgDDg m and ( ) ( )1
13−⋅= DgDDg m (8)
then the codes generated by the matrices [ ]012 gggG = and [ ]230 gggGd = are equivalent (in mirror).
Proof. A turbo-code word generated by the matrix G has the form ( ) ( ) ( ) ( )[ ]TDuDuDuDv 012= , where
( ) ∑ −= ⋅= 1
0Nn
nini DuDu , 2,1,0=i , under restriction:
( ) ( )( ) ( ) ( )
( ) ( )DuDgDgDu
DgDgDu 1
0
12
0
20 ⋅+⋅= ,
or: ( ) ( ) ( ) ( ) ( ) ( )DgDuDgDuDgDu 112200 ⋅+⋅=⋅ . (9) Defining: ( ) ( )1
21
2−− ⋅= DuDDu N
d and ( ) ( )11
11
−− ⋅= DuDDu Nd , (10)
it results from (8):
( ) ( ) ( ) ( )( ) ( ) ( ) ( )1
31
11
11
10
12
122
−−−+
−−−+
⋅⋅=⋅⋅⋅=⋅
DgDuDDgDuDgDuDDgDu
dmN
dmN
. (11)
Fig 1 The general structure of a recursive and systematical multi-input convolutional encoder, with r/(r+1) rate: the observer canonical form.
ur-1ur-1
gr-1,m-1 gr-1,m gr,m-1 g1,m-1
Sm-1
gr,m g1,m
g0,m g0,m-1
ur
S0
gr,1gr-1,1 g1,1
g0,1
gr,0 gr-1,0 g1,0
g0,0=1
u1
ur
u1
c=u0
TABLE I THE BEST DOUBLE BINARY GENERATOR MATRICES OF MEMORY 4
SNR=1.6dB SNR=1.8 dB SNR=2.0 dB G Cv G Cv G Cv
123456789
10111213141516171819202122232425
29 27 2127 23 2127 21 2529 25 1927 17 3129 23 2529 23 1929 19 2129 19 2523 19 2523 21 2531 11 2525 23 1931 17 2531 17 1927 21 1925 19 2327 23 2529 27 1923 17 2531 29 1925 23 2127 21 3129 21 1921 19 29
3.333.353.353.363.373.373.383.393.393.403.403.413.413.413.423.423.423.433.433.433.443.443.443.443.44
27 23 21 29 27 21 27 17 31 27 21 25 29 23 19 29 25 19 29 23 25 23 19 25 25 23 21 27 21 19 29 19 21 21 19 29 29 19 25 25 23 19 31 17 19 25 19 23 29 21 19 27 21 31 31 17 25 23 21 25 25 21 23 31 11 25 25 19 29 31 21 27 21 14 19
2.98 2.98 3.00 3.01 3.02 3.02 3.03 3.03 3.03 3.03 3.04 3.04 3.04 3.04 3.04 3.05 3.05 3.05 3.05 3.06 3.06 3.07 3.07 3.07 3.07
27 17 3129 27 2127 23 2127 21 2525 23 2127 21 1929 23 1929 25 1929 23 2525 23 1929 19 2523 19 2527 21 3129 19 2121 19 2925 19 2331 17 2525 21 2331 17 1925 19 2923 21 2523 17 2527 23 2531 25 2331 29 19
2.622.652.682.692.692.712.722.722.722.722.732.732.742.742.742.742.752.752.762.762.762.772.772.782.78
117
Using the relations (9) and (11) it results: ( ) ( ) =⋅ DgDu 00
( ) ( ) ( ) ( )[ ]=⋅+⋅⋅ −−−−−+ 13
11
10
12
1 DgDuDgDuD ddmN
( ) ( )12
10
1 −−−+ ⋅⋅ DgDuD dmN , (12)
from where, taking into account (8), it results: ( ) ( )1
01
0−− ⋅= DuDDu N
d . (13) in which u0d(D) is defined like the redundant output for the encoder generated by the matrix Gd:
( ) ( )( ) ( ) ( )
( ) ( )DuDgDgDu
DgDgDu ddd 1
2
32
2
00 ⋅+⋅= . (14)
The result obtained in equation (13) states that if u=[u2,u1]T is an input sequence for the encoder defined by G, and v=[u2,u1,u0]T is the corresponding sequence at its output, then the sequence ud=[u2d,u1d]T (the mirror image of the sequence u), through the encoding performed by the matrix Gd, will generate the sequence vd=[u2d,u1d,u0d]T, i.e. the mirror image of v. (q.e.d.)
III. PERMUTATIONS
A. The Almost Regular Permutations The ARP interleavers are defined by 4 parameters: P, P1, P2
and P3, [4]. The interleaving equation is: π(i) = (P×i + Q + 3) mod N, ∀ 0 ≤ j < N (15) where P is prime with N, and P1, P2, P3 are natural numbers smaller than N, „mod” means the operation modulo N, and:
Q=0 if j=0 mod 4, Q=P1 if j=1 mod 4, Q=P2 if j=2 mod 4 and Q=P3 if j=3 mod 4.
This interleaver was used in [12] for the construction of a DBTC with memory 4, which we will consider as a reference for the search. In [12] it was considered an interleaving length of N=752 symbols (each of 2 bits) and the next values of the 4 parameters: P=35, P1=4, P2=8 and P3=16 were used.
B. The Quadratic Polynomial Permutations The QPP interleavers, proposed in [5], are based on the
following equation: π(i) = (f0 + f1×i+ f2×i2) mod N, ∀ 0 ≤ i < N, (16) where f0 is optional. One of the main merits of this interleaver is its propriety of „contention-free” described in [13]. Other properties of this interleaver family and their performances in the one-binary turbo codes case are described in [14]. The number of distinct interleavers is reduced to half of the total number of variants N2, where N is even, considering the following result:
Proposition 1 If N is even and π1(i) = (f1×i+f2×i2) mod N, ∀ 0 ≤i< N, with 0≤f1<N/2 is an interleaver function, then π2(i)=(f1×i+(N/2)×i+f3×i2) mod N, ∀ 0≤i<N, with f3=(f2+(N/2)) mod N, is an interleaver function equal to π1. The proof of this proposition is given in [7].
IV. EXPERIMENTAL RESULTS In this section are presented the search results obtained on
interleavers sets of ARP and QPP type. Since the total number of ARP type interleavers that can be built with relation (15) varying all four parameters is huge, we limited our search by setting two parameters P=35 and P1=4. For the
other two parameters of ARP, P2 and P3 we took values between 0 and N-1=751, resulting a total number of variants equal to 752×752. In the case of QPP type interleavers, the number of variants with f0 = 0, 0 ≤ f1 < N / 2 and 0 ≤ f2 < N is 376×752. In reality the number of valid interleavers which can be constructed (for both cases, ARP or QPP) is much smaller.
The search and selection program proposed in this paper executes the following algorithmic steps: 1. - sets a new value for the pair (P2, P3) and (f1, f2) respectively, and checks if the corresponding permutation function π has an inverse function. 2. - builds TC using the concerned interleaver and simulates its operation by calculating the convergence of the corresponding iterative decoding process upon relation (7). The simulation is stopped if the convergence Cv overcomes a given limit: stop the simulation if Cv(Nb) > Cv0 – Nb⋅dCv. (17) The given limit Cv0 – Nb⋅dCv decreases with Nb so that the simulation for a specific interleaver will not last forever. In the search we made, the values of the parameters Cv0 and dCv were 4.5 respectively 15⋅10-4. 3. – stores data about interleaver if Cv <4.5.
The results obtained are globally presented in Fig. 2. The total number of selected interleavers per convolutional code (matrix) is around 60,000 for the ARP type and around 1300 for the QPP type. For each of the 25 convolutional codes selected (Table II, SNR=1.8 dB) the best 24 interleavers of each type (ARP and QPP) were selected. For these interleavers, we performed simulations at SNR = 1.6 dB, for a number of 106 blocks. The BER and FER performances are presented as histograms in Fig. 3 and in Tables II and III. Parameters η and σ represent the average and the dispersion of the 24 values for BER and FER. For comparison, in Table II the BER and FER values of the reference TC with memory 4, proposed in [12], are also given. The histograms in Fig. 3 show numerous code-interleaver pairs with higher performance than that of the reference TC. For each matrix (code) the best interleavers, both in terms of BER and FER, are also presented in Tables II and III (columns marked with "minimum BER" and "minimum FER"). The best results were obtained with the codes defined by the matrices 6, 8, 17, 20 (reference code), 22 and 25.
V. CONCLUDING REMARKS AND FURTHER WORKS Our goal was to improve the Duo Binary Turbo Codes
(DBTCs) design procedure by conjoint exhaustive selection of the convolutional code and of the interleaver. This idea is original because it supposes the search of pairs of convolutional code-interleaver. The classical design procedures are based on convolutional code and interleaver separate searches.
The proposed design procedure can be realized in two algorithmic steps. We have already done and reported the first step establishing a hierarchy of the recursive systematic duo-binary convolutional (RSDBC) codes with memory 2, 3, 4 and 5 based on exhaustive search. This paper presents the results obtained in the second algorithmic step of the design.
118
5
10
15
20
253.3
3.4
3.5
3.6
3.7
3.8
0
2
4
6
8
matrix index
convergence
No.
of i
nter
leav
ers
5
10
15
20
253.3
3.4
3.5
3.6
3.7
3.8
0
50
100
150
matrix index
convergence
No.
of i
nter
leav
ers
Fig. 2. The histograms of the selected interleavers (along the convergence axis). The resolution in convergence is 0.01. Blue indicates the number 1 matrix and red indicates the number 25 matrix.
ARP QPP ×103
ARP
Fig. 3 The histograms (along the BER and FER axis), obtained for the 25 RSDBC convolutional codes, for 24 BER and FER values coresponding to the first 24 ARP and QPP interleaver.
510
1520
2530
3540
0
10
20
30
0
2
4
6
8
matrix index
BER×107
Number of interleavers
BER for reference TC matrix for
reference TC
10
20
30
40
50
60
70
0
10
20
30
0
3
6
9
matrix index
FER×106
Number of interleavers
FER for reference TC
matrix for TC reference
QPP5
1015
2025
3035
400
10
20
30
0
2
4
6
8
10
matrix index
BER×107
Number of interleavers
BER for reference TC matrix for
reference TC
10
20
30
40
50
60
70
0
10
20
30
0
2
4
6
8
10
matrix index
FER×106
Number of interleavers
FER for Reference TC
matrix for TC reference
119
The second step consists in exhaustively searching the interlevears set (ARP, QPP type) individually for each of the best codes found previously. A second element of originality is the use of the convergence of the iterative decoding process as selection criterion for this search. In this paper the obtained results are presented for the 16-state DBTCs (which incorporate RSDBC codes with memory 4).
The second step of the proposed searching procedure must be continued because the results presented here refer to 24 interleavers per matrix only. The results presented in this paper are already better than the results reported in literature [12]. There remains, also to verify, through more consistent simulations, the accuracy of the presented results and the selection of the best code - interleaver pairs resulting from these checks.
REFERENCES [1] C. Berrou, A. Glavieux, and P. Thitimajshima, “Near Shannon limit
error-correcting coding and decoding: turbo-codes,” in Proc. IEEE Int. Conf. on Commun., Geneve, Switzerland, May 1993, pp. 1064–1070.
[2] S.N. Crozier, „New High-Spread High-Distance Interleavers for Turbo-Codes”, Proc. 20th Biennial Symp. Commun., pp. 3–7, May. 2000, Kingston, Canada.
[3] A D. Divsalar and F. Pollara, “Multiple Turbo Codes for Deep-Space Communications”, JPL, TDA Progress Report 42-121, May 15, 1995.
[4] C. Berrou, Y. Saouter, Catherine Douillard, Sylvie Kerouédan, and M. Jézéquel, “Designing good permutations for turbo codes: towards a single model”, International Conference on Communications, IEEE 2004, Paris, France, 20-24 June, vol. 1, pp. 341-345.
[5] Q J. Sun and O. Y. Takeshita, “Interleavers for turbo codes using permutation polynomials over integer rings,” IEEE Trans. Inform. Theory, vol. 51, no. 1, Jan. 2005, pp. 101–119.
[6] H. Balta, S. El Assad, „Interleaving Distances Spectrum Comparison between Turco-codes Interleavers”, European Microwave Week, September 10-15, 2006, Manchester, UK.
[7] H. Balta, M. Kovaci, M. Nafornita, and M. Balta, “Multi-Binary Turbo-Code Design based on Convergence of Iterative Turbo-Decoding Process”, ECCSC'10, November 23–25, 2010, Belgrade, Serbia.
[8] H. Balta, A. Isar, M. Kovaci, M. Nafornita, M. Balta, “Double-Binary RSC Convolutional Codes Selection Based on Convergence of Iterative Turbo-Decoding Process”, ISSCS’ 2011, Iasi, Romania, accepted paper.
[9] R. Johannesson, K. Sh. Zigangirov, ”Fundamentals of Convolutional Coding”, IEEE Press, 1999.
[10] H. Balta, C. Douillard, M. Kovaci, “The Minimum Likelihood APP Based Early Stopping Criterion for Multi-Binary Turbo Codes”, Symposium of Electronics and Telecommunications – ETc 2006, Timisoara, Romania, Sept. 2006, pp.199-203.
[11] G.D. Forney Jr, “Convolutional Codes I: Algebraic Structure”, IEEE Transaction on Information Theory, nov.1970, pp.720-738.
[12] Catherine Douillard, C. Berrou, “Turbo Codes With Rate-m/(m+1) Constituent Convolutional Codes”, IEEE Transactions on Communications, Vol. 53, No. 10, Oct. 2005, pp.1630-1638.
[13] O.Y. Takeshita, “On maximum contention-free interleavers and permutation polynomials over integer rings,” IEEE Trans. Inform. Theory, vol. 52, no. 3., Mar. 2006, pp. 1249-1253.
[14] O.Y. Takeshita, “Permutation Polynomial Interleavers: An Algebraic-Geometric Perspective”, IEEE Transactions on Information Theory, Vol. 53, No. 6, June 2007, pp.2116-2
TABLE II. THE BEST ARP INTERLEAVERS
No. mean/variance minimum BER minimum FER
BER×108 FER×106 interleaver BER ×108
FER ×106
interleaver BER×108
FER×106
η σ η σ dmin P2 P3 dmin P2 P3 123456789
10111213141516171819202122232425
157185251197214134224153202213174187258260180235100180193108171111243295133
25504242443567364942334146514039253544263925414625
2628312425192619372735573132265314322517812346
19021
106745565
226
1326
465
273
106
1563141032
4
18232528242124252321232320242021252026232024231922
151 241415 46515 473
276 616368 42011 377
480 332231 113511 157175 233179 737455 58992 600
336 392172 664627 47747 525
664 392459 337139 601652 704272 420167 573567 621336 464
9611015211112337
10984
11811512889
16813711117648
13490516270
12620885
271723172021161223221954221418521132
96
181233
16318
28232725222124232319233021242823272426232021222324
276 748415 465639 437279 133284 628379 433480 332291 62523 341
451 389179 737136 472287 417336 392512 728511 121475 333232 152459 337139 601652 704507 417564 432227 577172 528
14711018913912773
10996
18115112812120413712019280
13790516274
23923598
1817211713
816102218192621141732
720
96
188
3013713
ref. - 114 22
TABLE III. THE BEST QPP INTERLEAVERS
No. mean/variance minimum BER minimum FER
BER×108 FER×106 interleaver BER ×108
FER ×106
interleaver BER×108
FER×106
η σ η σ dmin f1 f2 dmin f1 f2 123456789
10111213141516171819202122232425
138184256212222120246138196230177180287266185215133187193116179106244419136
31343834363257333728403347604826374141234225494129
4550332531152917572658413434243218272422311741
79621
5753536484
2717
7855554
2757
3443
4
26261824262424262124242826181826262618242618242424
211 94 327 470 351 658 259 94 165 658 305 282 117 658 237 282 353 470 71 282 45 94 23 564
165 470 129 94 173 94 49 470 23 470 139 94 25 470
331 470 327 94 25 94 45 658
143 282 233 282
8511918313816263
12381
13217511010920517295
12875
10211355
10158
13235880
3540321819
919124420494431261438141815
6251625
77514
26242426262424262624262024241824242418242426241824
211 9471 94
331 282327 658165 658305 282117 65823 658
165 28271 28249 470
287 56471 94
233 470173 94305 47071 282
233 65825 470
331 47045 47023 65845 658
129 658233 282
8516523814516263
12382
17217513215420820795
19089
15011355
14973
13242480
3532241619
919103920372822241424111715
623
925
74014
120