学习路线与环境准备
先修知识
不要求先读完所有 RISC-V 规范,但建议掌握:组合/时序逻辑、ready/valid 握手、五级流水线、Cache 基础、RISC-V 基本指令格式。Chisel 只需先理解 Wire、Reg、Bundle、Module 和 Decoupled。
三条路线
路线 A:体系结构入门
总体流水线 → 分支预测 → 重命名与调度 → 执行单元 → LSU → ROB 与精确异常。
路线 B:源码阅读
参数系统 → LazyModule/Module 层次 → Bundle 接口 → 状态寄存器 → 生成 RTL → 仿真波形。
路线 C:专题研究
从一个性能问题出发,例如分支误预测、Load replay 或 Cache miss,逆着控制流和数据流追到实现。
建议的第一次练习
先不要改代码。选择一条条件分支,在波形中依次找到:
- 预测请求 PC;
- FTB 命中信息;
- TAGE 方向预测;
- FTQ 中保存的预测结果;
- 后端计算出的真实跳转结果;
- 预测错误时的 redirect 与历史恢复。
完成这条链后,再回来读对应源码,理解会快得多。