4562 IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 67, NO. 7, JULY 2019
Fast Successive-Cancellation-Based
Decoders of Polar Codes
Maryam Haghighi Ardakani , Muhammad Hanif , Masoud Ardakani , Senior Member, IEEE,
and Chintha Tellambura , Fellow, IEEE
Abstract— The successive-cancellation list (SCL) and
successive-cancellation flip (SCF) decoding can be used to
improve the performance of polar codes, especially for short to
moderate length codes. However, their serial decoding nature
results in significant decoding latencies. Implementing some
operations in parallel can reduce their decoding latencies.
This paper presents fast implementations of the SCL and SCF
decoders. In particular, we propose fast parallel list decoders
for five newly identified types of nodes in the decoding tree of
a polar code, which significantly improves the decoding latency.
We also present novel fast SCF decoders that decode some
special nodes in the decoding tree of a polar code without
serially computing bit log-likelihood ratios. Using our proposed
fast parallel SCF decoders, we observed an improvement up to
81% with respect to the original SCF decoder. This significant
reduction in the decoding latency is observed without sacrificing
the bit-error-rate performance of the code.
Index Terms— Polar codes, successive-cancellation decoder, list
decoder, flip decoder, fast decoding, decoding latency.
I. I NTRODUCTION
P
OLAR codes, discovered by Arıkan, will be used in the
next generation mobile communication standards [1].
This new class of error correcting codes has an explicit
construction and can achieve the symmetric capacity of mem-
oryless channels under successive-cancellation (SC) decoding
as the code length goes to infinity [2]. However, the error
correction performance of polar codes for short to moder-
ate block lengths with the SC decoder is inferior to that
of the other state-of-the-art error correcting codes, such as
low-density parity-check (LDPC) and turbo codes. This is
due to the significant performance gap between the SC and
the maximum-likelihood (ML) decoders [3]. Unfortunately,
ML decoding is beset with high computational complexity,
even for moderate-length polar codes. Thus, the successive-
Manuscript received July 13, 2018; revised November 8, 2018 and
January 19, 2019; accepted February 25, 2019. Date of publication March 19,
2019; date of current version July 13, 2019. This work was supported by
the TELUS Corporation and Natural Sciences and Engineering Research
Council of Canada. This paper was presented in part at the IEEE Wireless
Communications and Networking Conference (WCNC) Workshop, Barcelona,
Spain, April 2018. The associate editor coordinating the review of this paper
and approving it for publication was P. Trifonov. (Corresponding author:
Maryam Haghighi Ardakani.)
The authors are with the Department of Electrical and Computer
Engineering, University of Alberta, Edmonton, AB T6G 2R3, Canada
(e-mail: maryam3@ualberta.ca; mhanif@ualberta.ca; ardakani@ualberta.ca;
ct4@ualberta.ca).
Color versions of one or more of the figures in this paper are available
online at http://ieeexplore.ieee.org.
Digital Object Identifier 10.1109/TCOMM.2019.2906232
cancellation list (SCL) decoder and successive-cancellation
flip (SCF) decoder aim to achieve low complexity.
Among the existing low-complexity polar decoders, the SCL
decoder achieves near ML performance even with moderate
list sizes [3]. Aiding it with a cyclic-redundancy check (CRC)
further improves the bit-error-rate (BER) performance beyond
that of LDPC and turbo codes [3].
The SCL decoder, similar to the original SC decoder,
operates serially as it estimates one bit at a time. However,
unlike the latter which keeps only a single decoding path,
the SCL decoder maintains a list of L most probable paths
while decoding each bit [3].
The serial decoding nature of the SC and SCL decoders
produce high decoding latencies. To shorten them, multiple
schemes have been developed [4]–[13]. The main underlying
idea behind these schemes is to parallelize some operations to
increase the decoder throughput. In particular, these schemes
recognize certain patterns in the codeword and implement their
fast parallel decoders. For example, [4] identifies and proposes
low-complexity parallel decoders for rate-0 and rate-1 nodes
for the SC decoder. Similarly, [5] proposes fast decoders for
single-parity-check (SPC) and repetition (REP) nodes in the
decoding tree of a polar code. Recently, [6] presented fast low-
complexity decoders of five nodes (type-I, type-II, type-III,
type-IV, and type-V nodes) to further increase the decoding
speed of the SC decoder.
Fast SCL decoders follow a similar strategy to reduce
decoding latency. However, unlike fast SC decoders that output
only the most-probable output sequence, fast SCL decoders
maintain and output a list of the most probable paths. In par-
ticular, to improve the decoding speed of the SCL decoder,
[10]–[12] propose list decoders for rate-0, rate-1, REP and
SPC nodes.
Although the SCL decoder achieves near-ML performance,
compared to the SC decoder, it has higher computational and
memory complexities that grow linearly with the list size.
More specifically, for a code of size N the memory and
computational complexities of the SC decoder are O (N ) and
O (N log N ), respectively, whereas, for a list of size L, they
increase to O (LN ) and O (LN log N ), respectively, in the
SCL decoder. Further, fast implementations based on hard-
ware unrolling result in a quadratic increase in the hardware
area [14]. These shortcomings make the fast implementation
of SCL decoder challenging. As such, a different approach was
introduced in [15] to improve the performance of SC decoder:
SC flip (SCF) decoding.
0090-6778 © 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission.
See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
Authorized licensed use limited to: UNIVERSITY OF ALBERTA. Downloaded on August 06,2020 at 00:54:07 UTC from IEEE Xplore. Restrictions apply.