🧩 RISC-V 核心设计·全流程

📘 30章 从入门到流片
01
RISC-V前世今生 指令集架构简史 · 诞生哲学 · 开源生态
02
开发环境搭建 Linux环境 · GNU工具链 · Verilog仿真器
03
指令集精讲 (上) RV32I · R/I/L/S/B/U/J 指令格式
04
指令集精讲 (下) M/F/D扩展 · 特权架构 Machine/Supervisor/User
05
处理器微架构入门 经典5级流水线 · 数据/控制冒险
06
取指阶段设计 PC生成 · 指令存储器 · 分支预测器
07
译码阶段设计 指令译码 · 立即数生成 · 寄存器堆读端口
08
执行阶段设计 ALU · 比较器 · 分支条件 · 乘除法器
09
访存阶段设计 数据存储器接口 · 非对齐访问 · 字节使能
10
写回阶段设计 写回选择 · 寄存器写端口 · 转发路径
11
流水线冒险与解决 Forwarding · Stall · Flush 逻辑
12
控制与状态寄存器 CSR指令 · mstatus/mie/mepc · 中断异常
13
存储层次设计 I-Cache / D-Cache · 写策略
14
总线接口协议 TileLink vs AXI4-Lite · 总线桥接 · 多主互联
15
多周期指令支持 乘法器多周期 · 除法迭代 · 加载延迟槽
16
性能计数器 HPM · Cycle/Instruction计数 · Cache Miss率
17
验证方法论 UVM架构 · 定向/随机测试 · 功能覆盖率
18
指令集随机测试 Architectural Test · 随机生成器 · 自动化
19
CoreMark & Dhrystone 基准移植 · 性能分析 · 优化瓶颈
20
形式化验证入门 断言 · SVA · 属性检查
21
FPGA原型验证 Vivado/Vitis · 时钟复位 · ILA/VIO调试
22
低功耗设计 时钟门控 · 操作数隔离 · 多电压域
23
可测试性设计 扫描链 · BIST · JTAG调试接口
24
RISC-V向量扩展 V扩展指令 · 向量寄存器 · 向量执行单元
25
多核与一致性 Mesh/Ring拓扑 · MESI/MOESI · 原子操作
26
安全扩展 PMP · TEE基础 · 侧信道防护
27
SoC集成实战 AHB/APB · UART/SPI/I2C · PLIC中断控制器
28
Boot与启动流程 复位向量 · Boot ROM · Bootloader
29
综合与时序收敛 Design Compiler · 时序约束 · 关键路径优化
30
流片与测试 GDSII · ATE测试向量 · 芯片回片验证