DocumentCode :
45286
Title :
Multi-Gb/s Software Decoding of Polar Codes
Author :
Le Gal, Bertrand ; Leroux, Camille ; Jego, Christophe
Author_Institution :
IMS Lab., Univ. of Bordeaux, Talence, France
Volume :
63
Issue :
2
fYear :
2015
fDate :
Jan.15, 2015
Firstpage :
349
Lastpage :
359
Abstract :
This paper presents an optimized software implementation of a Successive Cancellation (SC) decoder for polar codes. Despite the strong data dependencies in SC decoding, a highly parallel software polar decoder is devised for x86 processor target. A high level of performance is achieved by exploiting the parallelism inherent in today´s processor architectures (SIMD, multicore, etc.). Some optimizations that were originally thought for hardware implementation (memory reduction techniques and algorithmic simplifications) were also applied to enhance the throughput of the software implementation. Finally, some low level optimizations such as explicit assembly description or data packing are used to improve the throughput even more. The resulting decoder description is implemented on different x86 processor targets. An analysis of the decoder in terms of latency and throughput is proposed. The influence of several parameters on the throughput and the latency is investigated: the selected target, the code rate, the code length, the SIMD mode (SSE/AVX), the multithreading mode, etc. The energy per decoded bit is also estimated. The proposed software decoder compares favorably with state of the art software polar decoders. Extensive experimentations demonstrate that the proposed software polar decoder exceeds 1 Gb/s for code lengths N ≤ 217 on a single core and reaches multi-Gb/s throughputs when using four cores in parallel in AVX mode.
Keywords :
decoding; optimisation; AVX mode; SC decoder; SIMD mode; algorithmic simplifications; code length; code rate; data packing; energy per decoded bit; explicit assembly description; low level optimizations; memory reduction techniques; multiGb/s software decoding; multithreading mode; parallel software polar decoder; polar codes; processor architectures; selected target; software polar decoders; successive cancellation decoder; x86 processor target; Decoding; Optimization; Signal processing algorithms; Software; Systematics; Throughput; Vectors; Polar codes; SIMD; software optimizations; successive cancellation decoding; x86 processor;
fLanguage :
English
Journal_Title :
Signal Processing, IEEE Transactions on
Publisher :
ieee
ISSN :
1053-587X
Type :
jour
DOI :
10.1109/TSP.2014.2371781
Filename :
6960078
Link To Document :
بازگشت