Fast List Decoders for Polar Codes

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.

[1]  Zhiyuan Yan,et al.  Symbol-Decision Successive Cancellation List Decoder for Polar Codes , 2015, IEEE Transactions on Signal Processing.

[2]  Warren J. Gross,et al.  Low-Latency Software Polar Decoders , 2015, J. Signal Process. Syst..

[3]  Warren J. Gross,et al.  Increasing the Throughput of Polar Decoders , 2013, IEEE Communications Letters.

[4]  Xiao Han,et al.  Implementation of IEEE 802.11n LDPC codes based on general purpose processors , 2013, 2013 15th IEEE International Conference on Communication Technology.

[5]  Keshab K. Parhi,et al.  Low-Latency Successive-Cancellation List Decoders for Polar Codes With Multibit Decision , 2015, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[6]  Ilya Dumer,et al.  Soft-decision decoding of Reed-Muller codes: recursive lists , 2006, IEEE Transactions on Information Theory.

[7]  Bertrand Le Gal,et al.  Multi-Gb/s Software Decoding of Polar Codes , 2015, IEEE Transactions on Signal Processing.

[8]  Bin Li,et al.  An Adaptive Successive Cancellation List Decoder for Polar Codes with Cyclic Redundancy Check , 2012, IEEE Communications Letters.

[9]  Friedrich Jondral,et al.  A LTE Receiver Framework Using GNU Radio , 2015, J. Signal Process. Syst..

[10]  In-Cheol Park,et al.  Partially Parallel Encoder Architecture for Long Polar Codes , 2015, IEEE Transactions on Circuits and Systems II: Express Briefs.

[11]  Keshab K. Parhi,et al.  Reduced-latency LLR-based SC List Decoder for Polar Codes , 2015, ACM Great Lakes Symposium on VLSI.

[12]  Alexander Vardy,et al.  Flexible and Low-Complexity Encoding and Decoding of Systematic Polar Codes , 2016, IEEE Transactions on Communications.

[13]  Sébastien Kunz-Jacques,et al.  High performance error correction for quantum key distribution using polar codes , 2014, Quantum Inf. Comput..

[14]  Zhengya Zhang,et al.  A 4.68Gb/s belief propagation polar decoder with bit-splitting register file , 2014, 2014 Symposium on VLSI Circuits Digest of Technical Papers.

[15]  Chi-Ying Tsui,et al.  Low-latency list decoding of polar codes with double thresholding , 2015, 2015 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP).

[16]  Warren J. Gross,et al.  Autogenerating software polar decoders , 2014, 2014 IEEE Global Conference on Signal and Information Processing (GlobalSIP).

[17]  David Chase,et al.  Class of algorithms for decoding block codes with channel measurement information , 1972, IEEE Trans. Inf. Theory.

[18]  Ilya Dumer,et al.  Soft-decision decoding of Reed-Muller codes: a simplified algorithm , 2006, IEEE Transactions on Information Theory.

[19]  Alexios Balatsoukas-Stimming,et al.  LLR-Based Successive Cancellation List Decoding of Polar Codes , 2013, IEEE Transactions on Signal Processing.

[20]  Zhiyuan Yan,et al.  An Efficient List Decoder Architecture for Polar Codes , 2015, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[21]  Alexander Vardy,et al.  Increasing the speed of polar list decoders , 2014, 2014 IEEE Workshop on Signal Processing Systems (SiPS).

[22]  Alexander Vardy,et al.  Fast Polar Decoders: Algorithm and Implementation , 2013, IEEE Journal on Selected Areas in Communications.

[23]  Alexander Vardy,et al.  List decoding of polar codes , 2011, 2011 IEEE International Symposium on Information Theory Proceedings.

[24]  Alexios Balatsoukas-Stimming,et al.  Hardware Architecture for List Successive Cancellation Decoding of Polar Codes , 2014, IEEE Transactions on Circuits and Systems II: Express Briefs.

[25]  Frank R. Kschischang,et al.  A Simplified Successive-Cancellation Decoder for Polar Codes , 2011, IEEE Communications Letters.

[26]  Erdal Arikan,et al.  Channel Polarization: A Method for Constructing Capacity-Achieving Codes for Symmetric Binary-Input Memoryless Channels , 2008, IEEE Transactions on Information Theory.

[27]  José Nelson Amaral,et al.  Using SIMD registers and instructions to enable instruction-level parallelism in sorting algorithms , 2007, SPAA '07.