如果您在產生 FIFO 時,在 MegaWi3d 第 7 頁使用完全同步 RAM 的「輸出」收款器選項下選擇「是」(最佳速度),ModelSim 軟體會發出編譯警告。
為了避免 Quartus II 軟體版本 4.0 發出此警告訊息,請檢視 MegaWirizd 生成檔案中的maximize_speed和optimize_for_speed參數/一般。此外,建立並定義SCFIFO實例的lpm_widthu值。
以下是 VHDL MegaWi zipd 產生的輸出檔案中修改的程式碼範例:
COMPONENT scfifo
GENERIC
(
ALLOW_RWCYCLE_WHEN_FULL: STRING := "OFF";
ALMOST_EMPTY_VALUE: NATURAL := 0;
ALMOST_FULL_VALUE: NATURAL := 0;
LPM_NUMWORDS: NATURAL;
LPM_SHOWAHEAD: STRING := "OFF";
lpm_width: NATURAL;
lpm_widthu: NATURAL; -- Altera edit
--MAXIMIZE_SPEED: NATURAL := 5; -- Altera edit
--OPTIMIZE_FOR_SPEED: NATURAL := 5; -- Altera edit
OVERFLOW_CHECKING: STRING := "ON";
UNDERFLOW_CHECKING: STRING := "ON";
USE_EAB: STRING := "ON";
lpm_type: STRING := "scfifo"
);
and
scfifo14 : scfifo
GENERIC MAP (
LPM_NUMWORDS => 3,
LPM_SHOWAHEAD => "OFF",
lpm_width => 32,
lpm_widthu => 2, -- Altera edit
OVERFLOW_CHECKING => "ON",
UNDERFLOW_CHECKING => "ON",
USE_EAB => "OFF)
此問題已在 Quartus II 軟體版本 4.0 SP1 中修復。