文獻標(biāo)識碼: A
文章編號: 0258-7998(2015)01-0104-03
0 引言
衛(wèi)星導(dǎo)航系統(tǒng)是最近半個世紀(jì)發(fā)展起來的通過衛(wèi)星作為通信平臺的無線電通信導(dǎo)航系統(tǒng),該系統(tǒng)能提供全天候連續(xù)高精度的位置、速度和精密時間信息[1],現(xiàn)在已成為軍事大國在戰(zhàn)爭中獲得軍事優(yōu)勢的重要手段之一,所以具備抗干擾能力、能夠抵抗來自不同敵對力量的各種干擾的導(dǎo)航接收機在未來的軍事應(yīng)用中具有重要的意義。
1 抗干擾方案
目前,在導(dǎo)航系統(tǒng)中應(yīng)用比較多的是空域自適應(yīng)算法和空時聯(lián)合自適應(yīng)算法??沼蜃赃m應(yīng)算法實現(xiàn)簡單,耗資源少,但由于其只能在空域上進行濾波,所以對于寬帶干擾的抑制能力有限,容易形成零陷點擴散和偏移;而空時聯(lián)合自適應(yīng)算法可以利用每個天線陣元后面的延時抽頭來增加自適應(yīng)算法的頻率響應(yīng),從而提高算法對寬帶干擾的抗干擾能力??諘r自適應(yīng)算法的結(jié)構(gòu)如圖1所示[2]。
本文采用功率倒置算法來實現(xiàn)自適應(yīng)抗干擾,該算法是基于線性約束最小方差(LCMV)準(zhǔn)則的,算法使自適應(yīng)陣列的輸出功率最小[3]。對于導(dǎo)航信號和干擾,功率倒置算法均對其進行抑制,輸入陣列信號能量越大,算法零陷深度就越深,由于干擾信號通常情況下為壓制式干擾,其能量遠遠大于負信噪比的導(dǎo)航信號。所以功率倒置算法適合衛(wèi)星導(dǎo)航抗干擾。圖2為空時二維功率倒置算法結(jié)構(gòu)框圖。
將LMS算法應(yīng)用于功率倒置算法,即將第一路天線接收到的信號作為參考信號,其他支路信號通過LMS算法加權(quán)求和逼近第一路天線信號,相減輸出,從而使得輸出信號功率盡量小。
2 一種無乘法器的DLMS算法設(shè)計
在實際工程中對LMS算法進行硬件實現(xiàn),如FPGA實現(xiàn)等,受限于硬件處理速度,無法在較高的采樣率的一個快拍中完成迭代運算,需要引入DLMS(延時最小均方)算法[4]。DLMS算法是在權(quán)值更新和誤差計算中的乘法和加減法運算中引入延時單元D,當(dāng)前DLMS算法的權(quán)值更新是用經(jīng)過延時D以后的誤差信號和輸入信號來完成的,加入延時信息后的DLMS算法公式如下。
當(dāng)延遲小于系統(tǒng)階數(shù)時,誤差梯度:
此時延遲后的數(shù)據(jù)不降低收斂速度。由于采用空時二維自適應(yīng)算法,所以系統(tǒng)階數(shù)較空域自適應(yīng)算法大,更適用于流水線設(shè)計。
在FPGA中,乘法器資源非常寶貴,一般較為昂貴的FPGA中才有較多的乘法器核。設(shè)計使用CORDIC算法實現(xiàn)乘法運算,不過其缺點是如果要得到較高的運算精度,則運算需要多級,會引入較大的延遲。若是將其使用在空域DLMS算法中,并要求較高的計算精度,則帶來的延遲會引起梯度估計的較大誤差,同時還會影響收斂速度;空時二維自適應(yīng)算法具有較大的系統(tǒng)階數(shù),所以CORDIC算法引入的延遲不會對梯度估計造成較大的誤差,同時對DLMS算法的收斂速度也沒有影響。所以本設(shè)計使用CORDIC算法來實現(xiàn)DLMS算法中的乘法運算,并結(jié)合設(shè)計要求對相關(guān)參數(shù)設(shè)計進行了介紹。
2.1 基于CORDIC算法的乘法器設(shè)計
CORDIC(Coordinate Rotation Digital Computer)算法具有圓周和向量兩種模式,在兩種模式下能夠計算正弦余弦、反正切、平方根、雙曲余弦正弦、乘除法等運算[5]。在CORDIC算法的圓周模式下能夠完成乘法運算,其迭代方程如式(5)~式(7)所示。
但是傳統(tǒng)的CORDIC乘法運算只有滿足|z0|<2的情況下,計算結(jié)果才是正確的,表1為CORDIC算法的MATLAB仿真結(jié)果,可以看出確實|z0|>2時計算結(jié)果錯誤。
考慮到FPGA中的運算都是整數(shù)的運算,所以對傳統(tǒng)CORDIC乘法運算進行修改,將式(5)、式(6)中的2-i改為2i,并且迭代以變量i的降序來進行。假設(shè)系統(tǒng)的AD采樣位數(shù)為16位,所以為保證乘法運算精度,設(shè)計16級CORDIC迭代,即是變量i從16開始降序迭代。修改后的CORDIC運算迭代結(jié)構(gòu)示意圖如圖3所示。運算的最終輸出為result=y0+x0 z0。表2為修改后的CORDIC乘法運算的結(jié)果。從表2中可以看出,在16位位寬下修改后的CORDIC算法能保證整數(shù)運算的正確。
CORDIC算法容易實現(xiàn)流水線設(shè)計,在每一級迭代之間(P15、P14、P13……)均可引入流水線,從而提高設(shè)計的速度。本設(shè)計使用CORDIC乘法單元代替DLMS算法中的乘法運算,并在CORDIC乘法單元中引入適當(dāng)?shù)牧魉拇嫫?,從而提高CORDIC乘法單元的運行速度。
2.2 空時二維DLMS算法的時域抽頭數(shù)設(shè)計
空時二維DLMS算法的參數(shù)設(shè)計關(guān)鍵在于確定天線陣列后的抽頭數(shù)。抽頭數(shù)決定了空時二維自適應(yīng)算法的階數(shù),同時決定了算法中能引入流水線的上限和對寬帶干擾的抗干擾能力。分析干擾信號被抑制的程度,采用求解未抗干擾前干擾信號+噪聲的功率和抗干擾后干擾信號+噪聲功率的比值作為標(biāo)準(zhǔn)。用式(8)表示,INR稱為干擾抑制比:
使用寬帶干擾建模進行仿真,得到干擾抑制比結(jié)果如表3所示。從表3中可以看出,延遲抽頭數(shù)P增加會使DLMS算法的干擾抑制比增加,不過同時會增加自相關(guān)矩陣R的條件數(shù),使R病態(tài),導(dǎo)致DLMS算法收斂性能降低。當(dāng)P過大時反而會降低干擾抑制比,同時會增加硬件實現(xiàn)的資源消耗。所以系統(tǒng)綜合選取抽頭數(shù)P=5。
2.3 空時二維DLMS算法的simulink實現(xiàn)
本文采用Simulink完成算法設(shè)計的仿真,圖4為使用CORDIC乘法單元實現(xiàn)的復(fù)數(shù)乘法器,其中CORDIC乘法單元的結(jié)構(gòu)如圖3所示。復(fù)數(shù)乘法器的表達式為:
x+yj=(a+bj)(c+dj)=(ac-bd)+(ad+bc)j(9)
設(shè)計使用CORDIC乘法單元完成式(9)中的4個乘法運算,再結(jié)合一次加法運算和一次減法運算從而完成復(fù)數(shù)乘法器。CORDIC乘法單元中具有16級迭代單元,設(shè)計插入流水線以增加硬件的運算速度。由于抽頭數(shù)選擇為5,則系統(tǒng)階數(shù)為5×4-1=19,考慮不影響梯度的估計,這里設(shè)計在16級迭代單元中插入8級流水,使得梯度估計延遲數(shù)為11個延遲單位,小于系統(tǒng)階數(shù),不會影響DLMS算法的收斂性能。圖5為四天線、抽頭數(shù)為5、步長取DLMS抗干擾算法的第一路天線后端的4路抽頭的迭代模塊的結(jié)構(gòu)示意圖。
設(shè)計中需要考慮的一個問題是要保證流水線后的數(shù)據(jù)同步地進行處理。設(shè)計中CORDIC乘法器引入了8個單位的延遲,再加上4路天線后時域抽頭輸出的yi(n)(i=1,2,3,…,19)相加過程中引入兩級加法樹延遲,所以y(n)的延遲是10個單位的延遲,需要將參考信號d(n)也延遲10個單位后保持與y(n)的同步,同時參考信號d(n)與y(n)相減的減法器后再加入一級延遲,使得e(n)的延遲數(shù)為11個單位,所以需要將輸入信號u(n)延遲11個單位后與e(n)相乘得到梯度估計,如圖5所示。
3 測試結(jié)果及分析
利用Simulink對實測采集數(shù)據(jù)進行算法的仿真,其中采集數(shù)據(jù)的參數(shù)為4路天線數(shù)據(jù),中頻信號頻率為46.52 MHz,帶寬為20.46 MHz,采樣率為65.28 MHz。實驗中給系統(tǒng)添加了一個50 dB干信比的1 268.52 MHz的單頻干擾信號和一個65 dB干信比的寬帶QPSK信號,信號中心頻率為1 268.52 MHz,帶寬為20 MHz,其信號頻譜如圖6所示。仿真輸出結(jié)果如圖7和圖8所示。其中圖7為基于CORDIC算法的DLMS抗干擾算法的輸出信號e(n)的頻譜,從結(jié)果中可以看出,在數(shù)字中頻18.76±10.23 MHz頻段,e(n)輸出的頻率分量與輸入信號頻譜相比較,加入的單頻和寬帶干擾被有效地抑制了,帶內(nèi)功率譜密度降低為-80 dBm/Hz,提高了輸出的信干噪比。圖8為普通DLMS算法與基于CORDIC算法的DLMS算法的權(quán)向量?棕11的收斂曲線的比較。從結(jié)果中可以看到,基于CORDIC算法的DLMS算法沒有影響算法的收斂性能以及最終的最佳權(quán)向量。
4 結(jié)束語
本文研究了一種基于CORDIC算法的無乘法器的DLMS抗干擾算法設(shè)計,結(jié)合實測數(shù)據(jù)仿真,分析了算法中關(guān)鍵參數(shù)的選取,重點闡述了在Simulink環(huán)境下,基于CORDIC算法的乘法器及相關(guān)的DLMS算法的結(jié)構(gòu)與實現(xiàn)。最后完成了對算法的仿真及驗證,從仿真結(jié)果可以看出本算法設(shè)計不影響DLMS算法的特性,同時節(jié)約了乘法器資源,在CORDIC算法中引入流水線,能有效地提高算法的速度。
參考文獻
[1] 童鎧.中國導(dǎo)航定位衛(wèi)星系統(tǒng)的進展[J].中國航天,2002(8):3-10.
[2] 郭藝.GPS接收機空時抗干擾理論與實現(xiàn)關(guān)鍵技術(shù)研究[D].長沙:國防科學(xué)技術(shù)大學(xué),2007.
[3] 龔耀寰.自適應(yīng)濾波[M].第2版,北京:電子工業(yè)出版社,2003.
[4] Lok-Kee Ting,Roger Woods.Virtex FPGA implementation of a pipelined adaptive LMS predictor for electronic sup-port measures receivers[J].IEEE Transactions on Verylarge Scale Integration(VLSI) Systems,2005(1).
[5] MEHER P K,VALLS J,Tso-Bing Juang,et al.50 years of CORDIC:algorithms, architectures,and applications[J].IEEE Transactions on Circuits and Systems,2009,56(9).