Rapid IO---成就高速互連之美

發(fā)布時(shí)間:2010-2-6 22:29    發(fā)布者:bakedham
關(guān)鍵詞: Rapid , 互連
在過(guò)去的30多年時(shí)間內,處理器的主頻和性能呈現指數上升的趨勢,而與之相對應的處理器總線(xiàn)傳送能力的增長(cháng)卻相對緩慢的多,這就導致了由時(shí)鐘頻率表征的CPU的性能和由總線(xiàn)頻率表征的CPU可用的總線(xiàn)帶寬之間的差距不斷在變大,互連總線(xiàn)成為高速運算和處理系統的瓶頸,F代的高性能計算系統和網(wǎng)絡(luò )存儲系統需要更高速率的數據傳送。高帶寬、低延遲,高可靠性成為衡量一個(gè)總線(xiàn)技術(shù)的基本要求。

一、 傳統總線(xiàn)的問(wèn)題

傳統總線(xiàn)多采用并線(xiàn)總線(xiàn)的工作方式,這類(lèi)總線(xiàn)一般分為三組:數據線(xiàn),地址線(xiàn)和控制線(xiàn)。實(shí)現此類(lèi)總線(xiàn)互連的器件所需引腳數較多,例如對于64位數據寬的總線(xiàn),一般由64根數據線(xiàn),32-40根地址線(xiàn)以及30根左右的控制線(xiàn),另外由于半導體制造工藝的限制還要加上一定數量的電源引線(xiàn)和地線(xiàn),總共會(huì )有約200根左右的引線(xiàn),這給器件封裝、測試、焊接都帶來(lái)了一些問(wèn)題,如果要將這種總線(xiàn)用于系統之間的通過(guò)背板的互連,由此帶來(lái)的困難就可想而知。

為了提高總線(xiàn)的傳輸能力,傳統總線(xiàn)多采用增加數據總線(xiàn)的寬度或是增加總線(xiàn)的頻率的方式來(lái)實(shí)現。如PCI總線(xiàn)支持25M、33M、50M、66M的工作頻率,PCI-X總線(xiàn)是在PCI總線(xiàn)結構的基礎上進(jìn)得到的一種總線(xiàn)結構,在硬件和軟件上兼容PCI總線(xiàn),PCI-X總線(xiàn)可以支持32bit、64bit的總線(xiàn),其工作頻率為66M、133M,對于64bit的PCI-X,如果其總線(xiàn)工作頻率為133MHz,其峰值傳送帶寬可達到133×64bit=8.512Gbps。目前PCI-X也有一些版本定義了總線(xiàn)頻率為266MHz或者533MHz的總線(xiàn),另外也有一些總線(xiàn)定義了數據寬度為128bit 或是256bit的總線(xiàn),但很少有人會(huì )選用這樣的總線(xiàn),因為增加總線(xiàn)頻率和數據帶寬雖然一定程度上滿(mǎn)足了人們對高速數據傳送的需求,但同時(shí)也帶來(lái)了一些新的問(wèn)題。更寬的總線(xiàn)導致器件引腳數的增加,從而增加封裝尺寸,當然帶來(lái)成本上的增加。

另一個(gè)問(wèn)題是當總線(xiàn)的工作頻率超過(guò)133MHz時(shí),很難在一條總線(xiàn)上支持超過(guò)兩個(gè)外部設備,在總線(xiàn)上增加器件相當于增加容性負載,而容性負載的增加意味著(zhù)裝載或排空電荷使總線(xiàn)達到所需的額定電平的時(shí)間增長(cháng),信號的上升和下降時(shí)間的增長(cháng)會(huì )限制總線(xiàn)的工作頻率。對于并線(xiàn)總線(xiàn)的另一個(gè)問(wèn)題是時(shí)鐘與信號的偏移容限的問(wèn)題,對于這樣一組并行信號線(xiàn)的集合,信號的采樣是取決于時(shí)鐘信號的上升沿或是下降沿,這樣對于信號的跳變和時(shí)鐘的跳變時(shí)刻的時(shí)間差就有一個(gè)上限值,隨著(zhù)速率的升高,布線(xiàn)長(cháng)度、器件門(mén)電路自身的翻轉時(shí)間都會(huì )影響總線(xiàn)的速率。

用于處理器之間互連以及背板互連的另一個(gè)主要技術(shù)是以太網(wǎng),近些年來(lái),以太網(wǎng)在存儲、電信、通訊、無(wú)線(xiàn)、工業(yè)應用以及嵌入式應用中得到大量的應用,現有的成熟的硬件和協(xié)議棧降低了開(kāi)發(fā)的復雜性和產(chǎn)品的開(kāi)發(fā)成本。但是在局域網(wǎng)和廣域網(wǎng)中得到很好應用的以太網(wǎng)用于這種芯片級或是板極的系統互連顯示出了低效率、高延時(shí)的特性,QOS需要高層軟件的參與,造成軟件模塊化結構不清晰。尤其是當背板的傳輸速率從1Gbps增加到10Gbps時(shí),增加的處理要求已經(jīng)超出了以太網(wǎng)的能力。

二、什么是Rapid IO

Rapid IO技術(shù)最初是由Freescale 和Mercury 共同研發(fā)的一項互連技術(shù),其研發(fā)初衷是作為處理器的前端總線(xiàn),用于處理器之間的互連,但在標準制定之初,其創(chuàng )建者就意識到了RapidIO還可以做為系統級互連的高效前端總線(xiàn)而使用。1999年完成第一個(gè)標準的制定,2003
年5月,Mercury Computer Systems公司首次推出使用Rapid IO技術(shù)的多處理器系統ImpactRT 3100, 表明Rapid IO已由一個(gè)標準制定階段進(jìn)展到產(chǎn)品階段,到目前為止,Rapid IO已經(jīng)成為電信,通迅以及嵌入式系統內的芯片與芯片之間,板與板之間的背板互連技術(shù)的生力軍。

Rapid IO 是針對嵌入式系統的獨特互連需求而提出的,那么我們首先來(lái)說(shuō)明嵌入式系統互連的一些基本需求:嵌入式系統需要的是一種標準化的互連設計,要滿(mǎn)足以下幾個(gè)基本的特點(diǎn):高效率、低系統成本,點(diǎn)對點(diǎn)或是點(diǎn)對多點(diǎn)的通信,支持DMA操作,支持消息傳遞模式交換數據,支持分散處理和多主控系統,支持多種拓樸結構;另外,高穩定性和QOS也是選擇嵌入式系統總線(xiàn)的基本原則。而這些恰是Rapid IO期望滿(mǎn)足的方向。所以Rapid IO在制定之初即確定了以下幾個(gè)基本原則:一是輕量型的傳輸協(xié)議,使協(xié)議盡量簡(jiǎn)單;二是對軟件的制約要少,層次結構清晰;三是專(zhuān)注于機箱內部芯片與芯片之間,板與板之間的互連。

Rapid IO采用三層分級的體系結構,分級結構圖如下圖所示:



由此圖可見(jiàn),Rapid IO協(xié)議由邏輯層、傳輸層和物理層構成。最明顯的一個(gè)特點(diǎn)就是Rapid IO采用了單一的公用傳輸層規范來(lái)相容、會(huì )聚不同的邏輯層和物理層,單一的邏輯層實(shí)體增強了Rapid IO的適應性。

物理層定義了串行和并行兩個(gè)實(shí)體,得到廣泛應用的只有串行方式,尤其是用在背板互連的場(chǎng)合,串行方式可以在兩個(gè)連接器之間允許80-100cm的連線(xiàn),單鏈路傳輸帶寬可達10Gbps。目前Rapid IO的標準是Version1.3,在未來(lái)的Version2.0規范中定義了更高的傳輸速率,可以得到更高的傳輸帶寬。

物理層:

Rapid IO規范中定義的最低層是物理層,最初定義的是并行總線(xiàn),之后定義了串行總線(xiàn),并線(xiàn)總線(xiàn)可以選擇8位或16位的寬度,傳輸電平采用LVDS方式,時(shí)鐘信息在一對單獨的差分線(xiàn)上傳送,不在數據流中編碼,頻率在250M-1.0G之間。相比串行總線(xiàn)而言,無(wú)多少優(yōu)點(diǎn)
可言,所以只是在最初有支持這種總線(xiàn)的芯片出現,目前幾乎所有的物理層均采用了串行方式。

串行物理層定義了器件間的全雙工串行鏈路,在每個(gè)方向上支持1個(gè)串行差分對稱(chēng)為1個(gè)通道(1x),或同時(shí)支持4個(gè)并行的串行差分對稱(chēng)為4通道(4x),接口的電氣特性采用成熟的XAUI(10GbE Attachment Unit Interface)接口,編碼方式采用的是8B/10B編碼,對鏈路的管理,包括流量控制,包定界和錯誤報告等使用專(zhuān)用的8B/10B碼(即K碼),接收端從鏈路上提取時(shí)鐘信息,無(wú)需獨立的時(shí)鐘線(xiàn)。每一個(gè)通道支持三種不同的傳送波特率1.25G,2.5G,3.125G(與之相對應的數據速率分別是1.0G,2.0G,2.5Gbps)。


圖:Control symbol 包的結構

Rapid IO是一種基于可靠傳送的協(xié)議,每一個(gè)數據據包的傳送均要求對端在物理層上響應一個(gè)控制符號包,此包是一個(gè)4個(gè)字節的數據包,表明了數據包的傳送狀態(tài),數據包是否被對方接方,還是要求重新發(fā)送或是包未被接收。發(fā)送方和接收方均可以使用控制符號包來(lái)獲得對方的狀態(tài)。


圖:Rapid IO包結構及物理層組成

Ack ID被接收方用作發(fā)送響應包的ID號,表明此包是否被接收端接收,或是需要重傳。Rapid IO協(xié)議定義了兩個(gè)bit位用于表示包的優(yōu)先級,所以共有4個(gè)優(yōu)先等級,0是最低的,3是最高的,優(yōu)先級高的包將被交換器優(yōu)先傳送。

每一個(gè)數據包都會(huì )被物理層附加上一個(gè)或兩個(gè)16bit的CRC字段,用于接收方判斷接收到的數據包的完整性,小于80個(gè)字節的數據包只有一個(gè)CRC,大于80個(gè)字節的數據包除了在第80個(gè)字節后有第一個(gè)CRC字段后,還會(huì )在包的末尾再加上一個(gè)CRC字段,實(shí)現數據包的檢錯,自動(dòng)糾錯和自動(dòng)重傳的功能,保證數據包被對端完整正確的接收。第一個(gè)CRC字段可用于對大數據包包頭的驗證,這樣就可以在整個(gè)數據包被接收下來(lái)之前就可以進(jìn)行對數據包的處理,交換器的直通模式就是利用了這個(gè)特性,這樣可以有效減少傳送時(shí)延。ACKID并不包括在
CRC的計算范圍內,這幾個(gè)bit位在計算CRC時(shí)用0代替,這樣就保證了在每一個(gè)鏈路上CRC無(wú)須被重新計算,當然如果HOP_COUNT字節有變化時(shí),CRC還是需要重新計算的。

傳輸層:

Rapid IO的第二層是傳輸層,實(shí)現Rapid IO數據包的路由、傳送。所有的邏輯層協(xié)議均使用單一的傳輸層實(shí)體來(lái)實(shí)現,這樣無(wú)論邏輯層怎么變化,或是采用何種方式來(lái)封裝應用,都可以用單一的傳輸層實(shí)體來(lái)實(shí)現,即使有新的邏輯層規范出現,也可以用這個(gè)單一的傳輸層來(lái)實(shí)現。



Rapid IO的路由和交換是通過(guò)每個(gè)終端設備的ID號來(lái)實(shí)現的。每一個(gè)終端都會(huì )分配一個(gè)唯一的ID號,當一個(gè)終端發(fā)出一個(gè)數據包時(shí),在它的包頭中包含有目的終端的ID號和發(fā)送源端的ID號。每一個(gè)交換器在它的每一個(gè)端口上都有一個(gè)交換路由表,根據此表就可以決定此數據包由那一個(gè)端口送出。每個(gè)端口的路由表需要在系統初始化時(shí)進(jìn)行配置,這與以太網(wǎng)相比,顯得不是非常的靈活和智能,但正是如此,使得系統的路由實(shí)現變得非常簡(jiǎn)單。同樣對于組播功能的實(shí)現也變得簡(jiǎn)單,只是由單一的傳輸層就可以實(shí)現了。



Rapid IO系統構成如左圖,包括兩類(lèi)器件,一個(gè)是終端,產(chǎn)生數據包和接收數據包;另一類(lèi)是交換器,實(shí)現數據包在各個(gè)端點(diǎn)間的路由和傳送,且不對數據包做解釋。

Rapid IO的傳輸層包頭中的另一個(gè)字節是HOP_COUNT,是用來(lái)實(shí)現終端對交換器的初始化和路由配置,Rapid IO交換器的配置可以用任一個(gè)與之相連的終端進(jìn)行配置,當交換器收到一個(gè)數據包時(shí),它會(huì )首先判斷收到包的HOP_COUNT值,如果此值是0則由此交換器終結此數據包,交換器利用此數據包的數據進(jìn)行讀寫(xiě)操作;如果此值不是0,則交換器將此值減一,然后按照目的ID值查路由表進(jìn)行轉發(fā)。如果是要對級連的多個(gè)交換器進(jìn)行配置,可以在發(fā)送這些維護包時(shí)設置HOP_COUNT為0,1,2等對與之相連的第一個(gè)交換器,第二個(gè)交換器以及第三個(gè)交換器,以此類(lèi)推。

邏輯層:

在Rapid IO的體系結構中定義了6種基本操作,用來(lái)執行相應操作的事務(wù)和對操作的描述。這6種操作包括:NREAD(讀)、NWRITE(寫(xiě))、NWRITE_R (寫(xiě)操作,但操作結束前需要等等一個(gè)響應);SWRITE(流寫(xiě),面向大數據量DMA傳送);Atomic(原子操作:讀-修改-寫(xiě));Maintenance(維護包,以Rapid IO專(zhuān)用寄存器為目標的事務(wù),如:系統發(fā)現,初始化、配置以及系統維護)。



在消息傳遞系統中,經(jīng)常使用兩種機制將命令或數據從一個(gè)器件到另一個(gè)器件,一個(gè)是DMA(直接內存訪(fǎng)問(wèn)),另一個(gè)是messaging(消息)。使用消息傳送時(shí),發(fā)送端只須訪(fǎng)問(wèn)目標,而不需要象DMA方式那樣,還需對目標的地址空間的可見(jiàn)性。Rapid IO定義了兩種不同的包格式用于消息事務(wù),第10類(lèi)包格式(door bell)和第11類(lèi)包格式,doorbell非常適合傳送8bit或16bit短信息,可以用于處理器的中斷等。第11類(lèi)消息數據所最大的載荷是4096字節,可以由16個(gè)消息事務(wù)組成,每個(gè)最大載荷是256字節。Rapid IO可以支持4個(gè)訊息信箱(mailbox),每個(gè)信箱可以最多裝入4個(gè)信件,這樣發(fā)送方可以同時(shí)發(fā)送4個(gè)信件到同一個(gè)目標信箱。

除此,Rapid IO也具備Data Streaming的邏輯層協(xié)議,為封裝和傳輸通過(guò)Rapid IO交換器的數據流提供一種標準方法。支持獨立流事務(wù),通過(guò)SAR功能支持長(cháng)度可變的PDU,且與內部的PDU協(xié)議無(wú)關(guān),提供對虛擬流識別功能;Rapid IO流是由源ID、目的ID與傳送鏈路組成的邏輯結構,為了支持固定、較小的包長(cháng),必須對較長(cháng)PDU分段處理,數據流支持分段傳輸以及重組還原操作,在段落類(lèi)型上主要有:開(kāi)始(Start)、繼續(Continuation)和結束(End), 當然可能會(huì )有多個(gè)繼續段。虛擬流被定義為協(xié)議數據單元定序集,可以對各個(gè)數據流進(jìn)行識別,在輸入輸出器件對之間可以只存在一個(gè)單獨的流,系統也可以為每一用戶(hù)和流量類(lèi)型的組合分配一個(gè)單獨的流,使用虛擬流標識最多可標識四百萬(wàn)個(gè)流,特定的流量級別可以提供基于優(yōu)先級、延遲和吞吐率等因素的流量商定,可以根據中最高位的優(yōu)先次序處理交換結構中的流量。

流量控制是任何互連技術(shù)的重要內容,Rapid IO提供了鏈路級的流量控制和端到端的流量控制兩種方式,由于業(yè)務(wù)流與物理連接和系統拓樸結構相關(guān),規定流量控制為Rapid IO物理層規范的內容,同時(shí)定義了重傳、限速和基于信用三種流控方式,保證Rapid IO數據流的正確傳送。除了鏈路級的流量控制處,同時(shí)Rapid IO也定義了端到端的流量控制機制,鏈路級流控管理緊相連的兩個(gè)器件,但對于來(lái)自多個(gè)源,發(fā)往同一個(gè)或多個(gè)目的地的流量會(huì )很大程度上降低系統的性能,端到端的流量控制使用由交換或是端點(diǎn)器件產(chǎn)生的特殊擁塞包來(lái)控制流量,通過(guò)交換器件將擁塞控制包傳回到源端,源端可根據收到的控制包暫停發(fā)送數據包一定時(shí)間,通過(guò)限制源頭流量來(lái)達到流量控制的目的。單一的Rapid IO傳輸層結構使得擁塞數據控制包的傳送變得非常簡(jiǎn)單,交換結構只是把他當作普通數據包進(jìn)行傳送,但包的優(yōu)先級可能不同。

三、 Rapid IO在高速系統設計中的應用

目前,Rapid IO在無(wú)線(xiàn)基站系統中已經(jīng)得到了廣泛的應用,同樣在視頻處理,語(yǔ)音處理,高性能計算機及存儲領(lǐng)域也會(huì )得到越來(lái)越多的應用。在實(shí)現芯片到芯片之間、板與板之間的高速互連上,Rapid IO所能帶來(lái)的好處也越來(lái)越直觀(guān),對于簡(jiǎn)化系統設計、高帶寬、低延時(shí)等特點(diǎn)也被開(kāi)發(fā)人員廣泛接受。

下一代的Rapid IO在應用上也要向機箱與機箱間的高速互連方向上發(fā)展,同時(shí)也會(huì )提供更高的傳輸速率,2.0規范中已經(jīng)可以實(shí)現40Gbps的帶寬。我們相信,隨著(zhù)越來(lái)越多的處理器支持Rapid IO接口,Rapid IO的應用前景會(huì )越來(lái)越光明。

作者:加拿大騰華半導體上海代表處 資深技術(shù)支持工程 裴濟杰
上海市人民路885弄淮海中華大廈1410室
電話(huà):021-63114043 13501798266
郵編:200070
本文地址:http://selenalain.com/thread-8235-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页