在SystemVerilog中,有没有办法在常量函数中使用断言?

时间:2015-12-11 16:20:19

标签: system-verilog

我有一个类似于这个的功能

function automatic int divide(int a,  int b);
        check_divides: assert(a % b == 0);

        return a / b;
endfunction

我的模拟器拒绝编译它,并说这不再是一个常数函数。

有没有人知道是否应该允许这样做,或者是否有办法在常量函数中执行这样的断言?

1 个答案:

答案 0 :(得分:0)

这在Questa中运行良好。虽然LRM部分 13.4.3常量函数中没有任何内容表明这是非法的,但也没有任何内容可以定义断言的动作块及其对编译的影响。