【发布时间】:2016-06-17 07:36:12
【问题描述】:
我使用以下代码在 verilog 中实例化二维内存
reg [15:0] data_pattern_even [3:0] = {16'hFFFF,16'hFFFF,16'hFFFF,16'hFFFF};
reg [15:0] data_pattern_ev [3:0] = {16'hFFFF,16'hFFFF,16'hFFFF,16'hFFFF};
此实例化在模拟中运行良好,但在实际合成和 RTL 分析完成时无法运行
谁能向我详细说明这怎么可能?
【问题讨论】:
-
错误/警告是什么?
-
没有错误。只是在 RTL 中, data_pattern_even 的所有值都不是 FFFF 。第一个是 FFFF,其余的都是零
-
FPGA 还是 ASIC 综合?如果 FPGA 可以列出您使用的 FPGA 和工具版本。
-
artix - 7 xc7a35 和 vivado 2014.2 。我从我的朋友那里听说,verilog 中的初始化必须在某些条件下完成,例如 reset 。可能是这个原因吗?
-
请参阅UG901,了解如何使用 Verilog(或 VHDL)描述 Xilinx Vivado 综合的 RAM 和 ROM。
标签: verilog fpga register-transfer-level