《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > RapidIO高性能通信中間件設計
RapidIO高性能通信中間件設計
2014年電子技術應用第12期
潘 靈
(中國電子科技集團公司第十研究所,四川 成都610036)
摘要: 針對RapidIO總線互聯系統中網絡節點間高效端對端通信功能的缺失,實現了基于消息機制的RapidIO通信中間件,以虛通道的方式為應用提供數據傳輸功能。虛通道采用HOST節點集中控制的管理方式,易于實現系統功能的遷移與重構。實物環境中的帶寬、時延測試表明,RapidIO通信中間件具有很高的傳輸效率。
中圖分類號: TN911
文獻標識碼: A
文章編號: 0258-7998(2014)12-0107-03
Design of a high performance communication library in RapidIO system
Pan Ling
The Tenth Research Institute of China Electronic Technology Group Corporation,Chengdu 610036,China
Abstract: Because of the lack of port to port transport function in RapidIO system, this paper designs a communication library based on message mechanism, which provides user with virtual channel to transfer data. With the means of centralize control by host node, applications can be easily moved or rebuild. Testing results indicate that the communication library has characteristics of low latency and high bandwidth.
Key words : RapidIO;communication middleware;virtual channel;centralized control

0 引言

  近年來,RapidIO總線作為嵌入式領域的總線互聯標準,以其高性能、低延遲、低引腳數和低功耗等特點得到了廣泛關注,基于RapidIO總線互聯的嵌入式系統硬件技術日益成熟[1-3]。在系統應用方面,目前有兩種數據傳輸方式:(1)直接使用RapidIO邏輯層功能;(2)將RapidIO邏輯層功能與通用協議適配。前者由于缺乏節點間端到端互聯功能,很難應對多任務并發的系統應用;對于第二種方式,Linux平臺上采用了設備抽象的方式,將消息與門鈴功能接入TCP/IP協議[4-5],vxWorks平臺通過內存映射機制提供了對TIPC協議的支持[6-7]。采用第二種方式雖然能夠支持復雜的應用,但冗余的協議處理使其很難應付對帶寬、時延都要求特別高的場合。本文針對RapidIO邏輯層消息機制的傳輸特點,設計實現了采用HOST節點集中控制的RapidIO通信中間件,解決了PE節點間高效的端對端數據傳輸問題。

1 RapidIO通信中間件

  RapidIO通信中間件采用了分層的設計思想,RIO消息驅動層負責對RapidIO總線接口進行管理,包括收發郵箱的初始化、硬件收發隊列的管理、中斷的響應等操作。邏輯鏈路層實現對節點之間點對點鏈路的維護,將郵箱功能映射為數據包發送與數據包接收隊列。虛通道層將邏輯鏈路層單個收發隊列復用為多個虛通道,提供給邏輯事務層使用。控制代理使用控制虛通道進行HOST節點與PE節點之間控制信息的交互,應用程序使用應用虛通道傳輸數據。RapidIO通信中間件采用工作進程進行各類任務的處理,邏輯鏈路層與虛通道層各部署了一個工作隊列,圖1給出了RapidIO通信中間件層次模型。

001.jpg

  1.1 虛通道狀態

  RapidIO通信中間件為每個虛通道維護了一個虛通道狀態,在虛通道對象創建時處于UC狀態,并主動向對端發送請求包;然后根據收到請求包、應答包的先后順序,分別經過URP、UBB向正常狀態NM躍遷,虛通道上的超時定時器避免握手時發生死鎖。處于NM狀態的虛通道可正常收發數據,當發送處于擁塞狀態時,會切換到擁塞狀態CGST,待擁塞恢復后方能繼續發送數據。掛起狀態HG使得HOST節點能夠根據當前系統需求,暫停、恢復PE節點上的虛通道數據傳輸功能,刪除態DEL使得虛通道對象能夠在資源釋放完畢后正常銷毀。圖2給出了虛通道狀態的變遷。

002.jpg

  1.2 虛通道的建立

  RapidIO通信中間件中應用虛通道的建立采用了對等握手的機制。PE節點中虛通道控制代理負責接收HOST指令,發起對等握手過程,并將結果反饋給HOST節點。控制虛通道的建立采用HOST節點主動發起、PE節點被動建立的方式。圖3給出了控制虛通道與應用虛通道的建立過程。

003.jpg

  1.3 虛通道句柄映射

  RapidIO通信中間件采用通信句柄對虛通道進行標識,應用程序通過預分配的虛通道名稱獲取通信句柄進行數據傳輸。獲取通信句柄時,若對應的虛通道已經建立,則將分配的句柄結構與虛通道對象進行雙向關聯;若虛通道未建立,則將虛通道名稱保存在分配的句柄結構中,待對應的虛通道建立后,掃描通道句柄映射表,實現通信句柄的延遲綁定。圖4給出了通道句柄與通道對象映射關系。

004.jpg

  1.4 數據包傳輸

  RapidIO通信中間件采用了M_BLK與CLUSTER兩類緩存對象進行內部數據包的傳遞,CLUSTER作為存放數據包內容的載體,M_BLK負責對CLUSTER中的包頭信息進行描述,并通過單向指針與CLUSTER一對一關聯。每個M_BLK有相互索引的雙向指針,可方便地掛接到邏輯鏈路層與虛通道層的傳輸隊列上。為提高搜索效率,緩存池中的M_BLK采用固定64 B長度,而CLUSTER則在長度2N(5≤N≤12)中取值,每種CLUSTER所占比例可根據系統應用進行配置。數據包在各層之間傳遞時,只需修改M_BLK中的雙向指針,避免了數據的拷貝。同時,RapidIO通信中間件啟用了硬件消息隊列模式,CPU提交數據包到隊列后,不必等待消息發送完畢,從而達到CPU與硬件接口并行工作的目的。

  1.5 流控機制

  RapidIO通信中間件基于消息目的端流控,采用ACK包交互實現了源端流控功能。ACK包向對端通報本地端接收隊列的信息,包括接收隊列總共已接收包個數(TotalRcvPacks)、還可以接收包個數(AllowRcvPacks)。定義發送端允許發送包個數AllowSendPacks,發送端總共已發送包個數TotalSendPacks,則有AllowSendPacks=Allow-RcvPacks-(TotalSendPacks-TotalRcvPacks)。當AllowSend-Packs=0時發送端將進入擁塞狀態直至收到對端ACK包使AllowSendPacks>0。接收端在接收隊列中包個數為隊列長度的1/2時,將向發送端發送ACK包,圖5給出了AllowSendPacks在傳輸過程中的變化過程。

005.jpg

2 RapidIO通信中間件性能評估

  基于RapidIO通信中間件的設計思想,實現了RapidIO通信中間件的vxWorks版本,支持vxWorks5.5.1。測試環境為3個MPC8548E節點通過2個TSI578交換節點互聯的系統,RapidIO物理層工作在1X模式,頻率為1.25 GHz,其中一個MPC8548E作為HOST節點,其余兩個MPC8548E作為PE節點。HOST節點配置兩個PE節點之間的物理路徑[8]與應用虛通道,兩個PE節點在虛通道上傳輸數據進行性能測試。

  測試數據長度在2n基礎上減去了8 B的數據幀頭,使消息能夠以最高效的方式傳輸。在帶寬指標測試中,RapidIO物理層1.25 GHz的工作頻率8 B/10 B轉換后,提供給RapidIO邏輯層的極限帶寬為125 MB/s,RapidIO消息層損失了大約10%的傳輸帶寬,經過RapidIO通信中間件的虛通道層后,測試的極限帶寬達102 MB/s。在時延指標測試中,不超過64 B的短數據傳輸時延都在25 s以下。圖 6與圖 7分別給出了傳輸不同長度數據時的帶寬與時延。

3 結束語

  RapidIO總線技術作為新一代芯片級互聯總線的代表,在嵌入式領域具有廣泛的應用前景,然而,缺少基于邏輯層業務的端對端通信功能大大限制了該總線在復雜系統中的應用。設計的RapidIO通信中間件在消息機制上提供了虛通道數據傳輸功能。高帶寬、低時延以及易于實現功能遷移與重構的特性使其具備很強的工程應用價值。可以看出,在本文采用的流控機制中,接收端回復ACK包的策略沒有考慮傳輸特征因子的影響,造成ACK包的占比偏高,需要在后期工作中進一步優化。

參考文獻

  [1] RapidIO Trade Association.RapidIO,PCI express and giga-bit ethernet comparison,Rev 03[Z].2005.

  [2] RapidIO Trade Association.RapidIOTM interconnect specifi-cation part 6:1x/4x LP-serial physical layer specification,Rev.1.3[Z].2005.

  [3] RapidIO Trade Association.RapidIO interconnect specifica-tion,Rev.1.3[EB/OL].(2008-05-08).www.rapidio.org.

  [4] PORTERM.RapidIO for Linux[EB/OL].(2008-05-06).htttp://www.kernel.org/doc/ols/2005/ols2005v22pages243256.pdf.

  [5] COMER D E,STEVENS D L.用TCP/IP進行網絡互連第二卷:設計,實現與內核(第三版)[M].張娟,王海,黃述真,譯.北京:電子工業出版社,2001.

  [6] Multicore Association.TIPC:transparent inter process com-munication protocol[Z].2006.

  [7] Wind River Systems,Inc.Wind river TIPC programmer′sguide,1.7.6[Z].2009.

  [8] 潘靈,桑楠.一種RapidIO網絡路徑分配策略[J].計算機應用,2008,28(Z2):294-295.


此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久精品盗摄| 亚洲欧美www| 亚洲一级黄色| 99re6这里只有精品| 亚洲国产福利在线| 亚洲高清影视| 亚洲国产日韩美| 亚洲第一综合天堂另类专| 极品日韩av| 伊人久久综合| 亚洲激情不卡| 亚洲区一区二区三区| 最新国产の精品合集bt伙计| 亚洲第一在线综合在线| 在线播放亚洲| 亚洲风情亚aⅴ在线发布| 1024国产精品| 亚洲国产精品久久久久久女王| 在线看成人片| 亚洲国产精品尤物yw在线观看 | 一区二区高清视频在线观看| 一区二区免费在线播放| 一本色道久久99精品综合| 日韩一二在线观看| 亚洲视频在线二区| 亚洲欧美精品suv| 欧美亚洲一区| 91久久黄色| 日韩亚洲欧美一区二区三区| 亚洲无线视频| 欧美一区精品| 毛片基地黄久久久久久天堂| 欧美精品一区三区| 国产精品草草| 国产小视频国产精品| 精品动漫3d一区二区三区| 亚洲国产黄色片| 亚洲精品视频在线观看免费| 一区二区福利| 欧美诱惑福利视频| 亚洲欧洲一区二区天堂久久| 一区二区三区国产盗摄| 欧美一区二区三区视频| 久久综合中文| 欧美日韩一区二区在线观看视频 | 国产精品香蕉在线观看| 激情欧美亚洲| 亚洲精品影视在线观看| 亚洲综合电影一区二区三区| 久久狠狠婷婷| 亚洲视频一区在线观看| 久久精品理论片| 欧美国产亚洲另类动漫| 国产精品国产三级国产aⅴ入口| 国产情人综合久久777777| 在线观看国产日韩| 中文av一区特黄| 久久精品国产91精品亚洲| 亚洲最快最全在线视频| 久久成人免费日本黄色| 欧美激情亚洲另类| 国产精品亚洲精品| 亚洲高清不卡av| 亚洲一区视频在线| 亚洲三级电影在线观看| 午夜精品婷婷| 欧美黄色一级视频| 国产日韩欧美综合| 亚洲看片免费| 久久精品视频va| 亚洲欧美久久久久一区二区三区| 麻豆乱码国产一区二区三区| 国产精品二区影院| 亚洲第一天堂av| 性久久久久久久久久久久| 一区二区高清在线观看| 久久久夜精品| 国产精品久久国产精品99gif| 1000部精品久久久久久久久| 午夜精品久久久| 在线亚洲激情| 蜜桃av噜噜一区| 国产欧美日韩在线播放| 9国产精品视频| 亚洲精品1区2区| 久久久久久久久久久久久9999| 国产精品av一区二区| 91久久线看在观草草青青| 欧美在线免费视频| 亚洲男人的天堂在线aⅴ视频| 欧美国产视频一区二区| 狠狠v欧美v日韩v亚洲ⅴ| 亚洲一区久久久| 国产精品99久久久久久人| 免费不卡亚洲欧美| 国产专区一区| 亚洲欧美一区二区在线观看| 亚洲私人影院| 欧美人与性动交a欧美精品| 伊人春色精品| 欧美一区二区在线| 羞羞漫画18久久大片| 国产精品乱看| 一区二区三区欧美日韩| 中文高清一区| 欧美日精品一区视频| 日韩西西人体444www| 99re6热在线精品视频播放速度| 久久亚洲综合| 狠狠色狠狠色综合日日tαg| 欧美一区二区三区在线看| 欧美一区二区日韩一区二区| 欧美午夜一区二区| 一本色道久久综合| 亚洲午夜羞羞片| 国产精品久久精品日日| 亚洲一区亚洲二区| 性色av一区二区三区红粉影视| 国产精品成人一区二区三区吃奶| 99国产精品国产精品毛片| 亚洲午夜女主播在线直播| 欧美日韩免费一区二区三区| 亚洲欧洲一区二区在线播放| 99在线热播精品免费99热| 欧美日韩高清在线播放| 99re6这里只有精品视频在线观看| 一区二区三区精品| 欧美视频一区二区| 亚洲午夜电影网| 午夜在线不卡| 国产精品综合网站| 欧美中文字幕在线播放| 久久婷婷人人澡人人喊人人爽| 国产综合一区二区| 亚洲国产欧美在线| 欧美激情女人20p| 日韩一级裸体免费视频| 亚洲欧美一区二区原创| 国产欧美一区二区精品性色| 欧美一站二站| 模特精品裸拍一区| 亚洲精品少妇网址| 午夜一级久久| 激情综合五月天| 亚洲乱码精品一二三四区日韩在线 | 国产裸体写真av一区二区| 香蕉视频成人在线观看| 久久免费的精品国产v∧| 亚洲精华国产欧美| 亚洲男人的天堂在线| 国产午夜精品美女视频明星a级| 亚洲第一精品电影| 欧美精品高清视频| 亚洲专区免费| 另类激情亚洲| 在线视频一区观看| 久久精品夜夜夜夜久久| 亚洲黄色精品| 欧美亚洲网站| 1024欧美极品| 亚洲综合国产| 精品成人久久| 亚洲影院色无极综合| 国产一区二区三区成人欧美日韩在线观看 | 国产精品99久久久久久有的能看| 久久丁香综合五月国产三级网站| 影音先锋久久久| 亚洲一级片在线看| 国产一区二区三区在线观看网站| 亚洲精品一级| 国产精品一区在线观看你懂的| 亚洲国产一区二区在线| 国产精品国产三级国产| 91久久精品www人人做人人爽| 欧美四级伦理在线| 久久精品国产综合| 欧美午夜免费| 亚洲人成在线影院| 国产色综合久久| 一区二区三区四区国产| 国内成人精品2018免费看| 亚洲天堂av在线免费| 一区视频在线| 午夜日本精品| 亚洲精品一线二线三线无人区| 久久久久久电影| 一区二区欧美激情| 免费一区二区三区| 欧美一级片在线播放| 国产精品高潮呻吟久久| 亚洲日韩欧美视频| 国产一区二区三区的电影| 亚洲一区在线观看免费观看电影高清 | 久久精品国产999大香线蕉| 欧美手机在线视频| 亚洲日本在线观看| 狠狠色丁香久久婷婷综合_中| 亚洲欧美精品在线观看| 亚洲免费观看在线视频| 免费欧美在线|