0

我正在尝试使用 systemverilog 为大覆盖区域定义覆盖范围。例如,我想定义一个从 开始,在24'h000000结束24'h001ff0,并以 为增量的覆盖区24'h000008。到目前为止,我已经尝试过了;但是,它不会编译。

bins scratchpad = {24'h000000:24'h000008:24'h001ff0};

这给出了一个语法错误:syntax error: token is ':'.

有没有办法避免必须明确写出所有覆盖点?我知道我可以用 定义一个 bin {24'h000000:24'h001ff0},但这包含我不希望包含的点。

4

1 回答 1

3

您可以添加一个with子句

bins scratchpad[] = {[24'h000000:24'h001ff0]} with (item % 8 == 0);

有关其他选项和IEEE 1800-2012 LRM部分 19.5.1.1 ,请参见http://go.mentor.com/ready-for-systemverilog-2012

于 2015-07-13T22:03:16.660 回答