VexRiscv VexRiscv

3/5 🧩 软硬件结合 已发布
SpinalHDL 2008 Stars 未知 BOM 完整度: 0/5 教程完整度: 0/5

项目简介

A FPGA friendly 32 bit RISC-V CPU implementation


VexRiscv 是一个基于 SpinalHDL 硬件描述语言实现的高性能 RISC-V 处理器核心,专为 FPGA 设计优化。它支持 RV32I[M][A][F[D]][C] 指令集,采用 2 到 5 级流水线架构(取指、译码、执行、访存、写回),在功能全开时可达 1.44 DMIPS/MHz 的性能表现。

标签

项目特点

**高度可配置**:通过插件系统,可以灵活组合 CPU 功能,从极简配置到高性能配置均可实现。
**FPGA 优化**:不依赖任何厂商特定 IP,适合在各种 FPGA 上部署。
**丰富的指令集支持**:支持 RV32I、M、A、F、D、C 扩展。
**多种总线接口**:支持 AXI4、Avalon、Wishbone 等标准总线。
**可选高级功能**:包括 MMU、FPU、缓存、调试模块、分支预测等。
**操作系统兼容**:可运行 Linux、Zephyr、FreeRTOS 等操作系统。
**软件化硬件设计**:采用 SpinalHDL 的软件化方法,实现自动流水线数据传递和服务系统。

技术规格

指令集 RV32I[M][A][F[D]][C]
流水线深度 2 到 5+ 级(Fetch、Decode、Execute、Memory、WriteBack)
性能 最高 1.44 DMIPS/MHz(全功能开启)
总线接口 AXI4、Avalon、Wishbone
可选扩展 MUL/DIV、F32/F64 FPU、指令/数据缓存、MMU、调试模块
分支预测 支持 NONE、STATIC、DYNAMIC、DYNAMIC_TARGET
操作系统 Linux、Zephyr、FreeRTOS
硬件描述语言 SpinalHDL
目标平台 FPGA(无厂商特定依赖)

项目资源

物料清单 (BOM)

物料名称 数量 参考价格 备注
Java JDK 8 1 编译 SpinalHDL 必需
SBT 1 Scala 构建工具
Verilator 1 仿真测试(可选)
FPGA 开发板 1 部署目标

能力画像

⚪ 记忆与知识检索: 1/5
🔵 逻辑推演: 4/5
⚪ 表达与交流: 1/5
⚪ 感知与观察: 1/5
🔵 数理与计算: 4/5
🔵 动手与操作: 3/5
🔵 狂热与坚持: 4/5
🔵 创造与创新: 4/5

所需技能

🔧 **动手能力**:需要熟悉 FPGA 开发流程,包括综合、实现和下载比特流。 💻 **编程能力**:需要掌握 Scala 语言和 SpinalHDL 硬件描述语言,了解 RISC-V 指令集架构。 ⚡ **电子电路**:需要了解数字电路设计基础,特别是流水线架构和 FPGA 资源利用。

适用场景

在 FPGA 上实现自定义 RISC-V 处理器,用于嵌入式系统或 SoC 设计。
研究和学习 RISC-V 架构、流水线设计、分支预测等计算机体系结构概念。
作为开源硬件项目的基础,用于开发特定应用领域的专用处理器。
在教育和学术环境中,用于教学和实验。