新聞中心

        EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA的高速自適應濾波器的實現

        基于FPGA的高速自適應濾波器的實現

        作者: 時間:2011-09-02 來源:網絡 收藏

        由于重構后每個信號路徑上都沒有負延時情況,根據時序重構原理的性質,這個重構映射是合理的、穩定的[5]。可以看到,合理地選取映射規則對電路進行時序重構,可以斬斷關鍵路徑,提高系統運行速度。這里,重構后的關鍵路徑為一個處理單位。
        對重構后的算法進行建模、綜合、布線布局,得到182.15 MHz的頻率表現力。顯然,重構后的TFRDLMS算法結構的運行頻率較于以往有很大的提升。
        3.3 變步長優化
        前面的設計都是采用固定步長來處理迭代信號。如果采用變步長來處理,在收斂初期誤差e較大時采用較大的步長,則可以加快收斂速度;而在穩態時誤差e很小時采用較小步長,則可以降低穩態失調。考慮到常用的功率歸一化變步長方式的計算復雜度問題,本設計選用簡單的邏輯判斷移位來進行變步長操作。
        DSP Builder中提供了嵌入外部設計的HDL模塊的功能。用Verilog在外部寫好關于邏輯判斷移位的HDL,導入HDLImport模塊。對變步長的TFRDLMS模型進行仿真,固定步長TFRDLMS算法進行對比,結果如圖5所示。

        變步長算法適當地調整了收斂速度與穩態誤差的矛盾,它的收斂速度要快于固定步長的模型,而且穩態特性也不會因此變差。改變后得到的系統最高頻率為182.78 MHz。顯然,加入這種簡單的邏輯判斷變步長模塊,并沒有對電路的關鍵路徑造成影響。表1為以上設計過程的綜合結果。

        3.4 板級測試
        SignalTap是Quartus軟件中的在線嵌入式邏輯分析儀模塊,利用它可以方便地測試設計結果的實時邏輯時序功能。利用DDS技術在中設計一個正弦波發生器模塊以及噪聲發生器模塊作為測試信號出入。在Quartus中建立一個測試工程,利用芯片內部的PLL生成測試運行的頻率和SignalTap采樣頻率。SignalTap邏輯分析儀采樣頻率使用最高的250 MHz,將測試頻率設為125 MHz,并在工程中加入測試總模塊(DDS信號+變步長TFRDLMS)。綜合布線布局后下載到DE2-70上,用SignalTap觀測信號如圖6所示。實驗結果表明,設計的電路可以穩定地運行在百兆以上,滿足高速自適應運用的需求。

        以其高效的硬件特性在信號處理方面有著越來越多的應用。本文提出的一種變步長的TFRDLMS算法結構的改進方法,并以自適應噪聲對消為模型進行算法仿真。仿真結果表明改進算法結構相比較改進前的算法在濾波性能上只有少許下降,但是卻能夠很好地在信號流圖上切割關鍵路徑以利于流水實現。最后以8階16位定點格式為背景參數對變步長TFRDLMS算法進行建模實現并進行板級功能測試。實驗結果表明,改進算法結構可以很好地應用于高速自適應信號處理的場合。
        參考文獻
        [1] 丁玉美,闊永紅,高新波.數字信號處理-離散隨機信號處理[M].西安:西安電子科技大學出版社,2002.
        [2] HAYKIN S.Adaptive filter theory[M].4th ed.NJ:Prentice Hall,2002.
        [3] 潘松,黃繼業,王國棟.現代DSP技術[M].西安:西安電子科技大學出版社,2003.
        [4] YI Y,WOODS R,TING L K,et al.High speed FPGA-based implementation of delayed-LMS filters[J].Netherland:Journal of VLSI Signal Processing,2005(39):113-131.
        [5] PARHI K K.VLSI數字信號處理系統-設計與實現[M]. 陳弘毅,白國強,吳行軍,等譯.北京:機械工業出版社,2004.


        上一頁 1 2 下一頁

        關鍵詞: FPGA 自適應濾波器

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 东乡| 绵竹市| 乌鲁木齐县| 吉水县| 布尔津县| 昭苏县| 宣武区| 临潭县| 全南县| 兖州市| 东丽区| 永丰县| 海宁市| 湖口县| 玉山县| 兰溪市| 五莲县| 凉城县| 翼城县| 文安县| 东光县| 天峻县| 桑日县| 天柱县| 利津县| 哈巴河县| 施秉县| 大埔县| 饶阳县| 上思县| 托克托县| 孟州市| 澄城县| 双城市| 宣汉县| 通渭县| 突泉县| 明溪县| 乐陵市| 新郑市| 奉化市|