這是19年 PCI-SIG 關于PCIe 信號,在設計過程中使用中繼器(Redriver&Retimer)一份資料,現在讀來,還是做PCIe設計的黃金指南。
相關標準
給出PCIe3.0~5.0的整個鏈路各自損耗標準,以及對各部分進行劃分,給出了損耗標準,如下圖:
上表的這個標準來說,目前很多產品的PCIe設計都是基于此相關的標準來評估風險。
常見的高速產品比如服務器,也是基于此標準進行評估,下圖為常見的PCIe信號的布局形式:
在實際工作過程中,項目評估階段,會針對不同的拓撲結果做一個整理和簡單評估,如下圖:
整個鏈路,變量最大的就是系統端的主板,而改善其性能的最直接方式就是板材。常見的板材分類就是:Mid-loss, Low-loss, and Ultra-low-loss。目前行業對損耗沒有的統一定義和標準,會看到很多不同的板廠以及資料給出的分類是不同的。
影響插入損耗值的變量因素有很多:材料特性、布線層、走線寬度、銅箔粗糙度、堆疊結構、環境因素等等。這些變量對產品的影響,就需要設計人員根據具體設計和應用場景確定相應的損耗值。
資料也給出了一些不同板材的參考值,如下圖:
這里需要注意兩點:
- 并非某一分類的所有材料都有相同性能,比如有些材料電性能更好一些,有些材料的工藝性能更好一些,這種取舍需要根據設計產品的本身來定位,特別是做產品降本分析的時候
- 除了注意板廠的制造公差以及不同板廠的制程偏差,還特別要注意產品的使用環境,比如高溫高濕等,這些特殊的環境對產品的性能會有很大的影響,這就需要我們在設計產品的時候留裕量
中繼器
如果鏈路的裕量不足,除了簡單粗暴的方式(升級板材)之外,還可以考慮中繼器(Redriver&Retimer)
Redriver(重驅動器)
- 輸入的模擬信號經過濾波和/或放大處理
- 抖動和噪聲可能惡化或至少維持原狀
Retimer(重定時器)
- 內部將模擬信號轉換為數據后進行重傳輸
- 可實現信號完全再生,但需付出延遲代價
簡單來說,Redriver&Retimer的區別:
Redriver是“放大”信號,而Retimer是“再生”信號。
主板的信號長度比較長,信號損耗嚴重長,推薦使用Retimer。
Retimer器件的布局擺放
- 需鄰近擴展槽位置擺放,以確保兼容各類擴展卡/線纜(含無源插卡式擴展槽)
- 需綜合考量結構件與布線密度因素
使用Retimer器件的仿真
通過運行IBIS-AMI仿真驗證信號完整性(SI),這里面有兩點需要關注:
- Retimer器件的使用,包含兩個鏈路段:源端至RT段(源端到重定時器)和RT至EP段(重定時器到終端設備)
- 各鏈路段可評估無源信道或IBIS-AMI(評估含RC/RT/EP的完整信道)進行獨立仿真
Retimer重定時器診斷功能
遠程環回(Slave Loopback)
支持數據從源端(RC)環回到重定時器(RT),或從端點設備(EP)環回到RT
接收端容限(Receiver Margining)
- 與所有PCIe接收器相同,重定時器必須支持通過控制SKP有序集(Control SKP Ordered Sets)進行接收端容限測試
- 可在兩個偽端口(BOTH Pseudo Ports)上評估眼圖張開度
協議狀態報告(Protocol Status Reporting)
- 重定時器能同時感知上行/下行偽端口(Pseudo Ports)的物理層協議事件
- 可記錄此類信息并根據需要上報至系統控制器,助力鏈路調試
- 支持在重大事件(如意外進入Recovery狀態)時向系統控制器生成中斷