NEORV32 RISC-V处理器 neorv32

⭐⭐⭐☆☆ (3/5) 🧩 软硬件结合 已发布
stnolting 1360 Stars 未知 BOM 完整度: /5 教程完整度: /5

项目简介

🖥️ A small, customizable and extensible MCU-class 32-bit RISC-V soft-core CPU and microcontroller-like SoC written in pl


NEORV32 是一个高度可定制的、基于 RISC-V 架构的微控制器级系统芯片(SoC),其核心是使用平台无关的 VHDL 语言编写的 NEORV32 CPU。该项目旨在作为一个“开箱即用”的完整解决方案,特别适合作为大型 SoC 设计中的辅助控制器,或作为一个独立、精简的微控制器使用。

标签

项目特点

**一体化包**:CPU + SoC + 软件框架 + 测试基础设施,完全自包含,无外部依赖
**平台无关性**:完全用行为级、平台无关的VHDL描述,不使用任何原语、宏、属性等
**高度可配置**:通过泛型(generics)实现广泛的CPU和SoC配置选项,可根据应用需求灵活定制
**RISC-V兼容**:支持RV32 I/E/M/A/C/B/U等多种指令集扩展,兼容RISC-V非特权规范和特权架构规范
**丰富的SoC外设**:包括定时器、计数器、多种串行接口(UART、SPI、I²C、1-Wire等)、GPIO、PWM、TRNG等
**多核支持**:支持单核或SMP双核配置
**操作系统支持**:支持Zephyr、FreeRTOS、MicroPython、Rust(Embassy框架),并能运行nommu-Linux
**开源文档完善**:提供详细的数据手册、用户指南、Doxygen API文档和在线文档

技术规格

架构
指令集
特权模式
核心数
内存
引导加载程序
定时器
串行接口
其他外设
描述语言
目标技术
许可证

项目资源

物料清单 (BOM)

物料名称 数量 参考价格 备注
FPGA开发板 1 支持AMD、Intel、Lattice、Microchip、Gowin、Cologne Chip等品牌
USB-UART适配器 1 用于与引导加载程序通信
可选外设 若干 根据应用需求选择(传感器、显示器等)
VHDL仿真工具 1 如GHDL、ModelSim、Vivado Simulator等
FPGA综合工具 1 如Vivado、Quartus、Radiant、iCEcube2等
RISC-V工具链 1 GCC、Binutils、Newlib等
串口终端 1 如PuTTY、minicom、screen等

所需工具

工具用途是否必需
FPGA开发板 运行NEORV32处理器 ✅ 是
VHDL仿真器 仿真和验证设计 ✅ 是
FPGA综合工具 综合并下载到FPGA ✅ 是
RISC-V GCC工具链 编译软件 ✅ 是
串口终端 与引导加载程序交互 ✅ 是
Git 版本控制和获取源码 ✅ 是
Make 构建自动化 ▢ 推荐
Python 脚本和工具支持 ▢ 推荐

能力画像

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

所需技能

🔧 **动手能力**:需要能够使用FPGA开发板,进行硬件连接和调试,理解数字电路设计基础 💻 **编程能力**:需要掌握RISC-V汇编和C语言编程,了解嵌入式系统开发流程,熟悉VHDL硬件描述语言 ⚡ **电子电路**:需要理解FPGA工作原理、数字逻辑设计、时钟和复位管理、外设接口协议(UART、SPI、I²C等)

适用场景

**嵌入式系统教学**:作为RISC-V架构和SoC设计的教学平台,帮助学生理解CPU微架构和片上系统设计
**FPGA原型验证**:在FPGA上快速原型验证RISC-V相关设计或自定义指令扩展
**定制化微控制器**:为特定应用定制微控制器,只包含所需的外设和功能,优化资源占用
**SoC集成**:作为更大SoC设计中的辅助控制器或协处理器
**操作系统研究**:在RISC-V平台上研究和移植嵌入式操作系统(Zephyr、FreeRTOS、Linux)
**安全研究**:利用内置的加密扩展(Zkn、Zks等)进行密码学研究和安全应用开发
**学术研究**:用于计算机体系结构、RISC-V指令集扩展、多核处理器等方向的研究