<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 電源與新能源 > 設計應用 > Rapid IO---成就高速互連之美

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

作者: 時(shí)間:2008-06-06 來(lái)源:網(wǎng)絡(luò ) 收藏

本文引用地址:http://dyxdggzs.com/article/258683.htm
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)越光明。

作者簡(jiǎn)介:
姓名:裴濟杰
工作單位:加拿大騰華半導體上海代表處
職務(wù):資深技術(shù)支持工程
聯(lián)系信息:地址:上海市人民路885弄淮海中華大廈1410室
電話(huà):021-63114043 13501798266
郵編:200070


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: RapidIO 總線(xiàn)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>