亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

基于fpga、gpu和cpu混合架構(gòu)的實(shí)時相關(guān)器的制造方法_2

文檔序號:8498302閱讀:來源:國知局
數(shù)來改變頻譜通道的 帶寬,頻譜分辨率最高能達(dá)到幾赫茲,適用于高精度的天文觀測。
【附圖說明】
[0030] 圖1為本發(fā)明的基于FPGA、GPU和CPU混合架構(gòu)的實(shí)時相關(guān)器的軟件結(jié)構(gòu)框圖;
[0031] 圖2為本發(fā)明的基于FPGA、GPU和CPU混合架構(gòu)的實(shí)時相關(guān)器的硬件連接示意圖;
[0032] 圖3為本發(fā)明的基于FPGA、GPU和CPU混合架構(gòu)的實(shí)時相關(guān)器的數(shù)據(jù)處理流程圖;
[0033] 圖4A為本發(fā)明的基于FPGA、GPU和CPU混合架構(gòu)的實(shí)時相關(guān)器的一個實(shí)施例的測 試結(jié)果圖;
[0034] 圖4B為本發(fā)明的基于FPGA、GPU和CPU混合架構(gòu)的實(shí)時相關(guān)器的另一個實(shí)施例的 測試結(jié)果圖;
[0035] 圖4C為本發(fā)明的基于FPGA、GPU和CPU混合架構(gòu)的實(shí)時相關(guān)器的又另一個實(shí)施例 的測試結(jié)果圖。
【具體實(shí)施方式】
[0036] 為使進(jìn)一步深入了解本發(fā)明的技術(shù)手段與特征,謹(jǐn)配合附圖再予舉例進(jìn)一步具體 說明于后:
[0037] 相關(guān)器是天文領(lǐng)域應(yīng)用較為廣泛的一種終端設(shè)備,它能將信號進(jìn)行兩兩相關(guān),以 獲得兩信號之間的相似性,如信號的相位差;也可將信號進(jìn)行自相關(guān),以獲得該信號的功 率譜。為簡單起見,假設(shè)有兩個同頻的信號f(t)=Acos(cot+(p1)和g(t)=Bcos(cot+q>2),則 自相關(guān)與互相關(guān)的定義分別為:f(t)*f(t)=P(-t)?f(t),f(t)*g(t)=P(-t)?g(t),(其中★ 表示相關(guān),*表示共軛,@表示卷積)。根據(jù)傅立葉變換定理,時域卷積對應(yīng)頻域相乘,即: f*=(t)?f(-t)=F*(ra)'F(-G)),:P(t)?g(-t)=F*(?yG(-{〇),其中?表示相乘。為了簡化計(jì)算, 可先將兩路復(fù)數(shù)時域信號轉(zhuǎn)換到頻域,然后再完成兩路復(fù)數(shù)信號的自相關(guān)和互相關(guān)計(jì)算, 由于在頻域只需相乘即可,因而使計(jì)算過程得到大大的簡化,節(jié)省了軟硬件資源與計(jì)算時 間。
[0038] 本發(fā)明的實(shí)時相關(guān)器基于上述原理實(shí)現(xiàn),可對兩路或多路信號進(jìn)行高通道分辨率 的實(shí)時相關(guān)運(yùn)算(在圖1和2的實(shí)施例中以兩路信號為例進(jìn)行說明)。在該實(shí)施例中,相關(guān) 器包括依次連接的信號采樣模塊1、基于FPGA的信號預(yù)處理模塊2、高速傳輸網(wǎng)絡(luò)模塊3、基 于CPU的解包模塊4、基于GPU的信號處理及相關(guān)運(yùn)算模塊5、以及基于CPU的控制模塊6, 其中,控制模塊6還與信號預(yù)處理模塊2相連。
[0039] 下面結(jié)合圖1和2對上述實(shí)施例中的各個模塊進(jìn)行詳細(xì)描述:
[0040] 信號采樣模塊1采用AD轉(zhuǎn)換器實(shí)現(xiàn),其具有兩個分別用于采樣A、B兩路信號的通 道。
[0041] 信號預(yù)處理模塊2用于對每個通道所采樣的信號依次進(jìn)行混頻、低通濾波和打包 處理,其包括:兩個連接至AD轉(zhuǎn)換器并分別用于對兩個通道所采樣的信號進(jìn)行數(shù)字混頻處 理的混頻器21、兩個一一對應(yīng)連接至兩個混頻器21并分別用于對經(jīng)過相應(yīng)混頻器21處理 的信號進(jìn)行數(shù)字低通濾波處理的低通濾波器22、以及一連接至N個低通濾波器22并用于 按預(yù)定格式將經(jīng)過低通濾波器22處理的信號進(jìn)行打包處理以便高速傳輸?shù)拇虬鼏卧?3。 如圖2所示,信號預(yù)處理模塊2通過Z-DOK接口與AD轉(zhuǎn)換器通信,其所有組成部分均基 于美國伯克利大學(xué)CASPER(卡斯帕)組織設(shè)計(jì)的ROACH-FPGA(可重構(gòu)開放式架構(gòu)硬件計(jì) 算平臺-現(xiàn)場可編程門陣列,其核心部件為XilinxVirtex5FPGA)硬件平臺實(shí)現(xiàn),并在 Matlab/Simulink和Xilinx/SystemGenerator聯(lián)合軟件平臺環(huán)境下進(jìn)行開發(fā),米用圖形 化編程的方式,高效實(shí)現(xiàn)FPGA的設(shè)計(jì)構(gòu)建。
[0042] 高速傳輸網(wǎng)絡(luò)模塊3可以采用萬兆交換網(wǎng)絡(luò)或光纖傳輸網(wǎng)絡(luò)等實(shí)現(xiàn),在本實(shí)施例 中采用的是萬兆交換網(wǎng)絡(luò),其用于將經(jīng)過信號預(yù)處理模塊2打包的數(shù)據(jù)傳輸至解包模塊4。
[0043] 解包模塊4集成在CPU中,其接收到數(shù)據(jù)后按照打包格式進(jìn)行解包處理,以使其分 解成兩路信號,以便后續(xù)數(shù)據(jù)處理。
[0044] 信號處理及相關(guān)運(yùn)算模塊5用于對解包后的兩路信號分別依次進(jìn)行多相濾波、傅 立葉變換、相關(guān)運(yùn)算和積分處理,其包括:連接至解包模塊的兩個多相濾波器51,分別設(shè)置 為對解包模塊4分解出的兩路信號進(jìn)行多相濾波處理,以完成頻率通道的劃分,并抑制信 號中的鏡像干擾和鄰頻干擾;一一對應(yīng)連接至兩個多相濾波器51的兩個傅立葉變換單元 52,分別設(shè)置為對經(jīng)過相應(yīng)多相濾波器51處理的信號進(jìn)行傅立葉變換,以使其轉(zhuǎn)換成相應(yīng) 的頻域信號;一連接至兩個傅立葉變換單元52的實(shí)時相關(guān)運(yùn)算單元53,其設(shè)置為根據(jù)兩個 傅立葉變換單元52轉(zhuǎn)換成的兩個頻域信號進(jìn)行自相關(guān)運(yùn)算和互相關(guān)運(yùn)算;以及一連接至 實(shí)時相關(guān)運(yùn)算單元53的積分器54,其設(shè)置為對實(shí)時相關(guān)運(yùn)算單元53的運(yùn)算結(jié)果進(jìn)行積分, 以利用積分效應(yīng)抑制隨機(jī)噪聲,同時壓縮數(shù)據(jù)量減小存儲空間。優(yōu)選地,信號處理及相關(guān)運(yùn) 算模塊5采用的GPU為NVIDIA(英偉達(dá))公司的GeForceGTXTITAN型號,該模塊的所有 組成部分均基于CUDA(統(tǒng)一計(jì)算設(shè)備架構(gòu))進(jìn)行程序設(shè)計(jì)開發(fā),CUDA架構(gòu)提供了一種并行 計(jì)算平臺和編程模型,可將用于圖像處理、具有超高并行處理能力的GPU運(yùn)用到普通運(yùn)算 處理中,從而大幅提升計(jì)算性能,解決復(fù)雜的計(jì)算問題。由于采用的GPU含有2688個CUDA 核,內(nèi)存訪問帶寬為288. 4GB/s,而在CUDA架構(gòu)的設(shè)計(jì)中一般將一個GPU作為一個網(wǎng)格節(jié) 點(diǎn),一個CUDA核作為一個線程塊,往下再分子線程,這種三級結(jié)構(gòu)能使并行計(jì)算的處理性 能最大幅度的提升,另外簡單增加GPU即可實(shí)現(xiàn)網(wǎng)格節(jié)點(diǎn)的擴(kuò)容(計(jì)算性能的提升),因此 對大數(shù)據(jù)量的信號實(shí)時處理能夠勝任。
[0045] 控制模塊6集成在CPU中,通過百兆網(wǎng)絡(luò)與FPGA進(jìn)行通信和監(jiān)控,其一方面完成 整個系統(tǒng)的邏輯和流程控制,包括系統(tǒng)初始化、FPGA程序加載、參數(shù)配置(如FFT點(diǎn)數(shù)、積 分時間、多相濾波參數(shù)等)和狀態(tài)查詢、內(nèi)存分配與回收、萬兆交換網(wǎng)絡(luò)監(jiān)測等,另一方面 設(shè)置為存儲和圖形顯示積分處理的結(jié)果。
[0046] 在本發(fā)明中,CUDA的編程模型是將CPU作為主控制器,GPU作為協(xié)處理器(數(shù)據(jù) 處理器)。CPU和GPU協(xié)同來完成任務(wù),其中,CPU負(fù)責(zé)處理強(qiáng)邏輯性和串行計(jì)算相關(guān)的工 作,GPU則主要處理線程間可以高度并行的數(shù)據(jù)處理工作。在CUDA的架構(gòu)下,如果確定了 程序中的并行部分,程序就可以分為兩個部分,一部分由CPU的處理,另一部分由GPU進(jìn)行 處理。CUDA整個程序包括main,cu、kernels,cu、dataread.cu、plot,cu、gencoeff.py等, 其中,main,cu為主程序(該主程序?qū)崿F(xiàn)控制模塊的功能),完成初始化設(shè)置、內(nèi)存分配與 回收、流程控制等;kernels,cu為GPU并行運(yùn)算核程序,主要實(shí)現(xiàn)信號的并行處理,包括多 相濾波、傅立葉變換、相關(guān)運(yùn)算、積分等信號處理,其中,傅里葉變換使用了CUFFT庫里的 cufftExecC2C函數(shù),多相濾波系數(shù)由gencoeff.py生成;dataread.cu完成lOGbE網(wǎng)絡(luò)數(shù)據(jù) 的讀取和CPU與GPU間數(shù)據(jù)交換(采用cudaMemcpy函數(shù));plot.cu將數(shù)據(jù)處理的結(jié)果進(jìn) 行實(shí)時顯示并存儲。
[0047] 圖3示出了本發(fā)明的主要數(shù)據(jù)處理流程,總體來說,采用CPU完成邏輯和流程控 制,包括初始化、內(nèi)存分配與回收、FPGA程序加載與參數(shù)配置、CPU與GPU間數(shù)據(jù)交換、數(shù)據(jù) 獲取、存儲與顯示等;采用FPGA進(jìn)行采樣和預(yù)處理、并將數(shù)據(jù)打包發(fā)送到lOGbE網(wǎng)絡(luò);利用 并行運(yùn)算來完成多相濾波、傅立葉變換、相關(guān)運(yùn)算、積分等信號處理。具體來說,首先, 由CPU完成初始化、并調(diào)用CUDA庫函數(shù)為變量分
當(dāng)前第2頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1