功能coveragre
Coverage类型: code/functional/assertion coverage;
code coverage: 衡量设计的实现情况,测试对于设计规范的实现测试的有多彻底;1.行覆盖率2.路径覆盖率3.条件覆盖率4。翻转覆盖率5.状态机覆盖率
functional coverage:与设计意图紧密相连(搞清楚design关键特性、边界情形、可能的故障模式----只测你想知道的)
assertion coverage: 可以跟随设计和测试平台一起仿真—bind 将if例化在dut内部,可以监测dut端口signal 以及内部这一层的signal(注意与if进行区别);
功能coverage & 代码coverage 高低分别代表什么? Fun.低、cod.低出现在 验证早期;验证进行到一定程度时,代码coverage低、功能coverage高:(验证计划不完整)回到设计规范更新验证计划代码coverage低、功能coverage低:换用不同的种子进行随机测试,看是否提高,如果咩有明显作用,可以新增一些corner case;;代码coverage高、功能coverage低:查看是否将验证定位到感兴趣的状态上;
关于functional coverage:
covergroup定义、创建、采样part:
覆盖率—如何限制自动创建bin的数目?---如何自定义bins?---如何 控制是否采样1.iff 2.采样时设置实例名.start/stop 3.option.weight=0;---是否认识wildcard?---如何扣除连续仓中的个别仓?---指明非法仓?---收集单个覆盖组的coverage;---交叉覆盖率的收集;----翻转覆盖率中的连续重复、跟随重复、非连续重复;----仿真过程中的coverage收集:$get_coverage;