0

在我验证 DUT 的设计规范中,要求在 active_clk 信号为高电平时生成字时钟和位时钟。我在使用 SVA 方面的经验很少,所以希望有更多经验的人可以为我指出正确的方向,或者更好的是,提供解决方案。

4

1 回答 1

1

拥有一个始终开启的时钟,您可以使用它来预测其他 2 个时钟在某个固定/计算的持续时间内的上升沿/下降沿。类似于下面的代码:

 bit aon_clk;
 always #1 aon_clk = ~aon_clk;

 property clk_chk;
   @(aon_clk)
   // Within say 25 Always ON Clks, you should expect a rise/fall of bit_clk
   active_clk |=> ##[0:25] $rose(bit_clk) && active_clk ##[0:25] $fell(bit_clk) && active_clk;
 endproperty

 assert property (clk_chk) else $display($time," Clks not generated");
于 2017-03-07T11:02:54.137 回答