這是Verilog相關的問題。我正在使用XILINX ISE作爲開發環境。在仿真代碼中訪問Verilog genvar生成的實例
我試圖訪問正在使用genvar自動生成模擬變量,但我收到以下錯誤 - > HDLCompiler:71
問題實施例:
genvar i;
generate
for(i=0; i < N; i=i+1)
begin:Sys_Modules
TypeXModule #(.width(10)) xmod(.dataY(dataY)));
end
endgenerate
當我跑的合成或仿真我可以看到創建了Sys_Modules [0..N-1] .xmod實例。
當我嘗試將一行添加到仿真訪問Sys_Modules數組:
Sys_Modules [I] .xmod.dataY
我得到以下錯誤:
HDLCompiler:71 DATAY是沒有在前綴下聲明xmod
有什麼辦法可以在模擬中訪問自動生成的值嗎?
謝謝!
謝謝你的回答。 我設法使用常量編譯一個版本。 不幸的是,我有一個使用genvar和參數動態生成的模塊。 for循環從I到N,N被定義爲參數(參數= N)。 使用常量類型會破壞使用genvar for循環的目的。編譯器可以很容易地從參數中確定常量值。如果這是真的,它似乎是Verilog語言設計中的一個疏忽。 – Tibio