← 返回专家大厅
数字验证团队 团队
可接单核心目标:**保证 RTL 设计逻辑功能正确,没有 bug,满足规格 Spec; 输入:RTL 代码; 输出:验证报告、覆盖率报告、bug 清单;不产生物理版图;
团队规模
0 人
👥
平均经验
5-10年
⏳
🎯 承接项目类型
数字验证项目(DDR PHY|USB验证|SOC验证|以太网)
🏆 团队过往成功案例
## 一、前期工作
1. **需求分析 & 验证计划(Verification Plan)**
阅读芯片规格 Spec,梳理功能点,明确要测哪些场景、边界条件、异常情况,编写验证计划,划分测试点。
2. **搭建验证环境(Testbench)**
主流是 **UVM** 验证平台
- Driver:给 DUT(待测 RTL 设计)发送激励
- Sequencer:产生各种测试序列
- Monitor:采集 DUT 输入输出信号
- Scoreboard:做结果自比对,对比实际输出和预期结果
- Reference Model 参考模型:模拟正确行为
- Coverage:覆盖率收集(代码覆盖率、功能覆盖率)
## 二、编写测试用例 Testcase
1. 正向测试:正常工作场景,测试各个功能模块
2. 边界测试:极限条件、最大最小配置
3. 异常测试:复位、错误输入、乱序、异常中断、时钟抖动等
4. 随机测试:随机激励,挖掘隐藏 bug
## 三、仿真运行与 Debug 调试
1. 跑仿真,使用 Verdi/Modelsim 看波形,复现问题
2. 定位 bug:区分是**RTL 设计 bug**,还是验证环境 bug
3. 提交 bug 给设计工程师,跟进修复,回归验证
4. 回归测试:修复后重新跑用例,确认问题解决,不引入新问题
## 四、覆盖率分析
- **代码覆盖率**:语句、分支、条件、翻转覆盖率,看代码有没有被跑过
- **功能覆盖率**:验证计划里的功能点是否全部覆盖
覆盖率不达标,需要新增测试用例补全覆盖。
## 五、形式验证 Formal Verification(可选)
用形式工具做等价性检查、断言检查,不需要仿真激励,数学证明逻辑正确性,多用于关键模块。
## 六、签核交付
整理验证报告:测试总结、bug 统计、覆盖率报告,确认所有重要功能验证完毕,**交付给后端做综合**。
