調(diào)試 PCIE 鏈路動態(tài)均衡
隨著連續(xù)幾代 PCI Express 以 8 Gbps、16 Gbps 和 32 Gbps 的速度運(yùn)行,動態(tài)鏈路均衡變得至關(guān)重要。均衡會補(bǔ)償通信信道對信號的影響。 使用 PCIE CrossSync PHY關(guān)聯(lián)協(xié)議層和物理層數(shù)據(jù)的能力可以幫助定位鏈路訓(xùn)練后可能出現(xiàn)的邏輯和電氣問題。
這些影響包括充當(dāng)?shù)屯V波器的鏈路,它會衰減數(shù)據(jù)流中的關(guān)鍵高頻分量,此外,由連接器和過孔引起的鏈路阻抗不連續(xù)會進(jìn)一步降低鏈路性能。
PCIe均衡可應(yīng)用于發(fā)送端 (TxEQ)、接收端 (RxEQ) 或兩端都應(yīng)用, TxEQ 涉及去加重和預(yù)沖,而 RxEQ 涉及連續(xù)時(shí)間線性均衡 (CTLE) 和判決反饋均衡 (DFE)。
在發(fā)送端,去加重會使跳變后的第一位以全幅度 (Va) 發(fā)送,相同極性的后續(xù)位以降低的電平 (Vb) 傳輸,但在下一次跳變之前的最后一位除外,它以提高的預(yù)沖電平 (Vc) 傳輸。此外,轉(zhuǎn)換之間的單個(gè)bit位以最大增強(qiáng)電平 (Vd) 傳輸。
去加重和增強(qiáng)的組合補(bǔ)償了鏈路會衰減的信號高頻成分。均衡涉及多個(gè)階段的鏈路訓(xùn)練序列,有時(shí)會產(chǎn)生意想不到的結(jié)果。
PCIe 鏈路訓(xùn)練過程
發(fā)送端均衡(去加重、預(yù)沖和增強(qiáng)),是由 PCIe 系統(tǒng)的 TxEQ內(nèi)的三抽頭有限脈沖響應(yīng) (FIR) 濾波器實(shí)現(xiàn)。鏈路訓(xùn)練的目標(biāo)是確定給定通信鏈路的最佳 FIR 濾波器系數(shù),也稱為游標(biāo)系數(shù)。鏈路訓(xùn)練在下行端口和上行端口之間交換有序數(shù)據(jù)集,包括TS1訓(xùn)練序列和TS2訓(xùn)練序列 。
PCIe 鏈路訓(xùn)練是如何運(yùn)行的?
以PCIe 4.0為例,PCIe 4.0 鏈路訓(xùn)練從速度變化協(xié)商開始,有4個(gè)階段,階段 0 到階段 3。在階段 0,下行端口以 8GT/s 數(shù)據(jù)速率向上行端口發(fā)送 TS2 有序集,通告 16GT/s 的最大數(shù)據(jù)速率。在階段 1,兩個(gè)端口交換 TS1 有序集,在每 32 個(gè) TS1 有序集之后穿插一個(gè)電氣空閑退出有序集 (EIEOS),以建立操作鏈路。
EIEOS 的目的是保證鏈路伙伴可以檢測到電氣空閑退出狀態(tài),EIEOS 數(shù)據(jù)包符號(四個(gè)交替的 00 00 FF FF 序列)產(chǎn)生規(guī)則且具有相對較少的轉(zhuǎn)換的電信號,這對于在調(diào)試期間觀察信號的物理層屬性非常有用。
Preset 和 P10 的作用
隨后的階段涉及數(shù)據(jù)交換以優(yōu)化電氣性能。PCIe 標(biāo)準(zhǔn)規(guī)定了 11 種去加重、預(yù)沖和增強(qiáng)游標(biāo)系數(shù)的預(yù)定義組合,稱為Preset,并標(biāo)記為 P0 到 P10。 在鏈路訓(xùn)練期間,PCIe 設(shè)備會請求Preset或游標(biāo)系數(shù)——后者提供更精細(xì)的設(shè)置選項(xiàng),而Preset提供快捷便利。Preset是根據(jù)電壓比,以及前沖和去加重系數(shù)(以 dB 為單位)定義的。 但 P10 除外,它用于在全幅度下進(jìn)行發(fā)射機(jī)升壓限制測試,并且其升壓限制不固定,主要用于測試。 在第 2 階段,上行端口請求下行端口配置其發(fā)射機(jī)均衡Preset或游標(biāo)系數(shù),以補(bǔ)償鏈路通道并確保最佳性能。階段 3 交換角色,下行端口請求上行端口配置其發(fā)射機(jī)均衡Preset或游標(biāo)系數(shù)以補(bǔ)償鏈路。均衡訓(xùn)練完成后,下行端口和上行端口交換TS2有序集。 鏈路訓(xùn)練和狀態(tài)機(jī) (LTSSM) 會經(jīng)過 Recovery.RcvrLock、Recovery.RcvrCfg 和 Recovery.Idle 狀態(tài),在每 32 個(gè) TS1 或 TS2 有序集之后發(fā)送一個(gè) EIEOS,然后再建立活動 L0 狀態(tài)。因此,TS2 有序集和 EIEOS 可用于觸發(fā)儀器和定位物理層信號,以幫助調(diào)試均衡后的鏈路訓(xùn)練行為。
比較 Preset 和報(bào)告的 TxEQ
要在實(shí)際系統(tǒng)中驗(yàn)證鏈路均衡,可以使用示波器和協(xié)議分析儀,以及力科的PCIE CrossSync PHY軟件,將兩臺儀器鏈接在一起。 CrossSync PHY 安裝到示波器上,將來自兩臺儀器的數(shù)據(jù)關(guān)聯(lián)起來,以提供完整的鏈路可見性,讓您可以查看與協(xié)議分析儀的協(xié)議層數(shù)據(jù)在時(shí)間上相關(guān)聯(lián)的來自示波器的物理層波形。 此外,具有 CrossSync PHY 功能的信號采集卡可以監(jiān)測被測器件并向協(xié)議分析儀和示波器提供數(shù)據(jù)。
如何設(shè)置觸發(fā)
要確定鏈路均衡過程的有效性,需要在第 3 階段結(jié)束時(shí)檢查鏈路行為。 為此,將協(xié)議分析器配置為在速度更改為 16 GT/s 后出現(xiàn)的第一個(gè) TS2 有序集上觸發(fā) ,并設(shè)置示波器以捕獲多個(gè)鏈路的上行數(shù)據(jù)。此觸發(fā)設(shè)置將確保在完成最終均衡設(shè)置并轉(zhuǎn)換到活動 L0 狀態(tài)后捕獲數(shù)據(jù)。
如何檢查確認(rèn)報(bào)告的Preset
CrossSync PHY 上顯示的協(xié)議數(shù)據(jù)顯示了數(shù)據(jù)包詳細(xì)信息,例如數(shù)據(jù)包編號、有序集、數(shù)據(jù)速率和均衡控制,其中也包括Preset值。CrossSync PHY 還顯示了與協(xié)議數(shù)據(jù)在時(shí)間上相關(guān)的的示波器波形,顯示了發(fā)射機(jī)均衡的電氣效應(yīng)。 下圖中的示波器波形顯示了通道 1 和通道 2 上行信號的電氣行為明顯不同。為此,將協(xié)議分析器配置為在速度更改為 16 GT/s 后出現(xiàn)的第一個(gè) TS2 有序集上觸發(fā) ,并設(shè)置示波器以捕獲多個(gè)鏈路的上行數(shù)據(jù)。 此觸發(fā)設(shè)置將確保在完成最終均衡設(shè)置并轉(zhuǎn)換到活動 L0 狀態(tài)后捕獲數(shù)據(jù)。
確定是邏輯問題還是電氣問題?
仔細(xì)查看階段 3 結(jié)束時(shí)報(bào)告的 TxEQ 協(xié)議層數(shù)據(jù),顯示通道 0 和 2 報(bào)告已訓(xùn)練到 TxEQ P6,而通道 1 和 3 報(bào)告已訓(xùn)練到 TxEQ P10。這個(gè)結(jié)果表示了潛在的意外行為,可能是因?yàn)橐粋€(gè)通道誤報(bào)了其狀態(tài)。 一個(gè)設(shè)備訓(xùn)練不同的通道到不同的 TxEQ Preset并非不可能,而且 P6 是一種相對常見的Preset,許多設(shè)備在 16 GT/s 的信號質(zhì)量合規(guī)性測試中會使用它。但是,P10 并不是期望在實(shí)時(shí)鏈接中看到的Preset。 如前所述,它的存在主要是為了方便設(shè)備電氣測試,如果鏈路另一端的設(shè)備請求 P10,它不知道會發(fā)生什么。
放大物理層波形以檢查去加重程度
問題是通道 1 是否真的被訓(xùn)練到 P10,或者它是否錯(cuò)誤地報(bào)告它被訓(xùn)練到 P10。換句話說,這個(gè)意料之外的結(jié)果表示的是純粹的邏輯問題還是邏輯電氣問題? 要進(jìn)一步驗(yàn)證,可以在協(xié)議數(shù)據(jù)中,在第 3 階段結(jié)束附近選擇一個(gè) EIEOS 數(shù)據(jù)包,以放大相應(yīng)的示波器波形。EIEOS 數(shù)據(jù)包具有相對較少的轉(zhuǎn)換,在示波器時(shí)域波形上可以清楚地看到兩個(gè)信號之間的去加重差異。 如下圖所示,報(bào)告說它被訓(xùn)練到 P10 的通道比報(bào)告說它被訓(xùn)練到 P6 的通道在轉(zhuǎn)換后對信號的去加重程度要高得多。進(jìn)一步的驗(yàn)證證明,P10 通道比訓(xùn)練到 P6 的通道眼張開度小的多。此處的解決方案是檢查導(dǎo)致設(shè)備訓(xùn)練到 P10 的邏輯問題的固件。
總結(jié)
力科的PCIE CrossSync PHY 軟件可同步示波器和協(xié)議分析儀,讓您可視化、保存、調(diào)用和分析同步的示波器和協(xié)議分析儀數(shù)據(jù),以幫助解決 PCIe 均衡過程中可能出現(xiàn)的意外問題。一個(gè)與均衡后的鏈路行為相關(guān)的示例演示了如何使用 CrossSync PHY 軟件來調(diào)試異常鏈路行為。 除了驗(yàn)證有問題的鏈路訓(xùn)練行為外,PCIE CrossSync PHY還可以通過對邊帶信號、參考時(shí)鐘、數(shù)據(jù)通道和電源軌的可見性來幫助表征整個(gè)啟動序列,幫助觀察電氣和協(xié)議域中的速度變化。