當您在 SONET OC12 通訊協定中設定Stratix® II GX 收發器通道時,使用專用 refclk 針腳的 155.52 MHz 頻率輸入,Quartus® II 軟體不會立即設定以 SONET OC12 資料速率 (622 Mbps) 執行通道所需的 refclk 預先分隔器。由於 refclk 預先分隔器未立即進行,所以 SONET OC12 通道以兩倍資料速率 (1244 Mbps) 執行。
此問題僅存在於 Quartus II 軟體版本 7.0、7.1 和 7.1 SP1 中,並且從 Quartus II 軟體版本 7.2 開始修復。
Quartus II 軟體版本 7.0、7.1 和 7.1 SP1 有兩種方法可以解決這個問題,視設計而定。解決方法 1 適用于使用動態通道和 TXPLL 重新配置功能的設計(由啟用通道和 TX PLL 重新配置選項在 ALT2GXB MegaWizerd® 外掛程式中啟用)。解決方法 2 適用于使用動態通道重新配置(由 ALT2GXB MegaWilbyd 外掛程式的重新配置頁面上的使用替代參考頻率選項啟用)或不使用任何動態重新配置的設計。
解決方法 1 - 針對在 Quartus II 軟體版本 7.0、7.1 和 7.1 SP1 中使用動態通道和 TXPLL 重新配置功能的設計。
在 SONET OC12 通訊協定 alt2gxb 實例的 MegaWiazd 產生的包裝檔案中,請修改 enable_pll_inclkx>_divider
參數( 其中 x 為 0、1、2、3 或 4),以 true
進行對應的頻率輸入,以連接提供 155.52 MHz 頻率頻率的 refclk 針腳。例如,如果 SONET OC12 ALT2GXB MegaWiazd 實例中的頻率輸入 1 連接到提供 155.52 MHz 頻率的 refclk 針腳,設定為 enable_pll_inclk1_divider
true
。此變更可讓 Quartus II 軟體在編譯修改後的 alt2gxb 實例時,為時鐘 1 輸入建立重新定義的預先分隔器。
enable_pll_inclkx>_divider
針對連接到 true
相同 155.52 MHz 頻率輸入的所有實例,將參數變更為 alt2gxb MegaWiazd 產生的包裝檔。例如,如果任何其他 alt2gxb 實例的頻率 2 輸入埠連接到提供 155.52 MHz 的 refclk 針腳,請變更 enable_pll_inclk2_divider
為 true
對應的包裝檔。
進行上述修改後,請重新安裝記憶體初始化檔案 (。mif) 適用于所有修改的實例。
為了模擬設計,請使用 Quartus II EDA Netlist Writer 產生收發器模型模擬檔案 (.vo for Verilog HDL,.vho for VHDL),而不是使用 alt2gxb MegaWiarid 外掛程式。您必須使用 EDA Netlist Writer,因為 alt2gxb MegaWipard 外掛程式所產生的功能模擬模型不包括 enable_pll_inclk_divider
參數。EDA Netlist Writer 會在模擬模型檔案 (.vo 或.vho) 中建立 refclk 預先分隔器。使用下列步驟產生模擬模型檔案:
- 在「分配」功能表上,選擇 「設定」。
- 在 EDA 工具設定下,選擇 模擬。
- 為您的協力廠商模擬工具選取 工具名稱 。
- 在 輸出網路清單的格式 中,根據您的需求選擇 VHDL 或 Verilog。
- 在 輸出目錄 欄位中,指定 .vo 或 .vho 檔案的目錄。
- 按一下「更多設定」,並設定「產生網路清單」以進行功能模擬,僅限開啟。
- 編譯設計的最高層模組,其中包含 alt2gxb 和alt2gxb_reconfig實例。
- 注意:您必須連接
reconfig_fromgxb
reconfig_togxb
alt2gxb 與alt2gxb_reconfig實例之間的埠。否則,Quartus II 軟體會移除這些埠,而所產生的 .vo 或 .vho 模擬模型檔案無法如預期運作。
解決方法 2 - 對於使用動態通道重新配置或不使用任何動態重新配置的設計,請使用 Quartus II 軟體版本 7.0、7.1 和 7.1 SP1。
將下列 Verilog 代碼加入您的設計中,以新增 refclk 前分隔器。將 refclk 預先分隔器實例的輸入埠連接到提供 155.52 MHz 頻率輸入的 refclk 針腳。將輸出埠連接到 所有 使用此 155.52 MHz 頻率輸入的 alt2gxb 實例。
//refclk divider Verilog code for Workaround 2
module my_refclk_div(in, out);
input in;
output out;
stratixiigx_hssi_refclk_divider my_refclk_divider (
.inclk(in),
.clkout(out));
defparam my_refclk_divider.enable_divider = "true";
defparam my_refclk_divider.divider_number = 0;
defparam my_refclk_divider.refclk_coupling_termination = "normal_100_ohm_termination";
endmodule
如果您的設計有任何其他收發器通道實例,使用與 SONET OC12 alt2gxb 實例相同的 refclk 針腳的 155.52 MHz 頻率輸入,請變更 輸入頻率頻率的頻率? 在 alt2gxb MegaWiazd 外掛程式 的一般 頁面設定為 77.76 MHz。
此步驟是必填的,因為任何使用相同 155.52 MHz 頻率輸入的通道,在頻率路徑中新增 refclk 預先分隔器時,只會收到 77.76 MHz 輸入參考頻率頻率。例如,如果您已在基本模式中設定任何通道以 2488 Mbps 執行,使用相同的 155.52 MHz 頻率輸入,請將 輸入頻率設定 為 77.76 MHz。
如果啟用了通道重新配置功能,請重新安裝記憶體初始化檔案 (。mif) 適用于所有修改的實例。
您可以使用 ALT2GXB MegaWi insightd 外掛程式所產生的模擬模型檔案 (.vo 或 .vho) 來模擬設計。