从零构建 Specula:我的乱序 RISC-V 之旅
Building an Order RISC-V CPU from scratch
大四时因课程无聊,我决定挑战构建一个乱序 RISC-V 处理器。Specula 是我用 Bluespec SystemVerilog 编写的 32 位单发射乱序处理器,支持投机执行、寄存器重命名和重排序缓冲。项目从最初的天真设想,发展到集成特权模式、CSRs、异常处理和 Sv32 虚拟内存,甚至成功在 Artix-7 FPGA 上运行 xv6 操作系统。通过复现现代处理器的复杂机制,如分支预测和保留站,我深刻理解了高性能计算背后的架构魔法。
我的学习方式就是阅读某个主题,然后尝试复现它,观察哪里会出问题,因为那一刻的教训远比任何理论课程都要深刻。