1.覆盖率类型
覆盖会迭代进行
使用反馈回路来分析覆盖率的结果
覆盖率是伴随着仿真进行的
1.1代码覆盖率
代码覆盖率工具会创立相应的数据库
仿真器带有翻译代码覆盖率的工具,不需要额外代码
行覆盖率:多少行代码被执行
路径:穿过代码和表达式的路径有哪些已经别执行过高
翻转:那些单位比特变量的值为0或1
状态机覆盖率:状态机那些状态和状态转换已经被访问过
关注点应该放在设计代码的分析上
未经测试的设计代码里可能隐藏硬件漏洞,也可能仅仅就是冗余的代码
代码覆盖率衡量的是测试对于硬件设计描述的实现究竟有多彻底
代码覆盖率达到了100%,并不意味着验证工作已经完成,但是代码覆盖率100%是验证工作完备的必要条件
代码覆盖率是设定的阈值,一般是95%
1.2断言覆盖率
断言覆盖率和其他覆盖率放在同一个覆盖率数据库中
1.3漏洞率曲线
漏洞率下降,测试可能的边界情况
1.4功能覆盖率
覆盖率达到100%,不能说明测试的完备性
如果覆盖率稳定增长,则需要修改种子或者增加测试事件
如果覆盖率增长放缓,则需要修改约束
如果覆盖率停止增长且不足100%,则考虑增加新的测试用例
2.功能覆盖策略
1如果代码覆盖率低但功能覆盖率高,说明验证计划不完整&