基于FPGA的二維OS-CFAR設(shè)計(jì)與實(shí)現(xiàn)
劉中祥,宋志勇,付強(qiáng)
(國(guó)防科學(xué)技術(shù)大學(xué)電子科學(xué)與工程學(xué)院,長(zhǎng)沙 410073)
摘要:二維OS-CFAR檢測(cè)器在雷達(dá)目標(biāo)檢測(cè)中具有較好的檢測(cè)性能,特別是在多目標(biāo)以及動(dòng)態(tài)雜波環(huán)境中,具有較強(qiáng)的抗干擾目標(biāo)的能力。本文基于FPGA設(shè)計(jì)和實(shí)現(xiàn)了二維OS-CFAR檢測(cè)器,采用并行尋址以及二元積累判決等結(jié)構(gòu)解決了FPGA實(shí)現(xiàn)中二維空間上參考單元尋址困難以及排序運(yùn)算計(jì)算量大、耗時(shí)長(zhǎng)、實(shí)時(shí)性不高的問題,實(shí)現(xiàn)了對(duì)距離-多普勒平面內(nèi)所有檢測(cè)點(diǎn)的流水作業(yè),提高了二維有序恒虛警檢測(cè)的實(shí)時(shí)性,滿足了工程應(yīng)用的要求。通過將FPGA實(shí)現(xiàn)結(jié)果與理論檢測(cè)結(jié)果進(jìn)行比較,驗(yàn)證了本文方法的有效性。
關(guān)鍵詞:二維OS-CFAR;FPGA;數(shù)據(jù)流;二元積累
doi:10.13442/j.gnss.1008-9268.2015.05.014
中圖分類號(hào):TN957
文獻(xiàn)標(biāo)志碼:A
文章編號(hào):1008-9268(2015)05-0076-05
收稿日期:2015-05-25
作者簡(jiǎn)介
Abstract:Two-dimensional(2D) Ordered Statistics Constant False Alarm Rate(OS-CFAR) detector usually exhibits good performance in radar target detection. It has good anti-jamming capacity especially in the non-homogeneous environment caused by strong interfering targets and dynamic clutter. In this paper, a 2D OS-CFAR detector is designed and implemented based on FPGA. The structures, including parallel addressing and binary integration decision, are exploited to resolve the problems such as difficulty in reference cell addressing, large computation amount, time consuming and low real-time poverty in the ordering process, which often occur in the implementation process with FPGA. All the points in the Range-Doppler plane are detected in data flow processing and the real-time poverty of the 2D OS-CFAR is improved, which meets the requirements in engineering. A comparison of the experimental results based on FPGA and the theoretical analysis is conducted and demonstrates the effectiveness of the proposed method.
0引言
雷達(dá)恒虛警檢測(cè)器的實(shí)際檢測(cè)性能與其參考背景單元的分布有很大關(guān)系,當(dāng)參考背景是均勻分布時(shí),均值類CFAR具有較好的檢測(cè)性能[1]。但是在多目標(biāo)以及動(dòng)態(tài)雜波環(huán)境下,CA-CFAR的檢測(cè)性能會(huì)隨干擾目標(biāo)點(diǎn)的增加而迅速下降[2],而OS-CFAR具有較好的抗多目標(biāo)干擾的能力,在均勻雜波背景和雜波邊緣環(huán)境中的性能下降也是可以接受的[3]。
由于一維CFAR檢測(cè)器的參考窗在同一維度上,即在距離維或多普勒維上,這樣獲取的背景信息比較單一,得出的檢測(cè)門限精確度較差。因此,為了獲取更多的背景信息,把一維參考窗擴(kuò)展到二維,即同時(shí)選取距離維和多普勒維上的背景信息來做估計(jì),這樣,總體檢測(cè)性能有更大的提高。
對(duì)于有序類CFAR的工程化實(shí)現(xiàn)[4],當(dāng)前大多采用DSP來完成,即采用通用DSP芯片構(gòu)造硬件處理平臺(tái)來實(shí)現(xiàn)CFAR算法[5]。但對(duì)于實(shí)時(shí)性要求較高的窄脈沖雷達(dá),由于系統(tǒng)采樣率很高,數(shù)據(jù)吞吐量大,要求處理機(jī)硬件平臺(tái)提供較高的運(yùn)算速度和運(yùn)算效率,FPGA以其較高的處理速度以及并行化能力成為實(shí)現(xiàn)OS類CFAR算法的一種選擇[6]。
本文提出了一種基于FPGA的二維OS-CFAR高效實(shí)現(xiàn)方法,通過采用并行尋址解決FPGA實(shí)現(xiàn)中二維空間上參考單元尋址困難的問題,通過采用二元積累判決解決了排序運(yùn)算計(jì)算量大、耗時(shí)長(zhǎng)、實(shí)時(shí)性不高的問題,實(shí)現(xiàn)了檢測(cè)處理的數(shù)據(jù)流水作業(yè),提高了實(shí)時(shí)性,達(dá)到了實(shí)際應(yīng)用的要求。
1二維OS-CFAR算法模型
二維OS-CFAR檢測(cè)器的參考窗選取方式有多種形式,比較常見的有矩形窗,米字窗,十字窗等。參考窗的選取方式?jīng)Q定了FPGA的參考單元尋址模式,本文以十字參考窗為例,開展二維OS-CFAR算法基于FPGA的設(shè)計(jì)和實(shí)現(xiàn),相關(guān)的結(jié)論可直接推廣應(yīng)用于其它參考窗。
傳統(tǒng)二維OS-CFAR算法如圖1所示,其中,D為檢測(cè)單元,防止目標(biāo)能量泄露到相鄰參考單元而影響對(duì)雜波背景的估計(jì),將與檢測(cè)單元鄰近的兩個(gè)陰影部分作為保護(hù)單元,保護(hù)單元外側(cè)為參考窗,設(shè)定前沿、后沿、上沿和下沿四個(gè)參考窗的長(zhǎng)度均為16,保護(hù)單元數(shù)為2,雜波功率水平估計(jì)由這四個(gè)參考窗得出。
一般的計(jì)算步驟是先把這四個(gè)參考窗的數(shù)據(jù)取出,然后使用某種方法進(jìn)行排序算法,選出第K個(gè)最小單元值X(K),再將其乘以門限系數(shù)T,得出判決門限。如果檢測(cè)單元大于判決門限,則說明該單元是目標(biāo),否則該單元是雜波。
聯(lián)系人: 劉中祥 E-mail: liuzhongxiang15@163.com
圖1 傳統(tǒng)二維OS-CFAR檢測(cè)器方框圖
OS-CFAR主要進(jìn)行排序計(jì)算,找出排序后的第K個(gè)值。由于內(nèi)部排序后數(shù)據(jù)原始的次序信息會(huì)丟失,不能滿足數(shù)據(jù)流處理的要求,因此不能直接采用內(nèi)部排序法,必須將數(shù)據(jù)復(fù)制并記住采樣點(diǎn)X(n)的原始位置再進(jìn)行排序處理,所以即使采用冒泡法等內(nèi)部排序法,算法的空間復(fù)雜度仍是R+O(1)。此外,排序算法的時(shí)間復(fù)雜度也很高,并且很難并行處理。
由圖1的算法模型可知,OS-CFAR的實(shí)質(zhì)是將參考單元的數(shù)據(jù)進(jìn)行排序,找出第K個(gè)雜波值X(k),將其乘以虛警門限系數(shù)T,得出雜波的均值估計(jì)Z,如果檢測(cè)單元T大于Z,則說明該單元是目標(biāo),否則是雜波。
從另一個(gè)角度考慮這個(gè)檢測(cè)問題,其過程等價(jià)于將參考單元所有值先乘以虛警門限系數(shù)T,然后將這些值和檢測(cè)單元D進(jìn)行比較,如果有K個(gè)值都小于檢測(cè)單元D的值,說明檢測(cè)單元D大于X(k) ·T,檢測(cè)單元為目標(biāo),否則為雜波。此時(shí),OS-CFAR算法就轉(zhuǎn)換成檢測(cè)單元D是否大于參考單元X(n)·T中K個(gè)任意值的問題,該問題恰好可以使用二元積累檢測(cè)的思想解決。
基于二元積累檢測(cè)實(shí)現(xiàn)二維OS-CFAR檢測(cè)器的模型如圖2所示。基本處理流程為:首先同時(shí)取出檢測(cè)單元D周圍的參考單元值X(n),將這些值乘以虛警門限系數(shù)T,然后將檢測(cè)單元D與相乘之后的所有值X(n)·T進(jìn)行比較,如果D大于X(n)·T,得出比較結(jié)果為1,否則為0。最后將所有比較結(jié)果進(jìn)行相加,判斷相加結(jié)果是否大于K,如果大于K,說明該檢測(cè)單元為目標(biāo),否則為雜波。
圖2 基于二元積累的二維OS-CFAR方框圖
此種方法大大降低了OS-CFAR算法上的時(shí)間復(fù)雜度,可以進(jìn)行并行檢測(cè),只用O(1)的時(shí)間實(shí)現(xiàn)算法。同時(shí),該模型沒有破壞原始數(shù)據(jù)的先后順序,非常適合數(shù)據(jù)流運(yùn)算。
2基于FPGA的設(shè)計(jì)與實(shí)現(xiàn)
二維OS-CFAR的FPGA設(shè)計(jì)與實(shí)現(xiàn)的關(guān)鍵點(diǎn)主要有兩個(gè)方面:一方面是參考窗中所有參考單元的讀取方法,在DSP中,通過控制存儲(chǔ)地址可以將參考窗中的數(shù)值同時(shí)取出,而在FPGA中讀取RAM中的值,一次只能讀取一個(gè)地址上的值,由于參考窗中參考單元的數(shù)量較多,將參考窗中的值取出需要很多延遲,同時(shí)也不能保證數(shù)據(jù)流處理,實(shí)時(shí)性大大降低。本文通過使用移位寄存器組,根據(jù)參考單元的相對(duì)位置關(guān)系,實(shí)現(xiàn)了將參考窗中所有參考單元的值在一拍時(shí)間內(nèi)取出,保證了數(shù)據(jù)流水處理。另一方面是參考單元排序算法,當(dāng)參考窗選取數(shù)據(jù)較多時(shí),排序的計(jì)算量很大,如果用DSP芯片實(shí)現(xiàn),由于是串行處理,得出比較結(jié)果需要的時(shí)間比較長(zhǎng)。本文利用FPGA并行處理的優(yōu)勢(shì),運(yùn)用二元積累的思想實(shí)現(xiàn)排序判決,同時(shí)設(shè)計(jì)數(shù)據(jù)流水化處理形式,提高了實(shí)時(shí)性。
雷達(dá)回波經(jīng)過AD采樣、下變頻、脈沖壓縮和相參積累等預(yù)處理,得到二維距離-多普勒矩陣。在FPGA中,將距離-多普勒矩陣緩存在Block RAM中,以便于后續(xù)進(jìn)行檢測(cè)處理。本文以512×64大小的距離-多普勒矩陣為例研究參考單元讀取的設(shè)計(jì)方法。設(shè)二維OS-CFAR檢測(cè)器的保護(hù)單元選取為2個(gè)采樣點(diǎn),上下左右參考窗中,每個(gè)參考窗選取16個(gè)參考單元。檢測(cè)數(shù)據(jù)從Block RAM中按照距離單元依次進(jìn)入移位寄存器組,根據(jù)參考窗中參考單元相對(duì)位置的關(guān)系,則可同時(shí)從寄存器組中取出檢測(cè)單元和參考單元。檢測(cè)單元和參考單元的并行尋址設(shè)計(jì)如圖3所示。
圖3 參考單元并行尋址方框圖
從如3看出,在同一個(gè)參考窗中相鄰的上下參考單元時(shí)間差是64,即一個(gè)多普勒維上距離單元數(shù)。因?yàn)樵谕痪嚯x維上,則相鄰的左右參考單元時(shí)間差是1.所以,下窗參考單元從reg0開始,到reg960結(jié)束,每隔64個(gè)寄存器取一次數(shù)據(jù)(data_in、reg64、reg128…reg960);上窗參考單元從reg1344開始,到reg2304結(jié)束,每隔64個(gè)寄存器取一次數(shù)據(jù)(reg1344、reg1408…reg2304);檢測(cè)單元為reg1152;右窗參考單元從寄存器reg1134到reg1149中得出,左窗參考單元從寄存器reg1155到reg1170中得出。
當(dāng)寄存器reg1152中數(shù)據(jù)有效時(shí),檢測(cè)單元是距離-多普勒矩陣中第一個(gè)地址的數(shù),檢測(cè)器開始檢測(cè),此時(shí)使用下窗和右窗這兩個(gè)窗的數(shù)據(jù)作為參考單元。同理,當(dāng)檢測(cè)單元位于距離-多普勒矩陣邊角位置時(shí),選取其中有效的兩個(gè)或三個(gè)參考窗作為參考背景。而檢測(cè)單元位于距離-多普勒矩陣中間位置時(shí),即四個(gè)參考窗中數(shù)據(jù)都有效時(shí),使用這四個(gè)窗作為參考背景。
這種設(shè)計(jì)依據(jù)參考單元相對(duì)位置的特性和FPGA寄存器資源多的優(yōu)勢(shì)來設(shè)計(jì)的,可以使檢測(cè)單元和對(duì)應(yīng)的所有參考單元的數(shù)值一起取出,同時(shí)進(jìn)入檢測(cè)器,達(dá)到流水作業(yè)和并行計(jì)算的效果,大大提高了時(shí)間效率。
本文基于二元積累思想實(shí)現(xiàn)了二維OS-CFAR算法模型,如圖2所示,是一種基于FPGA的并行流水處理的實(shí)現(xiàn)方法,極大地提高了實(shí)時(shí)性。
以參考窗中有8個(gè)數(shù)據(jù)為例,闡述二維OS-CFAR檢測(cè)雷達(dá)信號(hào)流水處理的設(shè)計(jì)。假定參考單元的值分別為2、10、8、6、12、9、15、3,檢測(cè)單元值為26,虛警門限系數(shù)取2,把參考窗中排在第6小的參考單元作為比較單元,其流水處理實(shí)現(xiàn)恒虛警檢測(cè)的設(shè)計(jì)思路如圖4所示。
圖4 OS-CFAR并行流水處理示意圖
從圖4可以看出,基于二元積累思想實(shí)現(xiàn)OS-CFAR算法,在FPGA芯片中并行流水處理數(shù)據(jù),其結(jié)構(gòu)主要由乘法器、比較器和加法器組成。整個(gè)檢測(cè)過程經(jīng)過4級(jí)流水后得出結(jié)果,在第3級(jí)數(shù)據(jù)流中得到二元積累數(shù)為7,說明檢測(cè)單元大于由參考窗中排在第7小的參考單元(12)得出的參考門限,即26>12×2,所以該檢測(cè)單元為目標(biāo),同時(shí)也證明基于二元積累算法實(shí)現(xiàn)OS-CFAR檢測(cè)的正確性。如果參考窗中共有M個(gè)數(shù)據(jù),也是經(jīng)過4級(jí)流水得出結(jié)果,這種算法充分利用FPGA的并行計(jì)算的特點(diǎn),大大較少了延遲周期,提高了檢測(cè)的實(shí)時(shí)性。由示意圖可以看出,資源利用也較少,僅需要M個(gè)乘法器、M個(gè)比較器、M個(gè)加法器和2M+1個(gè)寄存器。
3FPGA實(shí)現(xiàn)結(jié)果
首先采用matlab模擬雷達(dá)回波信號(hào),經(jīng)過采樣、下變頻、速度補(bǔ)償、脈沖壓縮和相參積累等相關(guān)處理,得到512×64的二維距離-多普勒矩陣,如圖5所示。從圖5可以看出,目標(biāo)位于距離維第19號(hào)單元,多普勒維第35號(hào)單元處,并且在目標(biāo)周圍有多個(gè)突起的雜波。
圖5 R-D矩陣幅值分布
在Matlab中,采用十字參考窗OS-CFAR檢測(cè)器,取虛警率為10-6,排序后第3/4個(gè)參考作為門限,其檢測(cè)結(jié)果如圖6所示。從圖6可以看出,目標(biāo)被有效檢測(cè)出,而雜波干擾則沒有被檢測(cè)到,表明二維OS-CFAR檢測(cè)器有較好的抗目標(biāo)雜波干擾的能力。
圖6 Matlab中二維OS-CFAR檢測(cè)結(jié)果
在ISE14.7軟件中,基于本文提出的二維OS-CFAR架構(gòu),編程VHDL代碼,并將圖5所示的距離-多普勒矩陣導(dǎo)入到FPGA的RAM-based Shift Register內(nèi)部存儲(chǔ)器中作為待檢測(cè)信號(hào),綜合仿真結(jié)果如圖7所示。由于RAM地址是從0開始,則圖7檢測(cè)到目標(biāo)點(diǎn)的地址加1就是實(shí)際在距離-多普勒矩陣的位置,從圖中可以看出,檢測(cè)點(diǎn)位于多普勒維第35單元,距離維第19、20單元處,和在Matlab中理論仿真結(jié)果相同。同時(shí),從仿真圖也可以看出,基于FPGA的二維OS-CFAR檢測(cè)器實(shí)現(xiàn)了流水作業(yè),從而提高了檢測(cè)的實(shí)時(shí)性。
圖7 FPGA中二維OS-CFAR檢測(cè)結(jié)果
4結(jié)束語(yǔ)
針對(duì)二維OS-CFAR基于FPGA實(shí)現(xiàn)在二維空間上參考單元尋址困難和基于DSP實(shí)現(xiàn)排序運(yùn)算量大、耗時(shí)長(zhǎng)和實(shí)時(shí)性不高的問題,本文基于二元積累思想,實(shí)現(xiàn)了二維OS-CFAR基于FPGA的設(shè)計(jì)與實(shí)現(xiàn),根據(jù)二維CFAR檢測(cè)器參考單元相對(duì)位置的特性,解決了二維參考單元尋址問題,并且能達(dá)到并行取值的效果。同時(shí),解決了排序運(yùn)算量大的問題,實(shí)現(xiàn)了檢測(cè)流水作業(yè)的功能,提高了實(shí)時(shí)性,達(dá)到了工程實(shí)用的要求。
參考文獻(xiàn)
[1]何友,關(guān)鍵,彭應(yīng)寧.雷達(dá)自動(dòng)檢測(cè)與恒虛警處理[M].北京:清華大學(xué)出版社,1999.
[2]LONGO M,LOPS M. OS-CFAR thresholding in decentralized radar systems[C].//IEEE Transaction on Aerospace and Electronics Systems, 2006,32(4):1257-1267.
[3]ROHLING H. Radar CFAR thresholding in clutter and multiple target situations[J].IEEE Transaction on Aerospace and Electronics System, 1983,AES-19(4):608-620.
[4]郭鵬程,陳矛,羅丁利,等.基于FPGA的OS-CFAR設(shè)計(jì)與實(shí)現(xiàn)[J].火控雷達(dá)技術(shù),2010,39(3):50-53.
[5]MAGAZ B, BENCHEIKH M L. An efficient FPGA implementation of the OS-CFAR processor[C].//International Radar Symposium, 2008.
[6]CUMPLIDO R,TORRES C.On the implementation of an efficient FPGA-based CFAR processor for target detection[C].//2004 1st International Conference on Electrical and Electronics Engineering,2004:214-218.
劉中祥(1989-),男,碩士,主要研究方向?yàn)槔走_(dá)信息處理與目標(biāo)識(shí)別技術(shù)。
宋志勇(1983-),男,講師,主要研究方向?yàn)槔走_(dá)信息處理與目標(biāo)檢測(cè)跟蹤技術(shù)。
付強(qiáng)(1962-),男,教授,主要研究方向?yàn)榫_制導(dǎo)自動(dòng)目標(biāo)識(shí)別。
Design and Implementation of Two-Dimensional
OS-CFAR Based on FPGA
LIU Zhongxiang,SONG Zhiyong,FU Qiang
(ATRLab,SchoolofElectronicScienceandEngineering,NationalUniversityof
DefenseTechnology,Changsha410073,China)
Key words: Two-dimensional OS-CFAR; FPGA; data flow; binary integration