NEORV32

news/2025/3/4 22:27:33/

NEORV32是一个高度可定制的RISC-V软核,由VHDL语言实现,后有人以Verilog实现。由于军工、航天部门较多选用VHDL,所以理论上NEORV32是非常稳定可靠的。NEORV32的资料非常详尽(英文),Github上的更新也非常及时。另外,其支持OpenOCD、BootLoader,资料很全。此外,作者Stephan Nolting还完成了一个NEO430项目,即在FPGA实现msp430。

GitHub - stnolting/neorv32: 🖥️ A tiny, customizable and highly extensible MCU-class 32-bit RISC-V soft-core CPU and microcontroller-like SoC written in platform-independent VHDL.

GitHub - stnolting/neorv32-verilog: ♻️ Convert the NEORV32 processor into a synthesizable plain-Verilog netlist module using GHDL.


GitHub - stnolting/neo430: A damn small msp430-compatible customizable soft-core microcontroller-like processor system written in platform-independent VHDL.
 

1.资源占用

1)EP4CE22F17C6,Quartus Prime Lite 21.1 

 2)xc7a35ticsg324-1L,Xilinx Vivado 2019.2

 3)Verilog Vs VHDL(EP4CE22F17C6,Quartus Prime 21.1.0)

Memories: 16kB IMEM (RAM), 8kB DMEM (RAM), 4kB internal bootloader ROM
CPU: rv32imc_Zicsr_Zicntr
Peripherals: UART0, GPIO, MTIME

 4)NEO430

2.指令集(RV32I)

CPU Instruction Sets and Extensions(CPU ISA扩展指令

CPU_EXTENSION_RISCV_B

boolean

false

Enable B ISA Extension (bit-manipulation).

CPU_EXTENSION_RISCV_C

boolean

false

Enable C ISA Extension (compressed instructions).

CPU_EXTENSION_RISCV_E

boolean

false

Enable E ISA Extension (reduced register file size).

CPU_EXTENSION_RISCV_M

boolean

false

Enable M ISA Extension (hardware-based integer multiplication and division).

CPU_EXTENSION_RISCV_U

boolean

false

Enable U ISA Extension (less-privileged user mode).

CPU_EXTENSION_RISCV_Zfinx

boolean

false

Enable Zfinx ISA Extension (single-precision floating-point unit).

CPU_EXTENSION_RISCV_Zicsr

boolean

true

Enable Zicsr ISA Extension (control and status register access).

CPU_EXTENSION_RISCV_Zicntr

boolean

true

Enable Zicntr ISA Extension (CPU base counters).

CPU_EXTENSION_RISCV_Zicond

boolean

false

Enable Zicond ISA Extension (conditional operations).

CPU_EXTENSION_RISCV_Zihpm

boolean

false

Enable Zihpm ISA Extension (hardware performance monitors).

CPU_EXTENSION_RISCV_Zifencei

boolean

false

Enable Zifencei ISA Extension (instruction stream synchronization).

CPU_EXTENSION_RISCV_Zmmul

boolean

false

Enable Zmmul - ISA Extension (hardware-based integer multiplication).

CPU_EXTENSION_RISCV_Zxcfu

boolean

false

Enable NEORV32-specific Zxcfu ISA Extension (custom RISC-V instructions).

3.架构

 4.OpenOCD(Debug)

CPU Debug模式需要Zicsr和Zifencei指令扩展。 

5.BootLoader

UART0:19200-8-N-1

When you reset the NEORV32 processor, the bootloader waits 8 seconds for a UART console input before it starts the automatic boot sequence. This sequence tries to fetch a valid boot image from the external SPI flash, connected to SPI chip select spi_csn_o(0). If a valid boot image is found that can be successfully transferred into the instruction memory, it is automatically started. If no SPI flash is detected or if there is no valid boot image found, and error code will be shown.

即:8秒等待串口,否则正常启动,找SPI Flash。

6.工具链(已打包)

 


http://www.ppmy.cn/news/771242.html

相关文章

【Python】Numpy多项式详解

文章目录 多项式简介构造函数与图像运算符重载常用方法 多项式简介 Numpy.polynomial中封装了六种多项式类,除了常规的多项式 a 0 a 1 x ⋯ a n x n a_0a_1x\cdotsa_nx^n a0​a1​x⋯an​xn之外,还有五种在数学、物理中常用的正交多项式,…

NES专题——NES的游戏硬件

目录 摘要 一、墨盒(Cartridges) 二、Famicom磁盘系统(Famicom Disk System ) 三、游戏精灵(Game Genie ) 四、控制手柄 五、Zapper(捕捉器) 六、参考资料 摘要 本文介绍了NES游戏机的相关游戏硬件…

第十四届蓝桥杯大赛软件赛省赛 C/C++ 大学 B 组

第十四届蓝桥杯大赛软件赛省赛 C/C 大学 B 组 注意!!!!!!!!!!这篇题解为赛时的个人做法,不代表是正确的,仅供参考。 更新&#xff1a…

Python学习笔记(十六)————异常相关

目录 (1)异常概念 (2)异常的捕获 ①异常捕获的原因 ②捕获常规异常 ③捕获指定异常 ④捕获多个异常 ⑤ 捕获异常并输出描述信息 ⑥捕获所有异常 ⑦异常else ⑧异常的finally (3)异常的传递 &#xff08…

【tomcat】应用服务

准备环境 三台虚拟机 192.168.1.120 192.168.1.122 192.168.1.131 三台虚拟机关闭防火墙 、查看光盘 、检测yun创库 查看JDK是否安装 [rootlocalhost ~]# java -version openjdk version "1.8.0_161" //这是系统自带的rpm方式安装 OpenJDK Runtime Environment…

.net Core Winform 增加NLog

nlog.config <?xml version"1.0" encoding"utf-8" ?> <nlog xmlns"http://www.nlog-project.org/schemas/NLog.xsd"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance" ><targets async"true" maxarch…

【Linux】-Linux基本指令

作者&#xff1a;学Java的冬瓜 博客主页&#xff1a;☀冬瓜的主页&#x1f319; 专栏&#xff1a;【Linux】 分享: 屋檐如悬崖 风铃如沧海 我等燕归来 时间被安排 演一场意外 你悄然走开 故事在城外 浓雾散不开 看不清对白 你听不出来 风声不存在 是我在感慨 梦想来是谁在窗台 …

【前端面试总结】vue、react、webpack、babel面试总结

查看原文 Vue 基本使用 v-html 原始html内容&#xff0c;有xss防线 computed 有缓存&#xff0c;data不变不会重新计算 watch 监听引用类型&#xff0c;使用下面方法深度监听&#xff0c;但是拿不到oldVal 1 2 3 4 5 6 7 8 watch:{ info: { handler (oldVal, val) { console.…