Você está na página 1de 5

Mutual-Information-Based Successive Cancellation

List Decoding of Polar Codes


Shubham K Jha1 , Kuntal Deka2 and Shilpa Rao3
1 Indian Institute of Science Bangalore, 2 Indian Institute of Technology Goa,
3 Indian Institute of Information Technology Guwahati, India

Abstract—We present a novel successive cancellation list (SCL) proposed to concatenate cyclic redundancy check (CRC) codes
decoding method for the polar codes based on the mutual- with polar codes [4], [5]. The CRC-aided SCL decoding
information values of the bit-channels. At short-to-medium block- has been observed to outperform the current state-of-the-
lengths, only a certain fraction of the bit-channels get polarized.
Usually the mutual-information values for the bit-channels are art low-density parity-check (LDPC) codes. The remarkable
computed for the construction of the code. Using these available performance of the polar codes with the CRC-aided SCL
mutual-information values, we identify the information bits decoding has initiated a lot of research activities [6]–[8].
exhibiting full polarization and having high channel reliability. In The SCL decoders are governed by the parameter L, the
the proposed mutual-information-based SCL (MI-SCL) decoder, list-size. In order to achieve better performance, L must be
only one emanating path is considered for such bits. This results
in the reduction of the width of the decoding tree. Simulation kept at a high value which will eventually increase the overall
results confirm the impressive performance of the MI-SCL complexity of the decoding process. To this end, an SCL
decoder specially with concatenated cyclic redundancy check decoding method is proposed with adaptive list-size [9]. Here
codes. the decoding starts with L = 1. If the CRC condition fails, L
is doubled and the entire decoding process is repeated again.
I. I NTRODUCTION
This process continues until the CRC condition is satisfied.

P O lar codes have been introduced by Erdal Arikan as


the first ever symmetric-capacity achieving codes for
binary-input discrete memoryless channels (BI-DMCs) [1].
Due to repeated execution of the SCL decoding with multiple
values of L, the complexity is very high.
A. Contributions and Outline
They are based on a novel concept of channel polarization, The polar coding scheme involves two main tasks: (1) code
which follows a recursive channel transformation to create N construction and (2) decoding. During the construction phase,
synthesized bit-channels out of N identical copies of a given the mutual-information values of the bit-channels are com-
channel. As N → ∞, the bit-channels get polarized in the puted to determine the frozen and the information bit locations.
sense that they become either noiseless or pure-noise channels. The knowledge of the frozen bits is forwarded to the decoder.
The fraction of the bit-channels polarized to the noiseless However, the values of the mutual-information are not used
case is equal to the symmetric capacity or uniform-input by the existing SCL decoders. In this paper, we intend to
mutual-information of the unsynthesized original channel. By utilize the knowledge of the mutual-information of the bit-
transmitting the information bits and the frozen (dummy) bits channels to enhance the decoding performance. The proposed
over the noiseless and the pure-noise bit-channels respectively, SCL decoder will be referred to as the mutual-information
a capacity-achieving coding scheme can be realized. The based SCL (MI-SCL) decoder throughout the paper. Through
selection of the frozen bits is a crucial task known as the numerical experiments, we show that at short-to-medium-
code construction [1], [2]. Usually Bhattacharyya parameters lengths, not all bit-channels get polarized. Only a certain
or mutual-information values of the bit-channels are computed fraction of the information bit-channels acquire the maximum
for the code construction process [1], [3]. mutual-information value which is 1 for the binary-input
For the decoding of polar codes, Arikan proposed a low- symmetric channels. In MI-SCL decoder, we first form a set
complexity algorithm known as the successive cancellation of information bits with mutual-information value of 1 and
(SC) decoding [1]. In the SC decoding, the decisions regard- having high channel reliability. For these bits, we consider
ing the bits are made sequentially one after another. This only one child and this, in turn, results in the pruning of
decoding is a one-shot decision making process where an the decoding tree. Subsequently, better performance may be
already-estimated bit is not allowed to change its value once obtained without going for high values of L.
the decoder control passes the bit. This nature of operation The rest of this paper is organized as follows. In Section II,
makes the SC decoding sub-optimal and this issue becomes we discuss the preliminary concepts about the polar codes
alarming at short-to-medium blocklengths. To address this sub- and the existing SC decoders. In Section III, we propose
optimality, Tal and Vardy proposed successive-cancellation list the MI-SCL decoder. The simulation results are presented in
(SCL) decoding [4]. In SCL decoding, a list of L most-likely Section IV. Section V concludes the paper.
candidate bit-sequences is maintained throughout the decoding
II. P RELIMINARIES
process. After processing the last bit, the best amongst the
L sequences is considered as the decoder output. To provide A. Polar Codes and SC Decoding
external assistance to the SCL decoder in selecting the best Consider a polar code with the following parameters:
bit-sequence out of the L candidates, several authors have N , and
(1) block length N = 2m , m ∈ Z+ , (2) rate R = K
(3) the set F of indices the frozen bits with |F| = N − K. L = 4 most-likely paths are retained by pruning off the other
The binary data vector uN 1 = (u1 , u2 , . . . , uN ) contains K 4 �paths. �The implementation of this algorithm requires time
information bits at locations specified by F c . The frozen bits Ω LN 2 which is minimized to O(LN log N ) in [4]. The
indexed in F are set to 0 which are known perfectly to the space requirement is O(LN ). Thus keeping L to an optimal
N
decoder. The codeword xN 1 is obtained by x1 = u1 GN ,
N
value is a crucial task.
where GN is the generator matrix as defined in [1]. The
III. P ROPOSED W ORK
codeword xN 1 is BPSK modulated and sent over the BI-
DMC, W : {0, 1} → Y. Let y1N = (y1 , y2 , . . . , yN ) be The amount of polarization
� �Nis usually captured by mutual-
(i)
the received vector. Due to the polar encoding procedure, N information values I(WN ) of the bit-channels. A good
independent copies of W are converted into N synthesized � (i)
i=1 �
(i) polarization effect I(WN ) = 0 or 1 requires very large
bit-channels WN , i = 1, . . . , N with transition probabilities
(i) � N � values of N such as 216 , 220 . It is observed that for short-to-
WN y1 , ui−1 1 |ui , ui ∈ {0, 1}. The inputs ui ’s are assumed medium block lengths, N = 29 or 210 , there is a significant
to be uniform over {0, 1}. The (N − K) indices with the least number of bit-channels with intermediate values of mutual-
(i)
values of mutual information I(WN ) are included in F. information (i.e. not close to either 0 or 1). Fig. 2 illustrates the
Suppose the SC decoder estimate of the input data vector percentage of bit-channels against mutual-information values
uN1 is given by û1 = (û1 , û2 , . . . , ûN ). Upon processing y1 ,
N N
for N = 256, 512 and 1024 with binary erasure channel
the estimates ûi s are successively computed starting from the (BEC) having erasure probability � of 0.5. Similar kinds of
index 1 to N as described below: observations have been made for the binary-input additive
 white Gaussian noise (BI-AWGN) channel. In the rest of
0, if i ∈ F or WN(i) (y1N ,ûi−1 |0)
≥1
(i)
1
WN (y1N ,ûi−1
the paper, the phrases “polarized bit-channels” and “polarized
ûi = 1 |1)
1, otherwise. bits” will be used interchangeably.
Observe that as the blocklength N increases, the amount of
The conditional probabilities WN (y1N , ûi−1
(i)
and polarization increases. Nevertheless, for this short-to-medium
1 |0)
(i)
WN (y1N , ûi−1 |1), 1 ≤ i ≤ N are computed recursively using blocklength regime, the significant number of non-polarized
1
(22) and (23) of [1]. Note that the estimation of the ith bit bits advocates for a new partition of bits. Note that tradition-
depends on the previously decoded bits ûi−1 ally, the bits are partitioned into information and frozen bits.
1 .
We propose to distinguish between the polarized and the
B. SC List Decoder non-polarized information bits. Let P denote the set of polar-
In SCL decoding, L most-likely bit-sequences are kept alive ized information bits, i.e.
� �
during the decoding of each bit. Then the best codeword- (i)
P = i ∈ F c : I(WN ) = 1 . (1)
sequence is found out after processing all the bits [4]. The
decoding process is best understood in terms of the decoding Thus the set F c of the information bits can be partitioned into
tree. A path in the tree corresponds to one particular estimate the set P of polarized information bits and the set F c \ P of
non-polarized information bits.
By considering the above partitioning, we propose the MI-
0 u1 (frozen)
SCL decoder which operates in two phases:
0 u2 1) Phase I: From P, we identify the bits having high
1
channel reliability. These bits are called very good bits
and they are denoted by the set G. Note that G depends
0 1 0 1 u3 on the particular received codeword.
2) Phase II: For the bits belonging to G, only one (the best)
0 1 0 1 0 0 1 u4 descendant path is considered. This is similar to the case
1
of the frozen bits where path corresponding to only 0 is
Fig. 1: Decoding tree for an N = 4, R = 3/4, F = {1} polar chosen to be descendant path.
code with L = 4. Solid gray line represents the frozen bit u1 . Solid Due to the pruning in Phase II, the unnecessary paths will
and dashed black lines represent the retained and the ignored paths
respectively. not be considered. This action, in turn, will make room for
other possible candidate paths.
of the codeword. As an example, consider Fig. 1 where the The two phases are explained in details below.
decoding tree for the N = 4, R = 3/4, F = {1} polar code
is shown. The bit u1 is frozen at ‘0’ and therefore only one A. Phase I: Formation of the Set G of Very Good Bits
descending path corresponding to ‘0’ is considered. For the We consider BPSK signaling of the bits (0 → 1, 1 → −1)
information bits i ∈ F c , both possibilities ‘0’ and ‘1’ are over a BI-AWGN channel with noise variance σ 2 = N20 , where
taken into account. Thus the number of paths gets doubled N0 is the noise power spectral density. Fig. 3 depicts the
with each information bit. This process continues until the channel reliability region. We first choose a positive value φ
number of paths exceed the threshold value L. At that point, in the vicinity of 0 in such a way that the received bits of
the L most likely paths are retained and others are ignored. magnitude greater than φ are called reliable bits. The set of
Such a case is depicted in Fig. 1 where at leaf stage (u4 ), reliable bits is denoted by R. These bits, captured in regions
Fig. 2: Fraction of bit-channels vs mutual-information with N=256, 512, and 1024 respectively for BEC(� = 0.5).

low-reliablility region Algorithm 1: Calculation of popt at a given SNR N Eb


and
0
`1' `0' a list size L
� �
−1 −φ 0 φ 1 Data: N Eb
0
, L, BER SCL Eb
N 0
, L
region 1 region 2 Result: optimal value of switching probability popt
Fig. 3: Reliability region under BPSK signalling 1 Initialize p = pu ;

1 and 2, are minimally disturbed by the noise and are less 2 while p ≥ 0 do
� �
Eb
prone to erroneous decisions. The selection of φ is crucial to 3 BER = compute_BER_MI-SCL N ,L ;
� � 0
the performance of the decoding algorithm and discussed in
4 if BER ≤ BER SCL NEb
, L then
the following. Let p be the switching probability which denotes 0

the average probability that a bit switches between the two 5 p = p −δ;
reliable regions (region 1 and region 2 in Fig. 3) acted upon 6 else
by the noise. Since the region 1 and region 2 are symmetrical 7 popt = p;
and a bit is equally-likely to take 0 and 1, p is given by 8 break;
� −φ 9 end
1 −(y−1)2
10 end
p= √ e 2σ2 dy. (2)
−∞ 2πσ 2 11 return popt
Rearranging the above equation, we get φ by
the SCL decoder. This ensures that MI-SCL decoder performs
φ = σQ−1 (p) − 1 (3) better than the SCL decoder. popt is equal to the value of p
when the algorithm terminates. Putting p = popt in (3), φ can
where, Q−1 (.) is inverse of the Q-function. be computed. The set R of the reliable bits is determined as
Eb
We consider the ratio N 0
as the normalized signal-to-noise follows:
ratio (SNR), where Eb is the energy per bit. Using (3), φ
R = {i : |yi | ≥ φ} . (4)
can be calculated at each SNR for a given value of p. The
reliability partition is subjected to the calculation of φ which With the set of reliable bits available to us, we discuss the
in turn depends on a suitably selected value of p. formation of the set G of very good bits.
Proposition 1. For a given BI-AWGN channel with noise Definition 1. The information bits which are both polarized
variance σ 2 , the switching probability p is upper bounded by and reliable are considered as the very good bits. Thus the set
pu , where, � � G of very good bits is defined as
1
pu = Q .
σ G = P ∩ R.
Algorithm 1 presents a method to experimentally determine
The very good bits are less susceptible to noise and
the optimum value of p denoted by popt at a particular SNR
their corresponding bit-channels polarize towards mutual-
and list size. The algorithm is initialized with p = pu because
information value of 1.
pu gives the maximum bit error rate (BER) for the MI-SCL
decoder. The value of p is then reduced in steps of δ > 0, δ →
0 and the BER of the MI-SCL decoder is compared with that B. Phase II: Pruning of the Decoding Tree
of the SCL decoder having the same list size and SNR. For Unlike the SCL decoder, which considers the paths corre-
BER computation, MI-SCL decoder considers its Phase II as sponding to both the values of the bit at every information
well which is described later. Note that line 5 updates the stage, the MI-SCL decoder considers a single path for each
value of p whenever the BER of the MI-SCL decoder is less very good bit present in G. This is similar to the treatment
than that of existing SCL decoder. The algorithm terminates done to a frozen bit and thus, can be viewed as the freezing of
when the BER of the MI-SCL decoder is greater than that of information bits. For the very good bits, the single possibility
taken under the proposed scheme is denoted by α, where additional computation. R is chosen based on φ as per (4).
α ∈ {0, 1}. For that popt is calculated using Algorithm 1 which is run in
Suppose, the bit ui+1 is found to be present in G. Then, at off-line mode.
the (i + 1)th stage of the tree, the value of α is decided by Phase II involves two steps as shown in (5) and (6). In (5),
carrying out the following two steps: the only additional task is to compute the arithmetic averages
Step 1: In the SCL decoding, the likelihoods of the likelihoods. In (6), the maximum of two numbers is
(i) � �
found. Both these tasks take time O(L|G|). As the complexity
WN y1N , ui−1 1 |ui are computed for various combinations
(paths) of ui1 . For notational simplicity, we denote the of the SCL decoder is much higher as O(LN log N ), the
likelihoods of the L survived paths at the ith stage by overall complexity of MI-SCL decoder remains unchanged.
(i) (i) (i) (i)
l1 , l2 , . . . , lL . Let lj,b be the likelihood of the path in the
next stage which descends from the j th survived path in the IV. S IMULATION R ESULTS
direction of the current bit value b, b ∈ {0, 1}. Compute the Monte Carlo simulations have been performed in order to
arithmetic averages of the likelihoods as follows: evaluate the performance of the MI-SCL decoder. We consider
L a rate-1/2 polar code of block length N=1024. To compute
1 � (i)
µi+1
b = l , b = 0, 1. (5) the mutual-information values of the bit-channels, we adopt
L j=1 j,b the method proposed in [10]. Here the BI-AWGN channel
with noise variance σ 2 is mapped to an equivalent BEC with
Step 2: Select the value of b for which µi+1 is maximum
b a specific erasure probability �. Then the mutual-information
and assign it to α i.e.
values are computed recursively by using (6) of [1].
α = arg max µi+1
b . (6) TABLE I: Values of various parameters at different normalized SNRs
b∈{0,1}
for polar code with N = 1024, rate 0.5.
After selecting α, only one descending path corresponding
Eb /N0 (dB) pu popt |P| Avg. |R| Avg. |G|
to α is considered at the (i + 1)th stage. Thus the width of the 1.0 0.1310 0.0003 234 21.38 12.85
decoding tree does not increase. The pruning is performed only 1.5 0.1192 0.0006 266 38.22 23.49
at those stages which correspond to the very good bits present 2.0 0.1057 0.0014 302 62.66 43.86
2.5 0.0917 0.0061 344 99.84 77.08
in G. For other bits, the existing steps for the SCL decoding
3.0 0.0792 0.0153 380 173.61 140.16
are executed. Since the very good bits have high channel 3.5 0.0673 0.0267 418 280.27 224.44
reliability and are expected to polarize fast, the consideration 4.0 0.0565 0.0435 466 404.36 346.56
of bifurcated paths for these bits is redundant. In lieu of these
pruned-off inessential paths, new possibly-important paths will Table I presents the values of various parameters associated
be brought into the picture. The pruning procedure is explained with the MI-SCL decoder: pu , popt , the cardinalities of the sets
with the help of the following example. P, R, and G for L = 8. Since, the channel reliability varies
Example 1. Consider the same polar code considered in from frame to frame, we present the average values of |R| and
Fig. 1. Let G = {4} for this case. The proposed pruning of |G| after considering 1000 frames. Observe that as the SNR
the decoding tree is illustrated in Fig. 4. increases, the cardinalities of the sets P, R, and G increase
as expected.
0 u1
SC
(frozen) 10−1 MI-SCL (L = 2)
0 1 u2 MI-SCL (L = 4)

10−2 MI-SCL (L = 8)
MI-SCL (L = 16)

0 1 0 1 u3 10−3
BER

α α α u4
α (very 10−4
good)
Fig. 4: Proposed pruning process. 10−5
Note that for u4 , only one possibility α has been considered
10−6
instead of two. The α in the last stage can be chosen as either
0 or 1 based on the steps described above. 1 1.5 2 2.5 3 3.5 4
Eb
(dB)
Complexity Analysis N0
Fig. 5: Bit error rate of a length N = 1024, rate-1/2 polar code of
The proposed MI-SCL decoder consists of two phases. In different list sizes under the MI-SCL decoder.
phase I, the sets P and R are determined. P is formed based
on the mutual-information values as per (1). As the prior Fig. 5 presents the BER performance of the MI-SCL
knowledge of mutual-information values is available to the decoder with various list sizes at different SNRs. With the
decoder, the set P can be found out without performing any increase in list size, we notice a consistent improvement
Existing SCL (L = 4) 10−1
10−1 MI-SCL (L = 4)
Existing SCL (L = 8)
10−2
10−2
10−3
BER

WER
10−3 10−4
MI-SCL L = 4, CRC8
Existing SCL L = 8, CRC8
10−5 MI-SCL L = 8, CRC8
−4 Existing SCL L = 16, CRC8
10
MI-SCL L = 16, CRC8
10−6 Existing SCL L = 32, CRC8

1 1.5 2 2.5 3
1 1.5 2 2.5 3
Eb
(dB) Eb
N0
N0
(dB)
Fig. 6: Bit error rate performance of the MI-SCL decoder with L = 4
and existing SCL decoder with L = 4 and L = 8. Fig. 8: Word error rate performance of MI-SCL decoder for CRC-
aided polar codes with N = 1024, R = 0.5.
in the BER. However, at higher SNRs, the performance is
performance of the MI-SCL decoder for the CRC-aided polar
independent of L, which is also observed in SCL decoder [4].
codes. The performance is shown in terms of word error rate
Fig. 6 and Fig. 7 show the performance comparisons of the
(WER) for various list sizes. The results are in accordance
existing SCL decoder and the MI-SCL decoder for two cases
with the earlier observations.
of L. In Fig. 6, we observe that the MI-SCL decoder with
V. C ONCLUSIONS
Existing SCL (L = 8)
10−1 This paper proposed the MI-SCL decoder as an improved
MI-SCL (L = 8)
Existing SCL (L = 16) version of the existing SCL decoder. The MI-SCL decoder
operates in two phases. In the first phase, the very good bits
enjoying noiseless bit-channels are identified mainly by using
10−2
the knowledge of the mutual-information values of the bit-
BER

channels. In the second phase, the pruning of the decoding


tree is performed by considering only one carefully chosen
descendant from each of the very good bits. We compared the
performances of the MI-SCL decoder and the SCL decoder
10−3 for various list sizes and concluded that the MI-SCL decoder
with list size L yields a performance almost similar to that
of the SCL decoder with list size 2L. Further, CRC8-aided
1 1.5 2 2.5 MI-SCL has surpassed the performance of CRC8-aided SCL
Eb
N0
(dB) decoder.
Fig. 7: Bit error rate performance of the MI-SCL decoder with L = 8 R EFERENCES
and existing SCL decoder with L = 8 and L = 16. [1] E. Arikan, “Channel polarization: A method for constructing capacity
achieving codes for symmetric binary-input memoryless channels,” IEEE
L = 4 achieves BER which is close to that of the existing Trans. Inf. Theory, vol. 55, no. 7, pp. 3051-3073, Jul. 2009.
SCL decoder with L = 8 at high SNR. Similar observations [2] I. Tal and A. Vardy, “How to construct polar codes,” IEEE Trans. Inf.
Theory, vol. 59, no. 10, pp. 6562-6582, Oct. 2013.
are made in Fig. 7, where, the MI-SCL decoder with L = 8 [3] H. Vangala, E. Viterbo, and Y. Hong, “A comparative study of polar code
performs close to the existing SCL decoder with L = 16 in constructions for the AWGN channel,” arXiv:1501.02473, Jan. 2015.
the high SNR region. In general, we have observed that the [4] I. Tal and A. Vardy, “List decoding of polar codes,” IEEE Trans. Inf.
Theory, vol. 61, no. 5, pp. 2213-2226, May 2015.
performance of the MI-SCL decoder with L almost similar to [5] K. Niu and K. Chen, “CRC-aided decoding of polar codes,” IEEE
the that of the existing SCL decoder with 2L specifically at Commun. Lett., vol. 16, no. 10, pp. 16681671, Sep. 2012.
high SNR. [6] A. Balatsoukas-Stimming, M. B. Parizi and A. Burg, “LLR-based
successive cancellation list decoding of polar codes,” IEEE Trans. Signal
More often, we have spotted decoding errors where the path Process., vol. 63, no. 19, pp. 5165-5179, Oct. 2015.
corresponding to the transmitted codeword was present in the [7] K. Chen, K. Niu, J. Lin, “List successive cancellation decoding of polar
list but was not the most-likely. We then employed a CRC codes,” IET Electron. Lett, vol. 48, no. 9, pp. 500-501, Apr. 2012.
[8] G. Sarkis, P. Giard, A. Vardy, C. Thibeault and W. J. Gross, “Fast polar
code as the outer code of the concatenated coding system, as decoders: algorithm and implementation,” IEEE J. Sel. Areas Commun.,
suggested in [4], to deal with this issue. We have considered vol. 32, no. 5, pp. 946-957, May 2014.
a CRC code with the generator polynomial g(x) = x8 + x7 + [9] B. Li, H. Shen and D. Tse, “An adaptive successive cancellation list
decoder for polar codes with cyclic redundancy check,” IEEE Commun.
x6 + x4 + x2 + 1 which is denoted by CRC8. However, the Lett., vol. 16, no. 12, pp. 2044-2047, Dec. 2012.
rate reduces from K/N to (K − 8)/N . For these CRC-aided [10] E. Arikan, “A performance comparison of polar codes and Reed-Muller
polar codes, the most likely path among the paths satisfying codes,” IEEE Commun. Lett., vol. 12, no. 6, pp. 447-449, Jun. 2008.
correct CRC8 is decoded as codeword. Fig. 8 shows decoding

Você também pode gostar