串行RapidIO: 高性能嵌入式互連技術(shù)
像以太網(wǎng)一樣,RapidIO也是基于包交換的互連技術(shù)。如圖3所示,RapidIO包由包頭、可選的載荷數(shù)據(jù)和16位CRC校驗組成。包頭的長度因為包類型不同可能是十幾到二十幾字節(jié)。每包的載荷數(shù)據(jù)長度不超過256字節(jié),這有利于減少傳輸時延,簡化硬件實現(xiàn)。
圖3 RapidIO包格式
上述包格式定義兼顧了包效率及組包/解包的簡單性。RapidIO交換器件僅需解析前后16位,以及源/目地器件ID,這簡化了交換器件的實現(xiàn)。
邏輯層協(xié)議
邏輯層定義了操作協(xié)議和相應的包格式。RapidIO支持的邏輯層業(yè)務主要是直接IO/DMA(Direct IO/ Direct Memory Access)和消息傳遞(Message Passing)。
直接IO/DMA模式是最簡單實用的傳輸方式,其前提是主設(shè)備知道被訪問端的存儲器映射。在這種模式下,主設(shè)備可以直接讀寫從設(shè)備的存儲器。直接IO/DMA在被訪問端的功能往往完全由硬件實現(xiàn),所以被訪問的器件不會有任何軟件負擔。從功能上講,這一特點和TI DSP的傳統(tǒng)的主機接口(HPI)類似。但和HPI口相比,SRIO帶寬大、引腳少,傳輸方式更靈活。
消息傳遞模式則類似于以太網(wǎng)的傳輸方式,它不要求主設(shè)備知道被訪問設(shè)備的存儲器狀況。數(shù)據(jù)在被訪問設(shè)備中的位置則由郵箱號(類似于以太網(wǎng)協(xié)議中的端口號)確定。從設(shè)備根據(jù)接收到的包的郵箱號把數(shù)據(jù)保存到對應的緩沖區(qū),這一過程往往無法完全由硬件實現(xiàn),而需要軟件協(xié)助,所以會帶來一些軟件負擔。
傳輸層協(xié)議
RapidIO是基于包交換的互連技術(shù),傳輸層定義了包交換的路由和尋址機制。
RapidIO網(wǎng)絡主要由終端器件(End Point)和交換器件(Switch)組成。終端器件是數(shù)據(jù)包的源或目的地,不同的終端器件以器件ID來區(qū)分。RapidIO支持8位或 16位器件ID,因此一個RapidIO網(wǎng)絡最多可容納256或65536個終端器件。與以太網(wǎng)類似,RapidIO也支持廣播或組播,每個終端器件除了獨有的器件ID外,還可配置廣播或組播ID。交換器件根據(jù)包的目地器件ID進行包的轉(zhuǎn)發(fā),交換器件本身沒有器件ID。
RapidIO的互連拓撲結(jié)構(gòu)非常靈活,除了通過交換器件外,兩個終端器件也可直接互連。以TI的TMS320C6455 DSP為例,它有4個3.125G的SRIO口,可支持的拓撲結(jié)構(gòu)如圖4所示。
圖4 RapidIO支持靈活多樣的拓補結(jié)構(gòu)
物理層協(xié)議
RapidIO 1.x 協(xié)議定義了以下兩種物理層接口標準:8/16 并行LVDS協(xié)議和1x/4x 串行協(xié)議 (SRIO)。
并行RapidIO由于信號線較多(40~76)難以得到廣泛的應用,而1x/4x串行RapidIO僅4或16個信號線,逐漸成為主流。
評論