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.


    Access

    Check access

    Check availability in my library

    Order at Subito €


    Export, share and cite



    Title :

    High Throughput Multi-Threaded Software Defined Convolutional Interleaver


    Contributors:


    Publication date :

    2021-03-06


    Size :

    1031046 byte




    Type of media :

    Conference paper


    Type of material :

    Electronic Resource


    Language :

    English



    Optimum interleaver design for serial concatenated convolutional codes

    Yi, L. / Yuezu, F. / Daoben, L. et al. | British Library Online Contents | 2003


    Sampled FBG Based Optical Interleaver

    Lin, L. / Zujie, F. / Haiwen, C. et al. | British Library Conference Proceedings | 2001


    Sampled FBG based optical interleaver

    Li Lin, / Fang Zujie, / Cai Haiwen, et al. | IEEE | 2001


    Interleaver Technology: Comparisons and Applications Requirements

    Cao, S. / Chen, J. / Damask, J. N. et al. | British Library Online Contents | 2004


    Ring Resonator Wavelength Division Multiplexing Interleaver

    Gad, M. / Ackert, J. / Yevick, D. et al. | British Library Online Contents | 2011