Specialized Scalar and SIMD Instructions for Error Correction Codes Decoding on RISC-V Processors
The rapid deployment of Internet-of-Things (IoT) devices for a few years has been impressive, and the progressive deployment of 5G will accelerate things even further. Indeed, this standard opens the door to a new generation of standards aimed at a convergence of networks and communication protocols (WiFi, LTE, 4G etc.). This results in the need for flexible implementations of different families of codes, such as, LPDC, NB-LDPC, turbo codes and polar codes. In this context, the work presented in this article proposes the design of a flexible instruction set processor for an IoT context. The objective is to improve the performance level of low-complexity processor cores through instruction set extensions for <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">Error Correction Code</i> (ECC) decoding. The approach discussed is supported by experimental results obtained based on a RISC-V architecture to which specific instruction sets have been added. The results demonstrate a reduction in the required processing clock cycles up to 44.1% for polar codes, 39.2% for LDPC codes, 21.8% for NB-LDPC codes, and 24.3% for turbo codes (4G LTE) codes with a classical <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">Single Instruction Single Data</i> (SISD) approach. Moreover, <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">Single Instruction Multiple Data</i> (SIMD) parallelization strategy enables execution time savings that are far more impressive. The number of clock cycles required to decode a data bit is reduced by 65.6% to 76.9%, with a limited hardware over-cost from 0.6% to 34% (depending on the error correction code family and the targeted RISC-V core).
Authors
- Philippe Coussy (ORCID: https://orcid.org/0000-0002-7222-5271)
- Cyrille Chavet (ORCID: https://orcid.org/0000-0002-7993-4628)
- Bertrand Le Gal (ORCID: https://orcid.org/0000-0003-2269-8756)
- Maël Tourres
Institutions
- Université de Bordeaux (FR)
- Université de Bretagne Occidentale (FR)
- Université de Bretagne Sud (FR)
- Institut de Recherche en Informatique et Systèmes Aléatoires (FR)
- Laboratoire des Sciences et Techniques de l’Information de la Communication et de la Connaissance (FR)
- Laboratoire de l'Intégration du Matériau au Système (FR)
- Institut Polytechnique de Bordeaux (FR)
- Université de Rennes (FR)
- Université Grenoble Alpes (FR)
Publication Details
- Journal
- IEEE Access
- Published
- 2025-01-01
- DOI
- https://doi.org/10.1109/access.2025.3527028
- Citations
- 1
- Primary Topic
- Error Correcting Code Techniques
- Type
- article
- Field-Weighted Citation Impact
- 1.49