我尝试实例化参数数组,例如
module top();
parameter array_size = 10;
parameter par_array [array_size] = '{array_size{12}};
initial begin
$display("%d",par_array[array_size-1]);
end
endmodule
但是当我尝试在 questasim 中编译这个模块时,我得到了这种错误
-- 编译模块顶部**错误:(vlog-13069)parameters_array.sv(3):靠近“[”:语法错误,意外'[',期待';' 或者 ','。
对这个主题的搜索使我找到了以下主题,回答者说 systemverilog 确实允许这种构造。
我真的不想使用长参数向量,因为它会导致新的困难,并且这种构造正在 Vivado 中编译(但为了验证,我需要使用 Questa)。