🔬 电路验证工程师 · 成长路径
📚 30章 从入门到进阶
v1.0
01
芯片验证概述
什么是芯片验证
验证在芯片开发流程中的位置
验证工程师的职责与技能要求
↗
02
数字电路基础回顾
数制与编码
组合逻辑电路
时序逻辑电路
状态机基础
↗
03
Verilog基础(一)
模块与端口
数据类型(wire/reg)
连续赋值(assign)
过程块(always)
↗
04
Verilog基础(二)
运算符
条件语句(if-else/case)
循环语句
任务与函数
↗
05
Verilog基础(三)
有限状态机(FSM)设计
可综合与不可综合语法
Testbench结构
↗
06
SystemVerilog验证基础(一)
SV数据类型(logic/bit/int/struct)
数组与队列
枚举与自定义类型
↗
07
SystemVerilog验证基础(二)
面向对象编程(OOP)基础
类与对象
封装与继承
多态
↗
08
SystemVerilog验证基础(三)
随机化与约束
覆盖率驱动验证(CDV)概念
功能覆盖率
↗
09
SystemVerilog验证基础(四)
断言(Assertion)基础
SVA语法
并发断言与即时断言
↗
10
UVM基础(一)
UVM是什么
UVM树形结构
uvm_component与uvm_object
phase机制
↗
11
UVM基础(二)
UVM中的TLM通信
port/export/imp
analysis port与fifo
↗
12
UVM基础(三)
UVM序列(sequence)与序列器(sequencer)
sequence机制详解
↗
13
UVM基础(四)
UVM监视器(monitor)与驱动器(driver)
agent与env的搭建
↗
14
UVM基础(五)
UVM寄存器模型(RAL)
reg_block与adapter
前门与后门访问
↗
15
验证方法论
基于断言验证(ABV)
形式化验证入门
低功耗验证基础
↗
16
脚本语言在验证中的应用
Perl基础
Python基础
Makefile与仿真自动化
↗
17
仿真工具使用
VCS/QuestaSim/IES工具基础
编译与仿真命令
波形查看与调试
↗
18
验证计划与策略
验证计划(Verification Plan)编写
测试点分解
风险评估
↗
19
测试用例设计
定向测试与随机测试
边界测试
异常测试
回归测试
↗
20
覆盖率收集与分析
代码覆盖率
功能覆盖率
覆盖率合并与报告分析
↗
21
调试技巧
信号追踪
波形分析
日志分析
断点调试
常见Bug模式
↗
22
接口协议验证(一)
AMBA AHB协议验证
AHB VIP搭建
AHB测试序列
↗
23
接口协议验证(二)
AMBA APB协议验证
APB寄存器测试
APB与AHB桥接验证
↗
24
接口协议验证(三)
AMBA AXI协议验证
AXI乱序传输
AXI VIP使用
↗
25
SoC验证基础
SoC架构概述
SoC验证挑战
硬件/软件协同验证
↗
26
验证环境搭建实战
从零搭建UVM验证环境
环境结构规划
组件复用
↗
27
验证IP(VIP)开发
自定义VIP设计
VIP的配置与复用
VIP的封装与发布
↗
28
项目实战(一)
I2C控制器验证
I2C协议分析
验证环境搭建与调试
↗
29
项目实战(二)
SPI控制器验证
SPI模式配置
全场景测试覆盖
↗
30
职业发展与进阶
验证工程师的成长路径
面试技巧
持续学习方向(形式化/DFT/低功耗)
↗