systemVerilog生成块

时间:2019-07-22 15:53:56

标签: verilog system-verilog

我生成了

genvar i;
generate
   for (i=0; i<32; i++) begin : g
      logic [$clog2(PULSE_TOTAL/32)-1:0] blk_ram_wr_addr;
   end : g
endgenerate

然后在我的always语句中,我查看了仿真中生​​成的信号以及所有其他信号名称,其中看到以下信号: \ g [0] .blk_ram_wr_addr \ g [1] .blk_ram_wr_addr .... \ g [31] .blk_ram_wr_addr

所以我的信号正确生成了。 现在,当我尝试在我的always语句中调用这些信号中的任何一个时,我会得到以下错误:我的信号未声明,或者语法不正确。

always @(posedge clk or posedge reseth)
  ... 
  ...
  // #1 
  \g[0].blk_ram_wr_addr <= 0;
  // #2 
   g[0].blk_ram_wr_addr <= 0;
end

无论使用哪种信号名称,都会出现语法错误,或者未声明g [0] .blk_ram_wr_addr。

您知道哪里出错了,或者如何正确使用生成的信号?

0 个答案:

没有答案
相关问题