我需要在 SystemVerilog 中创建一个函数,并将返回值作为参数化位向量。我的代码如下:
class my_class #(parameter ADDR_WIDTH = 32);
bit [ADDR_WIDTH-1:0] address;
function bit [ADDR_WIDTH-1:0] get_address();
return address;
endfunction : get_address
endclass : my_class
我在函数声明中得到一个编译时错误,指出参数ADDR_WIDTH
未定义。谁能解释为什么会这样?在没有参数的情况下也是如此(即,如果我有一个已知值,例如bit [31:0]
)。