PCI-e包括Card Electromechanical、SFF-8639 Module、oCUlink、Mini Card和M.2,External Cabiling,Label & usage guidelines、Firmware Specification、225/300W High Power Card。
說明:PCI-Express是一種高速串行計算機外設擴展總線,是當前主流的總線和接口標準,它原來的名稱為“3GIO”,INTEL交由PCI-SIG(PCI特殊興趣組織)認證發布改名為“PCI-Express”。這個標準全面取代了舊的PCI,PCI-X和AGP總線。它們的前2代分別為PCI和PCI-X。PCI總線使用并行總線結構,在同一條總線上的所有外部設備共享總線帶寬,而PCIe總線使用了高速差分總線,并采用端到端的連接方式,因此在每一條PCIe鏈路中只能連接兩個設備。
最高速率:32 GT/s,16通道配置時速率可達128GBps.
圖片來自網絡
一、接口架構
PCIe總線使用了高速差分總線,并采用端到端的連接方式。與PCI總線不同,PCIe總線使用端到端的連接方式,在一條PCIe鏈路的兩端只能各連接一個設備,這兩個設備互為是數據發送端和數據接收端。PCIe總線除了總線鏈路外,還具有多個層次,發送端發送數據時將通過這些層次,而接收端接收數據時也使用這些層次。如下圖4-1為PCIe總線的物理鏈路模型。
PCIe有差分對1~32對,它義了1、2、4、8、12、16和32對等各種配置,它為全雙工通信。比如Wi-Fi 可以使用低速鏈路(只要1個LINK)而3D圖形卡則需要多個鏈路。1條LANE有4根信號線,有兩個差分對,分別負責發射2根,負責接收2根。在PCIe總線的物理鏈路的一個數據通路(Lane)中,由兩組差分信號,共4根信號線組成。其中發送端的TX部件與接收端的RX部件使用一組差分信號連接,該鏈路也被稱為發送端的發送鏈路,也是接收端的接收鏈路;而發送端的RX部件與接收端的TX部件使用另一組差分信號連接,該鏈路也被稱為發送端的接收鏈路,也是接收端的發送鏈路。一個PCIe鏈路可以由多個Lane組成。如下圖所示,它們之間是交流耗合(通過電容)。
圖1 PCI-Express系統拓撲結構
截止當前,PCI-Express已經推出了5個版本,分別是:
1)2002年4月推出的PCI-Express 1.0,單通道帶寬為2.5Gbps *2 (因為PCE-Express收發通道獨立,可以同時工作,所以帶寬加倍),有效帶寬為2.5Gbps 20.8=4Gbps
=500MByte/s(PCI-Express通道中傳輸的數據經過了8B/10B編碼,編碼效率為80%)。
2)2006年推出的PCI-Express 2.0,單通道帶寬為5Gbps *2,有效帶寬為5Gbps 20.8=8Gbps=1GByte/s。
3)2010年推出的PCI-Express 3.0,單通道帶寬為8Gbps *2,有效帶寬為10Gbps
20.8=16Gbps=2GByte/s。
4)2017年推出的PCI-Express 4.0,單通道帶寬為16Gbps *2,有效帶寬為16Gbps
20.8=24Gbps=3GByte/s。
5)2019年5月推出的PCI-Express 5.0,單通道帶寬為32Gbps 2,有效帶寬為32Gbps2*0.8=51.2Gbps。
使用LVDS,each lane consists of two unidirectional LVDS pairs。
二、工作原理
在PCIe總線的物理鏈路的一個數據通路(Lane)中,由兩組差分信號,共4根信號線組成。其中發送端的TX部件與接收端的RX部件使用一組差分信號連接,該鏈路也被稱為發送端的發送鏈路,也是接收端的接收鏈路;而發送端的RX部件與接收端的TX部件使用另一組差分信號連接,該鏈路也被稱為發送端的接收鏈路,也是接收端的發送鏈路。一個PCIe鏈路可以由多個Lane組成。
高速差分信號電氣規范要求其發送端串接一個電容,以進行AC耦合。該電容也被稱為AC耦合電容。PCIe鏈路使用差分信號進行數據傳送,一個差分信號由D+和D-兩根信號組成,信號接收端通過比較這兩個信號的差值,判斷發送端發送的是邏輯“1”還是邏輯“0”。
與單端信號相比,差分信號抗干擾的能力更強,因為差分信號在布線時要求“等長”、“等寬”、“貼近”,而且在同層。因此外部干擾噪聲將被“同值”而且“同時”加載到D+和D-兩根信號上,其差值在理想情況下為0,對信號的邏輯值產生的影響較小。因此差分信號可以使用更高的總線頻率;此外使用差分信號能有效抑制電磁干擾EMI(Electro Magnetic Interference)。由于差分信號D+與D-距離很近而且信號幅值相等、極性相反。這兩根線與地線間耦合電磁場的幅值相等,將相互抵消,因此差分信號對外界的電磁干擾較小。當然差分信號的缺點也是顯而易見的,一是差分信號使用兩根信號傳送一位數據;二是差分信號的布線相對嚴格一些。
PCI-e總線特點:
1)雙單工,點對點傳輸,每個Lane包含4根線,2收2發,使用LVDS差分信號,最小差模電壓175mV,共模電壓3.5V,最長可傳輸3m。
2)基于包的數據傳輸方式,支持QOS、VC、TC等特性,支持熱插拔,支持電源管理。
3)對傳輸的數據進行8B/10B變換,調整碼流的DC特性,方便接收端的時鐘信號恢復。
4)接口帶寬可裁減,使用靈活,可根據實際帶寬需求選擇合適的Lane數量。PCI-Express支持1X、2X、4X、8X、16X、32X(每個“X”代表一個Lane),并且向下兼容其他PCI-E小接口產品。如PCI-E 4X可以插在PCI-E 8X或16X插槽上使用。中國通信人博客v#~.h kg!Y JL9E
5)支持通道反轉,給PCB走線帶來更大的靈活性。(此特性并非PCI-E規范強制要求),
6)支持極性倒置功能,方便PCB調線。
PCI-Express總線物理層由邏輯子層和電氣子層構成。邏輯子層負責鏈路的復位,設置鏈路的速率和帶寬,Deskew的測量和補償,8B/10B編碼和解碼。
發送端包括:
接收端包括:
- 接收PLL
- 串行/并行轉換器
- 彈性緩沖器
- 10B/8B解碼器
- 去擾頻器
- 字節反拆分邏輯
- 控制字節刪除電路
- 數據包接收緩沖
PCI-Express總線的每個Lane有3對信號,其中參考時鐘信號可選。如下圖所示。
PCI-Express總線的參考時鐘為100MHz,精度要求為±300ppm,收發兩端的參考時鐘可以獨立,也可以連接在一起,如果連接在一起,則收發兩端參考時鐘可以保持同步。如下圖所示。
PLL是鎖相環,用來鎖定收發通道的參考時鐘,CDR的英文全稱是Clock Data Recover,時鐘數據恢復的意思。CDR的典型框圖如下。
PCI-Express總線100MHz時鐘的電平匹配方式如下所示。
下拉電阻的取值范圍為40~60ohm,一般取49.9ohm,串阻的阻值一般根據實際信號幅度進行調整,一般取33ohm,串阻和下拉電阻都放在始端。PCIE信號一般用AC耦合方式,耦合電容放在始端(這里需要特別注意下,一般高速信號的AC耦合電容都是要求放在終端的,PCIE信號AC耦合電容的位置很特別的),電容取值范圍為75nF-100nF。
PCIE通道的Deskew,所謂的Deskew是指通道與通道的相位偏移,其主要來源有:
1)芯片驅動端和接收端的差異;
2)印制電路板的阻抗變化;
3)通道線路長度的不匹配;
4)串行化和反串行化邏輯所引入的延遲。
PCIE接收端為了能并行處理數據,必須要去除通道與通道的相位偏移,此動作稱為鏈路的相位補償,具體方法是通過微調芯片內部的自動延遲電路來實現的。PCIE規范要求,在發送端需要擁有1.5nS的Deskew補償能力,在接收端需要擁有20nS的補償能力。所以PCIE總線對個通道的走線長度約束非常寬松,不需要像并行總線那樣做等長處理。
PCIE總線支持SSC(拓展頻譜時鐘)技術,SSC是一種緩慢調制時鐘頻率的技術,以便降低中心頻率處的EMI發射,有了SSC,輻射能量就不會產生2.5GHz或5GHz的噪聲尖峰信號,因為輻射被分散到中心頻率周圍的小頻率范圍上。使用SSC時,鏈路兩端的最大時鐘差異必須在±600ppm,這就幾乎強制要求發送端和接收端使用同以參考時鐘。
PCIe總線物理鏈路間的數據傳送使用基于時鐘的同步傳送機制,但是在物理鏈路上并沒有時鐘線,PCIe總線的接收端含有時鐘恢復模塊CDR(Clock Data Recovery),CDR將從接收報文中提取接收時鐘,從而進行同步數據傳遞。
值得注意的是,在一個PCIe設備中除了需要從報文中提取時鐘外,還使用了REFCLK+和REFCLK-信號對作為本地參考時鐘, 時鐘信號為差分對REFCLK+和 REFCLK-,如下圖所示:
在PCIe總線中,使用GT(Gigatransfer)計算PCIe鏈路的峰值帶寬。GT是在PCIe鏈路上傳遞的峰值帶寬,其計算公式為總線頻率×數據位寬×2。
2.2 上電和掉電時序
2.3 復位
PCIe系統復位信號是異步、低電平有效輸入信號。系統輸入時鐘的頻率必須是100MHz或250MHz,PCI-Express系統的時鐘控制方式有兩種:其一就是使用同步實時控制,其中所有器件共用一個時鐘源,另一種是使用非同步控制,其中各器件使用自己的時鐘源.
2.4 供電
PCIe設備使用兩種電源信號供電,分別是Vcc與Vaux,其額定電壓為3.3V。其中Vcc為主電源,PCIe設備使用的主要邏輯模塊均使用Vcc供電,而一些與電源管理相關的邏輯使用Vaux供電。在PCIe設備中,一些特殊的寄存器通常使用Vaux供電,如Sticky Register,此時即使PCIe設備的Vcc被移除,這些與電源管理相關的邏輯狀態和這些特殊寄存器的內容也不會發生改變。
在PCIe總線中,使用Vaux的主要原因是為了降低功耗和縮短系統恢復時間。因為Vaux在多數情況下并不會被移除,因此當PCIe設備的Vcc恢復后,該設備不用重新恢復使用Vaux供電的邏輯,從而設備可以很快地恢復到正常工作狀狀態。
PCIe鏈路的最大寬度為×32,但是在實際應用中,×32的鏈路寬度極少使用。在一個處理器系統中,一般提供×16的PCIe插槽,并使用PETp015、PETn015和PERp015、PERn015共64根信號線組成32對差分信號,其中16對PETxx信號用于發送鏈路,另外16對PERxx信號用于接收鏈路。
三、應用設計
3.1 通用與PCB要求
PCIe設備使用兩種電源信號供電,分別是Vcc與Vaux,其額定電壓為3.3V。其中Vcc為主電源,PCIe設備使用的主要邏輯模塊均使用Vcc供電,而一些與電源管理相關的邏輯使用Vaux供電。在PCIe設備中,一些特殊的寄存器通常使用Vaux供電,如Sticky Register,此時即使PCIe設備的Vcc被移除,這些與電源管理相關的邏輯狀態和這些特殊寄存器的內容也不會發生改變。Vaux 的使用降低功耗和縮短系統恢復時間。
在應用設計時,注意差分線之間的耦合電容(如下圖中的C105~C112,0.1uF/16V)要靠近TX端放置。根據PCIe標準,同一個差分對(如TX或RX)中的+(P)與-(N) 可交換使用。注意TX 和RX 差分信號阻抗控制為100 歐姆+-20%,單端阻抗為60歐+-15%。
為保證信號質量,要求PCB LAYOUT時保證:
a. 完整的參考平面;
b. 信號間距不小于20mil;
c. 走線盡量走off-angle 線,或者是圓弧線;
d. 在換層的地方添加回流地via;
e. 盡量避免出現stub 的情況;
f. 如果PCI-e 信號線通過金手指進行通信,則金手指下面需要全部掏空;
g. 信號線長度盡量短,關于長度,對于芯片之間,若是MICROTRIP LINE最長15.5英寸,如是STRIPLINE則最長為18英寸;對于芯片與連接器之間,長度限制為12英寸;對于邊緣金手指到芯片之間,長度限制為4英寸。
對于PCB Stackup堆疊要求,TX一般放在Top Layer,普通FR-4 4層板也可以,其順序為S/P/G/S(S為信號,P為電源,G為地)。微帶線MICROSTRIP LINE使用0.5 OZ銅厚,STRIPLINE使用1 OZ銅厚。下圖為一示例參考。注意:條件允許時,盡量把差分對與對之間的間距拉開以減少串擾。
3.2 時鐘要求
時鐘為100MHz,支持SSC。如下圖所示。
3.3 供電要求
供電如下。
四、測試與驗證
根據PCI-SIG提供的CTS測試要求,要求TX和RX眼圖規格大致如下。
測試與驗證主要關注信號完整性SI,其中Loss損失和Jitter抖動特別關鍵。
測試時,必須使用以下輔助控制板才能完成SI的驗證:
- Compliance Base Board (CBB) for add-in card measurements
- Compliance Load Board (CLB) for system board measurements
使用實時數字示波器測試眼圖,其要求是6GHz模擬帶寬analog bandwidth,20G以上的抽樣帶寬sampling bandwidth,并且此種示波器必須具備眼圖eye diagram信號分析的軟件工具 SW tool。
探頭位置:在測試Tx Signals時,連接到50歐負載上;在測試Rx Signals時,在測試包的輸入腳上。
示波器的后處理:
- Create transition bit eye建立過渡比特的眼圖
- Create de-emphasized eye建立去加重的眼圖
測試的目的是確定以下參數:
- Max jitter 最大抖動
- Min eye voltage margin (high/low)最大眼圖電平(高/低)
- Max AC common mode voltage 最大交流共模電壓
評論
查看更多