导读:作者有幸在中国电子信息领域的排头兵院校“电子科技大学”攻读研究生期间,接触到前沿的数字IC验证知识,旁听到诸如华为海思、清华紫光、联发科技等业界顶尖集成电路相关企业面授课程,对数字IC验证有了一些知识积累和学习心得。为帮助想入门前端IC验证的朋友,思忱一二后,特开此专栏,以期花最短的时间,走最少的弯路,学最多的IC验证技术知识。
文章目录
- 一、内容概述
- 二、基于覆盖率驱动的验证技术
- 三、功能覆盖率模型
- 四、功能覆盖率收敛
- 五、功能覆盖率数据
- 六、功能覆盖率数据的归一化和分析
- 七、覆盖率的类型:RTL代码覆盖率
- 八、覆盖率的类型:断言覆盖率
- 九、覆盖率的类型:功能覆盖率
- 九、覆盖率的类型:功能覆盖率 VS 代码覆盖率
- 十、基于覆盖率驱动的验证策略
- 十一、覆盖率与缺陷率(Bug rate)的关系
- 十二、定义功能覆盖率模型
- 十三、功能覆盖率的建模
- 十四、功能覆盖率报告
- 十五、功能覆盖率的采样事件
- 十六、功能覆盖率:触发SystemVerilog Assertion
- 十七、定义覆盖点:信号和表达式
- 十八、定义覆盖点:bins
- 十九、定义覆盖点:条件覆盖
- 二十、定义覆盖点:状态跳转覆盖
- 二十一、定义覆盖点:交叉覆盖
- 二十二、参数化的覆盖率:提供代码的重用性
- 二十三、covergroup实战补充(2021-10-15)
- 二十四、小结
- X、实践练习
一、内容概述
- 基于覆盖率驱动的验证技术
- 覆盖率类型:代码覆盖率(工具自动生成,客观)和功能覆盖率(人为定义覆盖点,主观)
- SV中的功能覆盖率建模
- 定义覆盖率模型:
covergroup
- 定义覆盖点:
coverpoint
- 覆盖点的
bins
- 覆盖率函数
覆盖率驱动 可以用来衡量我们的验证进度,简而言之就是,看我们验了半天验到了什么程度。当然最核心的还是保证我们验证完备性,我们能识别到的点都要验证到。需要澄清的是,覆盖率达到要求,并不能说验证就真正的OK了,其实验证的空间还是非常大的,只是说我们的风险变小了,不能说一点风险都没有!故,验证有时候还是我们尽力而为的一个东西。