电子说
和上一篇文章介绍的cross一样,SV 跳变(=>)特性也能够建模出比代码覆盖率更加复杂和丰富的功能覆盖率。
在上面的例子当中有1个跳变覆盖率coverpoint :
bins ar1 = (8’h00 => 8’hFF);
这意味着验证环境需要施加激励,让adr1在连续2个周期内从8’h00跳变到8’hff。
类似地,还有' bins ar2 ',指定了1’b1 => 1’b0的切换。
如果你希望adr1这个值能够连续3拍值f这个场景,可以使用语法
‘hf[*3]
如果不要求连续覆盖,那么可以使用语法
’hf[-> 3]
另外,注意下bins adrb3[] = (1,2=>3,4)这种写法,其实等价于
bins adrb3[] = (1=>3),(1=>4),(2=>3),(2=>4);
SV信号跳变覆盖率非常重要,因为非常多的bug都是出现在这种场景切换上的。
编辑:黄飞
全部0条评论
快来发表一下你的评论吧 !