新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 基于RapidIO的實時CORBA中間件實現

        基于RapidIO的實時CORBA中間件實現

        作者: 時間:2012-05-21 來源:網絡 收藏

        摘要:為了解決傳統傳輸協議TCP/IP的時延不確定問題,提出了使用點對點的包交換協議來替代TCP/IP的方法,研究了的可插拔傳輸協議框架,從而報文在總線上的傳輸。測試結果顯示,的CORBA性優于TCP/IP的CORBA。

        本文引用地址:http://www.104case.com/article/154907.htm

        關鍵詞:CORBA;RapidIO;可插入傳輸;協議框架

        0 引言

        在傳統的嵌入式多處理器系統中,處理器之間的互連是通過分時共享總線來的,典型的有以太網、CPCI和VME總線。這類總線的總帶寬會受限,而且隨著處理器的不斷增多,每個處理器所占據的帶寬小斷下降,制約了處理器之間的信息傳輸能力,這將使其不能適應未來高性能嵌入式多處理器系統之間的高速信息傳輸需求。而RapidIO互聯架構是一種高性能、點對點的包交換技術,傳輸速率能夠達到1 Gb/s~60 Gb/s,能為嵌入式系統芯片間和板卡間互連提供高帶寬、低時延的互連解決方案。

        與此同時,隨著CORBA技術應用范圍的不斷拓展,特別是在軍事、電信和航空控制等領域的應用,對CORBA系統中客戶/服務器交互的性提出了更為嚴格的要求。雖然幾乎所有CORBA都默認支持TCP/IP,但是TCP/IP時延的不確定性將導致其不適用系統,而基于Rapid IO實時總線的CORBA卻可以解決該問題,因此,本文給出了如何將RapidIO通信協議插入CORBA產品中的方法。

        1 Rapid IO技術

        RapidIO采用的三層體系結構如圖1所示。

        a.JPG

        該體系包括邏輯層、傳輸層和物理層。邏輯層主要用于界定協議和包格式,目前邏輯層可支持5種規范,分別是存儲器映射的I/O系統、消息傳輸、全局共享內存、流量控制和數據流;傳輸層主要用于規定路由選擇信息,為端點設備間報文的傳輸提供路由信息;物理層主要定義包傳送機制、信息流控制、電氣特性和低級錯誤管理等,物理層的優先級處理保證了數據傳輸時具有更低的平均時延或者抖動時延。Rapi dIO系統多采用基于交換機(Switch)的拓撲結構。邏輯報文從一個端點設備送往另一個端點設備主要通過交換機解釋報文中的傳輸層信息,傳輸層包含有源設備指定的目的地址,文換機中則包含路由表,可通過查找路由表確定輸出路徑。

        b.JPG

        2 CORBA的RapidIO實現

        2.1 CORBA可插拔協議框架

        CORBA2.0引入了一個通用的ORB互操作性結構體系,稱為通用ORB間協議(即GIOP)。GIOP是一類抽象的協議,并不是一個可直接用于ORB間進行通信的具體協議。該協議僅描述了特定的協議如何進行創建以適用于GIOP框架,同時指定了轉換語法和一個消息格式的標準集,以便允許獨立開發的ORB可以在任何一個面向連接的傳遞中進行通信,這種設計允許新的協議在不影響現有應用程序的情況下,添加到CORBA中。

        GIOP對于攜帶GIOP消息的底層傳輸具有一定的要求,包括面向連接、全雙工、對稱、可靠傳輸、支持字節流等,同時需要按照以上要求封裝RapidIO傳輸協議。對于不同的傳輸介質,將會有一個與之對應的GIOP協議的實現與之對應。比如,IIOP協議就是GIOP的基于TCP/IP協議的具體實現。與此類似,基于RapidIO的傳輸協議列GIOP的映射為RapidIO-IOP,簡稱RIOP。ONI層次圖與GIOP層次圖的對比如圖2所示,RIOP的主要工作是使用RapidIO傳輸協議完成GIOP報文的傳輸。

        2.2 實現RIOP

        定義RIOP的協議標識格式如下:

        rio://{host number}:{port number}

        其中,host為節點的網絡編號,port為邏輯鏈路端口。定義RapidIO IOR配置文件標識常量,const IOP::ProfileIdIOP::OE TAG RIO IOP=1330205525(0x4f495355)。

        波段開關相關文章:波段開關原理



        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 溧水县| 石楼县| 抚州市| 遵化市| 涞水县| 西乡县| 江山市| 云南省| 迁西县| 克什克腾旗| 霍城县| 黄骅市| 分宜县| 莱阳市| 漯河市| 沙坪坝区| 成都市| 略阳县| 贺兰县| 甘谷县| 云龙县| 宁乡县| 鹤壁市| 芜湖市| 五常市| 大化| 中方县| 绥化市| 大荔县| 永嘉县| 广南县| 长垣县| 南投市| 临海市| 普定县| 天津市| 顺昌县| 平昌县| 贵阳市| 邢台县| 阿尔山市|