羅柳鎮(zhèn),劉光祖,孫琳琳
(南京理工大學(xué)電光學(xué)院,江蘇南京210006)
校準(zhǔn)單元是確保陣列天線[1-4]正常工作的重要組成部分。其主要工作就是對(duì)陣列天線每個(gè)陣元進(jìn)行高精度的幅度和相位的測量。通常情況下使用FPGA加載特定的算法即可實(shí)現(xiàn)該功能。常用的XILINX或ALTERA公司的FPGA,其內(nèi)部邏輯資源豐富,實(shí)現(xiàn)復(fù)雜的數(shù)字信號(hào)處理功能難度較小,但在宇航應(yīng)用條件下,上述公司的FPGA存在較大的使用限制。文中將討論使用ACTEL公司的反熔絲[5]的FPGA實(shí)現(xiàn)高精度幅相測量,反熔絲FPGA宇航環(huán)境適應(yīng)能力強(qiáng),但因?yàn)橹圃旃に嚥煌?,其?guī)模相對(duì)較小,如SX-A系列A54SX72A。該芯片內(nèi)部僅有6036個(gè)邏輯單元,而且沒有內(nèi)置乘法器。
仿真表明僅僅代碼實(shí)現(xiàn)一個(gè)乘法器也將占用A54SX72A芯片將近12%的邏輯資源。測幅測相中包含下變頻和低通濾波,這些都需要使用乘法器。傳統(tǒng)方法編寫的代碼綜合后使用的邏輯資源遠(yuǎn)超出芯片的實(shí)際邏輯資源,必須采用經(jīng)過優(yōu)化的測幅測相算法,在滿足測量精度的前提下有效降低邏輯資源占用量。文中給出幅相測量的一種高效代碼實(shí)現(xiàn)方法,重點(diǎn)論述了下變頻,低通濾波和鎖相環(huán)模塊的高效代碼策略。
假定整個(gè)單元由外部提供參考時(shí)鐘40.92 MHz,A/D輸入信號(hào)頻率92.07 MHz,F(xiàn)PGA工作時(shí)鐘40.92 MHz,均與外參考同源。整個(gè)單元沒有額外的引入噪聲,信號(hào)的信噪比非常高。測量采用數(shù)字檢測和PLL結(jié)合的方案實(shí)現(xiàn)被測單頻信號(hào)的幅相測量,設(shè)計(jì)的幅相測量方案如圖1所示。
圖1 幅相測量實(shí)現(xiàn)框圖
采樣后信號(hào)直接獲取信號(hào)幅度,平方累加求均值。PLL[6-9]是本測量系統(tǒng)為保證相位精度而設(shè)計(jì)的反饋系統(tǒng),在PLL設(shè)計(jì)中,首先是數(shù)字下變頻,變頻后的結(jié)果鑒相,輸出經(jīng)環(huán)路濾波器后控制NCO。當(dāng)環(huán)路鎖定時(shí),NCO中的累加器的值即所求相位。仿真發(fā)現(xiàn)一個(gè)乘法器占用A54SX72A芯片將近12%的資源。上述算法需要使用多個(gè)乘法器。
為了有效降低資源占用率,我們采用如圖2所示結(jié)構(gòu)實(shí)現(xiàn)幅相測量。
圖2 幅相測量的高效實(shí)現(xiàn)結(jié)構(gòu)
常規(guī)的數(shù)字下變頻需要一個(gè)NCO產(chǎn)生正余弦波和輸入的信號(hào)分別相乘輸出I,Q兩路。NCO的頻率是可控的。通過頻率控制字實(shí)現(xiàn)。下變頻目的是把信號(hào)變頻到零頻處理。顯然在沒有乘法器和邏輯之源少的ACTEL芯片中采用這種實(shí)現(xiàn)方案是不可取的。因?yàn)槠渌嫉倪壿嬞Y源很多。
經(jīng)過分析比較,選擇采用免混頻的下變頻的算法。由于待測信號(hào)頻率和采樣頻率符合的關(guān)系。其中fs是采用頻率。f0是信號(hào)帶寬中心頻率。
設(shè)采樣后信號(hào)為:
對(duì)輸入的數(shù)據(jù)周期性的保持,取零,取反操作即可。節(jié)省乘法器和NCO資源。對(duì)于整個(gè)幅相測量單元來說,將省去了兩個(gè)乘法器和一個(gè)NCO,邏輯資源占用率顯著降低。
傳統(tǒng)的FIR濾波器涉及一系列的乘法運(yùn)算,直接采用的FIR低通濾波器顯然不是最佳方法。本設(shè)計(jì)中提出采用半帶濾波器。半帶濾波器可以使2倍抽取乘法次數(shù)比一般線性相位的FIR濾波器減少1/2。
滿足如下條件的FIR濾波器稱之為半帶濾波器:
1)δp=δs=δ(通帶波紋等于阻帶衰減)
2)wc=π-wA(通帶帶寬等于租帶帶寬)
半帶濾波器有如下性質(zhì):
半帶濾波器系數(shù)的對(duì)稱性和近一半系數(shù)為0,使得濾波運(yùn)算量大大降低。同時(shí)將乘法運(yùn)算轉(zhuǎn)換成移位運(yùn)算。濾波器的系數(shù)設(shè)置成2的冪次方形式。這樣就大大降低了運(yùn)算資源。輸入信號(hào)頻率為92.07 MHz,采樣時(shí)鐘為40.92 MHz。半帶濾波器截止頻率為10.23 MHz,能夠?yàn)V除高頻分量。取7個(gè)濾波器的抽頭 系 為 [-0.125,0,0.375,0.5,0.375,0,-0.125]。0.125和0.375,0.5都是2的冪次方形式。其幅頻響應(yīng)如圖3所示。
由于信號(hào)信噪比較高,下變頻后輸出需要濾除主要是差頻分量和和頻分量,半帶濾波器完全可以做到將和頻分量濾除,達(dá)到低通濾波的目的。
由于測量時(shí)間充足,半帶濾波器的設(shè)計(jì)采用串行的結(jié)構(gòu),這種結(jié)構(gòu)對(duì)時(shí)序要求低,但運(yùn)算時(shí)間相對(duì)較長,通過犧牲測量時(shí)間進(jìn)一步降低資源占用率。
圖3 設(shè)計(jì)的半帶濾波器幅頻響應(yīng)
采用了數(shù)字鎖相環(huán)來實(shí)現(xiàn)高精度相位測量。鎖相環(huán)[10-15]是一個(gè)相位的負(fù)反饋控制系統(tǒng)。鎖相環(huán)的基本模塊主要包括鑒相器(PD),環(huán)路濾波器(LF)和壓控振蕩器(VCO)。鑒相器的作用是提取輸入信號(hào)和環(huán)路輸出信號(hào)的相位差值。環(huán)路濾波器的作用是對(duì)鑒相器的輸出信號(hào)進(jìn)行環(huán)路的濾波,消除噪聲。環(huán)路濾波器的輸出電壓控制壓控振蕩器輸出一定頻率的信號(hào),鎖相環(huán)不斷調(diào)節(jié)壓控振蕩器頻率直到能跟蹤上輸入信號(hào)的頻率。早前鎖相環(huán)的實(shí)現(xiàn)都是通過模擬電路來實(shí)現(xiàn)的,模擬鎖相環(huán)也經(jīng)過長期的發(fā)展已經(jīng)成為相當(dāng)穩(wěn)定的一門技術(shù)。由于數(shù)字電路相對(duì)于模擬電路有著很多優(yōu)勢(shì),所以鎖相環(huán)多用數(shù)字電路實(shí)現(xiàn),數(shù)字鎖相環(huán)主要由數(shù)字鑒相器,數(shù)字環(huán)路濾波器和數(shù)控振蕩器組成。
1)鑒相器
鑒相器的功能就是提取輸入信號(hào)和反饋信號(hào)的相位差。一般由乘法器和低通濾波器構(gòu)成。下變頻輸出的I,Q兩路信號(hào)進(jìn)入鎖相環(huán)。一般用一個(gè)復(fù)數(shù)乘法器即可提取相位差。
由上式可以看出,只要將輸入的復(fù)數(shù)信號(hào)和反饋回來的復(fù)數(shù)信號(hào)相乘取結(jié)果的虛部就可以提取相位差,為了節(jié)省邏輯資源不采用復(fù)數(shù)乘法器,而是使用兩個(gè)乘法器和一個(gè)加法器獲取復(fù)數(shù)乘法的虛部。
2)環(huán)路濾波器
數(shù)字環(huán)路濾波器是數(shù)字鎖相環(huán)路中的一個(gè)關(guān)鍵模塊,要實(shí)現(xiàn)數(shù)字環(huán)路濾波器,就必須找到將模擬濾波器映射到數(shù)字域的方法,其中最常用的就是雙線性變換方法。雙線性變換方法實(shí)現(xiàn)模擬系統(tǒng)與數(shù)字系統(tǒng)之間的轉(zhuǎn)換十分簡單,只需要直接應(yīng)用下面的變換公式即可:
式中,T為數(shù)字采用周期,將上式帶入模擬環(huán)路濾波器的傳遞函數(shù)中就可以得到數(shù)字環(huán)路濾波器的表達(dá)式,對(duì)于理想積分濾波器來講,其數(shù)字化系統(tǒng)函數(shù)為
其中:
對(duì)于數(shù)字鎖相環(huán)路來講,顯然關(guān)鍵問題在于設(shè)計(jì)C1和C2兩個(gè)參數(shù)值。兩個(gè)參數(shù)值直接決定了環(huán)路的性能。其實(shí)現(xiàn)結(jié)構(gòu)如圖4所示。
圖4 環(huán)路濾波器結(jié)構(gòu)
3)數(shù)制振蕩器
數(shù)控振蕩器是決定鎖相環(huán)性能的主要因素之一,用于產(chǎn)生頻率和相位的可控的正弦和余弦波?;诓檎冶矸椒ㄔO(shè)計(jì)NCO是最常用的方法。一般的查找方法是用兩塊ROM分別存儲(chǔ)整個(gè)周期的正弦和余弦數(shù)值,根據(jù)相位累加器輸出地址對(duì)ROM表進(jìn)行查找。
如果f是時(shí)鐘頻率,也就是采樣頻率,則NCO的分辨率就是f/2n?;驹砭褪禽斎氲念l率控制字在時(shí)鐘的控制下進(jìn)行一次一次的累加,而后把這個(gè)累加值作為正余弦查找表的查找地址,讀出相應(yīng)的值輸出相位累加器主要作用就是對(duì)輸入的信號(hào)進(jìn)行累加,累加后的值輸出作為查找表的地址。正弦查找表表中存儲(chǔ)的就是正弦波形具體數(shù)字量化后的值,利用MATLAB編寫程序生成一個(gè)周期的具體數(shù)值,而后編成一個(gè)COE文件存入ROM中。查找表取1 024個(gè)點(diǎn)存儲(chǔ),地址范圍0到1 023,一個(gè)地址對(duì)應(yīng)一個(gè)正弦波值。
而對(duì)于余弦查找表,余弦波形本來就是正弦波形前移1/4周期,所以為了節(jié)省硬件資源,只需要將查正弦波形的地址值加上256作為查找余弦波形的地址值即可。
充分利用正弦和余弦的對(duì)稱性,設(shè)計(jì)中僅存儲(chǔ)1/4周期正弦數(shù)據(jù),余弦數(shù)據(jù)根據(jù)正弦數(shù)據(jù)位移得到,這種實(shí)現(xiàn)方法將減少占用FPGA約13%的的邏輯資源,實(shí)現(xiàn)的NCO與傳統(tǒng)方法完全一致。
基于上述設(shè)計(jì)實(shí)現(xiàn)代碼,使用modesim-SE-64-10.1進(jìn)行編譯仿真。輸入一個(gè)一定頻率的單音信號(hào),利用設(shè)計(jì)的算法對(duì)單音信號(hào)進(jìn)行幅相測量。分別對(duì)傳統(tǒng)的算法和優(yōu)化算法進(jìn)行仿真,輸入條件相同。采用優(yōu)化算法時(shí),對(duì)于A54SX72A反熔絲FPGA來說,其資源占有率為77%。仿真結(jié)果如圖5和圖6所示。
圖5 傳統(tǒng)算法Modesim仿真結(jié)果
圖6 優(yōu)化算法Modesim仿真結(jié)果
圖5和圖6中除了時(shí)鐘和復(fù)位信號(hào)外,從上而下依次為測量功率(data_power)、鎖相環(huán)中的NCO的正弦波輸出(Sin)、鎖相環(huán)中的NCO余弦輸出(Cos)、輸出的測量相位(data_pha)。環(huán)路濾波器的輸出(Freq)。
仿真的結(jié)果可以看出,兩種方案鎖相環(huán)最終都可穩(wěn)定輸出。但優(yōu)化算法為了減少資源占用犧牲了運(yùn)算時(shí)間,傳統(tǒng)算法0.5 ms左右就開始收斂,優(yōu)化算法在5 ms左右開始收斂。由于測量時(shí)間有一定余量,優(yōu)化算法完全可以實(shí)現(xiàn)幅相測量并達(dá)到指標(biāo)精度。
在宇航應(yīng)用背景下,充分利用反熔絲FPGA的宇航可靠性,通過算法優(yōu)化在小規(guī)模反熔絲FPGA上實(shí)現(xiàn)高精度幅相測量,相比較傳統(tǒng)算法,在不降低測量精度的前提下,資源占用率降低50%,整個(gè)設(shè)計(jì)單元體積、功耗顯著降低,具有較強(qiáng)的工程應(yīng)用價(jià)值。
參考文獻(xiàn):
[1]李陽,肖增利,孫芃,等.相控陣?yán)走_(dá)捷聯(lián)波束穩(wěn)定方法[J].航空學(xué)報(bào),2014,35(2):497-505.
[2]王春,吳楠,謝大剛.基于互阻抗原理的平面有源相控陣天線輻射近場計(jì)算方法:CN103678802A[P].2014.
[3]中秋.彈載有源相控陣?yán)走_(dá)的應(yīng)用[J].兵器知識(shí),2016(2):54-57.
[4]余良?jí)?遠(yuǎn)程相控陣制導(dǎo)雷達(dá)調(diào)度研究[D].西安:西安電子科技大學(xué),2012.
[5]張偉,杜濤,張國俊.反熔絲FPGA配置電路的研究[J].微電子學(xué)與計(jì)算機(jī),2015(4):98-101.
[6]帥旗.基于FPGA的全數(shù)字鎖相環(huán)的設(shè)計(jì)與實(shí)現(xiàn)[D].大連:大連理工大學(xué),2013.
[7]王新浪.頻率合成技術(shù)發(fā)展與應(yīng)用[J].現(xiàn)代導(dǎo)航,2012,3(2):119-122.
[8]Won J H.A novel adaptive digital phase-lock-loop for modern digital GNSS receivers[J].IEEE Commu?nications Letters,2014,18(18):46-49.
[9]Mendel S.Phase-lock in all-digital phase-locked loops[M].US.2015.
[10]Balachandran G K,Petkov V P.Digitalphase lock loop circuit including finite impulse response filtering to reduce aliasing of quantization noise:US9246499[P].2016.
[11]Lin C L.Digital phase lock loop andmethod thereof[J].2015.
[12]劉丹丹.一種新型寬頻域全數(shù)字鎖相環(huán)的研究與設(shè)計(jì)[D].衡陽:南華大學(xué),2015.
[13]Gupta A S,Hanjura A K,Mathur B S.Digital Phase Lock Loop for Tracking Very Low Frequencies[J].Iete Technical Review,2015,3(3):85-88.
[14]王華軍.基于FPGA的新型全數(shù)字鎖相環(huán)的設(shè)計(jì)與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2015.
[15]黃保瑞,楊世平.基于FPGA的全數(shù)字鎖相環(huán)設(shè)計(jì)[J].電子測試,2014(16):33-34.
[16]羅寧,陳原聰,趙野.應(yīng)用于全數(shù)字鎖相環(huán)的高性能數(shù)控振蕩器設(shè)計(jì)[J].微電子學(xué)與計(jì)算機(jī),2015,32(12):59-62.