專利名稱:基于多fpga并行處理的海底三維聲納圖像成像系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及FPGA技術(shù)及分布式并行計(jì)算技術(shù),具體來說是一種多 FPGA并行處理的海底三維聲納圖像成像系統(tǒng)。
背景技術(shù):
"相控陣三維聲學(xué)攝像聲納"是一種新型的實(shí)時(shí)三維圖像聲納,它用一 個(gè)聲脈沖透射整個(gè)觀察體積,同時(shí)產(chǎn)生16384個(gè)實(shí)時(shí)波束信號(hào),經(jīng)過實(shí)時(shí) 信號(hào)處理得到三維聲納圖像。每秒鐘高達(dá)20次的更新率。
相控陣三維聲學(xué)攝像聲納系統(tǒng)成像的原理是采用數(shù)字波束形成器對(duì) 回波信號(hào)進(jìn)行延時(shí)后進(jìn)行乘累加的運(yùn)算。
以前的聲納成像系統(tǒng)通常采用數(shù)字信號(hào)處理器(Digital Signal Processor, DSP)實(shí)現(xiàn)。DSP具有技術(shù)較為成熟、實(shí)現(xiàn)工具完善、編程簡 單等優(yōu)點(diǎn),但由于其內(nèi)部結(jié)構(gòu)的限制,在進(jìn)行計(jì)算時(shí)經(jīng)常會(huì)出現(xiàn)緩存樸空 (Cache Miss)等現(xiàn)象,影響系統(tǒng)計(jì)算性能。DSP技術(shù)的設(shè)計(jì)通常持續(xù)計(jì) 算性能只能維持在其峰值計(jì)算性能的10% ~33%,無法取得很高的計(jì)算性 能。
近年來FPGA技術(shù)取得了飛速發(fā)展,已經(jīng)從最初只能面向純邏輯替代 的應(yīng)用轉(zhuǎn)變?yōu)槟軌蛎嫦驈?fù)雜的計(jì)算密集型應(yīng)用。最新推出的FPGA器件 中,不僅集成有豐富的可配置邏輯塊資源(Configurable Logic Block, CLB),還包括大量面向計(jì)算密集應(yīng)用的DSP單元、塊狀RAM (Block RAM, BRAM)和用于高速串行通信的RocketIO GTP收發(fā)器單元。同時(shí) 為方便FPGA的調(diào)試,各FPGA廠商還推出了片內(nèi)邏輯分析測(cè)試工具(如 Xilinx公司的ChipScope),在軟硬件上保證了在FPGA上實(shí)現(xiàn)高性能計(jì)算 的可行性。
雖然單FPGA芯片已經(jīng)取得了較高的計(jì)算性能,但受到半導(dǎo)體工藝的 限制,器件的速度和性能不可能無限提高。而且由于高速器件的應(yīng)用,也 給系統(tǒng)的設(shè)計(jì)和可靠性帶來了一系列的新問題,如功耗增大、信號(hào)完整性 惡化、系統(tǒng)的電磁兼容性難以保證等。并行計(jì)算技術(shù)的引入則為克服單器件的性能限制、滿足系統(tǒng)的高性能需求提供了4艮好的解決方案。為了在現(xiàn) 有技術(shù)條件下進(jìn)一步提高系統(tǒng)的計(jì)算性能,需要采用并行計(jì)算技術(shù)。
發(fā)明內(nèi)容
本發(fā)明提供了一種基于多FPGA并行處理的海底三維聲納圖像成像 系統(tǒng),該系統(tǒng)利用對(duì)2304路回波信號(hào)進(jìn)行同步采集,同時(shí)產(chǎn)生16384個(gè) 實(shí)時(shí)波束信號(hào),經(jīng)過實(shí)時(shí)信號(hào)處理得到三維聲納圖虧象。
一種基于多FPGA的并行處理的海底三維聲納圖像成像系統(tǒng),采用主 從分布式結(jié)構(gòu),包括48個(gè)子信號(hào)處理機(jī),1個(gè)主信號(hào)處理機(jī)與數(shù)據(jù)傳輸處 理器。
所述的子信號(hào)處理機(jī)(410)與主信號(hào)處理機(jī)(420)通過串行數(shù)據(jù)總線進(jìn) 行數(shù)據(jù)交互;
所述的數(shù)據(jù)傳輸處理器(430)與主信號(hào)處理機(jī)(420)通過串行數(shù)據(jù)總線 進(jìn)行數(shù)據(jù)交互。
所述的主信號(hào)處理機(jī)包含有4片F(xiàn)PGA芯片。
所述的48個(gè)子信號(hào)處理機(jī)是采用并行處理技術(shù),每個(gè)子信號(hào)處理機(jī) 包含有l(wèi)片F(xiàn)PGA芯片與48路模數(shù)轉(zhuǎn)換器,所述的模數(shù)轉(zhuǎn)換器對(duì)聲納回 波信號(hào)進(jìn)行同步數(shù)據(jù)采集。
所述的FPGA芯片內(nèi)部集成大量的DSP單元和Ram單元,DSP單元 用于并行數(shù)據(jù)運(yùn)算,Ram單元用于并行數(shù)據(jù)存儲(chǔ)。
所述的FPGA內(nèi)部DSP單元的乘法器可以選擇Xilinx公司的V-4系 列DSP48單元或V-5系列DSP48E單元。
所述的數(shù)據(jù)傳輸處理器采用嵌入式處理器,包括命令參數(shù)發(fā)送模塊、 數(shù)據(jù)接收模塊、互連網(wǎng)絡(luò)控制器、和存儲(chǔ)控制器。
命令參數(shù)發(fā)送模塊用于系統(tǒng)運(yùn)行工作、停止工作等命令與時(shí)間可變?cè)?益(TVG)等數(shù)據(jù)參數(shù)的發(fā)送;
數(shù)據(jù)接收模塊用于接收主信號(hào)處理機(jī)處理的結(jié)果數(shù)據(jù);
存儲(chǔ)控制器用于緩存主信號(hào)控制器傳來的結(jié)果數(shù)據(jù);
互連網(wǎng)絡(luò)控制器將結(jié)果數(shù)據(jù)上傳到干端的PC機(jī),進(jìn)行最后結(jié)果的后 處理與顯示。
所述三維聲納圖像成像系統(tǒng)的整體處理流程如下1) 當(dāng)數(shù)據(jù)傳輸處理器接收到上位機(jī)發(fā)來的"開始數(shù)據(jù)采集"命令時(shí),
數(shù)據(jù)傳輸處理器將"開始數(shù)據(jù)采集"命令發(fā)送給子信號(hào)處理機(jī),48個(gè)子信 號(hào)處理機(jī)上的多路模數(shù)轉(zhuǎn)換器開始同步工作,接著子信號(hào)處理機(jī)上的 FPGA對(duì)多路模數(shù)轉(zhuǎn)換器采集的數(shù)據(jù)進(jìn)行離散傅里葉變換,并將計(jì)算結(jié)果 傳輸給主信號(hào)處理機(jī)。
2) 主信號(hào)處理機(jī)接收子信號(hào)處理機(jī)上傳輸過來的數(shù)據(jù),并對(duì)接收到 的數(shù)據(jù)進(jìn)行波束形成算法,接著將波束形成算法的結(jié)果(波束能量矩陣) 傳輸給數(shù)據(jù)傳輸處理器。
3) 數(shù)據(jù)傳輸處理器接收主信號(hào)處理板傳輸過來的波束能量矩陣,并 將波束能量矩陣上傳給干端的PC機(jī)。
4) 當(dāng)數(shù)據(jù)傳輸處理器接收到上位機(jī)的"結(jié)束數(shù)據(jù)采集"命令時(shí),數(shù) 據(jù)傳輸處理器會(huì)將"結(jié)束數(shù)據(jù)采集"命令發(fā)送給子信號(hào)處理^L,子信號(hào)處 理機(jī)就停止數(shù)據(jù)采樣。
本發(fā)明優(yōu)點(diǎn)為系統(tǒng)利用對(duì)2304路回波信號(hào)進(jìn)行同步采集,同時(shí)產(chǎn) 生16384個(gè)實(shí)時(shí)波束信號(hào),經(jīng)過實(shí)時(shí)信號(hào)處理得到三維聲納圖像,從而實(shí) 現(xiàn)整個(gè)場(chǎng)景的實(shí)時(shí)顯示。實(shí)時(shí)的海底三維圖^^聲納成^f象系統(tǒng)在海上工程實(shí) 施、海港墻壁檢查、海底管道檢查、蛙人探測(cè)、水雷和水雷類目標(biāo)識(shí)別、 水下航行器的避障、導(dǎo)航等各方面具有廣泛的應(yīng)用前景。
圖1為本發(fā)明海底三維聲納圖像成像系統(tǒng)的結(jié)構(gòu)示意框圖; 圖2為本發(fā)明海底三維聲納圖像成像系統(tǒng)的數(shù)據(jù)傳輸處理器的內(nèi)部結(jié) 構(gòu)示意框圖3為本發(fā)明海底三維聲納圖像成像系統(tǒng)的子信號(hào)處理機(jī)的內(nèi)部結(jié)構(gòu) 示意框圖4為本發(fā)明海底三維聲納圖像成像系統(tǒng)的主信號(hào)處理機(jī)的內(nèi)部結(jié)構(gòu) 示意框圖5為本發(fā)明海底三維聲納圖像成像系統(tǒng)的工作流程圖。
具體實(shí)施例方式
如圖1所示,基于多FPGA并行處理的海底三維聲納圖像成像系統(tǒng),以嵌入式處理器作為數(shù)據(jù)傳輸處理器430,采用串行數(shù)據(jù)傳輸協(xié)議對(duì)子信 號(hào)處理機(jī)410與主信號(hào)處理機(jī)420進(jìn)行互連,組成主從分布式多FPGA并 行處理架構(gòu)。數(shù)據(jù)傳輸處理器430將主信號(hào)處理機(jī)的波束結(jié)果數(shù)據(jù)上傳到 干端的PC機(jī),PC機(jī)對(duì)波束結(jié)果數(shù)據(jù)進(jìn)行后處理并顯示。
子信號(hào)處理機(jī)410與主信號(hào)處理機(jī)420通過串行數(shù)據(jù)總線進(jìn)行數(shù)據(jù)交 互;數(shù)據(jù)傳輸處理器430與主信號(hào)處理機(jī)420通過串行數(shù)據(jù)總線進(jìn)行數(shù)據(jù) 交互。
如圖2所示,數(shù)據(jù)傳輸處理器里面的軟件功能模塊包括命令參數(shù)發(fā)送 模塊510、數(shù)據(jù)接收模塊520、以太網(wǎng)控制器530、和存儲(chǔ)控制器540,命 令參數(shù)發(fā)送^t塊510、數(shù)據(jù)接收模塊520、以太網(wǎng)控制器530、和存儲(chǔ)控制 器540在數(shù)據(jù)傳輸處理器內(nèi)部通過軟件編程實(shí)現(xiàn)
命令參數(shù)發(fā)送模塊是數(shù)據(jù)傳輸處理器采用12C接口與子信號(hào)處理機(jī)相 連,將"開始數(shù)據(jù)采集"、"結(jié)束數(shù)據(jù)采集""T VG控制中需設(shè)置的數(shù)值" 等參數(shù)命令通過I2C傳輸給子信號(hào)處理機(jī)。
數(shù)據(jù)接收模塊是數(shù)據(jù)傳輸處理器通過本地?cái)?shù)據(jù)總線與主信號(hào)處理機(jī) 相連。數(shù)據(jù)傳輸處理器通過數(shù)據(jù)接收模塊接收主信號(hào)處理機(jī)傳輸過來的波 束能量矩陣。
數(shù)據(jù)傳輸處理器里面的以太網(wǎng)控制器與外部以太網(wǎng)物理層芯片 (VITESSE公司的VSC8641芯片)相連實(shí)現(xiàn)千兆以太網(wǎng)接口,通過該千 兆以太網(wǎng)接口,數(shù)據(jù)傳輸處理器與干端的PC機(jī)進(jìn)行互聯(lián),將最終的波束 能量矩陣上傳給干端的PC機(jī)。
數(shù)據(jù)傳輸處理器里面的存儲(chǔ)控制器通過數(shù)據(jù)傳輸處理器芯片內(nèi)部集 成的DDR控制器與外部的DDR存儲(chǔ)器相連,該DDR存儲(chǔ)空間起到緩存 波束能量矩陣數(shù)據(jù)作用。
如圖3所示,子信號(hào)處理機(jī)410包含有48路換能器110、 48組信號(hào) 調(diào)理電路120、 48路模數(shù)轉(zhuǎn)換器130和1片F(xiàn)PGA芯片140。數(shù)據(jù)傳輸器 傳輸過來的T VG值用于控制調(diào)理電路的增益的大小,傳輸過來的命令控 制信號(hào)("開始數(shù)據(jù)采集"、"結(jié)束數(shù)據(jù)采集"等命令)用于控制子信號(hào)處 理機(jī)的起動(dòng)工作與停止工作。48路模數(shù)轉(zhuǎn)換器通過主信號(hào)處理機(jī)上傳輸過 來的同步時(shí)鐘信號(hào)完成對(duì)回波聲納信號(hào)的進(jìn)行同步采集,F(xiàn)PGA用于對(duì)輸入數(shù)據(jù)進(jìn)行離散傅里葉變換,其變換公式為J\TW-jjc(")exp(-j脊"A:),其 中W為離散傅里葉變換的點(diǎn)數(shù),4")表示采樣數(shù)據(jù),Z(A:)為離散傅里葉變
換的結(jié)果,A為頻率索引號(hào),同時(shí)A滿足以下關(guān)系式A-丄,其中A為
離散傅里葉變換的結(jié)果Z(A:)所對(duì)應(yīng)的信號(hào)頻率,厶為模數(shù)轉(zhuǎn)換器(ADC) 的采樣頻率。最終的離散傅里葉變換結(jié)果%(^)通過串行傳輸協(xié)議,發(fā)送給 主信號(hào)處理;t/L。
如圖4所示,主信號(hào)處理機(jī)420包含有4片F(xiàn)PGA芯片210。每片 FPGA芯片分別對(duì)子信號(hào)處理機(jī)處理過的576( 12x48 )路的信號(hào)進(jìn)行處理, 與子信號(hào)處理機(jī)一樣,該4片F(xiàn)PGA同樣用于對(duì)輸入數(shù)據(jù)進(jìn)行乘累加計(jì)算 操作,其計(jì)算公式為^=^7,其中g(shù)為一個(gè)128x128的波束能量矩陣, X代表x軸方向的時(shí)延參數(shù)組成的128x48的時(shí)延參數(shù)矩陣,該時(shí)延參數(shù) 矩陣通過查詢波束的時(shí)延參數(shù)表得到,M代表48x48的采樣數(shù)據(jù)的離散傅 里葉變換結(jié)果的數(shù)據(jù)矩陣,該數(shù)據(jù)矩陣是子信號(hào)處理機(jī)通過對(duì)采樣數(shù)據(jù)的 進(jìn)行離散傅里葉變換得到,y代表y軸方向的時(shí)延參^t組成的48x128的 參數(shù)矩陣,該時(shí)延參數(shù)矩陣通過查詢波束的時(shí)延參數(shù)表得到,所有時(shí)延參 數(shù)可以查詢波束的時(shí)延參數(shù)表得到。該計(jì)算過程分布在4片F(xiàn)PGA芯片內(nèi) 部,采用FPGA內(nèi)部DSP單元實(shí)現(xiàn)(V-4系列的DSP48單元和V-5系列 的DSP48E單元)。該4片F(xiàn)PGA芯片也是通過串行數(shù)據(jù)傳輸協(xié)議進(jìn)行數(shù) 據(jù)交換。主信號(hào)處理機(jī)最終將波束能量矩陣g上傳給數(shù)據(jù)傳輸處理器。
如圖5所示,基于多FPGA并行處理的海底三維聲納圖像成像系統(tǒng)工 作流程如下系統(tǒng)復(fù)位結(jié)束后,完成初始化,首先處于空閑狀態(tài)。當(dāng)數(shù)據(jù) 傳輸處理器430接收到上位機(jī)發(fā)來的"開始數(shù)據(jù)采集,,命令時(shí),48個(gè)子信 號(hào)處理機(jī)410上的多路模數(shù)轉(zhuǎn)換器開始同步工作,子信號(hào)處理機(jī)410上的 FPGA對(duì)多路模數(shù)轉(zhuǎn)換器采集的數(shù)據(jù)進(jìn)行離散傅里葉變換,并將計(jì)算結(jié)果 傳輸給主信號(hào)處理機(jī)進(jìn)行運(yùn)算,主信號(hào)處理機(jī)420將波束能量矩陣傳輸給 數(shù)據(jù)傳輸處理器,最后,數(shù)據(jù)傳輸處理器430將波束能量矩陣傳給干端的 PC機(jī)。當(dāng)數(shù)據(jù)傳輸處理器430接收到上位機(jī)"結(jié)束數(shù)據(jù)采集"命令時(shí), 整個(gè)系統(tǒng)又處于空閑狀態(tài)。
權(quán)利要求
1.一種基于多FPGA并行處理的海底三維聲納圖像成像系統(tǒng),其特征在于該系統(tǒng)采用主從分布式結(jié)構(gòu),由48個(gè)子信號(hào)處理機(jī)(410)、1個(gè)主信號(hào)處理機(jī)(420)和1個(gè)數(shù)據(jù)傳輸處理器(430)三部分組成;所述的子信號(hào)處理機(jī)(410)與主信號(hào)處理機(jī)(420)通過串行數(shù)據(jù)總線進(jìn)行數(shù)據(jù)交互;所述的數(shù)據(jù)傳輸處理器(430)與主信號(hào)處理機(jī)(420)通過串行數(shù)據(jù)總線進(jìn)行數(shù)據(jù)交互。
2. 如權(quán)利要求1所述的海底三維聲納圖像成像系統(tǒng),其特征在于 所述的數(shù)據(jù)傳輸處理器(430)釆用嵌入式處理器。
3. 如權(quán)利要求1所述的海底三維聲納圖像成像系統(tǒng),其特征在于 所述的數(shù)據(jù)傳輸處理器(430)包括命令參數(shù)發(fā)送模塊(510)、數(shù)據(jù)接收 模塊(520)、互連網(wǎng)絡(luò)控制器(530)、和存儲(chǔ)控制器(540);所述的命令參數(shù)發(fā)送模塊(510)用于數(shù)據(jù)參數(shù)的發(fā)送,所述的數(shù)據(jù) 參數(shù)包括系統(tǒng)運(yùn)行工作命令、停止工作命令與時(shí)間可變?cè)鲆?;所述的?shù)據(jù)接收模塊(520)用于接收主信號(hào)處理機(jī)(420)處理的結(jié) 果數(shù)據(jù);存儲(chǔ)控制器(540)用于緩存主信號(hào)控制器傳來的結(jié)果數(shù)據(jù); 互連網(wǎng)絡(luò)控制器(530)用于將結(jié)果數(shù)據(jù)上傳到干端的PC機(jī)并對(duì)最后 結(jié)果進(jìn)行后處理與顯示。
4. 如權(quán)利要求1所述的海底三維聲納圖像成像系統(tǒng),其特征在于 所述的主信號(hào)處理機(jī)(420)包含有4片F(xiàn)PGA芯片。
5. 如權(quán)利要求1所述的海底三維聲納圖像成像系統(tǒng),其特征在于 所述的子信號(hào)處理機(jī)(410)每個(gè)均包含有1片F(xiàn)PGA芯片和48路模數(shù)轉(zhuǎn)換 器,所述的模數(shù)轉(zhuǎn)換器對(duì)聲納回波信號(hào)進(jìn)行同步數(shù)據(jù)釆集。
6. 如權(quán)利要求5所迷的海底三維聲納圖像成像系統(tǒng),其特征在于 所述的子信號(hào)處理機(jī)(410)每個(gè)均釆用并行處理^技術(shù)。
7. 如權(quán)利要求4或5所述的海底三維聲納圖像成像系統(tǒng),其特征在 于所述的FPGA芯片內(nèi)部設(shè)有大量的DSP單元和Ram單元,DSP單元 用于并行數(shù)據(jù)運(yùn)算,Ram單元用于并行數(shù)據(jù)存儲(chǔ)。
8.如權(quán)利要求7所述的海底三維聲納圖像成像系統(tǒng),其特征在于 所述的FPGA內(nèi)部的DSP單元的乘法器為Xilinx的V-4系列的DSP48單 元或V-5系列的DSP48E單元。
全文摘要
本發(fā)明公開了基于多FPGA并行處理的海底三維聲納圖像成像系統(tǒng),系統(tǒng)采用主從分布式結(jié)構(gòu),使用FPGA和嵌入式處理器完成對(duì)回波信號(hào)的處理與傳輸,由48個(gè)子信號(hào)處理機(jī)、1個(gè)主信號(hào)處理機(jī)和1個(gè)數(shù)據(jù)傳輸處理器組成。當(dāng)系統(tǒng)的數(shù)據(jù)傳輸處理器收到上位機(jī)發(fā)送的“開始數(shù)據(jù)采集”命令時(shí),子信號(hào)處理機(jī)上的多路模數(shù)轉(zhuǎn)換器開始同步工作,對(duì)多路模數(shù)轉(zhuǎn)換器采集的數(shù)據(jù)進(jìn)行離散傅里葉變換,并將計(jì)算結(jié)果傳輸給主信號(hào)處理機(jī),主信號(hào)處理機(jī)進(jìn)行計(jì)算得到將波束能量矩陣傳輸給數(shù)據(jù)傳輸處理器,最后將波束能量矩陣傳給干端的PC機(jī)。本發(fā)明系統(tǒng)利用對(duì)2304路回波信號(hào)進(jìn)行同步采集,產(chǎn)生16384個(gè)實(shí)時(shí)波束信號(hào),經(jīng)實(shí)時(shí)信號(hào)處理得到三維聲納圖像。
文檔編號(hào)G01S15/00GK101625412SQ20091010138
公開日2010年1月13日 申請(qǐng)日期2009年8月3日 優(yōu)先權(quán)日2009年8月3日
發(fā)明者翔 田, 朋 陳, 陳耀武 申請(qǐng)人:浙江大學(xué)