您可能會觀察到rx_freqlocked信號卡在高電平/斷言位置,這是由於 Quartus II 10.0 SP1 和更早版本中的軟體錯誤導致的 CDR 鎖定問題。除 PCIe 模式外,在所有模式下都可觀察到此問題。SAS/SATA 或使用rx_signaldetect訊號的應用程式可能需要其他解決方法。
如需說明為何 Arria® II GX CDR 裝置可能會在除 PCIe 模式以外的任何其他模式下保持rx_freqlocked訊號,請參閱Arria II GX 勘誤表 (PDF)。
要解決此問題,請從以下連結下載並安裝相應的修補程式。解決此問題的軟體解決方案已完全集成到 10.0 SP1 之後的 Quartus II 軟體版本中,因此在更高版本的軟體中不需要修補程式。
請注意,軟體修補程式與下面指示的某些先前修補程式不相容。如果您使用的是這些不相容的修補程式之一,請查看涉及圖 1 所示和下面描述的重置序列的替代解決方案,或者在需要相容修補程式時 mysupport.altera.com 提交服務請求。
- Quartus II 軟體版本 9.1 SP2(補丁 2.109 與補丁 2.17、2.35、2.76、2.77、2.78、2.83 和 2.98 不相容)
- Quartus II 軟體版本 10.0 SP1(1.158 版與 1.151 版不相容)
安裝補丁後,您只需重新運行Quartus II軟體組合語言程式即可,而無需執行完整編譯。
注意:如果不使用 rx_signaldetect 信號,請忽略 64K 並行時鐘週期計時,僅參考以下步驟。
- 斷言rx_analogreset和rx_digitalreset信號。
- rx_freqlocked[0..n-1] 信號將變低,表示收發器鎖定到參考時鐘(鎖定到參考)。
- 解除rx_analogreset信號。在解除rx_analogreset訊號之前,請確保資料存在於接收器輸入端。如果您使用的是rx_signaldetect埠,則可以按照上面建議的時序圖進行操作。如果您沒有使用rx_signaldetect信號,請參閱下面的特別說明,瞭解如何檢測RX緩衝區中是否存在資料。
- rx_freqlocked[0..n-1] 信號將變為高電平,表示收發器正在鎖定資料。
- 在最後一次rx_freqlocked後約4 μs(tLTD_Auto)信號變為高電平,解除rx_digitalreset信號。
特別說明
使用以下一種或多種方法確定 RX 緩衝區中是否存在資料。
- 訊號偵測在 PCIe 和基本模式下可用。您可以將訊號rx_signaldetect監控為鏈路指示器丟失或存在。rx_signaldetect將斷言 RX 緩衝區中是否存在有效資料。
- 您可以在設備核心中實現 PPM 檢測器,用於沒有信號檢測來監控鏈路的模式。PPM 檢測器將説明您識別連結中是否存在有效資料。
- 使用者邏輯中的資料損壞或 RX 相位補償 fifo 溢出/下溢情況可能表示 RX 緩衝區中的資料有效或無效。