《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 業(yè)界動(dòng)態(tài) > HT高速總線及其在嵌入式系統(tǒng)中的應(yīng)用

HT高速總線及其在嵌入式系統(tǒng)中的應(yīng)用

2008-12-08
作者:王 江

??? 摘? 要: 介紹了HT總線的特點(diǎn),并比較了其與傳統(tǒng)PCI總線及競(jìng)爭(zhēng)者PCIe總線的異同點(diǎn),闡述了HT總線的優(yōu)勢(shì),HT總線在嵌入式系統(tǒng)" title="嵌入式系統(tǒng)">嵌入式系統(tǒng)中的設(shè)計(jì),、應(yīng)用和調(diào)試經(jīng)驗(yàn),。?

??? 關(guān)鍵詞: HT總線;? PCIe;? PCI?

?

?

??? 隨著CPU頻率的不斷提升,CPU內(nèi)核數(shù)目的不斷增加,CPU與外設(shè)" title="外設(shè)">外設(shè)之間的連接——I/O" title="I/O">I/O總線的速度逐漸為阻礙計(jì)算機(jī)平臺(tái)發(fā)展的瓶頸,。例如,廣泛應(yīng)用于計(jì)算機(jī)內(nèi)模塊互連的PCI總線的速度已經(jīng)成為木桶中的“短板”,。PCI總線是一種共享式總線,一般工作頻率" title="工作頻率">工作頻率為33MHz,當(dāng)工作頻率提升到66MHz時(shí),外設(shè)的數(shù)目就屈指可數(shù),。HT總線正是為了克服這一瓶頸及追求更快的速度,、更低的時(shí)延而誕生的,。?

1 HT總線的特點(diǎn)?

??? 超高速HT(HyperTransport)總線是AMD公司主導(dǎo)推出的新一代總線技術(shù),。HT總線是點(diǎn)對(duì)點(diǎn),、低延時(shí),、高速可擴(kuò)展總線,在軟件上與原有的PCI總線完全兼容。HT總線采用DDR時(shí)鐘,上下沿都可觸發(fā),在400MHz工作頻率下,相當(dāng)于800MHz的傳輸頻率,。HT總線的最低頻率為200MHz,可以向300MHz,、400MHz、500MHz,、600MHz,、800MHz、1GHz、1.2GHz,、1.4GHz,、1.8GHz、2.0GHz,、2.4GHz擴(kuò)展(最新的HT3.0標(biāo)準(zhǔn)支持2.6GHz時(shí)鐘[1]);HT總線的單向數(shù)據(jù)寬度可以是2位,、4位、8位,、16位,、32位;頻率和數(shù)據(jù)寬度可以設(shè)置成收發(fā)不對(duì)稱,最大帶寬達(dá)到41.6GB/s。芯片之間采用HT總線的典型連接如圖1所示,。?

?

?

??? HT總線采用改進(jìn)的低電平差分信號(hào)(LVDS),接口電壓為1.2V(傳統(tǒng)LVDS電平為2.5V),改進(jìn)的LVDS能降低功耗和噪聲,每個(gè)方向有時(shí)鐘(CLK),、控制(CTL)和數(shù)據(jù)(CAD)三類信號(hào)。CAD是復(fù)用信號(hào),CTL決定了CAD承載的是控制包還是數(shù)據(jù)包,。如果CTL為低電平,則CAD上就是數(shù)據(jù)包,否則是控制包,。每8對(duì)CAD信號(hào)配備一個(gè)時(shí)鐘信號(hào)。RESET和PWROK是低速信號(hào),用于控制冷啟動(dòng)和熱啟動(dòng),。另外,還有可選的LDTSTOP#信號(hào)和LDTREQ#信號(hào),用于電源管理,。?

??? HT3.0標(biāo)準(zhǔn)將HT的應(yīng)用范圍從芯片級(jí)擴(kuò)展到了板級(jí)和機(jī)箱級(jí)。它支持熱插拔,并支持真正動(dòng)態(tài)的頻率和帶寬(HT3.0之前的標(biāo)準(zhǔn)需要熱啟動(dòng)以后才能使變更后的頻率和帶寬生效)調(diào)整,。動(dòng)態(tài)地改變頻率和帶寬可以使系統(tǒng)在數(shù)據(jù)量大時(shí)增加帶寬并提高頻率,而在數(shù)據(jù)量小時(shí)降低頻率或減少帶寬,從而降低了功耗和電磁輻射,體現(xiàn)了HT總線的靈活性和可擴(kuò)展性,。HT的帶寬可以聚合和拆分,例如,16位寬的HT總線可以拆分成2條8位寬的HT總線,反之亦然。?

??? HT總線另一大特點(diǎn)是:當(dāng)數(shù)據(jù)位寬不是32位時(shí),可以分批傳輸數(shù)據(jù)來達(dá)到與32位相同的效果,。例如,如果數(shù)據(jù)位寬為16位,32位的數(shù)據(jù)則分兩批傳輸;如果數(shù)據(jù)位寬為8位,32位數(shù)據(jù)則分四批傳輸,。這種數(shù)據(jù)分包傳輸?shù)姆椒?使HT總線在應(yīng)用上具有更大的彈性空間。?

??? 目前有四類HT總線設(shè)備[2]:?

??? (1) 主橋(Host)設(shè)備:類似PCI總線上的北橋,。?

??? (2) 終端(Cave)設(shè)備:HT總線的末端,例如具有一個(gè)HT接口的加密芯片。?

??? (3) HT橋:類似PCI橋,從一條HT總線擴(kuò)展出多條HT總線,。?

??? (4) 管道(Tunnel)設(shè)備:有2個(gè)HT接口,可擴(kuò)展其他類型總線,。管道設(shè)備兩側(cè)的總線號(hào)保持不變,這是它與HT橋的主要區(qū)別。?

??? 這些設(shè)備可以使設(shè)計(jì)師方便靈活地利用HT總線構(gòu)建菊花鏈型,、星型,、網(wǎng)格型等多種拓樸結(jié)構(gòu)。為了支持并行計(jì)算和多處理器" title="多處理器">多處理器(SMP)的發(fā)展,HT提供了二種原子操作指令:(1)數(shù)據(jù)讀取并增加;(2)數(shù)據(jù)比較并交換,。這些指令給多處理器操作系統(tǒng)中旋轉(zhuǎn)鎖和數(shù)據(jù)一致性操作的實(shí)現(xiàn)提供了極大的便利,。?

2 HT總線與PCI總線的比較?

??? 因?yàn)镠T總線發(fā)展的初衷是取代PCI等低速I/O總線,提高計(jì)算機(jī)平臺(tái)的整體性能,所以在軟件上,HT總線的驅(qū)動(dòng)和配置方式與PCI兼容。這樣,可以充分利用現(xiàn)有及廣泛使用的PCI軟件,如果硬件平臺(tái)升級(jí)成HT互連方式,操作系統(tǒng)和相關(guān)驅(qū)動(dòng)軟件可以保持不變,。?

??? 在硬件上,HT總線與PCI不同之處:?

??? (1)速度快:HT總線采用了點(diǎn)對(duì)點(diǎn)互連,并采用了LVDS信號(hào),速度可達(dá)2.6GHz;而PCI基于波反射原理的共享式總線,要兼顧各個(gè)設(shè)備的走線阻抗匹配,速度最高為66MHz(PCI-x能達(dá)到533MHz),。共享式總線增加一個(gè)設(shè)備不但會(huì)影響整條總線的電氣特性,而且使平均設(shè)備帶寬急劇下降。?

??? (2) HT總線的頻率動(dòng)態(tài)可調(diào),而PCI總線需要額外的電路才能調(diào)節(jié)頻率,并且需要重啟總線才能生效。?

??? (3) HT總線收發(fā)信號(hào)完全分開,兩個(gè)方向的頻率和數(shù)據(jù)寬度可不對(duì)稱,擴(kuò)展性強(qiáng),而PCI總線無此特性,。?

??? (4) HT總線的數(shù)據(jù)寬度動(dòng)態(tài)可調(diào),PCI總線不可調(diào),。?

??? (5) HT總線是在確保對(duì)端設(shè)備具有反應(yīng)能力的前提下,才發(fā)起操作,是低延時(shí)可靠傳輸;PCI總線則不然,延時(shí)較大。?

??? (6) PCI總線需要仲裁信號(hào),而HT是點(diǎn)對(duì)點(diǎn)連接,不需要仲裁信號(hào),。?

??? (7) PCI總線有報(bào)錯(cuò)信號(hào),而HT是依靠控制包來報(bào)錯(cuò),。?

??? (8) PCI總線有中斷信號(hào),而HT是依靠控制包來管理中斷。?

??? 總體而言,與PCI相比,HT的信號(hào)類型少,許多功能由控制包來完成,。?

??? 業(yè)界常用平均每引腳吞吐量來衡量I/O總線的性價(jià)比:?

??? (1)運(yùn)行在頻率為66MHz的PCI總線,平均每引腳吞吐量約為:6.95MB/s(264MB/s [66MHz×4B]/38引腳 [32根數(shù)據(jù)線+5根控制線+1根時(shí)鐘線])?

??? (2)而運(yùn)行在最低頻率200MHz下的HT總線的平均每引腳吞吐量約為:22MB/s(1600MB/s [200MHz×2DDR×4B]/74引腳[32個(gè)CAD信號(hào)對(duì)+4個(gè)時(shí)鐘信號(hào)對(duì)+1個(gè)CTL信號(hào)對(duì)])?

??? 由此可見,HT總線與PCI/PCI-x總線相比占有明顯優(yōu)勢(shì),。?

3 HT總線與PCIe總線的比較?

??? PCIe是Intel公司主導(dǎo)推出的連接外設(shè)的I/O總線,它在軟件上完全向下兼容傳統(tǒng)的PCI總線,是HT總線的主要競(jìng)爭(zhēng)者,兩者都是點(diǎn)對(duì)點(diǎn)連接。PCIe的傳輸包分為三層:協(xié)議層,、鏈路層和物理層,。前兩層都在純數(shù)據(jù)上增加頭信息,協(xié)議層的頭占12~16字節(jié),鏈路層的頭占8字節(jié),物理層進(jìn)行8b/10b轉(zhuǎn)換,增加了20%的數(shù)據(jù)量。而HT的數(shù)據(jù)包頭只占8~12字節(jié),所以HT能夠獲得比PCIe更高的傳輸效率,。表1列出了兩者的吞吐量比較,其中PCIe考慮到了20%的轉(zhuǎn)換損耗,。?

?

?

??? 由于PCIe的8b/10b轉(zhuǎn)換需要SerDes模塊,所以耗能較多。而HT采用了獨(dú)一無二的優(yōu)先請(qǐng)求插入(PRI)技術(shù)來提高帶寬利用率,即控制包可以插入到一個(gè)數(shù)據(jù)包的傳輸過程中,。一個(gè)數(shù)據(jù)包在傳輸過程中可以被打斷或稱為暫停,插入一個(gè)控制包后,這個(gè)數(shù)據(jù)包中的剩余數(shù)據(jù)被繼續(xù)傳輸,。PRI特性非常有用,尤其是控制包傳送的是“讀請(qǐng)求”,對(duì)端不需要等待當(dāng)前數(shù)據(jù)包完全接收后就已經(jīng)接收到了控制包,并準(zhǔn)備或者已經(jīng)把數(shù)據(jù)發(fā)送回去了。?

4 HT總線在嵌入式系統(tǒng)中的應(yīng)用?

??? 因?yàn)镠T總線最初是AMD公司在1999年提出的一種總線技術(shù),隨著AMD 64位平臺(tái)的發(fā)布和推廣,HT在PC平臺(tái)中的應(yīng)用越來越廣泛,也越來越被人們所熟知,。目前,HT聯(lián)盟已經(jīng)包括了Broadcom,、Cisco、PMC,、Sun,、Agilent、Apple,、Altera,、Cadence、Dell,、HP,、IBM、Xilinx等眾多芯片廠商和設(shè)備,、工具制造商,。HT接口已經(jīng)廣泛集成到各類功能芯片之中。HT總線在嵌入式系統(tǒng)領(lǐng)域也正在逐步取代PCI等傳統(tǒng)I/O總線,。?

??? 圖2是利用HT總線構(gòu)建的一個(gè)高性能嵌入式系統(tǒng),可用于網(wǎng)絡(luò)處理,、路由、復(fù)雜計(jì)算等高端應(yīng)用,。HT如同一條主干道,連接了主橋,、HT管道設(shè)備,、網(wǎng)絡(luò)處理器等器件。HT橋擴(kuò)展了主橋的HT接口,HT-PCI管道器件將HT口轉(zhuǎn)換到PCI接口,用于連接傳統(tǒng)的PCI設(shè)備;HT-GE管道器件擴(kuò)展出千兆以太網(wǎng)口,。HT終端設(shè)備可以是網(wǎng)絡(luò)處理器(NPU),、安全處理器(IPSec)、南橋等器件,。這些具有HT接口的器件都可以在市場(chǎng)上找到,。例如,RMI公司的XLR732就是一種具有HT接口的網(wǎng)絡(luò)處理器。?

?

?

??? HT還可用于處理器間的互連,建立并行計(jì)算平臺(tái),。例如,Broadcom的BCM1480是高性能4內(nèi)核MIPS處理器[3],具有三個(gè)HT接口,。HT總線可以將多個(gè)BCM1480互連,組成分布式超高性能的計(jì)算平臺(tái),如圖3所示。HT總線的原子操作特性方便多處理器操作系統(tǒng)中自旋鎖的實(shí)現(xiàn),并支持內(nèi)核,、一級(jí)緩存,、二級(jí)緩存、內(nèi)存和HT設(shè)備之間的數(shù)據(jù)一致性,。

?

?

4.1 HT接口的初始化?

??? HT總線定義了冷啟,、熱啟和鏈接初始化三個(gè)啟動(dòng)步驟。當(dāng)HT器件的電源和時(shí)鐘正常后,PWROK信號(hào)必須保持低電平并至少維持1ms,。當(dāng)PWROK信號(hào)變高后,RESET信號(hào)也必須維持至少1ms低電平,。RESET信號(hào)變高后,HT兩端的器件通過控制包協(xié)商頻率和帶寬,這完全由硬件完成,其頻率默認(rèn)為200MHz,而帶寬由雙方器件窄的一側(cè)決定,但最寬不超過8位。硬件協(xié)商的結(jié)果能夠保證HT總線兩端建立起正常安全的通信,但性能不是最優(yōu)的,。然后,啟動(dòng)代碼或驅(qū)動(dòng)軟件負(fù)責(zé)優(yōu)化HT配置,通過讀取兩側(cè)器件的帶寬能力和頻率能力配置寄存器,決定雙方都能接受的最大帶寬和最高頻率,。?

??? HT配置空間中有一個(gè)寄存器可以觸發(fā)熱啟。熱啟和冷啟的區(qū)別在于,熱啟后HT器件的實(shí)際帶寬,、頻率和寄存器不變,而冷啟后都恢復(fù)為默認(rèn)配置,。?

4.2 HT總線的調(diào)試?

??? 因?yàn)镠T總線的信號(hào)類型少,所以調(diào)試比PCI簡(jiǎn)單。首先是測(cè)量接口電壓;然后測(cè)量PWROK信號(hào)和RESET信號(hào)的時(shí)序,確保滿足規(guī)范的要求,。如果是非對(duì)稱配置,則還需測(cè)量不用的CAD信號(hào)是否端接正常,。發(fā)送側(cè)不用的信號(hào)可以懸空,但接收側(cè)必須接地;最后查看配置空間的鏈接寄存器,如果硬件協(xié)商成功,則其“初始化完成”位將置1。還可以觸發(fā)CRC測(cè)試來檢查鏈路是否正常,。?

??? 在默認(rèn)配置的HT總線工作正常后,可以逐步增加帶寬,、提高頻率、結(jié)合CRC鏈路測(cè)試來優(yōu)化HT總線配置,。在調(diào)試中除了焊接問題外,經(jīng)常遇到的問題:一是遺忘對(duì)無用CAD信號(hào)的端接,二是頻率提不到雙方允許的最大值。后者往往由于差分走線不等長(zhǎng),、不平行,、阻抗不匹配等高速布線方面的缺陷而引起。?

??? 實(shí)時(shí)性和低延遲一直是現(xiàn)代通信系統(tǒng)追求的目標(biāo),特別是以計(jì)算為中心的IMS(IP多媒體子系統(tǒng))標(biāo)準(zhǔn)對(duì)通信設(shè)備提出了更高的要求,。芯片互連速度直接影響了設(shè)備和系統(tǒng)的性能,尤其是基于IP的下一代網(wǎng)絡(luò)的質(zhì)量,。目前新涌現(xiàn)出的I/O總線,如HT,、PCIe、RapidIO,在相互競(jìng)爭(zhēng)中不斷發(fā)展完善,。由于PCI使用廣泛使得這些總線在軟件上兼容PCI是一大優(yōu)勢(shì)(RapidIO在軟件上并不兼容PCI總線),作為新秀中的佼佼者,HT總線為CPU與CPU之間,、CPU與外設(shè)之間的互連提供了最低的時(shí)延和最高的帶寬,并且簡(jiǎn)化了系統(tǒng)設(shè)計(jì),應(yīng)用范圍從計(jì)算機(jī)逐漸向嵌入式系統(tǒng)、電信設(shè)備,、儀器儀表,、汽車電子等領(lǐng)域擴(kuò)展,具有廣闊的發(fā)展前景。?

參考文獻(xiàn)?

[1]?HyperTransport Technology Consortium. HyperTransportTM?I/O link specification revision 3.0. 2006. ?

[2]?ANDERSON D, TRODDEN J. HypertransportTM system?architecture. MindShare, Inc., 2003.?

[3] Broadcom Inc. BCM1480 User’s Manual. 2003.
本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。