2016-09-21 38 views

回答

0

鑑於良好的綜合工具,您可能只需推斷大型RAM而不需要依賴於技術的屬性。因此,請檢查您的綜合手冊中的技術推斷塊RAM。在那裏的典型錯誤將是例如在內存上添加一個復位,這在大多數技術中都不可用。

+0

我正在使用vivado來合成我的代碼。並花了很多時間來生成一個位文件,在日誌中我觀察到內存正在寄存器中執行,而不是在塊內存中執行。我應該怎麼做才能在塊RAM中實現我的內存 –

+1

@vlsi_user工具合成,映射和生成位文件所需的時間量通常取決於設計的大小。關於RAM是作爲寄存器而不是Block RAM來實現的,如果你可以發佈你的代碼片段,顯示你已經寫入的Block RAM模塊或者你正在實例化RAM的代碼片段,這將是有幫助的。 – Prashant

+0

@vlsi_user fpga中的Block RAM與ASIC中的SRAM不同。也就是說,您需要允許2個循環延遲而不是1個來推斷FPGA模塊RAM。就像總是@(posedge clk)開始addr_reg <= addr; rdata <= mem [addr_reg];結束 –