摘要:針對(duì)高速高靈敏度數(shù)字信號(hào)處理時(shí)對(duì)于自適應(yīng)濾波器的數(shù)值特性和實(shí)時(shí)性的要求,,在一種自適應(yīng)格型聯(lián)合濾波器的基礎(chǔ)上提出算法改進(jìn),采用馳豫超前流水線技術(shù)和時(shí)序重構(gòu)技術(shù),,在損失較小濾波性能的情況下,,在FPGA中實(shí)現(xiàn)算法并可以達(dá)到較高的工作頻率。
關(guān)鍵詞:自適應(yīng)濾波器,;FPGA,;梯度格型濾波器;流水線,;時(shí)序重構(gòu)
0 引言
在處理微弱信號(hào)的時(shí)候自適應(yīng)濾波器所處的環(huán)境可能是非平穩(wěn)的,,輸入信號(hào)的自相關(guān)矩陣和互相關(guān)向量等算法參量將隨時(shí)間變化,會(huì)對(duì)濾波器的收斂跟蹤性能造成較大影響?,F(xiàn)代通信系統(tǒng)發(fā)展到3G,,4G后,幾十甚至上百兆比特每秒的數(shù)據(jù)傳輸速率對(duì)自適應(yīng)處理技術(shù)是個(gè)極大的挑戰(zhàn),。如何在這類高速環(huán)境中運(yùn)用自適應(yīng)算法處理高靈敏度信號(hào)并使算法保持較低的復(fù)雜度以利于實(shí)現(xiàn),,是工程應(yīng)用中必須解決的問(wèn)題。
由Levinson-Durbin遞推公式得到的自適應(yīng)格型結(jié)構(gòu)以其反射系數(shù)收斂快,,對(duì)輸入信號(hào)自相關(guān)矩陣的特征值擴(kuò)散相對(duì)惰性,,是解決此類問(wèn)題的一個(gè)優(yōu)良選擇。GALJP(Gradient Adaptive Lattice Joint Processing)是一種梯度自適應(yīng)格型結(jié)構(gòu)和LMS結(jié)構(gòu)組成的聯(lián)合濾波器,,由格型結(jié)構(gòu)對(duì)輸入信號(hào)進(jìn)行迅速解耦,,用LMS結(jié)構(gòu)進(jìn)行自適應(yīng)處理??紤]到實(shí)時(shí)處理的要求,,采用高度并行的FPGA進(jìn)行算法實(shí)現(xiàn)是一個(gè)很好的選擇。但是由于GALJP的結(jié)構(gòu)相對(duì)復(fù)雜,,導(dǎo)致其在FPGA中實(shí)現(xiàn)的工作頻率不高,。本文以自適應(yīng)噪聲對(duì)消為模型,采用流水線技術(shù)和時(shí)序重構(gòu)技術(shù)對(duì)GALJP算法結(jié)構(gòu)進(jìn)行改進(jìn)優(yōu)化,,提出一種改進(jìn)型RD-GALJP結(jié)構(gòu),。在算法性能影響不大的情況下,,在FPGA中能實(shí)現(xiàn)達(dá)到167.53 MHz采樣吞吐率,,適合于高速自適應(yīng)應(yīng)用的場(chǎng)合。
1 梯度自適應(yīng)聯(lián)合濾波算法(GALJP)
格型濾波器具有快速解耦的性質(zhì),利用這個(gè)特性,,結(jié)合基本LMS算法得到的一種實(shí)用的聯(lián)合處理結(jié)構(gòu)GALJP,,如圖1所示。這種聯(lián)合濾波器由多級(jí)格型預(yù)測(cè)器和LMS期望響應(yīng)估計(jì)器組合而成,,它可以先將信號(hào)輸入進(jìn)行快速Gram-Schmidt正交化,,并由后續(xù)的自適應(yīng)期望響應(yīng)估計(jì)器的LMS算法對(duì)去耦信號(hào)進(jìn)行自適應(yīng)濾波,以改善輸入信號(hào)特征值擴(kuò)散對(duì)傳統(tǒng)LMS算法性能的影響,。這種結(jié)構(gòu)具有很大的優(yōu)點(diǎn),,如調(diào)節(jié)濾波器的階數(shù)十分方便,增減節(jié)數(shù)不會(huì)影響到系統(tǒng)全局的優(yōu)化,,改變某一節(jié)不需要對(duì)整個(gè)系統(tǒng)進(jìn)行調(diào)節(jié),。
GALJP的基本算法如下:
式中:m=2,3,,…,,M+1,不同于傳統(tǒng)的單個(gè)誤差e調(diào)節(jié)各級(jí)濾波器權(quán)向量更新,,上面的GALJP算法是把各節(jié)誤差信號(hào)em(n)的均方值由單節(jié)計(jì)算,,采用多級(jí)單LMS結(jié)構(gòu),并分別指導(dǎo)各級(jí)權(quán)向量更新,。
2 改進(jìn)型RD-GALJP算法
由于GALJP的算法相對(duì)復(fù)雜,,正常情況下的硬件實(shí)現(xiàn)不能達(dá)到高速信號(hào)處理的要求。在此,,結(jié)合馳豫超前流水線技術(shù)和時(shí)序重構(gòu)技術(shù)對(duì)算法進(jìn)行優(yōu)化改進(jìn),,以便在對(duì)濾波性能沒有很大影響的情況下能有效地切割關(guān)鍵路徑,提高系統(tǒng)運(yùn)行頻率,。
2.1 馳豫超前流水線優(yōu)化
流水線技術(shù)是構(gòu)造高速運(yùn)行系統(tǒng)的一種實(shí)用技術(shù),。在硬件實(shí)現(xiàn)中,通過(guò)插入流水寄存器,,可以斬?cái)嘞到y(tǒng)關(guān)鍵路徑的長(zhǎng)度,,提高系統(tǒng)的運(yùn)行頻率。單向前饋割集表示能夠斬?cái)嗤蛐盘?hào)流,,使系統(tǒng)成為完全不相連兩個(gè)部分的分割形式,。本文對(duì)于單向前饋割集路徑插入一級(jí)流水寄存器,這里會(huì)使輸出增加一個(gè)時(shí)鐘滯后,,但可以在不影響系統(tǒng)算法性能的情況下切割路徑,,提高系統(tǒng)頻率。
馳豫技術(shù)也是一種可以構(gòu)造實(shí)現(xiàn)流水線的方式,,它通過(guò)近似的方式改變算法,,在系統(tǒng)可以良好穩(wěn)定運(yùn)行的情況下得到適合流水實(shí)現(xiàn)的拓?fù)浣Y(jié)構(gòu)。對(duì)于GALJP算法,考慮到其中有多個(gè)環(huán)路迭代計(jì)算,,無(wú)法使用前饋割集插入流水線的方式改進(jìn),。對(duì)此,通過(guò)馳豫超前技術(shù),,提出的改進(jìn)部分如下,,對(duì)于格型預(yù)測(cè)器有:
式中:m=2,3,,…,,M+1,對(duì)于格型預(yù)測(cè)器,,由于反射系數(shù)Km收斂迅速,,所以在收斂后由于Km基本不變,故等式(8),,式(9)是合理的,。穩(wěn)態(tài)性能則基本不變。
考慮收斂時(shí)段的式(10),,令:
當(dāng)系統(tǒng)處于收斂時(shí)段,,恰當(dāng)選取較小的β值時(shí),式(15)的遞推也是合理的,,對(duì)比改變前的式(14),,只是更新部分?jǐn)?shù)值變大。這里可以看到,,對(duì)于反射系數(shù)的馳豫,,其算法收斂步長(zhǎng)的區(qū)間將變得相對(duì)嚴(yán)格。類似的,,對(duì)于期望響應(yīng)估計(jì)器,,對(duì)bm和Wm的馳豫變換在恰當(dāng)選取稍小的μ的情況下也是合理的,同樣的,,會(huì)造成步長(zhǎng)收斂區(qū)間變得相對(duì)狹窄,。觀察改進(jìn)后的拓?fù)浣Y(jié)構(gòu),對(duì)于期望響應(yīng)估計(jì)器,,改進(jìn)后的誤差更新和權(quán)系數(shù)更新可以同時(shí)流水進(jìn)行,,提高了模塊速度,對(duì)于格型預(yù)測(cè)器,,雖然改進(jìn)方案沒有使其能夠流水線化,,不能實(shí)質(zhì)地提高系統(tǒng)頻率,但是提供了馳豫寄存器,,為后續(xù)優(yōu)化做了準(zhǔn)備,。在這里,,馳豫寄存器m1,m2的個(gè)數(shù)需要根據(jù)要求仔細(xì)選取,。
2.2 時(shí)序重構(gòu)優(yōu)化
時(shí)序重構(gòu)又稱重定時(shí),是一種在保持系統(tǒng)功能不變的前提下,,改變系統(tǒng)的延遲數(shù)目和分布的方法,。它在同步電路中有許多應(yīng)用,如縮短系統(tǒng)時(shí)鐘周期,,減少系統(tǒng)寄存器數(shù)目,,降低系統(tǒng)的功耗和邏輯綜合的規(guī)模。對(duì)于時(shí)序不變系統(tǒng),,通過(guò)時(shí)序重構(gòu)技術(shù),,可以在不改變算法功能的情況下,有效地切割關(guān)鍵路徑,,從而提高系統(tǒng)工作頻率,。時(shí)序重構(gòu)的映射等式定義為:
式中:Wr(e)表示重構(gòu)映射后的路徑e的延時(shí);W(e)表示重構(gòu)映射前的路徑e的延時(shí),;r(V)表示路徑e的前端處理單元V的重構(gòu)參數(shù),;r(U)代表路徑e的后端處理單元U的重構(gòu)參數(shù)。通過(guò)合理地選取重構(gòu)映射參數(shù),,可以得到合法的重構(gòu)映射結(jié)構(gòu),。
環(huán)路邊界的定義為t1/wl,其中tl是環(huán)路l的運(yùn)算時(shí)間,;wl是環(huán)路l的延遲數(shù)目,;迭代邊界是環(huán)路結(jié)構(gòu)的環(huán)路邊界的最大值,定義為,,迭代邊界反映了一個(gè)反饋算法環(huán)路部分通過(guò)時(shí)序重構(gòu)技術(shù)能達(dá)到的極限關(guān)鍵路徑的大小,。在此認(rèn)為加法器和乘法器都是一個(gè)處理時(shí)間,考慮期望響應(yīng)估計(jì)器模塊的環(huán)路部分,,如圖2所示,。
根據(jù)定義可以知道,迭代邊界為4/(1+m2),,使其迭代邊界最小化,,等于1,得到馳豫寄存器的數(shù)目m2=3,。采用時(shí)序重構(gòu)映射,,根據(jù)式(16)得到重構(gòu)后的算法結(jié)構(gòu),重構(gòu)參數(shù)及重構(gòu)結(jié)果如圖3所示,。
由于重構(gòu)后每個(gè)信號(hào)路徑上都沒有負(fù)延時(shí)情況,,根據(jù)時(shí)序重構(gòu)原理的性質(zhì),,則這個(gè)重構(gòu)映射是合理的,重構(gòu)后的算法結(jié)構(gòu)是合理的,,穩(wěn)定的,。可以看到,,合理地選取映射規(guī)則對(duì)電路進(jìn)行時(shí)序重構(gòu),,可以合理地?cái)財(cái)嚓P(guān)鍵路徑,提高系統(tǒng)運(yùn)行速度,。在這里,,重構(gòu)后的關(guān)鍵路徑為一個(gè)處理單位。同理,,可以對(duì)多級(jí)格型預(yù)測(cè)器模塊進(jìn)行時(shí)序重構(gòu),。同樣的,重構(gòu)后格型預(yù)測(cè)器電路的關(guān)鍵路徑也為一個(gè)處理單元,。這樣,,整個(gè)改進(jìn)后的RD-GALJP(Retimed Delay-GALJP)系統(tǒng)結(jié)構(gòu)的關(guān)鍵路徑就縮短為1個(gè)處理單元。
3 基于FPGA的算法的實(shí)現(xiàn)與仿真
以自適應(yīng)噪聲對(duì)消為模型進(jìn)行仿真驗(yàn)證,,設(shè)格型預(yù)測(cè)器的反射系數(shù)收斂因子為0.008,,期望響應(yīng)估計(jì)器的收斂因子為0.002。在Matlab中對(duì)改進(jìn)前和改進(jìn)后的算法進(jìn)行仿真,,測(cè)試信號(hào)為隨機(jī)2FSK+高斯白噪聲,,SNR=-9 dB,得到的收斂曲線如圖4所示,。
可以看到,,改進(jìn)后的算法在收斂性能和穩(wěn)態(tài)表現(xiàn)都有些許下降,但是降低的幅度很小,,在可接受的范圍內(nèi),。利用DSP-builder進(jìn)行FPGA算法建模,實(shí)現(xiàn)4階16位定點(diǎn)格式的格型濾波結(jié)構(gòu),,并在Modelsim中進(jìn)行RTL級(jí)仿真,,得到的改進(jìn)算法濾波效果如圖5所示。
在EP2C70F896C6芯片上進(jìn)行代碼的綜合,,得到的結(jié)果為:改進(jìn)前系統(tǒng)的最高工作頻率為23.99MHz,,改進(jìn)后系統(tǒng)的最高工作頻率為167. 53 MHz。顯然,,系統(tǒng)頻率在算法結(jié)構(gòu)改進(jìn)后有很大的提高,。最后,利用DDS技術(shù)產(chǎn)生需要的測(cè)試信號(hào)和噪聲(測(cè)試頻率為100 MHz),,將相應(yīng)的HDL代碼綜合布線后下載到FPGA芯片中,,利用Signaltap內(nèi)嵌邏輯分析儀進(jìn)行板級(jí)功能測(cè)試,,結(jié)果如圖6所示。
實(shí)驗(yàn)結(jié)果表明,,該模塊可以很好地運(yùn)行在100 MHz以上,,適用于高速自適應(yīng)處理的場(chǎng)合。
4 結(jié) 語(yǔ)
FPGA以其高效的硬件特性在信號(hào)處理方面有著越來(lái)越多的應(yīng)用,。本文結(jié)合馳豫超前流水線和時(shí)序重構(gòu)技術(shù),,提出一種RD-GALJP算法結(jié)構(gòu),并以自適應(yīng)噪聲對(duì)消為模型進(jìn)行算法仿真,。算法仿真的結(jié)果表明,改進(jìn)算法結(jié)構(gòu)相比改進(jìn)前的算法在濾波性能上只有些許下降,,但是卻能夠很好地切割關(guān)鍵路徑,,以利于流水實(shí)現(xiàn)。最后以4階16位定點(diǎn)格式為背景在FPGA中對(duì)算法進(jìn)行實(shí)現(xiàn)和板級(jí)功能測(cè)試,,綜合布線后得到16 7.53 MHz采樣吞吐率的運(yùn)算性能,,比較于改進(jìn)前的23.99 MHz的工作頻率表明,工作頻率的改善顯著,。實(shí)驗(yàn)結(jié)果表明,,改進(jìn)算法結(jié)構(gòu)可以很好地應(yīng)用于對(duì)輸入自相關(guān)矩陣特征值擴(kuò)散敏感的高速高靈敏度的自適應(yīng)信號(hào)處理場(chǎng)合。