I Introduction
Polar codes, introduced by Arikan in [1], achieve the symmetric capacity of the binaryinput discrete memoryless channels (BIDMCs) under successivecancellation (SC) decoding. However, for practical finite lengths, polar codes with SC decoding yield poor performances compared with LDPC and Turbo codes. In [2], SC list (SCL) decoding was developed, enabling to achieve the optimal maximumlikelihood (ML) performance with a sufficiently large list size. Despite its superior performance, SCL decoding suffers from high computational complexity, memory requirement, and lower decoding throughput.
Recently in [3] and [4], SCStack (SCS) decoding was proposed whose computational complexity can be very close to that of SC decoding in the high signaltonoise ratio (SNR) regimes. In the operating SNR regimes (e.g., frameerrorrate (FER) ), SCS decoding can have much lower decoding complexity than SCL decoding. Also, in [5] and [6], an improved pathmetric and efficient stack decoding algorithm for a polar code were developed. In contrast, SCS decoding requires larger spacecomplexity and its performance is not poor when the stacksize is small [3, 4]. Another improvement of SC decoding, called SCFlip (SCF) decoding, was proposed in [7]
. Here, SC decoding is first performed to generate an initial estimated codeword. Then, it passes the cyclicredundancycheck (CRC), the overall decoding is completed. Otherwise, SC decoding additionally proceeds by flipping a single informationbit which is carefully chosen with loglikelihood ratios (LLRs). SCF decoding terminates either when a valid codeword is found (i.e., CRC passes) or
additional trials are failed. Also, some improvements of SCF decoding were proposed in [8][12].In this paper, we propose an alternative improvement of SC decoding, called SCFano decoding, by properly incorporating the Fano sequential decoding [13] into the standard SC decoding. Following the basic procedures of SC decoding, the proposed SCFano decoding has an additional step to evaluate the reliability (or belief) of a current path. Specifically, at every decoding stage, it decides whether to move forward along a current path or move backward to find a more likelihood path, which can overcome the major drawback of SC decoding such as one wrongdecision will destroy the overall decoding. As in the sequential decoding [13], which is one of the lowcomplexity decodings for convolutional codes, the decision at every stage is made by comparing the (partial) pathmetric (e.g., the pathmetric of a current path) with a dynamic threshold. As in the sequential decoding [13], defining a pathmetric plays a crucial role in the performance of SCFano decoding. The Fano metric, used in convolutional codes, is not appropriate for SCFano decoding due to the different code structures of polar and convolutional codes. We thus develop a novel (partial) pathmetric suitable for the proposed SCFano decoding. Compared with the other improvements of SC decoding as SCL and SCS decodings, SCFano decoding has a lower memory requirement and thus is more suitable for hardware implementations. SCFano decoding can be viewed as an efficient implementation of the idea of SCF decoding without paying the cost of CRC. Namely, the former can flip an erroneous information bit immediately while the latter does it after decoding all the information bits. Finally, simulation results show that SCFano decoding enhances the performance of SC decoding with an almost same complexity and also achieves the performance of SCL decoding with a lower complexity.
Ii Preliminaries
We briefly review the polar codes and the standard SC decoding in [1]. The polar codes are uniquely defined by the where and represent the code length and the number of information bits, respectively, and denotes the information set which contains the indices of information bits. In [1], the generator matrix of a polar code is obtained by where and represent the 2by2 Arikan kernel and the Kronecker product, respectively, and the denotes the bitreversal permutation matrix. Then, the polar encoding is performed as
(1) 
where
represents a messagevector containing both the information bits and zero frozen bits.
Next, we explain the standard SC decoding which produces the estimated informationbit for in that order, from the observation such as
(2) 
Here, stands for the decision function as
(3) 
where (called branchmetric) is efficiently computed in a recursive way (see [1] for details).
Iii The Proposed SCFano Decoding
We propose a SCFano decoding which can improve the performance of SC decoding with an almost same complexity. The proposed decoding is developed by appropriately combining the Fano sequential decoding [13] with SC decoding. In detail, at every SC decoding stage, SCFano decoding decides whether to move forward along a current path or move backward to find a more likelihood path. Here, the decision is made by comparing the proposed partial pathmetric of the current path with a dynamical threshold. Our major contribution is to present the (partial) pathmetric suitable for SCFano decoding, which is different from the conventional Fano metric used in convolutional codes [13]. In the following subsections, we will explain the proposed pathmetric and the detailed descriptions of SCFano decoding.
Iiia The proposed pathmetric
We propose a pathmetric which will play a crucial role in SCFano decoding. As in the Fano sequential decoding [13], the pathmetric should satisfy the following two requirements:

It should be able to capture the reliabilities of the associated partial paths;

it should be properly normalized for the fair comparisons of the partial paths having different lengths.
First of all, there have been related studies focusing on the pathmetric of SCS decoding (see [5] and [6] for details). Conventionally, the socalled Fano metric is employed for both the Fano sequential decoding and the stack decoding for conventional codes. In contrast, the pathmetric in [5] and [6] is not suitable for the proposed SCFano decoding since it continuously decreases as the decodingstage proceeds, which makes it to move backward frequently and thus can increase the decoding latency of SCFano decoding. Therefore, it is required to find a proper partial pathmetric for SCFano decoding.
Toward this, since a pathmetric used in SCL decoding [2] satisfies the above requirement 1), we start with this metric defined as
(4) 
where note that this pathmetric is computed recursively. Unfortunately, this metric cannot meet the requirement 2) because it tends to decrease steadily as a (decoded) pathlength grows. In other words, as the decodingstage proceeds, the resulting pathmetric is more likely to decrease, equivalently, not to to pass the dynamic threshold . Accordingly, the overall decoding process can be stuck (i.e., moving forward and backward repeatedly). We address this problem by introducing a proper normalization term which can account for the impact of the pathlength on the reliability. Let
denote an errorprobability of the polarized (or synthesized) channel
. Note that it can be efficiently computed via density evolution [14]. Then, we first observe that for any length path , the corresponding pathmetric can be upper bounded as(5) 
and equivalently, we have
(6) 
Using this, we can satisfy the requirement 2 by normalizing the pathmetric such that the maximum pathmetric corresponding to a correct path would be independently from the lengths of partial paths. Based on this, the proposed pathmetric is obtained as
(7) 
with initialmetric . Note that the pathmetric in (7) is equal to
(8) 
Then, from (5), we can confirm that
(9) 
for any since .
IiiB The SCFano decoding
As in SC, SCL, and SCS decodings, the proposed SCFano decoding is also performed based on the code tree as shown in Figs. 1 and 2. We recall that as shown in Fig. 1, SC decoding only moves forward (e.g., in the direction from the root node to leaf nodes) on the code tree such that at every decodingstage, the path with a higher branchmetric is chosen among the two candidate paths. In contrast, SCFano decoding can move either forward or backward according to the corresponding pathmetric and a current dynamic threshold (see Fig. 2). The flowchart of the SCFano decoding is in Fig. 3, and the detailed descriptions of the proposed SCFano decoding are provided in Algorithms 1, 2, and 3.
Algorithm 1 describes the main structure of SCFano decoding. Here, a binary variable
indicates whether a current node is reached from a parent node (e.g., ) or a child node (e.g., ). For the case of , the path with a higher pathmetric (e.g., the good path) is chosen among the two candidate paths as in the standard SC decoding. Whereas, for the case of , either the other path (e.g., the bad path) is selected or the process moves backward since in this case, the goodpath has been already selected in a previous stage and the direction along that path was evaluated as not enough to be the most reliable path. Let denote the length binary vector where if the th information bit is decoded following the path with a lower branchmetric among two candidate paths, and , otherwise. To avoid recomputing the path metric of revisited paths, we introduce the length vector where contains the branchmetric for the decoding.Algorithm 2 describes the procedures of the backward movements in SCFano decoding where it is activated only when both path metrics in a forward direction are lower than a current threshold . In Algorithm, the function provides not only the index of an immediate parent information node but also the index of proper information node which is located upper level in the code tree then the immediate parent information node. This is because the frozen node is not used by SCFano decoding and thus it is possible for SCFano decoding to move backward more than one time. Furthermore, to make SCFano decoding more stable, the dynamic threshold is updated (see Algorithm 3) whenever a path is firstly established. In algorithm 1, to automatically check whether a path is firstly established or note, it is compared with the pathmetric of upper (parent) node (denoted by ). Without this update, the decoded path can be rotated permanently around near paths, which can yield an infinite decoding process. Also, via Algorithm 2 and Algorithm 3, SCFano decoding can moderate the dynamic threshold automatically according to the reliability of the received signal.
We remark that in SCFano decoding, there is a parameter to control the performancecomplexity tradeoff. For example, the performance of SCFano decoding can be improved by setting a small value while the corresponding computational complexity will increase as this tends to search more nodes in the code tree. Thus, when is very small, SCFano decoding can achieve the performance of the optimal ML decoding. On the other hand, if we set a larger value , the performance of SCFano decoding will be degraded while reducing the computational complexity. Namely, when is very large, SCFano decoding is equivalent to the standard SC decoding. Likewise the advantage of the conventional Fano decoding over the stack decoding [13], SCFano decoding has lower memory complexity than SCS decoding. Also, according to the previous works in [3] and [4], SCFano decoding has also lower memory complexity than SCL decoding. In comparison with SC decoding, SCFano decoding only requires the small amount of memories for partial paths’ branch metrics , indicator vector and some values .
Example 1
In this example, we will show how the proposed SCFano decoding can outperform the standard SC decoding. For the comparison, we consider the polar code with the parameters . Assuming the messagevector , the polar encoding in (1) generates the codeword . Considering the additivewhiteGaussiannoise (AWGN) channel and BPSK modulation, the (noisy) received signal is given as . Figs. 1 and 2 illustrate the decoding procedures of SC and SCFano decodings, respectively. We used the parameter for SCFano decoding. This example shows that SC decoding fails to find a correct informationbit where is estimated. We notice that the failure of SC decoding is due to the wrong decision of (e.g., \⃝raisebox{0.9pt}{2} in Fig. 1). In contrast, SCFano decoding can recognize this wrong decision as the pathmetric is lower than the current threshold , namely, . Here, note that the dynamic threshold was updated from to because both path metrics and in Fig. 2 are lower than . Algorithm 2 makes to move backward (e.g., \⃝raisebox{0.9pt}{3} in Fig. 2). Also, from Algorithm 1, the decoding process moves along the other path (\⃝raisebox{0.9pt}{4} in the Fig. 2), which can eventually yield a correct informationbit .
Iv Simulation Results
We compare the proposed SCFano decoding with the SC, SCL and SCF decodings with respect to the frameerrorrate (FER) performance and the average decoding complexity. Regarding the complexity comparison, we used the notion of normalized complexity which implies that the complexities of SC, SCL, and SCFano decodings are normalized by that of SC decoding. To be specific, the average normalized complexities of SCFano, SCL, and SCF decodings are respectively defined as , , and , where , , , and denotes the summation of all the number of decoded bits during SC, SCFano, SCL, and SCF decodings, respectively. Note that is equal to the number of decoded bits (e.g., code length ). For the simulations, AWGN channel and the polar code of length 128 and code rate are assumed. For SCFano decoding, we considered the various parameters . Also, for SCL decoding, we used the listsizes . In fact, SCL decoding with almost achieves the optimal ML performance for this shortlength polar code. The corresponding FER performances and decoding complexities are provided in Figs. 4 and 5, respectively.
From Figs. 4 and 5, we first confirm that the parameter of SCFano decoding yields the performancecomplexity tradeoff. Also, we observe that SCFano decoding with can achieve the performance of SCL decoding with having a lower average computational complexity. Furthermore, the complexity reduction becomes a larger as grows. At , SCFano decoding with can considerably reduce the complexity of SCL decoding by achieving the same performance and can significantly enhance the performance of SC decoding with a comparable complexity. In addition, we can see that SCFano decoding shows better performance than SCF decoding without the cost of additional CRC code where the 8bit CRC and are used for SCF decoding. Similarly shown in [2], the slope of SCF decoding is better than SCFano decoding as the concatenation of CRC code can improve the minimum distance of a polar code. We also confirmed that SCFano decoding together with bitflipping idea in [7] can outperform SCF decoding at all ranges of FERs, by enhancing the slope of SCFano decoding. The corresponding results are not included in this paper due to the lack of space.
V Conclusion
We proposed a novel decoding method of a polar code, named SCFano decoding, by incorporating the Fano sequential decoding into the standard SC decoding. The proposed SCFano decoding has much lower memory requirements than the other improvements as SCL and SCS decodings, and thus it is more suitable for hardware implementations. Via simulation results, it was shown that SCFano decoding improves the performance of SC decoding with a comparable complexity and also achieves the performance of SCL decoding with a lower decoding complexity. As an ongoing work, we will extend SCFano decoding for CRCconcatenated polar codes.
References
 [1] E. Arıkan, “Channel polarization: a method for constructing capacityachieving codes for symmetric binaryinput memoryless channels,” IEEE Trans. Inf. Th., vol. 55, no. 7, pp. 30513073, Jul. 2009.
 [2] I. Tal and A. Vardy, “List decoding of polar codes,” IEEE Trans. Inf. Th., vol. 61, no. 5, pp. 22132226, May 2015.
 [3] K. Niu and K. Chen, “Stack decoding of polar codes,” Elect. Letters, vol. 48, no. 12, pp. 695697, Nov. 2012.
 [4] K. Chen, K. Niu and J. Lin, “Improved successive cancellation decoding of polar codes,” IEEE Trans. Commun., vol. 61, no. 8, pp. 31003107, Aug. 2013.
 [5] V. Miloslavskaya and P. Trifonov, “Sequential Decoding of Polar Codes,” IEEE Commun. Lett., vol. 18, no. 7, pp. 11271130, July 2014.
 [6] P. Trifonov, “A Score Function for Sequential Decoding of Polar Codes,” in Proc. IEEE Int. Symp. on Inf. Th. (ISIT), pp. 14701474, Vail, CO, 2018.
 [7] O. Afisiadis, A. BalatsoukasStimming and A. Burg, “A lowcomplexity improved successive cancellation decoder for polar codes,” in Proc. 48th Asilomar Conf. Sig. Sys. Comput., pp. 21162120, Pacific Grove, CA, Nov. 2014.
 [8] L. Chandesris, V. Savin and D. Declercq, “An improved SCFlip decoder for polar codes,” in Proc. IEEE Global Commun. Conf. (GLOBECOM), pp. 16, Washington, DC, Dec. 2016.
 [9] L. Chandesris, V. Savin and D. Declercq, “DynamicSCFlip decoding of polar codes,” IEEE Trans. Commun., vol. 66, no. 6, pp. 23332345, Jun. 2018.
 [10] C. Condo, F. Ercan and W. J. Gross, “Improved successive cancellation flip decoding of polar codes based on error distribution,” in Proc. IEEE Wire. Commun. Net. Conf. Works. (WCNCW), pp. 1924, Barcelona, Spain, Apr. 2018.
 [11] F. Ercan, C. Condo, S. A. Hashemi and W. J. Gross, “Partitioned successivecancellation flip decoding of polar codes,” in Proc. IEEE Int. Conf. Commun. (ICC), pp. 16, May 2018.
 [12] F. Ercan, C. Condo and W. J. Gross, “Improved bitflipping algorithm for successive cancellation decoding of polar codes,” IEEE Trans. Commun.

[13]
R. M. Fano, “A heuristic discussion of probabilistic decoding,”
IEEE Trans. Inf. Th., vol. 9, no. 2, pp. 6474, Apr. 1963.  [14] R. Mori and T. Tanaka, “Performance of polar codes with the construction using density evolution,” IEEE Commun. Lett., vol. 13, no. 7, pp. 519521, Jul. 2009.
Comments
There are no comments yet.