Customizing the CVA6 RISC-V Core to Integrate Posit and Quire Instructions

The posit representation for real numbers, aka Unum-v3, is an alternative to substitute the IEEE 754 standard and thus mitigate the inherent problems to the construction of floating-point numbers. Nonetheless, posits are not standard yet, and previously there was no approach, neither academically nor industrially, which implemented a fully compliant core for deploying this novel format. Recently, the open-source PERCIVAL posit RISC-V core was presented as the first work that fully integrates posit arithmetic and quire capabilities into hardware. In addition, Xposit, a RISC-V extension for posit operations allows for the compilation of C programs with inline assembly posit and quire instructions. As a study platform, PERCIVAL is based on the CVA6 core and has support for both posit and IEEE 754 formats, further permitting the comparison of these representations. This paper details the microarchitecture of the Posit Arithmetic Unit with quire added to this core. It also describes how to perform the necessary additions and modifications to the CVA6 core to add support for the Xposit RISC-V custom extension. Furthermore, FPGA synthesis results highlight the cost of including support for both posits with quire and IEEE 754 formats. This is done by breaking down the area resources needed for every arithmetic configuration.

D. Mallasén, R. Murillo, A. A. Del Barrio, G. Botella, L. Piñuel, and M. Prieto–Matias, “Customizing the CVA6 RISC-V Core to Integrate Posit and Quire Instructions,” in 2022 37th Conference on Design of Circuits and Integrated Circuits (DCIS), Nov. 2022, pp. 01–06. doi: 10.1109/DCIS55711.2022.9970026.
  title = {Customizing the {{CVA6 RISC-V Core}} to {{Integrate Posit}} and {{Quire Instructions}}},
  booktitle = {2022 37th {{Conference}} on {{Design}} of {{Circuits}} and {{Integrated Circuits}} ({{DCIS}})},
  author = {Mallas{\'e}n, David and Murillo, Raul and Del Barrio, Alberto A. and Botella, Guillermo and Pi{\~n}uel, Luis and {Prieto-Matias}, Manuel},
  year = {2022},
  month = nov,
  pages = {01--06},
  issn = {2640-5563},
  doi = {10.1109/DCIS55711.2022.9970026}