<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于 DSP Builder的FIR濾波器的設計與實(shí)現

基于 DSP Builder的FIR濾波器的設計與實(shí)現

——
作者:齊海兵1,2,曹志亮1,劉春錦1 時(shí)間:2007-01-26 來(lái)源:《國外電子元器件》 收藏


1 引言

本文引用地址:http://dyxdggzs.com/article/21312.htm

在信息信號處理過(guò)程中,如對信號的過(guò)濾、檢測、預測等,都要使用濾波器,數字濾波器是數字信號處理(dsp,digitalsignalprocessing)中使用最廣泛的一種器件。常用的濾波器有無(wú)限長(cháng)單位脈沖響應(ⅱr)濾波器和有限長(cháng)單位脈沖響應(fir)濾波器兩種[1],其中,fir濾波器能提供理想的線(xiàn)性相位響應,在整個(gè)頻帶上獲得常數群時(shí)延從而得到零失真輸出信號,同時(shí)它可以采用十分簡(jiǎn)單的算法實(shí)現,這兩個(gè)優(yōu)點(diǎn)使fir濾波器成為明智的設計工程師的首選,在采用vhdl或veriloghdl等硬件描述語(yǔ)言設計數字濾波器時(shí),由于程序的編寫(xiě)往往不能達到良好優(yōu)化而使濾波器性能表現一般。而采用調試好的ipcore需要向altera公司購買(mǎi)。筆者采用了一種基于dspbuilder的fpga設計方法,使fir濾波器設計較為簡(jiǎn)單易行,并能滿(mǎn)足設計要求。

2 fir濾波器介紹

2.1 fir濾波器設計的原理

fir濾波器的數學(xué)表達式可用差分方程(1)來(lái)表示:

其中:r是fir的濾波器的抽頭數;b(r)是第r級抽頭數(單位脈沖響應);x(n-r)是延時(shí)r個(gè)抽頭的輸入信號。

設計濾波器的任務(wù)就是尋求一個(gè)因果,物理上可實(shí)現的系統函數h(z),使其頻率響應h(ejw)滿(mǎn)足所希望得到的頻域指標。

2.2 設計要求

數字濾波器實(shí)際上是一個(gè)采用有限精度算法實(shí)現的線(xiàn)性非時(shí)變離散系統,它的設計步驟為先根據需要確定其性能指標,設計一個(gè)系統函數h(z)逼近所需要的技術(shù)指標,最后采用有限的精度算法實(shí)現。本系統的設計指標為;設計一個(gè)16階的低通濾波器,對模擬信號的采樣頻率fs為48khz要求信號的截止頻率fc=10.8khz輸入序列位寬為9位(最寬位為符號位)。

3 dspbuilder介紹

dspbuilder是altera推出的一個(gè)dsp開(kāi)發(fā)工具,它在quartusⅱfpga設計環(huán)境中集成了mathworks的matlab和simulinkdsp開(kāi)發(fā)軟件[2]。

以往matlab工具的使用往往作為dsp算法的建模和基于純數學(xué)的仿真,其數學(xué)模型無(wú)法為硬件dsp應用系統直接產(chǎn)生實(shí)用程序代碼,仿真測試的結果也僅僅是基于數學(xué)算法結構。而以往fpga所需的傳統的基于硬件描述語(yǔ)言(hdl)的設計由于要考慮fpga的硬件的δ延時(shí)與vhdl的遞歸算法的銜接,以及補碼運算和乘積結果截取等問(wèn)題,相當繁雜。

對dsp是builder而言,頂層的開(kāi)發(fā)工具是matlab/simulink整個(gè)開(kāi)發(fā)流層幾乎可以在同一環(huán)境中完成,真正實(shí)現了自定向下的設計流程,包括dsp系統的建模、系統級仿真、設計模型向vhdl硬件描述語(yǔ)言代碼的轉換、rtl(邏輯綜合registertransferlevel)級功能仿真測試、編譯適配和布局布線(xiàn)、時(shí)序實(shí)時(shí)仿真直至對dsp目標器件的編程配置,整個(gè)設計流程一氣呵成地將系統描述和硬件實(shí)現有機地融為一體,充分顯示了現代電子設計自動(dòng)化開(kāi)發(fā)的特點(diǎn)與優(yōu)勢。

4 fir數字濾波器的dspbuilder設計

4.1 fir濾波器參數選取

用matlab提供的濾波器設計的專(zhuān)門(mén)工具箱———fdatool仿真設計濾波器,滿(mǎn)足要求的flr濾波器幅頻特性如圖1,由于浮點(diǎn)小數fpga中實(shí)現比較困難,且代價(jià)太大,因而需要將濾波器的系數和輸入數據轉化為整數,其中量化后的系數在matlab主窗口可直接轉化,對于輸入數據,可乘上一定的增益用altbus控制位寬轉化為整數輸入。

4.2 fir濾波器模型建立

根據fir濾波器原理,可以利用fpga來(lái)實(shí)現fir濾波電路,dspbuilder設計流程的第一步是在matlab/simulink中進(jìn)行設計輸入,即在matlab的simulink環(huán)境建立一個(gè)mdl模型文件,用圖形方式調用alteradspbuilder和其他的simulink庫中的圖形模塊,構成系統級或算法級設計框圖(或稱(chēng)simulink建模),如圖2所示。

4.3 基于dspbuilder的濾波器仿真

輸入信號分別采用頻率f1=8khz和f2=16khz的兩個(gè)正弦信號進(jìn)行疊加。其中的仿真波形如圖3所示,從fir濾波電路的仿真結果看出,輸入信號通過(guò)濾波器后輸出基本上變成單頻率的正弦信號,進(jìn)一步通過(guò)頻譜儀可看出f2得到了較大的抑制,與條件規定的fc=10.8khz低通濾波器相符合,至此完成了模型仿真。

4.4 運用modelsim進(jìn)行功能仿真

在simulink中進(jìn)行的仿真是屬于系統驗證性質(zhì)的,是對mdl文件進(jìn)行的仿真,并沒(méi)有對生成的vhdl代碼進(jìn)行過(guò)仿真。事實(shí)上,生成vhdl描述是rtl級的,是針對具體的硬件結構的,而在matlab的simulink中的模型仿真是算法級(系統級)的,是針對算法實(shí)現的,這二者之間有可能存在軟件理解上的差異,轉換后的vhdl代碼實(shí)現可能與mdl模型描述的情況不完全相符,這就是需要針對生成的rtl級vhdl代碼進(jìn)行功能仿真。

在此,筆者利用modelsim對生成的vhdl代碼進(jìn)行功能仿真。設置輸入輸出信號均為模擬形式,出現如圖4所示的仿真波形,可以看到這與simulink里的仿真結果基本一致,即可在quartusⅱ環(huán)境下進(jìn)行硬件設計。

4.5 在fpga器件中實(shí)現fir濾波器

在quartusⅱ環(huán)境中打開(kāi)dspbuilder建立的quartusⅱ項目文件firl.qpf。在quartusⅱ中進(jìn)行再一次仿真,由此可以看到符合要求時(shí)序波形,然后指定器件引腳并進(jìn)行編譯,最后下載到fpga器件中,就可以對硬件進(jìn)行測試,加上clcok信號和使能信號,用信號發(fā)生器產(chǎn)生所要求的兩個(gè)不同頻率的正弦信號,就可以在示波器上看到濾波以后的結果,需要設計不同的濾波器電路時(shí),僅修改fir濾波模型文件就可以實(shí)現,這樣不僅避免了繁瑣的vhdl語(yǔ)言編程,而且便于進(jìn)行調整。

5 結束語(yǔ)

在利用fpga進(jìn)行數字濾波器的開(kāi)發(fā)時(shí),采用dspbuilder作為設計工具能加快進(jìn)度。當然,在實(shí)際應用中,受精度、速度和器件選擇方面的影響,可以對其轉化的vhdl進(jìn)行進(jìn)一步的優(yōu)化。



關(guān)鍵詞:

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>