OpenHW Explorer
ExploreLearning HubResourcesNewsAbout
GitHub
HomeProjectsCVA5
Back to Projects

CVA5

CompletedOpenHW project status

CVA5 is a configurable 32-bit RISC-V soft processor designed specifically for FPGA implementation. Derived from Simon Fraser University's Taiga project, it supports RV32IMAFD and uses parallel, variable-latency execution units so new functional units can be added without forcing every operation into one fixed latency. It is best suited to FPGA architecture research and custom processor prototyping; its completed TRL-3 status means it should be evaluated as a research-ready platform rather than a currently advancing production core.

Reviewed profileOfficial sourcesVerified 2026-07-167 sourcesPrimary source
6 more sources
Source 2Source 3Source 4Source 5Source 6Source 7

Start here

Category: Processor CoresStatus: OpenHW · CompletedBest for: Engineer
Start with GitHub

At a glance

  • Target: 32-bit RISC-V soft processor optimized for FPGA implementations
  • ISA: the core repository supports RV32IMAFD; a shorter family overview lists RV32IMA, so the core repository is the more detailed implementation reference
  • Implementation: extensible and highly configurable SystemVerilog RTL
  • Microarchitecture: parallel, variable-latency execution units with support for adding new units
  • Origin and readiness: derived from the Taiga project and completed at OpenHW TRL-3

Further resources

Taiga projectupstream project and current setup documentation referenced by CVA5CVA5 architecture presentationarchitecture material included in the repositoryCORE-V family overviewofficial family positioning and maturity contextConfigurable FPU publicationCVA5 publication listed by the repository
139stars
36forks
SystemVerilogrepository language (GitHub)
View on GitHub

Categories

Processor Cores

Tags

OpenHWRISC-VCoreApplication-classFPGAApplication CoreSystemVerilogApplication-ClassPipeline

Suitable For

EngineerResearcher

Architecture / Focus

Application-class

Contribution ActivityLow Activity

9

Contributors

4

Open Issues

0

Recent Commits (4 weeks)

0

Open PRs

Data as of Sep 28, 2026

Knowledge Base

2 paper(s)

Designing an IEEE-Compliant FPU that Supports Configurable Precision for Soft Processors

Chris Keilbart et al.

ACM Transactions on Reconfigurable Technology and Systems, 2024

View Paper

Rethinking Integer Divider Design for FPGA-Based Soft-Processors

Eric Matthews et al.

IEEE FCCM, 2019

View Paper

Verified adoption, contributor and lineage records, educational use, presentations, articles, and ecosystem data will be added incrementally from named sources.

Related Projects

CVA6

CVA6 is a configurable six-stage, in-order CORE-V processor family for 32-bit and 64-bit embedded and application-class systems. Its RTL includes both single-issue configurations, such as CV32A60X, and dual-issue configurations, such as CV32A65X. ISA extensions, privilege modes, and virtual memory depend on the selected configuration: application configurations can run Linux, while the embedded CV32A60X and CV32A65X configurations have no MMU or S/U modes. The repository brings together processor RTL, verification, FPGA integration, and documentation for engineers evaluating a core or exploring custom extensions through CV-X-IF.

CVW (Wally)

CVW, also known as CORE-V Wally, is a configurable five-stage SystemVerilog RISC-V processor that spans minimal RV32E designs through feature-rich RV64GC application processors. It combines a broad extension set with optional caches, branch prediction, virtual memory, and standard platform peripherals, and it can boot Linux on FPGA. Its close connection to the RISC-V System-on-Chip Design textbook, examples, and regression flows makes it especially approachable for students while retaining enough configurability for architecture and SoC research.

OpenHW Explorer
LicensingProject GitHubFeedback ↗OpenHW GitHubOpenHW Foundation websiteDocumentation
Alex ChenLinkedIn

OpenHW Explorer is an independent community project and is not an official OpenHW Foundation website.