内容参考:公众号→摸鱼范式||芯片验证之路 (里面干货很多)
$get_coverage、get_coverage和get_inst_coverage
总结:
$get_coverage获得的是各个类型的covergroup各自的覆盖率按照权重来计算的整个环境总体的覆盖率;
get_coverage获得的是对应类型的covergroup的覆盖率,只有一个实例的covergroup覆盖率不受对应coverpoint权重的影响,但是具有多个实例的covergroup覆盖率会受各个实例覆盖率值的影响;
get_inst_coverage获得covergroup对应的各个实例的覆盖率,会受实例中设定的coverpoint权重的影响。
`timescale 1ns/1ps
module covg;
bit [1:0]data1;
bit [2:0]data2;
bit clk;
initial begin
clk=0;
forever #1 clk=~clk;
end
covergroup covg1 (int y,int z)@(posedge clk);
option.per_instance=1;
type_option.weight=2;
d1:coverpoint data1{
bins zoro={0,1};
bins one={2,3};
option.weight=y;
}
d2:coverpoint data2{
bins lo&#