如何在波形中查看 SystemVerilog 动态数组
How to view a SystemVerilog dynamic array in waveform
我正在尝试使用采用动态数组和队列的 SV 来实现 FIFO。但是我无法在 waveviewer 中查看动态 array/queues 的波形。有谁知道如何查看动态数组的波形或者不可能吗?
EDA Playground 中的结果:
Error message : [2020-05-28 01:53:22 EDT] iverilog '-Wall' '-g2012'
design.sv testbench.sv && unbuffer vvp a.out ivl: eval_object.c:65:
eval_darray_new: Assertion `0' failed. Aborted (core dumped) Exit code
expected: 0, received: 1
在 SNPS VCS 中:
failed to add certain signals to waveform because they cant be found
in FSDB.
module dynamic_array_data();
reg [7:0] mem [];
initial begin
$dumpfile("dump.vcd");
$dumpvars;
#10000 $finish;
end
initial begin
mem = new[4];
for (int i = 0; i < 4; i ++) begin
mem[i] = i;
end
end
endmodule
VCD 文本格式从未增强以支持 SystemVerilog 引入 Verilog 的许多数据类型,尤其是动态大小数组的 none。
您将无法使用 EDAPlayground 上的任何工具,因为它依赖 $dumpvars
中的 VCD 文件来显示波形。
我正在尝试使用采用动态数组和队列的 SV 来实现 FIFO。但是我无法在 waveviewer 中查看动态 array/queues 的波形。有谁知道如何查看动态数组的波形或者不可能吗?
EDA Playground 中的结果:
Error message : [2020-05-28 01:53:22 EDT] iverilog '-Wall' '-g2012' design.sv testbench.sv && unbuffer vvp a.out ivl: eval_object.c:65: eval_darray_new: Assertion `0' failed. Aborted (core dumped) Exit code expected: 0, received: 1
在 SNPS VCS 中:
failed to add certain signals to waveform because they cant be found in FSDB.
module dynamic_array_data();
reg [7:0] mem [];
initial begin
$dumpfile("dump.vcd");
$dumpvars;
#10000 $finish;
end
initial begin
mem = new[4];
for (int i = 0; i < 4; i ++) begin
mem[i] = i;
end
end
endmodule
VCD 文本格式从未增强以支持 SystemVerilog 引入 Verilog 的许多数据类型,尤其是动态大小数组的 none。
您将无法使用 EDAPlayground 上的任何工具,因为它依赖 $dumpvars
中的 VCD 文件来显示波形。