Unrolled Polar Decoders, Part II: Fast List Decoders (original) (raw)

Fast List Decoders for Polar Codes

IEEE Journal on Selected Areas in Communications, 2016

Polar codes asymptotically achieve the symmetric capacity of memoryless channels, yet their error-correcting performance under successive-cancellation (SC) decoding for short and moderate length codes is worse than that of other modern codes such as low-density parity-check (LDPC) codes. Of the many methods to improve the error-correction performance of polar codes, list decoding yields the best results, especially when the polar code is concatenated with a cyclic redundancy check (CRC). List decoding involves exploring several decoding paths with SC decoding, and therefore tends to be slower than SC decoding itself, by an order of magnitude in practical implementations. In this paper, we present a new algorithm based on unrolling the decoding tree of the code that improves the speed of list decoding by an order of magnitude when implemented in software. Furthermore, we show that for software-defined radio applications, our proposed algorithm is faster than the fastest software implementations of LDPC decoders in the literature while offering comparable error-correction performance at similar or shorter code lengths.

A multi-Gbps unrolled hardware list decoder for a systematic polar code

2016

Polar codes are a new class of block codes with an explicit construction that provably achieve the capacity of various communications channels, even with the low-complexity successive-cancellation (SC) decoding algorithm. Yet, the more complex successive-cancellation list (SCL) decoding algorithm is gathering more attention lately as it significantly improves the error-correction performance of short-to moderate-length polar codes, especially when they are concatenated with a cyclic redundancy check code. However, as SCL decoding explores several decoding paths, existing hardware implementations tend to be significantly slower than SC-based decoders. In this paper, we show how the unrolling technique, which has already been used in the context of SC decoding, can be adapted to SCL decoding yielding a multi-Gbps SCL-based polar decoder with an error-correction performance that is competitive when compared to an LDPC code of similar length and rate. Post-place-androute ASIC results for 28 nm CMOS are provided showing that this decoder can sustain a throughput greater than 10 Gbps at 468 MHz with an energy efficiency of 7.25 pJ/bit.

Fast Successive-Cancellation-Based Decoders of Polar Codes

IEEE Transactions on Communications, 2019

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.

Fast and Flexible Software Polar List Decoders

Journal of Signal Processing Systems, 2019

Flexibility is one mandatory aspect of channel coding in modern wireless communication systems. Among other things, the channel decoder has to support several code lengths and code rates. This need for flexibility applies to polar codes that are considered for control channels in the future 5G standard. This paper presents a new generic and flexible implementation of a software Successive Cancellation List (SCL) decoder. A large set of parameters can be fine-tuned dynamically without re-compiling the software source code: the code length, the code rate, the frozen bits set, the puncturing patterns, the cyclic redundancy check, the list size, the type of decoding algorithm, the tree-pruning strategy and the data quantization. This generic and flexible SCL decoder enables to explore tradeoffs between throughput, latency and decoding performance. Several optimizations are proposed to achieve a competitive decoding speed despite the constraints induced by the genericity and the flexibility. The resulting polar list decoder is about 4 times faster than a generic software decoder and only 2 times slower than a nonflexible unrolled decoder. Thanks to the flexibility of the decoder, the fully adaptive SCL algorithm can be easily

A low-complexity improved successive cancellation decoder for polar codes

2014 48th Asilomar Conference on Signals, Systems and Computers, 2014

Under successive cancellation (SC) decoding, polar codes are inferior to other codes of similar blocklength in terms of frame error rate. While more sophisticated decoding algorithms such as list-or stack-decoding partially mitigate this performance loss, they suffer from an increase in complexity. In this paper, we describe a new flavor of the SC decoder, called the SC flip decoder. Our algorithm preserves the low memory requirements of the basic SC decoder and adjusts the required decoding effort to the signal quality. In the waterfall region, its average computational complexity is almost as low as that of the SC decoder.

Increasing the speed of polar list decoders

2014 IEEE Workshop on Signal Processing Systems (SiPS), 2014

In this work, we present a simplified successive cancellation list decoder that uses a Chase-like decoding process to achieve a six time improvement in speed compared to successive cancellation list decoding while maintaining the same errorcorrection performance advantage over standard successivecancellation polar decoders. We discuss the algorithm and detail the data structures and methods used to obtain this speed-up. We also propose an adaptive decoding algorithm that significantly improves the throughput while retaining the error-correction performance. Simulation results over the additive white Gaussian noise channel are provided and show that the proposed system is up to 16 times faster than an LDPC decoder of the same frame size, code rate, and similar error-correction performance, making it more suitable for use as a software decoding solution.

Improved List Decoding of Polar Codes by Shifted-pruning

2019 IEEE Information Theory Workshop (ITW), 2019

In successive cancellation list (SCL) decoding, the list pruning operation retains the L paths with highest likelihoods. However, the correct path might be among the paths with low likelihoods due to channel noise. In this case, the correct path is eliminated from the list. In this work, we study the event of elimination of the correct path and we analyze where and how this event occurs. A modified pruning scheme named shiftedpruning over a set of low-reliability bit-channels named critical bits is proposed aiming to avoid the elimination of the correct path in additional decoding attempts after a decoding failure occurs. Shifted-pruning is realized by selecting the paths k + 1 to k + L out of the 2L ordered paths instead of the paths 1 to L. The numerical results for polar codes of length 512 and code rates 0.5 and 0.8 and list sizes L = 2, 8 and 32 show that the shifted-pruning scheme is a low-complexity equivalent to the bitflipping scheme while it can outperform the bit-flipping method by providing 0.25-0.5 dB gain.

Generalized Fast Decoding of Polar Codes

2018 IEEE Global Communications Conference (GLOBECOM), 2018

Research on polar codes has been constantly gaining attention over the last decade, by academia and industry alike, thanks to their capacity-achieving error-correction performance and low-complexity decoding algorithms. Recently, they have been selected as one of the coding schemes in the 5 th generation wireless standard (5G). Over the years various polar code decoding algorithms, like SC-list (SCL), have been proposed to improve the mediocre performance of the successive cancellation (SC) decoding algorithm for finite code lengths; however, like SC, they suffer from long decoding latency. Fast decoding of polar codes tries to overcome this problem by identifying particular subcodes in the polar code and decoding them with efficient decoders. In this work, we introduce a generalized approach to fast decoding of polar codes to further reduce SC-based decoding latency. We propose three multi-node polar code subcodes whose identification patterns include most of the existing subcodes, extending them to SCL decoding, and allow to apply fast decoding to larger subsets of bits. Without any error-correction performance degradation, the proposed technique shows up to 23.6% and 29.2% decoding latency gain with respect to fast SC and SCL decoding algorithms, respectively, and up to 63.6% and 49.8% if a performance loss is accepted, whose amount depends on code and decoding algorithm parameters, along with the desired speedup.

A method to enhance the performance of successive cancellation decoding in polar codes

2016 10th International Symposium on Communication Systems, Networks and Digital Signal Processing (CSNDSP), 2016

Polar codes are regarded as a major breakthrough in modern channel coding since they are capacity-achieving using simple successive cancellation (SC) decoding. However, this is only possible with significantly large code lengths which may not be applicable for many systems. In this paper, we focus on short length polar codes and present a method which can enhance the performance of the successive cancellation decoder. For the purpose of analysis, we discuss the SC code tree and show how the proposed method can improve the performance by increasing the computational nodes in the code tree. The results quantify the achieved performance improvement over the conventional SC decoder.