Verilog 功能覆盖率-收集其他存储箱中未收集的所有值的存储箱

Verilog 功能覆盖率-收集其他存储箱中未收集的所有值的存储箱,verilog,system-verilog,verification,uvm,Verilog,System Verilog,Verification,Uvm,ipv6\u ext\u any\u otherbin应收集其他bin未收集的所有VAL 可能会使用default,但问题是default不是一个activebin,我的意思是,它不是func-cov度量的一部分 是否有其他方法定义ipv6外部任何其他bin? 或者,是否有一种方法可以使默认值成为活动箱子?您可以这样做 ipv6_hdr__f_next_header_cp: coverpoint this.ipv6_hdr.ipv6_f_next_header iff (this.has_ip

ipv6\u ext\u any\u other
bin应收集其他bin未收集的所有VAL

可能会使用
default
,但问题是
default
不是一个
active
bin,我的意思是,它不是func-cov度量的一部分

是否有其他方法定义ipv6外部任何其他bin? 或者,是否有一种方法可以使
默认值
成为活动箱子?

您可以这样做

ipv6_hdr__f_next_header_cp: coverpoint  this.ipv6_hdr.ipv6_f_next_header iff (this.has_ipv6_header){
    bins ipsec_33 = {'h33};
    bins tcp_06 = {'h06};
    bins udp_11 = {'h11};
    bins done_3b = {'h3b};
    bins ipv6_ext_any_other [3] = {[0:'h5], ['h7:'h10], ['h12:'h3a], ['h3c:$]};
}

另请参见

我知道
bins ipv6\u ext\u any\u other[3]=默认值
不是答案,因为它将自动成为一个
ignore\u bins
。你知道为什么吗?这似乎很疯狂。covergroup的大部分功能都来自Vera,一些概念性的想法在向SystemVerilog的语法转换中丢失了
ignore_-bin
用于从覆盖范围集合中拉出重叠的
bin
<代码>默认值是一种调试辅助工具,用于捕获样本值未落入任何指定存储箱的次数。无法捕获这些值是如何分布的。非常感谢您的回答!我还检查了链接,我真的不明白,是以下语法:bins ipv6_ext_any_other[3]={default}相当于:bins ipv6_ext_any other[3]={[0:$]}with(!(在{h33,'h06,'h11,'h3b}中的项);因为,实际上我认为{default}应该可以工作……是的,它们与我建议的语法相同。区别在于
default
关键字周围是否有
{}
bins ipv6_ext_any_other [3] = {[0:$]} with (!(item inside {'h33,'h06,'h11,'h3b}));