A convolutional interleaver is a data reordering operation used to distribute bursts of errors and improve the performance of forward error correction algorithms in the presence of dropout events. This type of interleaver is used in several commercial and military standards as it offers the same performance as a traditional rectangular interleaver but with half the memory requirement. This paper presents a very novel algorithm and architecture for convolutional interleaving implemented on modern general-purpose processors (CPUs). The naïve implementation of a convolutional interleaver does not map well to modern multi-processor CPUs due to its non-sequential memory access pattern and inherently serial processing sequence. Non-sequential memory access is very inefficient in general-purpose processors as the high-speed, low-latency cache memory in modern CPU architectures assume some level of data locality. The sparse memory access pattern of a naïve convolutional interleaver implementation has almost no data locality, causing the CPU to frequently stall as it waits on data from the high-latency external memory. In addition, these memory bottlenecks make attempts to multithread the software implementation pointless, as modern general-purpose processor cores share memory resources. The key breakthroughs described in the paper address both these challenges – the algorithm is modified to interleave buffers of bits in a ‘cache friendly’ order rather than the input order, leading to significantly higher single-core performance. Resolving the memory access bottleneck also enables an efficient parallelization approach that can take advantage of multiple cores with shared memory, pushing performance even higher. Whereas previous convolutional interleaver software implementations ran into memory bottlenecks around 0.5GSps, the multithreaded version of the presented algorithm can be consistently benchmarked at above 8 GSps on a mid-range server CPU.
High Throughput Multi-Threaded Software Defined Convolutional Interleaver
2021-03-06
1031046 byte
Conference paper
Electronic Resource
English
Optimum interleaver design for serial concatenated convolutional codes
British Library Online Contents | 2003
|Sampled FBG Based Optical Interleaver
British Library Conference Proceedings | 2001
|Sampled FBG based optical interleaver
IEEE | 2001
|Interleaver Technology: Comparisons and Applications Requirements
British Library Online Contents | 2004
|Ring Resonator Wavelength Division Multiplexing Interleaver
British Library Online Contents | 2011
|