• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    全并行FIR濾波器的FPGA實現(xiàn)與優(yōu)化

    2015-08-10 10:30:34王英喆王振宇嚴偉時廣軼
    電子設(shè)計工程 2015年22期
    關(guān)鍵詞:乘法器寄存器濾波器

    王英喆,王振宇,嚴偉,時廣軼

    (北京大學(xué) 軟件與微電子學(xué)院,北京 100871)

    數(shù)字信號處理及相關(guān)芯片的迅速發(fā)展與數(shù)字濾波是息息相關(guān)的,長久以來,數(shù)字濾波都是研究的熱點。FIR濾波器的硬件實現(xiàn)方法有3種:ASIC(專用集成電路)(Application Specific Integrated Circuit)、DSP (數(shù)字信 號處理器)(digital singnal processor)以及 FPGA (現(xiàn)場可編程門陣列)(Field Programmable Gate Array)[1-2]。FPGA擁有全并行的處理架構(gòu),在實時信號處理、可移植的代碼等方面具有優(yōu)勢[3]。文章在FPGA上實現(xiàn)高速全并行FIR (Finite Impulse Response),并針對FIR固定系數(shù)提出優(yōu)化方案。

    1 數(shù)學(xué)表示

    FIR濾波器存在N個抽頭h(n),N被稱為濾波器的階數(shù),濾波器的輸出可以通過卷積的形式表示為[4]:

    通過Z變換可以將其方便地表示為:

    2 全并行FIR的結(jié)構(gòu)

    在某些場合,需要FIR濾波器很強的實時性[5],這要求其具有高吞吐率與處理速度。全并行結(jié)構(gòu)以“資源換速度”為方法,以同時運算多個乘加為方手段,使其擁有較串行高幾倍的處理速度,進而獲得高吞吐率。

    直接型結(jié)構(gòu)FIR濾波器[6]如圖1所示,引入流水線技術(shù),得到基于直接型結(jié)構(gòu)的15抽頭全并行FIR濾波器硬件結(jié)構(gòu)。此結(jié)構(gòu)同時執(zhí)行所有乘法。

    3 硬件實現(xiàn)

    用Verilog HDL語言對15階線性相位FIR進行RTL(Register TransferLeve)描述,在 Xilinx的 FPGA芯片中完成了邏輯綜合、布局布線、時序分析和硬件測試。在設(shè)計和實現(xiàn)過程中,采用多級流水線結(jié)構(gòu),在加法器和乘法器后面都插入相應(yīng)的寄存器,以FPGA設(shè)計資源換取對信號的處理速度。

    3.1 邏輯設(shè)計

    FIR設(shè)計的整體框圖如圖2所示,數(shù)據(jù)8路并行,Enable為輸入有效信號、End為輸出有效信號。具體可劃分成三大模塊,輸入數(shù)據(jù)與濾波器系數(shù)點乘模塊,分級寄存器數(shù)據(jù)緩存模塊,并行加法模塊。詳細實現(xiàn)過程如下:

    圖1 全并行FIR濾波器結(jié)構(gòu)Fig.1 The structure of fully parallel FIR

    圖2 FIR整體框架圖Fig.2 The global structure of FIR

    每個時鐘周期進8組數(shù)據(jù),各個數(shù)據(jù)對點乘的結(jié)果使用規(guī)律不盡相同,將輸入數(shù)據(jù)與所有系數(shù)相乘得到的結(jié)果寄存,在不同周期分批使用。圖3為第1、3個有效數(shù)據(jù)的分級寄存器,對于第1個數(shù)據(jù),與H0~H7點乘的結(jié)果在本時鐘周期內(nèi)使用,與H8~H14點乘的結(jié)果緩存一個周期使用。第3個數(shù)據(jù)與第1個數(shù)據(jù)類似,不同的是,第3個數(shù)據(jù)與H14點乘的結(jié)果需緩沖兩個周期使用,而且本周期僅用到與H0~H5的點乘結(jié)果。同理,其余6組亦如此。

    圖3 分級寄存器Fig.3 Hierarchical register

    為了運行速度的最大化,加法采用全并行方式,15組數(shù)據(jù)相加,需要4個周期得到最終結(jié)果,如圖4所示。

    3.2 流水設(shè)計

    流水線設(shè)計方法可以大幅度提高工作頻率,整個數(shù)據(jù)處理是單流向的。本設(shè)計的數(shù)據(jù)流水線結(jié)構(gòu)如圖5,第一級將8組輸入數(shù)據(jù)與所有對應(yīng)系數(shù)相乘,結(jié)果進入分級寄存器中待用;第二級從分級寄存器中取數(shù),做并行加法的第一級,第三至第五級做并行加法的第二至第四級。因此有效數(shù)據(jù)到來后第5個周期輸出有效數(shù)據(jù)。

    圖4 并行加法模塊Fig.4 Parallel adder module

    3.3 驗證設(shè)計

    Testbench是包含3個部分,分別是FIR設(shè)計、TB生成、數(shù)據(jù)輸出校驗。搭建的testbench如圖6所示,從文本中讀取向量i_data,經(jīng)過待測濾波器處理得到結(jié)果o_data,并根據(jù)end信號將向量寫入相應(yīng)文檔中,與正確結(jié)果進行比對。

    圖5 FIR流水線結(jié)構(gòu)Fig.5 The pipeline structure of FIR

    3.4 仿真結(jié)果

    如圖7,在i_fir_enable信號到來后,5個周期后o_fir_enable信號拉高,之后輸出一直有效,與相應(yīng)matlab軟件測試結(jié)果對比一致,仿真結(jié)果正確。

    3.5 綜合資源

    得到了正確的仿真波形后,經(jīng)過綜合、布局布線,能進一步得到FIR的資源利用情況,如表1。利用全并行直接乘加方法,消耗的片上資源很多,需要尋求方法來減小資源利用。

    4 改進措施

    設(shè)計的FIR為固定系數(shù)濾波器,針對系數(shù)固定的特點,對此提出以下兩種改進措施。

    圖6 驗證框架Fig.6 The validation diagram

    圖7 仿真波形Fig.7 The simulation waveform

    表1 資源利用情況Tab.1 Resource utilization

    4.1 措施一

    在整體結(jié)構(gòu)不做調(diào)整的情況下,可以改進的地方僅有乘法器。固定系數(shù)乘法器的實現(xiàn)可用移位相加代替,可將資源替換成普通的LUT與FF。經(jīng)改進,綜合后得到的資源利用情況如表2。

    4.2 措施二

    分布式算法是一種以實現(xiàn)乘加運算為目的的運算方法,可以用分布式算法改變FIR結(jié)構(gòu)。基本FIR分布式結(jié)構(gòu)如圖8,而查找表構(gòu)造方法如表3[6]。設(shè)計仍為15階FIR濾波器,但將輸入數(shù)據(jù)調(diào)整為8 bit,濾波器的系數(shù)h(n)以及由這些系數(shù)演算出的ROM的初始化數(shù)據(jù)文件由MATLAB產(chǎn)生。實現(xiàn)后的資源情況如表4所示。在兩種優(yōu)化方案中,分布式FIR占明顯優(yōu)勢,但缺點靈活度差,如果改動數(shù)據(jù)位寬或FIR階數(shù),則程序需做較大改動。

    表2 資源利用情況(措施一)Tab.2 Resource utilization (Measure 1)

    圖8 FIR分布式結(jié)構(gòu)Fig.8 The distributed structure of FIR

    表3 分布式結(jié)構(gòu)查表方法Tab.3 The distributed structure of the look-up table method

    5 結(jié) 論

    文章首先介紹了FIR濾波器的數(shù)學(xué)原理與基本架構(gòu),實現(xiàn)了基于直接型的利用乘法器IP核的全并行FIR濾波器,并仿真驗證了其正確性,同時得到所消耗資源。而后,按照兩種不同的優(yōu)化途徑進行優(yōu)化,分別針對乘法器IP核及FIR結(jié)構(gòu)進行改進,得到相應(yīng)資源利用情況,并進行比較。結(jié)果,對于8輸入15階FIR選擇分布式結(jié)構(gòu)能在達到高吞吐率高速率的情況下,節(jié)省更多邏輯資源。

    表4 資源利用情況(措施二)Tab.4 Resource utilization (Measure 2)

    [1]Albicocco P,Dep of Electron,Univ.of Rome Tor Vergata.Degrading precision arithmetics for low-power FIR implementation[J].Circuits and Systems (MWSCAS),2011,8(1):4.

    [2]Mirzaei S,California Univ,Santa Barbara,Hosangadi A,Kastner R.FPGA implementation of high speed FIR filters using Add and shift method[J].Computer Design,2006,308:313.

    [3]Chao Cheng,Parhi K K.Low-cost parallel FIR filter structures with 2-stage parallelism[J].Circuits and Systems I, 2007,280:290.

    [4]高亞軍.基于FPGA的數(shù)字信號處理[M].電子工業(yè)出版社,2012.

    [5]徐遠澤,戴立新,高曉蓉,等.FIR濾波器的FPGA實現(xiàn)方法[J].現(xiàn)代電子技術(shù), 2010,22(2):64-70.

    [6]余琳,黃光明.基于FPGA的FIR濾波器的性能的研究[J].電子設(shè)計工程,2011,19(9):125-128.

    猜你喜歡
    乘法器寄存器濾波器
    基于無擾濾波器和AED-ADT的無擾切換控制
    Lite寄存器模型的設(shè)計與實現(xiàn)
    從濾波器理解卷積
    電子制作(2019年11期)2019-07-04 00:34:38
    開關(guān)電源EMI濾波器的應(yīng)用方法探討
    電子制作(2018年16期)2018-09-26 03:26:50
    分簇結(jié)構(gòu)向量寄存器分配策略研究*
    基于FPGA的流水線單精度浮點數(shù)乘法器設(shè)計*
    基于TMS320C6678的SAR方位向預(yù)濾波器的并行實現(xiàn)
    乘法器模塊在FPGA中的實現(xiàn)
    基于FPGA 的數(shù)字乘法器性能比較*
    電子器件(2011年6期)2011-08-09 08:07:22
    高速數(shù)模轉(zhuǎn)換器AD9779/AD9788的應(yīng)用
    定西市| 西盟| 河曲县| 大悟县| 长葛市| 建始县| 拉孜县| 青岛市| 阿巴嘎旗| 黔南| 纳雍县| 巴中市| 吴堡县| 确山县| 嘉义县| 桂林市| 榆中县| 德钦县| 墨脱县| 宁德市| 普格县| 郓城县| 乐都县| 开江县| 大足县| 建水县| 寿阳县| 古浪县| 卢氏县| 泽库县| 彭泽县| 丹江口市| 五莲县| 大名县| 桦甸市| 玛沁县| 施甸县| 土默特右旗| 合作市| 陆川县| 龙岩市|