基于FPGA的三種信號(hào)處理器的集成設(shè)計(jì)
引 言
已在數(shù)據(jù)通信、電信、無線通信、消費(fèi)類產(chǎn)品、醫(yī)療、工業(yè)和軍事等各應(yīng)用領(lǐng)域當(dāng)中占據(jù)重要地位。推出采用90nm工藝的大容量Stratix II系列具有創(chuàng)新的自適應(yīng)體系,即自適應(yīng)邏輯模塊(ALM),使其在單個(gè)器件中具有雙倍多的邏輯容量(多達(dá)71760個(gè)ALM),比第一代Stratix器件速度快50%,效率提高25%。公司提供的Quartus II軟件開發(fā)工具能夠方便地完成設(shè)計(jì)輸入、、仿真,同時(shí)還為用戶提供了豐富的宏庫、LPM (參數(shù)化模塊庫)和IP核,方便了軟件設(shè)計(jì)。正是由于Stratix II系列FPGA以上的諸多優(yōu)點(diǎn),才使得我們能夠?qū)崿F(xiàn)三種信號(hào)處理器的單芯片集成設(shè)計(jì),不但提高了系統(tǒng)集成度,減小了體積和成本,同時(shí)設(shè)計(jì)的靈活性、可靠性和實(shí)用性也大為加強(qiáng)。
圖1所示的是動(dòng)目標(biāo)檢測雷達(dá)信號(hào)處理機(jī)的主要組成部分,虛線中的處理模塊是本系統(tǒng)要完成的工作。其中,陣列由16個(gè)陣元組成,脈沖重復(fù)周期為1000Hz,每個(gè)脈沖回波采樣1024次,故而形成1M的數(shù)據(jù)率,脈沖積累數(shù)為128個(gè)。陣元信號(hào)AD采樣后送入脈沖壓縮處理器進(jìn)行匹配濾波,把寬脈沖變成窄脈沖,然后經(jīng)過DBF將16路信號(hào)合成6個(gè)波束通道信號(hào),接收某些特定方向的信號(hào),再經(jīng)由MTD和進(jìn)行動(dòng)目標(biāo)檢測和恒虛警判別后,把目標(biāo)的距離和速度信息送給后續(xù)的算法處理,最后將結(jié)果送出給雷達(dá)顯示系統(tǒng)。本系統(tǒng)的硬件由單片F(xiàn)PGA加外部三組和一片組成,其中,高性能的FPGA保證了硬件系統(tǒng)的簡潔,由于DBF和MTD處理后的矩陣形式的數(shù)據(jù)都不能直接送入下一級(jí)處理,必須經(jīng)由外部進(jìn)行過程存儲(chǔ),通過讀寫地址的變換送入一級(jí)。中保存一些慢速變化的數(shù)據(jù),在本系統(tǒng)中,它保存了一張16位的對(duì)數(shù)查找表。
波束形成器的原理和實(shí)現(xiàn)
常見波束形成器的原理如圖2,采用數(shù)字方法對(duì)陣列的陣元接收信號(hào)加權(quán)處理形成波束,陣列天線陣元的方向圖是全方向的,陣列的輸出經(jīng)過加權(quán)求和后,將陣列接收方向增益聚集在一個(gè)方向上,相當(dāng)于形成了一個(gè)波束,只要信號(hào)處理的速度足夠快,就可以產(chǎn)生不同指向的波束。本系統(tǒng)要形成六個(gè)波束,用x [ r,t ] (1≤r≤16,t≥1)表示第r個(gè)陣元的時(shí)間軸上第t個(gè)復(fù)信號(hào),用y [ s,t ] (1≤s≤6,t≥1)表示第s個(gè)波束的時(shí)間軸上第t個(gè)復(fù)信號(hào),權(quán)值用w(6316的矩陣)表示,它們的關(guān)系如式(1)所示。
波束形成器的功能實(shí)現(xiàn)框圖如圖3,經(jīng)過脈壓處理的速率16M的復(fù)信號(hào)送入能存儲(chǔ)16×2個(gè)數(shù)據(jù)的乒乓RAM中,兩部分輪換讀寫,同一時(shí)刻的16個(gè)陣元的復(fù)信號(hào)依次進(jìn)入乒乓RAM的一部分;權(quán)值存放在內(nèi)部RAM中,由公式1可以看出,共需16×6個(gè)復(fù)權(quán)值,這六組權(quán)值和同一時(shí)刻的16個(gè)陣元信號(hào)送入乘加器中,依次進(jìn)行乘加運(yùn)算,顯然同一時(shí)刻的16個(gè)陣元信號(hào)需要重復(fù)送入6次,乘加器以16次乘加計(jì)算為一個(gè)周期,鎖存輸出一個(gè)結(jié)果,同時(shí)清空內(nèi)部寄存;最后形成一個(gè)6M數(shù)據(jù)率的波束信號(hào)通過控制器輪換寫入外部的兩組SRAM中,為保證系統(tǒng)的實(shí)時(shí)性,每組SRAM都有單獨(dú)的地址、數(shù)據(jù)和控制總線與FPGA相聯(lián),以乒乓形式進(jìn)行讀寫操作,考慮到后續(xù)MTD處理器的工作需要,第組SRAM需要積累128個(gè)脈沖周期的信號(hào)數(shù)據(jù)。地址產(chǎn)生器根據(jù)需要產(chǎn)生各個(gè)模塊的地址信號(hào)。
由以上分析看出,波束形成器的核心部分復(fù)數(shù)乘法器僅占用了一個(gè)內(nèi)部的DSP功能塊,配置成4個(gè)16×16的乘法器,資源占用很低,另一方面根據(jù)實(shí)時(shí)處理需要乘法器僅需工作在96M頻率上,遠(yuǎn)低于其工作極限(370M以上),足以保證其工作的穩(wěn)定性和可靠性。
動(dòng)目標(biāo)檢測器的原理和實(shí)現(xiàn)
作為雷達(dá)數(shù)字信號(hào)處理核心部分的動(dòng)目標(biāo)檢測器的基本原理是應(yīng)用了電磁波的多譜勒效應(yīng),和雷達(dá)之間有相對(duì)運(yùn)動(dòng)(速度v)的目標(biāo)所反射的雷達(dá)回波信號(hào)在雷達(dá)接收端會(huì)產(chǎn)生大小為2v/λ的頻率偏移,稱為多譜勒頻率。MTD 就是采用匹配的方法在復(fù)雜的雷達(dá)回波中檢測出目標(biāo)的多譜勒頻率,并以此來確定動(dòng)目標(biāo)的距離、速度和方位。其中匹配是一組不同中心頻率的( FIR形式或FFT形式),F(xiàn)FT方法雖然運(yùn)算量小,但由于運(yùn)算點(diǎn)數(shù)較少而使此優(yōu)點(diǎn)不十分明顯,且其靈活性差,止帶衰減小,對(duì)雜波抑制能力差,常不能滿足要求,而FIR形式具有靈活性高、運(yùn)算控制簡單、可根據(jù)雜波設(shè)計(jì)達(dá)到自適應(yīng)和雜波抑制能力強(qiáng)等優(yōu)點(diǎn),得到廣泛應(yīng)用。經(jīng)常采用的FIR形式的濾波是一種適用于Kalmus處理的全共軛對(duì)稱形式的運(yùn)算,在這種算法中,若濾波器組共有N個(gè)濾波器,則第k個(gè)濾波器( k≤N2- 1)的權(quán)系數(shù)與第N-k-1個(gè)濾波器的權(quán)系數(shù)共軛對(duì)稱。這樣,由式( 2)可以看出權(quán)系數(shù)的存儲(chǔ)量減少了一半,實(shí)際乘法的計(jì)算量也減少了一半。
本系統(tǒng)要對(duì)六個(gè)波束分別進(jìn)行MTD運(yùn)算,每個(gè)濾波器組有128個(gè)濾波器,由于前端脈沖積累數(shù)為128個(gè),故每組濾波器有128個(gè)權(quán)值與其相對(duì)應(yīng)進(jìn)行乘加運(yùn)算。用y [ s,t ] (1≤s≤6)表示第s個(gè)波束的第t個(gè)復(fù)信號(hào),用z[ s,u,N] (1≤s≤6)表示第s個(gè)波束第u通道第n個(gè)輸出值,權(quán)值用w表示,它們的關(guān)系如式( 3)所示。
六波束動(dòng)目標(biāo)檢測器的功能實(shí)現(xiàn)框圖如圖3,存在外部SRAM中的數(shù)據(jù)以12M速度讀取存入六組乒乓RAM中,每組可以存放128×2個(gè)復(fù)數(shù),用于存放單個(gè)波束128次脈沖積累中相同距離門的128個(gè)數(shù)據(jù),設(shè)每組分為上下兩部分,存入順序如下:1 組上,2組上,3組上,4組上,5組上,6組上,1組下,2組下,3組下,4組下,5組下,6組下,1組上,..。
這樣六個(gè)波束的多通道濾波器可以并行處理,區(qū)別僅是啟動(dòng)時(shí)間和結(jié)束時(shí)間不同。每個(gè)多通道濾波器由一個(gè)復(fù)數(shù)乘加器和一塊用于存放權(quán)值的內(nèi)部RAM構(gòu)成,由于前面討論過的共軛對(duì)稱性,內(nèi)部權(quán)值共需存儲(chǔ)64×128個(gè),這些權(quán)值依次與內(nèi)部乒乓RAM中準(zhǔn)備就緒的128個(gè)復(fù)數(shù)在乘加器中進(jìn)行乘法和加減法運(yùn)算,每組內(nèi)部RAM中的128個(gè)復(fù)數(shù)需要重復(fù)讀取64次,乘加器以128次乘加計(jì)算為一個(gè)周期,鎖存輸出對(duì)稱通道的兩個(gè)結(jié)果,同時(shí)清空內(nèi)部寄存;每個(gè)波束的多通道濾波器輸出速度均為2M,通過多路選擇器分時(shí)送入求模器,最后經(jīng)SRAM控制器以12M的速度寫入外部SRAM。求模算法可用近似公式(4)求出:
這一近似算法的最大誤差為1.379% ,在軟件設(shè)計(jì)上主要用到了比較器、移位器和加減法器。
由以上分析看出,六波束動(dòng)目標(biāo)檢測器的核心部分復(fù)數(shù)乘法器共占用了六個(gè)內(nèi)部的DSP功能塊,配置成24個(gè)16×16的乘法器,資源占用很低,另一方面根據(jù)實(shí)時(shí)處理需要乘法器僅需工作在128M頻率上,遠(yuǎn)低于其工作極限( 370M以上),足以保證其工作的穩(wěn)定性和可靠性。另外,MTD部分處理一批數(shù)據(jù)(128個(gè)脈沖積累)的時(shí)間僅為前端積累時(shí)間128ms的一半,這樣,外部SRAM就不需要占用兩套總線對(duì)后續(xù)數(shù)據(jù)做乒乓處理了,留出的另一半時(shí)間用于恒虛警檢測器從SRAM中讀取積累數(shù)據(jù),不僅減少了FPGA外部I/O口的占用量和外部SRAM的需求容量,而且也減小了輸出延遲,提高實(shí)時(shí)性能表現(xiàn)。
恒虛警檢測器的原理和實(shí)現(xiàn)
( constant )處理技術(shù),用于在雜波環(huán)境變化時(shí),防止雷達(dá)的虛警概率發(fā)生太大的變化,同時(shí)保證一定的檢測概率,是一種對(duì)雜波問題很在效的處理技術(shù),可以隨本地噪聲能量信息設(shè)置門限。處理方法可分為時(shí)間法和空間法兩大類,第一類方法采用了熱噪聲估值門限和時(shí)間估值門限來控制虛警概率,在非雜波區(qū),用熱噪聲估值來構(gòu)成門限估值器,因此消除了CFAR損失。第二類方法包括平面平均相減組合式CFAR及各種距離平均CFAR處理器,如單元平均,選小單元平均,選大單元平均等,它們的共同特點(diǎn)是利用鄰近檢測單元的某些參考單元的采樣值對(duì)檢測單元內(nèi)的雜波強(qiáng)度進(jìn)行估計(jì),并據(jù)此形成檢測門限,適用于空域比較平穩(wěn)、時(shí)域變化比較劇烈的雜波環(huán)境。在這里我們選用了選大單元平均( GO-CFAR)恒虛警方法,原理如圖5所示。
恒虛警檢測器的功能實(shí)現(xiàn)框圖如圖6所示。SRAM控制器將存在外部SRAM中的數(shù)據(jù)按波束號(hào)、濾波器號(hào)、距離號(hào)順序依次經(jīng)過對(duì)數(shù)處理后送入GO-CFAR進(jìn)行檢測,對(duì)每個(gè)波束、每個(gè)濾波器的1024個(gè)距離點(diǎn)上判 別目標(biāo)的有無( 0或1),由圖4所示可以看出,GO-CFAR檢測模塊對(duì)大量的相鄰數(shù)據(jù)進(jìn)行了寄存,因而需要用控制器在每個(gè)濾波器1024個(gè)信號(hào)檢測完成后進(jìn)行即時(shí)清空,以利于下一個(gè)濾波器數(shù)據(jù)的進(jìn)入,控制器還要負(fù)責(zé)GO-CFAR檢測模塊運(yùn)行、停止和數(shù)據(jù)進(jìn)入的控制。在數(shù)據(jù)檢測的同時(shí),計(jì)數(shù)器根據(jù)檢測模塊系統(tǒng)時(shí)鐘運(yùn)行情況進(jìn)行三種計(jì)數(shù),這三個(gè)計(jì)數(shù)器的計(jì)數(shù)情況對(duì)應(yīng)當(dāng)前檢測單元的波束號(hào)( 0-5)、濾波器號(hào)(0-127)、距離號(hào)(0-1023),當(dāng)檢測模塊判斷出有目標(biāo)(輸出邏輯 1 )時(shí),三個(gè)計(jì)數(shù)器的計(jì)數(shù)值被數(shù)據(jù)合成器鎖存并輸出。最后合成的數(shù)據(jù)為32位,其中高8位以無符號(hào)數(shù)形式表示波束信息(范圍0~5),中8位以無符號(hào)數(shù)形式表示濾波器信息(范圍0~127);低16位以無符號(hào)數(shù)形式表示距離信息(范圍0~1023)。這樣處理的數(shù)據(jù)輸出結(jié)果對(duì)后續(xù)算法的操作實(shí)施非常有利。
系統(tǒng)性能分析和改進(jìn)
縱觀整個(gè)系統(tǒng),其硬件結(jié)構(gòu)較為簡單。由于FP2GA的IO資源豐富,外部SRAM總共有三套32位數(shù)據(jù)總線與其相聯(lián),使得FPGA讀寫外部存儲(chǔ)器的速度需求都在20M以內(nèi),因而十分便于硬件實(shí)施,避免了很多高速信號(hào)處理板設(shè)計(jì)時(shí)要充分考慮的電磁兼容性和抗干擾問題。需要實(shí)時(shí)高速信號(hào)處理的部分都在FP2GA內(nèi)部完成,這些優(yōu)點(diǎn)都是由以下幾個(gè)方面對(duì)其資源的充分利用所保證的,首先整個(gè)設(shè)計(jì)需要的各種不同的時(shí)鐘信號(hào),比較典型的有16M,12M,96M,128M,2M,6M等,對(duì)FPGA內(nèi)部PLL的充分利用使我們能毫不費(fèi)力的產(chǎn)生如此多不同頻率和數(shù)目的高穩(wěn)定、低時(shí)延的內(nèi)部時(shí)鐘信號(hào),同時(shí)外部時(shí)鐘源的數(shù)目可能只有一兩個(gè)。其次,作為運(yùn)算核心的復(fù)數(shù)乘法器需要靈活高速的輸入數(shù)據(jù)緩沖,對(duì)FPGA內(nèi)部嵌入式RAM塊的使用使這一點(diǎn)得到了有力的保證,在系統(tǒng)中,它們被大量的配置成不同容量的乒乓RAM,這些乒乓RAM都具有不同的讀寫時(shí)鐘,使得慢速寫高速讀的操作可以高效完成,例如在MTD濾波器中配置的乒乓RAM寫入為12M,讀出為128M;同時(shí),另一些內(nèi)部嵌入式RAM塊被配置成為存儲(chǔ)固定權(quán)值用的高速大容量RAM,因?yàn)檫@些數(shù)據(jù)最高讀取速度為128M,若放在FPGA片外則硬件實(shí)施的復(fù)雜性大為加強(qiáng)。這些數(shù)值固定的權(quán)值也不需要額外的存儲(chǔ),它們在軟件操作時(shí)以RAM初值表的形式輸入,通過下載與FPGA程序一同存儲(chǔ)在配置芯片中,上電配置時(shí)自動(dòng)下載到相應(yīng)的硬件單元。
最后,系統(tǒng)的高度集成不僅緣于內(nèi)部大量的自適應(yīng)邏輯模塊使其比上一代產(chǎn)品在邏輯容量上成倍增加,而且有賴于大量硬件DSP功能塊的使用,這些功能塊能方便地實(shí)現(xiàn)乘法器而不占用邏輯資源。傳統(tǒng)上用邏輯單元搭建一個(gè)32×32的復(fù)數(shù)乘法器需要近一千個(gè)邏輯單元,照此計(jì)算本系統(tǒng)共使用了7個(gè)復(fù)乘器,用DSP功能塊實(shí)現(xiàn)節(jié)省了七千個(gè)左右的邏輯單元,同時(shí)在計(jì)算速度上也大為提高。
雖然FPGA內(nèi)部嵌入式硬件資源減化了部分軟件工作,但由于三種處理器的集成,帶來了大量的接口操作和數(shù)據(jù)同步的工作,因此,軟件工作仍是本系統(tǒng)設(shè)計(jì)過程的難點(diǎn),具體表現(xiàn)在兩方面,首先,內(nèi)外存儲(chǔ)器地址操作復(fù)雜。三個(gè)處理器對(duì)一批128個(gè)脈沖積累數(shù)據(jù)操作的順序和方式不一樣,需要外部SRAM進(jìn)行暫存,因而在讀和寫過程中要變化地址操作以實(shí)現(xiàn)數(shù)據(jù)傳遞順序的改變,地址操作帶來了較大的工作量;另外內(nèi)部乒乓RAM的讀寫時(shí)鐘相差大,讀寫地址也要精心處理。其次,控制時(shí)序復(fù)雜。動(dòng)目標(biāo)檢測器和恒虛警檢測器的工作只用了一半的數(shù)據(jù)積累時(shí)間,因此需要頻繁的啟動(dòng)和停止,同時(shí)恒虛警檢測器內(nèi)的GO-CFAR檢測模塊也需要頻繁的啟動(dòng)和停止,對(duì)控制時(shí)序的要求很高,形成大量的軟件工作。
本系統(tǒng)還存在以下兩方面可以改進(jìn)的方向以適應(yīng)更大數(shù)據(jù)量和更高實(shí)時(shí)處理速度要求的情況,一是將外部存儲(chǔ)器由SRAM換成,這將帶來存儲(chǔ)容量上的突破,適用脈沖積累數(shù)提高和DBF合成波束數(shù)目增多的情況。二是將對(duì)數(shù)表由外部的移至FPGA內(nèi)部,從而把對(duì)數(shù)操作的速度由原來的限制在十多兆提高到上百兆,這樣以來對(duì)數(shù)操作將不再是系統(tǒng)的速度瓶頸,適用于更高速實(shí)時(shí)處理要求時(shí)的情況。
結(jié) 論
在使用陣列接收天線的動(dòng)目標(biāo)檢測雷達(dá)系統(tǒng)中,數(shù)字波束形成器、動(dòng)目標(biāo)檢測器和恒虛警檢測器常常同時(shí)出現(xiàn)并依次對(duì)接收信號(hào)進(jìn)行處理,本文基于高性能FPGA(的Stratix II系列)介紹了一種三者結(jié)合的單芯片集成設(shè)計(jì)方案,這一系統(tǒng)集成度高,體積小,而且設(shè)計(jì)的靈活性、可靠性和實(shí)用性較以往大為加強(qiáng),同時(shí)它也能很方便的移植到其它雷達(dá)設(shè)計(jì)中,只需稍作改進(jìn)就能適用于更高性能的算法實(shí)現(xiàn)。本方案已經(jīng)應(yīng)用到某型號(hào)地面監(jiān)視雷達(dá)項(xiàng)目中,收到良好效果。