Adaptive Hybrid ARQ Systems With BCJR Decoding

  • Upload
    wa

  • View
    219

  • Download
    0

Embed Size (px)

Citation preview

  • 1606 IEEE TRANSACTIONS ON VEHICULAR TECHNOLOGY, VOL. 57, NO. 3, MAY 2008

    Adaptive Hybrid ARQ SystemsWith BCJR Decoding

    Bartosz Mielczarek, Member, IEEE, and Witold A. Krzymien, Senior Member, IEEE

    AbstractWe propose and evaluate a novel method of con-structing Hybrid Automatic Repeat reQuest (HARQ) systemsusing the specific properties of the Bahl, Cocke, Jelinek, and Raviv(BCJR) error-correcting algorithm. Because the convergence tothe actual codeword is not always guaranteed with the BCJRapproach, we propose a system in which two different types ofNegative AcKnowledgement messages (NAKs) are employed. Thefirst type is the conventional 1-bit NAK, and the second type speci-fies retransmission pattern in such a way that the additional paritybits are concentrated on the parts of the code trellis that did notconverge to a valid sequence. This is different from the traditionalconstruction of rate-compatible punctured codes (RCPCs), whichattempts to obtain the optimal weight distance properties of thecodes without taking the convergence properties of the BCJRdecoder into account. We demonstrate the performance of thealgorithm using RCPCs, and we show that our system outper-forms the best known conventional HARQ scheme in terms ofthe throughput and the average length of retransmitted blocks onpractical Gaussian, Rayleigh, and thresholded Rayleigh channels.Moreover, as opposed to other adaptive HARQ algorithms, oursolution requires no precomputed lookup tables, and it is robustto changes in the channel characteristics and only introducesmoderate increase in feedback link throughput requirements.

    Index TermsBahl, Cocke, Jelinek, and Raviv (BCJR) algo-rithm, Hybrid Automatic Repeat reQuest (HARQ), incrementalredundancy (IR), rate-compatible (RC) codes.

    I. INTRODUCTION

    IN MODERN wireless communication systems, the increas-ing demand for higher bit rates is not easily accommodatedby the available radio frequency spectrum. Thus, the successfuldesigns of transmission systems may no longer be aimed atproviding redundancy for the worst case channels but insteadmust be able to track the quality of the link and to accordinglyadjust the transmission rate. In cellular systems, the problem ofapproaching channel capacity is rendered even more complexby the interference caused by users simultaneously transmittingtheir signals. The problem with interference is that, in general, itis very difficult to predict its level. Hence, even if the transmitterperfectly knows the channel state at the beginning of transmis-

    Manuscript received March 2, 2006; revised April 20, 2007, and June 26,2007. This work was supported in part by TRLabs, by the Alberta IngenuityFund, by the Rohit Sharma Professorship, by the Natural Sciences and Engi-neering Research Council of Canada, and by the Italian Ministry of Education,Universities, and Research under the PRIMO Project. The review of this paperwas coordinated by Dr. M. Valenti.

    B. Mielczarek was with the University of Alberta/TRLabs, Edmonton, ABT6G 2V4, Canada. He is now with Feedback Limited, Edmonton, AB T5K2W5, Canada (e-mail: [email protected]).

    W. A. Krzymien is with the Department of Electrical and Computer Engi-neering, University of Alberta, Edmonton, AB T6G 2V4, Canada, and also withTRLabs, Edmonton, AB T6G 2V4, Canada (e-mail: [email protected]).

    Digital Object Identifier 10.1109/TVT.2007.907075

    sion and maximizes throughput by accordingly changing thecode rate [1], an instant increase in the interference power mayrender the signal undecodable.

    One of the ways of dealing with this issue is to use theHybrid Automatic Repeat reQuest (HARQ) approach. Theinformation block is first appended with the cyclic redundancycheck (CRC) code [2], which is used for error detection, andthen is encoded using forward error correction (FEC). Usingthis approach, it is possible to detect errors in a frame andrequest additional retransmissions to provide the receiver withenough extra information to successfully decode the frame. Inprinciple, there are two types of HARQ algorithms. In Type-IHARQ, the received packet is discarded after a negative CRCand the whole packet is retransmitted. In Type-II, the techniquesof soft packet combining and incremental redundancy (IR) areemployed, which use both the currently retransmitted packetand previously received ones. To ensure high spectral efficiencyof packet transmissions, Type-II is usually preferred because,with this approach, shorter blocks with additional parity bits areneeded for reliable transmission of the data, and the channel isused in a better way than in Type-I.

    In this paper, we consider Type-II HARQ IR systems usingbit-wise maximum a posteriori (MAP) optimal BCJR algo-rithm (or its log-domain equivalent Log-MAP) to decode theFEC codes. The BCJR algorithm can be used to decode allcodes that can be represented by a trellis, but it is mainly used inthe component decoders of the turbo codes introduced in [3] in1993 and is widely implemented in many existing deep-space[4] and third-generation cellular telephony systems [5]. TheBCJR algorithm can also be used to decode another popularclass of convolutional codes, and the results in our paper canbe applied to them as well. The main difference between theBCJR and the commonly used Viterbi algorithm is that theformer does not necessarily produce sequences that are validcodewordsalthough the BCJR algorithm usually outputs onlyinformation bits, extending its operation to produce all code-word bits may be used to decide if the decoder converged to avalid sequence; this problem will be discussed in more detail inthe following sectionswhereas the Viterbi algorithm alwaysconverges to an actual codeword (although it is possible thatit will be a wrong one). This property makes the design ofType-II HARQ systems with the BCJR error-correcting al-gorithm different from that of the Viterbi-based algorithmsbecause the lack of convergence may be used by the HARQ al-gorithm as additional information about the received codeword.

    The conventional approach to designing Type II HARQsystems employing incremental redundancy is to create a set ofrate-compatible (RC) codes, which allows a gradual decrease

    0018-9545/$25.00 2008 IEEE

  • MIELCZAREK AND KRZYMIE N: ADAPTIVE HYBRID ARQ SYSTEMS WITH BCJR DECODING 1607

    in the coding rate in subsequent retransmissions. At each rate,the weight spectrum of the given code is optimized according tosome criterion that is usually related to the maximization of theminimum Hamming distance. In the case of turbo codes, thecriteria can be more complicated, as shown in [6][8]. In [6],Asikel and Ryan optimized their system using an exhaustivesearch for optimal encoder polynomials, puncture patterns, andinterleavers with the criterion of the largest minimum code-word weight for weight-two and weight-three inputs and theminimum number of their multiplicities. In [7], the criterionvariable was the slope of the weight spectrum of the entireturbo code based on the uniform interleaver assumption. In[8], another method, based on the results in [9], was used thatinstead concentrated on the component codes and the stepwisemaximization of their Hamming distances and the minimizationof the multiplicities of codewords resulting from low-weightinput sequences. In general, optimizing the weight spectra ismost suitable for linear codes decoded using sequence-wisealgorithms such as Viterbi and under the assumption that thefeedback link from the receiver is very limited. Because usingthe BCJR algorithm may result in the decoder converging tothe noncodeword solution, any criterion purely relying on theHamming weight may not necessarily be optimal. This is par-ticularly valid with turbo decoders using suboptimal methods,which only estimate the correct codewords. Moreover, if morethan 1 bit per transmission is allowed in the feedback link,additional information may be sent to the transmitter that willallow it to choose additional bits in a better way than with theconventional criteria.

    The issue of an adaptive HARQ design for convolutionalcodes has been addressed in a few papers. One of the firstarticles to use the reliability metrics is [10], where the softdecoding of convolutional codes was used to select informa-tion bits with low reliability for subsequent retransmissions.The work in this paper is then extended in [11] and [12]with methods reducing feedback channel burden needed forretransmission request messages. Another paper dealing withconvolutional codes is [13], where Visotsky et al. proposedan adaptive HARQ algorithm based on precomputed tables,which allows the system to use a decoder state to determine therequired retransmission size. The common element of all thesesolutions is that they depend on the precomputed ad hoc metricsto monitor the performance of the decoder and request newretransmissions. One of the few papers dealing with the issuefor turbo codes is [14], where Kim and Shea used the reliabilityoutput of the turbo decoder to decide which bits need to beresent. Another paper treating a similar problem is [15], whereZhou and Wang divide the encoded packet into subblocks, eachprotected by its own CRC code. In such a system, the receivermay decide to request only the erroneously decoded subblocks,which conserves the bandwidth of the traffic channel.

    This paper presents a similar approach to [15] and developsthe idea we have already presented in [16]. Instead of optimiz-ing the code that is purely based on its weight spectrum prop-erties, we concentrate on the convergence process of the BCJRdecoder. Similarly to [14], the proposed algorithm tries to pro-vide the transmitter with the information about the erroneouslydetected parts of the code and uses the subblock approach of

    [15] to reduce the required feedback throughput. As opposedto the previously presented HARQ solutions, our algorithm isdirectly based on the properties of the BCJR algorithm [17] andrequires no additional CRCs on the subblocks as in [15]. Fur-thermore, it does not require any precomputed ad hoc lookuptables as in [13] and threshold values as in [10]. We comparethe algorithm with the conventional HARQ approach of [8] andshow that it can decrease transmission delays and/or increasethe throughput of the systems on practically all channels ofinterest.

    In Section II, we introduce the transmitter and receivermodels and the two types of communication channels thatwe use in our work. In Section III, we discuss the propertiesof the BCJR algorithm and explain the rationale behind ourapproach to incremental redundancy presented in Section IV.In Section V, we formally introduce the adaptive HARQ algo-rithm. In Section VI, we introduce the parameters used in oursimulations, and in Section VII, the results are presented anddiscussed. Section VIII presents conclusions and suggestionsfor future work.

    II. SYSTEM MODEL

    A. Transmitter

    The transmitter studied in this paper consists of a CRC error-detecting outer encoder, an error-correcting (inner) encoder,and a modulator. In addition, we assume the presence of ascheduler whose task is to control the transmission of packets.The information bits are first appended with a sequence of CRCbits, then encoded by the error-correcting encoder, and finallytransmitted at the time selected by the scheduler.

    The error-correcting code can be arbitrarily chosen as longas its decoding can be implemented using the BCJR algorithmor one of its equivalent versions (e.g., Log-MAP [18], but notthe simplified Max-Log-MAP) operating on 2 trellis states. Tosimplify the analysis, we assume that the encoder operates ona block of size Nin the case of turbo codes, N will be theinterleaver lengthtaking one input bit xsk at each encodingstep and producing n output bits. The resulting codeword ofrate 1/n [or 1/(2n 1) in the case of conventional turbo codes]is then punctured to rate Rl prior to the lth retransmission.For every available rate, the puncturing pattern is defined byan n p puncturing matrix Pl, which contains 1s and 0sindicating the transmitted and punctured bits, respectively. Theparameter p is called the puncturing period and determines thegranularity of code rates Rl. The encoding is followed by pulseshaping (with pulse energy Es) and modulation. Because thepulse shaping and modulation do not influence our method, weassume the generic binary phase-shift keying modulation andan ideal Nyquist pulse to simplify the discussion.

    B. Channel and Scheduling

    In packet data systems using ARQ algorithms, it is a goodidea to jointly discuss channel properties with the packetscheduling algorithms. To keep the discussion fairly inde-pendent of actual implementation, we identified two genericsituations, which cover almost all practical scheduling cases.

  • 1608 IEEE TRANSACTIONS ON VEHICULAR TECHNOLOGY, VOL. 57, NO. 3, MAY 2008

    In both of them, we assume that the duration of the frame isso short that a channel is effectively time-invariant over thetransmission slot. The effects of a fast-fading Rayleigh channel,where multiple fades could appear within a frame, are notconsidered in this paper because such solutions would only beof interest for a small percentage of systems with very highcarrier frequencies and/or very long frame durations.

    1) Idealized Asynchronous Retransmission: We begin withthe idealized system in which the scheduler is able to providethe link with the same signal-to-noise plus interference ratio(SNIR) for every transmission slot. Such a model results inan additive white Gaussian noise (AWGN) channel, where allthe bits in a received frame have identical statistical properties,and the SNIR value is equal to Es/N0, where N0 is thevariance of the white noise and interference processes. In such acase, the probability density function (pdf) of the channel gainmagnitude al in the lth retransmission is defined as pal(a) =(a 1). Although such a wireless system is unrealistic, wewill use it to facilitate the comparison of our algorithms to thesolutions presented by other researchers who usually use anAWGN channel to test their HARQ implementations.

    2) Asynchronous and Synchronous Retransmission: In thismodel, we assume that the scheduler allows transmission whenthe expected value of the channel amplitude in the next slot isat least and blocks transmission when it is lower than that.To model this situation, we use a thresholded block fadingchannel, whose pdf follows the Rayleigh distribution over agiven threshold and is equal to 0 below it, as in

    pal(a) ={

    0, a < 2a exp(2 a2), a . (1)

    With this type of distribution, parts of the codeword receivedat different retransmission slots will have different SNIRs, butthey will be at least equal to 2Es/N0.

    When the value of is larger than zero, retransmissionsare asynchronous because the scheduler sends parts of thecodewords in randomly delayed time slots. When = 0, thetransmitter retransmits packets in predetermined time slots,without accounting for the channel conditions. The effectiveretransmission is then synchronous with the channel modelequivalent to the Rayleigh block fading with E[a2] = 1.

    C. Receiver

    At the receiver, the incoming signal is down-converted tobaseband (we assume perfect channel estimation and syn-chronization) and normalized using the nominal energy Esper symbol. Moreover, multiuser interference and white noiseare jointly modeled as Gaussian. The resulting signal can begiven as

    yl = alxl + nl (2)where yl is the set of received signal samples in the lthretransmission, xl with elements equal to 1 is the subset ofthe codeword transmitted in the lth retransmission, and nl isan uncorrelated Gaussian random vector with zero mean andvariance of elements equal to N0/(2Es).

    The incoming noisy channel signal is fed to the error-correcting decoder employing the BCJR algorithm [17], whichattempts to recover the information bit values of the originaltransmitted sequence. The decoded packet is then passed tothe error-detecting CRC decoder, which checks the integrityof the data. If the CRC shows no errors, the system sends apositive ACKnowledgment (ACK) and assumes the packet iserror free. If the CRC fails, the receiver sends the NegativeAcKnowledgment message (NAK) to the transmitter, uponwhich an additional set of parity bits is sent. If, after themaximum allowed number of retransmissions, the packet is stillerroneous, it is dropped and the problem is reported to the upperlayers of the system.

    III. PRINCIPLE OF THE BCJR ALGORITHM

    A. Algorithm DenitionIf an error-correcting code can be represented in a trellis

    form, it can be shown that the BCJR (or its log domainequivalent Log-MAP) decoding algorithm [17] is bit-wise MAPoptimum. The algorithm operates in three passes. In the firstpass, it recursively calculates the probabilities k1(s) ofarriving at trellis state s with forward transitions between thestates. In the second pass, it calculates the probabilities k(s)of arriving at trellis state s with backward transitions. Finally, itcalculates the extrinsic information values Le(xk) as

    Le(xk) = log

    S+ k1(s)k(s, s)k(s)

    S k1(s)k(s, s)k(s)(3)

    where the summations are performed over state transitionsS+ = {(s, s) : xsk = 1} and S = {(s, s) : xsk = 1}, re-spectively. The k(s, s) values are the measure of extrinsicprobabilities of transitions between states s and s defined as

    k(s, s) = exp

    (LC2

    n1i=0

    [Pl]i,kaikxiky

    ik

    )(4)

    where LC = 4Es/N0 is the channel reliability factor [19] and[Pl]i,k is the entry in the puncturing matrix corresponding tothe ith coded bit of the kth symbol in the lth retransmission.aik, x

    ik, and yik are entries from al, xl, and yl, respectively.

    Unfortunately, correspondence between the values of k, i, andl depends on the actual ARQ process realization and cannot bepredetermined.

    After completing all three passes of the algorithm, the softvalues Le(xk) are fed to a threshold device, which producesthe decoded bit values for all information bits and feeds themto the CRC decoder. Alternatively, in turbo decoders, the softinformation can be fed to another BCJR decoder, which willuse it in its calculations.

    B. State Matching

    It was shown in [20] that, on average, the BCJR algorithm as-signs high forward probability values k1(s) to one trustedstate for each k and much lower values to the remaininguntrusted states. (In the perfect case, the trusted states

  • MIELCZAREK AND KRZYMIE N: ADAPTIVE HYBRID ARQ SYSTEMS WITH BCJR DECODING 1609

    Fig. 1. Principle of the BCJR algorithm operation. The filled-in circlesrepresent the highest partial probability states s(k 1) and s(k).

    would also be the correct ones; however, due to the randomnessof the channel, this is not always true.) The same is valid forthe backward transitions and probabilities k(s). (Note that theforward and backward state probabilities k1(s) and k(s)are not true state probabilities because they are based onlyon the partial information from the received codeword [21].However, only those partial probabilities are used in (3) toproduce the actual decoded bits.) We will depict the high partialprobability states using the following notation:

    s(k 1) = argmaxs

    k1(s)

    s(k) = argmaxs

    k(s)

    maxk1 = maxk1(s), maxk = maxk(s). (5)

    To illustrate the effects of this phenomenon, we show agraphical representation of the third step of calculation in (3) inFig. 1. The left part of the graph shows the possible transitionsbetween the states of a trellis, which correspond to different bitinput values xsk. The right part of the graph shows two possiblecases, in which there is a direct transition between s(k 1)and s(k) (case A) and when there is no such transition (caseB). In the second case, the calculations in (3) will, on average,result in a lower magnitude of the extrinsic values and anincreased probability of bit error. We define the situation in caseB as a BCJR convergence error and, based on (5), we formallystate the BCJR convergence criterion as

    if (s(k 1), s(k)) {S+, S} BCJR convergence at kth bit.

    Note that the fulfillment of the above criterion does notensure the correctness of the decoding, only that the BCJRdecoder has been able to recreate the transitions, which can beassociated with a valid codeword. On the other hand, it mayhappen that even though there have been BCJR convergenceerrors, the set of information bits is decoded without an error.That is why the error-detecting code is necessary to assesswhether the error-correcting decoder managed to recover thetransmitted sequence without any erroneous information bits.

    At this point, it is important to stress the fact that in turbocodes context, where there are two BCJR decoders, the BCJRconvergence must not be confused with the turbo decoderconvergence. The BCJR convergence, as defined in this paper,is the inability of the BCJR decoder to assign highest partialprobabilities k1(s) and k(s) to states in such a way thatthere is always a valid transition between them. On the other

    Fig. 2. Propagation effect of a transition error on the trellis from Fig. 1. Notethat the trusted states s(k 1) and s(k) do not have to follow the validtrellis transitions (e.g., there is no valid transition between s = 1 to s = 0).

    hand, the turbo decoder convergence is an ability of the iterativeprocess of looped BCJR decoders to converge to a stablesolution. A turbo decoder convergence is indeed impacted bya BCJR convergence, as shown in [22]; however, in this paper,whenever we use the term convergence, we mean only thecomponent code BCJR convergence, as defined above.

    C. State-Matching Error Propagation

    In the typical situation, the majority of the transitions in thecode trellis will be properly identified, and the BCJR decoderwill not have problems in matching states with highest partialprobabilities. However, if in one of the transitions the receivedsignal sample is significantly distorted, the BCJR decodingalgorithm may assign the highest partial probability to a wrongstate, which will cause difficulties matching the largest valuesof k1(s) and k(s). Although such errors may not be veryfrequent, the recursive nature of the BCJR algorithm propagatesthem for many symbols. This situation is shown in Fig. 2, whereonly one code symbol is heavily distorted, causing the departureof the forward and backward transitions from the correct all-zero codeword transitions. When calculations of k1(s) areperformed, the departure from the all-zero state will causes(k 1) = 0 for a few positions k and, similarly, s(k) = 0for a few positions when values of k(s) are calculated. Theresult will be a cluster of positions where the BCJR conver-gence criterion discussed in Section III-B will not be satisfied.In the following sections, we will refer to such clusters asdetours.

    Because the BCJR algorithm operates on a bit-by-bit basis, itis quite difficult to calculate the exact length of detours. Unlikein the Viterbi algorithm, it is actually possible for the BCJRprobability assignment algorithm to depart from the correctstate and return to it without following valid code transitions,as shown in Fig. 2. It is, however, possible to approximate theaverage length of a detour in a BCJR decoder, as shown inthe following paragraphs and in the Appendix. To make thepresentation more concise, we introduce the following notation:s

    x is the number of the state following the state after thetransmission of information bit x, and s x is the number of thestate preceding the state prior to the transmission of x.

    A wrong transition occurs when some of the received sam-ples yik from (4) are distorted to the extent that the metric forthe correct transition is lower than the metric for the erroneoustransition. Using the notation from (4) and assuming that theall-zero codeword has been transmitted, the probability of the

  • 1610 IEEE TRANSACTIONS ON VEHICULAR TECHNOLOGY, VOL. 57, NO. 3, MAY 2008

    incorrect transition at the kth symbol after l retransmissions canbe evaluated as

    pe(k, l) =P

    k(s = 0, s = 0)k

    (s = 0, s = s

    01

    ) < 1

    =P

    [n1i=0

    [Pl]i,kaikxiky

    ik < 0

    ]. (6)

    Based on (6), the average length of the detour for a givenpuncturing period p can be calculated, using Bayes formulaand the total probability theorem, as

    M(l) =

    p1j=0 Mj(l)

    p1k=0,k =j

    pe(j, l) (1 pe(k, l))p1j=0

    p1k=0,k =j

    pe(j, l) (1 pe(k, l))(7)

    where we average over expected detour lengths Mj(l) condi-tioned on erroneous transition position j. A general evaluationof (7) is difficult because it depends on the puncturing stateand channel state variables aik at different transmission instantsinfluencing pe(k, l) and terms Mj(l), which depend on the codestructure, puncturing period p, and the structure of matrices Pl.In the Appendix, we present a method of approximating Mj(l),which allows us to calculate the average length of the detourswhere the BCJR convergence criterion is not met.

    IV. INCREMENTAL REDUNDANCY APPROACHES

    In this paper, we analyze the performance of the Type-IIHARQ in which after the unsuccessful transmission of a high-rate (low-redundancy) codeword, additional parity bits from thecorresponding lower rate codeword are requested. We will usethe approach of RC punctured codes (RCPCs), where all code-words of higher rates consist of subsets of bits of codewordsbelonging to the lower rate codes [23].

    The key component of the IR algorithm is the set of thepuncturing matrices Pl. In RCPCs, any puncturing matrix forhigher rates must only have 1s at the subset of the positionsof 1s in the puncturing matrix for the lower rate codes. If onlyone additional bit per period p can be added to the subsequenttransmitted sequences, the number of columns in Pl specifiesthe granularity of the rates Rl. For convolutional codes, the setof available rates is then given as

    Rl =p

    p + l, l = 0, 1, 2, . . . , p(n 1) (8)

    and for conventional turbo codes (with two identical componentcodes) as

    Rl =p

    p + 2l, l = 0, 1, 2, . . . , p(n 1). (9)

    A. Conventional Criterion

    The generation of the puncturing matrices is, in most cases,done by exhaustive search, where a given criterion (e.g., min-imum Hamming weight) is used to evaluate every possible

    matrix Pl for each value of l. To provide an optimal solution,the analysis should be performed for p = N , but the complexityof such an approach is prohibitive. Therefore, it is common tochoose the puncturing period in the order of 416.

    There exist different criteria for choosing the puncturingpatterns (see [8] for example) of the RCPC. The general ruleis, however, that if the CRC fails, a set of N/p evenly spacedbits spanning the whole frame is requested. In this way, thelower rate codeword has hopefully enough redundancy for thecurrent channel state and can be decoded without errors. Suchan approach is best suited to simpler decoding algorithms suchas the Viterbi algorithm, where it is difficult to reliably locatethe probable cause of the problem causing CRC failure and thesystems where the feedback bandwidth is very limited (becauseonly a 1-bit NAK is needed).

    B. BCJR Convergence Focused Puncturing Criterion

    Ideally, during the operation of an HARQ algorithm, theoperating point of the encoder (the value of Rl) is chosen insuch a way that the correct decoding can be performed with theminimum of redundancy. Hence, for a given SNIR, the HARQalgorithms are usually initialized at a point when the rate of thecode only barely guarantees successful decoding. As a result,if the BCJR algorithm is used, some frames will be not becorrectly decoded and will contain BCJR convergence errors.Such errors, as shown in [20], cause lowered reliability of theoutput. In convolutional codes, it is straightforward to show thatlowered magnitude of soft bits will lead to bit errors (see [13]).In turbo codes, such a demonstration is more difficult but canbe done using EXIT analysis [24]. If the system operates closeto the optimal rate, BCJR convergence errors will be few, whichsuggests that an alternative scheme can be used that will attemptto detect the detours and request only the few bits needed tocorrect them.

    As an example, Fig. 3(a) shows the frame error rate (FER)performance of RCPCs based on a turbo code, as discussed laterin this paper, implemented with different puncturing matricesPl and different values of Es/N0. All erroneous frames werescanned for BCJR convergence errors, and the fraction ofthe cases where errors appeared, although the BCJR decodersconverged to an existing codeword, is shown in Fig. 3(b). It canbe seen that in the vicinity of FER = 1%, some frames will beerroneously decoded due to the lack of BCJR convergence ofthe decoding component algorithms. For example, for l = 2,FER = 1% at Es/N0 = 1.2 dB and at this operating point,around 20% of erroneous frames contain BCJR convergenceerrors. Similar results can be observed for other operatingpoints of the code. This suggests that an alternative scheme canbe used that will attempt to detect the detours in BCJR decodersand request only the bits needed to correct them.

    The proposed algorithm works as follows. Each frame isdivided into subblocks of length M . If the decoding of thereceived signal fails the CRC, the algorithm starts by count-ing the number of BCJR convergence errors (as defined inSection III) within each of the N/M subblocks. After that,subblocks with the BCJR convergence errors are selected, andtheir identification numbers are sent to the transmitter in the

  • MIELCZAREK AND KRZYMIE N: ADAPTIVE HYBRID ARQ SYSTEMS WITH BCJR DECODING 1611

    Fig. 3. Example of a BCJR convergence behavior of a punctured turbo codewith p = 8 on the Gaussian channel. (a) FERs. (b) Rate of BCJR convergenceto existing codewords in the erroneous frames.

    NAK. The transmitter then selects the previously puncturedparity bits that belong to the subblocks selected by the decoderand forwards them to the receiver. This way, the additionalredundancy is concentrated in the trouble spots, hopefullybringing the BCJR decoders to converge. Note that, as opposedto the conventional puncturing criterion, there is no prede-fined sequence of additional bit transmissions, and there isa requirement for higher throughput in the feedback link toaccommodate the addresses of the requested subblocks. We willaddress this issue later in the paper.

    C. Adaptive Puncturing

    In practice, none of the above criteria is universally superior.When the rate of the code is much too high for the instantaneouschannel conditions, it is better to use the conventional criterion.Otherwise, at the brink of BCJR convergence, the new approachmay yield better results.

    To address this issue, we suggest using an adaptive approachwhere the ARQ process starts with the conventional approach

    of requesting the additional bits that span the codeword length.Only when the decoder is on the brink of BCJR convergence,the following requests are based on the BCJR convergence cri-terion. Moreover, if there are no BCJR convergence errors butthe CRC fails (or there are very many such convergence errors),the conventional algorithm is used because there are no specificerroneous subblocks to be requested from the transmitter. (Afurther distinction could be made to separate the cases of CRCfailures due to too many BCJR convergence errors and due to aturbo coder convergence to a wrong solution, but we do not dealwith this problem in this paper.) To allow such a distinction,we introduce two types of NAKs. The first type, ML NAK, issimply a 1-bit message requesting another set of parity bits fromthe predefined queue. The second type, i.e., CONVERGENCENAK, specifies the actual positions of the subblocks on whichthe additional parity bits will be concentrated. Note that, unlikethe conventional algorithm, the presented adaptive algorithmmay have varying lengths of additional redundancy blocks.

    V. COMPLETE ALGORITHM

    In this section, we formalize the description of the algorithmbased on the criteria introduced in the previous sections andshown in Fig. 4. In addition to the previous definition of the gen-eral retransmission index l, we introduce two counters lML andm, containing the number of requested retransmissions afterML NAK and the total number of requested bits, respectively.The counters are limited to values LMAX and MMAX and, ifany of these values is reached without a positive CRC, theframe is declared erroneous and higher communication layersare notified of the problem. We will also use a parameter Q,which specifies the maximum number of subblocks containingdetours for which CONVERGENCE NAK is issued.

    A. Algorithm

    The algorithm can be summarized in the following nineitems.

    1) Initialize the general retransmission counter l = 0, theML NAK retransmission counter lML = 0, and the re-transmission bit counter m = 0.

    2) Send the frame with initial rate R0.3) Increase l by 1. Decode the frame using the BCJR

    algorithm.4) Perform the CRC. If the frame is error free, send ACK.

    STOP.5) If the frame is erroneous, find the BCJR convergence

    errors in all N/M subblocks.6) If there are no BCJR convergence errors and lML maxk1 k(0, 0) + k1(s1)k(s10, 0) (14)

    and because maxk1 is usually much larger than otherk1(s) [20], the probability of fulfilling (14) is approx-imately equal to 0.

    2) If the transition (s 1,) causes some of the n output bitsto differ from the bits in transition (0, 0), the inequality in(12) will be given as

    k1(0)k(0, 0) + k1(s10)k(s10, 0)

    > maxk1 k(s 1,) + k1(s1)k(s1,). (15)

    To discuss inequality (15), we make an assumption thatthe decoder operates just above the BCJR convergence point,i.e., statistically, only one detour will appear in the decoderand that the transitions (s 1,) and (0, 0) [or alternatively,(s1,) and (s10, 0)] cause the output bits to differ at onlyone position. Based on these assumptions and (4), we canrewrite (15) as

    k1(0)eLC2 akyk >

    maxk1 e

    LC2 akyk (16)

    where we kept only statistically large first terms on both sidesand simplified the inequality by reducing common terms. For

    k1(0) = 0, (16) then reduces to

    eLCakyk >maxk1

    k1(0). (17)

    The pdfs of probabilities k1(s) that are needed for solving(17) can be found in [20]. With our assumptions, however, theleft side is practically always a few orders of magnitude largerthan the right side, which guarantees that the inequality in (17)is almost always fulfilled.

    To summarize, we state that in the majority of the cases,when the BCJR decoder operates on the verge of BCJR con-vergence, a detour is ended at position k when the followingtwo conditions are fulfilled:

    1) if at least two coded bits are transmitted for the symbol k;2) if s(k 1) is the state from which there is no transition

    with the same set of n output bits as for transition (0, 0).An example of detour calculations using our method with

    the (37, 21)oct code and p = 4 is shown in Fig. 12. Asmentioned above, the system is assumed to operate at fairlyhigh SNIR so that only one parity bit (last position in thepuncturing period) is transmitted, which corresponds to l = 2(one transmission of the systematic bits and one transmissionof a set of parity bits). According to the above analysis, thedecoder will return to the all-zero state only when the positionwith the unpunctured parity bit follows high probability states(k 1) {1, 2, 4, 7, 9, 10, 12, 15} because those states arefollowed by transitions with different sets of output bits thanthe transition (0, 0). Otherwise, the decoder continues to assignhigh probability values to nonzero states in a sequence of 1, 3,6, 12, 8, 1, . . .. For example, if the erroneous transition happensat j = 0, the forward pass of the BCJR algorithm will assignhigh probability values to states other than the all-zero statefor 11 transitions, and the backward pass will go back to theall-zero state after only one transition. This will result in thedetour length of M0 = 12 [we skip (l) to simplify notation].After calculating the other detour lengths, it is now possible toaverage them using (7) and (6) for the given SNIR. Note that

  • 1618 IEEE TRANSACTIONS ON VEHICULAR TECHNOLOGY, VOL. 57, NO. 3, MAY 2008

    for the higher SNIR values and the only unpunctured paritybit at position j = 3, pe(3) pe(0) = pe(1) = pe(2) and, asa result, M = (12 + 12 + 4)/3 = 9.33 2p. Because lowerSNIR values will cause more parity bits to be sent, M 2pis an approximate upper limit on the average detour length forthis code.

    REFERENCES[1] S. T. Chung and A. J. Goldsmith, Degrees of freedom in adaptive modu-

    lation: A unified view, IEEE Trans. Commun., vol. 49, no. 9, pp. 15611571, Sep. 2001.

    [2] S. Lin and D. J. Costello, Jr., Error Control Coding: Fundamentals andApplications, 2nd ed. Englewood Cliffs, NJ: Prentice-Hall, 2004.

    [3] C. Berrou, A. Glavieux, and P. Thitimajshima, Near Shannon limiterror-correcting coding and decoding: Turbo-codes, in Proc. IEEE ICC,Geneva, Switzerland, May 1993, vol. 2, pp. 10641070.

    [4] CCSDS 101.0-B-4, Telemetry Channel Coding, Consultative CommitteeSpace Data Syst., May 1999.

    [5] Universal mobile telecommunications system UMTS: Multiplexing andchannel coding (FDD), Eur. Telecommun. Standards Inst., pp. 1420,Sep. 2000. 3GPP TS 125.212 version 3.4.0.

    [6] O. F. Acikel and W. E. Ryan, Punctured turbo-codes for BPSK/QPSKchannels, IEEE Trans. Commun., vol. 47, no. 9, pp. 13151323,Sep. 1999.

    [7] D. N. Rowitch and L. B. Milstein, On the performance of hybridFEC/ARQ systems using rate compatible punctured turbo (RCPT) codes,IEEE Trans. Commun., vol. 48, no. 6, pp. 948959, Jun. 2000.

    [8] F. Babich, G. Montorsi, and F. Vatta, Some notes on rate-compatiblepunctured turbo codes (RCPTC) design, IEEE Trans. Commun., vol. 52,no. 5, pp. 681684, May 2004.

    [9] S. Benedetto, R. Garello, and G. Montorsi, A search for good convolu-tional codes to be used in the construction of turbo codes, IEEE Trans.Commun., vol. 46, no. 9, pp. 11011105, Sep. 1998.

    [10] A. Roongta and J. M. Shea, Reliability-based hybrid ARQ usingconvolutional codes, in Proc. ICC, Anchorage, AK, May 2003, vol. 4,pp. 28892893.

    [11] A. Roongta and J. M. Shea, Reliability-based hybrid ARQ andrate-compatible punctured convolutional (RCPC) codes, in Proc.IEEE Wireless Commun. Netw. Conf., Atlanta, GA, Mar. 2004, vol. 4,pp. 21052109.

    [12] A. Avundainayagam, A. Roongta, and J. M. Shea, Improving the ef-ficiency of reliability-based hybrid-ARQ with convolutional codes, inProc. IEEE Mil. Commun. Conf., Atlantic City, NJ, Oct. 2005, vol. 1,pp. 448454.

    [13] E. Visotsky, Y. Sun, V. Tripathi, M. L. Honig, and R. Peterson,Reliability-based incremental redundancy with convolutional codes,IEEE Trans. Commun., vol. 53, no. 6, pp. 987997, Jun. 2005.

    [14] H. Kim and J. M. Shea, New turbo-ARQ techniques based on estimatedreliabilities, in Proc. IEEE Wireless Commun. Netw. Conf., New Orleans,LA, Mar. 2003, vol. 2, pp. 843848.

    [15] Y. Q. Zhou and J. Wang, Optimum sub-packet transmission for turbo-coded hybrid ARQ systems, in Proc. IEEE ICC, Anchorage, AK,May 2003, vol. 5, pp. 30803084.

    [16] B. Mielczarek and W. Krzymien, Convergence focused construction ofhybrid ARQ systems with turbo codes, in Proc. IEEE ICC, Paris, France,Jun. 2004, vol. 1, pp. 351355.

    [17] L. Bahl, J. Cocke, F. Jelinek, and J. Raviv, Optimal decoding oflinear codes for minimizing symbol error rate, IEEE Trans. Inf. Theory,vol. IT-20, no. 2, pp. 284287, Mar. 1974.

    [18] J. P. Woodard and L. Hanzo, Comparative study of turbo decoding tech-niques: An overview, IEEE Trans. Veh. Technol., vol. 49, no. 6, pp. 22082233, Nov. 2000.

    [19] C. Berrou and A. Glavieux, Near optimum error correcting codingand decoding: Turbo-codes, IEEE Trans. Commun., vol. 44, no. 10,pp. 12611271, Oct. 1996.

    [20] B. Mielczarek and A. Svensson, Timing error recovery in turbo-codedsystems on AWGN channels, IEEE Trans. Commun., vol. 50, no. 10,pp. 15841592, Oct. 2002.

    [21] J. B. Anderson and S. M. Hladik, Tailbiting MAP decoders, IEEE J. Sel.Areas Commun., vol. 16, no. 2, pp. 297302, Feb. 1998.

    [22] B. Mielczarek and A. Svensson, Modeling fading channel-estimationerrors in pilot-symbol-assisted systems, with application to turbo codes,IEEE Trans. Commun., vol. 53, no. 11, pp. 18221832, Nov. 2005.

    [23] J. Hagenauer, Rate-compatible punctured convolutional codes (RCPCcodes) and their applications, IEEE Trans. Commun., vol. 36, no. 4,pp. 389400, Apr. 1988.

    [24] S. ten Brink, Convergence behavior of iteratively decoded parallel con-catenated codes, IEEE Trans. Commun., vol. 49, no. 10, pp. 17271737,Oct. 2001.

    [25] E. Uhlemann, T. Aulin, L. K. Rasmussen, and P.-A. Wiberg, Packet com-bining and doping in concatenated hybrid ARQ schemes using iterativedecoding, in Proc. IEEE Wireless Commun. Netw. Conf., New Orleans,LA, Mar. 2003, vol. 2, pp. 849854.

    [26] R. Love, A. Gosh, W. Xiao, and R. Ratasuk, Performance of 3GPP highspeed downlink packet access (HSDPA), in Proc. IEEE Veh. Technol.Conf., Los Angeles, CA, Sep. 2004, vol. 5, pp. 33593363.

    [27] T. S. Rappaport, Wireless Communications: Principles and Practice.Upper Saddle River, NJ: Prentice-Hall, 2001.

    Bartosz Mielczarek (S98M03) received theM.Sc. degree (with distinction) in electrical engi-neering from Chalmers University of Technology,Gteborg, Sweden, in 1997, the M.Sc. degree (withdistinction) from the Technical University of Lodz,Lodz, Poland, in 1998, and the Dr. Ing. (TekniskLicentiat) and Ph.D. (Teknisk Doktor) degrees in2000 and 2002, respectively, from Chalmers Univer-sity of Technology.

    From 1997 to 1998, he was with Ericsson TelecomAB, Stockholm, Sweden, studying routing issues

    for multicast and ad hoc networks. In 2000, he spent seven months as aVisiting Researcher with the Jet Propulsion Laboratory, California Instituteof Technology, Pasadena, working on synchronization algorithms for deep-space probes. In 2003, he worked on the ULTRAWAVES Project, studying thephysical layer of ultrawideband radio access technology. Since then, he hasbeen a Postdoctoral Fellow at the University of Alberta/TRLabs, Edmonton,Canada, where he worked on packet data access solutions for heterogeneousmultiuser multiple-antenna broadband systems. He is currently the Presidentof Feedback Limited, Edmonton: a private research and development companyhe founded in 2006. His current interests include MIMO-OFDM systems withmultiuser diversity, CSI feedback encoding, and turbo codes.

    Dr. Mielczarek received awards from Telefonaktiebolaget LM EricssonsStiftelsen fr Frmjande av Elektroteknisk Forskning, Stiftelsen fr Interna-tionalisering av Hgre Utbildning och Forskning, and Alice och Lars ErikLandahl Stipediefond in 2000. He received a Postdoctoral Fellowship fromthe Alberta Ingenuity Fund and an Industrial Research Fellowship from theNatural Sciences and Engineering Research Council of Canada in 2003 and2005, respectively. He is a member of the Association of Professional En-gineers, Geologists, and Geophysicists of Alberta and a Reviewer for theIEEE, Institution of Engineering and Technology, the European Association forSignal Processing, Journal of Communications and Networks, and numerousconferences. He is also listed in Whos Who in the World (New Providence, NJ:Marquis).

  • MIELCZAREK AND KRZYMIE N: ADAPTIVE HYBRID ARQ SYSTEMS WITH BCJR DECODING 1619

    Witold A. Krzymien (A78M79SM93) receivedthe M.Sc. (Eng.) and Ph.D. degrees from thePoznan University of Technology, Poznan, Poland,in 1970 and 1978, respectively, both in electricalengineering.

    Since April 1986, he has been with the Departmentof Electrical and Computer Engineering, Universityof Alberta, Edmonton, Canada, where he currentlyholds the endowed Rohit Sharma Professorship inCommunications and Signal Processing. In 1986, hewas one of the key research program architects of

    the newly launched TRLabs: Canadas largest industryuniversitygovernmentprecompetitive research consortium in the information and communicationtechnology area, also based in Edmonton. His research activity has been closelytied to the consortium ever since. Over the years, he has also done collaborativeresearch with Nortel Networks, Ericsson Wireless Communications, GermanAerospace Center (Oberpfaffenhofen, Germany), Telus Communications, andthe University of Padova (Italy). He held visiting research appointments at theTwente University of Technology, Enschede, The Netherlands (19801982),Bell Northern Research, Montral, QC, Canada (19931994), Ericsson Wire-less Communications, San Diego, CA (2000), Nortel Networks Harlow Labo-ratories, Harlow, U.K. (2001), and the Department of Information Engineering,University of Padova (2005). Since 2002, he has been a member of the EditorialBoard of Wireless Personal Communications (Springer) and, since 2007, an As-sociate Editor of the IEEE TRANSACTIONS ON VEHICULAR TECHNOLOGY.His research is currently focused on broadband high-throughput wireless packetdata access for mobile and nomadic users, employing multicarrier signaling,multiple-antenna techniques and link adaptation, as well as on the related MACand network layer issues of hybrid ARQ, packet scheduling, fixed multi-hoprelaying, and network coordination.

    Dr. Krzymien is a Fellow of the Engineering Institute of Canada. From1999 to 2005, he was the Chairman of Commission C (Radio CommunicationSystems and Signal Processing) of the Canadian National Committee of theUnion Radio Scientifique Internationale. From 2000 to 2003, he has servedas an Associate Editor for Spread Spectrum and Multicarrier Systems of theIEEE TRANSACTIONS ON COMMUNICATIONS. He is a licensed ProfessionalEngineer in the Provinces of Alberta and Ontario. He is the recipient of the1991/1992 A.H. Reeves Premium Award from the Institution of ElectricalEngineers (IEE) (U.K.) for a paper published in the Proceedings of the IEE,Part I. He also received a Polish National Award of Excellence for his Ph.D.dissertation.