梁 影, 張鳳萍, 鄭廣瑜, 范曉光, 倪 亮
(1.上海無(wú)線電設(shè)備研究所,上海201109;2.上海目標(biāo)識(shí)別與環(huán)境感知工程技術(shù)研究中心,上海201109)
高分辨率成像雷達(dá)可用于提高武器系統(tǒng)對(duì)作戰(zhàn)目標(biāo)的識(shí)別精度,實(shí)現(xiàn)導(dǎo)彈武器的精確打擊,是雷達(dá)系統(tǒng)的一大發(fā)展趨勢(shì)。而高速目標(biāo)的高分辨探測(cè)在數(shù)據(jù)吞吐量、算法復(fù)雜度及處理時(shí)效上給軟件設(shè)計(jì)提出了更高的要求。現(xiàn)場(chǎng)可編程門(mén)陣列(Field Programmable Gate Array,FPGA)具有體積小、功耗低、速度快等許多優(yōu)點(diǎn)。利用FPGA的并行處理能力,采用多級(jí)流水線的操作,能大大提高系統(tǒng)的運(yùn)行速度。
本文研究設(shè)計(jì)了一種基于FPGA的雷達(dá)目標(biāo)搜索與跟蹤數(shù)字信號(hào)處理系統(tǒng),實(shí)現(xiàn)了多通道接收機(jī)中頻信號(hào)的數(shù)字下變頻。降低了后續(xù)處理的數(shù)據(jù)吞吐量,實(shí)現(xiàn)了雷達(dá)系統(tǒng)對(duì)目標(biāo)速度、角度和距離的準(zhǔn)確搜索。并通過(guò)大帶寬設(shè)計(jì)、多次積累實(shí)現(xiàn)目標(biāo)的高分辨成像探測(cè),實(shí)現(xiàn)了目標(biāo)的高精度實(shí)時(shí)跟蹤。為了提高軟件的開(kāi)發(fā)效率,在設(shè)計(jì)過(guò)程中對(duì)系統(tǒng)生成器(System Generator,Sys-Gen)開(kāi)發(fā)工具及高層次綜合(High Level Synthesis,HLS)設(shè)計(jì)方法進(jìn)行研究,結(jié)合軟件設(shè)計(jì)過(guò)程中各個(gè)模塊的特點(diǎn),利用SysGen進(jìn)行了數(shù)字下變頻模塊的設(shè)計(jì)、實(shí)現(xiàn),采用HLS設(shè)計(jì)方法進(jìn)行了方位角、俯仰角及目標(biāo)質(zhì)心計(jì)算等模塊的設(shè)計(jì)開(kāi)發(fā),實(shí)現(xiàn)了高精度浮點(diǎn)運(yùn)算模塊的快速開(kāi)發(fā),大大縮短了軟件開(kāi)發(fā)時(shí)間。
本文設(shè)計(jì)的基于FPGA的高速目標(biāo)高分辨雷達(dá)數(shù)字信號(hào)處理系統(tǒng)硬件架構(gòu)如圖1所示。包括FPGA處理器模數(shù)轉(zhuǎn)換(A/D)采樣模塊、靜態(tài)隨機(jī)存儲(chǔ)器(SRAM)、RS422串口通信芯片、DDR3存儲(chǔ)器。
設(shè)計(jì)的高速目標(biāo)高分辨雷達(dá)數(shù)字信號(hào)處理系統(tǒng)具有數(shù)據(jù)量大、運(yùn)算復(fù)雜度高、算法實(shí)現(xiàn)邏輯資源消耗大、存儲(chǔ)單元需求大、算法實(shí)時(shí)性要求高的特點(diǎn)。硬件設(shè)計(jì)時(shí),FPGA處理器選擇ZYNQ XC7Z100系列芯片;A/D芯片選擇AD9681模數(shù)轉(zhuǎn)換器,可支持雙倍數(shù)據(jù)速率(DDR)操作,用于實(shí)現(xiàn)多路中頻信號(hào)數(shù)據(jù)采樣;SRAM、DDR3存儲(chǔ)器則用于軟件運(yùn)行中數(shù)據(jù)的緩存及計(jì)算結(jié)果的存儲(chǔ);RS422芯片用于實(shí)現(xiàn)與控制系統(tǒng)的數(shù)據(jù)通訊。
圖1 系統(tǒng)硬件架構(gòu)
高速目標(biāo)高分辨雷達(dá)數(shù)字信號(hào)處理軟件主要實(shí)現(xiàn)多路中頻信號(hào)的A/D采樣、數(shù)字下變頻處理,完成速度、角度搜索,距離搜索及跟蹤狀態(tài)下的回波信號(hào)處理,軟件流程如圖2所示。
圖2 軟件實(shí)現(xiàn)流程
A/D采樣模塊完成芯片的配置、A/D的校準(zhǔn)、采樣數(shù)據(jù)的接收及數(shù)據(jù)的跨時(shí)鐘域轉(zhuǎn)換,每片AD9681完成2路中頻信號(hào)的采樣,采樣率為240 MHz,采樣位寬14bit。
數(shù)字下變頻(Digital Down Conversion,DDC)處理過(guò)程包括數(shù)字混頻正交變換及濾波抽取,最終得到10 MHz采樣率的32位浮點(diǎn)基帶信號(hào)。
速度、角度搜索模塊對(duì)每個(gè)接收通道DDC后的數(shù)據(jù)進(jìn)行浮點(diǎn)快速傅里葉變換(FFT)處理,完成目標(biāo)檢測(cè),并對(duì)目標(biāo)的初始速度、方位角、俯仰角進(jìn)行估計(jì)。
距離搜索模塊主要完成目標(biāo)初始距離的測(cè)量。針對(duì)高速目標(biāo)的探測(cè)需求,為了防止發(fā)生距離走動(dòng),需要對(duì)回波數(shù)據(jù)進(jìn)行速度補(bǔ)償[1]。
跟蹤模塊完成跟蹤過(guò)程中目標(biāo)的距離、速度、角度等信息的估計(jì),每N個(gè)脈沖為一個(gè)周期進(jìn)行回波積累。采用大帶寬設(shè)計(jì)以實(shí)現(xiàn)目標(biāo)的高分辨探測(cè)。為了達(dá)到較好的探測(cè)效果,對(duì)回波數(shù)據(jù)進(jìn)行非線性誤差補(bǔ)償[2-3]。為防止包絡(luò)走動(dòng),進(jìn)行包絡(luò)走動(dòng)補(bǔ)償。補(bǔ)償后數(shù)據(jù)進(jìn)行脈沖壓縮,并在多普勒維進(jìn)行FFT處理。通過(guò)目標(biāo)檢測(cè)模塊得到目標(biāo)距離、速度的估計(jì)值,根據(jù)通道間相位差值進(jìn)行方位角、俯仰角的解算。
數(shù)字下變頻包含數(shù)字混頻正交變換及濾波抽取。數(shù)字混頻正交變換將中頻回波信號(hào)與數(shù)字本振進(jìn)行混頻,得到基帶回波信號(hào)。在保證數(shù)據(jù)不混疊的前提下,濾波抽取操作完成對(duì)數(shù)據(jù)的抽取,降低數(shù)據(jù)率。由于后續(xù)處理為浮點(diǎn)運(yùn)算,還需對(duì)DDC結(jié)果進(jìn)行定浮點(diǎn)轉(zhuǎn)換,輸出32位單精度浮點(diǎn)數(shù)據(jù)。
單通道中頻信號(hào)數(shù)字下變頻的原理框圖如圖3所示。300 MHz中頻信號(hào)經(jīng)過(guò)采樣后,與60 MHz數(shù)字本振進(jìn)行混頻。本設(shè)計(jì)采用FPGA中的DDS IP核產(chǎn)生數(shù)字本振信號(hào)。數(shù)字混頻正交變換后采樣率仍為240 MHz,信號(hào)復(fù)數(shù)帶寬為4 MHz,數(shù)字下變頻設(shè)計(jì)需將頻帶降到10 MHz,對(duì)濾波器設(shè)計(jì)有較高要求。本設(shè)計(jì)采用不同種類(lèi)的濾波器級(jí)聯(lián),完成濾波。
圖3 數(shù)字下變頻模塊原理框圖
圖3中,積分梳狀(Cascaded Integrator Comb,CIC)濾波器級(jí)數(shù)越高阻帶衰減越大,但帶內(nèi)容差也會(huì)相應(yīng)變大。本文設(shè)計(jì)選擇5級(jí)CIC濾波器,帶內(nèi)衰減約0.17 dB。半帶(Half-Band,HB)濾波器[4]的截止頻率在采樣頻率的四分之一處,其沖激響應(yīng)除了零點(diǎn)不為零外,其余偶數(shù)點(diǎn)均為零。采用HB濾波器來(lái)實(shí)現(xiàn)采樣率變換時(shí),只需要點(diǎn)數(shù)一半的計(jì)算量,特別適合于進(jìn)行實(shí)時(shí)處理。由于HB濾波器的過(guò)渡帶并不陡峭,在應(yīng)用中通常結(jié)合其他濾波器一起使用,如有限長(zhǎng)單位沖激響應(yīng)(Finite Impulse Response,FIR)濾波器。FIR濾波器作為最后一級(jí)濾波器,能實(shí)現(xiàn)較好的帶內(nèi)整形、較窄的過(guò)渡帶和較大的帶外衰減等。
采用SysGen進(jìn)行數(shù)字下變頻模塊設(shè)計(jì)。SysGen圖形化的設(shè)計(jì)方法,簡(jiǎn)化了仿真設(shè)計(jì)流程??捎肍rom work space圖形工具直接從Matlab工作區(qū)導(dǎo)入仿真數(shù)據(jù),采用To work space圖形工具實(shí)現(xiàn)計(jì)算結(jié)果向Matlab工作區(qū)的導(dǎo)出,在一個(gè)平臺(tái)下即可實(shí)現(xiàn)軟硬件的協(xié)同設(shè)計(jì)及仿真驗(yàn)證。301 MHz回波信號(hào)經(jīng)過(guò)數(shù)字下變頻后,數(shù)據(jù)的頻譜圖如圖4所示,得到1 MHz的基帶回波信號(hào),帶外噪聲抑制效果較好。
速度、角度搜索過(guò)程需要實(shí)現(xiàn)目標(biāo)的速度及方位角、俯仰角估計(jì),采用連續(xù)波(Continue Wave,CW)模式進(jìn)行測(cè)速,通過(guò)計(jì)算通道間相位差進(jìn)行測(cè)角。對(duì)每個(gè)通道DDC后的數(shù)據(jù)進(jìn)行8 192點(diǎn)浮點(diǎn)FFT運(yùn)算,然后對(duì)浮點(diǎn)FFT運(yùn)算結(jié)果進(jìn)行幅相轉(zhuǎn)換,幅相轉(zhuǎn)換采用Cordic IP核實(shí)現(xiàn)。目標(biāo)檢測(cè)算法確定目標(biāo)位置點(diǎn),進(jìn)行速度估計(jì),并對(duì)不同接收通道目標(biāo)回波信號(hào)間的相位差值進(jìn)行提取,計(jì)算方位角、俯仰角。
本文以三個(gè)接收通道為例,如圖5所示。設(shè)接收通道分別為通道A、通道B、通道C,點(diǎn)P為一目標(biāo)點(diǎn)。
方位角θ、俯仰角γ計(jì)算式為
式中:φAB、φAC分別為通道A、B間相位差及通道A、C間相位差;L1、L2分別為接收通道A、B間與A、C間基線長(zhǎng)度;λ為信號(hào)波長(zhǎng)。
根據(jù)設(shè)計(jì)要求,方位角、俯仰角需要較高的計(jì)算精度,因此采用浮點(diǎn)運(yùn)算形式進(jìn)行方位角、俯仰角的解算。HLS設(shè)計(jì)方法,能夠直接使用C或C++語(yǔ)言進(jìn)行FPGA的開(kāi)發(fā),相對(duì)于Verilog或VHDL設(shè)計(jì)而言,開(kāi)發(fā)周期短、成本低[5],因此采用HLS對(duì)方位角、俯仰角解算模塊進(jìn)行設(shè)計(jì)開(kāi)發(fā)??紤]到Xilinx FPGA沒(méi)有直接進(jìn)行arcsin函數(shù)計(jì)算的IP核,因此在俯仰角模塊設(shè)計(jì)優(yōu)化時(shí),將式(1)中arcsin函數(shù)轉(zhuǎn)換為arctan函數(shù)進(jìn)行計(jì)算,轉(zhuǎn)換公式為
俯仰角解算模塊的HLS設(shè)計(jì)代碼如下:
對(duì)分別采用式(1)及式(2)設(shè)計(jì)的俯仰角解算模塊進(jìn)行對(duì)比。HLS仿真結(jié)果表明,采用轉(zhuǎn)換式(2)設(shè)計(jì)的模塊所占用的硬件資源僅為式(1)的一半,可節(jié)約2%的FPGA資源。通過(guò)俯仰角解算模塊兩種設(shè)計(jì)方法的對(duì)比,說(shuō)明采用HLS進(jìn)行模塊設(shè)計(jì)仍需對(duì)FPGA相關(guān)資源及原始設(shè)計(jì)方法有一定了解,進(jìn)而得到更優(yōu)的設(shè)計(jì)結(jié)果。
采用窄帶線性調(diào)頻(Linear Frequency Modulation,LFM)信號(hào)對(duì)高速目標(biāo)進(jìn)行距離搜索。為了防止距離走動(dòng),對(duì)回波信號(hào)進(jìn)行速度補(bǔ)償,第m個(gè)脈沖的速度補(bǔ)償系數(shù)K1m計(jì)算公式為
式中:γ1為距離搜索信號(hào)的調(diào)頻率;v為目標(biāo)速度;tm為第m個(gè)脈沖的發(fā)射時(shí)刻,以第一個(gè)脈沖發(fā)射時(shí)刻為起點(diǎn);為第m個(gè)脈沖信號(hào)傳播時(shí)間,以該脈沖的發(fā)射時(shí)刻為起點(diǎn);c為光速,取c=3×108m/s。每個(gè)回波數(shù)據(jù)乘一個(gè)速度補(bǔ)償系數(shù),對(duì)補(bǔ)償后數(shù)據(jù)進(jìn)行4 096點(diǎn)脈沖壓縮,脈沖壓縮結(jié)果經(jīng)幅相轉(zhuǎn)換后用于目標(biāo)檢測(cè),并計(jì)算目標(biāo)距離值。
跟蹤信號(hào)采用大帶寬LFM模式,為了保持較好的線性度,對(duì)回波數(shù)據(jù)進(jìn)行非線性誤差補(bǔ)償,每個(gè)回波數(shù)據(jù)乘一個(gè)非線性誤差補(bǔ)償系數(shù);為了達(dá)到更好的目標(biāo)成像效果,對(duì)回波數(shù)據(jù)進(jìn)行包絡(luò)走動(dòng)補(bǔ)償,第m個(gè)脈沖的包絡(luò)走動(dòng)補(bǔ)償系數(shù)K2m計(jì)算公式為式中:γ2為跟蹤信號(hào)的調(diào)頻率。對(duì)補(bǔ)償后的脈沖信號(hào)分別進(jìn)行4 096點(diǎn)脈沖壓縮,將N個(gè)脈沖的脈沖壓縮后數(shù)據(jù)存入SRAM,再讀取特定距離單元對(duì)應(yīng)的脈沖壓縮數(shù)據(jù),進(jìn)行多普勒維FFT處理。
對(duì)多個(gè)通道的回波數(shù)據(jù)進(jìn)行數(shù)據(jù)融合,以三個(gè)通道為例,對(duì)三個(gè)通道所成目標(biāo)像對(duì)應(yīng)位置數(shù)據(jù)相加,得到融合后的距離-多普勒二維像;對(duì)過(guò)門(mén)限目標(biāo)點(diǎn)進(jìn)行質(zhì)心[6]估計(jì),根據(jù)質(zhì)心位置計(jì)算目標(biāo)的距離值、速度值;而方位角、俯仰角的解算,取離質(zhì)心最近點(diǎn)的相位差值進(jìn)行計(jì)算(同2.2速度、角度搜索過(guò)程的角度解算),質(zhì)心計(jì)算模塊采用HLS方法進(jìn)行設(shè)計(jì)實(shí)現(xiàn)。
為了驗(yàn)證角度搜索、距離搜索、距離跟蹤算法的正確性,采用信號(hào)源模擬回波信號(hào),完成相關(guān)模塊的板級(jí)仿真測(cè)試。
在軟件中,將式(1)中方位角解算模塊L1/L2參數(shù)設(shè)置為3.8,式(2)中λ/(2πL2)設(shè)置為0.0028,當(dāng) A、B 通 道 相 位 差φAB=-1.13825917243958 rad,A、C通道相位差φAC=-0.44650673866272 rad時(shí),速度、角度搜索的方位角、俯仰角解算結(jié)果如表1所示。相對(duì)于Matlab仿真結(jié)果,FPGA計(jì)算精度能夠達(dá)到小數(shù)點(diǎn)后7位,滿足角度解算精度要求。
表1 角度解算結(jié)果對(duì)比
回波信號(hào)為300.5 MHz時(shí),DDC后基帶回波頻率為0.5 MHz,采樣率10 MHz,進(jìn)行4 096點(diǎn)脈沖壓縮,頻譜位置點(diǎn)idx=0.5 MHz/10 MHz×4096=204.8。
距離搜索模塊測(cè)試結(jié)果如圖6所示。圖中amp1為單個(gè)脈沖回波信號(hào)脈沖壓縮后幅值,最大值位置為205;tg_idx為多個(gè)脈沖目標(biāo)探測(cè)結(jié)果加權(quán)平均值,約為205.62。由于加權(quán)時(shí)位置點(diǎn)范圍取1~4096,目標(biāo)最終位置點(diǎn)應(yīng)為tg_idx減1,為204.62,與理論計(jì)算idx值保持一致。
圖6 距離搜索模塊測(cè)試結(jié)果
跟蹤模塊脈沖壓縮輸出結(jié)果如圖7所示,圖中amp1,amp3為兩個(gè)不同接收通道回波脈沖壓縮后的幅值,最大值點(diǎn)均為205,與理論計(jì)算的idx值保持一致。
圖7 跟蹤模塊脈沖壓縮后結(jié)果
本文研究了高速目標(biāo)高分辨雷達(dá)數(shù)字信號(hào)處理系統(tǒng)的FPGA設(shè)計(jì)及實(shí)現(xiàn),完成了基于Sys-Gen的中頻信號(hào)數(shù)字下變頻設(shè)計(jì)、基于HLS設(shè)計(jì)方法的方位角和俯仰角估計(jì)等模塊的設(shè)計(jì),實(shí)現(xiàn)了CW模式的多通道測(cè)速測(cè)角,窄帶LFM模式的距離搜索,大帶寬LFM模式下的目標(biāo)距離、速度、角度的跟蹤探測(cè)。回波模擬測(cè)試結(jié)果表明:角度搜索、距離搜索、距離跟蹤等模塊性能均滿足設(shè)計(jì)要求,能夠?qū)崿F(xiàn)目標(biāo)的高精度實(shí)時(shí)跟蹤。