如何在波形中查看 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 文件来显示波形。