对于具有相似序列的系统 Verilog 功能覆盖箱,会有问题吗?
Would there be an issue, for system verilog functional coverage bins with similar sequences?
covergroup xxxx ;
yyyy : coverpoint (zzzz)
{
bins sequence_1 = {0=>1=>2=>3};
bins sequence_2 = {0=>1=>2=>3=>4};
bins sequence_3 = {0=>1=>2=>3=>4=>5=>6=>7=>8=>9};
bins sequence_4 = {0=>1=>2=>3=>4=>5=>6=>7=>8=>9=>10=>11=>12=>13=>14=>15=>16=>17};
bins sequence_5 = {0=>1=>2=>3=>4=>5=>6=>7=>8=>9=>10=>11=>12=>13=>14=>15=>16=>17=>18};
bins sequence_6 = {0=>1=>2=>3=>4=>5=>6=>7=>8=>9=>10=>11=>12=>13=>14=>15=>16=>17=>18=>19};
}
endgroup
- zzzz 是一个计数器寄存器,根据其输入从 0 计数到 3、4、9、17、18 或 19
在编写此功能覆盖时,想法是如果发生特定系列的转换,则命中其中一个容器,只有一个容器。
所以如果转换例如从 0 到 4,就像在 sequence_2 中一样,那是否也会命中 sequence_1,因为 0 到 3 序列出现在 sequence_1
谢谢
是的,如果 sequence_2 被命中,那意味着 sequence_1 也被命中。您真正想要的是涵盖计数器达到其极限时发生的情况。即它会回到 0 还是在下一个周期保持在极限值?无需详细说明计数器的每个中间值 - 覆盖组不是检查器。只是记录你测试的某个场景实现了。
covergroup xxxx ;
yyyy : coverpoint (zzzz)
{
bins sequence_1 = {0=>1=>2=>3};
bins sequence_2 = {0=>1=>2=>3=>4};
bins sequence_3 = {0=>1=>2=>3=>4=>5=>6=>7=>8=>9};
bins sequence_4 = {0=>1=>2=>3=>4=>5=>6=>7=>8=>9=>10=>11=>12=>13=>14=>15=>16=>17};
bins sequence_5 = {0=>1=>2=>3=>4=>5=>6=>7=>8=>9=>10=>11=>12=>13=>14=>15=>16=>17=>18};
bins sequence_6 = {0=>1=>2=>3=>4=>5=>6=>7=>8=>9=>10=>11=>12=>13=>14=>15=>16=>17=>18=>19};
}
endgroup
- zzzz 是一个计数器寄存器,根据其输入从 0 计数到 3、4、9、17、18 或 19
在编写此功能覆盖时,想法是如果发生特定系列的转换,则命中其中一个容器,只有一个容器。
所以如果转换例如从 0 到 4,就像在 sequence_2 中一样,那是否也会命中 sequence_1,因为 0 到 3 序列出现在 sequence_1
谢谢
是的,如果 sequence_2 被命中,那意味着 sequence_1 也被命中。您真正想要的是涵盖计数器达到其极限时发生的情况。即它会回到 0 还是在下一个周期保持在极限值?无需详细说明计数器的每个中间值 - 覆盖组不是检查器。只是记录你测试的某个场景实现了。