耿 赟,谷振宇
(中國電子科技集團(tuán)公司第54研究所,石家莊 050081)
隨著擴(kuò)頻、跳頻等寬帶技術(shù)在短波通信中的廣泛應(yīng)用,傳統(tǒng)的窄帶測(cè)向技術(shù)已不能滿足寬帶系統(tǒng)的需求,研究寬帶測(cè)向技術(shù)成為必然。由于短波頻段信號(hào)具有信號(hào)密集、頻譜重疊等特點(diǎn),寬帶測(cè)向系統(tǒng)需要處理巨大的數(shù)據(jù)量;另一方面為保證對(duì)突發(fā)、短時(shí)信號(hào)的監(jiān)測(cè),還需要具有快速的處理能力,應(yīng)用現(xiàn)場(chǎng)可編程門陣列(FPGA)、數(shù)字信號(hào)處理(DSP)等高速數(shù)字信號(hào)處理技術(shù)可滿足這些需求。
相關(guān)干涉儀算法是基于相位測(cè)量的一種測(cè)向算法,這種方法實(shí)施簡(jiǎn)便直觀,并且具有較高的測(cè)向靈敏度、測(cè)向準(zhǔn)確度和較快的測(cè)向時(shí)間,是目前測(cè)向系統(tǒng)中應(yīng)用較多的一種技術(shù)[1-2]。相關(guān)干涉儀算法的不足之處是運(yùn)算量較大,這與短波測(cè)向?qū)Χ嘈盘?hào)的快速處理需求是相悖的。為滿足短波測(cè)向的實(shí)時(shí)性需求,本文對(duì)基于FPGA實(shí)現(xiàn)相關(guān)干涉儀測(cè)向進(jìn)行研究,改進(jìn)算法流程,提高測(cè)向速度。
干涉儀測(cè)向是通過測(cè)量不同天線入射波的相位分布并與天線間的相對(duì)位置結(jié)合來獲取來波方向的[3-4],相關(guān)干涉儀測(cè)向也屬于干涉儀測(cè)向。其基本原理是:已知天線陣結(jié)構(gòu),通過計(jì)算或測(cè)量獲取各頻率、各方位的入射波相位差分布,建立樣本群,對(duì)某一方向入射的信號(hào)測(cè)量其到達(dá)各天線對(duì)的相位差,根據(jù)頻率和測(cè)量相位差在樣本群中對(duì)比查找最接近的1組樣本相位差,對(duì)應(yīng)的方位即為信號(hào)的入射方向。這種對(duì)比相似性的方法稱為相關(guān)處理,相似性通過計(jì)算相關(guān)值來反映,相關(guān)值越大表明越相似,找到最大相關(guān)值就能得到信號(hào)的入射方向。
相關(guān)處理的方法如下:設(shè)天線陣中有M個(gè)天線,以某個(gè)天線為參考天線,則有m=M-1個(gè)天線對(duì),方位角范圍內(nèi)有等間隔分布的方向θi,i=1,2,…,N,每個(gè)方向?qū)?yīng)m個(gè)天線對(duì)的樣本相位差為φj(θi),j=1,2,…,m,則對(duì)某一頻率信號(hào)的樣本群為Φ= (φ1i,φ2i,…,φmi)T,i=1,2,…,N,待測(cè)信號(hào)的測(cè)量相位差為Ψ= (φ1,φ2,…,φm),則其相關(guān)值計(jì)算公式[5]為:
短波干涉儀測(cè)向天線陣通常采用均勻圓陣,天線陣列孔徑很大,一般是幾十米甚至上百米。如果用測(cè)量方法建立樣本相位差,根據(jù)遠(yuǎn)場(chǎng)條件估算至少要在幾公里外發(fā)射信號(hào)來采集樣本,對(duì)于天波信號(hào)還要考慮俯仰角,巨大的采集工作量和實(shí)施難度在工程應(yīng)用中很難實(shí)現(xiàn),因此本文討論用理論計(jì)算的方法獲得樣本相位差。
圖1為M個(gè)天線的均勻圓陣示意圖,陣列半徑為r,坐標(biāo)系y軸指向正北,天線A1與正北方向夾角為0°。以圓心A0為參考點(diǎn),假設(shè)入射波方向?yàn)椋é?,β),其中方位角記為α,俯仰角記為β,波長λ=c/f,c為光速,f為入射波頻率。
圖1 均勻圓陣示意圖
某一天線對(duì)之間的相位差實(shí)際上是入射波到達(dá)天線對(duì)的波程差,根據(jù)入射波與天線間的幾何關(guān)系,可以求得天線A1和天線Aj相對(duì)于天線A0的相位差φ10和φj0分別為:
將式(2)與式(3)相減得到天線Aj相對(duì)于天線A1的相位差φj1:
如果以等間隔在方位角和俯仰角上建立樣本空間,則不同角度入射波到達(dá)其他天線與參考天線A1間的相位差就可以由式(4)求出,從而獲得樣本相位差。角度間隔越小,樣本相位差空間就越大,相應(yīng)的相關(guān)處理運(yùn)算量也就越大。為滿足實(shí)時(shí)性需求,要求測(cè)向系統(tǒng)必須能快速地完成相關(guān)處理。
為實(shí)現(xiàn)快速的相關(guān)干涉儀測(cè)向算法,本文對(duì)相關(guān)干涉儀算法流程進(jìn)行了優(yōu)化,利用FPGA流水化和并行處理的優(yōu)勢(shì),針對(duì)相關(guān)干涉儀算法的結(jié)構(gòu)特點(diǎn),提出了實(shí)時(shí)計(jì)算樣本相位差的實(shí)現(xiàn)方法。FPGA模塊主要有采樣及快速傅里葉變換(FFT)模塊、樣本相位差模塊、相關(guān)計(jì)算模塊和控制模塊,示意圖如圖2所示。
圖2 FPGA模塊示意圖
采樣及FFT模塊完成對(duì)各天線的信號(hào)采集和FFT變換,計(jì)算出信號(hào)頻率以及各天線相對(duì)于參考天線的相位差。樣本相位差模塊根據(jù)信號(hào)頻率、布陣半徑和俯仰角實(shí)時(shí)計(jì)算出樣本空間。相關(guān)計(jì)算模塊計(jì)算出測(cè)量相位差與樣本相位差間的相關(guān)值,為提高處理速度,可使用多路并行樣本相位差模塊和相關(guān)計(jì)算模塊??刂颇K可控制一維測(cè)向或二維測(cè)向,對(duì)于接近水平面的入射波可認(rèn)為其俯仰角為零,進(jìn)行一次相關(guān)處理就能得到方位角;對(duì)于較大俯仰角的入射波,控制模塊在俯仰角上按一定角度間隔進(jìn)行多次相關(guān)處理,找到相關(guān)值最大的方位角和俯仰角即為入射波方向。
如上所述,由式(3)可計(jì)算出樣本相位差,對(duì)任意入射波方向θιk= (αi,βk),令pij=cosαi-cosσij,σij=2π·(j-1)/(M-1)-αi,其中i=1,2,…,N,j=2,…,M,則式(3)可表示為φj1(θιk)=r·w·cosβk·pij??梢钥吹綄?duì)于不同半徑、不同入射波頻率和俯仰角,pij只與方位角和天線位置有關(guān),它反映的是各陣元間的固有位置關(guān)系。為簡(jiǎn)化樣本相位差的計(jì)算方式,可按等間隔方位角和不同天線將pij構(gòu)造為N×(M-1)項(xiàng)的查找表P,如表1所示。
表1 查找表P_
根據(jù)相關(guān)干涉儀測(cè)向算法的原理,需要將測(cè)量相位差依次與每個(gè)方位角的樣本相位差計(jì)算相關(guān)值。在計(jì)算樣本相位差時(shí),若以方位角為索引到查找表P中查詢,就可得到當(dāng)前方位角對(duì)應(yīng)的pij,再與r、w和cosβk相乘即可計(jì)算出相位差,這種計(jì)算流程非常適合FPGA用流水線方式實(shí)現(xiàn)。用Matlab軟件計(jì)算出查找表P的每一項(xiàng)表值并轉(zhuǎn)換為FPGA可用的定點(diǎn)整數(shù),將FPGA提供的IP核塊存儲(chǔ)器(BRAM)配置成只讀存儲(chǔ)器(ROM)存儲(chǔ)查找表P。俯仰角的余弦值也用ROM存儲(chǔ),乘法運(yùn)算使用FPGA提供的DSP48單元實(shí)現(xiàn)。FPGA實(shí)現(xiàn)樣本相位差計(jì)算的示意圖如圖3所示。
圖3 樣本相位差計(jì)算實(shí)現(xiàn)
相關(guān)值計(jì)算是算法實(shí)現(xiàn)的關(guān)鍵步驟,由式(1)可以看到計(jì)算過程有向量內(nèi)積和開方等較復(fù)雜的運(yùn)算,用FPGA實(shí)現(xiàn)這些運(yùn)算需占用大量的乘法器且結(jié)構(gòu)復(fù)雜。由于余弦函數(shù)具有周期性,將余弦函數(shù)引入到相關(guān)值計(jì)算公式中可簡(jiǎn)化計(jì)算復(fù)雜度[6],公式如下:
由式(5)可知,對(duì)某個(gè)方向角θi,將每個(gè)天線對(duì)的測(cè)量相位差和樣本相位差求差值,再求余弦值,然后求和計(jì)算出相關(guān)值。實(shí)際實(shí)現(xiàn)時(shí),用FPGA的Slice單元搭建減法器和加法器,用IP核BRAM存儲(chǔ)余弦表,并且使用M-1組減法器和余弦查找表同時(shí)進(jìn)行相關(guān)運(yùn)算以提高處理速度,F(xiàn)PGA實(shí)現(xiàn)示意圖如圖4所示。
圖4 相關(guān)值計(jì)算實(shí)現(xiàn)
本文提出的相關(guān)干涉儀測(cè)向?qū)崿F(xiàn)方法充分利用了FPGA流水化和并行處理的特點(diǎn),與現(xiàn)有方法相比在處理速度和資源占用上具有優(yōu)勢(shì),以九陣元均勻圓陣、1°間隔的360°方位角范圍為例分析本方法的性能。
如前所述,本文將查找表P引入到樣本相位差的計(jì)算,原公式實(shí)現(xiàn)需要用1個(gè)減法器、3個(gè)乘法器和17個(gè)余弦表,改進(jìn)后的公式只用3個(gè)乘法器、1個(gè)余弦表和1個(gè)查找表P,將角度量化到11bit,余弦值量化到12bit,1個(gè)余弦表占用2個(gè)BRAM,1個(gè)查找表P占用3個(gè)BRAM,則改進(jìn)后的實(shí)現(xiàn)方法少用29個(gè)BRAM和1個(gè)減法器。
在相關(guān)值計(jì)算上,式(1)需實(shí)現(xiàn)3個(gè)向量內(nèi)積和2個(gè)開方,共需54個(gè)乘法器、48個(gè)加法器和2個(gè)開方器,而實(shí)現(xiàn)式(5)則只需3個(gè)加法器、8個(gè)減法器和8個(gè)余弦表,乘法器和開方器需占用FPGA內(nèi)的DSP48單元,改進(jìn)的方法同原方法相比,雖然增加了BRAM,但是大大減少了DSP48單元的使用,在有足夠BRAM資源或用Slice單元存儲(chǔ)余弦表的情況下,這種設(shè)計(jì)可以平衡FPGA內(nèi)的布局結(jié)構(gòu),有利于實(shí)現(xiàn)高速穩(wěn)定的布線。
在本文提出的實(shí)現(xiàn)方法中,計(jì)算樣本相位差的時(shí)間和計(jì)算相關(guān)值的時(shí)間均為固定延遲,延遲時(shí)間按所用IP核的配置不同在10個(gè)時(shí)鐘周期以內(nèi)。由于采用流水化設(shè)計(jì),所有方位角的相關(guān)值的計(jì)算時(shí)間只與方位角個(gè)數(shù)有關(guān),再加上比較最大值和其他延遲約10個(gè)時(shí)鐘周期,相關(guān)處理時(shí)間在380個(gè)時(shí)鐘周期以內(nèi)。如果并行使用多個(gè)樣本相位差模塊和相關(guān)值計(jì)算模塊,可以進(jìn)一步減少處理時(shí)間。以100MHz工作時(shí)鐘、4路并行為例,完成單頻點(diǎn)360°的相關(guān)值計(jì)算,基于200MHz工作的TMS320C6713的定點(diǎn)DSP用時(shí)16μs[7],基于FPGA實(shí)現(xiàn)的干涉儀測(cè)向系統(tǒng)用時(shí)5μs[8],而本文提出的實(shí)現(xiàn)方法約為1μs。一種基于GPU的相關(guān)干涉儀實(shí)現(xiàn)方案[9]采用粗粒度的方位角和二次曲線擬合的方法減少計(jì)算量,并利用GPU的多線程提高計(jì)算速度,計(jì)算一維單頻點(diǎn)相關(guān)值時(shí)間約為0.3μs,如果在資源允許并且提高FPGA工作時(shí)鐘的情況下,計(jì)算速度與GPU相當(dāng),但工程實(shí)現(xiàn)成本則低于GPU。
在工程應(yīng)用中對(duì)本文提出的方法進(jìn)行了外場(chǎng)測(cè)向驗(yàn)證,天線陣為半徑25m的九陣元均勻圓陣,參考天線位于正北方向,順時(shí)針為0°~360°方位角范圍。對(duì)已知頻率為17MHz、入射方向與真北夾角343°、俯仰角接近0°的信號(hào)進(jìn)行測(cè)向。測(cè)向算法在Xilinx公司的FPGA芯片上設(shè)計(jì)實(shí)現(xiàn),測(cè)試時(shí)使用在線邏輯分析軟件ChipScope獲取FPGA內(nèi)部數(shù)據(jù),以1°間隔進(jìn)行相關(guān)計(jì)算,共得到360個(gè)相關(guān)值,將其導(dǎo)入到Matlab軟件進(jìn)行繪圖分析。
360次相關(guān)計(jì)算的結(jié)果如圖5所示,橫坐標(biāo)表示方位角,縱坐標(biāo)表示相關(guān)值,F(xiàn)PGA實(shí)現(xiàn)時(shí)將余弦值處理為12bit位寬的定點(diǎn)整數(shù),為便于觀察將相關(guān)值除以2 048。由圖5可見,最大相關(guān)值出現(xiàn)在343°,表明測(cè)向結(jié)果正確。
圖5 相關(guān)值計(jì)算結(jié)果
本文改進(jìn)了相關(guān)干涉儀的算法流程,設(shè)計(jì)出一種能充分利用FPGA并行計(jì)算和流水化優(yōu)勢(shì)的實(shí)現(xiàn)結(jié)構(gòu),用少量的FPGA資源實(shí)現(xiàn)快速的測(cè)向處理,對(duì)短波系統(tǒng)寬頻段內(nèi)密集信號(hào)和高速跳頻信號(hào)實(shí)現(xiàn)實(shí)時(shí)測(cè)向具有重要意義。該方法已應(yīng)用于實(shí)際工程中,由于采用并行結(jié)構(gòu),可根據(jù)實(shí)際工程需要平衡FPGA資源與測(cè)向速度的關(guān)系,以達(dá)到最佳實(shí)現(xiàn)成本,具有較廣泛的應(yīng)用范圍和價(jià)值。
[1] 周鴻順,許光寧.短波無線電測(cè)向系統(tǒng)(II)[J].中國無線電管理,2002(5):39-46.
[2] 劉芬,明望,陶松.相關(guān)處理在干涉儀測(cè)向中的應(yīng)用[J].電子科學(xué)技術(shù)評(píng)論,2005(6):33-37.
[3] 嚴(yán)發(fā).淺談相關(guān)干涉儀測(cè)向機(jī)的設(shè)計(jì)思想[J].中國無線電管理,2003(7):1-5.
[4] 肖秀麗.干涉儀測(cè)向原理[J].中國無線電,2006(5):43-49.
[5] 朱旭東.相關(guān)處理在干涉測(cè)向儀中的應(yīng)用[J].現(xiàn)代雷達(dá),2003(1):22-25.
[6] 李淳,廖桂生,李艷斌.改進(jìn)的相關(guān)干涉儀測(cè)向處理方法[J].西安電子科技大學(xué)學(xué)報(bào)(自然科學(xué)版),2006,33(3):400-403.
[7] 錢志柏.基于DSP的相關(guān)干涉儀測(cè)向快速實(shí)現(xiàn)方法[J].無線電工程,2011,41(8):47-50.
[8] 巢捷頻.高速寬帶通信信號(hào)測(cè)向處理模塊的設(shè)計(jì)與實(shí)現(xiàn)[J].電訊技術(shù),2011,51(4):64-68.
[9] 蔣林鴻,何子述,程婷,等.基于GPU的寬帶干涉儀測(cè)向算法實(shí)現(xiàn)[J].現(xiàn)代雷達(dá),2012,24(1):35-39.