編者按
PCIe發展至今已經從最初的1.0升級到了6.0,但很多人對于PCIe只知其然而不知其所以然,小編今天就帶大家一起來看一看。
要想了解什么是 PCIe,首先我們要來聊聊什么是總線。
如果把主板看作一座城市,那么總線就像是城市里的公共汽車,能按照固定行車路線,傳輸來回不停運作的比特。
在很久以前,我們的電腦并不像如今這樣有統一的接口與總線規范。那時想要給主板做拓展有很大的局限性,因為主板上的接口基本只能對應一個硬件設備,各大廠商之間的規范也各不相同,就是在這樣的大環境下,ISA (Industry Standard Architecture)誕生了。
ISA總線是IBM公司為PC/AT電腦而制定的總線標準。由于兼容性好,ISA在上個世紀80年代是最廣泛采用的系統總線,不過它的弱點也是顯而易見的,比如傳輸速率過低、CPU占用率高、占用硬件中斷資源等。ISA總線的淘汰也成了必然。
1992年6月,英特爾發明了名為外部鏈接標準也就是Peripheral Component Interconnect的接口規范,縮寫為PCI。PCI接口的特性在于采用的是并行傳輸方式,根據連接的數據寬度和頻率不同,能夠達到不同的數據傳輸速度。 相較上一代 ISA,PCI 有著明顯的速度提升,同時還能夠自動配置資源,支持即插即用,很快就在各大廠商之間的混戰中占領市場。
不過PCI的帶寬有限,對日益強悍的GPU等高性能單元來說逐漸成為了瓶頸。因此,基于PCI的技術又發展出了AGP等專用于圖形卡的總線接口標準。AGP依舊是并行傳輸數據。
隨著系統性能進一步提升,對帶寬要求越來越大。PCI和AGP這樣的并行傳輸技術,無法在當時的技術條件下帶來性能的進一步提升。
終于在2001年,非營利組織PCI-SIG召集了英特爾、AMD、博通、IBM、微軟等廠商提出了PCIe(Peripheral Component Interconnect Express)新總線標準。
PCIe屬于高速串行點對點雙通道高帶寬傳輸,所連接的設備分配獨享通道帶寬,不共享總線帶寬,主要支持主動電源管理、錯誤報告、端對端的可靠性傳輸、熱插拔以及服務質量(QOS)等功能。PCIe的主要優勢就是數據傳輸速率高,而且還有相當大的發展潛力。
PCIe也有多種規格,x1、x4、x8、x16、x32,x 后面的數字代表 PCIe 插槽有多少條通道(數據如何進出 PCIe 卡)。一個 PCIe x1 插槽有一個通道,可以每個周期傳輸一位數據。一個 PCIe x2 插槽有兩個通道,每個周期可以傳輸兩位數據(依此類推)。
大多數臺式電腦主板都有許多 PCIe 插槽,可用于添加通用顯卡、各種外設卡、無線網卡或固態硬盤等等。PC 中可用的 PCIe 插槽類型將取決于你購買的主板。
在使用中你可以將PCIe x1卡插入PCIe x4或者x16的插槽中,但該卡將始終在 PCIe x1 模式下運行。同樣的,你也可以將 PCIe x8 卡插入 PCIe x4 插槽,但它只能使用一半的帶寬。
下圖展示了 PCIe 規范隨時間的演變:
2003年-2010年:PCIe 1.0 - PCIe 3.0
PCIe 技術始于 2003 年,PCIe 1.0數據速率為 2.5GT/s,PCIe 2.0 規范在 2006 年將數據速率翻了一番,達到 5.0 GT/s。前兩代 PCIe 技術使用 8b/10b 編碼,產生了 25% 的編碼開銷。
2010年,PCIe 3.0 將數據速率提高到了 8.0 GT/s ,并采用了新的 128b/130b 編碼機制,使每個引腳的帶寬比 PCIe 2.0 翻了一番。新的編碼機制通過采用三個隨機位翻轉檢測的故障模型確保了高可靠性,并具有多種創新方法來執行數據包的物理層幀,同時保留從上層發送的數據包格式。
PCIe 3.0規范還加入了一些增強信號指令,以及對數據完整性的優化,包括發送器和接收器以及拓撲結構等,再加上重新優化的PLL、數據通道等。此外,PCIe 3.0標準的更新版本PCIe 3.1在2014年11月發布,加入了包括電源管理、性能優化和功能拓展等多項改變,當然本質的數據傳輸能力沒有變化。
2017年10月:16.0 GT/s的PCIe 4.0
依照PCIe 1.0到PCIe 3.0的更新節奏來看,相對于2010年發布的PCIe 3.0,PCIe 4.0規范應該要在2014或2015年發布,但實際上,PCI-SIG直到2017年中才發布PCIe 4.0,較預期晚2、3年,這連帶也推遲了應用的時間。
PCIe 4.0花費了7年時間將數據速率從 8.0 GT/s 翻倍到 16.0 GT/s (每條通道大約 2GB/s,或總共 64GB/s)。PCIe 4.0 保留了相同的 128b/130b 編碼方案,PCIe 標準通過軟件和機械接口保持與舊規范和新規范的向后和向前兼容性。也就是說,PCIe 3.0卡可以在支持PCIe 4.0的主板上工作,PCIe 4.0卡也可以在PCIe 3.0主板上工作,但受限于PCIe 3.0接口的性能。
不過,作為處理器平臺龍頭廠商的Intel未能及時支持PCIe 4.0。當PCIe 4.0于2017年底發布后,在2019年前后進入推廣期,除了獲得一些網卡與SSD產品的支持之外,在主機與服務器平臺方面,也有IBM的Power 9,以及AMD的Zen 2架構處理器平臺支持,而后者也讓PCIe 4.0進入了x86平臺應用領域。
然而Intel的遲遲不支持導致PCIe 4.0一直無法真正進入主流應用階段。這個僵局直到2020年后才打破,但Intel平臺真正對PCIe 4.0的支持要等到2021年中才落實,至此,PCIe 4.0也才算是開始進入主流應用階段。
2019 年 5 月:32.0 GT/s 的 PCIe 5.0
過去幾年,計算領域發生了重大變化,云計算、邊緣計算以及人工智能、機器學習和分析等應用引發了對更快的數據處理和移動的需求。隨著計算和內存容量呈指數級增長,我們需要以更快的節奏維持 I/O 帶寬翻倍,以跟上新興應用程序的性能。
例如,400 Gb(或雙 200 Gb)網絡需要 32.0 GT/s 的 x16 PCIe 來維持帶寬。這就要求在PCIe 4.0架構之后不到兩年的時間里發布一個完全向后兼容的PCIe 5.0——這對于一個標準來說是一個重大的成就。
從 PCIe 4.0 到 PCIe 5.0 規范的演變主要是速度升級。128b/130b 編碼是將帶寬擴展到更高數據速率的協議支持,在PCIe 3.0和PCIe 4.0規范中已經內置了這種編碼。通道損耗擴展到 36 dB,同時對連接器進行了改進,以最大限度地減少頻率范圍增加所帶來的損耗。
PCIe 5.0 架構的增強功能之一是對備用協議的內置支持。隨著 PCIe 技術發展成為帶寬最高、能效最高和部署最廣泛的接口,某些用途需要額外的協議,例如,某些加速器和智能網卡可以緩存系統內存并將其內存映射到系統內存空間,以便在PCIe協議之外進行高效的數據交換。同樣,系統內存正在遷移到 PCIe PHY,因為它提供了高能效的高帶寬和低延遲解決方案。
PCI-SIG 預計 PCIe 4.0 和 PCIe 5.0 將在一段時間內共存,PCIe 5.0 用于對吞吐量要求高的高性能需求,例如用于 AI 工作負載和網絡應用程序的 GPU。因此,PCIe 5.0 將主要用于數據中心、網絡和高性能計算 (HPC) 企業環境,而不那么密集的應用(如臺式機應用)將適用于 PCIe 4.0。
2022 年1月:PCIe 6.0發布,速度為 64 GT/s
2022年1月11日,PCI-SIG正式發布了PCIe 6.0最終版本1.0,從技術上來說,PCIe 6.0是PCIe問世近20年來,變化最大的一次。
PCIe 6.0 規范目標要求
根據PCI-SIG的介紹,PCIe 6.0主要有三大變化:數據傳輸速率從32GT/s翻倍至64GT/s;編碼方式從NRZ 信令模式轉向PAM4信令模式;從傳輸可變大小TLP到固定大小FLIT。
PAM4信號
PCIe 6.0 規范引入了PAM4編碼方式,才讓PCIe 6.0的數據傳輸速率再次翻倍。在PCIe 6.0之前,各代PCIe采用的都是NRZ信令,即不歸零編碼,它采用0或1兩個電壓等級,每一個時脈周期只能傳輸1bit的信號。PAM4使用4個信號電平,而不是傳統的0/1兩個電平,單個信號就能有四種編碼(00/01/10/11)狀態。這使得PAM4可以攜帶兩倍于NRZ信令的數據。但它的代價是比特誤碼率 (BER) 更高。
盡管 PCIe 架構具有鏈路級重試 (LLR) 機制來重放受錯誤影響的事務,但由于重試而導致的帶寬損失使其在PAM4錯誤率下無法運行。因此,PCIe 6.0 規范結合使用輕量級前向糾錯(FEC)和 LLR 機制來滿足低延遲和低帶寬開銷的性能指標。此外,循環冗余校驗(CRC)方案提供了一個非常強大的錯誤檢測機制,可以抵消相關性的高錯誤率。
FLIT 模式
PCIe 6.0 引入了 FLIT 模式,其中數據包以固定大小的流量控制單元組織,而不是過去幾代 PCIe 中的可變大小。引入 FLIT 模式的最初原因是糾錯需要使用固定大小的數據包;但是,FLIT 模式還簡化了控制器級別的數據管理,從而提高了帶寬效率、降低了延遲并縮小了控制器占用空間。對于固定大小的數據包,不再需要在物理層對數據包進行成幀,這為每個數據包節省了 4 字節。FLIT 編碼還消除了以前 PCIe 規范中的 128B/130B 編碼和 DLLP(數據鏈路層數據包)開銷,從而顯著提高了 TLP效率,尤其是對于較小的數據包。
最 后
在實際應用方面,剛剛發布不久的PCIe 6.0目前自然還尚無具體進展,現在主流的應用還在PCIe 3.0和PCIe 4.0,不過PCIe 5.0已經進入初步的推廣期,自2021年底開始,便開始有廠商推出支持PCIe 5.0的高速網卡與SSD產品,并且一些新的GPU、CPU開始采用PCIe 5.0了。
這也讓當前的PCIe應用環境形成了3.0、4.0、5.0、6.0“四代同堂”的奇特現象,并且仍將持續一段時間。
整體而言,新一代PCIe 5.0與PCIe 6.0已經崛起,并陸續投入應用,PCIe 6.0帶來的新特性,包括64GT/s的數據速率、PAM4編碼方式、具有吞吐量和延遲優勢的 FLIT等等,必然會更好地推動行業發展。
審核編輯:湯梓紅
?
評論
查看更多