3.8.3 典型的RISC-V系列处理器

3.8.3 典型的RISC-V系列处理器

1)Rocket

很多RISC-V开发者首次接触的RISC-V CPU core就是Rocket。Rocket Chip Generator可以生成包括Rocket core的一整套SoC,各种参数统统可配置。Rocket Chip是用Chisel开发的。Rocket Chip带MMU支持操作系统,可以运行Linux操作系统。Rocket Chip使用Tilelink总线,支持缓存一致性的一款总线。Rocket是64位CPU core采用经典五级流水,顺序执行,单发射,还支持各种分支预测。BOOM(berkeley out-oforder machine)基于Rocket乱序执行,BOOM有比较详细的文档。Rocket目前较为成熟,基于Rocket核的产品市面上较为广泛。

2)Hammingbird E203

Hammingbird E203是在国内RISC-V社区芯来科技(武汉)有限公司开发的RISC-V MCU系列。E203是其开源的一款单privilege mode,两级流水的MCU,主打小面积、低功耗,使用Verilog开发。开源的E203在Git Hub上其实是一个SoC平台。E203使用自定义的类AXI接口,支持debug spec 0.11。唯一的缺憾是没有官方的verilator环境。

3)Ibex

提到开源RISC-V就不能不提Riscy系列,尤其是zero-riscy使用很广泛。Ibex是脱胎于zero-riscy的core,支持RV32IMC及一些Z系列指令,由Low RISC维护。Ibex小巧精悍,文档翔实,学习资料丰富并支持verilator。Ibex支持机器模式和用户模式两种特权模式,可以实现比单机器模式更加丰富的功能。Ibex采用system verilog开发,也支持指令Cache,提高了性能。Ibex使用类TLUL的自定义接口,官方的SoC是PULP。Google的Open Titan项目也是基于Ibex。