C645x的串行RapidlO息線通信系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引 言
隨著社會(huì)信息交流需求的急劇增加、個(gè)人移動(dòng)通信的迅速普及,頻譜已成為越來越寶貴的資源。天線技術(shù)采用空分復(fù)用(SDMA),利用在信號傳播方向上的差別,將同頻率、同時(shí)隙的信號區(qū)分開來。它可以成倍地?cái)U(kuò)展通信容量,并和其他復(fù)用技術(shù)相結(jié)合,最大限度地利用有限的頻譜資源。另外在移動(dòng)通信中,由于復(fù)雜的地形、建筑物結(jié)構(gòu)對電波傳播的影響,大量用戶間的相互影響,產(chǎn)生時(shí)延擴(kuò)散、瑞利衰落、多徑、共信道干擾等,使通信質(zhì)量受到嚴(yán)重影響。采用智能天線可以有效的解決這個(gè)問題。
目前迫切需要解決的是語音、視頻和數(shù)據(jù)三重播放的應(yīng)用問題。三重播放的核心集中在連接性和計(jì)算能力上。連接性就是必須實(shí)現(xiàn)不同設(shè)備、板卡和系統(tǒng)之間數(shù)據(jù)的高速通信;計(jì)算能力指設(shè)備、板卡和系統(tǒng)中的處理器能夠滿足新的復(fù)雜的算法要求。數(shù)字信號處理(Digital Signal Processing,簡稱DSP)是一門涉及許多學(xué)科而又廣泛應(yīng)用于許多領(lǐng)域的新興學(xué)科。20世紀(jì)60年代以來,隨著計(jì)算機(jī)和信息技術(shù)的飛速發(fā)展,數(shù)字信號處理技術(shù)應(yīng)運(yùn)而生并得到迅速的發(fā)展。數(shù)字信號處理是一種通過使用數(shù)學(xué)技巧執(zhí)行轉(zhuǎn)換或提取信息,來處理現(xiàn)實(shí)信號的方法,這些信號由數(shù)字序列表示。在過去的二十多年時(shí)間里,數(shù)字信號處理已經(jīng)在通信等領(lǐng)域得到極為廣泛的應(yīng)用。德州儀器、Freescale等半導(dǎo)體廠商在這一領(lǐng)域擁有很強(qiáng)的實(shí)力。
1 串行RapidIO及其結(jié)構(gòu)
RapidIO互連技術(shù)在2001年完成基本規(guī)范。2003年10月,國際標(biāo)準(zhǔn)組織和國際電工委員會(huì)(IEC)一致通過了RapidIO互連規(guī)范,即ISO/IEC DIS 18372。目前在系統(tǒng)邏輯器件、FPGA和ASIC器件中已經(jīng)實(shí)現(xiàn)了該技術(shù)。TI公司經(jīng)過努力,也已經(jīng)在DSP芯片上實(shí)現(xiàn)了該項(xiàng)技術(shù)。串行RapidIO互連架構(gòu)解決了高性能嵌入式系統(tǒng)在可靠性和互連性方面的挑戰(zhàn)。嵌入式系統(tǒng)是“控制、監(jiān)視或者輔助裝置、機(jī)器和設(shè)備運(yùn)行的裝置”(devices used to control, monitor, or assist the operation of equipment, machinery or plants)。從中可以看出嵌入式系統(tǒng)是軟件和硬件的綜合體,還可以涵蓋機(jī)械等附屬裝置。目前國內(nèi)一個(gè)普遍被認(rèn)同的定義是:以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。
基于DSP的串行RapidIO的主要特點(diǎn)有:
?、僖_數(shù)少;
?、跀?shù)據(jù)寬度和速度可調(diào);
?、劬邆銬MA和消息傳遞功能;
?、苤С謴?fù)雜可調(diào)整的拓?fù)浣Y(jié)構(gòu);
⑤支持多點(diǎn)傳送;
⑥可靠性高,可提供服務(wù)質(zhì)量保證;
?、吖牡汀?/p>
C645x的串行RapidIO有3層結(jié)構(gòu),如圖1所示。RapidIO結(jié)構(gòu)主要包括物理層、傳輸層和邏輯層。其中物理層負(fù)責(zé)描述器件的接口規(guī)范,例如分組傳輸機(jī)制、流量控制、電特性以及低級錯(cuò)誤管理等;傳輸層為在不同端點(diǎn)設(shè)備之間傳送分組提供路由信息,交換設(shè)備以基于器件的路由方式工作于傳輸層;邏輯層定義總體的協(xié)議和分組格式,每個(gè)分組最多包含256字節(jié)的載荷,事務(wù)通過Load、Store或DMA操作來訪問地址空間。圖1中,邏輯層包括I/0系統(tǒng)、傳送消息、全局共享內(nèi)存以及為將來可能增加功能預(yù)留的擴(kuò)充單元。
2 系統(tǒng)硬件結(jié)構(gòu)
TMS320C645x系列DSP為TI公司推出的速度達(dá)到1.2 GHz的DSP,主要應(yīng)用于電信、醫(yī)療電子和新興的電子行業(yè);可以連接32位DDR2內(nèi)存和66 MHz的PCI接口;具有2個(gè)串行干兆媒體獨(dú)立接口、以太網(wǎng)MAC端口、1個(gè)千兆以太網(wǎng)關(guān),還有一個(gè)用于無縫連接公共電信數(shù)據(jù)流的電信串行接口。TMS320C645x具有的這些特性非常適合于超高速數(shù)據(jù)處理系統(tǒng)中。在高速數(shù)據(jù)系統(tǒng)中,大量數(shù)據(jù)的芯片之間的傳輸十分關(guān)鍵。只有快速、及時(shí)地將數(shù)據(jù)傳輸出去或者讀取進(jìn)來,才可以減輕系統(tǒng)對數(shù)據(jù)存儲(chǔ)的壓力。圖2為TMS320C645x系列DSP的串行Ra—pidIO內(nèi)部結(jié)構(gòu)框圖。
從圖2可以看出,接收到的差分?jǐn)?shù)據(jù)進(jìn)入串行Ra—pidI0,首先RapidIO模塊根據(jù)數(shù)據(jù)的上升沿變化速度檢測出數(shù)據(jù)發(fā)送時(shí)鐘頻率,并以此頻率來接收后面的數(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校驗(yàn)和拆包處理,送到緩沖并進(jìn)行數(shù)據(jù)處理,最后經(jīng)過DMA總線送到DSP處理單元,完成數(shù)據(jù)的接收。
2個(gè)DSP之間的RapidIO連接簡單、方便,如圖3所示,只要將收發(fā)數(shù)據(jù)相應(yīng)地連接上就可以了。由于RapidIO有4根并行數(shù)據(jù)總線,如果將所有的數(shù)據(jù)總線全部連接上,可以確保最高的通信速率。也可以使用1根數(shù)據(jù)總線通信,這時(shí)數(shù)據(jù)傳輸速度降低到最高通信速率的1/4。如果多個(gè)DSP相互之間都需要進(jìn)行通信,則一般采用單根數(shù)據(jù)通信方式。圖4中的3個(gè)DSP之間相互使用RapidIO總線通信。此外,DSP之間的數(shù)據(jù)地和模擬地需要分別連接在一起(見圖3)。
[!--empirenews.page--] 3 系統(tǒng)軟件設(shè)計(jì)
RapidIO總線的設(shè)置有3個(gè)步驟:
?、僭O(shè)置RapidIO的時(shí)鐘,通過SERDES_CFG_CNTL寄存器設(shè)置數(shù)據(jù)收發(fā)的速率;
②使能RapidIO的接收器,同時(shí)設(shè)置一些和數(shù)據(jù)接收相關(guān)的參數(shù),包括差分信號的自適應(yīng)均衡設(shè)計(jì)、相位偏差設(shè)置、信號損耗設(shè)置等;
?、凼鼓躌apidIO的發(fā)送器,同時(shí)設(shè)置一些和數(shù)據(jù)發(fā)送相關(guān)的參數(shù),包括發(fā)送速率、總線寬度等。
設(shè)置RapidIO速率為3.125 Gbps,使能接收器和發(fā)送器的代碼如下:
開始和結(jié)束都是由主機(jī)發(fā)起和控制的,從機(jī)被動(dòng)地接收命令并執(zhí)行指令。當(dāng)從機(jī)需要主動(dòng)向主機(jī)發(fā)送數(shù)據(jù)時(shí),只能由從機(jī)發(fā)出中斷到主機(jī);主機(jī)響應(yīng)中斷后,發(fā)出數(shù)據(jù)讀取命令。具體的工作流程如圖5所示。主機(jī)的命令發(fā)起機(jī)構(gòu)發(fā)出操作命令,并將發(fā)送請求包經(jīng)過命令傳輸機(jī)構(gòu)傳送到從機(jī)的命令執(zhí)行機(jī)構(gòu),從機(jī)的命令執(zhí)行機(jī)構(gòu)可能執(zhí)行數(shù)據(jù)接收(主機(jī)向從機(jī)發(fā)送數(shù)據(jù))和數(shù)據(jù)發(fā)送(主機(jī)要求從機(jī)發(fā)送數(shù)據(jù))任務(wù)。命令執(zhí)行機(jī)構(gòu)處理完成相應(yīng)命令,發(fā)送應(yīng)答包到主機(jī),主機(jī)判斷到命令完成,將命令狀態(tài)清除,完成整個(gè)命令的操作。
RapidIO在數(shù)據(jù)傳輸過程中,可能產(chǎn)生錯(cuò)誤。根據(jù)錯(cuò)誤情況,RapidIO發(fā)出2種不同的中斷到CPU:狀態(tài)錯(cuò)誤,此時(shí)CPU應(yīng)復(fù)位或者重新同步RapidIO;嚴(yán)重錯(cuò)誤,此時(shí)CPU應(yīng)復(fù)位所有和RapidIO相關(guān)的設(shè)備。
4 總 結(jié)
本文介紹了DSP中的串行RapidIO總線,詳述了該總線的層次結(jié)構(gòu)和內(nèi)部結(jié)構(gòu),并且結(jié)合多個(gè)DSP之間的RapidIO通信介紹了硬件和軟件系統(tǒng)設(shè)計(jì)。該總線可以實(shí)現(xiàn)10 Gbps的高速數(shù)據(jù)通信,可以滿足語音、圖像和數(shù)據(jù)等多種通信業(yè)務(wù)的需求。整個(gè)通信系統(tǒng)連接簡單、通信可靠、實(shí)用性強(qiáng)