FIR濾波器的設(shè)計要點_第1頁
FIR濾波器的設(shè)計要點_第2頁
FIR濾波器的設(shè)計要點_第3頁
FIR濾波器的設(shè)計要點_第4頁
FIR濾波器的設(shè)計要點_第5頁
已閱讀5頁,還剩29頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、通信工程專業(yè)課程設(shè)計IIFIR數(shù)字濾波器的設(shè)計張欣(陜西理工學(xué)院物電學(xué)院通信 092班,陜西 漢中723003 )指導(dǎo)教師:鄭爭兵摘要FIR數(shù)字濾波器:有限長單位沖激響應(yīng)濾波器,它可以在保證任意幅頻特性的同時具有嚴(yán)格的線性相頻特性,同時其單位抽樣響應(yīng)是有限長的,因而濾波器是穩(wěn)定的系統(tǒng)。基于DSP Builder對FIR數(shù)字濾波器進(jìn)行設(shè)計,根據(jù)FIR低通數(shù)字濾波器的原理與濾波特性,通過MATLAB/Simulink軟件模擬一定性能的 FIR濾波器頻率響應(yīng)與抽頭系數(shù) ,實現(xiàn)用軟件描述硬件的動 作及其功能。結(jié)合 DSPBuilder產(chǎn)生圖形化建模仿真,分析此模型的正確性,進(jìn)行參數(shù)設(shè)置,獲得 理想的濾

2、波效果。最后通過SignalCompiler 把Silmulink 的模型文件轉(zhuǎn)換成硬件描述語言VHDL文件,用QuartusII仿真下載,驗證設(shè)計結(jié)果。關(guān)鍵詞VHDL; MATLAB; FIR數(shù)字濾波器;仿真中圖分類號TN702文獻(xiàn)標(biāo)志碼A2Design of FIR digital filtersZhang xin(Grade06,Class1,Major of Commun icatio n Engin eeri ng , School of Physics and Telecom muni cati onEngin eeri ng Shaa nxi Uni versity of Tec

3、h no logy, Han zho ng 723003,Ch ina)Tutor: Zheng ZhengbingAbstract FIR digital filter: a finite impulse respo nse filter, it can en sure that any in crease in the frequency characteristics of both a strict linear phase frequency characteristics, while its unit sample resp onse is fin ite, and theref

4、ore the system filter is stable. Based on the DSP Builder of FIR digital filter design, according to the FIR low-pass digital filter principle and filtering characteristics, through the MATLAB / Simuli nk software simulatio n of certa in properties of the FIR filter freque ncy resp onse and the tap

5、coefficie nts, using software to describe the actio n and fun ctio n of the hardware. Combi ned with DSP Builder to produce graphic modeli ng simulati on, an alysis of the correct ness of the model, parameter sett ing, obtai n ideal filteri ng effect. Fi nally through the Sig nalCompiler Silmuli nk

6、model file is con verted into a hardware descripti on Ian guage VHDL file, using QuartusII simulatio n, validati on of desig n results.Key words: VHDL; MATLAB; FIR Digital filter; simulation通信工程專業(yè)課程設(shè)計II目錄FIR數(shù)字濾波器的設(shè)計 I.AbstrctII目錄11緒論21.1課題背景21.1.1數(shù)字濾波器21.1.2 DSP Builder軟件及開發(fā)流程 41.1.3 MATLAB 技術(shù)現(xiàn)狀61.2

7、濾波器研究現(xiàn)狀72. FIR濾波器原理及設(shè)計方案 82.1 FIR數(shù)字濾波器原理 82.2設(shè)計方案選擇102.2.1 方案一:FIR IPCore 102.2.2 方案二:VHDL 語言102.2.3 方案三:DSPBuilder103. 濾波器的設(shè)計 1.1.3.1 8階常系數(shù)FIR數(shù)字濾波器設(shè)計113.1.1設(shè)計過程123.1.2濾波器仿真結(jié)果 133.2 16階常數(shù)FIR濾波器設(shè)計 143.2.1設(shè)計過程143.2.2濾波器仿真結(jié)果163.3基于Matlab的濾波器設(shè)計工具,獲得濾波器系數(shù)仃3.4基于(IP )核的濾波器設(shè)計 203.4.1設(shè)計過程 203.4.2濾波器仿真結(jié)果24結(jié)論2

8、5致謝27參考文獻(xiàn)28201.緒論1.1課題背景1.1.1數(shù)字濾波器在許多信息處理過程中,如對信號的過濾、檢測、預(yù)測等,都要廣泛地用到 濾波器,而數(shù)字濾波器則因其設(shè)計靈活、實現(xiàn)方便等特點而廣為接受。所謂數(shù)字濾波器就是具有某種選擇性的器件、網(wǎng)絡(luò)或以計算機硬件支持的計 算程序。其功能本質(zhì)是按事先設(shè)計好的程序,將一組輸入的數(shù)字序列通過一定的 運算后轉(zhuǎn)變?yōu)榱硪唤M輸出的數(shù)字序列,從而改變信號的形式和內(nèi)容,達(dá)到對信號 加工或濾波以符合技術(shù)指標(biāo)的要求。若濾波器的輸入、輸出都是離散時間信號,那么,該濾波器的沖擊響應(yīng)(或 濾波因子)也必然是離散的,我們稱這樣的濾波器為數(shù)字濾波器(Digital Filter :

9、 DF)0當(dāng)用硬件實現(xiàn)一個 DF時,所需的元件是延遲器、乘法器和加法器。當(dāng)在計 算機上用軟件實現(xiàn)時,它就是一段線性褶積(或卷積)的程序。我們知道,模擬 濾波器(Analog Filter ,AF)只能用硬件來實現(xiàn),其元器件是 R, L,C及運算放 大器或開關(guān)電路。因此,DF的實現(xiàn)要比AF容易的多,而且易獲得較為理想的效果。 濾波器的種類很多,分類方法也不同,如可以從功能上分,也可以從實現(xiàn)方法上 分,或從設(shè)計方法上來分等等。但總的來說,濾波器可以分為兩大類,即經(jīng)典濾 波器和現(xiàn)代濾波器。經(jīng)典濾波器是假定輸入信號x(n)中的有效信號和噪聲(或干擾)信號成分各在不同的頻帶,當(dāng) x(n)通過一個線性濾波

10、系統(tǒng)后,可以將欲噪聲 信號成分有效地去除??墒?,如果有效信號和噪聲信號的頻率帶相互重疊,那么 經(jīng)典的濾波器將無能為力?,F(xiàn)在的地質(zhì)雷達(dá)信號處理中的濾波器主要采用經(jīng)典的 濾波器進(jìn)行處理。因此有時濾波效果較好,有時較差?,F(xiàn)代濾波理論研究的主要 內(nèi)容是從含有噪聲的數(shù)據(jù)記錄(又稱為時間序列)中估計出信號的某些特征或信 號本身。一旦信號被估計出,那么估計出的信號將比原信號會有高的信噪比?,F(xiàn) 代濾波器把信號和噪聲都視為隨機信號,利用它們的統(tǒng)計特征(如自相關(guān)函數(shù)、 功率譜函數(shù)等等)導(dǎo)出一套最佳的估值算法,然后用硬件和軟件實現(xiàn)。目前現(xiàn)代 濾波器主要有:維納濾波器、卡爾曼濾波器、線性預(yù)測器、自適應(yīng)濾波器等。數(shù)字濾

11、波技術(shù)是數(shù)字信號分析、處理技術(shù)的重要分支。無論是信號的獲取、 傳輸,還是信號的處理和交換都離不開濾波技術(shù),它對信號安全可靠和有效靈活 地傳輸是至關(guān)重要的。在所有的電子系統(tǒng)中,使用最多技術(shù)最復(fù)雜的要算數(shù)字濾 波器了。數(shù)字濾波器的優(yōu)劣直接決定產(chǎn)品的優(yōu)劣。數(shù)字濾波器的應(yīng)用現(xiàn)狀與發(fā)展趨勢:(1)語音處理語音處理是最早應(yīng)用數(shù)字濾波器的領(lǐng)域之一,也是最早推動數(shù)字信號處理理 論發(fā)展的領(lǐng)域之一。該領(lǐng)域主要包括 5個方面的內(nèi)容:第一,語音信號分析。對 第二,語音合成。即利用專用數(shù)字硬件或在通用計算機上運行軟件來產(chǎn)生語音; 第三,語音識別。即用專用硬件或計算機識別人講的話,或者識別說話的人;第 四,語音增強。即從

12、噪音或干擾中提取被掩蓋的語音信號。第五,語音編碼。(2)圖像處理數(shù)字濾波技術(shù)以成功地應(yīng)用于靜止圖像和活動圖像的恢復(fù)和增強、數(shù)據(jù)壓縮、 去噪音和干擾、圖像識別以及層析 X射線攝影,還成功地應(yīng)用于雷達(dá)、聲納、超 聲波和紅外信號的可見圖像成像。通信在現(xiàn)代通信技術(shù)領(lǐng)域內(nèi),幾乎沒有一個分支不受到數(shù)字濾波技術(shù)的影響。采 用數(shù)字濾波器,特別是在數(shù)字通信、網(wǎng)絡(luò)通信、圖像通信、多媒體通信等應(yīng)用中, 離開了數(shù)字濾波器,幾乎是寸步難行。其中,被認(rèn)為是通信技術(shù)未來發(fā)展方向的軟 件無線電技術(shù),更是以數(shù)字濾波技術(shù)為基礎(chǔ)。(4)電視數(shù)字電視取代模擬電視已是必然趨勢。高清晰度電視的普及指日可待,與之 配套的視頻光盤技術(shù)已形成

13、具有巨大市場的產(chǎn)業(yè);可視電話和會議電視產(chǎn)品不斷 更新?lián)Q代。雷達(dá)雷達(dá)信號占有的頻帶非常寬,數(shù)據(jù)傳輸速率也非常高,因而壓縮數(shù)據(jù)量和降 低數(shù)據(jù)傳輸速率是雷達(dá)信號數(shù)字處理面臨的首要問題。告訴數(shù)字器件的出現(xiàn)促進(jìn) 了雷達(dá)信號處理技術(shù)的進(jìn)步。聲納聲納信號處理分為兩大類,即有源聲納信號處理和無源聲納信號處理,有源 聲納系統(tǒng)涉及的許多理論和技術(shù)與雷達(dá)系統(tǒng)相同。(7)生物醫(yī)學(xué)信號處理數(shù)字濾波器在醫(yī)學(xué)中的應(yīng)用日益廣泛,如對腦電圖和心電圖的分析、層析X射線攝影的計算機輔助分析、胎兒心音的自適應(yīng)檢測等。(8)音樂數(shù)字濾波器為音樂領(lǐng)域開辟了一個新局面,在對音樂信號進(jìn)行編輯、合成、 以及在音樂中加入交混回響、合聲等特殊效果

14、特殊方面,數(shù)字濾波技術(shù)都顯示出 了強大的威力。數(shù)字濾波器精確度高、使用靈活、可靠性高,具有模擬設(shè)備所沒有的許多優(yōu) 點,已廣泛地應(yīng)用于各個科學(xué)技術(shù)領(lǐng)域,例如數(shù)字電視、語音、通信、雷達(dá)、聲 納、遙感、圖像、生物醫(yī)學(xué)以及許多工程應(yīng)用領(lǐng)域。隨著信息時代數(shù)字時代的到 來,數(shù)字濾波技術(shù)已經(jīng)成為一門極其重要的學(xué)科和技術(shù)領(lǐng)域。以往的濾波器大多 采用模擬電路技術(shù),但是,模擬電路技術(shù)存在很多難以解決的問題,例如,模擬 電路元件對溫度的敏感性,等等。而采用數(shù)字技術(shù)則避免很多類似的難題,當(dāng)然 數(shù)字濾波器在其他方面也有很多突出的優(yōu)點,在前面部分已經(jīng)提到,這些都是模 擬技術(shù)所不能及的,所以采用數(shù)字濾波器對信號進(jìn)行處理是目

15、前的發(fā)展方向。1.1.2 DSP Builder軟件及開發(fā)流程DSPBuilder是一個系統(tǒng)級(或算法級)設(shè)計工具,它構(gòu)架在多個軟件工具之 上,并把系統(tǒng)級和 RTL級兩個設(shè)計領(lǐng)域的設(shè)計工具連接起來,最大程度地發(fā)揮了 兩種工具的優(yōu)勢。DSP Builder依賴于 Math Works公司的數(shù)學(xué)分析工具 Matlab/Simulink ,以 Simulink的Blockset出現(xiàn),可以在Simulink中進(jìn)行圖形化設(shè)計和仿真,同時又 通過Signal Compiler 可以把 Matlab/Simulink 的設(shè)計文件(.mdl)轉(zhuǎn)成相應(yīng)的 硬件描述語言VHDL設(shè)計文件(.vhd ),以及用于控制

16、綜合與編譯的 TCL腳本。而 對后者的處理可以由FPGA/CPL開發(fā)工具Quartus II來完成。DSP Builder是Altera推出的一個數(shù)字信號處理(DSP)開發(fā)工具,它在Quartus n FPGA設(shè)計環(huán)境中集成了 MathWorks的Matlab和Simulink DSF開發(fā)軟件。Altera 的DSP系統(tǒng)體系解決方案是一項具有開創(chuàng)性的解決方案,它將 FPGA勺應(yīng)用領(lǐng)域從 多通道高性能信號處理擴展到很廣泛的基于主流 DSP的應(yīng)用,是Altera第一款基 于C代碼的可編程邏輯設(shè)計流程。Altera 可編程邏輯器件(PLD)中的DSP系統(tǒng)設(shè)計需要高級算法和 HDL開發(fā)工具。Alter

17、a DSP Builder 將 The MathWorks MATLAB Simulink 系統(tǒng)級設(shè)計工具的算 法開發(fā)、仿真和驗證功能與 VHDL綜合、仿真和Altera開發(fā)工具整合在一起,實 現(xiàn)了這些工具的集成。DSP Builder在算法友好的開發(fā)環(huán)境中幫助設(shè)計人員生成DSPS計硬件表征,從而縮短了 DSP設(shè)計周期。已有的MATLAB!數(shù)和Simulink模塊可以和Altera DSP Builder模塊以及Altera知識產(chǎn)權(quán)(IP)MegaCore功能相結(jié)合,將系統(tǒng)級設(shè)計實現(xiàn) 和DSP算法開發(fā)相鏈接。DSFBuilder支持系統(tǒng)、算法和硬件設(shè)計共享一個公共開 發(fā)平臺。設(shè)計人員可以使用

18、DSP Builder模塊迅速生成Simulink系統(tǒng)建模硬件。DSPBuilder包括比特和周期精度的Simulink模塊,涵蓋了算法和存儲功能等基本操 作??梢允褂肈SP Builder模型中的MegaCore功能實現(xiàn)復(fù)雜功能的集成。Altera還提供DSPBuilder高級模塊集,這一 Simulink庫實現(xiàn)了時序驅(qū)動的 Simulink 綜合。Altera MegaCore是高級參數(shù)化IP功能,例如有限沖擊響應(yīng)(FIR)濾波器和快 速傅立葉變換(FFT)等,經(jīng)過配置能夠迅速方便的達(dá)到系統(tǒng)性能要求。MegaCore功 能支持Altera的IP評估特性,使您在購買許可之前,便可以驗證功能及

19、其時序。Altera IP MegaStore 網(wǎng)站上為DSP Builder和IP評估流程提供 DSP IP完整 介紹DSP Builder SignalCompiler 模塊讀取由 DSP Builder 和 MegaCore模塊構(gòu)建 的Simulink建模文件(.mdl),生成VHDL文件和工具命令語言(Tcl)腳本,進(jìn)行綜 合、硬件實施和仿真。下圖所示為 DSP Builder設(shè)計流程:1.1.3 MATLAB 技術(shù)現(xiàn)狀Matlab是美國MathWorks公司自20世紀(jì)80年代中期推出的數(shù)學(xué)軟件,優(yōu)秀的數(shù)值計算能力和卓越的數(shù)據(jù)可視化能力使其很快在數(shù)學(xué)軟件中脫穎而 出。到目前為止,其最高

20、版本6.0版已經(jīng)推出。隨著版本的不斷升級,它在數(shù)值 計算及符號計算功能上得到了進(jìn)一步完善。Matlab已經(jīng)發(fā)展成為多學(xué)科、多種工作平臺的功能強大的大型軟件。在歐美等高校,Matlab已經(jīng)成為線性代數(shù)、自動控制理論、概率論及數(shù)理統(tǒng)計、數(shù)字信號處理、時間序列分析、動態(tài)系統(tǒng)仿 真等高級課程的基本教學(xué)工具,是攻讀學(xué)位的大學(xué)生、碩士生、博士生必須掌握 的基本技能。Matlab的主要特點是:有高性能數(shù)值計算的高級算法,特別適合 矩陣代數(shù)領(lǐng)域;有大量事先定義的數(shù)學(xué)函數(shù),并且有很強的用戶自定義函數(shù)的能 力;有強大的繪圖功能以及具有教育、科學(xué)和藝術(shù)學(xué)的圖解和可視化的二維、三 維圖;基于HTML的完整的幫助功能;

21、適合個人應(yīng)用的強有力的面向矩陣 (向量)的高級程序設(shè)計語言;與其它語言編寫的程序結(jié)合和輸入輸出格式化數(shù)據(jù)的能力;有在多個應(yīng)用領(lǐng)域解決難題的工具箱。Matlab作為一個數(shù)值運算軟件和仿真工具正在越來越多的領(lǐng)域中得到不同程度的應(yīng)用,下面的內(nèi)容估計還可以大大 的擴張。主要應(yīng)用領(lǐng)域:1工程運算2控制系統(tǒng)設(shè)計3.DSPS統(tǒng)和通訊系統(tǒng)設(shè)計4.測量與測試5.圖形處理6 .金融建模與分析應(yīng)用。傳統(tǒng)的數(shù)字濾波器的設(shè)計過程復(fù)雜,計算工作量大,濾波特性調(diào)整困難,影 響了它的應(yīng)用。利用 MATLAB言號處理工具箱(Signal Processing Toolbox)可以快速有效的設(shè)計由軟件組成的常規(guī)數(shù)字濾波器的設(shè)計方

22、法。給出了使用MATLA語言進(jìn)行程序設(shè)計和利用信號處理工具箱的 FDATool工具進(jìn)行界面設(shè)計的詳細(xì)步驟。 利用MATLA設(shè)計濾波器,可以隨時對比設(shè)計要求和濾波器特性調(diào)整參數(shù),直觀簡 便,極大的減輕了工作量,有利于濾波器設(shè)計的最優(yōu)化。MATLAB是一種功能強大的數(shù)據(jù)分析和工程計算高級語言,在工業(yè)、電子、信號處理、醫(yī)學(xué)、建筑以及航 空等領(lǐng)域有著廣泛的應(yīng)用。Altera 的 DSP Builder 是連接 MATLA中的 Simulink 和 Quartus U 開發(fā)軟件 的DSP開發(fā)工具,在它的實際應(yīng)用中,F(xiàn)IR濾波器是最為常用的模塊之一,而且基 于DSP Builder的FIR濾波器設(shè)計方式有

23、很多種?;贛atlab的Web應(yīng)用原理,在信號分析和診斷上也可應(yīng)用,例如文獻(xiàn)資 料證明,可以利用這一原理開發(fā)遠(yuǎn)程信號分析與診斷系統(tǒng),其中包含頻譜分析、 相關(guān)分析、時序分析、小波分析、小波包含分析、時頻分析、機械圖像分析以及 遠(yuǎn)程智能診斷系統(tǒng),該系統(tǒng)能充分利用Matlab強大的信號分析和工程計算能力,充分發(fā)揮Matlab的平臺良好的擴展性,以及對硬件和數(shù)據(jù)庫的操作性,實現(xiàn)更高 級的功能。1.2濾波器研究現(xiàn)狀數(shù)字信號實際上是用數(shù)字序列表示的信號,語音信號經(jīng)采樣和量化后,得到 的數(shù)字信號是一個一維離散時間序列;而圖像信號經(jīng)采樣和量化后,得到的數(shù)字 信號是一個二維離散空間序列。數(shù)字信號處理,就是用數(shù)

24、值計算的方法對數(shù)字序 列進(jìn)行各種處理,把信號變換成符合需要的某種形式。例如,對數(shù)字信號經(jīng)行濾 波以限制他的頻帶或濾除噪音和干擾,或?qū)⑺麄兣c其他信號進(jìn)行分離;對信號進(jìn) 行頻譜分析或功率譜分析以了解信號的頻譜組成,進(jìn)而對信號進(jìn)行識別;對信號 進(jìn)行某種變換,使之更適合于傳輸,存儲和應(yīng)用;對信號進(jìn)行編碼以達(dá)到數(shù)據(jù)壓 縮的目的,等等。在所有的電子系統(tǒng)中,使用最多技術(shù)最復(fù)雜的要算數(shù)字濾波器 了。數(shù)字濾波器的優(yōu)劣直接決定產(chǎn)品的優(yōu)劣。數(shù)字濾波器的實現(xiàn),大體上有如下幾種方法:(1) 在通用的微型機上用軟件來實現(xiàn)。軟件可以由使用者自己編寫或使用現(xiàn)成的。自 IEEE DSPComm于1979年推出 第一個信號處理軟

25、件包以來,國外的研究機構(gòu)、公司也陸續(xù)推出不同語言不同用 途的信號處理軟件包。這種實現(xiàn)方法速度較慢,多用于教學(xué)與科研。(2) 用單片機來實現(xiàn)。目前單片機的發(fā)展速度很快,功能也很強依靠單片機的硬件環(huán)境和信號處理 軟件可用于工程實際,如數(shù)字控制、醫(yī)療儀器等。(3) 利用專門用于信號處理的DSP片來實現(xiàn)。DSP芯片較之單片機有著更為突出的優(yōu)點,如內(nèi)部帶有乘法器、累加器,采用流水線工作方式及并行結(jié)構(gòu),多總線,速度快,配有適于信號處理的指令等,DSP芯片的問世及飛速發(fā)展,為信號處理技術(shù)應(yīng)用于工程實際提供了可能。2. FIR濾波器原理及設(shè)計方案2.1 FIR數(shù)字濾波器原理數(shù)字濾波器根據(jù)其沖激響應(yīng)函數(shù)的時域特

26、性,可分為兩種,即無限長沖激響 應(yīng)(IIR)濾波器和有限長沖激響應(yīng)(FIR)濾波器。不論是窗函數(shù)設(shè)計法,還是頻率 抽樣設(shè)計法,都要求出濾波器的單位沖激響應(yīng)h(n),然后才能在時域中實現(xiàn)頻域中的濾波。1. 濾波系數(shù)的差分方程在頻域,當(dāng)其輸入信號為X(ej co )時,如濾波器的頻率響應(yīng)為H(ej o ),則其輸出信號為丫(ej o )=X(ej o )H(ej o )。在時域,設(shè)濾 波器的單位沖激響應(yīng)h(n)為一 N點序列,即OWn<N-1時h(n)的值不為零,根據(jù)離散傅氏變換的性質(zhì),則可以將濾波器的輸入序列x (n)的響應(yīng)y (n)表示為x(n)與h(n)的卷積和,即:n) .t( mn

27、)=丄 h(旳、x( n rn)m *0這就是濾波系統(tǒng)的差分方程,它給濾波器的實現(xiàn)奠定了理論基礎(chǔ)。即求出時域的h(n)后,便可通過卷積來實現(xiàn)頻域的濾波。2. 卷積和運算的實現(xiàn)FIR 數(shù)字濾波器的設(shè)計組成結(jié)構(gòu)如下圖所示:4-* 訕* x(6) * ,閔* g «移位寄加法器組并疔矢量 乘法器(1) h(n)序列N個點數(shù)值的存儲由于h(n)是根據(jù)濾波性能要求已經(jīng)設(shè)計好的有限長單位沖激響應(yīng),故其 N個點的數(shù)值是已知的,因此可以存放在ROMERAM當(dāng)中,且對應(yīng)著N個不同的地址,便于尋址。(2)輸入序列x (n)的移位寄存輸入序列x (n)是不斷變化的,因此只能對其進(jìn)行移位寄存,寄存器的個數(shù)為

28、N,即N個寄存器中分別存放著x (n)、x(n-1 )x (n-N+1),它們都隨著n的變化而變化(3) 乘法器 用以完成兩個數(shù)值的乘法,即h(m)x (n-m),也就是將存儲 器中N地址所對應(yīng)的N個固定數(shù)值h(m)分別與N個移位寄存器中的不斷變化的 N 個變化數(shù)值x (n-m)相乘。(4) 累加器 用以實現(xiàn)N個乘積的累加,即將當(dāng)前x (n)所對應(yīng)的N個乘 積進(jìn)行累加,所得到的和就是y (n)。當(dāng)濾波器的下一個輸入值即x (n +1 )到 來時,累加器清零,并重新將下一組 x (n+1)所對應(yīng)的N個乘積進(jìn)行累加,所得 到的和就是y (n +1) o2.2設(shè)計方案選擇2.2.1 方案一:FIR

29、IPCore首先要安裝 Altera 公司的FIR IPCore,并利用 Quartusll 軟件打開IP Toolbench完成FIR的參數(shù)設(shè)置;然后通過摸/數(shù)轉(zhuǎn)換器(ADC采集模擬信號并將 數(shù)據(jù)送給FIR數(shù)字濾波器進(jìn)行處理。利用 QuartusII完成整個設(shè)計,最后下載并 進(jìn)行測試,利用嵌入式邏輯分析儀觀測FIR濾波器的輸入輸出數(shù)據(jù)之間的關(guān)系。本實驗的模擬信號使有DD護(hù)生的。2.2.2方案二:VHDL語言由Matlabb計算FIR數(shù)字濾波器的濾波系數(shù),再進(jìn)過 VHDL語言設(shè)計邏輯電路, 再通過QuartusII軟件,將各個模塊軟件封裝成期間,在頂層設(shè)計中通過連線, 完成整個系統(tǒng)。最后仿真下

30、載,觀察對比。2.2.3 方案三:DSPBuilder由濾波器原理的得出方案的框圖,如圖2.2.3所示,根據(jù)框圖可以完成實驗設(shè)計。圖223 DPSBulider方案設(shè)計經(jīng)過方案的對比,方案一和方案二的設(shè)計過程都比較繁瑣,中間涉及一些生 疏的知識環(huán)節(jié)不利于設(shè)計工程的順利進(jìn)行,尤其VHD語言程序設(shè)計要求語法正確、 結(jié)構(gòu)完整,給模塊設(shè)計和頂層文件設(shè)計帶來諸多不便。但是,方案三的實際過程 簡便,易于錯誤修改,仿真運行結(jié)果清晰,即使初學(xué)者也能進(jìn)行獨立的操作和設(shè) 計。最終我們小組決定采用方案三完成 FIR數(shù)字濾波器的設(shè)計。3. 濾波器的設(shè)計3.1 8階常系數(shù)FIR數(shù)字濾波器設(shè)計假定一個8階的FIR濾波器,

31、其h (n)可以表示為:h(n) =C(h(O)x(n) h(1)x(n-1)h(2)x(n- 2)h(3)x(n- 3)h(4)x(n - 4)-h(5)x(n -5)h(6)x(n -6)h(7)x(n -7)h(0)=269h(1)=395h(2)=470h(3)=511其中:是量化時附加的因子h(4)=511 Ch(5)=470 h(6)=395h( 7)=2693.1.1設(shè)計過程1) 啟動 Matlab軟件,打開Simulink Library Browser界面,建立一個新的模型 文件,保留并命名為FIR8.mdl。2) 如圖3.1.1.1所示,拖入相應(yīng)的模塊,然后按圖所示連接電路

32、。In cerme ntDecreme nt 模塊:參數(shù)“ Bus type ” 設(shè)為“ Un sig ned In teger ” “ Numerof bits ” 設(shè)為“ 20”參數(shù)“ Drectio n ”設(shè)為 “ In creme nt ”BusCo nv ersi on 模塊:參數(shù) “ In put Bus Tipe ” 設(shè)為“ Un sig ned In teger ” 參 數(shù) “Inputnumber of bits ” 設(shè)為“ 20” 參數(shù)“ Outputnumber of bits ”設(shè) 為 “13”Parallel Adder Subtractor 模塊:參數(shù)“ Numbe

33、r of in put” 設(shè)為“ 2 ”“Add(+)Sub(-) ” 設(shè)為“ +”參數(shù)“ Clock Phase Slection ”設(shè)為 “ 1”Phasewordl 模塊:參數(shù)“ Bus type ” 設(shè)為“ Un sig ned In teger ”“ Numerofbits ” 設(shè)為“ 16”參數(shù)“ Node Type ”設(shè)為 “ Integer Node ”BusC onv ersi on 模塊:參數(shù) “ In put Bus Tipe ” 設(shè)為“ Un sig ned In teger ” 參 數(shù) “Inputnumber of bits ”設(shè)為 “ 16” 參數(shù)“ Output

34、number of bits ”設(shè) 為“ 8”“ In put Bit Conn ected to Output LSB ” 設(shè)為“ 8”Delay 模塊: 參數(shù)“ Depth”設(shè)為 “ 1” 參數(shù)“ Clock Phase Slection ” 設(shè)為“1”圖3.1.1.17階常數(shù)濾波器上部分為掃頻電路模型,下部分為濾波器模型。3)設(shè)置仿真參數(shù)本模型添加了 SimulinkSkinsScope模塊,用與查看相應(yīng)的位選信號的產(chǎn)生結(jié)果,選中其中的“Data history ” ,把 Limit data points to tast:設(shè)為 100000。選擇Simulio n菜單下的con fig

35、uration parameters進(jìn)行仿真參數(shù)的相應(yīng)設(shè)置,在彈出的窗口中,stop time設(shè)置為100000,然后單擊“ OK。4)保存FIR8模型并進(jìn)行仿真選擇Simulation菜單下的Start項,或按下Ctrl+T鍵開始啟動仿真。3.1.2濾波器仿真結(jié)果如圖3.1.2所示:圖3.1.2常數(shù)FIR濾波器仿真波形所設(shè)計為8階FIR低通濾波器,觀察以上仿真波形可知,濾波器對低頻信號 的衰減較小,信號的頻率越高,濾波器對信號的衰減越大。由此可知所涉及的濾 波器性能良好,濾波效果明顯。3.2 16階常數(shù)FIR濾波器設(shè)計3.2.1設(shè)計過程1) 啟動 Matlab軟件,打開Simulink Li

36、brary Browser界面,建立一個新的模型文件,保留并命名為FIR16.mdl。2)如圖2.3.2.1所示,拖入相應(yīng)的模塊,然后按圖所示連接電路。I?7!Ilnffs-mirt C-IlSUilJimShu-j;-sidy : i亡?! SAl聲0ai<i1S5»L官lj CarvftDnC34ir4GhihI3iirfGairB*S-ccmF arillKl ADer S jcti'CtrlQutpL-LSigral Ccmeiler圖321 16階FIR濾波器In cerme nt Decreme nt 模塊:參數(shù)“ Bus type ” 設(shè)為“ Un sig

37、 ned In teger ” “ Numer of bits ” 設(shè)為“ 20”參數(shù)“ Drectio n ”設(shè)為 “ In creme nt ”BusCo nv ersi on 模塊:參數(shù) “ In put Bus Tipe ” 設(shè)為“ Un sig ned In teger ” 參 數(shù) “Inputnumber of bits ” 設(shè)為“ 20” 參數(shù)“ Outputnumber of bits ”設(shè) 為 “13”Parallel Adder Subtractor 模塊:參數(shù)“ Number of in put ” 設(shè)為“ 2 ”“Add(+)Sub(-) ” 設(shè)為“ +”參數(shù)“ Clo

38、ck Phase Slection ”設(shè)為 “ 1”Phasewordl 模塊:參數(shù)“ Bus type ” 設(shè)為“ Un sig ned In teger ”“ Numerofbits ” 設(shè)為“ 16”參數(shù)“ Node Type ”設(shè)為 “ Integer Node ”BusC onv ersi on 模塊:參數(shù) “ In put Bus Tipe ” 設(shè)為“ Un sig ned In teger ” 參 數(shù) “Inputnumber of bits ”設(shè)為 “ 16” 參數(shù)“ Outputnumber of bits ”設(shè) 為“ 8”“ In put Bit Conn ected to

39、 Output LSB ” 設(shè)為“ 8”Delay 模塊: 參數(shù)“ Depth”設(shè)為 “ 1” 參數(shù)“ Clock Phase Slection設(shè)為“1”3)設(shè)置仿真參數(shù)本模型添加了 SimulinkSkinsScope模塊,用與查看相應(yīng)的位選信號的產(chǎn)生結(jié)果,選中其中的“ Data history ” ,把 Limit data points to tast: 設(shè)為 100000。選擇Simulio n菜單下的con figuration parameters 進(jìn)行仿真參數(shù)的相應(yīng)設(shè)置,在彈出的窗口中,stop time設(shè)置為100000,然后單擊“ OK。4)保存FIR16模型并進(jìn)行仿真選擇S

40、imulation菜單下的Start項,或按下Ctrl+T鍵開始啟動仿真。3.2.2濾波器仿真結(jié)果如下圖所示:圖3.2.2 16階常數(shù)濾波器所設(shè)計為16階FIR低通濾波器,觀察以上仿真波形可知,濾波器對低頻信號 的衰減較小,信號的頻率越高,濾波器對信號的衰減越大。由此可知所涉及的濾波器性能良好,濾波效果明顯。3.3基于Matlab的濾波器設(shè)計工具,獲得濾波器系數(shù)FDATool(Filter Design & Analysis Tool) 是 MATLA信號處理工具箱里專用 的濾波器設(shè)計分析工具,MATLAB6.C以上的版本還專門增加了濾波器設(shè)計工具箱 (Filter Desig n T

41、oolbox)FDATool界面總共分兩大部分,一部分是 Design Filter ,在界面的下半部, 用來設(shè)置濾波器的設(shè)計參數(shù),另一部分則是特性區(qū),在界面的上半部分,用來顯 示濾波器的各種特性。Desig n Filter部分主要分為:Filter Type( 濾波器類型)選項,包括Lowpass(低通)、Highpass(高通)、 Bandpass(帶通)、Bandstop(帶阻)和特殊的FIR濾波器。Design Method(設(shè)計方法)選項,包括IIR濾波器的Butterworth(巴特沃思) 法、Chebyshev Type I(切比雪夫 I 型)法、Chebyshev Type

42、II( 切比雪夫 II 型) 法、Elliptic( 橢圓濾波器)法和FIR濾波器的Equiripple 法、Least-Squares(最 小乘方)法、Window(窗函數(shù))法。Filter Order(濾波器階數(shù))選項,定義濾波器的階數(shù),包括Specify Order(指 定階數(shù))和Minimum Order(最小階數(shù))。在Specify Order中填入所要設(shè)計的濾波 器的階數(shù)(N階濾波器,Specify Order = N-1),如果選擇 MinimumOrder則MATLAB 根據(jù)所選擇的濾波器類型自動使用最小階數(shù)。Fren que ncy Specificati ons選項,可以詳

43、細(xì)定義頻帶的各參數(shù),包括采樣頻率Fs和頻帶的截止頻率。它的具體選項由Filter Type 選項和Design Method選項決定,例如Bandpass(帶通)濾波器需要定義Fstop1(下阻帶截止頻率)、 Fpass1(通帶下限截止頻率)、Fpass2(通帶上限截止頻率)、Fstop2(上阻帶截止頻 率),而Lowpass(低通)濾波器只需要定義Fstop1、Fpass1。采用窗函數(shù)設(shè)計濾波 器時,由于過渡帶是由窗函數(shù)的類型和階數(shù)所決定的,所以只需要定義通帶截止 頻率,而不必定義阻帶參數(shù)。Mag nitude Specificati ons選項,可以定義幅值衰減的情況。例如設(shè)計帶通濾波器時

44、,可以定義 Wstop1(頻率Fstop1處的幅值衰減)、Wpass(通帶范圍內(nèi)的幅 值衰減)、Wstop2(頻率Fstop2處的幅值衰減)。當(dāng)采用窗函數(shù)設(shè)計時,通帶截止 頻率處的幅值衰減固定為6db,所以不必定義。Win dowSpecificatio ns選項,當(dāng)選取采用窗函數(shù)設(shè)計時,該選項可定義,它包含了各種窗函數(shù),在通帶內(nèi)的衰減為6dB。1)打開Matlab的FDATool,如下圖331所示。根據(jù)具體設(shè)計要求計算濾波器的 系數(shù),在系數(shù)計算好填入圖中后,16階FIR濾波器才能真正應(yīng)用,這就要使用我們 強大的MATLABT具了。MATLAB集成了一套功能強大的濾波器設(shè)計工具FDATool(

45、Filter Design & Analysis Tool),可以完成多種濾波器的設(shè)計、分析和性能評估。點擊 MATLAB窗口下方的 “start ” 按鈕,選擇 “ToolBox” “Filter Design” “ Filter Design & Analysis Tool(FDAToo)”,打開 FDAToo。其界面如下所示:此時我們可以進(jìn)行濾波器的設(shè)計:選擇濾波器類型為低通,設(shè)計方法為FIR, 采用窗口法(WindoW,濾波器階數(shù)定制為15(在此設(shè)置的是15階,而不是16階, 這是由于在前面設(shè)計的16階FIR的常系數(shù)h(0)=0 ),采樣頻率Fs=50KHZ截止頻 率

46、Fc=10KHZ2) 選擇 Design Filer 。點擊“ Design Filter ”,就可以讓 MATLAB+ 算 FIR 濾波器的系數(shù)并作相關(guān)的分析。求出的FIR濾波器的系數(shù)可以通過選擇菜單“Analysis ” “ Filter Coefficients” 來觀察。如圖 3.3.2 所示3)濾波器分析??梢酝ㄟ^ FDATool的菜單“An alysis ”進(jìn)行幅頻響應(yīng)分析、 相頻響應(yīng)分析、群延時分析、沖激響應(yīng)分析、階躍響應(yīng)分析、零極點分析。如果覺得某些結(jié)果不符合設(shè)計要求,則可以進(jìn)行相應(yīng)的參數(shù)調(diào)整。4)導(dǎo)出濾波器系數(shù),如圖3.3.3所示。為導(dǎo)出設(shè)計好的濾波器系數(shù),選擇FDATool

47、菜單的“ File ” “ Export”,打開導(dǎo)出(Export )對話框,在該窗口 中,選擇導(dǎo)出到工作區(qū)(Workspace),這是濾波器系數(shù)就存到一個一維變量中了, 要將它們變成整數(shù),只要在 MATLA吐窗口的窗口命令中鍵入:Num*08)即得, 如圖3.3.4所示。把計算出的系數(shù)逐個填入到FIR濾波器模型中,就完成了一個16階直接I型低通濾波器的設(shè)計。通信工程專業(yè)課程設(shè)計IIReady22FilrD暑豆電耳Shortcutv £11 Hw t«Bioiitfarmati cs C uetiluij c b LI ona 匚 ontrfll Sy'itPi C

48、m*v« fs.ttificI *t Jlr qpji x e I i o-'n12-2-2712-2-27下午血1下午丸112-2-2712-2-2712-2-28下午石汐 下午止1 下午氐 下午靳 下午心 _t >E:J- Falter D暑事ifnF ilt*r n”i £Tl HtL Cad«irT a nxnc a s-lfluiH* (2"S)Num* (2_S)Nun*(29)& 12-2-23 下午 1;m聲一-12-2-28 下午Id l-Nwi* (2*8):-St 12-2-29 上午5:3-ft 12-2-2

49、9 上午甘;;3 % 12-2-2S 上午觸 4*| St12-2-29 上午5 4 IFDAIoolHAILAB»F invtc: i ql D«ri.v«ti iFa-w-Pp-i-ntFuzzjf L«ci c>jARHGw*ti c Alri ftw« and Direct SearchIm«£-A Ae ui f h I iIr*Sf« Px*QiE-*EH3 n(:Instrent Control pp i. n.fFrv-di a v* C-gntrlN4d«LS«£

50、;*d 匚 ol,i br t.li onU»ur «1 n»Lw-orkOPCOpti<nii i«t i <£>nFkt all al Canpiit i*nfF orti kJ Di f ftr+nti &1 E qulI i onw#C VKJBatlidt-pe. 1 it i - id 匸巴匚 11", it DSP Builder Fa+sl Err&: DSP Bui Ides Fat al Eek*. Li£P Euilder Fat a.1 Erro:F ilt«

51、;r Builder (fi 1 rbai 1 dSswrJ| =鋰 F ilt蠱ar D:si gn.康曹eJ.)事 H*lpDsni-aixProduc t F«ce <Wtb)J4J*»G /Bl c-Ju-a I aLi nki: uid I*r vc th«-rPSP Suildltr Fatal Err& DSP Bull dis Fat &1 Ee£. DSP Euilder ¥ aiming;: d> Yarning: The n&del x FU salver ' adteJiS &

52、#187; You 匸出 f 口nf i gur art i on Parareet e: t ab &f C*nf ieur*t i« VarnirLf: Oxrt-puT port 2 Warning ? Output port 3 VarilxrLE = Chit put pott, < Va-rnins: LUI FIR_iiip/l vords m the LUI.Ta.rmrLE: LUI FIR_iiip/l dial a typ<_ Pa>±a valu<£ DSP Bulldes W&snine:也 Var

53、ning : I lie raadel r F I 9olv«r " od電4于 Y cai C onf i .UH »1t z on Par anet e: t sib 口£ the C oiif i gur a+ i > Warnine s Output port 2 Va.rTLxrLK z Oxrt put por+ 3 : Qijrtput prt 4圖 331 打開 FDAToolFilter Dejign 1 AzialyrTool -unt it led. f da *1 Efflf 3.I4-E dj. i n.riJ.yfl.1

54、11乜”pt*ViWa eiAh«*lpDlbl目R妙J3園嵐Q K區(qū)固田蕊喀tni kl O E E檸尸 hl 白 SipecHlicaiioftsi- Current Filer nnonaiHbonSlruclure'Dred-Fom FlROreter.50射4YfrsSoLrce.Designed営I me* Fil«fResponse TypeaH(NFsf2 f (H;)LQ 硼"VHighpas;7O BarWO Blandsl 叩.Ftcr QrflBr(*)drdHr. iSji f r&quignc -spiKimcuiwna

55、 ._Uhl!生 |HxkMpigrtliJCfe SfKCilfcffllQnSThe dtleniiEtnn at 匚LtotfO DrfferertBlar _ Design Melhod一EMftBT理 dhvl<*) FP 'indaw7Oor斷freauenoes:«3 lied st 5 dt!(haH'Itic paslaond gain) PsugnFit前圖3.3.2濾波器設(shè)計界面通信工程專業(yè)課程設(shè)計II32圖333導(dǎo)出系數(shù)對話框» Ng和的ans 二Columns 1 through 121.-1083 -226362 *12.

56、553446.B130 107.2134 10L213446. 6180 -12.5534 -22,6-9.5636-9.56352, 831814,4815Cciluitns 13 "th爼ugh1.408314. -8152.8313圖3.3.4系數(shù)產(chǎn)生由于產(chǎn)生系數(shù)數(shù)值太小,濾波不明顯,所以對所有系數(shù)擴大9倍,進(jìn)行濾波器設(shè)計。把上面得到的系數(shù),作為 AltBusI、AltBus2、AltBus3、AltBus4、AltBus5、 AltBus6、AltBus7、AltBus8、AltBus9、AltBuslO、AltBusll、AltBus12、AltBus13、 AltBus14、AltBus15 模塊的設(shè)計。3.4基于(IP )核的濾波器設(shè)計3.4.1設(shè)計過程首先安裝 Altera公司的FIR IPCore,然后在 Simulink庫管理器中看到 MegaCore Function 這個庫,并利用 DSP Builder 軟件打開 IP Toolbench 完成 FIR 的參數(shù)設(shè)置;把掃頻信號產(chǎn)生電路產(chǎn)生的信號輸入FIR數(shù)字濾波器進(jìn)行處理。1)啟動 Matlab軟件,打開Simulink Library Browser界面,建立一個新的模型 文件,保留并命名為FIR_IP.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論