Mar 12, 2010 - A rate- compatibility restriction to the puncturing rule is used, im- plying that all the code bits of a high-rate punctured code are used by the ...
Design of Rate-Compatible Punctured Turbo (RCPT) Codes Fulvio Babich
Guido Montorsi
Francesca Vatta
1: DEEI, Universit`a di Trieste Via A. Valerio 10, I-34127 Trieste (Italy) Tel: +39-040-6767146; Fax: +39-040-6763460 2: Dipartimento di Elettronica, Politecnico di Torino Corso Duca degli Abruzzi 24, I-10129 Torino (Italy) Tel: +39-011-5644144; Fax: +39-011-5644099 Abstract— In this paper, we propose and compare some design criteria for the search of good rate-compatible turbo (RCPT) codes families. The considerations presented in [1] to find “best” component encoders for turbo codes construction are extended to find the “best” rate-compatible punc turing patterns for a given interleaver length . This approach is shown to be the optimal one, both in the maximumlikelihood sense (using transfer function bounds) and in the iterative decoding sense (through simulation results). A ratecompatibility restriction to the puncturing rule is used, implying that all the code bits of a high-rate punctured code are used by the lower rate codes. The two main applications of this technique are its use in modified type II ARQ/FEC schemes and to achieve unequal error protection of an information sequence.
the receive side. 2. Unequal error protection (UEP). Since codes are compatible, rate variation within a data frame is possible to achieve unequal error protection: this is required when different levels of error protection for different parts of an information sequence or block are needed. The paper is organized as follows. Section II presents an overview of RCPT codes. In Section III the design criteria for the search of good rate-compatible turbo (RCPT) codes families are outlined. In Section IV, their performance is addressed. Finally, Section V summarizes the main results and the conclusions. II. R ATE - COMPATIBLE
PUNCTURED TURBO
(RCPT)
CODES OVERVIEW
I. I NTRODUCTION The concept of rate-compatible codes has been presented for the first time in [2], where a particular family of convolutional codes, called in the paper rate-compatible punctured convolutional (RCPC) codes, is obtained by adding a ratecompatibility restriction to the puncturing rule. This restriction implies that all the code bits of a high-rate punctured code are used by the lower rate codes; or, in other words, the high rate codes are embedded into the lower rate codes of the family. An extension to turbo codes has appeared in [3]. The two main applications of this technique are [2]: 1. Modified type-II Automatic Repeat reQuest / ForwardError Correction (ARQ/FEC) schemes. The principle of this hybrid ARQ/FEC scheme is not to repeat information or parity bits if the transmission is unsuccessful, as in previous type II ARQ/FEC schemes, but to transmit additional code bits of a lower rate RCPC code, until the code is powerful enough to enable decoding. Namely, if the higher rate codes are not sufficiently powerful to decode channel errors, only supplemental bits, which were previously punctured, have to be transmitted in order to upgrade the code. This includes several decoding attempts on
The concept of rate-compatible turbo codes has been introduced in [4] to achieve unequal error protection: in this work two dimensional turbo codes are described which can vary their rate from to using the same encoder/decoder block. This idea has been extended in [3] to multidimensional turbo codes to be used in hybrid FEC/ARQ protocols, varying the rate from 1 to , where is the dimension of the code. The rate variation is achieved by puncturing, with puncturing matrices, an underlying rate turbo encoder, consisting of ( ) rate RSC encoders. The puncturing scheme is periodical but completely general, since both systematic and non systematic RCPT codes can be obtained. This is the only work where turbo codes with rate are considered. A. Design methods A design method is given for the first time in [5], where both systematic and non-systematic RCPT codes are considered. The classical rate turbo code with two RSC constituent codes is considered. In [6], design criteria of rate ( "! ) punctured turbo codes are given in detail, deriving high-rate
0-7803-7400-2/02/$17.00 © 2002 IEEE
1701 Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:31:27 EST from IEEE Xplore. Restrictions apply.
codes via puncturing a basic rate turbo-code composed of two rate constituent encoders. Rate compatibility is not directly addressed in the design criteria, where computer search is performed varying the puncture pattern over the entire set of possible puncturers (suitable to obtain a given rate), not taking into account the rate-compatibility restriction described above. Only parity bits are punctured. In [3], criteria for optimal puncturing design are outlined, based on the spectrum of the whole parallel concatenated code. Periodic puncturing patterns are considered, with the interleaver size ranging from 256 to 4096. III. O PTIMAL
PUNCTURING SEARCH BASED ON TURBO CODES SPECTRUM
Assume to construct a turbo code by parallel concatenating two equal rate-$# systematic convolutional encoders and an interleaver. The information sequences are transmitted together with the %#& check sequences of the first encoder. The same information sequences are interleaved and enter the second encoder; the %#'( check sequences generated by the second encoder are also transmitted. The rate of the turbo code is then )#'* . The criteria to design an “optimum” rate-compatible turbo code family can be based on the distance spectrum of the whole parallel concatenated code, as proposed in [3]. The distance spectrum (DS) is defined as the set of nonzero terms of the (output) weight enumerating function (WEF). The free distance of the code is the minimum output weight with a nonzero WEF term. Moreover, from the socalled input-output weight enumerating function (IOWEF) of the turbo code1 , the pairs ,+.-0/213-4 can be determined, where +.- is the minimum weight of code sequences generated by input sequences of weight 5 and 13- are their multiplicities, i.e., the number of code sequences of weight + generated by input sequences of weight 5 . Given two alternative rate-compatible puncturing patterns and their corresponding IOWEFs, several criteria can be adopted for selecting the “better” candidate: 1. Free-distance criterion: Select the candidate with the maximum free distance. If there is a tie, select the candidate with the minimum slope (see next point). 2. Minimum slope criterion [3]: Fit a regression line to the first 30, or so, terms of the DS. The slope coefficient of this fitted line represents a measure of the rate of growth of the WEF as output distance + increases. Select the candidate, which has the minimum slope. If there is a tie, select the candidate with the larger 6
To compute the input-output weight enumerating function, see [7] and references therein.
free distance. 3. Optimization of the sequence ,+7-0/218-9 : Determine, as in [1], the pairs ,+7-0/218-9 for 5 :/5@?BADC . Select the candidate yielding the optimum values for ,+7-0/218-9 , i.e., the one which sequentially optimize the pairs ,+7-0/218-9 (first +7- is maximized and then 13- is minimized). The first criterion is expected to select a family of punctured codes which perform well at “high” SNR [3], since the minimum weight error events dominate performance at high SNR. The second criterion is expected to yield a family of subcodes that perform better at lower SNR where higher distance error events have a nontrivial contribution to error performance. The third criterion is expected to be the best one, since the inclusion of multiplicities in the code search has been shown in [1] to lead to significantly better codes. This criterion can also be applied considering the spectrum of the component encoders, taken separately, as in [1]. This can be done by extending the considerations presented in [1] to the search of the “best” rate-compatible puncturing patterns for a given interleaver length . To decouple the rate-compatible puncturing pattern design from the interleaver design, a uniform interleaver is used, defined as a probabilistic device that maps a given input sequence of length and weight 5 into all distinct EGF -IH permutations of it with equal probability [7]. In fact, as observed in [3], the selection of the interleaver adds an additional dimension to the search for optimal puncturing tables, rendering an already time-consuming task even more so. Moreover, if one candidate puncturing pattern outperforms another one, there is no way to determine if this is due to the relative distance spectra of the two punctured codes, or to the compatibility of the actual interleaver with one of the candidates. For each of the above mentioned criteria, several assumptions can be made, and each of them should be discussed: 1. Information bits may be punctured or not, leading to a non-systematic or to a systematic punctured code, respectively. 2. The puncturing pattern could be periodic or not: in the second case, of course, the optimal puncturing pattern search is more general, even if computationally more cumbersome. 3. The puncturing pattern may be homogeneous or not: namely, the punctured bits can be uniformly distributed among information bits and the turbo code constituents check bits, or not. 4. The termination bits could be punctured or not. When information bits are punctured, the local invertibility of the turbo code has to be guaranteed, i.e., a one-to-one mapping between corresponding blocks of information and
1702 Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:31:27 EST from IEEE Xplore. Restrictions apply.
TABLE I
10
P UNCTURING SCHEMES 9
Termination bits Punctured Non-punctured Punctured Non-punctured
Markers J K L M
8
Eb/N0 (dB)
Information bits Punctured Punctured Non-punctured Non-punctured
encoded bits. In fact, since one important application of this technique is its use in variable-redundancy hybrid ARQ schemes, it is desirable to split the encoded sequence into subsequences to be sent in successive transmissions. Each subsequence, or a combination of two or more of them, should contain all the information necessary to recover the original information in case of no errors [8]. IV. P ERFORMANCE
ANALYSIS
Consider a rate turbo code obtained by concatenating, through a random interleaver, an 8-states rate 1/2 and a rate 1 convolutional codes (CC), as specified in [9]. When considering the spectrum of the whole parallel concatenated code, as proposed in [3], we have chosen to follow the most general approach for optimal puncturing search, i.e., the puncturing pattern has been selected to be both periodic and non-periodic, and also to be both homogeneous and non-homogeneous. Moreover, the four puncturing schemes summarized in Table I have been considered (check bits are always punctured). To find the “best” rate-compatible puncturing pattern family the following steps are needed: 1. Choose the interleaver length . 2. Define a puncturing array p of length given by the number of bits to be punctured: p has to be initialized to all “1”. 3. Amongst the elements p which are “1” select one and set it to “0” (compatibility rule). 4. If information bits are to be punctured, eliminate any candidate that fails to satisfy the local invertibility of the turbo code. 5. Determine for this punctured code, as in [7], the WEF. 6. Use, alternatively, the following three criteria to select the optimum candidate: N Free-distance criterion: select the candidate with the maximum average free distance. If there is a tie, select the candidate with the minimum slope. N Minimum slope criterion: select the candidate which has the minimum slope. If there is a tie, select the candidate with the larger average free distance. N Select the candidate yielding the optimum values for O -IST-VUXW,Y ,+.-P/213-4RQ -IS .
7
6
5
4
0.45
0.55
0.65 R c
0.75
0.85
Fig. 1. Performance of RCPTC in terms of ZP[D\2]_^ versus code rate `ba at BER= c dfeg . The used markers are summarized in Table I. Empty markers: simulation results. Filled markers: transfer function bound results. Minimum slope criterion: solid curves. Free-distance criterion: dash-dotted curves. Optimization of the sequence hji)kmln]okTp applied to the spectrum of the first component encoder: dashed curves.
7. Designate the puncturing pattern selected from the previous step. 8. Repeat steps from 3 to 7 setting to “0” another element amongst the elements of p which are “1”. When considering the spectrum of the component encoders, taken separately, we have followed the approach proposed in [1]. This criterion has been shown in [1] to be outperforming the procedure based on the maximization of + and +rq without considering the multiplicities. Fig. 1 shows the performance of the RCPT codes designed following the criteria outlined in the previous section. The performance is shown on the additive white Gaussian noise (AWGN) channel in terms of sot2 13u against the code rate wv . Union bound results with maximum likelihood (ML) decoding (and uniform interleaver) and simulation results are given, with interleaver length x