走向开放硅:Baochip-1x 的 RISC-V MCU 架构与工程实践

在开源硬件领域,一款既有芯片级代码又可用于工程实践的项目并不多见。baochip-1x 就是这样一个鲜明例子:它是一个围绕 RISC-V 架构、绝大部分开源逻辑描述的 MCU(微控制器)项目。该项目的代码托管在 GitHub 上,并提供部分 RTL(硬件逻辑)源码,支持文档自动生成与功能仿真。

22nm台积电工艺制造350MHz主频单片机完整流片RTL文件。

项目简介

Baochip-1x是一颗以开放源码RTL为主体、基于RISC-V指令集架构的微控制器,采用台积电22纳米工艺制造。其搭载的Vexriscv内核主频达350MHz,集成2MB RAM、4MB RRAM Flash、USB 2.0高速接口,以及基于PicoRV32设计、主频700MHz的四核I/O加速器。

所谓 RTL,是对数字硬件逻辑的结构化描述,可用于综合、仿真与验证,并能提取生成相关文档。该项目提供的 RTL 足够用于自动化文档生成与功能级仿真。

代码组织

  • 位于Xous代码库中的官方 Rust SDK。

https://github.com/betrusted-io/xous-core/

  • docs包含Baochip 1x 书籍的源代码。

https://baochip.github.io/baochip-1x/

  • rtl包含已流片的 RTL 的开源代码。

  • Vexriscv包含 Vex CPU 的源配置

  • scripts包含用于仓库管理的辅助脚本

  • verilate包含使用 Verilator 模拟 Baochip-1x 子集 RTL 模拟程序的文件。

  • arty包含用于构建面向 Arty-A7 的 SoC 存根的文件。可用于调试和开发未来的扩展功能。

核心特性

🧠 1. 主要由开源架构构成

项目的源代码主要采用开源技术栈,既有 Verilog / SystemVerilog 代码,也包括借助 SpinalHDL 与 Litex 生成的片段。尽管某些组件由于工程和 IP 原因未完全开源,但现有代码能完整描述 SoC 的主要结构,可用于建立文档和执行功能验证。

🔍 2. 文档与自动生成机制

项目中包含了一些自动化工具,可以从 RTL 代码自动提取以下信息:

  • SoC 外设的部分 SVD 文件

  • Xous 核心代码能使用的头文件

  • 可读的 SoC 结构文档

这些内容通过脚本从 RTL 自动生成,有助于理解芯片设计与使用。

🧪 3. 支持 Verilator 仿真

为了便于软件开发和验证,该项目支持使用 Verilator 进行功能仿真。Verilator 是一款开源的 Verilog 模拟器,相比商业级模拟工具,它执行速度更快,适合软件调试与大型 CI(持续集成)测试。

  • 通过 Verilator 仿真,你可以:

  • 启动和运行操作系统如 Xous

  • 查看 SoC 内部信号波形

  • 调试程序计数器、寄存器文件、AXI 总线状态等

  • 使用 GTKwave 结合 Codezoom 实现在仿真波形图中定位指令与状态

  • 尽管此仿真不处理时序细节和未知逻辑 X 状态,但在软件验证和开发流程中非常实用。

硬件验证

专门设计的开发板
https://github.com/baochip/dabao

总结

baochip-1x 是一个围绕 RISC-V 架构的开源 MCU 项目源码库,提供了 RTL 描述、自动文档生成与仿真工具支持。虽然部分模块由于工程原因尚未开源,但现有代码足以用于:

✔ 学习数字 SoC 架构与模块组织

✔ 在 Verilator 上进行功能模拟与软件开发

✔ 自动文档提取与头文件生成

✔ 支持后续开发板与软件堆栈构建

作为连接开源硬件与嵌入式软件世界的桥梁,这个项目为关注 RISC-V 与开源硅生态的工程师提供了一个极具参考价值的源代码资源。

相关推荐
BackCatK Chen4 小时前
STM32+FreeRTOS:嵌入式开发的黄金搭档,未来十年就靠它了!
stm32·单片机·嵌入式硬件·freertos·低功耗·rtdbs·工业控制
全栈游侠7 小时前
STM32F103XX 02-电源与备份寄存器
stm32·单片机·嵌入式硬件
Lsir10110_7 小时前
【Linux】中断 —— 操作系统的运行基石
linux·运维·嵌入式硬件
深圳市九鼎创展科技9 小时前
瑞芯微 RK3399 开发板 X3399 评测:高性能 ARM 平台的多面手
linux·arm开发·人工智能·单片机·嵌入式硬件·边缘计算
辰哥单片机设计9 小时前
STM32项目分享:车辆防盗报警系统
stm32·单片机·嵌入式硬件
小龙报10 小时前
【51单片机】从 0 到 1 玩转 51 蜂鸣器:分清有源无源,轻松驱动它奏响新年旋律
c语言·数据结构·c++·stm32·单片机·嵌入式硬件·51单片机
范纹杉想快点毕业10 小时前
嵌入式与单片机开发核心学习指南——从思维转变到第一性原理的深度实践
单片机·嵌入式硬件
Industio_触觉智能11 小时前
瑞芯微RK3566开发板规格书,详细参数配置,型号EVB3566-V1,基于RK3566核心板SOM3566邮票孔封装
嵌入式硬件·开发板·rk3568·rk3566·核心板·瑞芯微
czwxkn11 小时前
4STM32(stdl)TIM定时器
stm32·单片机·嵌入式硬件
Love Song残响11 小时前
NVIDIA显卡终极优化指南
stm32·单片机·嵌入式硬件