Loading AI tools
處理器互連總線 来自维基百科,自由的百科全书
HyperTransport匯流排技術,簡稱「HT匯流排」,以前曾被稱作「閃電數據傳輸」(Lightning Data Transport,LDT),是一種電腦處理器的互聯技術。它是一種高速、雙向、低延時、對等(P2P)、串行或者並列的高頻寬連接匯流排技術,最早在1999年由超微半導體提出並發起,並聯合NVIDIA、ALi、ATI、Apple、全美達、IBM、CISCO等多個硬件廠商組成HyperTransport開放聯盟,於2001年4月2日開始將此匯流排技術投入使用,並由HyperTransport聯合會(The HyperTransport Consortium)負責改進和發展此技術。[1][2][3][4]
賣場中常有「HT匯流排」與日後英特爾「HT技術」的混淆,然而這兩個是截然不同的技術。HT一般指HyperTransport,或簡稱HT匯流排,一般情況下HyperTransport聯合會都是使用全稱「HyperTransport」以免造成歧義。而應用於奔騰4處理器、英特爾Nehalem微架構及其後續微架構之處理器的「HT技術」,英特爾的官方簡稱是HTT,Hyper-Threading Technology 或簡稱HT Technology(HT技術)。
HyperTransport旨在提高個人電腦、伺服器、嵌入式系統,以及網絡和電信裝置內集成電路之間的通訊速度。該技術有助於減少系統之中的布線數量,從而能夠減少系統瓶頸,讓當前速度更快的微處理器能夠更加有效地在高端多處理器系統中使用系統主記憶體。英特爾在使用QPI以前常用的前端匯流排,與同時代的HyperTransport匯流排規格相比,後者擁有更高的頻寬以及記憶體存取速率,而英特爾的技術,要求不同的RAM存取速率範圍要有各自的連接介面,這種設計導致了若要減少匯流排頻寬瓶頸,勢必會增加主機板的佈線設計複雜度。HT匯流排的擴展HTX3.1在最高頻寬時,可以作為一個統一匯流排容納四根DDR4模組的所需頻寬,若需要容納更多的DDR4記憶體,則可能需要兩個或更多的HTX3.1匯流排控制器,然而這樣做會使每個控制器的傳輸值降低。
主要特性:
現時HT匯流排的一個擴展規格HTX3.1,相對於在2014年面世的高速DDR4記憶體以及較慢的TeraByte級(約1GB/s[5],與高階PCIe SSD類似)ULLtraDIMM快閃型隨機存取記憶體(RAM)技術,仍然在競爭中佔上風。
HyperTransport迄今推出了4個版本——1.x、2.0、3.0、3.1,它們之中運作頻率最低200MHz,最高3.2GHz(而PCI匯流排頻率為33MHz或66MHz)。它也是一種雙倍數據速率(DDR)連接技術,意味着它可以在一個時鐘訊號的上行沿和下行沿各傳輸一次數據。HT3.1當執行在3.2GHz時可以最高以6400MT/s傳遞數據。而且它具有自適應性,允許根據當前的運算需求,在晶片組(北橋)或處理器中確定自己的頻率。此外,HyperTransport的資料傳輸模式是雙向傳輸、各向獨佔、同時進行的。[6]
HyperTransport支援自適應位元寬度,範圍從每鏈路2位元到32位元;每個HyperTransport控制器還有兩路單向鏈路。在HT3.1版本中,當運作於32位元每鏈路、以及HT3.1的最高規格的時脈時,理論傳輸值可達每個傳輸方向25.6GB/s(3.2GHz×每時鐘週期傳輸兩次×每鏈路32位元之位寬),或雙向共51.2GB/s的頻寬,幾乎比現有的個人電腦、工作站以及伺服器的匯流排標準都要高,同樣也是高效能運算及網絡中最快的匯流排標準(註:QPI在英特爾的技術說明上不屬於匯流排,儘管它的頻寬最大可以超過HT匯流排之最高頻寬)。[7][8]
在單個系統中,它允許不同寬度的鏈路混合連接,比如一個系統中CPU使用16位元鏈路,8位元連接至記憶體而另外8位元連接外圍裝置;除此以外還支援鏈路拆分,不同位寬標準的匯流排可以變為同一位寬標準的匯流排(比如說,其中單個16位元的鏈路可以拆分為兩個8位元的鏈路),這就令Hypertransport既能滿足CPU和主記憶體之間的互聯,也能滿足周邊裝置之間的互聯。而且HyperTransport擁有比其他的匯流排解決方案標準更低的延遲。此外,為滿足多個裝置的連接,HyperTransport還支援菊花鏈的手段實作之。[9]連接對象除了SMP系統中處理器與處理器、普通個人電腦的處理器與晶片組以外,還有路由控制晶片、晶片組的南北橋晶片、其它匯流排的控制器等等,只要連接對象擁有HyperTransport控制器,即可進行連接,無需中介介面。[2]
電訊號格式上,HyperTransport使用類似於低電壓差分訊號(LVDS)的1.2V運作電壓。[10]HT2.0加入post-cursor發射器去加重。HT3.0加入混雜和接收相位校準以及可選發射器前置去加重。[9]
HyperTransport的資料傳輸基於資料封包/包裹(Packet)。在HT匯流排中,不管連接的物理位寬是多少,每個包裹總是由32位元的數據集合組成。命令訊息總是放在包裹的最前面。如果一個包裹裡面包含有地址,那麼命令訊息的最後8位元數據和下面的32位元數據就會串成一個40位元的地址。如果有64位元定址的需求,那麼就會預先計劃一個附加的32位元控制封包。另外的32位元數據是有效數據(payload)。傳輸的數據不管實際長度是多少,總會被填充到某個32位元的倍數。[9][8]
HyperTransport的包裹以位次(bit times)的方式實現互聯。所需要的位次的數量由互聯裝置之間的位寬決定。HyperTransport還能用於轉換系統管理資訊、傳送中斷、傳送探針給鄰近的裝置或者處理器,以及充當一般I/O和數據的交換的橋樑。HyperTransport有兩種不同類型的寫命令,稱作Posted和Non-Posted。Posted這種寫方式不需要目標的回應,一般用於高頻寬裝置之間的互聯。None-Posted的寫方式,相反地,就需要目標以一種「target done」的方式回應。讀取數據同樣也會使目標傳送讀回應。[6]HT匯流排支援多重處理,和PCI相同的consumer/producer次序規則模型。[9]
HyperTransport提供了比ACPI更加先進的電源管理系統。它可以根據處理器睡眠狀態(C State)的變化傳送改變裝置狀態(D state)的訊號。比如說,當CPU進入睡眠狀態時候,關閉硬碟。另外HyperTransport提供的是2.5V的低電壓。HT3.0中新增新的電源功能,允許一個集中式電源管理控制器實現電源管理策略。
HyperTransport 版本 |
發佈年份 | 最大HT匯流排時脈 | 每鏈路最大位寬 | 最大頻寬(雙向) | 單向16位元位寬之最大頻寬(GB/s) | 單向32位元位寬之最大頻寬* (GB/s) |
---|---|---|---|---|---|---|
1.0 | 2001 | 800 MHz | 32-bit | 12.8 GB/s | 3.2 | 6.4 |
1.1 | 2002 | 800 MHz | 32-bit | 12.8 GB/s | 3.2 | 6.4 |
2.0 | 2004 | 1.4 GHz | 32-bit | 22.4 GB/s | 5.6 | 11.2 |
3.0 | 2006 | 2.6 GHz | 32-bit | 41.6 GB/s | 10.4 | 20.8 |
3.1 | 2008 | 3.2 GHz | 32-bit | 51.2 GB/s | 12.8 | 25.6 |
HyperTransport最知名的應用,乃作為AMD的x86中央處理器產品[14]以及配套的晶片組的系統匯流排架構。[15]而HyperTransport的一個主要用處,就是用作取代英特爾定義的前端匯流排,使用HT匯流排的x86處理器不同於英特爾的處理器。比如,奔騰及其相容處理器產品不能直接控制使用PCIe匯流排。為了擴展系統,專有、專用的前端匯流排必須連接至各種標準匯流排控制器的適配器上,這些標準匯流排有AGP、PCIe等。而這些標準匯流排控制器,按速率、頻寬、功能分別整合至北橋晶片及南橋晶片上。
而相反,HyperTransport則是由多個公司組成的協會公佈並開放規格。一個包含一個HyperTransport適配器的晶片可與一顆開啟HyperTransport的微處理器運作於更高的頻寬上。
AMD在K7微架構開始,就隨AMD64技術一併使用了HyperTransport取代前端匯流排。K7及以後的微架構的Opteron、Athlon 64、Athlon II、Sempron 64、Turion 64、Phenom、Phenom II及AMD FX處理器上,都用上了HT匯流排與北橋連接。不過現時AMD APU、AMD Ryzen、AMD EPYC內建了北橋晶片,CPU與FCH的連接則是使用基於PCIe匯流排技術的UMI匯流排。[16]
AMD這樣做的是有鑒於CPU與記憶體溝通時,北橋的延遲問題做出解決方案,當將位於北橋內的記憶體控制器移動到CPU內部時,CPU便可直接與記憶體進行溝通,避開了北橋而讓整體頻寬大幅提升,減輕北橋的負擔,將整體效能拉升。這也就是為何當年AMD的CPU能夠與Intel抗衡的其中一個原因。[6]而這樣做,潛在的問題便是當記憶體規格有變動時,AMD將會非常頭痛。由於記憶體控制器內建在CPU裏面,當記憶體規格變動時,AMD便要重新設計內建新型記憶體控制器的CPU,重新量產新型CPU。考量到銷售問題,還必須要等到把前一代主流產品庫存銷售完,而這樣的問題在Socket 939過渡到Socket AM2時期非常明顯。所以當廠商開發新一代CPU時,除了需要把記憶體控制器內建在CPU裏面外,還必須要同時開發內建於CPU之中的「容許CPU使用北橋晶片內建的記憶體控制器的轉接器」,此方法不但有利於產品過渡,而且能夠吸引第三方設計廠商針對CPU平台共同設計系統晶片。同時,當使用獨立顯示卡時,當顯示卡頻繁呼叫系統主記憶體中的紋理與頂點數據時,必須先通過北橋,再繞行CPU,才能訪問系統主記憶體。相對比於Intel CPU則因為外置主記憶體控制器,可直接通過北橋連結主記憶體,而獲得更快的速度。這些因素也是英特爾的處理器在Nehalem微架構以前一直堅持使用前端匯流排的原因之一。
除AMD以外,全美達公司也把HyperTransport技術應用在自家的x86處理器上,如TM8000處理器。[17]除NVIDIA以外,併購ATI後的AMD、VIA和SiS也把它用於PC主機板的晶片組。[11]
國際商業機器(IBM)以及蘋果公司也將HyperTransport技術用於Power Mac G5上,將處理器、PCI-X控制器、SATA控制器、乙太網路卡、USB控制器、FireWire控制器、光纖數碼音頻等與兩組雙向的HyperTransport連結架構連接起來。甚至採用英特爾處理器的微軟XBox首代,其處理器也要透過NVIDIA的MCP以HyperTransport將GPU等連結。[9]PMC-Sierra、Broadcom(博通)和Raza Microelectronics則把它應用在MIPS微架構(一種RISC微處理器架構)微處理器上。
而英特爾卻從來沒有在它的產品中使用過HyperTransport,當年它繼續選擇使用一種共用的匯流排架構,繼續使用自有的匯流排/互聯介面標準,以照顧特殊的RAM級別。在Intel在新的Nehalem架構(如Core i7)中不僅採用全新的、效能更強的處理器互聯技術QPI與AMD主導的HT匯流排形成有力競爭,而且也內建了記憶體控制器,相較於以往的Intel平台效能有顯著的提升。[18]此外英特爾也在2001年的英特爾開發者討論區上公佈與HT匯流排競爭、基於PCI技術的3GIO,由AWG制定標準並於2002年移交PCI-SIG進行稽核和管理,成為現今的PCI-E匯流排。
HyperTransport的另一主要應用是非均勻存取模型(NUMA)電腦系統中多處理器的互聯。
AMD使用HyperTransport配合快取一致性擴展組件(包含於AMD自家的直接連接架構(Direct Connect Architecture)中)來實作,擁有該特性的處理器有Opteron以及Quad FX平台上的Athlon 64 FX產品線。
Newisys還基於AMD的技術,發展出HORUS連接器,用於高效能大型運算叢集。3Leaf Systems的Aqua裝置利用HyperTransport進行虛擬化下CPU、記憶體以及輸出/輸入的連接。
除此以外惠普、Sun Microsystems、IBM、和IWill把它用於伺服器領域;克雷公司和QLogic把它用於高效能計算上。
HyperTransport也可用作路由器和網絡交換器的內部匯流排。路由器和交換器有多重網絡介面,並且需要在這些介面上盡可能快地快速轉發資料。舉個例子,4個1Gbps的乙太網路連接埠若需要全速連接則需要8Gb/s的內部頻寬(1Gb/s×4連接埠×兩個傳輸方向),而HyperTransport匯流排可以輕鬆滿足這個頻寬要求。然而一個4+1連接埠的10Gb/s級路由器則要求100Gb/s的內部頻寬。802.11ac 8天線、WiGig 60GHz(802.11ad)標準,配合HyperTransport等高頻寬匯流排,會變得更具可行性(但任何地點需使用20至24通道以滿足所需頻寬)。最早是CISCO Systems(思科)把HyperTransport用於路由器領域。
中央處理器和協處理器之間的延時和頻寬問題,在實作中一直是它們之間的通訊效能的絆腳石。而目前像是現場可程式邏輯門陣列(FPGA)的協處理器,可以支援HyperTransport匯流排。現時主要的FPGA製造商Altera和Xilinx,它們的產品都可直接支援HyperTransport介面,並且有知識產權核(IP核)可供出售。而一些公司,像是XtremeData、DRC等,則以上述FPGA廠商的產品,開發出一種可供FPGA直接使用Opteron處理器插座的轉接模組。
AMD在2006年9月21日公佈並啟動的名為Torrenza專案,致力於提升HyperTransport在插卡式裝置與協處理器中的使用。開始將Socket F用於開放給像是XtremeData以及DRC有需要的公司使用。
HyperTransport聯合會除了發佈片上和板上使用的HyperTransport匯流排規格以外,還發佈了基於插座式連接埠的規格,以供外圍裝置直接連接至相應的微處理器或控制器等。這個規格被稱為HyperTransport eXpansion(縮寫:HTX)。HTX使用和PCI-E 16x相同的物理連接器(外加一個與PCI-E x1規格相同的連接器作為電源連接),HTX可使這些擴展卡支援與CPU的直接連接以及以DMA方式存取系統記憶體。最早使用HTX連接埠的擴展卡是QLogic的InfiniPath InfiniBand HCA。後來IBM、惠普電腦以及更多的公司陸續發佈支援HTX的系統產品。
最初,HTX標準被限定在16位元,運作時脈800MHz。[19]
2008年8月,HyperTransport聯合會發佈HTX3,其運作時脈達到了2.6GHz(5.2GT/s,10.7GTi,資料傳輸等效時脈5.2GHz,3MT/s的編輯速率),可向下相容原來的HTX標準。[20]
定義「DUT」測試連接器來開啟標準化功能測試系統互聯。[21]
Infinity Fabric,是AMD於2016年公佈的一個基於HyperTransport擴充而來的互聯架構,用於CPU內部/之間、GPU內部/之間以及CPU和GPU之間的互聯,Infinity Fabric並不相容於HyperTransport。與HyperTransport不同的是,Infinity Fabric是AMD專有的知識產權核,其它廠商需要購買AMD的授權方可使用。[22]頻寬在30GB/s至512GB/s之間,根據組態需求而定,Zen微架構處理器、代號「Vega」的AMD GPU都由Infinity Fabric實作其內聯的產品。
Infinity Fabric分為兩部分,一個是Infinity Scalable Data Fabric(SDF),負責資料的傳輸;而另一個部分是Infinity Scalable Control Fabric(SCF),負責傳輸控制命令。SDF的傳輸協定、記憶體一致性和快取一致性基於HyperTransport的修改而來,不過實際上由於這些的大幅修改,與原來HyperTransport的相容變得不可能。除此以外,SDF還可根據不同的處理器系統進行修訂,例如,GPU、APU以及CPU所用的SDF是不一樣的,伺服器平台上SDF甚至可運行於PCIe匯流排上。不過,Infinity Fabric也就僅限於主機板範圍內的使用,以主機板為一節點,節點之間的連線,AMD則是採用開放標準的Gen-Z。[23]
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.