<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

聊聊PCIe Bus總線

sakobpqhz ? 來源:了不起的云計算 ? 2023-04-13 11:10 ? 次閱讀

今天這篇文章,我們來聊聊PCIe Bus(PCIe總線)。 Bus在國內被理解成汽車,在國內還有一種解釋是總線的意思。其實這兩種翻譯還是有共通之處。以我們生活中例子來說,Bus是兩個城市中溝通的重要連通方式,而總線則是計算機之間聯通的重要方式。 我們想從天津去北京辦點事,那么可以乘坐長途大巴,電腦則需要通過PCIe的Bus。簡單來說,Bus總線是多個硬件之間的一條通信公路。

與公路相對應的是,PCIe也有不同的規范,就像高速一樣,不同的道路也有不同的限速,比如國道和高速,寬度和最高行駛速度都不同。這個就對應著PCIe1.0、PCIe2.0、PCIe3.0、PCIe4.0這些規范。

但即使是同一條公務,行駛在不同的線路上也有不同的限速,這個就是跟PCIe1.0不同擴展槽的性能類似,例如PCIE x16/x8/x4/x1四種擴展方式能夠支持的最大傳輸速度也是不一樣的。 可以說,PCIe總線是計算機設備樹的重要組成部分,幾乎所有外圍硬件的擴展都需要PCIe上,今天我們就來聊聊PCIe發展史。

01挖挖PCIe的祖先們

在多年以前,計算機主板上不同的設備所使用的的總線接口是完全不一樣的,硬盤有硬盤對應的總線接口,網卡有網卡對應的總線接口。 這樣好處是每個設備都有對應的總線接口,優化性能簡單。但對于個人來說,隨著擴展設備的逐漸增多,如果都在主板上擴展對應的總線接口,有點得不償失,同時造成了主板拓展的局限性,也對硬件規格的統一帶來很多的不便。 為了解決這個瓶頸,IBM和Intel聯手,在1981年第一代IBM PC XT機型上采用了第一代ISA插槽,作為現代PC的開山之作,當時8位的ISA提供了4.77MB/s的帶寬(或傳輸率)。

由于兼容性好,一經推出,ISA總線就受到了各個廠商的歡迎,成為了上個世紀80年代最廣泛使用的系統總線。但由于ISA使用的是并行總線,當時的抗干擾技術也不成熟,就導致ISA總線的帶寬不能設計的很高,只能達到8MB/s的速率。 這個傳輸速度對于在90年代逐漸出現的像圖像這種大數據傳輸需求來說還是有點"不夠勁兒"。 除了速度慢這個缺點,還有就是ISA總線接口上的設備不能自動配置,無法即插即用。再加上IBM自作聰明在PS/2產品線上引入了MCA總線,迫使其他幾家PC兼容機廠商聯合起來搗鼓出來EISA。這些都導致了ISA總線最終被淘汰。 在1992年,Intel搞出了自己的殺招,提出PCI(Peripheral Component Interconnect)總線協議,并靠著自己在PC領域的強大影響力,召集了一堆小伙伴組成了名為 PCI-SIG (PCI Special Interest Group)(PCI 特殊興趣組J)的企業聯盟。從那以后這個組織就負責PCI總監的標準制定和推廣。

不得不點贊下Intel這種先見之明,在90年代就開始建立自己的"朋友圈",相比于封閉的IBM,英特爾合作共贏的心態讓PCI標準得到了廣泛推廣和使用。統一的標準也有利于外圍設備制造商的創新,從那以后各種各樣的PCI設備應運而生,豐富了PC的整個生態環境。 相比ISA總線,PCI總線帶寬升級到了132MB/s,速度提升非常明顯。再就是支持自動配置,即插即用。

但PCI總線也并不是完美的,PCI總線跟ISA總線都是使用了并行總線設計,所以傳輸速度也受到了影響。再就是PCI總線的帶寬共享機制,在高負載下,其他設備可能會出現搶帶寬的現象,也不支持熱插拔。 于是為了解決PCI總線的缺陷,技術再一次進行了升級革新,2004年,Intel再一次帶領小伙伴革了PCI的命也就是本篇文章要說的PCI Express(簡稱PCIe)總線了。如今計算機已經開始是第五代(gen5,5.0),而且在計算機中更是更為了不可或缺的存在。

如今,PCIe可以支持的設備非常多,常見的有顯卡、固態硬盤(PCIe接口形式)、無線網卡、有線網卡、聲卡、視頻采集卡、PCIe轉接M.2接口、PCIe轉接USB接口、PCIe轉接Tpye-C接口等。

02PCIe的傳輸速度和寬度

PCIe總線有兩種存在形式,一種是接口、一種是通道。當PCIe以接口形式存在的時候,就是主板上橫著的長槽。有人可能會問,這長槽有啥作用,為啥我的主板上的長槽長短不一呢?

這些長槽其實是PCIe不同的接口,常見的PCIe接口主要有四種尺寸,X1、X4、X8、X16,一般情況下四種尺寸的插槽最大帶寬是不同的。它們的速度是不一樣的,X16的PCIe速度就是X8的兩倍,X8就是X4的兩倍。當然,上面這段話都是建立在同一代PCIe總線之上的。

那么PCIe的吞吐量是怎么算出來的呢?首先我們來看下不同PCIe接口尺寸的計算公式:吞吐量=傳輸速率*編碼方案*物理信道Lane 以PCIe4.0x4為例,該系列為4.0版本的PCIe,包含4個物理信道Lane,每個通道的吞吐量為: 16GT/s x 128b/130b =1.969GB/s 所以PCIe4.0x4的吞吐量為:1.969GB/s x 4 = 7.877GB/s,如果是PCIe4.0x16,吞吐量最大就是64GB/s。

134fd176-d9a5-11ed-bfe3-dac502259ad0.png

除了吞吐量不同,不同的PCIe的尺寸的應用有啥不同呢?我們就來詳細看下X1、X4、X8、X16的應用情況。

1365d2d2-d9a5-11ed-bfe3-dac502259ad0.jpg

PCIe x16插槽:如上圖所示,PCIe x16插槽全長89mm,有164根針腳,靠主板外側端有一卡口,將16x分為前后兩組,較短的插槽有22根針腳,這個是用于供電,每個尺寸的插槽都有這個22根針腳的供電設計。較長的插槽142根,主要用于數據傳輸,具有16通道所帶來的高帶寬。 目前來看,PCIe x16插槽,主要用于GPU顯卡以及RAID陣列卡等,這個插槽擁有優良的兼容性,可以向下兼容x1/x4/x8級別的設備,而且具有更強的傳輸性能,可以說是PCIE x16插槽是PCIE的萬能插槽。 由于PCIe x16插槽常用于顯卡,與CPU處理器直接相通,在物理位置上直接靠近CPU,這樣顯卡與處理器之間的數據交換就可以減少延遲,讓系統的性能可以得到充分的發揮。

PCIe x8插槽:全長56mm,有98根針腳,與PCIe x16比較,主要是數據針腳減少至76根,短的供電針腳仍然是22針腳。 為了兼容性,PCIe x8插槽通常加工成PCIE x16插槽的形式,但數據針腳只有一半是有效的,也就是說實際帶寬只有真正的PCIE x16插槽的一半??梢杂^察主板布線,x8的后半段沒有線路連接,甚至針腳也沒有焊接。 實際上除了旗艦級或服務器的主板,能提供多條真正的PCIex16插槽外,大多數的主板,只會提供一條真正的PCIe x16插槽,就是最靠近CPU的那條。而第二條和第三條PCIe x16插槽,則多數是PCIe x8甚至是x4級別的。

PCIe x4插槽:長度為39mm,同樣是在PCIE x16插槽的基礎上,以減少數據針腳的方式實現,主要用于PCIe SSD固態硬盤,或者是通過PCIE轉接卡安裝的M.2 SSD固態硬盤。 PCIe x4插槽通常由主板芯片擴展而來,不過隨著cpu內部PCIE通道數的增多,現在有部分高端主板可以開始提供直連cpu的PCIE x4插槽,用于安裝PCIE SSD固態硬盤。 不過與PCIe x8插槽一樣,PCIe x4插槽為了兼容性,現在多數也是做成PCIe x16插槽的形式,或是擴展為M.2接口,用于安裝M.2 SSD、M.2無線網卡或者其它M.2接口設備,其余擴展卡則留給PCIE x1插槽負責。

PCIE x1插槽:長度僅有25mm,相比PCIE x16插槽,其數據針腳是大幅度減少至14個。PCIE x1插槽的帶寬通常由主板芯片提供,主要用途是獨立網卡、獨立聲卡、USB 3.0/3.1擴展卡等都會用到PCIE x1插槽,甚至可以通過轉接線給PCIE x1插槽裝上顯卡,用來挖礦或者實現多屏輸出。 X1的另外一個重要作用就是是用來替代原來的PCI設備的。

03PCIe未來會怎樣?

PCIe接口從2001年發展至今,在協議的完整性上已經建立足夠高的"護城河",重新定義一個接口協議在性能上超越PCIe,短期內一方面沒有企業會有這個動力,另一方面技術的維度,也沒有可預期的雛形創新。 但"成"也Intel ,"阻礙"也在Intel。 我們都知道,Intel在CPU發展方面一直以"擠牙膏"著稱,其實在PCIe方面,Intel擠牙膏那是更嚴重。 一般來說,規范確定到商品化需要1~2年的時間,就像摩爾定律估算的差不多,每過1~2年,其實產品就需要升級進化。 但是靠著英特爾靠著自己的壟斷優勢,在PCIe升級方面則是亦步亦趨。從2004年發布PCIe1.0以后,到2023年新一代服務器的發布,PCIe5.0才開始逐漸出現在主板上。 而且可以說,PCIe 5.0是PCIe發展的重要分水嶺,這是因為人算不如天算,Intel沒想到大數據AI、視覺渲染、基因分析以及EDR仿真等需求的突然爆發,讓PCIe的數據傳輸已經趕不上GPU的需求。

為了解決PCIe在數據傳輸的限制,早在幾年前,市場上幾種不同的傳輸和內存語義協議逐漸出現--IBM的OpenCAPI內存接口協議、Xilinx的CCIX協議、NVIDIA的NVLink協議、惠普企業版的Gen-Z協議,都是為了解決PCIe4.0傳輸過慢的問題。 眼看著大家都在革PCIe的"命",在2019年3月份Intel推出了CXL(Compute Express Link)協議接口,將CXL協議封裝到PCIE鏈路層數據包中傳送,并在CPU端的PCIE總控后端按照事務標識分流CXL專屬事務給CXL處理邏輯處理。 Intel希望能夠讓CPU與GPU、FPGA或其他加速器之間實現高速高效的互聯,從而滿足高性能異構計算的要求。最值得注意的是CXL標準的接口規格與PCIe 5.0是兼容的,從而讓CXL協議讓PCIe5.0上可以運行,進一步鞏固PCIe在計算機里的影響力。

13b3ce1a-d9a5-11ed-bfe3-dac502259ad0.png

Intel的策略是,既然CPU等需求趨勢已經來襲,堵不如疏,不如把GPU、DPU等用作一把刀,來與NVIDIA形成某種制衡,如今,NVIDIA也加入了CXL聯盟,對Intel來說,反正我建了通往內存的"高速路",你GPU怎么走都得聽我的。

通過這種方式,也能進一步制衡GPU的發展,一顆CPU想支持幾個GPU,還得通過Intel說了算。 值得注意的是,第四代英特爾至強可擴展處理器每一顆處理器支持最多4個CXL設備,支持CXL Type1和CXL Type2。)這些將提升服務器的綜合能力,為內存密集型和IO密集型場景提供更高價值。

04最后

2022年1月,PCI-SIG 組織今日正式發布了 PCIe 6.0 標準。作為CXL 3.0軟件棧協議規范的物理連接承載平臺,PCIe 6.0主要用于CPU與GPU(AI加速器)、CPU與DPU(智能萬卡NIC)、以及CXL內存模塊(可以理解為其他CPU DDR內存)的連接,對應的應用場景,如大內存、以及不同外設緩存之間的直接數據交換。 對于這些場景而言,PCIe 6.0接口子系統高達64GT/s的數據傳輸速率,對于異構計算架構的影響意義重大。






審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    18563

    瀏覽量

    224074
  • USB接口
    +關注

    關注

    9

    文章

    684

    瀏覽量

    55124
  • ISA
    ISA
    +關注

    關注

    0

    文章

    53

    瀏覽量

    43673
  • SSD
    SSD
    +關注

    關注

    20

    文章

    2726

    瀏覽量

    115897
  • PCIE總線
    +關注

    關注

    0

    文章

    57

    瀏覽量

    13292
收藏 人收藏

    評論

    相關推薦

    M-Bus總線概述、特點及工作原理

    M-Bus(Meter Bus)即儀表總線,M-Bus總線開發的目的是用于滿足網絡系統和遠程抄表的需要。M-
    發表于 07-14 09:58 ?1904次閱讀
    M-<b class='flag-5'>Bus</b><b class='flag-5'>總線</b>概述、特點及工作原理

    TSS721A,M-Bus,瑞盟MS726儀表總線收發電路

    、快捷、可靠。在M-BUS、RF、GPRS網絡組合發展前,也曾通過RS232/RS485網關(即M-Bus總線轉RS485/RS232轉換模塊)與服務器連接。 可以這樣理解,市場上的C-Bus
    發表于 03-08 17:59

    PCIE總線基本資料

    本帖最后由 eehome 于 2013-1-5 10:11 編輯 PCIE總線基本資料
    發表于 08-06 10:47

    PCIE總線的FPGA設計方法

    `PCIE總線的FPGA設計方法`
    發表于 10-30 14:30

    PCIE總線詳細資料

    PCIE總線詳細資料
    發表于 02-15 15:23

    PCIe總線的復位方式是什么?

    PCIe總線規定了兩個復位方式:conventional Reset和FLR(FunctionLevel Reset),而Conventional Reset由進一步分為兩大類:Fundamental Reset和Non-Fundamental Reset。
    發表于 10-16 08:19

    PCIe總線和PCI總線有哪些不同之處呢

    PCIe是什么?PCIe的架構是由哪些部分組成的?PCIe總線和PCI總線有哪些不同之處呢?
    發表于 10-26 08:10

    Bus/總線布線時如何做到等長

    Bus/總線布線時如何做到等長 Bus走線模式是在13.6版本中可以實現的模式,現在14.x以及15.0都已
    發表于 09-28 12:45 ?1607次閱讀

    令牌總線(Token Bus),令牌總線是什么意思

    令牌總線(Token Bus)令牌總線是什么意思 令牌總線網絡類似于令牌環網絡,其中,站點可與在網絡上進行發送之前,必須擁有一個
    發表于 03-22 10:02 ?2786次閱讀

    CAN-bus現場總線基礎方案_通信

    CAN-bus現場總線基礎方案_通信
    發表于 02-07 17:16 ?13次下載

    CAN-bus現場總線基礎方案_工具

    CAN-bus現場總線基礎方案_工具
    發表于 02-07 17:17 ?20次下載

    PCIE總線的多DSP系統接口設計

    PCIE總線的多DSP系統接口設計
    發表于 10-31 10:42 ?23次下載
    <b class='flag-5'>PCIE</b><b class='flag-5'>總線</b>的多DSP系統接口設計

    在orcad中使用Bus總線時的注意事項

    答:在orcad中使用Bus總線的時候,有以下幾個注意事項,如下列: ? 總線不是強制使用的,不使用總線也是可以的,使用總線構架是使得原理圖
    的頭像 發表于 09-06 10:48 ?2469次閱讀

    聊聊PCIe BusPCIe總線

    PCIe接口從2001年發展至今,在協議的完整性上已經建立足夠高的"護城河",重新定義一個接口協議在性能上超越PCIe,短期內一方面沒有企業會有這個動力,另一方面技術的維度,也沒有可預期的雛形創新。
    發表于 04-13 11:10 ?3565次閱讀

    什么是M-Bus總線協議?

    有線傳輸方式第四期:M-Bus總線在之前的文章中小編介紹了其他幾種常用的有線傳輸通信方式,感興趣的小伙伴可以點擊下方標題查看。前文指路《什么是CAN總線?》《什么是串口通信?串口常見通信問題如何解
    的頭像 發表于 07-31 23:08 ?891次閱讀
    什么是M-<b class='flag-5'>Bus</b><b class='flag-5'>總線</b>協議?
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>