C645x的串行RapidlO息線通信系統(tǒng)設(shè)計
隨著電子技術(shù)和通信技術(shù)的發(fā)展,對高速通信和超快速計算的需求日益增大。從早期的簡單語音傳輸發(fā)展到圖像傳輸和大量數(shù)據(jù)傳輸;調(diào)制方式上由單載波發(fā)展到多載波調(diào)制;天線技術(shù)方面由單天線發(fā)展到多天線傳輸;電子技術(shù)方面從單核處理器發(fā)展到多核處理器。這些技術(shù)都是為了提高信號傳輸?shù)母咚俣群透哽`敏度以滿足高速通信的需求。
目前迫切需要解決的是語音、視頻和數(shù)據(jù)三重播放的應(yīng)用問題。三重播放的核心集中在連接性和計算能力上。連接性就是必須實現(xiàn)不同設(shè)備、板卡和系統(tǒng)之間數(shù)據(jù)的高速通信;計算能力指設(shè)備、板卡和系統(tǒng)中的處理器能夠滿足新的復雜的算法要求。本文介紹一種在數(shù)字信號處理器(DSP)C645x上實現(xiàn)串行RapidIO總線數(shù)據(jù)傳輸?shù)姆椒āT摯蠷apidIO傳輸可以達到芯片之間的10 Gbps的傳輸速度,滿足高速數(shù)據(jù)通信的需求。
1 串行RapidIO及其結(jié)構(gòu)
RapidIO互連技術(shù)在2001年完成基本規(guī)范。2003年10月,國際標準組織和國際電工委員會(IEC)一致通過了RapidIO互連規(guī)范,即ISO/IEC DIS 18372。目前在系統(tǒng)邏輯器件、FPGA和ASIC器件中已經(jīng)實現(xiàn)了該技術(shù)。TI公司經(jīng)過努力,也已經(jīng)在DSP芯片上實現(xiàn)了該項技術(shù)。串行RapidIO互連架構(gòu)解決了高性能嵌入式系統(tǒng)(包括無線基礎(chǔ)設(shè)施器件、網(wǎng)絡(luò)接入設(shè)備、多服務(wù)平臺、高端路由器和存儲設(shè)備等)在可靠性和互連性方面的挑戰(zhàn)。Ra—pidIO互連為嵌入式系統(tǒng)設(shè)計提供了高帶寬和低延遲的數(shù)據(jù)通信。RapiclIO技術(shù)允許任何數(shù)據(jù)協(xié)議運行;同時通過提供自建的糾錯機制和點對點架構(gòu)來排除單點故障,滿足嵌入式設(shè)計的可靠性需求。
基于DSP的串行RapidIO的主要特點有:
①引腳數(shù)少;
②數(shù)據(jù)寬度和速度可調(diào);
③具備DMA和消息傳遞功能;
④支持復雜可調(diào)整的拓撲結(jié)構(gòu);
⑤支持多點傳送;
⑥可靠性高,可提供服務(wù)質(zhì)量保證;
⑦功耗低。
C645x的串行RapidIO有3層結(jié)構(gòu),如圖1所示。RapidIO結(jié)構(gòu)主要包括物理層、傳輸層和邏輯層。其中物理層負責描述器件的接口規(guī)范,例如分組傳輸機制、流量控制、電特性以及低級錯誤管理等;傳輸層為在不同端點設(shè)備之間傳送分組提供路由信息,交換設(shè)備以基于器件的路由方式工作于傳輸層;邏輯層定義總體的協(xié)議和分組格式,每個分組最多包含256字節(jié)的載荷,事務(wù)通過Load、Store或DMA操作來訪問地址空間。圖1中,邏輯層包括I/0系統(tǒng)、傳送消息、全局共享內(nèi)存以及為將來可能增加功能預留的擴充單元。傳輸層僅有一個實現(xiàn)通用傳輸協(xié)議單元;物理層現(xiàn)在包括8/16LP_LVDS和1x/4x串行LP兩個單元,同樣預留可擴充單元。圖中的應(yīng)用協(xié)議和編輯清單屬于應(yīng)用層,由不同用戶改寫。
2 系統(tǒng)硬件結(jié)構(gòu)
TMS320C645x系列DSP為TI公司推出的速度達到1.2 GHz的DSP,主要應(yīng)用于電信、醫(yī)療電子和新興的電子行業(yè);可以連接32位DDR2內(nèi)存和66 MHz的PCI接口;具有2個串行干兆媒體獨立接口、以太網(wǎng)MAC端口、1個千兆以太網(wǎng)關(guān),還有一個用于無縫連接公共電信數(shù)據(jù)流的電信串行接口。TMS320C645x具有的這些特性非常適合于超高速數(shù)據(jù)處理系統(tǒng)中。在高速數(shù)據(jù)系統(tǒng)中,大量數(shù)據(jù)的芯片之間的傳輸十分關(guān)鍵。只有快速、及時地將數(shù)據(jù)傳輸出去或者讀取進來,才可以減輕系統(tǒng)對數(shù)據(jù)存儲的壓力。為此TMS320C645x專門增加了串行RapidIO模塊,使得在高速數(shù)據(jù)處理的同時,數(shù)據(jù)傳輸速度可以達到10 Gbps。圖2為TMS320C645x系列DSP的串行Ra—pidIO內(nèi)部結(jié)構(gòu)框圖。
[!--empirenews.page--]
從圖2可以看出,接收到的差分數(shù)據(jù)進入串行Ra—pidI0,首先RapidIO模塊根據(jù)數(shù)據(jù)的上升沿變化速度檢測出數(shù)據(jù)發(fā)送時鐘頻率,并以此頻率來接收后面的數(shù)據(jù)。然后,將接收的串行數(shù)據(jù)經(jīng)過S2P(Series to Parallel)單元,將串行數(shù)據(jù)轉(zhuǎn)換成10位的并行數(shù)據(jù),從而降低了10倍數(shù)據(jù)傳輸速度。物理層得到并行數(shù)據(jù)后,將數(shù)據(jù)送到邏輯層,依次經(jīng)過譯碼、FIFO、CRC校驗和拆包處理,送到緩沖并進行數(shù)據(jù)處理,最后經(jīng)過DMA總線送到DSP處理單元,完成數(shù)據(jù)的接收。數(shù)據(jù)發(fā)送和接收過程相似,需要經(jīng)過一個并串轉(zhuǎn)變P2S單元,發(fā)送無需時鐘處理單元,發(fā)送數(shù)據(jù)的速度包含了時鐘速度。
2個DSP之間的RapidIO連接簡單、方便,如圖3所示,只要將收發(fā)數(shù)據(jù)相應(yīng)地連接上就可以了。由于RapidIO有4根并行數(shù)據(jù)總線,如果將所有的數(shù)據(jù)總線全部連接上,可以確保最高的通信速率。也可以使用1根數(shù)據(jù)總線通信,這時數(shù)據(jù)傳輸速度降低到最高通信速率的1/4。如果多個DSP相互之間都需要進行通信,則一般采用單根數(shù)據(jù)通信方式。圖4中的3個DSP之間相互使用RapidIO總線通信。由于只有4根數(shù)據(jù)總線,最多只能實現(xiàn)4個DSP之間相互使用RapidIO總線通信。需要注意的是,由于RapidIO通信速率較高,在數(shù)據(jù)總線的連接上,一定要注意屏蔽電磁干擾,盡量做到數(shù)據(jù)線等長。此外,DSP之間的數(shù)據(jù)地和模擬地需要分別連接在一起(見圖3)。
3 系統(tǒng)軟件設(shè)計
RapidIO總線的設(shè)置有3個步驟:
①設(shè)置RapidIO的時鐘,通過SERDES_CFG_CNTL寄存器設(shè)置數(shù)據(jù)收發(fā)的速率;
②使能RapidIO的接收器,同時設(shè)置一些和數(shù)據(jù)接收相關(guān)的參數(shù),包括差分信號的自適應(yīng)均衡設(shè)計、相位偏差設(shè)置、信號損耗設(shè)置等;
③使能RapidIO的發(fā)送器,同時設(shè)置一些和數(shù)據(jù)發(fā)送相關(guān)的參數(shù),包括發(fā)送速率、總線寬度等。
設(shè)置RapidIO速率為3.125 Gbps,使能接收器和發(fā)送器的代碼如下:
[!--empirenews.page--]
開始和結(jié)束都是由主機發(fā)起和控制的,從機被動地接收命令并執(zhí)行指令。當從機需要主動向主機發(fā)送數(shù)據(jù)時,只能由從機發(fā)出中斷到主機;主機響應(yīng)中斷后,發(fā)出數(shù)據(jù)讀取命令。具體的工作流程如圖5所示。主機的命令發(fā)起機構(gòu)發(fā)出操作命令,并將發(fā)送請求包經(jīng)過命令傳輸機構(gòu)傳送到從機的命令執(zhí)行機構(gòu),從機的命令執(zhí)行機構(gòu)可能執(zhí)行數(shù)據(jù)接收(主機向從機發(fā)送數(shù)據(jù))和數(shù)據(jù)發(fā)送(主機要求從機發(fā)送數(shù)據(jù))任務(wù)。命令執(zhí)行機構(gòu)處理完成相應(yīng)命令,發(fā)送應(yīng)答包到主機,主機判斷到命令完成,將命令狀態(tài)清除,完成整個命令的操作。
RapidIO在數(shù)據(jù)傳輸過程中,可能產(chǎn)生錯誤。根據(jù)錯誤情況,RapidIO發(fā)出2種不同的中斷到CPU:狀態(tài)錯誤,此時CPU應(yīng)復位或者重新同步RapidIO;嚴重錯誤,此時CPU應(yīng)復位所有和RapidIO相關(guān)的設(shè)備。CPU進行相應(yīng)處理后,RapidIO就可以正常通信了。
4 總 結(jié)
本文介紹了DSP中的串行RapidIO總線,詳述了該總線的層次結(jié)構(gòu)和內(nèi)部結(jié)構(gòu),并且結(jié)合多個DSP之間的RapidIO通信介紹了硬件和軟件系統(tǒng)設(shè)計。該總線可以實現(xiàn)10 Gbps的高速數(shù)據(jù)通信,可以滿足語音、圖像和數(shù)據(jù)等多種通信業(yè)務(wù)的需求。整個通信系統(tǒng)連接簡單、通信可靠、實用性強。