By Paul McLellan, Cadence
PCIe 起源
PCIe (Peripheral Component Interconnect Express,週邊元件快(kuài)速互連) 是早期 PCI 匯流排的(de)升級版。PCI 由 Intel 開發,於 1992 年問世。它取代了(le)幾種陳舊的(de)、速度較慢(màn)的(de)匯流排,這些匯流排在早期的(de) PC 中以某種特殊的(de)方式使用(yòng)。PCI 主要是 32 位元的(de)匯流排,但是也(yě)支援 64 位。最重要的(de)一點是,PCI 是一種平行匯流排。如今,PCI 隻具有歷史意義,我們已經不再使用(yòng),所以在此就不再贅述。
2004 年,一群 Intel 工程師組建了(le) Arapaho 工作組,開始開發新的(de)標準。後來,其他(tā)公司也(yě)逐漸加入了(le)這個小組。該標準經過幾次更名,最後才確定為 PCI Express (PCIe)。在某些方面,PCIe 是 PCI 的(de)繼承者,因為它們的(de)功能類似。在其他(tā)方面,PCIe 是一種完全不同類型的(de)設計。尤其特別的(de)是,PCIe 是一種串列匯流排,比起 PCI 的(de)老式平行介面 (以及那個時代幾乎所有的(de)其他(tā)匯流排),它更像一個闆載網路。
PCIe 標準的(de)進化(huà)
最初的(de)標準是 PCIe 1.0a,每通(tōng)道資料速率為 250MB/s,總速率達到 2.5GT/s (每秒傳輸千兆bits)。與其他(tā)串列匯流排一樣,它的(de)性能也(yě)通(tōng)常以每秒傳輸量來衡量,以避免將附加位元算(suàn)作「資料」。PCIe 1.0a 使用(yòng) 8b/10b 編碼方案,因此隻有 80% 的(de)傳輸位元是真正的(de)「資料」。
附加位元主要有兩個功能 :
首先,它們確保始終有足夠的(de)時脈過渡供序列介面恢復時脈。
第二,它們可(kě)以確保沒有淨直流電流。
之後,該標準定期進行升級,傳輸速率更高(gāo)。由於 PCIe 主要用(yòng)於基於Intel處理(lǐ)器的(de) PC 和(hé)伺服器上,實際上,在Intel發佈使用(yòng) PCIe 的(de)處理(lǐ)器之後,新標準就開始生效了(le)。標準演進的(de)總體理(lǐ)念是挑選在當時的(de)主流工藝節點上可(kě)以實現的(de)傳輸速率。然而,PCIe 的(de)應用(yòng)非常普遍,因此無論底層架構如何,在大(dà)多(duō)數需要高(gāo)性能外設匯流排的(de)設計中,都會用(yòng)到 PCIe。例如,在 Arm 伺服器基礎系統架構規範中就規定了(le) PCIe 的(de)要求。
2007 年推出的(de) PCIe 2.0 將傳輸速率提高(gāo)了(le)一倍,但沿用(yòng)了(le)相同的(de)編碼方案。
2010 年推出的(de) PCIe 3.0 改用(yòng)了(le)效率更高(gāo)的(de) 128b/130b 編碼方案,並增加了(le)已知二進位多(duō)項式的(de)加擾功能,以在 0s 和(hé) 1s 的(de)時脈恢復之間取得(de)良好平衡,而且沒有直流偏置。這也(yě)顯著提高(gāo)了(le)傳輸速率。一個 16 通(tōng)道的(de) PCIe 3.0 介面的(de)傳輸速率達 15.7GB/s。但實際上,如果一個設計需要這樣的(de)頻寬,那麼升級到 PCIe 4.0 會更加輕鬆。如今,PCIe 3.0 是出貨設備中部署最廣泛的(de) PCIe 版本。例如,Google TPU 3 中使用(yòng)的(de)是 PCIe 3.0,而目前的(de) USB4 標準也(yě)是基於 PCIe 3.0。PCIe 從標準獲得(de)批準到成為主流,花費了(le)近十年的(de)時間——這一點聽上去可(kě)能有點令人(rén)震驚。這與信用(yòng)卡的(de)採用(yòng)過程如出一轍:在很多(duō)人(rén)擁有信用(yòng)卡之前,商家因為麻煩不願意接受信用(yòng)卡支付,而在很多(duō)商家接受信用(yòng)卡支付之前,人(rén)們也(yě)不願意擁有信用(yòng)卡。
PCIe 4.0 保留了(le)相同的(de) 128b/130b 編碼方案,但傳輸速率再次翻倍,達到 16GT/s。Cadence 提供符合 PCIe 4.0 的(de) IP。PCIe 的(de)另一個重要方面是,其他(tā)協議是建立在基本傳輸機制和(hé) PHY 上的(de)。CXL 也(yě)搭載了(le) PCIe。從這些可(kě)以看到,PCIe 4.0 是當前設計的(de)主流。Intel 的(de) Tiger Lake 移動處理(lǐ)器支援 PCIe 4.0,AMD 的(de) Zen2 CPU 系列也(yě)是如此。這使得(de)它對任何一種外設晶片都很有吸引力,比如 SSD 控制器或網路,然後由於連鎖反應,它對其他(tā)非 x86 系統也(yě)很有吸引力。
PCIe 5.0 的(de)設計工作已經開始 (標準在 2019 年 5 月(yuè)獲得(de)批準),性能為 32GT/s。此外,人(rén)們還對 PCIe 6.0 (最終標準尚未獲得(de)批準) 感興趣,其性能為 64GT/s,並改用(yòng)了(le) PAM4 信令,提供四個電壓水(shuǐ)準,因此每個時脈週期有兩個比特 (bits)。自從 Cadence 在 112G SerDes 中開始使用(yòng) PAM4 信令以來,我們已經積累了(le)豐富的(de)經驗,詳情參閱文章(zhāng)《DesignCon 論文下(xià)載 | 如何實現 112G SerDes 的(de)信號完整性》。
從設計和(hé) IP 的(de)角度來看,它是主流,所以本文的(de)其餘部分(fēn)將集中關注 PCIe 4.0 和(hé) 5.0 版本 (並稍微探討未來的(de) 6.0 版本)。
主流版本:PCIe 4.0、5.0 和(hé) 6.0 版本應用(yòng)
隨著越來越多(duō)的(de)系統升級,市場上也(yě)有越來越多(duō)的(de)產品上市,PCIe 5.0 的(de)應用(yòng)正在加速。話雖如此,PCIe 3.0 和(hé) 4.0 仍然是目前最成熟的(de) PCIe 介面,作為各種 I/O 用(yòng)例的(de)主要互連形式,被廣泛部署在大(dà)量的(de)應用(yòng)中。正如前文所說,PCIe 6.0 的(de)時代即將到來,並且很多(duō)人(rén)都對此抱有期待。
顯然,在某種程度上,每一代 PCIe 都有更高(gāo)的(de)性能,但這不僅僅體現在資料表上表現突出的(de)數位上——更可(kě)以實現更強大(dà)的(de)應用(yòng):
對於乙太網來說,PCIe 4.0 可(kě)以用(yòng)於 100G 和(hé) 200G。PCIe 5.0 可(kě)將其性能提升到 400G,目前已經可(kě)供使用(yòng)。而在未來,PCIe 6.0 將把這一數位提升到 800G。 |
|
對於固態硬碟 (SSD) 來說,PCIe 4.0 可(kě)以使傳輸速率達到約 7000MB/s,PCIe 5.0 將其提升到約 14GB/s,而 PCIe 6.0 應該會將其進一步提升到 28GB/s。 |
|
人(rén)工智慧 (AI) 和(hé) 機器學習 (ML) 需傳輸海量資料,PCIe 介面造成了(le)瓶頸。幾乎所有的(de)應用(yòng)都是如此,比如自動駕駛、醫療成像、基因組測序、資料採擷等等。無論是在 CPU、GPU、FPGA,還是在 ASIC/SoC(如 Google 的(de) TPU)上進行訓練/推理(lǐ),瓶頸都是 PCIe。 |
|
記憶體級記憶體 需要利用(yòng) PCIe 5.0 和(hé) PCIe 6.0 的(de)高(gāo)性能。 |
|
在汽車領域,目前的(de) ADAS(高(gāo)級駕駛輔助系統)使用(yòng)的(de)是 PCIe 4.0,但未來的(de)自動駕駛需要更高(gāo)的(de)性能來處理(lǐ)所有的(de)攝像頭、雷達和(hé)雷射雷達收集到的(de)資料。 |
|
AWS、Microsoft Azure 和(hé) Google Cloud 等公司用(yòng)於雲計算(suàn)的(de)超大(dà)規模資料中心可(kě)以充分(fēn)利用(yòng)所能獲得(de)的(de)所有頻寬,特別是實現主 CPU (Intel、AMD 或 Arm) 與加速器 (如NVIDIA GPU 或 Xilinx/ Intel FPGA) 之間的(de)連接。 |
瞭解更多(duō)
請參閱 以下(xià)內容瞭解更多(duō) PCIe 內容及 Cadence 為其提供的(de)解決方案:
譯文授權轉載出處
長按識別 QRcode,關注「Cadence 楷登 PCB 及封裝資源中心」