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

下載本文檔

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

文檔簡介

1、摘要在現(xiàn)代電子系統(tǒng)中,FIR數(shù)字濾波器以其良好的線性特性被廣泛使用, 隨著可編程邏輯器件和EDA技術(shù)的發(fā)展,使用FPGA來實現(xiàn)FIR濾波器,既具有實時性,又兼顧了一定的靈活性,越來越多的電子工程師采用FPGA器件來實現(xiàn)FIR濾波器。本論文對基于FPGA的FIR數(shù)字濾波器實現(xiàn)進(jìn)行了研究,以FIR數(shù)字濾波器的基本理論為依據(jù),并且采用查找表以及線性FIR波器的對稱性特點使得硬件規(guī)模極大的減小。為了驗證仿真結(jié)果的正確性,文中應(yīng)用了MATLAB和VHDL聯(lián)合仿真方法對設(shè)計的電路進(jìn)行仿真測試,結(jié)果達(dá)到設(shè)計指標(biāo)。并用MATLAB對仿真結(jié)果進(jìn)行了分析,證明了所設(shè)計的FIR數(shù)字濾波器功能正確。關(guān)鍵詞: 有限脈沖

2、響應(yīng) 現(xiàn)場可編程門陣列 查找表窗函數(shù) 仿真ABSTRACTIn the modern electrical system, the FIR digital filter is used for many practical applications for its good linear phase character, Along with the development of PLD device and EDA technology, more and more electrical engineers use FPGA to implement FlR filter, as it no

3、t only meet the real-time requirement, but also has some flexibility.In this paper, a method to implement the FIR filter using FPGA is proposed. According to the basic theory of FIR filters, the thesis reduces it with the use of multiple coefficient memory banks and the symmetry characteristic of li

4、near FIR filter. In order to make the verification more available, the complex simulation with Matlab and VHDL is used to testify the design whether fulfills the requirement. And also the result of the simulation is analyzed with the use of MATLAB, and it proved that the function of the design is co

5、rrect.KEYWORDS: FIR FPGA Windows Function Simulation目 錄第一章 緒論11.1背景和選題依據(jù)11.2國內(nèi)外研究現(xiàn)狀和發(fā)展動態(tài)21.3論文研究的目的和主要內(nèi)容2第二章 FIR濾波器的結(jié)構(gòu)及設(shè)計42.1 FIR數(shù)字濾波器基礎(chǔ)42.2 FIR數(shù)字濾波器的基本結(jié)構(gòu)52.3 FIR數(shù)字濾波器的設(shè)計7第三章 FPGA在設(shè)計中的具體應(yīng)用103.1硬件電路的設(shè)計方式103.2 FPGA簡介11第四章 基于FPGA 設(shè)計FIR濾波器174.1指標(biāo)的確定174.2 Matlab在設(shè)計中的應(yīng)用174.3 16階FIR濾波器的結(jié)構(gòu)204.4 采用查找表方式的FIR濾

6、波器23第五章總結(jié)與展望305.1總結(jié)305.2發(fā)展30參考文獻(xiàn)31致謝32第一章 緒論1.1背景和選題依據(jù)本課題的研究背景是針對數(shù)字信號處理實驗室的需要而開展的工作。由于信號在復(fù)雜的環(huán)境中經(jīng)常受到大量的干擾及噪聲的影響,因而設(shè)計高性能的FIR濾波器來濾掉這些干擾及噪聲起著非常關(guān)鍵的作用。在數(shù)字處理中,濾波占有重要的地位。數(shù)字濾波在語音和圖像處理、HDTV(High-Definition Television)、模式識別、譜分析等應(yīng)用中經(jīng)常用到。與模擬濾波相比,數(shù)字濾波具有很突出的優(yōu)點。例如它可以滿足濾波器對幅度和相位特性的嚴(yán)格要求,可以避免模擬濾波所無法克服的電壓漂移、溫度漂移和噪聲等問題。

7、根據(jù)數(shù)字濾波器沖激響應(yīng)函數(shù)的時域特性,可將數(shù)字濾波器分為無限長沖激響應(yīng)(IIR)濾波器和有限長沖激響應(yīng)(FIR)濾波器兩種。由于FIR系統(tǒng)只有零點、系統(tǒng)穩(wěn)定,便于實現(xiàn)FFT算法、運算速度快、線性相位的特性和設(shè)計更為靈活等突出優(yōu)點而在工程實際中獲得廣泛應(yīng)用1。FPGA (Field Program Gate Array)是可編程邏輯器件中一種比較復(fù)雜的形式,它正處于革命性數(shù)字信號處理的前沿。全新的FPGA系列正在越來越多的替代ASIC(Application-Specific Integrated Circuit)和PDSP(Programmable Digital signal process

8、ors)用作前端數(shù)字信號處理的運算。FPGA具有許多與ASIC相同的特點。例如:在規(guī)模、重量和功耗等方面都有所降低。而且吞吐量更高、能更好的防止未授權(quán)復(fù)制、元器件和開發(fā)成本的進(jìn)一步降低,開發(fā)時間也大大縮短。還具有在線路中可重復(fù)編程的特性。它允許電路設(shè)計者利用基于計算機(jī)的開發(fā)平臺,經(jīng)過設(shè)計輸入、仿真、測試和校驗,直至達(dá)到預(yù)期的效果,從而可以產(chǎn)生更為經(jīng)濟(jì)的設(shè)計。更吸引人的是,采用FPGA器件可以將原來的電路板級產(chǎn)品集成為芯片級產(chǎn)品。正如我們現(xiàn)在所看到的,隨著FPGA在數(shù)字信號處理中的大規(guī)模應(yīng)用,正在日漸深入地影響我們的生產(chǎn)和生活,也必將在這領(lǐng)域引起深刻的變革。在本課題的研究中,采用超大規(guī)模集成電路

9、硬件描述語言(VHDL)對設(shè)計進(jìn)行描述。在程序設(shè)計的過程中,將不同功能代碼分別存放,以利于設(shè)計的后期更新和維護(hù)??梢允褂肔eonardo Spectrum或FPGA Express對設(shè)計進(jìn)行綜合處理,將產(chǎn)生的.edf文件放在Max plus II平臺上進(jìn)行仿真,如果仿真通過并符合要求,就可以將代碼下載到具體的芯片中,完成FIR濾波器的設(shè)計2。1.2國內(nèi)外研究現(xiàn)狀和發(fā)展動態(tài)在現(xiàn)代信號處理和電子應(yīng)用技術(shù)領(lǐng)域,濾波器作為一種必不可少的組成部分處在了一個十分重要的位置,并日益顯示出其巨大的應(yīng)用價值。盡管濾波技術(shù)的發(fā)展到現(xiàn)在只有七十多年的歷史,但它的發(fā)生與發(fā)展已經(jīng)歷了諸多變化,作為一種信號處理的技術(shù)已相

10、當(dāng)完善,并不斷發(fā)揮著其重要的作用。長期以來,人們不斷地探索濾波器的設(shè)計與實現(xiàn)方法,努力地追求著簡化設(shè)計、減少體積、改善性能、提高靈活性和可靠性、便于制作等問題。隨著微電子學(xué)迅速發(fā)展,以單個芯片進(jìn)行FIR濾波器的設(shè)計正在發(fā)展和應(yīng)用中。如今FIR濾波器的硬件設(shè)計有多種實現(xiàn)方法。第一種是采用單片機(jī)來實現(xiàn),但單片機(jī)的處理速度比較慢。第二種是采用專用的DSP芯片,但是DSP的串行指令執(zhí)行發(fā)式,使其工作速度和效率大打折扣,因此當(dāng)濾波器的系數(shù)增加或字長增長時,計算時間會成倍增加,從而降低了最大有效數(shù)據(jù)采樣率。而且在一些高速的應(yīng)用中,系統(tǒng)性能不斷增長,而DSP性能的提高卻落后于需求的增長。第三種是采用市場上通

11、用的FIR濾波器集成電路,但由于它的通用性,很難滿足設(shè)計者獨特的要求。第四種是采用可編程邏輯器件(PLD)的方法來實現(xiàn)??删幊踢壿嬈骷陔娮蛹夹g(shù)領(lǐng)域中的應(yīng)用,為數(shù)字硬件電路系統(tǒng)的設(shè)計帶來了極大的靈活性。由于可編程邏輯器件可以通過軟件編程而對其硬件結(jié)構(gòu)和工作方式進(jìn)行重構(gòu),使得硬件的設(shè)計可以如同軟件設(shè)計那樣方便快捷。這一切極大地改變了傳統(tǒng)的數(shù)字硬件電路系統(tǒng)設(shè)計方法、設(shè)計過程、乃至設(shè)計觀念。縱觀可編程邏輯器件的發(fā)展史,它在結(jié)構(gòu)原理、集成規(guī)模、下載方式、邏輯設(shè)計手段等方面的每一次進(jìn)步都為現(xiàn)代電子設(shè)計技術(shù)的革命與發(fā)展提供了不可或缺的強(qiáng)大動力。自從1989年美國Xilinx公司率先發(fā)明FPGA(現(xiàn)場可編程

12、門陣列)的概念以來,F(xiàn)PGA技術(shù)以其現(xiàn)場設(shè)計、現(xiàn)場修改、現(xiàn)場驗證、現(xiàn)場實現(xiàn)的可達(dá)數(shù)萬門級的數(shù)字系統(tǒng)單片化的應(yīng)用優(yōu)勢,隨著亞微米CMOS集成電路制作技術(shù)的成熟和發(fā)展,器件集成度不斷增大,器件價格不斷下降的趨勢,逐漸受到各國電子系統(tǒng)應(yīng)用領(lǐng)城的設(shè)計工程師的廣泛關(guān)注和歡迎。時至今口,F(xiàn)PGA技術(shù)不再是ASIC技術(shù)領(lǐng)域的一個點綴和補(bǔ)充,而躍為電子應(yīng)用(包括通訊技術(shù)、計算機(jī)應(yīng)用、自動控制、儀器儀表、ASIC設(shè)計)等諸多領(lǐng)域受歡迎的實用技術(shù),成為數(shù)字系統(tǒng)科研實驗、樣機(jī)試制、小批量產(chǎn)品即時實現(xiàn)的最佳途徑。1.3論文研究的目的和主要內(nèi)容本文研究的主要目的是為數(shù)字信號處理實驗室設(shè)計出性能指標(biāo)優(yōu)良的濾波器,使其在復(fù)

13、雜的環(huán)境中快速過濾掉無用信號及噪聲。并根據(jù)此目的進(jìn)行進(jìn)一步的研究及拓展。為了確定使用的方法在設(shè)計FIR濾波器上是有效并且是高效的,因此在本文中對比了兩種不同的FIR濾波器的設(shè)計方法,通過對比得知,采用查找表的FIR濾波器無論在速度上和所占用的資源上均優(yōu)于普通的設(shè)計方式,因此可以確定采用查找表來設(shè)計FIR濾波器占有優(yōu)勢。本文主要內(nèi)容分為五部分:第一章簡要介紹背景、選題以及文章的概要;第二章對FIR濾波器的原理,尤其是線性相位的FIR濾波器進(jìn)行了詳細(xì)的說明;第三章對FPGA進(jìn)行了介紹,并具體說明在設(shè)計中用到的數(shù)字及部件在設(shè)計中是如何實現(xiàn)的;第四章進(jìn)行具體的設(shè)計論述,詳細(xì)說明了每一步是如何進(jìn)行并給出

14、了對比結(jié)果;第五章對全文進(jìn)行了總結(jié)并指出本設(shè)計的發(fā)展方向。第二章 FIR濾波器的結(jié)構(gòu)及設(shè)計數(shù)字濾波器通常都是應(yīng)用于修正或改變時域或頻域中信號的屬性。最為普通的數(shù)字濾波器就是線性時間不變量(linear time- invariant ,LTI)濾波器。LTI與其輸入信號之間相互作用,經(jīng)過一個稱為線性卷積的過程。表示為y=fx,其中f是濾波器的脈沖響應(yīng),x是輸入信號,而y是卷積輸出。線性卷積過程的正式定義如下:LTI數(shù)字濾波器通常分成有限脈沖響應(yīng)(finite impulse response,也就是FIR)和無限脈沖響應(yīng)(infinite impulse response,也就是IIR)3兩大

15、類。顧名思義,FIR濾波器由有限個采樣值組成,將上述卷積的數(shù)量降低到在每個采用時刻為有限個。而IIR濾波器需要執(zhí)行無限數(shù)量次卷積。研究數(shù)字濾波器的動機(jī)就在于它們正日益成為一種主要的DSP操作。數(shù)字濾波器正在迅速的代替?zhèn)鹘y(tǒng)的模擬濾波器,后者是利用RLC元器件和運算放大器實現(xiàn)的。模擬原型設(shè)計只能應(yīng)用在IIR設(shè)計之中,而F1R通常采用直接的計算機(jī)規(guī)范和算法進(jìn)行分析的。2.1 FIR數(shù)字濾波器基礎(chǔ)數(shù)字濾波器(DF)是個離散系統(tǒng),它所處理的對象是用序列表示離散信號或數(shù)字信號。DF的因果離散系統(tǒng)函數(shù)可表示成: (2-1)其常系數(shù)線性差分方程為: (2-2)可以看出,數(shù)字濾波器是把輸入和之前輸出的序列經(jīng)過一

16、定的運算變換成輸出的序列。大多數(shù)普通的數(shù)字濾波器都是LTI濾波器,對于FIR系統(tǒng),其系統(tǒng)函數(shù)僅有零點(除Z=0的極點外),因此FIR系統(tǒng)的差分方程可以表示為: (2-3)轉(zhuǎn)移函數(shù)為: (2-4)由(2-3)式可知,系統(tǒng)的脈沖響應(yīng)是因果序列,因為其輸出僅與即時輸入以及過去的輸入數(shù)據(jù)有關(guān),而與過去的輸出數(shù)據(jù)沒有直接的關(guān)系,所以FIR濾波器是因果的,是物理可實現(xiàn)的系統(tǒng),因而它在實際中往往采用非遞歸(無反饋作用)形式的結(jié)構(gòu)來實現(xiàn)。人們把用非遞歸形式實現(xiàn)的FIR濾波器叫做非遞歸型濾波器。而且,由(2-3)式還可以知道,此系統(tǒng)的脈沖響應(yīng)是絕對可加的,所以FIR濾波器總是穩(wěn)定的。FIR濾波器相對于IIR濾波

17、器有很多獨特的優(yōu)越性,在保證滿足濾波器幅頻響應(yīng)的同時,還可以獲得嚴(yán)格的線性相位特性。對于非線性FIR濾波器一般可以用IIR濾波器來替代。由于在數(shù)據(jù)通信、語音信號處理、圖像處理以及自適應(yīng)等領(lǐng)域往往要求信號在傳輸過程中不允許出現(xiàn)明顯得相位失真,而IIR存在明顯得頻率色散的問題,所以FIR濾波器得到了更廣泛的應(yīng)用。2.2 FIR數(shù)字濾波器的基本結(jié)構(gòu)FIR濾波器的構(gòu)成形式主要有直接型、級聯(lián)型、線性相位FIR濾波器的結(jié)構(gòu)等,下面分別加以討論。1.直接型結(jié)構(gòu)圖2-1給出了N階LTI型FIR濾波器的圖解??梢钥闯鯢IR濾波器是有一個 “抽頭延遲線”加法器和乘法器的集合構(gòu)成的。傳給每個乘法器的操作數(shù)就是一個F

18、IR系數(shù),顯然也可以稱作“抽頭權(quán)重” 因此該結(jié)構(gòu)也稱為“橫向濾波器” 。圖2-1直接型結(jié)構(gòu)的FIR濾波器直接FIR模型的一個變種稱為轉(zhuǎn)置式FIR濾波器,它是根據(jù)轉(zhuǎn)置定理定義如果將網(wǎng)絡(luò)中所有支路的方向倒轉(zhuǎn),并將輸入x (n)和輸出y (n)互換,則其系統(tǒng)傳遞函數(shù)H(z)不變。其轉(zhuǎn)置結(jié)構(gòu)見圖2-24。圖2-2轉(zhuǎn)置結(jié)構(gòu)的FIR濾波器轉(zhuǎn)置式濾波器通常是指FIR濾波器的實現(xiàn)。該濾波器的優(yōu)點在于我們不再需要給x(n)提供額外的移位寄存器,而且也不必要為達(dá)到高吞吐量給乘積的加法器(樹)添加額外的流水線級。2.級聯(lián)型如將(2-4)式分解為二階實系數(shù)因子形式:便可得二階級聯(lián)結(jié)構(gòu)。這種結(jié)構(gòu)每一節(jié)控制一對一零點,因

19、而在需要控制傳輸零點時可以采用。但相應(yīng)的濾波系數(shù)增加,乘法運算次數(shù)增加,因此需要較多的存儲器,運算時間也比直接型增加。3.線性相位FIR系統(tǒng)的結(jié)構(gòu)在許多應(yīng)用領(lǐng)域,例如通信和圖像處理中,在一定頻率范圍內(nèi)維持相位的完整性是一個期望的系統(tǒng)屬性。因此,設(shè)計能夠建立線性相位頻率功能的濾波器是必須遵循的規(guī)范。系統(tǒng)相位線性度的標(biāo)準(zhǔn)尺度就是“組延遲”,其定義為5: (2-5)完全理想的線性相位濾波器對于一定頻率范圍的組延遲是一個常數(shù)??梢钥吹饺绻麨V波器是對稱或者反對稱的,就可以實現(xiàn)線性相位。線性相位(相移)表示一個系統(tǒng)的相頻特性與頻率成正比,由于不同頻率傳輸速度都一樣,所以信號通過它產(chǎn)生的時間延遲等于常數(shù)k,

20、所以不出現(xiàn)相位失真,對一個數(shù)字系統(tǒng)來說,即。假設(shè)一個離散時間系統(tǒng)的幅頻特性等于1,則當(dāng)信號x(n)通過該系統(tǒng)后,其輸出y(n)的頻率特性:所以y(n) = x(n-k),這樣輸出y (n)等于輸入在時間上的唯一,達(dá)到了無失真輸出的目的??梢宰C明,線性相位條件為:h(n)=h(N-1-n) 偶對稱h(n)=-h(N-1-n)奇對稱即如果單位脈沖響應(yīng)h (n)為實數(shù),且具有偶對稱或奇對稱性,則FIR數(shù)字濾波器具有嚴(yán)格的線性相位特性。其對稱中心在處。當(dāng)N分別為奇數(shù)和偶數(shù)時,其網(wǎng)絡(luò)結(jié)構(gòu)可以分別用圖2-3 (a) , (b)的信號流圖來實現(xiàn)。由該信號流圖可以看出,線性相位結(jié)構(gòu)比圖2-1的直接實現(xiàn)形式少用

21、個乘法器(或乘法運算)。圖2-3a 線性相位FIR濾波器 (奇數(shù)階)圖2-3b 線性相位FIR濾波器(偶數(shù)階)2.3 FIR數(shù)字濾波器的設(shè)計 FIR濾波器設(shè)計方法是以直接逼近所需離散時間系統(tǒng)的頻率響應(yīng)為基礎(chǔ)。設(shè)計方法包括窗函數(shù)法和最優(yōu)化方法(等同紋波法),其中窗函數(shù)方法是設(shè)計FIR數(shù)字濾波器是最常用的方法之一。1.窗函數(shù)法任何數(shù)字濾波器的頻率響應(yīng)都是w的周期函數(shù),它的傅立葉級數(shù)展開式為: (2-6) (2-7)傅立葉系數(shù)h(n)實際上就是數(shù)字濾波器的沖擊響應(yīng),由于h(n)可能是無限長序列且為非因果響應(yīng),是物理不可實現(xiàn)的。為此要尋找一個因果的h(n),在相應(yīng)的誤差準(zhǔn)則下最近逼近h(n)。窗函數(shù)法

22、設(shè)計的初衷是使設(shè)計的濾波器頻率特性在頻域均方誤差最小意義下進(jìn)行逼近,即窗函數(shù)法就是用被稱為窗函數(shù)的有限加權(quán)序列GN(n)來修正式(2-7),則所需h (n)表示為:h(n)=hd(n)GN(n) (2-8)GN(n)是有限長序列,當(dāng)nN-1及n0時,GN(n)=0,這里我們僅以沖激響應(yīng)對稱即h(n)=h(N-1-n)(n=0,1,2,.N-1)時低通濾波器為例進(jìn)行說明。低通濾波器的頻率響應(yīng)函數(shù)如下式所示: (2-9)在時為0,其中w為對抽樣頻率歸一化的角頻率,為歸一化截止角頻率。利用反傅立葉變換公式求出式(2-9)對應(yīng)的沖激響應(yīng)h(n)為: (2-10)幾種窗函數(shù)及其窗函數(shù)選擇原則:設(shè)計FIR

23、濾波器常用的窗函數(shù)有:矩形窗函數(shù)、三角窗(bartlett)函數(shù)、漢寧(Hanning)窗函數(shù)、海明(Hamming)窗函數(shù)、布萊克曼(Blackman)窗函數(shù)和凱塞(Kaiser)窗函數(shù),具體性能指標(biāo)可參看表2.l5。表2.1窗函數(shù)性能指標(biāo)比較窗的類型最大旁瓣幅度(相對值)過渡帶寬度最大逼近誤差20等效kaiser窗矩形-13-210Barlett-25-251.33Hanning-31-443.86Hamming-41-534.86Blackman-57-747.04窗函數(shù)的選擇原則是:(1)具有較低的旁瓣幅度,尤其是第一旁瓣幅度。(2)旁瓣幅度下降速度要快,以利于增加阻帶衰減。(3)主瓣

24、寬度要窄,以獲得較陡的過渡帶。通常上述幾點很難同時滿足,當(dāng)選用主瓣寬度較窄時,雖然得到較陡的過渡帶,但通帶和阻帶的波動明顯增加;當(dāng)選用最小的旁瓣幅度時,雖然能得到勻滑的幅度響應(yīng)和較小的阻帶波動,但是過渡帶加寬。因此,實際選用的窗函數(shù)往往是它們的折中。在保證主瓣寬度達(dá)到一定要求的情況下,適當(dāng)?shù)貭奚靼甑膶挾葋頁Q取旁瓣波動的減少。2.等同紋波設(shè)計方法窗函數(shù)存在某些缺陷。首先,在設(shè)計中不能將邊緣頻率和精確的給定;也就是意味著在設(shè)計完成之后無論得到何值都必須接受。其次,不能夠同時標(biāo)定紋波因子和;在窗函數(shù)設(shè)計法上只能設(shè)定=。最后,近似誤差在頻帶區(qū)間上不是均勻分布的,在靠近頻帶邊緣誤差愈大,遠(yuǎn)離頻帶邊緣誤

25、差愈小。一種非常有效的解決這種問題的FIR濾波器就是等同紋波FIR濾波器。對于線性相位FIR濾波器來說,有可能導(dǎo)得一組條件,對這組條件能夠證明,在最大近似誤差最小化的意義下,這個設(shè)計時最優(yōu)的。具有這種性質(zhì)的濾波器就稱為等同紋波濾波器,因為近似誤差在通帶和阻帶上都是均勻分布的。等同紋波法通常都是采用Park-McClellan迭代方法來實現(xiàn)的,與直接頻率法相比,等同紋波設(shè)計法的優(yōu)點在于通頻帶和抑制帶偏差可以分別指定,且實現(xiàn)相同指標(biāo)的濾波器時所用的濾波器階數(shù)較小。3.借助Matlab設(shè)計FIR濾波器在Matlab的SIGNAL PROCESSING TOOLBOX中有一個專門的數(shù)字濾波器設(shè)計軟件模

26、塊FDA (Filter Design&Analysis Tool),其功能強(qiáng)大,可以設(shè)計多種濾波器,而可以采用多種方法設(shè)計FIR濾波器,包括窗函數(shù)法和等同紋波法,它使用起來非常直觀有效,在輸入設(shè)計要求和設(shè)計方法選擇后,計算出各階系數(shù),并以圖形的直觀方式顯示幅頻、相頻、沖擊響應(yīng)和零極點圖。它還可以把各階系數(shù)以二進(jìn)制補(bǔ)碼的形式導(dǎo)出到文本文件中去,方便了系數(shù)的轉(zhuǎn)換。 第三章 FPGA在設(shè)計中的具體應(yīng)用在利用FPGA進(jìn)行FIR濾波器研究時,為了確保設(shè)計的順利完成,必須對一些問題仔細(xì)考慮。在本章中將詳細(xì)討論基于FPGA設(shè)計硬件電路的方式優(yōu)于傳統(tǒng)的硬件電路的設(shè)計模式,F(xiàn)PGA的結(jié)構(gòu)和用到的器件的結(jié)構(gòu)、F

27、PGA的開發(fā)環(huán)境及開發(fā)語言,在本設(shè)計中數(shù)是如何具體表示的和運算在FPGA中是如何完成的,以及在FIR濾波器的設(shè)計中重要部件的設(shè)計方法。3.1硬件電路的設(shè)計方式隨著計算機(jī)軟件、硬件和集成電路制造技術(shù)的飛速發(fā)展,以及數(shù)字硬件設(shè)計復(fù)雜度快速增長和設(shè)計成果可繼承性的需要,對數(shù)字硬件系統(tǒng)的設(shè)計方法產(chǎn)生了極大的影響,傳統(tǒng)的以線路圖為基礎(chǔ)的數(shù)字硬件系統(tǒng)設(shè)計方法正逐步被以硬件描述語言為基礎(chǔ)的設(shè)計方法所取代。傳統(tǒng)的硬件電路設(shè)計方法在傳統(tǒng)的硬件電路設(shè)計中,設(shè)計者需要先了解整個系統(tǒng)的原理,畫出相應(yīng)的原理圖,再根據(jù)原理圖生成相應(yīng)的線路圖,還需要對軟件生成的線路圖進(jìn)行布線,布線好的圖再拿到工廠生產(chǎn)電路板,再按原理圖和電

28、路圖將相應(yīng)的元件插入到PCB板中,焊接,整體調(diào)試等6。整個過程很繁雜,有點像搭積木的性質(zhì),設(shè)計者的許多時間會被無謂的浪費,而且設(shè)計的周期非常長,并且要求設(shè)計者具有過硬的電子電路知識和設(shè)計開發(fā)經(jīng)驗.從上述描述看出,系統(tǒng)硬件的設(shè)計是從選擇具體元器件開始的,并用這些元器件進(jìn)行邏輯電路設(shè)計,即從最底層開始設(shè)計,完成系統(tǒng)各獨立功能模塊設(shè)計,然后再將各功能模塊連接起來,直到最高層,完成整個系統(tǒng)的硬件設(shè)計。這是一種自底而上的設(shè)計模式。由于進(jìn)行仿真和調(diào)試的儀器一般為系統(tǒng)仿真器、邏輯分析儀和示波器等,所以在傳統(tǒng)硬件電路設(shè)計中,仿真和調(diào)試只能在系統(tǒng)硬件設(shè)計完成后期進(jìn)行,若系統(tǒng)設(shè)計存在布線不合理或設(shè)計不滿足需要或器

29、件的問題也只能在后期出現(xiàn),因此在整個設(shè)計過程中對系統(tǒng)設(shè)計人員有較高的要求。用上述設(shè)計方法設(shè)計的數(shù)字硬件系統(tǒng)最后形成的設(shè)計文件,主要是由若干張電路原理圖構(gòu)成的文件。在電路原理圖中詳細(xì)標(biāo)注了各邏輯單元、器件的名稱和相互之間的信號連接關(guān)系。對于小的系統(tǒng),這種電路原理圖可能只要幾張或十幾張就行了。但是,若系統(tǒng)比較大,硬件比較復(fù)雜,那么這種電原理圖可能需要幾十、甚至上百張或更多。這么多的電路原理圖給設(shè)計歸檔、閱讀、修改和使用帶來很大的不便。更主要的是在傳統(tǒng)設(shè)計過程中,設(shè)計者的知識與經(jīng)驗若不夠豐富,可能會造成設(shè)計的失誤和偏差,這樣就可能造成設(shè)計過程中的多次反復(fù),這將延長設(shè)計周期。而且由于設(shè)計是這種一級級搭

30、上來的,對后期的擴(kuò)展帶來了很大的不便,若設(shè)計者想更改其中的一部分或增加一些功能,就一切要從頭開始,這很不利于設(shè)計的更改和擴(kuò)展。3.1.2基于FPGA的硬件電路設(shè)計方法基于FPGA來設(shè)計電路與傳統(tǒng)的方法有本質(zhì)的不同,它摒棄了傳統(tǒng)設(shè)計中的不靈活性,其可以通過軟件編程的方法而對其硬件結(jié)構(gòu)和工作方式進(jìn)行重構(gòu),使得硬件的設(shè)計可以如同軟件設(shè)計那樣方便快捷,從這一點上來說,軟件設(shè)計師只要具備一定的電子設(shè)計思想,就完全可以轉(zhuǎn)到此項工作。FPGA這一切極大地改變了傳統(tǒng)的數(shù)字硬件電路系統(tǒng)設(shè)計方法、設(shè)計過程、乃至設(shè)計觀念。隨著FPGA的不斷發(fā)展,自身功能的不斷完善和計算機(jī)輔助設(shè)計技術(shù)的提高,在現(xiàn)代電子系統(tǒng)設(shè)計領(lǐng)域中

31、的電子設(shè)計自動化(EDA)便應(yīng)運而生了,而電子設(shè)計自動化的關(guān)鍵技術(shù)之一就是采用硬件描述語言(VHDL)來設(shè)計數(shù)字硬件系統(tǒng)。這樣,傳統(tǒng)的數(shù)字硬件電路設(shè)計模式,就將被人們慢慢地淘汰,而可編程邏輯器件的使用將給電子電路的設(shè)計帶來新的活力7。在本文中使用的是VHDL語言,最早是由美國國防部為描述電子電路所開發(fā)的一種語言,它可以很方便地描述一個系統(tǒng)的功能,也可以詳細(xì)描述一個器件的狀態(tài)。EDA自上而下的設(shè)計方法具有如下的特點8:1.設(shè)計人員可自行設(shè)計所需的功能模塊,使電路設(shè)計更趨合理,其體積功耗也可大為縮減;2.用系統(tǒng)早期仿真可以發(fā)現(xiàn)設(shè)計中存在的問題,可大大縮短設(shè)計周期,降低費用;3.降低了硬件電路設(shè)計難

32、度,避免了很多繁雜的工作;4.要設(shè)計文件是用VHDL語言編寫的源文件,資料量小,便于保存,可繼承性好且閱讀方便。從上面的對比可以看出,采用FPGA設(shè)計硬件電路存在極大的優(yōu)越性,省時、省力、節(jié)約成本、靈活性好且可移植性好。3.2 FPGA簡介FPGA的發(fā)展非常迅速,形成了各種不同的結(jié)構(gòu)。按邏輯功能塊的大小分類,可分為細(xì)粒度FPGA和粗粒度FPGA。細(xì)粒度FPGA的邏輯功能塊小,資源可利用度高,但連線和開關(guān)多,速度慢;粗粒度FPGA的邏輯功能模塊大,功能強(qiáng),但資源不能充分利用。從邏輯功能塊的結(jié)構(gòu)上分類,可分為查找表結(jié)構(gòu)、多路開關(guān)結(jié)構(gòu)和多級與非門結(jié)構(gòu)。根據(jù)FPGA的內(nèi)部連線的結(jié)構(gòu)不同,可分為分段互連

33、型FPGA和連續(xù)互連型FPGA兩種。分段互連型FPGA中具有多種不同長度的金屬線,各金屬線段之間通過開關(guān)矩陣或反熔絲編程連接,走線靈活方便,但走線延時無法預(yù)測;連續(xù)互連型FPGA是利用相同長度的金屬線,連接與距離遠(yuǎn)近無關(guān),布線延時是固定和可預(yù)測的。3.2.1 FPGA器件的選擇目前全世界生成PLD的廠家很多,但比較大的廠家有: Altera , Xilinx,Lattice和Actelo Altera是目前最大的PLD供應(yīng)商之一,Xilinx是FPGA的發(fā)明者,最大的PLD供應(yīng)商之一,Lattice是ISP技術(shù)的發(fā)明者,Actel提供軍品及宇航級產(chǎn)品。由于Altera公司的PLD具有高性能、高

34、密度集成、高性能價格比、開發(fā)周期短、對器件優(yōu)化的IP解決方案和在線可編程能力,而且Altera公司的Max plus II開發(fā)平臺也被認(rèn)為是最優(yōu)秀的開發(fā)平臺之一,所以在本文的設(shè)計中選用Altera公司的產(chǎn)品來進(jìn)行設(shè)計。圖3-1說明了一個10萬門器件的開發(fā)周期。設(shè)計思想設(shè)計輸入設(shè)計處理設(shè)計仿真器件編程系統(tǒng)測試 少于1小時 530分鐘 2小時 少于2分鐘圖3-1 用Altera器件開發(fā)10萬邏輯門的一個典型開發(fā)周期Altera的PLD器件包括APEX20K, APEXII、Excalibur,ACEXIK, FLEX10K, FLEX8000、FLEX6000、MAX9000、MAX7000、Me

35、rcury, Stratix、MAX3000和Classic系列。根據(jù)各種器件的比較和實際的應(yīng)用情況,在本設(shè)計中選用FLEX10K系列器件。FLEX10K是工業(yè)界第一個嵌入式的可編程邏輯器件,采用可重構(gòu)的CMOS SRAM工藝,把連續(xù)的快速通道互連與獨特的嵌入式陣列相結(jié)合,同時也結(jié)合了眾多可編程器件的優(yōu)點來完成普通門陣列的宏功能。由于其具有高密度、低成本、低功率等特點,所以脫穎而出稱為當(dāng)今Altera PLD中應(yīng)用最好的器件系列。其集成度已達(dá)到25萬門。它能讓設(shè)計人員輕松開發(fā)出集存儲器、數(shù)字信號處理器及特殊邏輯包含32位多總線系統(tǒng)等強(qiáng)大功能于一身的芯片。FLEX10K系列器件主要由嵌入式陣列塊

36、、邏輯陣列塊、快速通道互連和I/0單元四部分組成。如圖3-2所示。由圖可以看出,一組LE構(gòu)成一個LAB, LAB是排成行和列的,每一行也包含一個EAB。 LAB和EAB是由快速通道連接的。IOE位于快速通道連線的行和列的兩端。圖3-2 FLEX10K元器件內(nèi)的總線總體結(jié)構(gòu)嵌入式陣列由一系列嵌入式陣列塊(EAB)構(gòu)成。當(dāng)用來實現(xiàn)有關(guān)存儲功能時,每個EAB提供2048位用來構(gòu)造RAM, ROM, FIFO或雙口RAM等功能。當(dāng)用來實現(xiàn)乘法器、微控制器、狀態(tài)機(jī)以及DSP等復(fù)雜邏輯時,每個EAB可以貢獻(xiàn)100到600個門,EAB可以單獨使用,也可以組合起來使用。邏輯陣列由一系列邏輯陣列塊(LAB)構(gòu)成

37、。每個LAB包含八個LE和一些局部互連。每個LE含有一個四輸入查找表(LUT)、一個可編程觸發(fā)器、進(jìn)位鏈和級聯(lián)鏈。八個LE可以構(gòu)成一個中規(guī)模的邏輯塊,如八位計算器、地址譯碼器和狀態(tài)機(jī)。多個LAB組合起來可以構(gòu)成更大的邏輯塊。每個LAB代表大約96個可用邏輯門。器件內(nèi)部信號的互連和器件引腳之間的信號互連由快速通道連線提供,快速通道互連是一系列貫通器件長、寬的快速連續(xù)通道。3.2.2 FPGA的開發(fā)語言隨著半導(dǎo)體技術(shù)的迅速發(fā)展,在現(xiàn)代數(shù)字系統(tǒng)設(shè)計中,現(xiàn)場可編程器件(FPGA和CPLD)的使用越來越廣泛。與此同時,基于大規(guī)模可編程邏輯器件的EDA(電子設(shè)計自動化)硬件解決方案也被廣泛采用。對于復(fù)雜的

38、系統(tǒng)設(shè)計,必須依靠一種高層的邏輯輸入方式來避免開發(fā)中的錯誤和縮短開發(fā)周期。這樣就產(chǎn)生了硬件描述語言HDL(Hardware Description Language),其中符合IEEE-1076標(biāo)準(zhǔn)的VHDL的應(yīng)用成為新一代EDA解決方案中的首選9。因此,VHDL的應(yīng)用必將成為當(dāng)前以及未來EDA解決方案的核心,更是整個電子邏輯系統(tǒng)設(shè)計的核心。VHDL是隨著可編輯邏輯器件(PLD)的發(fā)展而發(fā)展起來的一種硬件描述語言。它是1980年美國國防部VHSIC(超高速集成電路)計劃的一部分,1987年成為IEEE (The Institute of Electrical and Electronics E

39、ngineers)的工業(yè)標(biāo)準(zhǔn)。1988年,美國Milstd454規(guī)定所有為美國國防部設(shè)計的ASIC產(chǎn)品必須采用VHDL語言來描述。自從IEEE公布了VHDL的標(biāo)準(zhǔn)版本(IEEE-1076)后,數(shù)個EDA公司相繼推出了自己的VHDL設(shè)計環(huán)境,或宣布自己的設(shè)計工具可以和VHDL接口。此后VHDL在電子設(shè)計領(lǐng)域得到了廣泛的接受,并逐步取代了原來的非標(biāo)準(zhǔn)硬件描述語言。1993年,IEEE對VHDL進(jìn)行了修訂,從更高的抽象層次和系統(tǒng)描述能力上擴(kuò)展VHDL的內(nèi)容,公布了新版本的VHDL,即IEEE標(biāo)準(zhǔn)的1076-1993版本。現(xiàn)在,VHDL作為IEEE的工業(yè)標(biāo)準(zhǔn)硬件描述語言,得到了眾多EDA公司的支持,在

40、電子工程領(lǐng)域,己成為事實上的通用硬件描述語言。有專家認(rèn)為,在新的世紀(jì)中,VHDL語言將承擔(dān)起大部分的數(shù)字系統(tǒng)設(shè)計任務(wù)。VHDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)、行為、功能和接口。除了含有許多具有硬件特征的語句外,VHDL的語言形式和描述風(fēng)格與句法和一般的計算機(jī)高級語言十分相似。應(yīng)用VHDL進(jìn)行工程設(shè)計的優(yōu)點是多方面的:1.與其他語言相比,VHDL具有強(qiáng)大的行為描述能力,在EDA工具和VHDL綜合器的支持下,可以避開具體的器件結(jié)構(gòu),從邏輯行為上描述和設(shè)計大規(guī)模電子系統(tǒng);2.VHDL中豐富的仿真語句和庫函數(shù),使得在任何大系統(tǒng)的設(shè)計早期(設(shè)計尚未完成),就能查驗設(shè)計系統(tǒng)的功能可行性,隨時可對設(shè)計進(jìn)行仿真模

41、擬;3.VHDL語句的行為描述能力和程序結(jié)構(gòu)決定了它具有支持大規(guī)模設(shè)計的分解和己有設(shè)計的再利用功能;4.對于用VHDL完成的一個確定的設(shè)計,可以利用EDA工具進(jìn)行邏輯綜合和優(yōu)化,并自動地把VHDL描述設(shè)計轉(zhuǎn)變?yōu)殚T級網(wǎng)表(根據(jù)不同的實現(xiàn)芯片)。這種方式突破了門級設(shè)計的瓶頸,極大地減少了電路設(shè)計的時間和可能發(fā)生的錯誤,降低了開發(fā)成本。應(yīng)用EDA工具的邏輯優(yōu)化功能,可以自動地的把一個綜合后的設(shè)計變成一個更小、更高速的電路系統(tǒng)。反過來,設(shè)計者還可以容易地從綜合和優(yōu)化后的電路獲得設(shè)計信息,返回去更新VHDL的設(shè)計描述,使之更為完善;5.VHDL對設(shè)計的描述具有相對獨立性,設(shè)計者可以不懂硬件的結(jié)構(gòu),也不必

42、管最終設(shè)計實現(xiàn)的目標(biāo)器件是什么,而進(jìn)行獨立的設(shè)計;6.由于VHDL具有類屬描述語句和子程序調(diào)用等功能,對于已完成的設(shè)計,在不改變源程序的條件下,只需改變類屬參量或函數(shù),就能輕易的改變設(shè)計的規(guī)模和結(jié)構(gòu)。可以預(yù)計,隨著VHDL-93標(biāo)準(zhǔn)的廣泛應(yīng)用以及可編程邏輯器件的不斷推出,VHDL必將在未來的EDA解決方案中發(fā)揮不可替代的作用。3.2.3 FPGA的開發(fā)環(huán)境在使用ALTERA器件時,ALTERA建議用戶使用其集成環(huán)境軟件,Max plus II是一個非常優(yōu)秀的PLD設(shè)計開發(fā)軟件,它集設(shè)計、編譯、配置、下載調(diào)度仿真于一體,能夠提供完善的、高度集成的開發(fā)環(huán)境的軟件,能夠完成ALTERA器件具有的全部

43、優(yōu)點,是FLEX10K系列很好的開發(fā)工具。Max Plus II有多種設(shè)計輸入方式,主要有:原理圖輸入(Graphic Design Entry)、硬件描述語言輸入(AHDL Design Entry, VHDL Design Entry, Verilog DHL Design Entry)、波形輸入(Waveform Design Entry)等。我們可以根據(jù)不同的設(shè)計層次采用不同的設(shè)計輸入方式,這樣有助于并行設(shè)計和幫助構(gòu)思。分層的設(shè)計方法易于遞增式設(shè)計,即先對單個的子模塊進(jìn)行設(shè)計、實現(xiàn)和驗證,然后將子模塊建立起頂層設(shè)計文件。Max Plus II軟件的層次顯示程序可以顯示整個設(shè)計方案的層次

44、結(jié)構(gòu),并允許設(shè)計者穿越層次,自動打開適合每個設(shè)計文件的編輯程序,因此,可以方便地利用此性能查看和修改底層設(shè)計文件。 一般,適用Max Plus II開發(fā)可簡化為以下幾步10:1.設(shè)計輸入:在傳統(tǒng)設(shè)計中,設(shè)計人員是應(yīng)用傳統(tǒng)的原理圖輸入方法來開始設(shè)計的。自90年代初,Verilog, VHDL, AHDL等硬件描述語言的輸入方法在大規(guī)模設(shè)計中得到了廣泛應(yīng)用。2.設(shè)計編譯:設(shè)計輸入之后就有一個從高層次系統(tǒng)行為設(shè)計向門級邏輯電路設(shè)轉(zhuǎn)化翻譯過程,即把設(shè)計輸入的某種或某幾種數(shù)據(jù)格式(網(wǎng)表)轉(zhuǎn)化為軟件可識別的某種數(shù)據(jù)格式(網(wǎng)表)。3.設(shè)計仿真:需要利用在布局布線中獲得的精確參數(shù)再次驗證電路的時序。4.下載:

45、當(dāng)上述幾步均沒有問題的時候,將代碼下載到相應(yīng)的芯片中即可。由于Max Plus II畢竟不同于軟件的平臺,它所仿真出來的波形只是0, 1的組合,并不能十分清楚的判斷是否符合要求,這就要求在用硬件描述語言設(shè)計之前,應(yīng)對算法進(jìn)行軟件的編程模擬和可行性分析的研究,軟件環(huán)境可采用Matlab。在Matlab的數(shù)字信號處理工具箱包含了各種經(jīng)典的和現(xiàn)代的數(shù)字信號處理技術(shù),是一個非常優(yōu)秀的算法研究與輔助設(shè)計的工具。所以在用硬件描述語言對其進(jìn)行描述時,先根據(jù)工程實際的要求,選擇Matlab中的窗函數(shù)-比較常用的是矩形窗,Bartlet窗,Harming窗,Hamming窗,Kaiser窗-來求得濾波器的系數(shù),

46、并編寫相應(yīng)的程序來檢驗所求得的系數(shù)是否符合最終的要求,以此來縮短設(shè)計周期,減少工作量,提高設(shè)計成功率。第四章 基于FPGA 設(shè)計FIR濾波器在前面幾章討論了基于FPGA設(shè)計FIR濾波器的相關(guān)原理及其中一些關(guān)鍵部件的設(shè)計。在本章中將針對前面提到的原理和方法進(jìn)行進(jìn)一步的應(yīng)用和組合。4.1指標(biāo)的確定在本文的設(shè)計中,所確定的指標(biāo)如下:采樣頻率Fs: 12. 5MHz截止頻率Fc: 2MHz最小阻帶衰減As: 50db濾波器階數(shù):16輸入數(shù)據(jù)寬度:8bit輸出數(shù)據(jù)寬度:26bit4.2 Matlab在設(shè)計中的應(yīng)用 基于FPGA來設(shè)計FIR濾波器,由于設(shè)計的平臺是Max plus II,不同于軟件開發(fā)的環(huán)

47、境,濾波器的效果并不能明確的顯示,因此,需要在設(shè)計之前用軟件的平臺來仿真分析。 Matlab簡介 Matlab語言是當(dāng)今國際上科學(xué)界(尤其是自動控制領(lǐng)域)最具影響力、也是最有活力的軟件。它起源于矩陣運算,并已經(jīng)發(fā)展成一種高度集成的計算機(jī)語言。它提供了強(qiáng)大的科學(xué)運算、靈活的程序設(shè)計流程、高質(zhì)量的圖形可視化與界面設(shè)計、便捷的與其他程序和語言接口的功能。Matlab語言在各國高校與研究單位起著重大的作用11。 Matlab語言由美國The Math Works開發(fā), 2003年推出了其全新的Matlab6. 5. 1正式版。目前最新版本Release 14 (Matlab7. 0)的Service

48、Pack 1, 2004年9月正式推出。Matlab語言中提供了數(shù)字信號處理工具箱,使數(shù)字信號處理較以前方便使用且效果更好。在Matlab中提供了一些濾波器的函數(shù),使FIR濾波器的運算更加方便和快速。在Matlab中提供的濾波函數(shù)有firl (),此函數(shù)以經(jīng)典的方法實現(xiàn)加窗線性相位FIR數(shù)字濾波器設(shè)計,可以設(shè)計出低通、高通、帶通和帶阻濾波器; fir2()函數(shù)設(shè)計的FIR濾波器,其濾波器的頻率特性由矢量f和m決定,f, m分別為濾波器的期望幅頻響應(yīng)的頻率相量和幅值相量。Firs()和remez ()的基本格式用于設(shè)計工型和II型線性相位FIR濾波器,是偶對稱濾波器,I型和II型的區(qū)別在于濾波器

49、的階數(shù)是偶數(shù)還是奇數(shù)。firrcos()用于設(shè)計具有光滑,正弦過渡帶的低通線性相位濾波器。Filter()用于實現(xiàn)IIR和FIR濾波器對數(shù)據(jù)的濾波,常用來計算濾波器對輸入的響應(yīng)。Fftfilt()利用效率高的基于FFT重疊相加算法實現(xiàn)對數(shù)據(jù)濾波,該函數(shù)只適用FIR濾波器。Freqz()用于求數(shù)字濾波器的頻率響應(yīng)。并且提供了各種窗函數(shù)的函數(shù),比如,hamming()是海明窗函數(shù),kaiser()是凱塞窗函數(shù),使在設(shè)計的過程中,不用自己重新設(shè)計窗函數(shù)。設(shè)計模擬前文中已簡要介紹了Matlab的重要性及應(yīng)用的范圍,在本小節(jié)中將使用Matlab來進(jìn)行系數(shù)的求取,可行性分析以及正確性的驗證。根據(jù)公式: (

50、4-1)可求得FIR濾波器的系數(shù) (其中為理想濾波器的響應(yīng)系數(shù)),如下:h (0) =h (15) =0. 0022h(1)=h(14)=0. 0018h (2) =h (13) =-0. 0114h (3) =h (12) =-0. 0317h (4) =h (11) =-0. 0212h (5) =h (10) =0. 0579h (6) =h (7) =0. 1958h (7) =h (8) =0. 3047根據(jù)此組系數(shù)可獲得FIR濾波器的幅頻相頻特性曲線如圖4-1所示,由圖中可以看出,濾波器的最小阻帶衰減為50db,符合設(shè)計的要求12。圖4-1量化前的FIR濾波器的幅頻相頻特性曲線在本

51、章的模擬實驗中,采用了一組雷達(dá)信號數(shù)據(jù)。圖4-2說明了數(shù)據(jù)的流向。利用天線從外部接收的信號含有大量的噪聲,通過中間的一些設(shè)備,到達(dá)濾波設(shè)備,進(jìn)行濾波。天線接受信號混頻器中頻放大器功分器檢波器低頻放大器濾波輸出圖4-2 接收信號到信號濾波輸出下面是使用Matlab進(jìn)行濾波器設(shè)計的算法:1、 通過函數(shù)ideal (fc, M)來計算理想脈沖響應(yīng);2、 通過海明(Hamming)窗或凱塞(Kaiser)窗來實現(xiàn)FIR濾波器,即13或; 3、根據(jù)公式實現(xiàn)濾波功能。圖4-3 (a)是低頻放大器輸出的信號,4-3 (b)是經(jīng)濾波后輸出的數(shù)據(jù)。從a, b兩圖中可以看出,圖b在經(jīng)過濾波后波形明顯比濾波前的波形平滑,證明以此種方法設(shè)計的濾波器濾波效果良好,符合了要求。圖4-3 (a) 源信號波形圖4-3 (b) 濾波后的波形濾波部分的部分源代碼如下: y=zeros(1,length(x);for i =1: length(x); if i 0);end loop;result0);wait until clkevent and

溫馨提示

  • 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

提交評論