An Improved SCFlip Decoder for Polar Codes L.Chandesris†‡, V.Savin†, D.Declercq‡ [email protected], [email protected], [email protected] †CEA-LETI / Minatec, Grenoble, France ‡ETIS, ENSEA/UCP/CNRS, Cergy-Pontoise, France Abstract—This paper focuses on the recently introduced Suc- new decoding attempts, in case that a failure of the initial cessive Cancellation Flip (SCFlip) decoder of polar codes. Our SC decoding attempt is detected by the CRC. Each new contributionistwofold.First,weproposetheuseofanoptimized attempt consists in flipping one single decision - starting metric to determine the flipping positions within the SCFlip with the least reliable one, according to the absolute value decoder, which improves its ability to find the first error that occurred during the initial SC decoding attempt. We also of the log-likelihood ratio (LLR) - of the initial SC attempt, 7 show that the proposed metric allows closely approaching the then decoding the subsequent positions by using standard 1 performance of an ideal SCFlip decoder. Second, we introduce SC decoding. The above procedure is iterated until the CRC 0 a generalisation of the SCFlip decoder to a number of ω nested is verified or a predetermined maximum number of flips is 2 flips, denoted by SCFlip-ω, using a similar optimized metric to n determine the positions of the nested flips. We show that the reached. The SCFlip decoder provides an interesting trade- a SCFlip-2 decoder yields significant gains in terms of decoding off between decoding performance and decoding complexity, J performance and competes with the performance of the CRC- since each new decoding attempt is only performed if the 7 aided SC-List decoder with list size L = 4, while having an previous one failed. Consequently, the average computational average decoding complexity similar to that of the standard SC 1 complexity of the SCFlip decoder approaches the one of SC decoding, at medium to high signal to noise ratio. decoder at medium to high SNR, while competing with the Index Terms—Polar Codes, SCFlip decoding, order statistic ] CRC-aided SCL with L = 2, in terms of error correction T decoding. performance. I . In this work we propose two improvements to the SCFlip s I. INTRODUCTION c decoder, aimed at both increasing the error correction perfor- [ Polar codes are a new class of error-correcting codes, mance and reducing the computational complexity. First, we 1 proposed by Arikan in [1], which provably achieve the ca- propose the use of a new metric to determine the flipping v pacity of any symmetric binary-input memoryless channel positions within the SCFlip decoder. The proposed metric 6 under successive cancellation (SC) decoding. However, for takesintoaccountthesequentialaspectoftheSCdecoder,and 3 short to moderate blocklengths, the frame error rate (FER) weshowityieldsanimprovedFERperformanceandareduced 7 performance of polar codes under successive cancellation computationalcomplexitycomparedtoLLR-basedmetricused 4 0 decoding does not compete with other families of codes such in [5]. Second, we introduce a generalization of the SCFlip . as LDPC or Turbo-Codes. decoder to a number of ω nested flips, denoted by SCFlip- 1 0 In [2], a Successive Cancellation list-decoding (SCL) has ω. We show that the SCFlip-2 decoder with the proposed 7 been proposed, which significantly outperforms the simple metric to select the two flipping positions competes with the 1 SC decoding, and approaches the Maximum-Likelihood (ML) CRC-aided SCL decoder with L = 4, in terms of decoding : v performance at high signal to noise ratio (SNR). Moreover, performance, while having an average decoding complexity i whenappliedtopolarcodesconcatenatedwithanoutercyclic similartothatofthestandardSCdecodingatmediumtohigh X redundancy check (CRC) code -used to identify the correct SNR. Furthermore, we also usean Oracle-assisted decoder as r a message from the decoded list- it has been shown that the in [5] to determine the lower bound of these SCFlip decoders SCLdecodermaysuccessfullycompetewithotherfamiliesof andshowsthatbothproposedalgorithmsforω =1andω =2 capacity approaching codes, like Low Density Parity Check can closely approach the optimal performance. (LDPC) codes. However, SCL decoder suffers from high The paper is organised as follows. In Section II, a review storage and computational complexity, which grows linearly of Polar Codes is presented. Section III describes the SCFlip- with the size of the list. Several improvements have been ω decoder. Section IV presents the proposed metric for the proposedtoreduceitscomputationalcomplexity,suchasStack selection of the flipping positions. Simulation results are decoding (SCS) in [3], but at a cost of an increasing storage presented in section V. complexity. II. PRELIMINARIES Successive Cancellation Flip decoder has been introduced A. Polar Codes in [4] for the BEC channel and generalised to binary-input additive white Gaussian noise (BI-AWGN) channel by using A Polar Code is characterized by the three-tuple (N,K,I), a CRC in [5]. It is close to the order statistic decoding where N = 2n is the blocklength, K the number of in- proposed in [6] and which has been specifically used for formation bits and I is the set of K indices indicating the polar codes in [7]. The idea is to allow a given number of position of the information bits inside the block of size N. Bits corresponding to positions i(cid:54)∈I are referred to as frozen Algorithm 1 SCFlip decoder with ω =1 bits and are fixed to pre-determined values known at both the 1: procedure SCFLIP-1(Y,I,T(1)) encoder and the decoder. 2: (uˆN0 −1,{L(ui)}i∈I)←SC(Y,I,∅) We denote U = uN0 −1 the data vector, of length N, 3: if CRC(uˆN0 −1)=success then Return uˆN0 −1 end if containing K information bits at the positions i ∈ I, and 4: Lflip = FlipDetermine({L(ui)}i∈I,−1,T(1)) N −K frozen bits that are set to zero. The encoded vector, 5: for j =0,..,T(1)−1 do denoted by X, is obtained by: 6: uˆ0N−1 ←SC(Y,I,Lflip(j)) 7: if CRC(uˆN−1)=success then Return uˆN−1 end if X=U·G 0 0 N 8: end for whereG isthegeneratormatrixdefinedasin[1].Wefurther 9: Return uˆN−1 N 0 denote by Y the data received from the channel and used at 10: end procedure the decoder input. Uˆ = uˆN−1 denotes the decoder’s output, 0 with uˆ being the estimation of the bit u . i i Algorithm 2 SCFlip decoder with ω =2 B. Successive Cancellation Decoder 1: procedure SCFLIP-2(Y,I,T(1),{T(2,1),T(2,2)}) SCdecoderisthestandardlowcomplexitydecoderofpolar 2: (uˆN0 −1,{L(ui)}i∈I)←SC(Y,I,∅) codes given in [1]. The decoding process consists in taking a 3: if CRC(uˆN0 −1)=success then Return uˆN0 −1 end if decision on bit ui, denoted uˆi, according to the sign of the 4: L(fl1ip) = FlipDetermine({L(ui)}i∈I,−1,T(1)) LLR: 5: for j =0,..,T(1)−1 do L(u )=log(cid:18)Pr(ui =0|Y,uˆi0−1)(cid:19) 6: (uˆN0 −1,{L(ui)}I)←SC(Y,I,L(fl1ip)(j)) i Pr(ui =1|Y,uˆi0−1) 7: if CRC(uˆN0 −1)=success then Return uˆN0 −1 end if 8: if j <T(2,1) then using the decision function h: 9: L(2) =(L(2), FlipDetermine ( (cid:26) flip flip uˆi =h(L(ui))d=ef 1−signu2(iL(ui)) iiff ii∈∈/ II (1) 10: end if {L(ui)}I,j,L(fl1ip)(j),T(2,2) ) where by convention sign(0) = ±1 with equal probability. 11: end for Note that the computations and decisions are performed se- 12: for i=0,..,T(2,1)−1 do quentially in SC decoder, as the estimation of the current bit 13: for j =0,..,T(2,2)−1 do ui depends on the previous decoded bits uˆi0−1. 14: uˆ0N−1 ←SC(Y{,LI,(1)(i),L(2)(j+i·T(2,2))}) flip flip III. DEFINITIONANDANALYSISOFSCFLIP-ω DECODERS 15: if CRC(uˆN−1)=success then 0 A. Definition of SCFlip-ω Decoders 16: Return uˆN−1 0 Let C(N,K +r,I) denotes the serial concatenation of an 17: end if outer (K+r,K) CRC code and an inner (N,K+r,I) Polar 18: end for code. Note that the number of unfrozen positions of the Polar 19: end for code is K +r, where K is the number of information bits, 20: Return uˆ0N−1 and r is the size of the CRC. 21: end procedure TheSCFlipdecoder[5]consistsofastandardSCdecoding, possibly followed by maximum number T of new decoding attempts, until no errors are detected by the CRC check. Each thattheglobalstructureoftheSCFlipdecodingstaysthesame, new decoding consists of (i) flipping only one decision of the the only difference being on the generation of the ordered list initial SC attempt, then (ii) decoding the subsequent positions of flipping positions, denoted by L . We also introduce a flip by using standard SC decoding. The T flipping positions are generalisation of the SCFlip decoder to a number of ω nested thosecorrespondingtothelowestabsolutevaluesoftheLLRs flips:thefirstflipisperformedononedecisionoftheinitialSC computed during the initial SC attempt. attempt, while the i-th flip (2≤i≤ω) is performed on a bit However, the success of the SCFlip decoding depends on position belonging to the new decoding trajectory determined (i) the ability to find the very first error that occurred during bythepreviousflips(1toi−1).Suchasequenceofω nested theinitialSCattempt,and(ii)theabilityofSCtosuccessfully flips will also be referred to as an order-ω flip. The SCFlip-ω decode the subsequent positions, once the first position in decoding for ω = 1 and ω = 2 are presented in Algorithm 1 error has been flipped. In this work we introduce two new and Algorithm 2, respectively. enhancements to the SCFlip decoder, aimed at improving the AsimpleandefficientimplementationofSCFlip-ω decoder twoabove-mentionedcharacteristics.Weproposetheuseofan consistsinincrementingωrecursively.Aslongasnoerrorsare optimized metric to determine the flipping positions, building detected by the CRC code, we proceed step by step from SC upon the probability of a given position being first error that decoder, SCFlip with 1 flip for a number of T(1) attempts, occurred in the initial SC attempt (see section IV). We note then SCFlip with 2 flips for a number of T(2) attempts. 2 Algorithm 3 FlipDetermine In [5], an Oracle-assisted decoder (OA-SC) has been in- 1: procedure FLIPDETERMINE({L(ui)}i∈I,k1,T) troduced to count the number ω of channel-generated er- 2: for i=0,...,N −1 do rors which occur during a SC decoding. OA-SC performs 3: if i∈I and i>k1 then m(i)=Mα(ui) a standard SC decoder with a hard decision function h(OA) 4: else m(i)=0 modified to ensure that the decision is correct and no error 5: end if willpropagateduringtheprocess:h(OA)(L(ui))=ui.Hence, 6: end for ω is defined by: 7: J ← sort index(m) ω = #{h(OA)(L(u ))(cid:54)=h(L(u )}, 8: Return J(0:T −1) i i i∈I 9: end procedure where the symbol #{A} denotes the number of times the condition A is verified. In this paper, the parameter ω is referred to as order of a noise realization. New decoding attempts in SCFlip decoder are similar to the Note that we use the same notation ω for the flip order standard SC decoder, the only difference being on the hard in the SCFlip-ω decoder and the order of a noise realization decision function. Thus, we use the notation SC(Y,I,E), as they are directly related. Indeed, the SCFlip-ω is able to where E is a set of ω indices corresponding to the flipping decode a noise realization of order ω(cid:48) ≤ ω, provided that positions. The hard decision function h(cid:48) can be defined as (i) the corresponding order-ω(cid:48) flip has been selected in the follow: corresponding ordered list L(ω(cid:48)) and (ii) the CRC is not uˆ =h(cid:48)(L(u ))d=ef(cid:26) h(L(ui)) if i∈/ E verified by one of the previousflipdecoding attempts. As in [5], i i 1−h(L(u )) if i∈E i weusetheOA-SCdecodertopredicttheoptimalperformance Note that we have a standard SC decoder if E = ∅. In of a SCFlip-ω decoder, regardless of the choice of the metric Algorithm 1 and Algorithm 2, candidate positions for the ω- M and the complexity (T(1),T(2),...T(ω)), by declaring a flips are stored in an ordered list denoted by L(ω) of size decodingfailureifandonlyiftheorderofthenoiserealization flip T(ω) and generated by the function FlipDetermine, described is greater than ω. These optimal performance serve as lower boundsontheFERresultsforpracticalSCFlip-ωdecoders.We in Algorithm 3, which is performed using a metric denoted M. The calculation of this metric will be discussed in section will further denote FEROAω the lower bound of the SCFlip-ω decoder. IV. Fig. 1 presents the lower-bounds of SCFlip-ω decoders Algorithm 3 is used in SCFlip-1 as well as SCFlip-2 to determineT indexesstrictlylargerthank oftheleastreliable with ω = {1,2,3} over BI-AWGN channel for a Polar code 1 with parameters (N,K+r)=(1024,512+16). We also plot the decisions according to the proposed metric. To do so, we first calculatethemetricvectorm,thengenerateanindexvectorJ, performance of the SC decoder with (N,K) = (1024,512). suchthatm(J)issortedindescendingorder(thisoperationis It can be seen that ideal SCFlip-ω decoders exhibit significant performed by the function denoted sort index). For SCFlip-1, SNR gains compared to the SC decoder, from 0.5dB for the L(1) is generated by calling this function once with T =T(1) ideal SCFlip-1, to about 1dB for the ideal SCFlip-2 decoder, flip at FER=10−4. This ideal performance can be achieved with and k1 = −1. For the SCFlip-2, we have two degrees of (cid:18)K+r(cid:19) freedomconcerningthechoiceofthefirstandsecondflipping T(ω) = for any order ω, assuming a perfect CRC, position. Therefore, we use two parameters T(2,1) and T(2,2) ω to characterize the flips of order 2. T(2,1) is the number of positions from the L(1) list, for which flips of order-2 will flip be explored. The number of order-2 flips explored for each of thesepositionsisgivenbyT(2,2).TheorderedlistL(2) ofsize flip T(2) is obtained by concatenating the vectors of size T(2,2) returned by T(2,1) successive calls to this function. For each call,k correspondstothepositionofthefirstbitflipped.The 1 maximumnumberoforder-2attemptsisT(2) =T(2,1)·T(2,2). B. Oracle-AssistedDecoderandOrderofaNoiseRealization Following [5], we distinguish between channel-generated errors(CGE)andpropagationerrors(PE)intheSCdecoding. Propagation errors are generated by an erroneous decision, which propagates in the decoding process, while channel- generated errors correspond to erroneous decisions which are only generated by the noise realization at the decoder’s input. From these definitions, the first error in SC decoding is necessary a CGE. Fig.1. LowerboundofSCFlip-ω forapolarcode(N,K)=(1024,512) 3 i.e. collision probability equal to 0. In practice, due to non thismetricissub-optimal,becauseitdoesnottakeintoaccount perfectCRC,theprobabilityofgettingaCRCcollision(hence thesequentialaspectoftheSCdecoder.Indeed,whilealower an erroneous decoded message) increases with the number LLR absolute value indicates that the corresponding hard of decoding attempts. Therefore, optimizing the choice of decision has a higher probability of being in error, it does not flippingpositionsallowsimprovingsimultaneouslythelatency provideanyinformationabouttheprobabilityofbeingthefirst and the FER performance. error that occurred during the sequential decoding process. To address this issue, we propose a new metric, which is aimed C. Importance of SCFlip-1 atidentifyingthefirsterrorthatoccurredduringthesequential We define PM(ω), the probability of not correcting a noise decoding process. The probability of uˆk being the first error realization of order ω for a SCFlip-ω using a chosen metric is given by: M, a number T(ω) of attempts, and assuming a perfect CRC. k−1 As a consequence, FER of SCFlip-ω can be lower bounded (cid:89) Pr(uˆ (cid:54)=u ,uˆk−1 =uk−1)=p (uˆ )· (1−p (uˆ )) by: k k 0 0 err k err i i=0 (cid:88)ω where perr(uˆi)=Pr(uˆi (cid:54)=ui|Y,uˆi0−1 =ui0−1). This probabil- FER ≥FER + P (ω(cid:48))·D(ω(cid:48)) (2) ity cannot be computed in practice, as we have no guarantee SCFlip−ω OAω M ω(cid:48)=1 that previous bits have been correctly decoded. Instead, we where D(ω(cid:48)) denote the probability of the noise realization can compute the probability Pr(uˆi (cid:54)= ui|Y,uˆi0−1) given by being of order ω(cid:48) and FER the lower bound determined (this follows from the definition of L(ui)): OAω by the OA-SC defined above. This is an inequality because 1 Pr(uˆ (cid:54)=u |Y,uˆi−1)= of non perfect CRC. The sum in the right hand side of the i i 0 1+exp(|L(u )|) i above inequality is referred to as the loss of order ω. It can Note that if u is a frozen bit, it cannot be in error, as the be seen that this loss is incremental, so the loss of order ω i decoder always takes the right decision. Therefore, for frozen will propagate at order ω +1. In particular, to construct an bits, the above probability is set to zero. SCFlip-2 decoder that closely approaches its theoretical lower To compute the probability of being the first error, we bound FER , we would like loss of order 2 to be of same OA2 consider Pr(uˆ (cid:54)= u |uˆi−1) as an approximation of p (uˆ ), order of magnitude as FER . This implies that the loss of i i 0 err i OA2 andintroduceaparameterαtocompensatetheapproximation order1shouldalsobeofsameorderofmagnitudeasFER , OA2 andwhichcanbeoptimizedbysimulation.Thus,theproposed and therefore order of magnitude smaller than FER . This OA1 metric is given by: condition is concretely materialised by a SCFlip-1 decoder Definition 1: Given a bit u ,k ∈ I, the metric associated matching its lower bound predicted by the OA-SC decoder. k to u is defined by: k D. Complexity of SCFlip-ω k−1(cid:18) (cid:19) 1 (cid:89) 1 In addition to the FER performance, the performance of M (u )= · α k 1+exp(α|L(u )|) 1+exp(−α|L(u )|) SCFlip-ω decoder is also characterized by its computational k i=0 i i∈I complexity. This computational complexity depends on the (4) number of decoding attempts performed by the SCFlip-ω where α is a parameter to be optimized by simulation. decoderinordertodecodeagivennoiserealization.Therefore, We further define the equivalent logarithmic domain metric we denote by Nc(ave) and call the normalized computational Mα(cid:48)(uk)=−α1 ·log(Mα(uk)). It follows that: complexity the average number of attempts. It is given by: k−1 1 (cid:88) Nc(ave) =1+FERSC·T(ave) SNR−→→+∞1, Mα(cid:48)(uk)=|L(uk)|+ α (1+exp(−α·|L(ui) ) (5) i=0 i∈I where T(ave) is the average number of decoding attempts and =|L(u )|+S (uk) depends on the metric and the chosen values T(ω). It is worth k α 0 noticing that complexity of SCFlip tends to the one of the SC TheS (uk)sumcanbeseenasapenaltyaddedto|L(u )|, α 0 k decoder when SNR tends to infinity. which take into consideration the sequential aspect of the SC decoding. Indeed, this term increases with increasing number IV. ANEWMETRICFOREFFICIENTSCFLIP-ω DECODERS and decreasing reliability of previously decoded bits, so that In[5],theSCFlipdecoderusesflippingpositionswhichare thelastdecodedbitsarepenalizedcomparedtothemetric(3). ordered according to the absolute value of their LLRs. The To understand the impact of the parameter α, we consider the criterion can be described as a metric M(ui),i ∈ I, defined following limit cases. For α = 0, the above metric becomes by: M (u ) = 1 , where k is the number of positions in I M(ui)=|L(ui)| (3) les0s thkan or2keIqual to k.IHence, the M induced ordering 0 The flipping positions are those corresponding to the T(1) corresponds to the usual decoding order. For α −→ +∞ it can be easily seen that lim S (uk) = 0, so that M positions with the lowest M(ui). However, we point out that α→+∞ α 0 ∞ 4 10-1 100 C) CR10-2 10-1 ct e perf 10-2 ng 10-3 mi su ER10-3 s F a 1 (10-4 order Metric (3) 10-4 SLoCw deer cbooduenrd SCFlip-1 of Lower bound SCFlip-2 s 10-5 SCFlip-1 Metric (4) Los Metric (4) Metric (4) 10-5 SSCCFFlliipp--12 MMeettrriicc ((34)) α=0.3 α=0.6 SCL4+CRC8 10-6 10-6 0 10 20 30 40 50 60 70 80 90 100 1 1.5 2 2.5 3 3.5 T(1) SNR Fig.2. Lossoforder1infunctionofT(1) forSNR=2.5dB Fig.3. PerformanceofSCFlip-1andSCFlip-2decoders TABLEI OPTIMIZEDVALUEOFαFORSCFLIP-1ASFUNCTIONOFTHESNRFORA Thisconditioncaneasilybesatisfiedwiththeproposedmetric CODE(N,K+r)=(1024,512+16) (4), while we need T(1) much higher with the metric (3), SNR(dB) 1.5 2.5 3 whichmeansinpracticehighercomputationalcomplexity.For αopt 0.4 0.3 0.25 next simulations, we choose T(1) =20. LetusnowconsiderYbeanoiserealizationoforderω =2 for a given code C(N,K,I) with the first CGE in position is equivalent to (3). In general, the use of the Mα metric u . We define the set I(cid:48) = {k ∈ I,k > k1} of cardinality k1 can be seen an intermediate trade-off between the decoding K(cid:48) <K. Consider now the code C (N,K(cid:48),I(cid:48)). The order of 2 order and the one given by the LLRs reliability (3). To find the noise realization Y is only ω = 1 for the code C and 2 the best possible trade-off, we optimize the value of α by therefore finding the second CGE is equivalent to decoding a Monte-Carlo simulation. Note also that the optimized value noiserealizationoforder1forthecodeC .Asaconsequence, 2 should depend on the code used and the SNR. We provide an the metric M can be used also for SCFlip-2 by considering α intuitive explanation of the behavior of the optimized alpha the set I(cid:48) defined above instead of the set I. However, the value as function of the SNR. Consider equation (5) for some optimumvalueforαmaybedifferent.Numericaloptimisation fixed value of alpha. When the SNR goes to infinity, the for α for a code (1024,512+16) shows that the optimum term S (uk) tends to 0 and becomes negligible compared 2 α 0 value is α =0.5>α =0.3 at SNR=2.5dB. 2 1 to |L(u )|, and therefore the sequential characteristic of the k decoder is no longer accounted for by the considered metric. V. SIMULATIONRESULTS Consequently, it is expected that the optimal value of alpha ThroughoutthissectionweconsidertransmissionoveraBI- will increase with the SNR, so that to rebalance the contribu- AWGN channel, using a CRC-Polar code concatenation with tion of the Sα(uk0) term to the value of the considered metric. parameters N = 1024, K = 512, and r = 16. The K +r To confirm this intuition, Table I shows the optimized alpha positions for information and CRC bits, given by the set I, values for a code (N,K+r)=(1024,512+16) and several are optimized for the SC decoder by Gaussian approximation SNR values. As expected, it can be observed that the optimal as in [8]. Also, this set is updated for each different value of alpha value increases with the SNR. the SNR. Concerning the CRC, we use a 16-bit CRC with We further consider a (1024,528) Polar code and consider generator polynomial g(x)=x16+x15+x2+1. only random noise realizations of order 1 at SNR= 2.5dB. TheFERperformanceofSCFlip-1andSCFlip-2decodersis Fig.2plotsthelossoforder1(PM(1)·D(1))assumingperfect showninFig.3.ForSCFlip-1,themaximumnumberofflipsis CRC. It is calculated as the probability of the only channel- set to T(1) =20. We compare the SCFlip-1 decoder using the generated error not being in the L(1) list generated by the metric (3), with the one using our proposed metric (4) with flip FlipDetermineprocedure,asafunctionofthelistsizeT(1),by α=0.3, and the theoretical lower bound corresponding to an usingeitherthemetric(3),orourproposedmetric(4)withα= idealSCFlip-1decoder.Whiletheperformancegaincompared 0.3(optimizedvalue)andα=0.6.AccordingtoSectionIII-C, to[5]isnotimpressive,itcanbeseenthatourproposedmetric wecandeterminethevalueofT(1)suchthatthelossoforder1 closely approaches the theoretical lower bound. As the metric hasthesameorderofmagnitudeasthetheoreticallowerbound (4) exhibits a negligible loss of order 1, it can further be used of the SCFlip-2, FER . At SNR=2.5db, the SCFlip-2 lower to correct second order noise realizations (note that SCFlip-1 OA2 boundisabout10−4,therefore,weneedD(1)·P (1)<10−4. and SCFlip-2 using the metric (3) have nearly the same FER M 5 15 toanidealSCFlipdecoder,andexplainedthatthisanecessary SCFlip-1 Metric (4) SSCCFFlliipp--21 MMeettrriicc ((43)) condition for building an effective SCFlip decoder of order 2. SC SCL L=2 We have further investigated an SCFlip decoder of order-2, SCL L=4 which uses an analogous metric to determine the order-2 flip mplexity10 positions. We have shown that the SCFlip-2 decoder yields Co significant gains in terms of decoding performance, closely Normalized acpopdreorawchitihnglistthesizpeerLfo=rm4a,ncwehiolef thhaeviCngRCan-aaidveedragSeCd-Lecisotdidneg- Average 5 cmoemdpiulemxittoyhsiigmhilSaNr Rto. that of the standard SC decoding at ACKNOWLEDGMENT The research leading to these results received funding from 0 the European Commission H2020 Programme, under grant 1 1.5 2 2.5 3 3.5 SNR agreement 671650 (mmMagic Project). Fig.4. AveragenormalizedcomputationalcomplexityforSCFlip-1 REFERENCES [1] E. Arikan, “Channel polarization: A method for constructing capacity- achievingcodesforsymmetricbinary-inputmemorylesschannels,”IEEE performance,sinceinthiscasethelossoforder1isdominant). TransactionsonInformationTheory,vol.55,no.7,pp.3051–3073,2009. WefurtherplottheFERperformanceoftheproposedSCFlip-2 [2] I.TalandA.Vardy,“Listdecodingofpolarcodes,”InformationTheory, with T(1) =20,T(2,1) =T(2,2) =5,α =0.3, and α =0.5, IEEETransactionson,vol.61,no.5,pp.2213–2226,2015. 1 2 [3] K.NiuandK.Chen,“Stackdecodingofpolarcodes,”Electronicsletters, and compare with the CRC-aided SCL with L = 4 and 16- vol.48,no.12,pp.695–697,2012. bit CRC. The theoretical lower bound of SCFlip-2 decoder is [4] M. Bastani Parizi, “Polar codes: Finite length implementation, error correlations and multilevel modulation,” Master’s thesis, Swiss Federal also shown. It can be seen that the proposed SCFlip-2 closely InstituteofTechnology,2012. approaches the theoretical lower bound, and exhibits nearly [5] O.Afisiadis,A.Balatsoukas-Stimming,andA.Burg,“Alow-complexity the same performance as the CRC-aided SCL decoder with improved successive cancellation decoder for polar codes,” in 48th L=4 at medium/high SNR. AsilomarConferenceonSignals,SystemsandComputers. IEEE,2014, pp.2116–2120. In Fig. 4, we plot the average normalized complexity for [6] M.P.FossorierandS.Lin,“Soft-decisiondecodingoflinearblockcodes SCFlip-1 with metric (3) and T(1)=40, for SCFlip-1 with the based on ordered statistics,” IEEE Transactions on Information Theory, proposed metric (4) with T(1) =20, and SCFlip-2 with same vol.41,no.5,pp.1379–1396,1995. [7] D.Wu,Y.Li,X.Guo,andY.Sun,“Orderedstatisticdecodingforshort parameters as in previous paragraph. Moreover, we also plot polar codes,” IEEE Communications Letters, vol. 20, no. 6, pp. 1064– thenormalizedcomplexityofSCandSCLdecoderswithL= 1067,2016. {2,4}. We note that the SCFlip-1 decoder exhibits similar [8] P.Trifonov,“Efficientdesignanddecodingofpolarcodes,”IEEETrans- actionsonCommunications,vol.60,no.11,pp.3221–3227,2012. FER performance when using our proposed metric (4) with T(1) = 20, or the metric (3) with T(1) = 40. We observe that the complexity of SCFlip is very high at low SNR, but converges quickly to the one of the SC decoder. For a SNR of 2.2dB, we have already a complexity lower than the one of theSCLwithL=2.Moreover,onecanseethattheproposed metric allows reducing the average normalized complexity of the SCFlip-1 decoder by a factor of 2, as compared to the metric (3). Also, computational complexity of our proposed SCFlip-2 is even slightly better than SCFlip-1 with metric (3) and T(1) = 40, while it improves performance by 0.4dB at FER of 10−4. VI. CONCLUSION In this paper, we first proposed an improvement of the SCFlip decoder of order-1, by introducing a new metric to determine the flipping positions, which takes into account the sequential aspect of the SC decoder. The proposed metric increasestheabilityoftheSCFlipdecodertofindthefirsterror that occurred during the initial SC attempt, thus improving both decoding performance and computational complexity. Moreover, we have shown that the proposed metric allows closelyapproachingthetheoreticallowerboundcorresponding 6