本發(fā)明屬于通信技術(shù)領(lǐng)域,涉及一種基于拉格朗日插值的高速并行多路分?jǐn)?shù)延時(shí)濾波器實(shí)現(xiàn)技術(shù)。
背景技術(shù):
寬帶波束形成技術(shù)的核心是控制信號在陣內(nèi)的延時(shí),以抵消來自不同方向的信號在空間的延時(shí),使各陣元間的信號能夠同相相加,從而獲得波束指向和方向增益。模擬延遲線的成本高、體積龐大、功耗大、穩(wěn)定性差,不利于實(shí)際應(yīng)用,但是在數(shù)字域上實(shí)現(xiàn)延時(shí)補(bǔ)償具有成本低、精度高、穩(wěn)定性好等優(yōu)點(diǎn),有著良好的應(yīng)用前景。在數(shù)字域上,實(shí)現(xiàn)采樣周期整數(shù)倍的延時(shí)非常容易,對于實(shí)現(xiàn)采樣周期分?jǐn)?shù)倍延時(shí)的情況,我們通常利用分?jǐn)?shù)延時(shí)濾波器對目標(biāo)信號進(jìn)行分?jǐn)?shù)延時(shí)處理。在數(shù)字通訊系統(tǒng)中,為了從接收信號中恢復(fù)出數(shù)據(jù)信號,在接收端必須要有一個(gè)與接收到的數(shù)字基帶信號符號速率同步的時(shí)鐘信號,我們通常也采用分?jǐn)?shù)延時(shí)濾波器對符號速率進(jìn)行同步處理。因此,在寬帶波束形成技術(shù)和符號同步等技術(shù)中,如何在數(shù)字域上實(shí)現(xiàn)一種高速度、高精度、高穩(wěn)定性的能夠?qū)δ繕?biāo)信號進(jìn)行分?jǐn)?shù)延時(shí)補(bǔ)償?shù)臑V波器是非常關(guān)鍵的環(huán)節(jié)。
目前,在數(shù)字域上實(shí)現(xiàn)分?jǐn)?shù)延時(shí)最常用的分?jǐn)?shù)延時(shí)濾波器是基于傳統(tǒng)farrow結(jié)構(gòu)的分?jǐn)?shù)延時(shí)濾波器,因?yàn)樗臑V波器系數(shù)固定,使用時(shí)只需要更改延時(shí)參數(shù)δ,而且設(shè)計(jì)出的濾波器性能較好。但是為了得到很高的精度,其濾波器的階數(shù)和用于逼近濾波器系數(shù)的多項(xiàng)式的階數(shù)要求較高。
傳統(tǒng)farrow分?jǐn)?shù)延時(shí)濾波器的傳遞函數(shù)如下所示:
其中:anm為濾波器系數(shù),p∈[-0.5,0.5],m為用于逼近濾波器系數(shù)的多項(xiàng)式階數(shù),n為濾波器階數(shù),理想延時(shí)濾波器頻率響應(yīng)函數(shù)表示為:hid(ω,p)=e-jωp。
使用傳統(tǒng)farrow分?jǐn)?shù)延時(shí)濾波器實(shí)現(xiàn)方法,要實(shí)現(xiàn)一個(gè)n階的farrow分?jǐn)?shù)延時(shí)濾波器,需要m×n個(gè)乘法器,當(dāng)n和m取值很大時(shí),傳統(tǒng)farrow分?jǐn)?shù)延時(shí)濾波器結(jié)構(gòu)非常消耗資源,傳統(tǒng)farrow分?jǐn)?shù)延時(shí)濾波器結(jié)構(gòu)如附圖1所示。
除此之外,傳統(tǒng)farrow分?jǐn)?shù)延時(shí)濾波器有個(gè)很大的缺陷,那就是它只能適用于單路(單路數(shù)據(jù)輸入,單路數(shù)據(jù)輸出)、低數(shù)據(jù)率的應(yīng)用場景,如果前端adc的采樣率達(dá)到1ghz以上,那么按照傳統(tǒng)farrow分?jǐn)?shù)延時(shí)濾波器的實(shí)現(xiàn)方法,就要求整個(gè)系統(tǒng)的工作時(shí)鐘也要在1ghz以上,這在實(shí)際的fpga和dsp應(yīng)用中是不現(xiàn)實(shí)的。為了解決高數(shù)據(jù)率的問題,我們在前端adc采樣后將1路數(shù)據(jù)分成l路傳輸,每路的數(shù)據(jù)率降為原來的
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明所要解決的,就是針對上述問題,提出一種可以適用于高速、并行多路應(yīng)用場景的分?jǐn)?shù)延時(shí)濾波器實(shí)現(xiàn)技術(shù),并且使用拉格朗日插值算法簡化了傳統(tǒng)分?jǐn)?shù)延時(shí)濾波器的濾波器系數(shù)求解方法。
本發(fā)明的技術(shù)方案是:一種基于拉格朗日插值算法的高速并行多路分?jǐn)?shù)延時(shí)濾波器實(shí)現(xiàn)技術(shù),其特征在于可以適用于高速、并行多路的應(yīng)用場景,同時(shí)相比于傳統(tǒng)分?jǐn)?shù)延時(shí)濾波器的濾波器系數(shù)求解方法更為簡單明了,實(shí)現(xiàn)流程包括以下步驟:
a.對目標(biāo)信號進(jìn)行采樣得到x[n]。
b.假設(shè)我們要實(shí)現(xiàn)的基于拉格朗日插值的高速并行多路分?jǐn)?shù)延時(shí)濾波器階數(shù)為n,利用采樣數(shù)據(jù)構(gòu)造拉格朗日插值函數(shù):
b1.假設(shè)采樣周期為ts,選取最前面的連續(xù)n個(gè)采樣點(diǎn):
{(0,x[0])(ts,x[ts])…((n-1)ts,x[(n-1)ts])}
b2.利用前n個(gè)采樣點(diǎn),構(gòu)造分?jǐn)?shù)延時(shí)量為δ的拉格朗日插值函數(shù):
其中:
t[n]={0ts…(n-1)ts}
t[m]={0ts…(n-1)ts}
x[n]={x[0]x[ts]…x[(n-1)ts]}
0<δ<ts
δ是要補(bǔ)償?shù)姆謹(jǐn)?shù)延時(shí)量,為采樣周期的分?jǐn)?shù)倍。
c.計(jì)算基于拉格朗日插值的分?jǐn)?shù)延時(shí)濾波器系數(shù)并構(gòu)造橫向?yàn)V波結(jié)構(gòu)
c1.將公式1展開成如下形式:
其中cm[n]為公式1展開式中δ0,δ1,δ2…δn-1的系數(shù)。
c2.將延時(shí)量δ帶入公式2中計(jì)算出分?jǐn)?shù)延時(shí)濾波器系數(shù):
c3.構(gòu)造橫向?yàn)V波結(jié)構(gòu):
其中h[k]為計(jì)算出的分?jǐn)?shù)延時(shí)濾波器系數(shù),f[n]是對輸入數(shù)據(jù)x[n]補(bǔ)償了延時(shí)δ的輸出數(shù)據(jù)。
d.根據(jù)實(shí)際應(yīng)用要求對輸入數(shù)據(jù)x[n]、濾波器系數(shù)h[n]、延時(shí)補(bǔ)償輸出f[n]進(jìn)行分路處理,并利用z變換推導(dǎo)出基于拉格朗日插值的高速并行多路分?jǐn)?shù)延時(shí)濾波器的實(shí)際結(jié)構(gòu):
d1.對輸入數(shù)據(jù)x[n]和濾波器系數(shù)h[n]進(jìn)行z變換:
d2.得到f[n]的z變換表達(dá)式f(z):
d3.根據(jù)實(shí)際要求對x[n]、h[n]、f[n]進(jìn)行分路處理,并對分路后的數(shù)據(jù)進(jìn)行z變換,假設(shè)需要并行l(wèi)路輸入,并行l(wèi)路輸出,則分路方法如下所示:
首先在時(shí)域上對x[n]、h[n]和f[n]進(jìn)行分路:
對公式5進(jìn)行z變換得到:
d4.利用z變換推導(dǎo)出基于拉格朗日插值的高速并行多路分?jǐn)?shù)延時(shí)濾波器的實(shí)際結(jié)構(gòu):
將公式6帶入到公式4中得到基于拉格朗日插值的高速并行多路分?jǐn)?shù)延時(shí)濾波器結(jié)構(gòu)z變換域的表達(dá)式:
公式7的矩陣形式表示如下所示:
公式8中的f0…fl-1代表時(shí)域上的f0[n]…fl-1[n],即并行l(wèi)路輸出子序列,x0…xl-1代表時(shí)域上的x0[n]…xl-1[n],即并行l(wèi)路輸入子序列,h0…h(huán)l-1代表時(shí)域上的h0[n]…h(huán)l-1[n],即濾波器系數(shù)子序列,公式8中的相乘即代表時(shí)域上的卷積,也就是輸入子序列通過濾波器系數(shù)子序列,與之進(jìn)行卷積運(yùn)算。帶有z-l的乘積項(xiàng)代表的是卷積運(yùn)算后的結(jié)果要在時(shí)域上延時(shí)l個(gè)系統(tǒng)時(shí)鐘。根據(jù)公式8中各個(gè)矩陣元素的運(yùn)算關(guān)系得到的濾波器結(jié)構(gòu)就是我們所要實(shí)現(xiàn)的基于拉格朗日插值的高速并行多路分?jǐn)?shù)延時(shí)濾波器結(jié)構(gòu)。
e.當(dāng)需要補(bǔ)償?shù)姆謹(jǐn)?shù)延時(shí)量δ發(fā)生變化時(shí),只需要把新的δ'帶入到公式3中計(jì)算出新的h'[k],不用改變結(jié)構(gòu),只需要改變?yōu)V波器系數(shù),就可以得到延時(shí)補(bǔ)償量為δ'的基于拉格朗日插值的高速并行多路分?jǐn)?shù)延時(shí)濾波器結(jié)構(gòu)。
本發(fā)明的有益效果是:
解決了在高數(shù)據(jù)率的應(yīng)用場景下,傳統(tǒng)串行單路分?jǐn)?shù)延時(shí)濾波器無法適用的問題,同時(shí)使用拉格朗日插值算法簡化了傳統(tǒng)分?jǐn)?shù)延時(shí)濾波器求解濾波器系數(shù)的過程,很適合在fpga和dsp等平臺中實(shí)現(xiàn),便于實(shí)際應(yīng)用。。
附圖說明
圖1為傳統(tǒng)farrow分?jǐn)?shù)延時(shí)濾波器結(jié)構(gòu)圖。
圖2為傳統(tǒng)串行單路分?jǐn)?shù)延時(shí)濾波器與并行多路分?jǐn)?shù)延時(shí)濾波器的工作模式對比圖。
圖3為本發(fā)明方法流程圖。
圖4為基于拉格朗日插值的并行4路8階分?jǐn)?shù)延時(shí)濾波器結(jié)構(gòu)圖。
圖5為本發(fā)明在不同延時(shí)量的條件下對目標(biāo)信號的分?jǐn)?shù)延時(shí)補(bǔ)償性能圖。
具體實(shí)施方式
下面將結(jié)合實(shí)施例和附圖,對本發(fā)明方法進(jìn)行進(jìn)一步說明。
實(shí)施例1
本發(fā)明在延時(shí)補(bǔ)償量為0.5ts、并行4路條件下應(yīng)用的性能仿真。
實(shí)施例1的實(shí)現(xiàn)方法和具體流程如附圖3所示。
考慮1個(gè)頻率為f=100mhz的單頻余弦信號,假定接收端的adc為18位,采樣率fs=1ghz,采樣周期ts=1ns,采樣點(diǎn)數(shù)為d=1000。
因?yàn)椴蓸雍髷?shù)據(jù)率很高(18bit×1ghz=18gbps),如果使用傳統(tǒng)的串行單路分?jǐn)?shù)延時(shí)濾波器實(shí)現(xiàn)方法,則要求整個(gè)系統(tǒng)要工作在1ghz的時(shí)鐘頻率下,這是不現(xiàn)實(shí)的,在fpga和dsp中都很難實(shí)現(xiàn),所以傳統(tǒng)的串行單路分?jǐn)?shù)延時(shí)濾波器實(shí)現(xiàn)方法無法適用。因此我們采用本發(fā)明的實(shí)現(xiàn)方案,將采樣數(shù)據(jù)分成并行4路傳輸,每一路的數(shù)據(jù)率為
最后將經(jīng)過本方案處理得到的補(bǔ)償了分?jǐn)?shù)延時(shí)0.5ts的實(shí)際值數(shù)據(jù)序列與補(bǔ)償了分?jǐn)?shù)延時(shí)0.5ts的理論值序列相比較,得到實(shí)際值和理論值的均方誤差
實(shí)施例1中基于拉格朗日插值的高速并行多路分?jǐn)?shù)延時(shí)濾波器的性能用rms來衡量。
實(shí)施例1中基于拉格朗日插值的高速并行多路分?jǐn)?shù)時(shí)延濾波器實(shí)現(xiàn)方法包括以下步驟:
(一)產(chǎn)生輸入信號模型:
由下式產(chǎn)生輸入信號x[n]={x[0]x[1]…x[(d-1)]}
(二)選定濾波器階數(shù)為8階(n=8),利用采樣數(shù)據(jù)中最前面連續(xù)的8個(gè)采樣點(diǎn)構(gòu)造拉格朗日插值函數(shù):
δ是要補(bǔ)償?shù)姆謹(jǐn)?shù)延時(shí)量,為采樣周期的分?jǐn)?shù)倍。
其中:
t[n]={0ts…7ts}
t[m]={0ts…7ts}
x[n]={x[0]x[ts]…x[7ts]}
0<δ<ts
(三)計(jì)算基于拉格朗日插值的分?jǐn)?shù)延時(shí)濾波器系數(shù)并構(gòu)造橫向?yàn)V波結(jié)構(gòu):
將公式9展開得到下式:
其中cm[n]為公式7展開式中δ0,δ1,δ2…δ7的系數(shù)。
將δ=0.5ts帶入到公式10中,計(jì)算出分?jǐn)?shù)延時(shí)濾波器系數(shù):
得到橫向?yàn)V波結(jié)構(gòu):
h[n]共有8階:{h[0]h[1]…h(huán)[7]},f[n]是對輸入數(shù)據(jù)x[n]補(bǔ)償了延時(shí)0.5ts的輸出數(shù)據(jù)。
(四)對輸入數(shù)據(jù)x[n]、濾波器系數(shù)h[n]、延時(shí)補(bǔ)償輸出f[n]進(jìn)行分路處理,并利用z變換推導(dǎo)出基于拉格朗日插值的高速并行4路分?jǐn)?shù)延時(shí)濾波器的實(shí)際結(jié)構(gòu):
對輸入數(shù)據(jù)x[n]和濾波器系數(shù)h[n]進(jìn)行z變換:
得到f[n]的z變換表達(dá)式f(z):
在時(shí)域上對x[n]、h[n]和f[n]進(jìn)行分4路處理:
對公式12進(jìn)行z變換得到:
把公式13帶入到公式11中,得到基于拉格朗日插值的高速并行4路分?jǐn)?shù)延時(shí)濾波器表達(dá)式和表達(dá)矩陣:
公式15中的f0…f3代表時(shí)域上的f0[n]…f3[n],即并行4路輸出子序列,x0…x3代表時(shí)域上的x0[n]…x3[n],即并行4路輸入子序列,h0…h(huán)3代表時(shí)域上的h0[n]…h(huán)3[n],即濾波器系數(shù)子序列。公式15中的相乘即代表時(shí)域上的卷積,也就是輸入子序列通過濾波器系數(shù)子序列,與之進(jìn)行卷積運(yùn)算。帶有z-4的乘積項(xiàng)代表的是卷積運(yùn)算后的結(jié)果要在時(shí)域上延時(shí)4個(gè)系統(tǒng)時(shí)鐘。根據(jù)公式13中各個(gè)矩陣元素的運(yùn)算關(guān)系得到的濾波器結(jié)構(gòu)就是我們所要實(shí)現(xiàn)的基于拉格朗日插值的高速并行4路分?jǐn)?shù)延時(shí)濾波器結(jié)構(gòu),如附圖4所示,附圖4中的z-1表示的是在時(shí)域上延時(shí)1個(gè)系統(tǒng)時(shí)鐘,z-4代表的是在時(shí)域上延時(shí)4個(gè)系統(tǒng)時(shí)鐘,三角形符號代表的是乘法運(yùn)算。
(五)計(jì)算rms
仿真結(jié)果為:rms=2.0152×10-4,即本發(fā)明在目標(biāo)信號頻率為100mhz,采樣率為1ghz,采樣點(diǎn)數(shù)為1000的條件下,可以完成對目標(biāo)信號進(jìn)行并行4路,延時(shí)量為0.5ts的延時(shí)補(bǔ)償并且補(bǔ)償效果效果很好。
實(shí)施例2
本發(fā)明在不同延時(shí)量的條件下對目標(biāo)信號進(jìn)行并行4路分?jǐn)?shù)延時(shí)補(bǔ)償?shù)男阅堋?/p>
實(shí)施例2的方法如附圖2所示,延時(shí)量δ的取值為:δ={0.1ts0.2ts…0.9ts},其余仿真條件與實(shí)施例1相同,改變仿真條件后執(zhí)行實(shí)施例1的步驟,并分別記錄下每個(gè)延時(shí)量δ取值所對應(yīng)的的rms,即可得到附圖5。
從附圖5中可以看出,延時(shí)量為0.3ts時(shí)延時(shí)補(bǔ)償誤差最大為2.4378×10-4,延時(shí)量為0.9ts時(shí)補(bǔ)償誤差最小為3.1523×10-5??傮w而言本發(fā)明可以完成對目標(biāo)信號進(jìn)行并行4路,延時(shí)量為:δ={0.1ts0.2ts…0.9ts}的延時(shí)補(bǔ)償并且補(bǔ)償效果效果很好。