首页|资源下载
登录|注册

您现在的位置是:首页 > 技术阅读 >  SV中的ignore_bins和illegal_bins

SV中的ignore_bins和illegal_bins

时间:2024-07-16
ignore_bins当没有明确定义某一个coverpoint的bins时,EDA仿真工具会生成和收集所有可能的bins,当其中某些bins在RTL中永远都不可能覆盖到,可以使用ignore_bins进行忽略。

在上图中,adr1可能的bins有[0:15],但是其中bins[4]、bins[5]和bins[6:15]我们并不关心是否收集到,就可以设置

ignore_bins igvalues0 = {4,5};ignore_bins igvalues1 = {[6:$]};

所以,最终即使只覆盖到了值0、1、2、3,总体的功能覆盖率还是到达了100%

illegal_bins

' illegal_bins '是指如果我们覆盖了某个指定场景bins,需要上报ERROR,并且该bins和ignore_bins一样不计入总的功能覆盖率统计。

在上图中,我们将bins[0]设置为illegal_bins,所以最终虽然覆盖了5个值(1、2、3、9和11),覆盖率是除以15,而不是16。由于覆盖到了bins0,所以上报ERROR,最终的覆盖率是

5/15 = 1/3=33.3%