李少龍, 高 俊, 婁景藝, 邱 昊
(海軍工程大學(xué) 電子工程學(xué)院,湖北 武漢 430033)
語音、圖像及視頻等數(shù)據(jù)信息的傳輸對(duì)數(shù)字處理系統(tǒng)性能提出了很高的要求,要求傳輸系統(tǒng)能夠?qū)崟r(shí)的、迅速的、可靠的處理接收到的信息[1]。但由于技術(shù)受限,表征系統(tǒng)性能好壞的CPU內(nèi)核性能和CPU可用帶寬之間的差距由于發(fā)展不均衡在不斷擴(kuò)大。總線頻率的提高仍然滯后于處理器頻率的增長(zhǎng),互連總線的性能從而成為嵌入式系統(tǒng)性能提高的新的瓶頸。
傳統(tǒng)的分級(jí)共享總線的帶寬和數(shù)據(jù)率都很低,其性能已經(jīng)達(dá)到極限,不能滿足未來嵌入式系統(tǒng)對(duì)性能的要求。由 Freescal和 Mercury共同研發(fā)的RapidIO互連技術(shù)孕育而生。RapidIO互連架構(gòu)是一種開放的高性能點(diǎn)對(duì)點(diǎn)包交換技術(shù),具有很高的可靠性和較少的引腳數(shù),具有較小的延遲和較大的帶寬。RapidIO總線技術(shù)主要用于系統(tǒng)內(nèi)部互聯(lián),并且支持芯片到芯片通信和板到板間的通信,2.0規(guī)范中已經(jīng)可以實(shí)現(xiàn)40Gbps的帶寬。RapidIO技術(shù)能滿足嵌入式基礎(chǔ)設(shè)施在應(yīng)用方面的廣泛要求。
RapidIO規(guī)范是是世界上第一個(gè)嵌入式互連國際開放標(biāo)準(zhǔn),由RapidIO行業(yè)協(xié)會(huì)支持開發(fā),并指導(dǎo) RapidIO架構(gòu)的未來發(fā)展方向以及推動(dòng) RapidIO架構(gòu)的應(yīng)用。
RapidIO技術(shù)是一種高性能、高可靠的基于包交換的互連技術(shù)[2]。它包括 2類技術(shù):面向高性能微處理器、網(wǎng)絡(luò)處理器及高性能底板互連的并行接口;面向串行背板、DSP和相關(guān)串行控制應(yīng)用的串行接口。8 /16位并行鏈路主要用于系統(tǒng)內(nèi)部互聯(lián),適合于近距離傳輸和對(duì)延遲有嚴(yán)格要求的應(yīng)用。1x/4x串行鏈路則適合傳輸距離長(zhǎng)、引腳數(shù)目有限且對(duì)延遲要求不高的應(yīng)用[3]。得到廣泛應(yīng)用的是串行技術(shù),串行和并行RapidIO具有相同的編程模型、事務(wù)處理和尋址機(jī)制。
RapidIO協(xié)議由2種實(shí)體組成:數(shù)據(jù)包和控制字符。數(shù)據(jù)包提供了終端節(jié)點(diǎn)間進(jìn)行邏輯事務(wù)處理的接口,控制字符則為物理層提供了握手機(jī)制。RapidIO協(xié)議由邏輯層、傳輸層和物理層構(gòu)成,其層次結(jié)構(gòu)如圖 1所示[4]。邏輯層位于最高層,說明在 RapidIO中應(yīng)用程序如何通信。傳輸層定義了RapidIO的地址空間并提供了報(bào)文在端點(diǎn)設(shè)備間傳輸所必要的路由信息。物理層描述設(shè)備接口級(jí),包括器件級(jí)接口的細(xì)節(jié)。該協(xié)議最明顯的一個(gè)特點(diǎn)就是RapidIO采用了單一的公用傳輸層規(guī)范來相容、會(huì)聚不同的邏輯層和物理層。在任意層對(duì)事務(wù)類型進(jìn)行修改或增減都不會(huì)更改到其它層的規(guī)范,具有很強(qiáng)的靈活可變性。這樣就使得系統(tǒng)的可擴(kuò)展性,模塊化以及重用機(jī)制成為可能。
圖1 RapidIO三層體系結(jié)構(gòu)
1個(gè)簡(jiǎn)單的 RapidIO應(yīng)用系統(tǒng)是圍繞交換機(jī)來組織的。他由2個(gè)基本模塊來構(gòu)建:端點(diǎn)器件和交換器件。RapidIO端點(diǎn)之間不會(huì)直接連接而是通過介于兩者之間的交換機(jī)實(shí)現(xiàn)互聯(lián)。請(qǐng)求包從發(fā)起端點(diǎn)送往目標(biāo)端點(diǎn)是通過交換機(jī)解釋包中的傳輸層信息,獲取目標(biāo)地址,查找路由表并進(jìn)行路由而完成的。這樣使得系統(tǒng)中的多個(gè)端點(diǎn)可以并行通訊,有效提高了系統(tǒng)的效率和可靠性。一個(gè)簡(jiǎn)單的RapidIO交換結(jié)構(gòu)如圖2所示。
圖2 簡(jiǎn)單RapidIO交換結(jié)構(gòu)
這里數(shù)字信號(hào)處理系統(tǒng)框架的設(shè)計(jì)是基于串行RapidIO。隨著數(shù)字業(yè)務(wù)的增加和復(fù)雜化,同樣為了便于系統(tǒng)維護(hù),現(xiàn)在數(shù)字信號(hào)處理系統(tǒng)已經(jīng)逐漸形成模塊化設(shè)計(jì)。整個(gè)系統(tǒng)由很多模塊構(gòu)成,每個(gè)模塊均有數(shù)字信號(hào)處理的能力,但每個(gè)模塊根據(jù)實(shí)際需要所承擔(dān)的任務(wù)不同,這樣單板出現(xiàn)故障修復(fù)時(shí)不影響其他板的工作。如下圖3所示,整個(gè)數(shù)字信號(hào)處理系統(tǒng)由集成在RapidIO總線上的各個(gè)子系統(tǒng)組成。
圖3 數(shù)字信號(hào)處理系統(tǒng)示意
由圖3可見整個(gè)系統(tǒng)由一個(gè)RapidIO交換模塊和多個(gè)信號(hào)處理模塊構(gòu)成。各個(gè)系統(tǒng)相互合作完成數(shù)字信號(hào)的處理的任務(wù),各個(gè)模塊之間的數(shù)據(jù)交換主要通過 RapidIO交換板來完成[5],整個(gè)系統(tǒng)之間的相互作用如圖4所示。
圖4 基于串行RapidIO的數(shù)字信號(hào)處理系統(tǒng)框架
在圖4基于串行RapidIO的互連結(jié)構(gòu)中,系統(tǒng)中集成在信號(hào)處理模塊中的高速串行RapidIO接口都連接到RapidIO交換板,通過對(duì)交換板的配置來實(shí)現(xiàn)各個(gè)模塊間的高速互連[6]。RapidIO交換板是模塊間相互通信的橋梁,也是整個(gè)系統(tǒng)中各個(gè)模塊對(duì)外通信的樞紐。
這里的數(shù)字信號(hào)處理系統(tǒng)的設(shè)計(jì)是基于串行RapidIO總線。由圖 4可得出數(shù)字信號(hào)處理系統(tǒng)由信號(hào)處理模塊和RapidIO交換模塊構(gòu)成。信號(hào)處理模塊相當(dāng)于 RapidIO拓?fù)浣Y(jié)構(gòu)中的端點(diǎn),RapidIO交換模塊相當(dāng)于RapidIO拓?fù)浣Y(jié)構(gòu)中的交換器件。其中信號(hào)處理模塊數(shù)據(jù)處理功能主要有 FPGA芯片完成,RapidIO交換模塊交換功能主要由Tsi578專用芯片完成。
IP核是一種預(yù)定義的并經(jīng)過驗(yàn)證的功能模塊,他可以根據(jù)設(shè)計(jì)的需要集成到系統(tǒng)的設(shè)計(jì)中去?;?IP核設(shè)計(jì)的主要特點(diǎn)是可重復(fù)使用已有的設(shè)計(jì)模塊,縮短設(shè)計(jì)時(shí)間,減少設(shè)計(jì)風(fēng)險(xiǎn),并提高系統(tǒng)性能。利用VHDL語言實(shí)現(xiàn)用戶自定義邏輯并結(jié)合調(diào)用的 IP核便可實(shí)現(xiàn)相應(yīng)的功能。Altera公司推出的支持RapidIO ?2.1規(guī)范的串行RapidIO內(nèi)核可支持多大 4個(gè)通道,每個(gè)通道速率為 5GBaud。該 IP核專門針對(duì)擁有多個(gè)嵌入式收發(fā)器的Stratix系列FPGA芯片而優(yōu)化。
本設(shè)計(jì)中采用的是 Altera公司的 StratixⅡGX系列FPGA芯片。StratixⅡ GX系列芯片是Altera研制的第三代集成了嵌入式收發(fā)器的FPGA。StratixⅡ GX FPGA的20個(gè)低功耗收發(fā)器工作在622 Mb/s至6.375 Gb/s工作范圍內(nèi),為需要高速串行收發(fā)器的大量應(yīng)用和協(xié)議提供了完整的可編程解決方案。經(jīng)過優(yōu)化的收發(fā)器擁有較強(qiáng)的抑制噪聲能力和優(yōu)秀的抖動(dòng)性能,收發(fā)器能夠在長(zhǎng)度超過40英寸的電路板和背板上進(jìn)行高速數(shù)據(jù)收發(fā)工作。收發(fā)器含有的多種特性能確保在較高數(shù)據(jù)速率下實(shí)現(xiàn)信號(hào)完整性,同時(shí)降低系統(tǒng)的功耗。經(jīng)過優(yōu)化設(shè)計(jì)的該系列FPGA芯片,能夠?yàn)樾枰咚俅蠭/O協(xié)議的應(yīng)用提供功能強(qiáng)大的解決方案。本方案采用 StratixⅡGX30系列芯片作為數(shù)字信號(hào)處理芯片。
根據(jù)以上的基于串行RapidIO的數(shù)字信號(hào)處理系統(tǒng)框架以及所選的芯片,所設(shè)計(jì)的基于 RapidIO核的信號(hào)處理模塊如圖5所示[7]。
圖5 基于RapidIO核的信號(hào)處理模塊
由圖5可見數(shù)字信號(hào)處理的流程為:中頻輸入信號(hào) IF_AD被天線接收后經(jīng)過模數(shù)轉(zhuǎn)化芯片LTC2209變?yōu)閿?shù)字信號(hào),數(shù)字信號(hào)在 FPGA芯片EP2SGX30芯片中經(jīng)過混頻,濾波,降采樣以及解調(diào)之后,窄帶信號(hào)經(jīng)數(shù)模轉(zhuǎn)換芯片AD5764變?yōu)橐纛l信號(hào)輸出,寬帶信號(hào)經(jīng)數(shù)模轉(zhuǎn)換芯片AD9957變?yōu)橐纛l信號(hào)輸出,DSP芯片 TMS320C6416負(fù)責(zé)信號(hào)的部分處理,并與FPGA交換數(shù)據(jù)以及產(chǎn)生相關(guān)控制信號(hào)。當(dāng)數(shù)據(jù)需要傳到其他模塊進(jìn)行處理或者其他模塊信號(hào)需要本模塊的相關(guān)信息時(shí),均通過集成在FPGA芯片中的RapidIO核進(jìn)行交換,由于RapidIO核集成了嵌入式收發(fā)器,所以最終直接進(jìn)行數(shù)據(jù)接收和發(fā)送的是嵌入式收發(fā)器,嵌入式收發(fā)器相當(dāng)于RapidIO的物理層。
信號(hào)處理模塊之間需要相互通信時(shí),必須有一個(gè)交換結(jié)構(gòu)為他們建立鏈接線路。本方案中采用Tsi578作為SRIO交換器件,Tsi578是Tundra公司研發(fā)的第三代支持串/并行RapidIO協(xié)議的交換機(jī),他能支持80 Gb/s的聚合帶寬。他在前Tsi568的基礎(chǔ)上增加了包括廣播、傳輸管理和可編程的緩存深度等新功能。該芯片可支援串行RapidIO的處理器和周邊設(shè)備。Tsi578有多達(dá)8個(gè)4x模式端口或者16個(gè) 1x模式端口,靈活的選擇端口配置,可以得到多種端口帶寬和頻率選項(xiàng)。借助于Tsi578系列交換機(jī),用戶可在成本受控的情況下開發(fā)出功能強(qiáng)大,性能優(yōu)越的系統(tǒng)。
本數(shù)字信號(hào)處理系統(tǒng)交換結(jié)構(gòu)硬件實(shí)現(xiàn)框圖如圖6所示。該系統(tǒng)以Tsi578芯片為核心,同時(shí)集成了5個(gè)信號(hào)處理模塊,每個(gè)Tsi578可提供16個(gè)1x模式的 SRIO端口,由于每個(gè)模塊均使用串行RapidIO,將每個(gè)模塊連接到其中的一個(gè)1x端口上。通過對(duì)Tsi578的配置,在上電時(shí)系統(tǒng)自動(dòng)建立路由表,完成每個(gè)端口間的鏈路的建立。
圖6 數(shù)字信號(hào)系統(tǒng)交換結(jié)構(gòu)
該文在串行RapidIO的基礎(chǔ)上提出了基于串行RapidIO的數(shù)字信號(hào)處理系統(tǒng)架構(gòu),使得高速數(shù)據(jù)能夠得到有效可靠地傳輸。RapidIO互連結(jié)構(gòu)是一種高性能點(diǎn)對(duì)點(diǎn)的包交換技術(shù),他所具備的高寬帶,低延遲,高可靠性能的優(yōu)點(diǎn)為系統(tǒng)內(nèi)部通信提供了非常好的解決方案。隨著RapidIO生態(tài)系統(tǒng)的建立及完善,未來RapidIO將會(huì)得到更廣泛的應(yīng)用并占據(jù)更多的市場(chǎng),其發(fā)展前景非常廣闊,值得國內(nèi)同行深入研究。
[1]王帆,劉云.串行 RapidIO在多 DSP系統(tǒng)中的應(yīng)用初探[J].計(jì)算機(jī)與數(shù)字工程,2008,36(08):204-207.
[2]SAM FULLER.RapidIO 嵌入式系統(tǒng)互連[M].北京:電子工業(yè)出版社,2006.
[3]戴蕭嫣,王立恒,李圣昆,等.基于LVDS的長(zhǎng)線傳輸模塊設(shè)計(jì)[J].通信技術(shù),2009,42(11):4-6.
[4]崔維嘉,樊少杰.新一代的總線結(jié)構(gòu)──RapidIO[J].通信技術(shù),2001(04):49-50.
[5]林玲,蔣俊,黎明,等.RapidIO在多處理器系統(tǒng)互連中應(yīng)用[J].計(jì)算機(jī)工程,2006,32(04):244-246.
[6]鄧豹,趙小冬.基于串行RapidIO的嵌入式互連研究[航空計(jì)算技術(shù),2005,38(03):123-126.
[7]呂遵明,王彥剛.基于串行 RapidIO的通用數(shù)字信號(hào)理模塊設(shè)計(jì)[J].信息化研究,2009,35(09):39-4[8]張小莉.基于串口的DSP軟件下載設(shè)計(jì)與實(shí)現(xiàn)[J].信安全與通信保密,2012(01):70-71.
[9]孟惠霞.MATLAB-DSP集成環(huán)境下的 FIR數(shù)字濾波器計(jì)[J].信息安全與通信保密,2009(06):58-59,63.