李 雷,嚴(yán)玉國,楊賓峰
(空軍工程大學(xué)信息與導(dǎo)航學(xué)院,西安 710077)
隨著航空運(yùn)輸事業(yè)的發(fā)展,二次雷達(dá)在空中交通管制中發(fā)揮的作用越來越大,保障二次雷達(dá)的可靠工作對于空中交通事業(yè)的安全具有十分重要的意義。為了對二次雷達(dá)進(jìn)行快速檢測維護(hù)需要開發(fā)便攜式二次雷達(dá)檢測儀。便攜式二次雷達(dá)檢測儀不僅要求能夠發(fā)射和接收處理二次雷達(dá)各種信號,而且要具有體積小、功耗低的特點(diǎn)。軟件無線電技術(shù)和超大規(guī)模集成電路的發(fā)展為二次雷達(dá)檢測儀的小型化提供了硬件基礎(chǔ)。
AD9361 是ADI 公司推出的一款射頻捷變收發(fā)器,內(nèi)部集成了濾波器、混頻器、AGC、以及ADC、DAC 等,通過配置寄存器就可以實(shí)現(xiàn)射頻信號到基帶信號的轉(zhuǎn)變,直接提供零中頻數(shù)據(jù)給FPGA 進(jìn)行數(shù)據(jù)處理。因此,基于AD9361+FPGA 的硬件結(jié)構(gòu)來實(shí)現(xiàn)二次雷達(dá)檢測儀的開發(fā)。AD9361 主要完成射頻信號到基帶的轉(zhuǎn)變,F(xiàn)PGA 對AD9361 輸出的數(shù)據(jù)進(jìn)行進(jìn)一步的分析和處理。
傳統(tǒng)的接收機(jī)只經(jīng)過一次門限判決,大于門限的信號判定為“1”,小于門限Gate1 的信號判定為“0”。對于這種結(jié)構(gòu),在信號的接收過程中,如果雜波或噪聲等干擾信號強(qiáng)度大于判決門限,那么就有可能造成誤判,對于接收機(jī)正常接收信號造成影響,因此,需要剔除這部分干擾信號帶來的影響。
對二次雷達(dá)接收機(jī)來說,干擾信號強(qiáng)度大于門限只是突發(fā)的,接收到的干擾信號與真實(shí)的信號不同,正常接收到的二次雷達(dá)信號應(yīng)該是滿足一定寬度的脈沖信號,為了剔除干擾信號,可以根據(jù)二次雷達(dá)信號格式以及FPGA 的工作時(shí)鐘,確定真實(shí)信號對應(yīng)的時(shí)鐘數(shù)。對于滿足時(shí)鐘數(shù)限制的信號,判定為二次雷達(dá)信號,不滿足的信號,則判定為噪聲干擾,通過數(shù)字濾波進(jìn)行剔除。如果FPGA 信號處理的時(shí)鐘頻率是f,真實(shí)信號的持續(xù)時(shí)間是t。那么對應(yīng)的N 為:
根據(jù)計(jì)算出來的N,設(shè)定判決門限Gate2,判決門限的設(shè)定應(yīng)該允許一定的誤差,可以減小接收機(jī)的漏警概率,Gate2 與計(jì)數(shù)值N 的關(guān)系為Gate2=N-m,其中m 對應(yīng)的是容許的誤差值。對經(jīng)過一次門限判決的信號,如果信號為“1”持續(xù)時(shí)間對應(yīng)的計(jì)數(shù)值超過判決門限2,信號正常輸出,否則認(rèn)為是干擾信號,將信號輸出為“0”。
圖1 接收機(jī)系統(tǒng)框圖
雙門限檢測接收機(jī)的系統(tǒng)構(gòu)成如圖1 所示。具體工作過程為:
1)通過AD9361 實(shí)現(xiàn)信號的下變頻,輸出I、Q兩路數(shù)字信號;
2)幅度提取模塊根據(jù)I、Q 兩路輸入信號提取出信號的幅度;
3)根據(jù)信號幅度大小對接收增益進(jìn)行調(diào)整,并對信號進(jìn)行對數(shù)放大;
4)將經(jīng)過對數(shù)放大的信號送入門限電路1 中,得到信號的判決門限Gate1;
5)將判決門限和經(jīng)過對數(shù)放大的信號同時(shí)送入峰值提取電路中,首先進(jìn)行峰值檢測,然后完成半幅度檢測,提取到接收的信號;
6)最后在門限電路2 中對半幅度檢測結(jié)果與Gate2 進(jìn)行比較,完成干擾脈沖的剔除,提取有用信號;
7)最后在信號處理模塊中,根據(jù)二次雷達(dá)信號格式和相關(guān)協(xié)議對數(shù)據(jù)進(jìn)行分析處理,提取信號中的信息。
以上步驟中,步驟1)是在AD9361 中完成的,步驟2)~步驟7)都是在FPGA 中完成。
因?yàn)镕PGA 是由邏輯門組成的硬件芯片,適合完成各種復(fù)雜邏輯運(yùn)算,不擅長進(jìn)行復(fù)雜的數(shù)學(xué)運(yùn)算,所以需要根據(jù)實(shí)際運(yùn)算需求,將復(fù)雜的運(yùn)算近似為適合邏輯器件完成的運(yùn)算。文獻(xiàn)[1]中提出了一種適合硬件實(shí)現(xiàn)的開方近似算法,F(xiàn)PGA 實(shí)現(xiàn)簡單,但是存在精度較低、誤差大的缺點(diǎn)。圖2 是文獻(xiàn)[1]中的算法與實(shí)際結(jié)果的比較圖,開方輸入的兩路信號,一路是從0 到2 048 遞增,另一路是從2 048 到0 遞減。圖中實(shí)線對應(yīng)的是實(shí)際的開方結(jié)果,虛線對應(yīng)的是文獻(xiàn)[1]中近似算法的計(jì)算結(jié)果。從圖中可以看出,該近似算法與實(shí)際結(jié)果的誤差較大。
圖2 近似算法結(jié)果與實(shí)際結(jié)果比較圖
文獻(xiàn)[2-6]中指出用CORDIC 算法完成超越函數(shù)的硬件實(shí)現(xiàn)。CORDIC 算法是Voder 在1959 年提出的。1971 年,Walther 對該算法的形式進(jìn)行了統(tǒng)一,Meyer-base 第1 次利用FPGA 實(shí)現(xiàn)了該算法。CORDIC 算法可以將開方運(yùn)算轉(zhuǎn)化為簡單的移位和相加運(yùn)算,通過連續(xù)的角度旋轉(zhuǎn)來實(shí)現(xiàn),只需要一定的約束條件就可以在FPGA 平臺上實(shí)現(xiàn)開方運(yùn)算,完成I、Q 兩路信號的求模運(yùn)算。該算法的基本原理是從起點(diǎn)按照一定的角度不斷旋轉(zhuǎn),逐步逼近終點(diǎn)[6]。圖3 是CORDIC 算法的向量旋轉(zhuǎn)示意圖。
圖3 CORDIC 算法坐標(biāo)軸旋轉(zhuǎn)示意圖
(xi,yi)是坐標(biāo)旋轉(zhuǎn)起點(diǎn),(xj,yj)是坐標(biāo)旋轉(zhuǎn)終點(diǎn)。(xi,yi)和(xj,yj)的關(guān)系為:
經(jīng)過N 次迭代,得到(xi,yi)和(xj,yj)的關(guān)系:
其中
文獻(xiàn)[5]中指出用CORDIC 算法實(shí)現(xiàn)開方、對數(shù)等運(yùn)算的方法。文獻(xiàn)[7]給出了CORDIC 算法的具體推導(dǎo)公式。可以得到開方的計(jì)算公式為:
根據(jù)以上分析,在Modelsim 上仿真對CORDIC算法求開方進(jìn)行仿真,圖4 是在Modelsim 上仿真得到CORDIC 結(jié)果,其中x,y 分別是兩路輸入信號,x是從0 到2 048,y 是從2 048 到0,out 是CORDIC算法計(jì)算開方的結(jié)果,out 與實(shí)際開方結(jié)果之間的關(guān)系如式(8)所示。為了進(jìn)一步對比分析CORDIC 計(jì)算結(jié)果與實(shí)際結(jié)果之間的關(guān)系,把計(jì)算結(jié)果導(dǎo)出到MATLAB 中進(jìn)行分析處理。圖5 中實(shí)線是CORDIC在硬件平臺上的計(jì)算結(jié)果,虛線是實(shí)際的結(jié)果。圖6中,對CORDIC 算法的計(jì)算結(jié)果乘以修正因子K,可以看出CORDIC 算法計(jì)算結(jié)果與實(shí)際結(jié)果基本一致。圖7 是CORDIC 算法計(jì)算結(jié)果與實(shí)際結(jié)果的誤差圖,可以看出,最大誤差不超過3,相對于12 位信號來說非常小,可以忽略不計(jì),因此,在接收機(jī)中采用CORDIC 算法計(jì)算I、Q 兩路信號的開方,完成信號幅度的提取。
圖4 Modelsim 仿真結(jié)果
圖5 CORDIC 計(jì)算結(jié)果與實(shí)際計(jì)算結(jié)果比較圖
圖6 CORDIC 修正結(jié)果與實(shí)際計(jì)算結(jié)果比較圖
圖7 CORDIC 算法誤差圖
為了使接收機(jī)有較大的接收動(dòng)態(tài)范圍,需要根據(jù)信號的功率對接收機(jī)的增益進(jìn)行動(dòng)態(tài)調(diào)整。幅度提取電路輸出的是接收信號的幅度,可以根據(jù)幅度的大小,進(jìn)行相應(yīng)的增益調(diào)整。文獻(xiàn)[8]中提出了全數(shù)字AGC 的設(shè)計(jì)方案,該方案適用于連續(xù)信號的自動(dòng)增益控制,因?yàn)槎卫走_(dá)信號是不連續(xù)的脈沖信號,無法按照連續(xù)波自動(dòng)增益控制的方式進(jìn)行增益調(diào)整。文獻(xiàn)[9]中提出通過統(tǒng)計(jì)接收端信號過門限瞬時(shí)值次數(shù)的方法,判斷是否要對接收機(jī)進(jìn)行增益控制,這種方法對微弱信號的檢測有一定困難。根據(jù)二次雷達(dá)信號特點(diǎn),先對幅度提取電路的輸出結(jié)果與噪聲電平進(jìn)行比較,大于噪聲門限一定值的信號,認(rèn)為存在雷達(dá)接收信號,對這部分信號進(jìn)行對數(shù)放大,小于門限部分,認(rèn)為信號不存在,這部分信號不進(jìn)行對數(shù)放大。
對數(shù)放大的特點(diǎn)是對小信號放大的倍數(shù)大,大信號放大倍數(shù)小,可以將接收信號的幅度壓縮在一定的范圍之內(nèi)。CORDIC 也可以完成對數(shù)運(yùn)算,根據(jù)對數(shù)和反雙曲正切函數(shù)之間的關(guān)系,可以得到:
當(dāng)CORDIC 算法,工作在向量模式下時(shí),如果輸入為(x0,y0,z0),那么輸出為[10]:
在這種情況下,要計(jì)算r 的對數(shù)結(jié)果,需要令:x0=r+1、y0=r-1、z0=0,那么CORDIC 算法輸出的zn就是對信號取對數(shù)的結(jié)果。借鑒文獻(xiàn)[11]中提到的兩級DAGC 方案,對幅度提取電路的輸出結(jié)果進(jìn)行對數(shù)放大,同時(shí),還可以根據(jù)信號的幅度大小,調(diào)整AD9361 的接收增益,實(shí)現(xiàn)接收增益的兩級調(diào)整,第一級是調(diào)整硬件的增益,第二級是在數(shù)字域?qū)邮招盘栠M(jìn)行調(diào)整。
根據(jù)對數(shù)放大的特點(diǎn),對接收信號進(jìn)行對數(shù)放大。輸入信號和輸出信號之間的關(guān)系為:
其中,x(i)是輸入信號,y(i)是輸出信號,A 是一常數(shù),V 是噪聲門限,對于大于V 的信號,進(jìn)行對數(shù)放大,小于V 的信號,認(rèn)為是噪聲,直接輸出,不作任何處理。
圖8 中藍(lán)色信號是原始輸入信號,從圖中可以看出,經(jīng)過一級對數(shù)放大之后,小信號得到放大,大信號得到縮小,但是差距還是很大。因此,提出一種多級放大的處理方式,在信號經(jīng)過一級對數(shù)放大之后,將輸入信號送到第二級放大器中,可以進(jìn)一步縮小大小信號的差距。圖8 中黑色實(shí)線是三級對數(shù)放大的結(jié)果,通過三級對數(shù)放大器之后,幅度相差很大的信號壓縮到很小的范圍,可以將小信號放大,減小漏警概率,而且可以將大信號壓縮,方便后期的分析處理。
圖8 多級數(shù)對數(shù)放大
門限電路對于信號的有效接收判決具有十分重要的意義,門限電路有兩種形式,一種是固定門限,另一種是動(dòng)態(tài)門限??紤]到接收機(jī)要求較大的動(dòng)態(tài)范圍,因此,選用動(dòng)態(tài)門限。采用平均值法來求動(dòng)態(tài)門限。
平均值法是一個(gè)求平均電路,對相鄰的N 個(gè)信號求平均值,然后乘以門限檢測因子K,作為判決門限。門限檢測因子的選定與電路結(jié)構(gòu)、信號特征等因素有關(guān),需要在具體的電路中進(jìn)行調(diào)試,找到合適的門限檢測因子。
峰值檢測電路包含3 部分,峰值提取電路、半幅度提取電路和二值化電路。峰值提取電路從大于判決門限的信號中提取出信號的最大幅度值;半幅度提取電路根據(jù)峰值檢測結(jié)果,求出半幅度點(diǎn)對應(yīng)的幅度值;二值化電路根據(jù)半幅度值對輸入信號進(jìn)行二值化,輸出“0”、“1”信號。
圖9 峰值檢測電路
峰值檢測電路的結(jié)構(gòu)如圖9 所示。將信號和門限1 同時(shí)送到判決器中,進(jìn)行比較,大于門限部分進(jìn)行峰值檢測和半幅度提取,同時(shí)對信號進(jìn)行延時(shí),最后將延時(shí)后的信號與求出的半幅度值進(jìn)行比較,大于半幅度值的信號輸出為數(shù)字“1”,小于半幅度值的信號輸出數(shù)字“0”。完成信號的二值化,即將12 位的有符號數(shù)字信號轉(zhuǎn)為“0”、“1”序列,提取出二次雷達(dá)應(yīng)答信號對應(yīng)的脈沖序列。
門限電路2 也可稱為數(shù)字濾波電路,經(jīng)過峰值提取電路輸出的脈沖信號,可能存在因?yàn)楦蓴_、噪聲帶來的雜波脈沖,通過數(shù)字濾波電路,剔除這些干擾信號,只保留滿足一定寬度的有用信號。門限電路2 的結(jié)構(gòu)如圖10 所示,由累加器和門限判決電路兩部分組成。累加器的作用是對峰值提取電路輸出的N 個(gè)相鄰的“0”、“1”序列進(jìn)行累加。門限判決電路將累加器的輸出結(jié)果與門限2 進(jìn)行比較,如果大于門限2,則將信號直接進(jìn)行輸出,否則,認(rèn)為該信號是干擾或噪聲信號,將其剔除,輸出全“0”。
圖10 門限電路2
根據(jù)圖1 中接收機(jī)的結(jié)構(gòu),使用Verilog HDL語言在Quartus II 環(huán)境中完成電路的開發(fā)與設(shè)計(jì),開發(fā)完成后對FPGA 進(jìn)行編程。最后通過矢量信號源模擬產(chǎn)生不同強(qiáng)度的信號對接收機(jī)性能進(jìn)行測試,通過Signal tap II 對接收機(jī)接收處理數(shù)據(jù)的過程進(jìn)行在線分析。圖11 和圖12 分別對應(yīng)了-20 dBm和-60 dBm 輸入信號時(shí)的接收機(jī)性能。
圖11 -20 dBm 時(shí)測試結(jié)果
圖12 -60 dBm 時(shí)測試結(jié)果
其中,I、Q 是AD9361 輸出到FPGA 的兩路信號,Amplitude 是求模電路的輸出,Gate1 是門限電路1 輸出的門限,Peak_value 是峰值提取的峰值信號,Half_out 是半幅度檢測的輸出結(jié)果,Signal 是Half_out 經(jīng)過門限電路2 進(jìn)行數(shù)字濾波之后的輸出結(jié)果。圖11 對應(yīng)的是-20 dBm 時(shí)的測試結(jié)果,可以看出,經(jīng)過峰值提取電路之后輸出的信號Half_out存在一個(gè)毛刺干擾,經(jīng)過門限電路2 之后,毛刺干擾得到抑制。對于傳統(tǒng)的單門限檢測算法,輸出將會(huì)是Half_out 對應(yīng)的信號,而在雙門限檢測結(jié)構(gòu)的接收機(jī)中,經(jīng)過二次門限判決,抑制了雜波等干擾帶來的信號,有效地提取出有用的信號。圖12 對應(yīng)的是-60 dBm 時(shí)的測試結(jié)果,可以看到,在-60 dBm時(shí),仍能有效接收信號,提取出基帶信號。
提出了一種雙門限檢測接收機(jī),并在Altera FPGA 上完成了硬件開發(fā),最后通過矢量信號源產(chǎn)生二次雷達(dá)信號,對雙門限檢測接收機(jī)性能進(jìn)行分析。實(shí)驗(yàn)測試結(jié)果表明,本文設(shè)計(jì)的雙門限檢測結(jié)構(gòu)接收機(jī)具有硬件實(shí)現(xiàn)簡單、動(dòng)態(tài)范圍大的特點(diǎn),可以有效地接收信號,剔除干擾信號,提取有用的基帶信號,滿足二次雷達(dá)接收機(jī)的需求,為后期的基帶信號處理打下基礎(chǔ)。雙門限檢測接收機(jī)的設(shè)計(jì)方法還可以拓展到其他數(shù)字接收機(jī)的設(shè)計(jì)中去。