基于Matlab 16階FIR低通濾波器的設(shè)計畢業(yè)設(shè)計論文_第1頁
基于Matlab 16階FIR低通濾波器的設(shè)計畢業(yè)設(shè)計論文_第2頁
基于Matlab 16階FIR低通濾波器的設(shè)計畢業(yè)設(shè)計論文_第3頁
基于Matlab 16階FIR低通濾波器的設(shè)計畢業(yè)設(shè)計論文_第4頁
基于Matlab 16階FIR低通濾波器的設(shè)計畢業(yè)設(shè)計論文_第5頁
已閱讀5頁,還剩49頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1 緒 論1.1 引言濾波技術(shù)是信號分析、信號處理技術(shù)中的重要分支。無論是信號的獲取、傳輸,還是信號的處理、轉(zhuǎn)換都離不開濾波技術(shù)。濾波技術(shù)對信號安全可靠和有效靈活的傳遞至關(guān)重要【1】。在電子系統(tǒng)中,由于濾波器的好壞直接影響系統(tǒng)的性能,所以濾波技術(shù)已成為備受關(guān)注而熱門的課題,濾波器的研制已受到各國研究者越來越多的重視。我國在上世紀50年代后期開始廣泛使用濾波器,主要應(yīng)用在報路和話路濾波。經(jīng)過半個多世紀的發(fā)展,我國濾波器在研制、生產(chǎn)、應(yīng)用等方面已進入國際發(fā)展軌道,但由于缺少專門研制機構(gòu),加之集成工藝和材料工業(yè)發(fā)展步伐的緩慢,使得我國在許多新型濾波器的研制和應(yīng)用方面與國外仍有較大的差距【2】。數(shù)字濾

2、波器是對離散時間信號進行濾波處理以得到期望的響應(yīng)特性的離散時間系統(tǒng)。數(shù)字濾波器一般由寄存器、延時器、加法器和乘法器等基本數(shù)字電路來實現(xiàn)。數(shù)字濾波器能滿足濾波器對幅度和相位特性的嚴格要求,避免模擬濾波器所無法克服的電壓漂移、溫度漂移和噪聲等問題。隨著集成電路技術(shù)的發(fā)展,數(shù)字濾波器性能不斷提高而成本卻不斷降低。數(shù)字濾波器在語音信號處理、圖像信號處理、醫(yī)學(xué)生物信號處理以及其他應(yīng)用領(lǐng)域都得到了廣泛應(yīng)用。隨著電子計算機和大規(guī)模集成電路技術(shù)的發(fā)展,數(shù)字濾波器可用計算機軟件實現(xiàn),也可用大規(guī)模集成數(shù)字硬件實時實現(xiàn),數(shù)字濾波器已具備了高精度、高可靠性、可程控改變性或復(fù)用、便于集成等眾多優(yōu)點【3】。按照數(shù)字濾波器

3、(df)的特性,可分為線性與非線性、因果與非因果、無限長沖激響應(yīng)(iir)與有限長沖激響應(yīng)(fir)等類型。在這些濾波器中,線性時不變的數(shù)字濾波器是最基本的類型。由于數(shù)字系統(tǒng)可以對延時器加以利用,因此若在數(shù)字濾波器中引入一定程序的非因果性,就可獲得比傳統(tǒng)的因果濾波器更靈活強大的特性。相對于iir濾波器,fir濾波器具有易于實現(xiàn)和系統(tǒng)絕對穩(wěn)定的優(yōu)勢,因此得到廣泛的應(yīng)用【4】。1.2 國內(nèi)外研究現(xiàn)狀在國內(nèi)外的研究中,設(shè)計fir濾波器所涉及的乘法運算方式有:并行乘法、位串行乘法和分布式算法的乘法。并行乘法雖然速度快,同時占用的硬件資源極大。如果濾波器的長度增加,乘法器位數(shù)也將變大,硬件規(guī)模將變得十分

4、龐大。位串行乘法器的實現(xiàn)方法主要是通過對乘法運算進行分解,用加法器來完成乘法的功能,也即無乘法操作的乘法器。但由于一個8*8位的乘法器輸出為16位,為了得到正確的16位結(jié)果,串行輸入的二進制補碼數(shù)要進行符號位擴展,即將串行輸入的8位二進制補碼前補8個0(對正數(shù))或8個1(對負數(shù))后才輸入乘法器。如果每一位的運算需要一個時鐘周期的話,這個乘法器需要16個時鐘周期才能計算出正確結(jié)果,這就意味著此類乘法器要完全計算出結(jié)果的延遲必將會很大【5】。所以位串行乘法器雖然使得乘法器的硬件規(guī)模達到了最省,但是由于是串行運算,使得它的運算周期過長,速度與規(guī)模折衷考慮時不是最優(yōu)的。分布式算法(distribute

5、d arithmetic,ad)的主要特點是巧妙的利用rom查找表將固定系數(shù)的乘累加(multiply-accumulator,mac)運算轉(zhuǎn)化為查表操作,它與傳統(tǒng)算法實現(xiàn)乘累加運算的不同在于執(zhí)行部分積運算的先后順序不同。分布式算法在完成乘累加功能時是通過將各輸入數(shù)據(jù)每一對應(yīng)位產(chǎn)生的部分積預(yù)先進行相加形成相應(yīng)的部分積,然后再對各個部分積累加產(chǎn)生最終結(jié)果【6】,而傳統(tǒng)算法是等到所有乘積已經(jīng)產(chǎn)生之后再來相加來完成乘累加運算的。就小位寬來說,ad算法設(shè)計的fir濾波器的速度可以顯著的超過基于mac的設(shè)計。相對于前兩種方法,da算法既可以全并行實現(xiàn),又可以全串行實現(xiàn),還可以串并行結(jié)合實現(xiàn),可以在硬件規(guī)

6、模和濾波器速度之間作適當?shù)恼壑校乾F(xiàn)在被研究的主要方法。fir數(shù)字濾波器的實現(xiàn),大體可以分為軟件實現(xiàn)和硬件實現(xiàn)方法兩種。軟件實現(xiàn)方法即是在通用的微型計算機上用軟件實現(xiàn)。利用計算機的存儲器、運算器和控制器把濾波所要完成的運算編成程序通過計算機來執(zhí)行,軟件可由使用者自已編寫,也可以使用現(xiàn)成的。國內(nèi)外的研究機構(gòu)、公司已經(jīng)推出了不同語一言的信號濾波處理軟件包。但是這種方法速度慢,難以對信號進行實時處理,雖然可以用快速傅立葉變換算法來加快計算速度,但要達到實時處理要付出很高的代價,因而多用于教學(xué)與科研【7】。硬件實現(xiàn)即是設(shè)計專門的數(shù)字濾波硬件,采用硬件實現(xiàn)的方法一般都比采用軟件實現(xiàn)方法要困難得多,目前主

7、要采用的方法有以下幾種【8】:(1)采用dsp(digital signal processing)處理器實現(xiàn)dsp處理器是專為數(shù)字信號處理而設(shè)計的,如ti公司的tms32ocx系列,ad公司的adspzxi,adsp210x系列等。它主要數(shù)字運算單元是一個乘累加器(multiply-accumulator mac),能夠在一個機器周期內(nèi)完成一次乘累加運算,配有適合于信號處理的指令,具備獨特的循環(huán)尋址和倒序?qū)ぶ纺芰?。這些特點都非常適合數(shù)字信號處理中的濾波器設(shè)計的有效實現(xiàn),并且它速度快,成本低,在過去的20多年的時間里,軟件可編程的dsp器件幾乎統(tǒng)治了商用數(shù)字信號處理硬件的市場。(2)采用固定功

8、能的專用信號處理器來實現(xiàn)適用于過程固定而又追求高速的信號處理任務(wù),是以指定的算法來確定它的結(jié)構(gòu),使用各種隨機邏輯器件組成的信號處理器。它們體積小、保密性好,具有極高的性能,然而靈活性差。二者相比,固定功能的dsp專用器件可以提供很好的實時性能,但其靈活性差,研發(fā)周期長,難度也比較大;dsp處理器的成本低且速度較快,靈活性好,但由于軟件算法在執(zhí)行時的順序性,限制了它在高速和實時系統(tǒng)中的應(yīng)用。在一些高速應(yīng)用中,系統(tǒng)性能的要求不斷增長,而dsp性能的提高卻落后于需求的增長?,F(xiàn)在,大規(guī)??删幊踢壿嬈骷閿?shù)字信號處理提供了一種新的實現(xiàn)方案。分布式算法可以很好地在fpga(field programmab

9、le gate array)中實現(xiàn),然而卻不能有效的在dsp處理器中實現(xiàn),所以采用fpga使用分布式算法實現(xiàn)fir數(shù)字濾波器有著很好的發(fā)展前景。采用現(xiàn)場可編程門陣列fpga來實現(xiàn)fir數(shù)字濾波器,既兼顧asic器件(固定功能dsp專用芯片)的實時性、又具有dsp處理器的靈活性。fpga和dsp技術(shù)的結(jié)合能夠更進一步提高集成度、加快速度和擴展系統(tǒng)功能。用fpga設(shè)計的產(chǎn)品還具有體積小、速度快、重量輕、功耗低、可靠性高、仿制困難、上批量成本低等優(yōu)點。但是,da算法中的查找表的規(guī)模隨著fir數(shù)字濾波器長度的增加呈指數(shù)增長,而且隨著濾波器系數(shù)的位數(shù)的增加,查找表的規(guī)模也會增加,這將極大的增加設(shè)計的硬件

10、規(guī)模。所以如何減小查找表的規(guī)模成為尚待解決的問題。2 fir數(shù)字濾波器設(shè)計2.1 數(shù)字濾波器基礎(chǔ)【9】數(shù)字濾波器在數(shù)字信號處理中屬于預(yù)處理的部分,因而起著基礎(chǔ)性的作用,數(shù)字濾波器包括iir和fir數(shù)字濾波器。數(shù)字濾波器具有精度高、穩(wěn)定性好、靈活性強、不要求阻抗匹配,易于修改等特點。下面將首先介紹一下數(shù)字濾波器,然后重點討論fir數(shù)字濾波器的設(shè)計原理和結(jié)構(gòu)。2.1.1 數(shù)字濾波器簡介一個簡單的數(shù)字濾波系統(tǒng)如圖2-1所示。圖中,x(t)為模擬信號,經(jīng)過a/d轉(zhuǎn)換器后變?yōu)橐粋€有著先后順序的數(shù)字序列x(n)。然后x(n)通過數(shù)字濾波系統(tǒng)h(z),即得到數(shù)字濾波器的輸出y(n)。h(z)為該數(shù)字濾波系統(tǒng)

11、的單位脈沖響應(yīng)h(n)的z變換,即: (2-1) 若h(n)為無限長序列,則得到的數(shù)字濾波器為iir數(shù)字濾波器,又稱遞歸濾波器;反之,若h(n)為有限長序列,則得到的數(shù)字濾波器為fir濾波器,也稱非遞歸濾波器。一個線形時不變因果濾波器可表示為: (2-2)其中n為h(n)的長度,即濾波器的長度。圖2-1 數(shù)字濾波系統(tǒng)iir濾波器主要是基于對模擬濾波器如巴特沃斯濾波器、橢圓濾波器等的幅頻響應(yīng)進行逼近,而其相頻響應(yīng)是非線性的。與iir濾波器不同,fir濾波器可以把相位特性設(shè)計成線性。這使得fir數(shù)字濾波器在信號無失真?zhèn)鬏敗?shù)據(jù)通信、圖像傳輸與處理、語音信號處理等有線性相位要求的領(lǐng)域應(yīng)用廣泛。fir

12、濾波器的優(yōu)點是軟硬件實現(xiàn)結(jié)構(gòu)簡單,不用考慮系統(tǒng)的穩(wěn)定性問題;缺點是實現(xiàn)較高性能的頻率響應(yīng)需要較高的濾波器階數(shù)。2.1.2 fir數(shù)字濾波器的結(jié)構(gòu)由于fir數(shù)字濾波器實現(xiàn)算法的不同,我們可以把fir濾波器的結(jié)構(gòu)劃分為直接型、級聯(lián)型、頻率采樣型和快速卷積型四種基本形式【10】。文章主要討論前兩種結(jié)構(gòu)。(1)直接型結(jié)構(gòu)由式2-2可直接畫出fir數(shù)字濾波器的直接型結(jié)構(gòu),如圖2-2所示。對于直接型結(jié)構(gòu)來說,一個長度為n的fir濾波器,每產(chǎn)生一個輸出數(shù)據(jù),要經(jīng)過n次乘法,n-1次加法。對于使用fpga開發(fā)fir數(shù)字濾波器,這樣的結(jié)果顯然不令人滿意。圖2-2 直接型結(jié)構(gòu)于是做了一下改進,這種改進是基于線性相

13、位的fir數(shù)字濾波器的。以嚴格線性相位,n為偶數(shù)的fir濾波器為例,如圖2-3所示。圖2-3 直接型的改進由于關(guān)于對稱,我們可以將經(jīng)過延時環(huán)節(jié)的位置關(guān)于對稱的數(shù)據(jù)預(yù)先相加,然后可以再乘以相應(yīng)的濾波器系數(shù)進行累加得到最終的輸出結(jié)果。這樣,每產(chǎn)生一個輸出,經(jīng)過次乘法,次加法,比原來減少次乘法。(2)級聯(lián)型結(jié)構(gòu)對式(2-2)進行因式分解,并將零點共軛的因式放在一起,這樣產(chǎn)生了若干個一階子式和二階子式,將一階子式看作二階子式的一個特例,則系統(tǒng)函數(shù)可以表示為: (2-3)fir數(shù)字濾波器的級聯(lián)型結(jié)構(gòu)如圖2-4所示。圖2-4 級聯(lián)型結(jié)構(gòu)從圖中可以看出,級聯(lián)型結(jié)構(gòu)每產(chǎn)生一個輸出,需要次乘法,次加法。級聯(lián)型的

14、最大特點是可以分別獨立調(diào)整每個子系統(tǒng)的零點之值,當需要精確控制濾波器的零點位置時,往往采用這種結(jié)構(gòu)5。2.2 fir數(shù)字濾波器設(shè)計方法fir數(shù)字濾波器的設(shè)計方法主要有三種【11】:時窗函數(shù)法、頻率采樣法和等波紋設(shè)計法。下面將分別討論一下這三種方法的設(shè)計原理,然后給出設(shè)計步驟,最后在比較一下這三種方法的優(yōu)缺點。2.2.1 窗函數(shù)法一個理想低通濾波器的幅頻特性如圖2-5所示。的表達式為 (2-4)圖2-5 理想低通濾波器頻譜圖對進行離散時間傅里葉逆變換,得 (2-5)是一個關(guān)于對稱的無限長序列,是系統(tǒng)的單位脈沖響應(yīng),這說明系統(tǒng)是非因果的,在物理上不可實現(xiàn)。為了能夠得到一個可實現(xiàn)的系統(tǒng),可以將截取一

15、部分,并順序右移,使之成為一個因果的有限長序列。這種方法就好比在時域打開一個窗口一樣,因而稱為窗函數(shù)法。可以預(yù)見,使用這種方法截取的序列越長,對理想的幅頻特性逼近的越好。常見的時窗函數(shù)有矩形窗、漢寧窗、漢明窗、布萊克曼窗、凱澤窗等。矩形窗的表達式為:,為整數(shù)。當用矩形窗設(shè)計fir濾波器時,所產(chǎn)生的頻率響應(yīng),與理想濾波器的頻率特性相比,在理想特性不連續(xù)點處附近形成了過渡帶,并在過渡帶兩側(cè)形成持續(xù)時間很長,逐漸衰減的波紋,即通帶內(nèi)產(chǎn)生了波動,而阻帶內(nèi)產(chǎn)生了余振,這種現(xiàn)象稱之為吉布斯(gibbs)效應(yīng)。吉布斯效應(yīng)直接影響到濾波器的性能,因為通帶內(nèi)的波動會影響到濾波器的平穩(wěn)性,阻帶內(nèi)的波動則影響阻帶最

16、小衰減。為了克服吉布斯效應(yīng),可以從兩個方面著手:一是在頻域,避免理想濾波器頻譜中出現(xiàn)的躍變現(xiàn)象,把它改造成一條連續(xù)光滑的曲線,所用的方法是鑲邊法;二是在時間域,對截尾函數(shù)進行改造,也即設(shè)計出好的時窗函數(shù)。一個好的時窗函數(shù)的要求:a.主瓣寬度盡可能地小。b.旁瓣水平(振幅或能量)相對于主瓣來說也盡可能地小。但是這兩個標準之間彼此是有矛盾的,即主瓣寬度越大,旁瓣水平才可能越低。因此實際上,我們只能在這兩個標準之間作一權(quán)衡,針對具體問題,找出一個適當?shù)臅r窗函數(shù)。五種窗函數(shù)的主要參數(shù)如表2-1所示。應(yīng)當說明的是,用時窗函數(shù)法設(shè)計的fir濾波器通帶波紋幅度近似等于阻帶波紋幅度。一般阻帶最小衰減達到40d

17、b以上,則通帶最大衰減就小于0.1db。最后,總結(jié)一下利用時窗函數(shù)設(shè)計fir數(shù)字濾波器的步驟:a. 根據(jù)所需設(shè)計的數(shù)字濾波器類型(低通、高通、帶通、帶阻),確定線性相位數(shù)字濾波器類型。b. 根據(jù)濾波器阻帶衰減,選擇窗函數(shù)的類型,根據(jù)過渡帶寬度確定時窗函數(shù)的長度,并根據(jù)線性相位條件進行修正。c. 確定理想數(shù)字濾波器的頻率響應(yīng)函數(shù),其中為幅度特性函數(shù),為相位特性函數(shù)。d. 計算理想濾波器的單位脈沖響應(yīng),即。e. 加窗得到設(shè)計結(jié)果,即。表2-1 五種窗函數(shù)參數(shù)表窗函數(shù)窗譜性能指標加窗后濾波器性能指標旁瓣峰值/db主瓣寬度/()過濾寬度/阻帶最小衰減/db矩形窗-1320.9-21巴特列特-2542.

18、1-25漢寧窗-3143.1-44海明窗-4143.3-53布拉克曼窗-5765.5-74凱澤窗-575-802.2.2 頻率采樣法頻率采樣法是一種基于頻率域抽樣來逼近所要設(shè)計的fir濾波器的頻率特性的一種方法。頻率設(shè)計法的基本設(shè)計流程如圖2-6所示。圖2-6 頻率設(shè)計法流程為了保證具有線性相位條件,其單位采樣響應(yīng)是實序列,且滿足條件。對于偶對稱的情況來說,線性相位條件如下: (2-6) (2-7)令代入式(2-6)、(2-7),得到 (2-8) 式中, ,n為奇數(shù) ,n為偶數(shù)頻率響應(yīng)函數(shù)在各采樣點上等于,而采樣點之間的值是由各采樣值之間的內(nèi)插函數(shù)疊加形成,因而有一定的逼近誤差,誤差的大小取決

19、于理想頻率響應(yīng)的曲線形狀。采樣點之間的理想頻率特性變化越陡,則內(nèi)插值與理想值之間的誤差就越大,因而在理想頻率響應(yīng)特性的不連續(xù)點附近,就會產(chǎn)生肩峰和波紋;反之,理想頻率響應(yīng)特性變化越平緩,則內(nèi)插值越接近理想值,逼近誤差小。因此,可以在理想頻率下響應(yīng)特性的通帶與阻帶之間設(shè)置過渡帶,從而減小逼近誤差。過渡帶的采樣點個數(shù)m與所設(shè)計的濾波器的阻帶最小衰減有關(guān),具體如表2-2所示。此外過渡帶的帶寬與采樣點數(shù)m之間的關(guān)系為: (2-9)表2-2 過渡帶采樣點數(shù)與阻帶最小衰減的關(guān)系12342044-5465-7585-95綜上,頻率采樣法的設(shè)計步驟為:a.根據(jù)阻帶最小衰減,確定過渡帶的樣點數(shù)m。b.根據(jù)過渡帶

20、寬度的要求,估算濾波器的長度。c.構(gòu)造希望逼近的頻率響應(yīng)函數(shù),一般為具有理想頻率特性,并滿足線性相位的要求。d.對進行頻域等間隔n點采樣,得到。e.對進行n點idft,得到。2.2.3 等波紋最佳逼近法等波紋最佳逼近法是基于最大誤差最小化的設(shè)計原則。最大誤差最小化能使幅度誤差在整個逼近頻段上均勻分布,即所設(shè)計的fir數(shù)字濾波器的幅度特性在通帶和阻帶范圍內(nèi)是等波紋的,且可以分別獨立控制通帶和阻帶的波紋幅度,并且在濾波器長度給定的情況下,加權(quán)的幅度波紋誤差最小。定義加權(quán)幅度誤差函數(shù)為 (2-10)式中為幅度誤差加權(quán)函數(shù),用來控制不同頻帶的幅度逼近誤差。一般地,在要求逼近精度高的頻帶,取值大,而要求

21、逼近誤差精度低的頻帶,取值小。設(shè)計過程中是由設(shè)計者根據(jù)通帶最大衰減和阻帶最小衰減的指標要求取定的已知函數(shù)。對于fir數(shù)字低通濾波器,常取: (2-11)式中,和分別為濾波器設(shè)計指標中通帶和阻帶的振蕩波紋幅度,k為正的系數(shù)。濾波器的通帶最大衰減和阻帶最小衰減與通帶和阻帶的振蕩波紋幅度和的換算關(guān)系為: (2-12) (2-13)等波紋最佳逼近法的設(shè)計,在于找到濾波器的系數(shù)向量,使得在通帶和阻帶頻帶內(nèi)的最大絕對值幅度誤差為最小。帕克斯-麥克萊倫采用基于交替定理的雷米茲交替算法,通過逐次迭代逼近的運算求得濾波器的系數(shù)向量,從而實現(xiàn)等波紋最佳逼近法。一般情況下,估計濾波器長度n的凱澤經(jīng)驗公式為: (2-

22、14)綜上,用等波紋最佳逼近法設(shè)計fir數(shù)字濾波器的步驟為:(1)根據(jù)濾波器的設(shè)計指標要求:邊界頻率、通帶最大衰減、阻帶最小衰減等,估計濾波器的長度,并確定幅度誤差加權(quán)函數(shù)。(2)采用雷米茲交替算法,獲得所設(shè)計的濾波器的單位脈沖響應(yīng)。2.2.4 三種設(shè)計方法的比較【12】綜述可得,窗函數(shù)法設(shè)計的基本思想是把給定的頻率響應(yīng)通過離散時間傅里葉逆變換idtft(inversediscretetimefouriertransform),求得脈沖響應(yīng),然后利用加窗函數(shù)對它進行截斷和平滑,以實現(xiàn)一個物理可實現(xiàn)且具有線性相位的fir數(shù)字濾波器的設(shè)計目的。其核心是從給定的頻率特性,通過加窗確定有限長單位取樣響

23、應(yīng)h(n);頻率采樣法設(shè)計的基本思想是把給出的理想頻率響應(yīng)進行取樣,通過idft從頻譜樣點直接求得有限脈沖響應(yīng);等波紋切比雪夫逼近法則是利用matlab提供的remez函數(shù)實現(xiàn)remez算法,設(shè)計濾波器逼近理想頻率響應(yīng)。比較以上三種濾波器的設(shè)計方法,在同樣的階數(shù)下,等波紋切比雪夫逼近法可以獲得最佳的頻率特性和衰耗特性,具有通帶和阻帶平坦,過渡帶窄等優(yōu)點。頻率采樣設(shè)計法可以設(shè)計某些特殊濾波器,且其設(shè)計過程簡單,但阻帶衰減明顯,若適當選取過渡帶樣點值,會取得較窗函數(shù)設(shè)計法略好的衰耗特性。窗函數(shù)設(shè)計法在階數(shù)較低時,阻帶特性基本滿足設(shè)計要求,當濾波器階數(shù)較高時,使用漢寧窗、海明窗、布萊克曼窗和凱澤窗即

24、可以達到阻帶衰耗要求。2.3 fpga設(shè)計優(yōu)點2.3.1使用fpga器件進行開發(fā)的優(yōu)點使用fpga器件設(shè)計數(shù)字電路,不僅可以簡化設(shè)計過程,而且可以降低整個系統(tǒng)的體積和成本,增加系統(tǒng)的可靠性。它們無需花費傳統(tǒng)意義下制造集成電路所需大量時間和精力,避免了投資風險,成為電子器件行業(yè)中發(fā)展最快的一個系列。使用fpga器件設(shè)計數(shù)字系統(tǒng)電路的主要優(yōu)點如下【13】:(1)設(shè)計靈活使用fpga器件,可以不受標準系列器件在邏輯功能上的限制。而且修改邏輯可在系統(tǒng)設(shè)計和使用過程的任一階段中進行,并且只須通過對所用的fpga器件進行重新編程即可完成,給系統(tǒng)設(shè)計提供了很大的靈活性。(2)增大功能密集度功能密集度是指在給

25、定的空間能集成的邏輯功能數(shù)量??删幊踢壿嬓酒瑑?nèi)的組件門數(shù)高,一片fpga可代替幾片、幾十片乃至上百片中小規(guī)模的數(shù)字集成電路芯片。用fpga器件實現(xiàn)數(shù)字系統(tǒng)時用的芯片數(shù)量少,從而減少芯片的使用數(shù)目,減少印刷線路板面積和印刷線路板數(shù)目,最終導(dǎo)致系統(tǒng)規(guī)模的全面縮減。(3)提高可靠性減少芯片和印刷板數(shù)目,不僅能縮小系統(tǒng)規(guī)模,而且它還極大的提高了系統(tǒng)的可靠性。具有較高集成度的系統(tǒng)比用許多低集成度的標準組件設(shè)計的相同系統(tǒng)具有高得多的可靠性。使用fpga器件減少了實現(xiàn)系統(tǒng)所需要的芯片數(shù)目,在印刷線路板上的引線以及焊點數(shù)量也隨之減少,所以系統(tǒng)的可靠性得以提高。(4)縮短設(shè)計周期出于fpga器件的可編程性和靈活

26、性,用它來設(shè)計一個系統(tǒng)所需時間比傳統(tǒng)方法大為縮短。fpga器件集成度高,使用時印刷線路板電路布局布線簡單。同時,在樣機設(shè)計成功后,由于開發(fā)工具先進,自動化程度高,對其進行邏輯修改也十分簡便迅速。因此,使用fpga器件可大大縮短系統(tǒng)的設(shè)計周期,加快產(chǎn)品投放市場的速度,提高產(chǎn)品的競爭能力。(5)工作速度快fpga/cpld器件的工作速度快,一般可以達到幾百兆赫茲,遠遠大于dps器件。同時,使用fpga器件后實現(xiàn)系統(tǒng)所需要的電路級數(shù)又少,因而整個系統(tǒng)的工作速度會得到提高。(6)增加系統(tǒng)的保密性能很多fpga器件都具有加密功能,在系統(tǒng)中廣泛的使用fpga器件可以有效防止產(chǎn)品被他人非法仿制。(7)降低成

27、本使用fpga器件實現(xiàn)數(shù)字系統(tǒng)設(shè)計時,如果僅從器件本身的價格考慮,有時還看不出來它的優(yōu)勢,但是影響系統(tǒng)成本的因素是多方面的,綜合考慮,使用fpga的成本優(yōu)越性是很明顯的。首先,使用fpga器件修改設(shè)計方便,設(shè)計周fpga器件進行系統(tǒng)設(shè)計能節(jié)約成本。期縮短,使系統(tǒng)的研制開發(fā)費用降低;其次,fpga器件可使印刷線路板面積和需要的插件減少,從而使系統(tǒng)的制造費用降低;再次,使用fpga器件能使系統(tǒng)的可靠性提高,維修工作量減少,進而使系統(tǒng)的維修服務(wù)費用降低??傊褂胒pga器件進行系統(tǒng)設(shè)計能節(jié)約成本7。2.4分布式算法2.4.1分布式算法基礎(chǔ)分布式算法(distributed arithmetic,d

28、a)是一項重要的fpga技術(shù),它廣泛地應(yīng)用在計算積之和之中【14】。= (2-15)進一步假設(shè)系數(shù)是已知常數(shù),是變量。無符號da系統(tǒng)假設(shè)變量的表示方式如下: , (2-16)其中表示的第位,而也就是的第次采樣,而內(nèi)積可以表示方式為: (2-17)重新分配求和的順序(也就是“分布式算法名稱的由來”)其結(jié)果如下: (2-18)或者可以寫成更為簡潔的如下形式: (2-19)函數(shù)的實現(xiàn)需要特別注意。首選方法是利用一個lut實現(xiàn)映射。也就是說預(yù)先編程個字的一個lut,以接受一個n位輸入向量,輸出為。各個映射都由相應(yīng)的二次冪加權(quán)并累加。利用如圖2-7所示的移位加法器就能夠有效地實現(xiàn)累加。在n次查詢循環(huán)后就

29、能完成了對內(nèi)積y的計算8。圖2-7 移位加法器da體系結(jié)構(gòu)2.5有符號的da系統(tǒng)下面我們要討論的是如何修復(fù)式(2-15)使之能夠處理有符號補碼。在補碼中,最高位有效位用來區(qū)別正數(shù)和負數(shù)。例如變-3的編碼是。所以我們將采用下面的(b+1)位表示方法: (2-20)與式(2-19)聯(lián)立得到輸出y的定義如下: (2-21)要實現(xiàn)有符號da系統(tǒng),可以通過兩種選擇來修改無符號da系統(tǒng)。這就是:(1)帶有加/減控制的累加器(2)采用具有一個額外輸入的rom使用最常見的可轉(zhuǎn)換累加器,因為lut表中額外的輸入位還需一個兩倍字長的lut表。3 eda技術(shù)和可編程邏輯器件3.1 eda技術(shù)3.1.1 eda技術(shù)簡

30、介【15】eda是electronic design automation 的縮寫,意思是電子設(shè)計自動化,即利用計算機自動完成電子系統(tǒng)的設(shè)計。eda技術(shù)是以計算機和微電子技術(shù)為先導(dǎo),匯集了計算機圖形學(xué)、拓撲、邏輯學(xué)、微電子工藝與結(jié)構(gòu)學(xué)和計算數(shù)學(xué)等多種計算機應(yīng)用學(xué)科最新成果的先進技術(shù)。eda技術(shù)作為現(xiàn)代電子設(shè)計技術(shù)的核心,通過功能強大的計算機和eda工具軟件平臺,對以硬件描述語言hdl為系統(tǒng)邏輯描述手段完成的設(shè)計文件,自動地完成邏輯編譯、邏輯化簡、邏輯分割、邏輯綜合,以及邏輯優(yōu)化和仿真測試,以至實現(xiàn)既定的電子線路系統(tǒng)功能。3.2 quartus ii軟件介紹quartus ii是altera公司

31、在21世紀初推出的fpga/cpld開發(fā)環(huán)境,是altera前一代fpga/cpld集成開發(fā)環(huán)境max+plus ii的更新?lián)Q代產(chǎn)品,其功能強大,界面友好,使用簡便。quartus ii軟件集成了altera的fpga/cpld開發(fā)流程中所涉及的所有工具和第三方軟件接口。圖3-1給出了quartus ii軟件的交互界面。圖3-1 quartus ii軟件的交互界面quartus ii具有一下特點【16】:a支持多時鐘定時分析、logic lock基于塊的設(shè)計、sopc(可編程的片上系統(tǒng))、內(nèi)嵌signal tapii邏輯分析儀和功率估計器等高級工具。b易于引腳分配和時鐘約束。c強大的hdl綜合

32、能力。d支持的器件種類多。利用quartus ii軟件進行fpga/cpld開發(fā)的流程如圖3-2所示。圖3-2 fpga/cpld開發(fā)流程圖3.3 fpga介紹可編程邏輯器件pld(programmable logic devices)是asic(application specific integrated circuits)的一個重要分支。fpga屬于復(fù)雜高密度的pld器件。fpga使用了可編程的查找表(look up table,lut)結(jié)構(gòu),其中l(wèi)ut是可編程的最小的邏輯構(gòu)成單元【17】。lut示意圖如圖3-3所示。圖3-3 查找表結(jié)構(gòu)圖由于設(shè)計人員可以將存儲在片外的epprom或者計

33、算機的配置數(shù)據(jù)控制加載到fpga器件中進而實現(xiàn)在現(xiàn)場修改器件的邏輯功能,fpga得到了普遍的應(yīng)用。下面以cyloneii系列fpga器件為例來介紹一下fpga器件的結(jié)構(gòu)。cyloneii系列fpga器件是由美國altera公司生產(chǎn)的中端產(chǎn)品。cyloneii系列fpga器件采用了90nm工藝,片內(nèi)邏輯單元數(shù)量最多可達68416個邏輯單元,片內(nèi)存儲器容量最多可達1.1mbts,用戶可用引腳最多有622個。cyloneii系列fpga器件嵌有乘法器,這些乘法器可用于完成高速乘法操作,使得cyloneii系列fpga器件的數(shù)字信號處理能力得到增強。cyloneii系列fpga器件的速度等級有三個:-

34、6,-7和-8,其中-6的速度最快。cyloneii系列fpga器件的內(nèi)部資源是按行、列的方式呈二維分布,如圖3-4所示。這些資源主要包括邏輯陣列、m4k存儲器塊、乘法器等。這些資源模塊通過fpga內(nèi)部的各種連接通路連接起來。圖3-4 ep2c20資源分布圖邏輯單元(logic element,le)是fpga內(nèi)部用于完成用戶資源的最小單元。一個邏輯陣列包含16個邏輯單元以及一些其他資源。一個邏輯單元主要有以下部件組成:一個4輸入的查找表,一個可編程的寄存器,一條進位鏈和一條寄存器級聯(lián)鏈。邏輯單元結(jié)構(gòu)圖如圖3-5所示。 圖3-5 邏輯單元結(jié)構(gòu)圖cyloneii系列fpga器件內(nèi)部的存儲器是以m

35、4k存儲器塊的形式按列排列的,每個m4k存儲器塊的大小為4608bit。m4k存儲器塊包括輸入/輸出寄存器,輸入寄存器用于同步輸入信號,輸出寄存器在設(shè)計中增加一級流水線,使用輸入/輸出寄存器可以改善電路的性能。m4k存儲器除了可以用作標準的存儲器使用外,還可以被配置為移位寄存器、先入先出寄存器、只讀存儲器等。cyloneii系列fpga器件內(nèi)部嵌有硬件乘法器,可以完成高速乘法運算操作。實現(xiàn)許多數(shù)字信號處理運算如濾波、快速傅里葉變換、卷積、解相關(guān)等。cyloneii系列fpga器件關(guān)于時鐘控制的部分主要是全局時鐘網(wǎng)絡(luò)和鎖相環(huán)(pll)。全局時鐘網(wǎng)絡(luò)負責把時鐘分配到器件內(nèi)部的各個單元,控制器件內(nèi)部

36、的所有資源。鎖相環(huán)可以完成分頻、倍頻、移相等關(guān)于時鐘的基本操作。3.4 硬件描述語言vhdl硬件描述語言(hdl,hardware description language)是eda技術(shù)的重要組成部分,常用的硬件描述語言有vhdl,verilog,abel等,vhdl是eda技術(shù)的主流硬件描述語言之一,也是設(shè)計所采用的硬件描述語言【18】。vhdl的英文全名是very high speed integrated circuit hardware description language,誕生于1982年。1987年vhdl被ieee和美國國防部確認為標準硬件描述語言。自ieee公布了vhdl(

37、ieee-1076)的標準版本之后,各eda公司相繼推出了自己的vhdl設(shè)計環(huán)境,或宜布自己的設(shè)計工具可以和vhdl接口。此后vhdl在電子設(shè)計領(lǐng)域得到了廣泛的接受,并逐步取代了原有的非標準化硬件描述語言。1993年,ieee對vhdl進行了修訂,從更高抽象層次和系統(tǒng)描述能力上擴展了vhdl的內(nèi)容,公布了新版本的vhdl即ieee標準的1076-1993,又得到了眾多eda公司的支持,在電子工程領(lǐng)域,己成為事實上的通用硬件描述語言。有專家預(yù)言,在新的世紀中,vhdl和verilog將承擔起幾乎全部的數(shù)字系統(tǒng)設(shè)計任務(wù)。vhdl主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)、行為、功能和接口。除了含有許多硬件特征的語

38、句外,vhdl的風格和語法十分類似于一般的計算機高級語言。vhdl的程序結(jié)構(gòu)特點是將一項設(shè)計實體分成外部和內(nèi)部,外部是可視的,是端口,內(nèi)部是不可視的,是內(nèi)部功能和算法的完成部分。在對一個設(shè)計實體定義了外部界面后,一旦其內(nèi)部開發(fā)完成之后,其它的設(shè)計就可以直接調(diào)用這個實體。這種將設(shè)計實體分成內(nèi)外部分的概念是vhdl系統(tǒng)設(shè)計的基本點。應(yīng)用vhdl進行工程設(shè)計的優(yōu)點是多方面的,具體如下:(1)支持從系統(tǒng)級到門級電路的描述,同時也支持多層次的混合描述:描述形式可以是結(jié)構(gòu)描述,也可以是行為描述,或二者兼而有之。vhdl支持從上到下的設(shè)計,也支持從下到上的設(shè)計;支持模塊化設(shè)計,也支持層次化設(shè)計。(2)vhd

39、l具有豐富的仿真語句和庫函數(shù),在設(shè)計早期,即尚未完成設(shè)計時,就可以就能查驗設(shè)計系統(tǒng)的功能可行性,隨時可對設(shè)計項目進行仿真模擬。也就是在遠離門級的較高層次上進行模擬,使設(shè)計一者在設(shè)計早期就能對整個設(shè)計項目的結(jié)構(gòu)和功能的可行性做出決策。(3)vhdl具有行為描述能力和程序結(jié)構(gòu),能支持大規(guī)模設(shè)計的模塊分解和已有設(shè)計模塊的再利用功能。vhdl中設(shè)計實體的概念、程序包的概念、設(shè)計庫的概念都為大型設(shè)計項目的分解和并行工作提供了有利的支持。這一點符合大規(guī)模電子系統(tǒng)的高效、高速設(shè)計完成必須由多人甚至由多個開發(fā)組共同并行工作才能實現(xiàn)的市場需求。(4)用vhdl完成的一個確定的設(shè)計項目,在eda工具軟件的支持下,

40、編譯器將vhdl所表達的電路功能自動地轉(zhuǎn)換為文本方式表達的基本邏輯元件連接圖-一網(wǎng)表文件。應(yīng)用eda工具的邏輯優(yōu)化功能,可以自動的把一個綜合后的設(shè)計項目變成一個更小、更高速的電路系統(tǒng)。反過來,設(shè)計者還可以從綜合和優(yōu)化后的電路獲得設(shè)計信息,反饋去更新修改vhdl設(shè)計描述,使之更加完善。(5)vhdl對設(shè)計項目的描述具有獨立性,實際設(shè)計者可以在不懂硬件的結(jié)構(gòu),不知最終實現(xiàn)的目標器件為何的情況下,而進行獨立的設(shè)計。正是因為vhdl的硬件描述與具體的工藝技術(shù)和硬件結(jié)構(gòu)無關(guān),vhdl的設(shè)計項目的目標硬件器件具有廣闊的選擇范圍,其中包括各系列的gpld,fpga及各種門陣列器件。(6)vhdl具有類屬描述

41、語句和子程序調(diào)用等功能,對于已完成的設(shè)計項目,在不改變源程序的條件下,只需改變類屬參數(shù)或函數(shù),就能輕易改變設(shè)計項目的規(guī)模和結(jié)構(gòu)。4 基于fpga的fir濾波器設(shè)計首先確定基于matlab的fir數(shù)字低通濾波器的指標系數(shù),再利用分布式算法結(jié)構(gòu), vhdl硬件語言完成設(shè)計與仿真,最后實現(xiàn)硬件系統(tǒng)以及硬件測試。4.1 基于matlab的fir數(shù)字低通濾波器抽頭系數(shù)的提取4.1.1 濾波器的設(shè)計指標采樣頻率:10mhz截止頻率:100khz類型:低通階數(shù):凱澤窗函數(shù)16階系數(shù)4.1.2 濾波器的具體設(shè)計方法啟動matlab設(shè)計軟件后,依次打開starttoolboxesfilter designfil

42、ter design & analysis tool(fdatool)就可以看到如圖4-1的fdatool界面。選擇所需要的參數(shù)指標,就會生成fir低通數(shù)字濾波器的特性曲線以及重要的幅度相位波形圖,如圖4-2、圖4-3、圖4-4所示,驗證了其技術(shù)指標。圖4-1 fdatool界面圖4-2 頻率特性曲線圖4-3 相位特性曲線圖4-4 量化曲線4.1.3 參數(shù)提取與量化利用matlab軟件的fdatool圖形用戶界面工具,輸入設(shè)計指標后便會自動生成所設(shè)計的fir低通數(shù)字濾波器的系數(shù),一般線性相位的fir低通數(shù)字濾波器的單位沖激響應(yīng)都為實數(shù),滿足奇或偶對稱的條件。所得單位沖激響應(yīng)系數(shù)如表4-1所示:

43、表4-1 fir低通數(shù)字濾波器系數(shù)序數(shù)序列fir濾波器的參數(shù)序數(shù)序列h(0)-0.039907834316445h(15)h(1)-0.037834962847191h(14)h(2)-0.017305968856170h(13)h(3)0.021384069718987h(12)h(4)0.072608454823592h(11)h(5)0.126467760141519h(10)h(6)0.171262675451901h(9)h(7)0.196673325528212h(8)計算的結(jié)果可通過file下的菜單中的export命令取出,點擊export打開對話框,如圖所示,點擊ok可將濾波器

44、系數(shù)數(shù)據(jù)存放到當前工作空間,并且以num命名。圖4-2 沖激系數(shù)輸出對話框保存并關(guān)閉當前窗口回到工作空間,在命令區(qū)輸入num回車,出現(xiàn)以下圖圖4-3 輸出在matlab中的沖激系數(shù)對fir濾波器系數(shù)進行量化,也就是整數(shù)化,在剛才的命令區(qū)繼續(xù)輸入round (num*2048),可得到濾波器整數(shù)為,然后換為二進制補碼:h(0)=h(15)=-82=faehh(1)=h(14)=-77=fb6hh(2)=h(13)=-35=fddhh(3)=h(12)=44=fd4hh(4)=h(11)=149=f6fhh(5)=h(10)=259=efdhh(6)=h(9)=351=ea1hh(7)=h(8)=

45、403=e6dh4.2 fir濾波器的fpga實現(xiàn)4.2.1 模塊劃分自頂向下的實現(xiàn)方法,fir濾波器的模塊劃分:輸入模塊(包括移位寄存器模塊,加法與地址碼形成模塊)、查找表模塊樹狀移位加法器模塊、控制模塊和包含參數(shù)的程序包。整個設(shè)計的層次結(jié)構(gòu)如圖4-4所示:圖4-4 fir濾波器的結(jié)構(gòu)框圖各模塊實現(xiàn)的功能:(1) 控制模塊控制模塊產(chǎn)生其他模塊的控制信號,實現(xiàn)對輸入模塊、乘累加模塊、鎖存模塊的控制,使各模塊按照一定的時序依次執(zhí)行各自的功能,從而完成濾波。它主要由控制器單元和計數(shù)器單元組成。(2) 輸入模塊輸入模塊的主要功能是完成對輸入數(shù)據(jù)的處理,為后續(xù)電路作準備。它主要由并/串轉(zhuǎn)換單元、移位寄

46、存器單元和數(shù)據(jù)的預(yù)相加單元組成。(3)樹樁移位加法器模塊, 將lut的輸出值做樹狀移位加法運算。(4) 鎖存模塊鎖存模塊的主要功能是將乘累加模塊的輸出結(jié)果鎖存后輸出。為了完善設(shè)計,還應(yīng)該再加一個查找表生成模塊,用來根據(jù)外界輸入的系數(shù)自動修改查找表單元,而不是像設(shè)計中那樣,為了改變?yōu)V波器的功能,人為的修改查找表單元。 查找表模塊,查找表模塊的功能是對輸入模塊產(chǎn)生的地址碼對應(yīng)成輸出值。查找表模塊由4個lut和加法模塊組成。4.2.2 fir濾波器各模塊的實現(xiàn)(1)板載頻率分頻設(shè)計所用到的系統(tǒng)板上的晶振頻率是50mhz,而設(shè)計用到的是10mhz,這樣就要進行分頻。cycloneii系列fpga提供兩

47、個嵌入式鎖相環(huán)。在圖形編輯模式下輸入altpll就可以看到如圖4-5(a)所示的界面,設(shè)置設(shè)計所需的參數(shù)就可以實現(xiàn)分頻。設(shè)計產(chǎn)生的分頻模塊圖標如圖4-5(b)所示。圖4-5(a)altpll界面 圖4-5(b)分頻模塊(2)數(shù)據(jù)預(yù)處理輸入信號轉(zhuǎn)換進程,對輸入的二進制原碼轉(zhuǎn)換為二進制補碼輸出。加此進程的目的是方便仿真,硬件實現(xiàn)時不用。 程序代碼見附錄。(3)輸入模塊輸入模塊由移位寄存器和加法器與地址碼形成單元組成。移位寄存器單元實現(xiàn)對并行輸入信號的延遲輸出,其寄存器的個數(shù)由fir濾波器的階數(shù)決定。加法與地址碼形成單元首先實現(xiàn)b(i)=x(i)+x(n-i)的運算,即考慮了濾波器系數(shù)的對稱性,把與

48、相同兩個濾波系數(shù)相乘的兩個采樣值預(yù)先相加,以減少硬件規(guī)模。移位寄存器單元的vhdl代碼見附錄。(4)查找表模塊輸入模塊形成9組8位地址碼,如果直接建立lut,則lut的規(guī)模較大,為個字,為了節(jié)約fpga資源并且簡化表格深度,使用了8位地址線lut分割技術(shù),分成2個4位地址線的lut 。加法模塊實現(xiàn)高4位lut與低4位lut輸出值相加后得出8位地址碼的輸出值。低四位和高四位lut如表4-2所示:表4-2(a) 地址低4位lut d3d2d1d0函數(shù)值000000001h(0)0010h(1)0011h(0)+h(1)0100h(2)0101h(2)+h(0)1111h(0) +h(1)+h(2)

49、+h(3)表4-2(b) 地址高4位lut d7d6d5d4函數(shù)值000000001h(4)0010h(5)0011h(4)+h(5)0100h(6)0101h(6)+h(4)1111h(4) +h(5)+h(6)+h(7)(5)樹狀移位加法器模塊樹狀移位加法模塊,通過一個樹狀的移位加法,最后實現(xiàn)卷積運算。設(shè)計采用并行移位加法,提高了執(zhí)行速度,但付出了硬件資源的大量消耗代價。樹狀移位加法器模塊的vhdl設(shè)計中,雖然“+”的運算是在signed庫中完成的,但仍要關(guān)注每個加數(shù)的符號位的擴展問題,否則會出錯。(6)鎖存輸出模塊da算法的輸出值是多位二進制的結(jié)果,設(shè)計運算結(jié)果是24位,根據(jù)要求輸出是8

50、位,鎖存模塊將輸出結(jié)果進行去舍,以滿足設(shè)計要求。具體做法是根據(jù)邏輯仿真的邏輯圖截取最高的8位有效位即可。如果一種仿真時輸出如圖4-6所示的波形,可知y223 downto 16的位置上都不存在數(shù)據(jù)。那么所存輸出應(yīng)該是y215 downto 8。4.2.3 fir濾波器的頂層設(shè)計圖4-6為fir濾波器的頂層設(shè)計圖。圖4-6 fir濾波器的頂層設(shè)計文件fir濾波器的工作過程說明如下:完成一次卷積運算需要7個工作狀態(tài),系統(tǒng)狀態(tài)圖如下:s0:輸入信號并行進入移位寄存器,實現(xiàn)信號的延遲;s1:根據(jù)系數(shù)的對稱性,實現(xiàn)b(i)=x(i)+x(n-i),并形成8位地址碼;其中s0、s1狀態(tài)是在輸入模塊完成的。

51、s2:根據(jù)地址碼對應(yīng)lut函數(shù)值;s2狀態(tài)在查找表模塊完成的。s3-s6:lut的輸出數(shù)值樹狀移位相加,得出卷積結(jié)果;這是個4層次的樹狀的移位加過程,是在樹狀移位加法模塊中完成。考慮到硬件條件的限制,我們的d/a轉(zhuǎn)換器只有8位,所以還要添加鎖存模塊,取舍卷積結(jié)果,達到設(shè)計要求的精度位數(shù)輸出。完成一次卷積需7個脈沖周期,即從數(shù)據(jù)輸入到數(shù)據(jù)輸出需7個脈沖周期,但采用流水線工作方式,可以認為,每個脈沖上升沿并行8位數(shù)據(jù)輸入,同時并行8位數(shù)據(jù)輸出。所謂流水線技術(shù)是針對連續(xù)輸入數(shù)據(jù)流的系統(tǒng)而言的。它的主要含義是把整個運算過程分解成若干段,系統(tǒng)在同一個時間可對先后輸入的數(shù)據(jù)流元素進行不同階段的運算。如設(shè)計

52、的fir濾波器的卷積運算是分成7個時鐘脈沖的,系統(tǒng)在進行卷積運算的第3個時鐘脈沖的運算同時,也在進行下一個卷積運算的第2個時鐘脈沖的運算。這樣雖然完成一次卷積是7個時鐘脈沖,但2個相臨的卷積運算的完成僅相隔1個時鐘脈沖,從而大大地提高運算速率,電路的規(guī)模也會迅速增大,這是流水線技術(shù)為了得到較高地運算速率而付出的代價19。5 fir濾波器的系統(tǒng)仿真驗證5.1各模塊的仿真圖圖5-1 移位寄存器仿真圖圖5-2 加法與地址碼形成單元仿真圖圖5-3 查找表模塊仿真圖圖5-4 樹狀累加器模塊仿真圖圖5-5 輸出模塊仿真圖5.2 fir濾波器的系統(tǒng)仿真驗證程序編譯通過之后的時序仿真對fpga設(shè)計是十分重要的

53、,仿真可以通過quartusii軟件集成的simulator tool完成。系統(tǒng)仿真的主要目的是檢驗設(shè)計是否被真正實現(xiàn),如果仿真存在問題,就需要返回下層修改設(shè)計或修改參數(shù),重新進行編譯并再次進行系統(tǒng)仿真,直到得到正確結(jié)果。仿真及結(jié)果分析:仿真1:設(shè)計一個輸入信號,其幅值為5的50khz正弦波,以1mhz的采樣頻率對其采樣,每個周期得到20個以上的采樣點,經(jīng)過a/d采樣量化之后的序列為:128 166 200 228 247 255 251 237 213 181 144 106 70 39 16 3 2 12 32 61 96。quartusii仿真波形如圖5-4所示,可以看出,在7個clkin脈沖后,得到濾波結(jié)果,且是流水線的輸出方式。用matlab卷積計算并和quartusii的仿真結(jié)果比較,如表5-1所示。表5-1結(jié)果的比較,有一定的誤

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論