《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于DSP+FPGA的高速數(shù)據(jù)處理與存儲系統(tǒng)設計
基于DSP+FPGA的高速數(shù)據(jù)處理與存儲系統(tǒng)設計
2015年微型機與應用第15期
劉 歡,邢 輝
(北京環(huán)境特性研究所,北京 100859)
摘要: 針對信號處理數(shù)據(jù)量大、實時性要求高的特點,從實際應用出發(fā),設計了以雙DSP+FPGA為核心的并行信號處理模塊。為了滿足不同的信號處理任務需求,F(xiàn)PGA可以靈活地選擇與不同的DSP組成不同的信號處理結構,同時為滿足大數(shù)據(jù)存儲要求設計了可方便網(wǎng)絡控制的數(shù)據(jù)存儲模塊。模塊之間可以通過自定義LVDS接口實現(xiàn)互聯(lián),組成一個系統(tǒng)。
Abstract:
Key words :

  摘  要: 針對信號處理數(shù)據(jù)量大、實時性要求高的特點,從實際應用出發(fā),設計了以雙DSP+FPGA為核心的并行信號處理模塊。為了滿足不同的信號處理任務需求,F(xiàn)PGA可以靈活地選擇與不同的DSP組成不同的信號處理結構,同時為滿足大數(shù)據(jù)存儲要求設計了可方便網(wǎng)絡控制的數(shù)據(jù)存儲模塊。模塊之間可以通過自定義LVDS接口實現(xiàn)互聯(lián),組成一個系統(tǒng)。

  關鍵詞: 實時性;雙DSP+FPGA;數(shù)據(jù)存儲

0 引言

  隨著科學技術的飛速發(fā)展,在無線通信、軍事、工業(yè)、圖像和醫(yī)療等領域高速大數(shù)據(jù)采集已經(jīng)成為信號處理系統(tǒng)中不可或缺的部分,這就意味著在現(xiàn)代實時信號處理領域,在有限的時間內(nèi),需要處理和存儲的數(shù)據(jù)量更大,同時為達到實時性,還要求信號處理系統(tǒng)具有多任務并行處理能力,這就對信號處理系統(tǒng)的處理能力提出了更高要求。與此同時,無論是雷達信號目標識別還是可見光的目標識別,都需要采集大量數(shù)據(jù)加強數(shù)據(jù)庫建立,從而用來分析目標識別算法的性能,這無疑對數(shù)據(jù)存儲提出了挑戰(zhàn)。針對這些問題,本文采用兩片ADI公司的ADSP TS201設計了多DSP松耦合的并行數(shù)字信號處理模塊,并以兩片Xilinx公司的Spartan3AN系列中的XC3S1400AN和TI公司的DP83865為核心設計了高速大容量、可以通過網(wǎng)口進行控制的數(shù)據(jù)存儲模塊,模塊之間通過鏈路口橋接構成一個系統(tǒng)。

1 芯片選型

  1.1 FPGA選擇

  FPGA選擇Xilinx公司的Spartan3AN系列中的XC3S1400AN,此芯片含有502個I/O管腳[1]可以靈活地與DSP互聯(lián),同時可配成227對差分對,擴展成LVDS總線用于高速數(shù)據(jù)傳輸。選擇此芯片的另一個優(yōu)點是片內(nèi)Flash達到16 Mbit,可將程序直接固化到片內(nèi),簡化了外圍結構。

  1.2 信號處理芯片選擇

  ADSP TS201是ADI公司推出的一款性能極高的靜態(tài)超標量處理器,對大的信號處理任務和通信結構進行了優(yōu)化,具有適合多DSP并行處理的突破性體系結構,可廣泛應用于大存儲量、高性能、高速度的信號處理和圖像處理系統(tǒng)中[2]。TS201的主要性能指標如下:

 ?。?)最高工作主頻可達600 MHz,指令周期為1.67 ns,可支持單指令多數(shù)據(jù)(SIMD)操作;

 ?。?)6位定點處理能力達4 800 MMAC/s,是C64X的1.6倍;浮點處理能力是C67X的2.6倍;

 ?。?)DSP之間LINK口通信可以達到單向最大速率為600 MB/s,雙向1.2 GB/s;

  (4)獨立的片內(nèi)總線(4條128位數(shù)據(jù)總線,4條32位地址總線)可提供4 GB的尋址空間;

 ?。?)可通過共享總線提供無縫連接以用于片內(nèi)集成總線的仲裁控制;

 ?。?)片上SDRAM控制器和片上DMA控制器可提供14條DMA通道。

2 信號處理體系設計

  信號處理器可非常方便地構建簡單的處理系統(tǒng),也可以利用其多處理器接口和資源方便地構建多處理器系統(tǒng)。由于TS201特有的鏈路口具有強大的數(shù)據(jù)傳輸能力,在構成多處理器系統(tǒng)時,既可以構建總線共享的多處理器系統(tǒng)(緊耦合系統(tǒng)),又可以構建鏈路口耦合系統(tǒng)(松耦合系統(tǒng))。以此為基礎還可以構建總線共享和鏈路口耦合相結合的混合耦合系統(tǒng)[3-4]。松耦合系統(tǒng)是典型的鏈路口共享的多處理器體系結構。其系統(tǒng)組成框圖如圖1所示。

001.jpg

  緊耦合多處理器系統(tǒng)是一種典型的總線共享的多處理器體系結構,其系統(tǒng)組成框圖如圖2所示。

002.jpg

  混合耦合多處理器體系結構,其系統(tǒng)組成框圖如圖3所示。

003.jpg

  與其他兩種耦合相比,松耦合系統(tǒng)無需總線仲裁,所以編程控制較為簡單,另一方面由于松耦合系統(tǒng)結構簡單,PCB實現(xiàn)較容易,本文根據(jù)實際需求選擇松耦合系統(tǒng)體系。

3 系統(tǒng)硬件設計

  高速數(shù)據(jù)并行處理與存儲系統(tǒng)在標準的CPCI板卡上,按功能區(qū)域劃分設置2片TS201,2片XC3S1400AN,1片DP83865芯片和6片MT29F256G08AUCAB,實現(xiàn)多處理器綜合處理的超強處理和存儲能力,系統(tǒng)框圖如圖4所示。

004.jpg

  3.1信號處理單元硬件設計

  信號處理單元的運算結構具有靈活性和可裁減性,F(xiàn)PGA可以靈活地選擇與不同的DSP組成不同的計算結構,滿足不同運算量的需求。對于運算量較小的任務,可以只使用FPGA和DSP1完成信號處理任務;而FPGA和兩個DSP組合在一起可以完成運算量更大的任務;同時為保證系統(tǒng)數(shù)據(jù)傳輸?shù)膶崟r性,本硬件平臺在各級流水之間提供高速靈活的數(shù)據(jù)傳輸通道。FPGA與2片DSP采用高速通用總線和鏈路口互連。2片DSP之間采用LinkPort互連。

  DSP本身就帶有24 Mbit內(nèi)存,為了進一步提高硬件平臺的存儲能力,使之能夠進行一些復雜的數(shù)據(jù)處理,為DSP配置了高速SDRAM。硬件平臺的另一大特點是配置的靈活性。DSP1作為主DSP通過Link口完成第二片DSP的程序加載,由于本系統(tǒng)采取標準的CPCI板卡設計,便于不同處理系統(tǒng)的級聯(lián),不同的系統(tǒng)之間若要求時序統(tǒng)一,則可以通過Link口統(tǒng)一加載程序。

  3.2 存儲單元硬件設計

  存儲單元控制采用千兆以太網(wǎng)接口,可以方便地與普通計算機互連。方案如圖5所示。

005.jpg

  DSP處理的數(shù)據(jù)通過Link口發(fā)往存儲單元,在FPGA內(nèi)將Link口協(xié)議轉換成相應的位數(shù)據(jù)寫到NAND FLASH存儲起來。可根據(jù)實際存儲需求配置不同容量和數(shù)量的FLASH芯片[5-6]。

  千兆以太網(wǎng)模塊既完成存儲器與上位機通信的功能,又作為數(shù)據(jù)輸出接口。千兆以太網(wǎng)接口的物理層由物理層芯片DP83865實現(xiàn),物理層以上協(xié)議在FPGA內(nèi)部實現(xiàn)。數(shù)據(jù)傳輸采用UDP協(xié)議,上位機應用程序使用網(wǎng)絡編程與FPGA進行通信,發(fā)送相應的控制命令。主機可以通過發(fā)送上傳命令將存儲的信息讀出來。

4 系統(tǒng)軟件設計

  軟件的外部接口主要有3種,如表1所示。

007.jpg

  系統(tǒng)上電以后信號處理單元以接收鏈路口中斷為觸發(fā)事件,驅動DSP處理器完成實時信號處理任務,并在處理完成后將處理結果通過DSP鏈路口回送至信號源端由其他系統(tǒng)執(zhí)行相應操作。

  在信號處理的同時對信息數(shù)據(jù)及處理中間結果數(shù)據(jù)進行存儲,以便進行數(shù)據(jù)庫的建立及算法的分析改進。信號處理與存儲系統(tǒng)軟件工作調(diào)度流程圖如圖6所示。

006.jpg

5 結論

  本文針對高速數(shù)據(jù)并行處理與存儲中存在的一些問題提出了高速信號并行處理與存儲系統(tǒng)。本系統(tǒng)采用ADI公司的TigerSHARC處理器,每片DSP處理器在600 MHz時鐘下提供3.6 GFLOPS的32位浮點運算能力,2片處理器的計算能力為7.2 GFlops@600 MHz。

  在Xilinx公司的芯片XC3S1400AN上實現(xiàn)了TS201和FPGA的LVDS接口互連設計。

  最終結果表明,在本文所提出的關鍵設計的要求下,LINK口通信能夠實現(xiàn)DSP之間互連,板內(nèi)Link口的傳輸帶寬可以達到800 MB/s,板間Link口的傳輸帶寬可以達到600 MB/s,由于本文要處理的數(shù)據(jù)不會大于20 MB/s,所以完全可以滿足數(shù)據(jù)傳輸要求。

  擴展LVDS總線主要用于信號處理單元向數(shù)據(jù)存儲單元收發(fā)信息,數(shù)據(jù)傳輸速率最大為20 MB/s,而LVDS總線的傳輸速率可以達到250 MB/s,且通信數(shù)據(jù)傳輸無誤碼、穩(wěn)定。該結果說明了以FPGA為核心的數(shù)據(jù)存儲單元有效地提高了數(shù)據(jù)存儲的可靠性,實現(xiàn)了高速、穩(wěn)定的數(shù)據(jù)傳輸。

參考文獻

  [1] Xilinx. Spartan-3 generation FPGA user guide[EB/OL].(2007-04-09)[2015-03-10]. http://www.xilinx.com.

  [2] ADSP-T S201 TigerSHARC process or hardware reference[Z]. ADI, 2004.

  [3] 馮小平,曹向海,鮑丹.TigerSHARC處理技術及其應用[M].西安:西安電子科技大學出版社,2010.

  [4] 武岳.基于多DSP的硬件平臺設計與調(diào)試[D].成都:電子科技大學,2007.

  [5] 晏敏,龍小奇,章兢,等.開放式大容量NAND Flash數(shù)據(jù)存儲系統(tǒng)設計與實現(xiàn)[J].微電子學與計算機,2009,26(11):13-16.

  [6] 趙軍偉,李宏穆,莊阿龍,等.NandFLASH和NorFLASH接口設計和驅動開發(fā)[J].嵌入式技術,2009(14):40-43.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉載。