The CORE-V CVA5 is an Application class 5-stage RISC-V CPU specifically targetting FPGA implementations.
Find a file
2024-11-07 18:07:43 -08:00
apu Fix PLIC interrupt priority read indexing 2024-11-07 13:57:15 -08:00
core Fix supervisor interrupts 2024-11-07 18:07:43 -08:00
debug_module Remove broken legacy tests 2024-09-11 12:20:09 -07:00
examples Fix supervisor interrupts 2024-11-07 18:07:43 -08:00
formal Fix file permissions 2024-06-05 09:07:50 -07:00
l2_arbiter Add trailing newline 2024-08-08 15:45:03 -07:00
local_memory Consolidate BRAM implementations 2023-04-17 13:15:24 -04:00
scripts/xilinx Add FPU 2024-03-19 09:58:22 -07:00
test_benches New AXI software simulation 2024-10-24 11:38:39 -07:00
tools Add PLIC 2024-10-31 16:10:08 -07:00
.gitignore Remove broken legacy tests 2024-09-11 12:20:09 -07:00
.gitlab-ci.yml Add FPU 2024-03-19 09:58:22 -07:00
LICENSE Fix file permissions 2024-06-05 09:07:50 -07:00
README.md Update readme 2024-09-10 15:10:43 -07:00

CVA5

CVA5 is a 32-bit RISC-V processor designed for FPGAs supporting the Multiply/Divide, Atomic, and Floating-Point extensions (RV32IMAFD). The processor is written in SystemVerilog and has been designed to be both highly extensible and highly configurable.

The CVA5 is derived from the Taiga Project from Simon Fraser University.

The pipeline has been designed to support parallel, variable-latency execution units and to readily support the inclusion of new execution units.

CVA5 Block Diagram

Documentation and Project Setup

For up-to-date documentation, as well as an automated build environment setup, refer to Taiga Project

License

CVA5 is licensed under the Solderpad License, Version 2.1 ( http://solderpad.org/licenses/SHL-2.1/ ). Solderpad is an extension of the Apache License, and many contributions to CVA5 were made under Apache Version 2.0 ( https://www.apache.org/licenses/LICENSE-2.0 )

Examples

A zedboard configuration is provided under the examples directory along with tools for running stand-alone applications and providing application level simulation of the system. (See the README in the zedboard directory for details.)

Publications

C. Keilbart, Y. Gao, M. Chua, E. Matthews, S. J. Wilton, and L. Shannon, “Designing an IEEE-Compliant FPU that Supports Configurable Precision for Soft Processors,” ACM Trans. Reconfgurable Technol. Syst., vol. 17, no. 2, Apr. 2024. doi: https://doi.org/10.1145/3650036

E. Matthews, A. Lu, Z. Fang and L. Shannon, "Rethinking Integer Divider Design for FPGA-Based Soft-Processors," 2019 IEEE 27th Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM), San Diego, CA, USA, 2019, pp. 289-297. doi: https://doi.org/10.1109/FCCM.2019.00046

E. Matthews, Z. Aguila and L. Shannon, "Evaluating the Performance Efficiency of a Soft-Processor, Variable-Length, Parallel-Execution-Unit Architecture for FPGAs Using the RISC-V ISA," 2018 IEEE 26th Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM), Boulder, CO, 2018, pp. 1-8. doi: https://doi.org/10.1109/FCCM.2018.00010

E. Matthews and L. Shannon, "TAIGA: A new RISC-V soft-processor framework enabling high performance CPU architectural features," 2017 27th International Conference on Field Programmable Logic and Applications (FPL), Ghent, Belgium, 2017. doi: https://doi.org/10.23919/FPL.2017.8056766