用FPGA實(shí)現(xiàn)SAR實(shí)時(shí)信號處理的進(jìn)一步研究
出處:conwh 發(fā)布于:2007-04-28 11:47:41
摘要:高時(shí)效性是SAR成像系統(tǒng)的一個(gè)關(guān)鍵性能,要求處理的數(shù)據(jù)量大、運(yùn)算量大和快速進(jìn)行實(shí)時(shí)處理。SAR成像運(yùn)算主要集中在距離向和方位向的壓縮處理上,常用的壓縮處理方案是采用高速DSP實(shí)現(xiàn),這種方法曾被認(rèn)為是SAR實(shí)時(shí)處理的硬件實(shí)現(xiàn)方案。但是,近幾年可編程器件的發(fā)展,使得FPGA成為比DSP更為優(yōu)越的壓縮處理方式。結(jié)合工程實(shí)踐,介紹了采用ALTERA公司的Strat6ix系列芯片實(shí)現(xiàn)SAR實(shí)時(shí)處理機(jī)系統(tǒng)的具體設(shè)計(jì)方案。
關(guān)鍵詞:DSP 合成孔徑雷達(dá)(SAR) 實(shí)時(shí)信號處理 FFT算法 數(shù)據(jù)壓縮
SAR成像處理運(yùn)算量非常巨大,要達(dá)到準(zhǔn)實(shí)時(shí)甚至全實(shí)時(shí)的成像處理速度,就需要高性能的處理設(shè)備。常用的數(shù)據(jù)處理方案是采用高速DSP芯片實(shí)現(xiàn)。這種方法曾被認(rèn)為是SAR實(shí)時(shí)處理的硬件實(shí)現(xiàn)方案,但是近幾年可編程器件的發(fā)展使得FPGA已經(jīng)成為比DSP更優(yōu)越的壓縮處理方式。與DSP相比,F(xiàn)PGA的主要優(yōu)點(diǎn)有:①速度快,F(xiàn)PGA有內(nèi)置的高速乘法器和加法器。②DSP內(nèi)部一般沒有大量的存儲器,但是SAR實(shí)時(shí)處理運(yùn)算需要存儲大量的數(shù)據(jù),只能外接存儲器,這樣往往會使運(yùn)算速度下降,同時(shí)電路也會更復(fù)雜和不穩(wěn)定。目前,的FPGA中有巨量的高速存儲器,不用外接存儲器便可實(shí)現(xiàn)SAR實(shí)時(shí)處理運(yùn)算,其速度更快,電路也更簡單。③FPGA是硬件可編程的,比DSP更加靈活,DSP往往需要外部的接口和控制芯片配合工作,F(xiàn)PGA則不需要,這樣使得硬件更簡單和小型化。
在SAR成像中,對應(yīng)位維和距離維分別進(jìn)行處理,不公對成像質(zhì)量造成太大的損失。采用二維分離處理的算法結(jié)構(gòu)可以大大節(jié)省計(jì)算量,減少算法的復(fù)雜程度,而且比較靈活實(shí)用。其算法流程圖如所示。
在實(shí)際中,IFFT的實(shí)現(xiàn)可以通過將輸入數(shù)據(jù)取共軛之后做FFT運(yùn)算,再取共軛,再乘1/N來完成,所以基于高速FPGA的FFT算法的實(shí)現(xiàn)成了SAR實(shí)時(shí)信號處理機(jī)系統(tǒng)的部分,而正確的地址產(chǎn)生是整個(gè)FFT運(yùn)算的關(guān)鍵。用DSP和FPGA實(shí)現(xiàn)1024點(diǎn)FFT運(yùn)算的性能比較如表1所示。
表1 DSP和FPGA實(shí)現(xiàn)1024點(diǎn)FFT運(yùn)算的性能比較
| 芯片類型 | DSP LH9124(SHARP) | FPGA Stratix系列(ALTERA) | |
| FFT實(shí)現(xiàn)類型 | 混合基,塊浮點(diǎn) | 基2,塊浮點(diǎn) | 基4,塊浮點(diǎn) |
| 完成1024點(diǎn)FFT時(shí)間 | 80.7μs | 51.2μs | 12.8μs |
1 FFT在FPGA中實(shí)現(xiàn)的基本結(jié)構(gòu)
1.1 基2FFT在FPGA中的實(shí)現(xiàn)
基2FFT運(yùn)算的基本單元是蝶形運(yùn)算單元,其每的運(yùn)算都由N/2個(gè)蝶形運(yùn)算構(gòu)成,第m級的一個(gè)蝶形運(yùn)算的兩節(jié)點(diǎn)分別為Xm(n)和Xm(n+N/2m)?;?的蝶形運(yùn)算可表示為:
Xm(n)=Xm-1(n)+Xm-1(n+N/2m)
Xm(n+N/2m)=[Xm-1(n)-Xm-1(n+N/2m)]WrN
式中,m表示第m級蝶形算法,n為數(shù)據(jù)所在的行數(shù),N為所要計(jì)算的數(shù)據(jù)的點(diǎn)數(shù),WrN為旋轉(zhuǎn)因子。蝶形算法如所示,由復(fù)乘、兩次復(fù)加組成。
從上式可以得出基2蝶形運(yùn)算需四個(gè)乘法器,但在研究實(shí)現(xiàn)中,旋轉(zhuǎn)因子wr和wi都先被歸一化,在本系統(tǒng)中,對實(shí)部和虛部分別按32位有符號數(shù)歸一化,所以用數(shù)據(jù)歸一化還需兩乘法器,也就是說一共需要六個(gè)乘法器。Stratix系列芯片提供內(nèi)置乘法器內(nèi)核,EP1S25一共有80個(gè)8位乘法器。由8個(gè)8位乘法器可以組成一個(gè)32位乘法器,所以一共可以提供10個(gè)32位乘法器。在本系統(tǒng)中,F(xiàn)FT運(yùn)算需要6個(gè)32位乘法器,參考函數(shù)相乘需要4個(gè)32位乘法器,一共需要10個(gè)32乘法器,EP1S25剛好滿足要求。
程序采用模塊化結(jié)構(gòu),可以很方便地修改點(diǎn)數(shù),滿足不同的系統(tǒng)要求,也可以以此為基礎(chǔ)改寫為基4的FFT程序,應(yīng)用于更的芯片,滿足更高系統(tǒng)的要求。用FPGA實(shí)現(xiàn)FFT的基本結(jié)構(gòu)如所示。
以整個(gè)16點(diǎn)DIF為例的基2FFT的運(yùn)算流程圖如所示。
1.2 基4FFT在FPGA中的實(shí)現(xiàn)
如果采用更的FPGA芯片,由于片內(nèi)乘法器的增多,可以實(shí)現(xiàn)更高基FFT運(yùn)算,比如基4或者混合基FFT運(yùn)算,這樣可以成倍地提高運(yùn)算速度。以4K點(diǎn)FFT為例,如果時(shí)鐘頻率是100MHz,即每個(gè)時(shí)鐘周期是10ns,基2FFT運(yùn)算需要2K個(gè)時(shí)鐘周期,而4K=2 12,即4K點(diǎn)、其2FFT一共12級,所以4K點(diǎn)、基2FFT一共需要的時(shí)間是2K×12×10ns=240Kns;4K點(diǎn)、基4FFT運(yùn)算只需要1K個(gè)時(shí)鐘周期,且4K=4 6,即4K點(diǎn)、基4FFT一共只有6級基4FFT運(yùn)算,所以如果時(shí)鐘頻率不變,基4FFT所需要的總時(shí)間只有基2算法的1/4,即1K×6×10ns=60Kns,其它點(diǎn)數(shù)的運(yùn)算也是如此。基4算法速度是基2算法的四倍,這對于更高要求的實(shí)時(shí)處理系統(tǒng)非常價(jià)值。
用FPGA實(shí)現(xiàn)基4FFT的基本結(jié)構(gòu)和實(shí)現(xiàn)基2FF得一樣的(如所示),其4FFT的蝶形運(yùn)算單元的結(jié)構(gòu)圖如所示。
蝶形運(yùn)算單元的輸入、輸出關(guān)系如下:
Xa1=Xa+Xb+Xc+Xd
Ya1=Ya+Yb+Yc+Yd
Xb1=(Xa+Yb-Xc-Yd)Wrb+(Ya-Xb+Yc+Xd)Wib
Yb1=(Ya-Xb+Yc+Xd)Wrb+(Xa+Yb-Xc-Yd)Wib
Xc1=(Xa-Xb+Xc-Xd)Yrc+(Ya-Yb+Yc-Yd)Wic
Yc1=(Ya-Yb+Yc-Yd)Wrc+(Ya-Xb+Xc-Xd)Wic
Xd1=(Xa-Yb+Xc+Yd)Wrd+(Ya+Xb-Yc-Xd)Wid
Yd1=(Ya+Xb-Yc-Xd)Wrd+(Xa-Yb+Xc+Yd)Wid
可以看出,基4的蝶形運(yùn)算單元可以同時(shí)輸入輸出四個(gè)數(shù)據(jù)進(jìn)行并行蝶形運(yùn)算,這就比基2蝶形運(yùn)算的速度提高一倍。從運(yùn)算公式還可以看出,基4FFT運(yùn)算需要12個(gè)乘法器,如果數(shù)據(jù)仍取32位,則需要12×8=96個(gè)8位乘法器,再考慮到參考函數(shù)相乘需要的4×8=32個(gè)8位乘法器,一共需要96+32=128個(gè)8位乘法器。采用Stratix系列的EP1S60及EP1S60以上的芯片就可以實(shí)現(xiàn)。是64點(diǎn)基4FFT前兩級的流程圖。
在研制過程中,對基4FFT也進(jìn)行了軟件編程和仿真調(diào)制,選用的是用Altera公司的EP1S60F1020C60芯片實(shí)現(xiàn)基4方式的16K點(diǎn)數(shù)據(jù)壓縮,達(dá)到了預(yù)期的目的。
1.3 FPGA中實(shí)現(xiàn)FFT的幾個(gè)關(guān)鍵技術(shù)
1.3.1 運(yùn)算中的和溢出問題
在FFT運(yùn)算過程中,一個(gè)數(shù)據(jù)要經(jīng)過很多次的乘法和加法。以4K點(diǎn)FFT運(yùn)算為例,一共有12級運(yùn)算,每運(yùn)算又是由兩級加法和乘法運(yùn)算構(gòu)成,也就是說,原始數(shù)據(jù)要經(jīng)過24級加法和12級乘法才能得到終結(jié)果,所以在運(yùn)算中如何保證和不溢出是一個(gè)重要問題。由于硬件資源 限制,如何解決溢出問題,又能使損失在系統(tǒng)中可以接受是很關(guān)鍵的。
在FFT的每完成之后,對結(jié)果數(shù)據(jù)進(jìn)行塊浮點(diǎn)處理,可以保證在不溢出的情況下將有效數(shù)據(jù)前移,這樣可以使得下運(yùn)算保持更高的。
1.3.2 FFT運(yùn)算中的地址產(chǎn)生問題
在FFT運(yùn)算過程中,所有的數(shù)據(jù)都存放在RAM中,所以不管是讀數(shù)據(jù)還是寫數(shù)據(jù),都涉及到RAM的地址,地址產(chǎn)生是整個(gè)FFT程序的關(guān)鍵問題之一。
由FFT運(yùn)算流程圖可以看出,DIF形式的FFT輸入數(shù)據(jù)地址是順序的,但每輸出數(shù)據(jù)地址不再是原來的正序,正確的位反轉(zhuǎn)技術(shù)是保證每次操作地址正確的關(guān)鍵。
2 系統(tǒng)軟硬件調(diào)試及結(jié)果
本系統(tǒng)的調(diào)試可以概括為軟件仿真和硬件調(diào)試兩個(gè)部分?;?算法的實(shí)時(shí)信號處理機(jī)已經(jīng)通過調(diào)試驗(yàn)證,并交付使用;基4算法由于受硬件條件限制,現(xiàn)只在實(shí)驗(yàn)室環(huán)境中通過仿真驗(yàn)證和調(diào)試。下面分別介紹調(diào)試中遇到的一些典型問題并給出各階段及系統(tǒng)終的調(diào)試結(jié)果。
2.1 FFT算法實(shí)現(xiàn)的驗(yàn)證
數(shù)據(jù)壓縮的內(nèi)容是FFT運(yùn)算,所以首先對實(shí)現(xiàn)FFT運(yùn)算的數(shù)據(jù)壓縮板進(jìn)行調(diào)試。從所周知,方波經(jīng)過FFT運(yùn)算之后應(yīng)該是一個(gè)sinc函數(shù)。從測試口輸入一個(gè)方波作為原始數(shù)據(jù),如果輸出的結(jié)果是一個(gè)sinc函數(shù)就可以證明FFT運(yùn)算成功。是原始數(shù)據(jù)實(shí)部和虛部都為20點(diǎn)的方波(數(shù)據(jù)總長度為512點(diǎn))經(jīng)過實(shí)驗(yàn)硬件FFT運(yùn)算之后的實(shí)部、虛部及求模后的波形??梢钥闯鼋Y(jié)果是一個(gè)sinc函數(shù),說明實(shí)際硬件的FFT運(yùn)算是正確的。
2.2 數(shù)據(jù)壓縮板實(shí)現(xiàn)數(shù)據(jù)壓縮運(yùn)算
要驗(yàn)證數(shù)據(jù)壓縮運(yùn)算,實(shí)際上就是要驗(yàn)證FFT+參考函數(shù)相乘+IFFT運(yùn)算。考慮到兩個(gè)寬度相同的方波相卷積的結(jié)果是一個(gè)三角波,時(shí)域的卷積又等效于頻域相乘,所以,如果令原始數(shù)據(jù)為方波,參考函數(shù)為同樣寬度的方波,則經(jīng)過FFT之后的數(shù)據(jù)為sinc函數(shù),終結(jié)果將是一個(gè)三角波。為實(shí)驗(yàn)輸出結(jié)果,可以看出結(jié)果將是一個(gè)三個(gè)波。為實(shí)驗(yàn)輸出結(jié)果,可以看出結(jié)果是一個(gè)三角波,說明FFT+參考函數(shù)相乘+IFFT運(yùn)算是正確的。是實(shí)際硬件完成的SAR點(diǎn)目標(biāo)壓縮波形。
通過比較可以看出以上測試結(jié)果與理論值吻合的很好,證明數(shù)據(jù)壓縮板工作的很好。
2.3 數(shù)據(jù)壓縮系統(tǒng)聯(lián)調(diào)
將同一幀原始數(shù)據(jù)送入實(shí)時(shí)信號處理系統(tǒng)中,經(jīng)過距離壓縮、矩陣轉(zhuǎn)置、方位壓縮后所得結(jié)果與軟件成像結(jié)果進(jìn)行對比,實(shí)驗(yàn)表明兩者得出的圖像幾乎一致,證明硬件成像結(jié)果正確。
本文研究了基于高速FPGA的SAR實(shí)時(shí)信號處理機(jī)系統(tǒng)的組成,詳細(xì)講述采用基2和基4算法在FPGA中實(shí)現(xiàn)FFT算法以及關(guān)鍵的技術(shù)。通過實(shí)驗(yàn)表明,這套方案是正確的,并且這套系統(tǒng)已經(jīng)交付使用。它的運(yùn)算和數(shù)據(jù)處理速度能夠達(dá)到要求。
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- 單片機(jī)技術(shù)特性與嵌入式開發(fā)實(shí)踐指南2026/1/7 10:00:02
- 單片機(jī)(MCU)與數(shù)字信號處理器(DSP)分類及選型技術(shù)指南2025/12/30 10:02:37
- 工業(yè)級DSP信號處理系統(tǒng):硬件適配與抗干擾工程方案2025/12/15 14:41:00
- HOLTEK推出HT32F65533G/733G內(nèi)建N/N預(yù)驅(qū)電機(jī)專用SoC單片機(jī)2025/11/26 14:11:41
- 什么是C51數(shù)據(jù)類型擴(kuò)充定義2025/10/27 13:59:22
- 汽車電子常用電子元器件選型指南
- MOSFET驅(qū)動(dòng)與隔離方案設(shè)計(jì)
- 高溫環(huán)境下電源IC選型建議
- 安防監(jiān)控設(shè)備連接器應(yīng)用分析
- 高速PCB信號完整性(SI)設(shè)計(jì)核心實(shí)操規(guī)范
- 鎖相環(huán)(PLL)中的環(huán)路濾波器:參數(shù)計(jì)算與穩(wěn)定性分析
- MOSFET反向恢復(fù)特性對系統(tǒng)的影響
- 電源IC在惡劣環(huán)境中的防護(hù)設(shè)計(jì)
- 連接器耐腐蝕性能測試方法
- PCB電磁兼容(EMC)設(shè)計(jì)與干擾抑制核心實(shí)操規(guī)范









