请教covergroup中参数类型的问题
时间:10-02
整理:3721RD
点击:
菜鸟求助各位大侠。我现在要编写一个covergroup,这个covergroup我需要例化两次,分别作用于不同的模块A和B。比如:
wire [1:0] aaa = `TOP.A;
wire [1:0] bbb = `TOP.B;
covergroup my_covergroup(TYPE ccc)
coverpoint ccc{
bins ccc = {2'b11};
}
endgroup
my_covergroup covera = new(aaa);
my_covergroup coverb = new(bbb);
请问这个TYPE应该定义为什么类型呢?
wire [1:0] aaa = `TOP.A;
wire [1:0] bbb = `TOP.B;
covergroup my_covergroup(TYPE ccc)
coverpoint ccc{
bins ccc = {2'b11};
}
endgroup
my_covergroup covera = new(aaa);
my_covergroup coverb = new(bbb);
请问这个TYPE应该定义为什么类型呢?
用一个covergroup包含2个coverpoint不行吗
你说的那样是可以的。我这里只是举个例化两次的例子。实际应用中,我可能要例化32次。
bit[1:0]?不知道小编试过没?
试过bit了。不过好像bit只能赋值一次,也就是只能得到程序开始运行时的值。
covergroup my_covergroup(ref bit [1:0] ccc);
这样可以吗?