【導(dǎo)讀】CFAR是非常普遍的信號過濾手段,用于提取超過動態(tài)閾值的點(diǎn)目標(biāo)信息。AURIX? TC3xx單片機(jī)的雷達(dá)信號處理單元SPU集成了該硬件功能,并且提供兩種典型的CFAR算法。
英飛凌技術(shù)專家 錢偉喆
背景介紹
當(dāng)雷達(dá)回波信號功率幅值超過某個閾值時,能被檢測到,該閾值不可能是固定的,必須根據(jù)周圍環(huán)境、目標(biāo)分布反射強(qiáng)弱,雜波噪聲干擾等動態(tài)變化,而CFAR(constant false alarm rate)就是用于計(jì)算動態(tài)閾值的典型手段。CFAR直接影響檢測概率(probability of detection)【1】,同樣的收發(fā)機(jī)信噪比,較大的CFAR能獲得較大的檢測概率。
算法實(shí)現(xiàn)
由于CFAR使用非常普遍,AURIX? TC3xx單片機(jī)的雷達(dá)信號處理單元SPU集成了該硬件功能,并且提供兩種典型的CFAR算法,分別是CA-CFAR (cell-averaging CFAR)和GOS-CFAR (generalized order statistic CFAR)。圖1是典型CA-CFAR算法結(jié)構(gòu),摘自Matlab參考文獻(xiàn)【1】。SPU還集成了兩種算法的子分類,提供更多的檢測方法。兩種算法各有優(yōu)缺點(diǎn),GOS-CFAR在多目標(biāo)場景性能較優(yōu),且其適應(yīng)性強(qiáng),參數(shù)的微小調(diào)整對雜波噪聲的濾除影響較小【2】,【3】。
圖1. 典型的CA-CFAR(摘自【1】)
為防止帶相位信息的各天線信號互相干涉,通常使用不帶相位的NCI(non-coherent integer)功率數(shù)據(jù)進(jìn)行CFAR處理,這樣能準(zhǔn)確表征回波信號在各天線上的功率加總。得到的CFAR結(jié)果以位(bit)為基本單元,每個位對應(yīng)NCI矩陣中的一個數(shù)據(jù),該數(shù)據(jù)可能是32位或16位存儲格式。NCI矩陣的維度是距離點(diǎn)數(shù)乘以多普勒點(diǎn)數(shù)。CFAR結(jié)果中置一的位,代表該對應(yīng)NCI的數(shù)據(jù)被檢測出;置零的位(圖2中CFAR bit mask未置一的位),代表該對應(yīng)NCI的數(shù)據(jù)未被檢測出。
CFAR檢測出的結(jié)果代表該數(shù)據(jù)點(diǎn)的功率幅值超過動態(tài)閾值,極大可能是來自某目標(biāo)的反射點(diǎn)。該數(shù)據(jù)點(diǎn)在每個天線上的信息需要保留,用于下一步的到達(dá)角運(yùn)算。而沒超過動態(tài)閾值的數(shù)據(jù)點(diǎn)可能是噪聲雜波等,可被刪除。CFAR結(jié)果可以配合SPU內(nèi)的Bin rejection單元用于過濾距離-多普勒FFT結(jié)果,刪除不需要的數(shù)據(jù)點(diǎn)。圖2形象地展示了如何用CFAR 結(jié)果過濾距離-多普勒FFT數(shù)據(jù)。
圖2. CFAR結(jié)果對距離-多普勒FFT過濾示意圖
SPU內(nèi)的Bin rejection單元可以方便的實(shí)現(xiàn)濾波功能。Bin rejection單元可以設(shè)定多種靈活的判斷條件,比如跟設(shè)定的閾值比較,或者設(shè)定需要保留的數(shù)據(jù)向量維度,或者配合CFAR單元設(shè)定需要保留的bit mask等等。不滿足條件的數(shù)據(jù)單元可以被清零或刪除。
將CFAR結(jié)果依次配置到Bin rejection的掩碼寄存器中,該寄存器是32位,有64組,總共對應(yīng)2048(=32x64)個數(shù)據(jù)。但距離-多普勒FFT數(shù)據(jù)維度往往較大,而且還要考慮天線維度,所以需要多次配置掩碼寄存器,才能過濾全部三維數(shù)據(jù)。
使用SPU一維CFAR實(shí)現(xiàn)二維CFAR
SPU中CFAR硬件實(shí)現(xiàn)是一維的,可以沿距離維度,或者多普勒維度,而實(shí)際工程應(yīng)用中往往需要二維CFAR。理論上的二維CFAR實(shí)現(xiàn),是通過被測點(diǎn)與周圍一圈點(diǎn)合成計(jì)算出的閾值進(jìn)行比較,計(jì)算量較大,尤其使用GOS-CFAR時,因?yàn)樾枰M(jìn)行排序的運(yùn)算量是O(n^2),而一維是O(n)。文獻(xiàn)【2】中提出一種分別由距離和多普勒維度CFAR合成的二維CFAR,這種方法有效降低了工程計(jì)算量,保持實(shí)時性的同時,也能兼顧在噪聲環(huán)境下的性能。下面將詳細(xì)介紹如何使用SPU的一維CFAR實(shí)現(xiàn)二維CFAR并進(jìn)行檢測。
圖3. 二維CFAR、點(diǎn)目標(biāo)檢測和到達(dá)角計(jì)算流程,以及仿真結(jié)果
圖3的第一行流程,提供了二維CFAR、點(diǎn)目標(biāo)檢測和到達(dá)角計(jì)算流程,其中淡藍(lán)色顯示的步驟使用SPU實(shí)現(xiàn),而綠色則代表CPU實(shí)現(xiàn)的步驟。圖3的第二行給出了每個步驟的仿真結(jié)果,能直觀表現(xiàn)二維CFAR的計(jì)算方法。圖中前兩步是典型的毫米波雷達(dá)信號預(yù)處理步驟,只是在第一步同時計(jì)算了距離維的NCI及GOS-CFAR,等第二步獲得多普勒維的CFAR后,就能合成二維結(jié)果。
需要注意的是,由于CFAR的存儲方式是以一個位元(bit)代表一個數(shù)據(jù)點(diǎn),而第二步完成的多普勒結(jié)果是距離結(jié)果的轉(zhuǎn)置,所以第三步中要實(shí)現(xiàn)的位與(bit AND)操作并不簡單,需要對兩個互為轉(zhuǎn)置的CFAR結(jié)果進(jìn)行位尋址。Tricore? CPU提供了位操作指令EXTR.U,能夠方便地將某個32位字中的某個位元提取出來進(jìn)行處理【4】。在某些頻繁調(diào)用,或時間裕量較短的場景,建議使用匯編代碼,減少耗時較長的存儲器訪問次數(shù),使能CPU 指令緩存,并配合編譯器的時間優(yōu)化選項(xiàng),來降低代碼執(zhí)行時間。舉個例子,使用CPU計(jì)算512*128維度的二維CFAR,并進(jìn)行檢測提取出128個點(diǎn)目標(biāo),同時將提取出的目標(biāo)數(shù)據(jù)搬運(yùn)到連續(xù)內(nèi)存,方便實(shí)施第四步驟的角度傅里葉運(yùn)算,整個圖3中第三步驟耗時大約是1ms ,CPU運(yùn)行主頻是300MHz。
總結(jié)
CFAR是非常普遍的信號過濾手段,用于提取超過動態(tài)閾值的點(diǎn)目標(biāo)信息。AURIX ? TC3xx單片機(jī)的雷達(dá)信號處理單元SPU集成了該硬件功能,并且提供兩種典型的CFAR算法。配合SPU中的bin rejection硬件功能,CFAR結(jié)果用于過濾距離-多普勒FFT,將可能來自目標(biāo)的反射點(diǎn)提取出來,進(jìn)行下一步到達(dá)角計(jì)算。另外,AURIX? TC3xx CPU能在較短時間內(nèi),將兩次SPU的一維CFAR結(jié)果,進(jìn)行位與操作,實(shí)現(xiàn)二維CFAR過濾功能,提取目標(biāo)。
參考文獻(xiàn)
【1】 RADAR SYSTEMS ANALYSIS AND DESIGN USING MATLAB’, Bassem R. Mahafza.
【2】Fast Two-Dimensional CFAR Procedure’, Matthias Kronauge, Hermann Rohling, IEEE Trans. on Aerospace and electronic systems Vol. 49, No. 3 July 2013.
【3】Ordered Statistic CFAR Technique – an Overview’, Hermann Rohling, Hamburg University of Technology.
【4】TC1.6_DSP_Optimization_Guide_part1_v1.2’, Infineon Technologies AG.
免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請聯(lián)系小編進(jìn)行處理。
推薦閱讀:
隔離式 DC/DC 轉(zhuǎn)換器——穩(wěn)壓與非穩(wěn)壓
功率逆變器應(yīng)用采用寬帶隙半導(dǎo)體器件時,柵極電阻選型注意事項(xiàng)
ST助力新能源汽車企業(yè)把駕駛汽車變得更安全、更環(huán)保、更互聯(lián)