ZipCPU/zipcpu

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

项目简介

A small, light weight, RISC CPU soft core


ZipCPU 是一个轻量级、完全开源的 32 位 RISC 处理器核心,采用 GPLv3 协议发布。它并非 RISC-V 或任何现有指令集的变体,而是拥有自己独立设计的指令集架构,目前仅实现了 29 条核心指令,并预留了 6 条用于未来浮点运算扩展。该 CPU 采用经典的加载/存储架构,所有内存访问必须通过专门的加载和存储指令完成,指令在理想情况下每个时钟周期执行一条,乘除法和内存访问等操作会占用更多周期。ZipCPU 支持 Wishbone、AXI4-Lite 和 AXI4 三种总线接口,其中 Wishbone 版本采用冯·诺依曼结构共享指令和数据总线,而 AXI 版本则提供独立的指令和数据总线接口。处理器采用五级流水线设计,包含预取、译码、读操作数、执行(集成 ALU、内存、除法和浮点单元)以及写回阶段。它支持用户模式和超级用户模式两种运行级别,并通过双寄存器组机制处理中断——中断发生时自动切换寄存器组,无需中断向量表,简化了中断处理流程。几乎所有指令都可以条件执行,这提高了代码密度和执行效率。ZipCPU 主要面向嵌入式系统、FPGA 开发和教学研究场景,解决了在资源受限环境中需要一个完全可控、可定制、且拥有完整工具链支持的处理器核心的需求。该项目不仅提供 CPU 的 RTL 实现,还配套了完整的软件工具链(包括 binutils、GCC 和 newlib 支持)、详细的规格文档、仿真环境以及调试工具,开发者可以通过 ZBasic 仓库获得包含 RAM、QSPI 闪存和 SD 卡访问的完整开发板级支持,也可以使用 AutoFPGA 工具灵活调整外设配置。

标签