In recent years, especially in the field of embedded systems, the open instruction architecture RISC-V has been gaining popularity.
It was developed at the University of Berkeley, with an emphasis on modularity and flexibility, which is useful not only for academic but also for commercial needs.
On this basis, we implemented a simple pipelined processor FRI-V with a programmable logic circuit FPGA, which supports the basic RV32I instruction set along with the extension for privileged instructions ZICSR and the extension M for integer multiplication and division.
We added caches, support for traps and DDR2 main memory to the processor.
For communication between the CPU and input/output units, we implemented a data bus based on the open standard Wishbone.
The code for the processor was written in the SystemVerilog language and synthesized for the Nexys A7 50T board.
The correctness of the processor operation was verified by a combination of formal verification,
simulations and program execution on the final processor.
To evaluate the performance of the final version of the FRI-V processor, we used the CoreMark test, in which it received a score of 2.28 CoreMark per MHz. That score puts it in the vicinity of microcontrollers such as Renesas RX610 and STM32F051C8 (32-bit ARM Cortex M0).
|