从一行 Verilog 到一颗能跑操作系统的 RISC-V 核心,中间隔着一整套硬件工程方法。本专题系统覆盖:数字逻辑与 FPGA/ASIC 全景、Verilog 语法与仿真、有限状态机与时序设计、SystemVerilog 验证与 testbench、时序约束与收敛、高层次综合 HLS、RISC-V 指令集与特权级、五级流水线微架构与冒险处理、外设与 PLIC 中断控制器、交叉工具链与裸机开发、FPGA 矩阵乘与 CNN 加速器设计,以及从 RTL 到 GDSII 的芯片设计流程与开源 EDA 路径。
📚 专题导览
本专题共 18 篇,前 12 篇按「概览 → 基础 → 时序 → 验证 → 实现 → HLS → ISA → 微架构 → 外设 → 工具 → 加速 → 流程」的顺序组织,后 6 篇为补充进阶内容(总线 → 存储 → 乱序 → 向量 → 低功耗 → 测试),建议按表序通读:
| 阶段 | 文章 | 技术要点 |
|---|---|---|
| 概览 | 从数字逻辑到 FPGA 与 RISC-V 全景 | 数字逻辑到芯片设计全景、ASIC 与 FPGA 差异、学习路径 |
| 基础 | Verilog 基础与仿真验证 | Verilog 语法、组合与时序逻辑、仿真与波形调试 |
| 时序 | 有限状态机与时序设计 | 有限状态机建模、跨时钟域处理、亚稳态与同步器 |
| 验证 | SystemVerilog 验证与 testbench | SystemVerilog 断言、功能覆盖率、UVM 思想与 testbench |
| 实现 | FPGA 时序约束与收敛 | 时序约束 SDC、建立与保持余量、布局布线收敛 |
| HLS | 高层次综合 HLS 与流水线 | 高层次综合 C 到 RTL、流水线与数组分割、接口综合 |
| ISA | RISC-V 指令集架构详解 | RISC-V 指令格式、寄存器约定、特权级与 CSR |
| 微架构 | RISC-V 流水线 CPU 与冒险处理 | 五级流水线、数据与控制冒险、分支预测与旁路 |
| 外设 | RISC-V 外设与中断控制器 | UART/SPI/GPIO、PLIC 中断控制器、总线与 AXI 协议 |
| 工具 | RISC-V 工具链与裸机开发 | GCC 交叉工具链、OpenOCD 调试、裸机启动流程 |
| 加速 | FPGA 加速器:矩阵乘与 CNN | 矩阵乘与 CNN 加速器、脉动阵列、数据复用策略 |
| 流程 | 芯片设计流程与 EDA 工具链 | RTL 到 GDSII、综合与 DFT、开源 EDA 与流片路径 |
| 总线 | SoC 总线与 AXI 协议 | AMBA AXI4/AHB/APB 握手与突发、互连与仲裁、DMA 访存路径、总线验证与断言 |
| 存储 | 缓存与存储层次 | Cache 映射与替换、MESI/MOESI 一致性、TLB 与 MMU、预取与 miss 分析 |
| 乱序 | 超标量与乱序执行 | 发射宽度与多发射、重命名与 ROB、分支预测、推测执行与访存消歧 |
| 向量 | RISC-V 向量扩展 RVV | RVV 编程模型与 vsetvli、LMUL 与掩码、与 SIMD 的差异、自动向量化与调优 |
| 低功耗 | 低功耗数字设计 | 时钟与电源门控、UPF 电源域、DVFS 与多电压域、隔离保持单元与功耗分析 |
| 测试 | 可测性设计与测试 | 扫描链与 ATPG、压缩与低功耗测试、BIST、JTAG 边界扫描、良率与成本权衡 |