本项目实现的是一个微riscv处理器核(tinyriscv),用verilog语言编写,只求以最简单、最通俗易懂的方式实现riscv指令的功能,所以没有特地去对代码作任何的优化,所以你会看到里面写的代码有不少冗余的地方。tinyriscv处理器核有如下特色:git
1)实现了RV32I指令集,经过riscv的RV32I指令兼容性测试,支持如下指令:add addi and andi auipc beq bge bgeu blt bltu bne fence_i jal jalr lb lbu lh lhu lw lui or ori sb sh sw sll slli slt slti sltiu sltu sra srai srl srli sub xor xori;框架
2)采用三级流水线,即取指,译码、访存、执行,回写;测试
3)能够运行简单的c语言程序;优化
详细内容和源码见 码云:https://gitee.com/liangkangnan/tinyriscvui
整体框架:spa