Skip to content
This repository has been archived by the owner on Jul 6, 2023. It is now read-only.

Final RV64 CPU with MMU and kernel

Latest
Compare
Choose a tag to compare
@TonyCrane TonyCrane released this 06 Jul 10:21
b525b1d
  • 64 位 RISC-V 五级流水线 CPU
  • 支持 RV64IZicsr 指令集的全部指令(fence ebreak wfi 除外)
  • 使用预测不跳转的分支冒险处理方式
  • 包含 Supervisor 和 User 两个特权级,支持异常处理、特权态切换
    • CSR 实现了 sstatus, sepc, stvec, scause, sscratch, satp
  • 使用了 MMU,支持 RISC-V Bare 和 Sv39 模式虚拟内存管理
    • 实现了 Sv39 模式规定的 4KB、2MB、1GB 三种分页粒度页表的查询
    • 冯诺依曼架构存储,目前采用 2MB 物理地址空间
  • 支持串口输出,MMIO 写入地址为 0x10000000
  • 最终 CPU 通过了和 qemu 对比的简易 difftest 测试
  • 可以运行起简易的操作系统
    • 在给定操作系统上添加了用户态进程、系统调用、串口输出

Full Changelog: v2.2.0...v2.3.0