版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 畢業(yè)論文(設(shè)計(jì))</b></p><p> 題目名稱: 基于FPGA的FIR數(shù)字濾波器的設(shè)計(jì) </p><p> 題目類型: 畢 業(yè) 論 文 </p><p> 學(xué)生姓名:
2、 </p><p> 院 (系): 電子信息學(xué)院 </p><p> 專業(yè)班級(jí): </p><p> 指導(dǎo)教師: </p><p> 輔導(dǎo)
3、教師: </p><p> 時(shí) 間: 2012年12月20日 至2013年6月10日 </p><p><b> 目錄</b></p><p> 畢業(yè)設(shè)計(jì)(論文)任務(wù)書Ⅰ</p><p><b> 開題報(bào)告Ⅱ</b&g
4、t;</p><p> 畢業(yè)論文(設(shè)計(jì))指導(dǎo)教師評(píng)審意見III</p><p> 畢業(yè)論文(設(shè)計(jì))評(píng)閱教師評(píng)語Ⅳ</p><p> 畢業(yè)論文(設(shè)計(jì))答辯會(huì)議記錄Ⅴ</p><p><b> 摘要Ⅵ</b></p><p><b> 前言Ⅶ</b></
5、p><p><b> 1 緒論1</b></p><p> 2 MATLAB軟件介紹2</p><p> 2.1 MATLAB的概況2</p><p> 2.2 FDATool介紹2</p><p> 3 硬件描述語言VHDL及FPGA4</p><p>
6、 3.1 硬件描述語言VHDL4</p><p> 3.2 FPGA在設(shè)計(jì)中的具體應(yīng)用4</p><p> 4 數(shù)字濾波器的原理及設(shè)計(jì)6</p><p> 4.1數(shù)字濾波器基礎(chǔ)6</p><p> 4.2 FIR數(shù)字濾波器的基本結(jié)構(gòu)7</p><p> 4.3 數(shù)字濾波器的設(shè)計(jì)10</p&g
7、t;<p> 4.4 FIR濾波器窗函數(shù)設(shè)計(jì)法步驟12</p><p> 5 FIR濾波器的設(shè)計(jì)與仿真13</p><p> 5.1設(shè)計(jì)方案13</p><p> 5.2 模塊電路設(shè)計(jì)20</p><p> 5.3 FIR濾波器的整體電路23</p><p> 5.4 FIR濾波器整
8、體電路仿真結(jié)果及結(jié)果分析26</p><p><b> 參考文獻(xiàn)28</b></p><p><b> 附錄29</b></p><p><b> 致 謝34</b></p><p> 畢業(yè)設(shè)計(jì)(論文)任務(wù)書</p><p> 學(xué)院(系
9、) 電子信息學(xué)院 專業(yè) 通信工程 班級(jí) 通信**</p><p> 學(xué)生姓名 ** 指導(dǎo)教師/職稱 ** (講師)</p><p> 畢業(yè)設(shè)計(jì)(論文)題目:</p><p> 基于FPGA的FIR數(shù)字濾波器的設(shè)計(jì)</p><p> 畢業(yè)設(shè)計(jì)(論文)起止時(shí)間:</p><p>
10、 2012年12月20日~2013年6月10日</p><p> 2.畢業(yè)設(shè)計(jì)(論文)所需資料及原始數(shù)據(jù)(指導(dǎo)教師選定部分)</p><p> FPGA開發(fā)板、MATLAB軟件、QUARTUSⅡ軟件</p><p> 1)徐 年,張劍英,基于FPGA的FIR數(shù)字濾波器的實(shí)現(xiàn),《信息工程》2007年第4期</p><p> 2)侯楓,杜
11、雪峰,基于VHDL語言的FIR數(shù)字濾波器的實(shí)現(xiàn),《三門峽職業(yè)技術(shù)學(xué)院學(xué)報(bào)》2009年12月</p><p> 3)黃睿,方康玲,基于FPGA的數(shù)字濾波器的硬件實(shí)現(xiàn)與應(yīng)用,《微計(jì)算機(jī)信息》(測(cè)控自動(dòng)化)2006年第22卷第9-1期.</p><p> 4)孫耀奇,基于Matlab和FPGA的FIR數(shù)字濾波器的實(shí)現(xiàn),《現(xiàn)代電子技術(shù)》2008年第11期</p><p>
12、; 3.畢業(yè)設(shè)計(jì)(論文)應(yīng)完成的主要內(nèi)容</p><p> 1)利用Matlab工具箱設(shè)計(jì)線性相位FIR低通濾波器;</p><p> 2)了解窗函數(shù)設(shè)計(jì)FIR低通濾波器的方法,并對(duì)矩形窗、三角窗、漢明窗的幅度譜進(jìn)行比較,選擇其中一種進(jìn)行設(shè)計(jì);</p><p> 3)利用Verilog HDL分別實(shí)現(xiàn)濾波器的各個(gè)模塊,仿真無誤后生成單元模塊圖;</p&
13、gt;<p> 4)然后在QuartusⅡ里調(diào)用該模塊,互聯(lián)后綜合得到系統(tǒng)電路圖;</p><p> 5)設(shè)計(jì)FIR低通濾波器測(cè)試電路。</p><p> 4.畢業(yè)設(shè)計(jì)(論文)的目標(biāo)及具體要求</p><p> 目標(biāo):Matlab信號(hào)處理工具箱實(shí)現(xiàn)用窗函數(shù)法設(shè)計(jì)線性相位的FIR低通濾波器;VerilogHDL分別實(shí)現(xiàn)濾波器的各個(gè)模塊。</
14、p><p> 要求:①完成的任務(wù)必須符合實(shí)際工作要求</p><p> ?、谡撐陌凑找?guī)范格式寫作,文字字?jǐn)?shù)不少于1.5萬</p><p> 5、完成畢業(yè)設(shè)計(jì)(論文)所需的條件及上機(jī)時(shí)數(shù)要求</p><p> 微機(jī)一臺(tái):CPU 500M以上、內(nèi)存2G以上、硬盤20G以上</p><p> 軟件:Matlab、Quar
15、tusⅡ</p><p> 上機(jī)時(shí)數(shù)要求:上機(jī)時(shí)數(shù)不低于25學(xué)時(shí)。</p><p> 任務(wù)書批準(zhǔn)日期 年 月 日 教研室(系)主任(簽字) </p><p> 任務(wù)書下達(dá)日期 年 月 日 指導(dǎo)教師(簽字) </p><p> 完成任務(wù)日期
16、 年 月 日 學(xué)生(簽名) </p><p><b> 畢業(yè)設(shè)計(jì)開題報(bào)告</b></p><p> 題 目 名 稱 基于FPGA的FIR數(shù)字濾波器的設(shè)計(jì)</p><p> 院 (系) 電 信 學(xué) 院 </p><p> 專 業(yè) 班 級(jí)
17、 通信** </p><p> 學(xué) 生 姓 名 </p><p> 指 導(dǎo) 教 師 ** </p><p> 輔 導(dǎo) 教 師 ** </p><p> 開題報(bào)告日期
18、 2013年3月23日 </p><p> 基于FPGA數(shù)字濾波器的設(shè)計(jì)</p><p> 學(xué) 生: **,電子信息學(xué)院(通信工程)</p><p> 指導(dǎo)教師:**,電子信息學(xué)院</p><p><b> 一 題目來源</b></p><p><b> 生
19、產(chǎn)社會(huì)實(shí)際</b></p><p><b> 二 研究目的及意義</b></p><p> 現(xiàn)今,在數(shù)字信號(hào)處理和電子應(yīng)用領(lǐng)域,濾波器作為一個(gè)不可缺少的組成部分,已經(jīng)廣泛應(yīng)用于通信、語音、圖像、軍事、航空、航天、醫(yī)療和家用電器等重要領(lǐng)域。FIR數(shù)字濾波器是數(shù)字信號(hào)處理系統(tǒng)中最基本的元件,其嚴(yán)格的線形相位特性,對(duì)于高保真的信號(hào)處理,如語音處理,數(shù)據(jù)處理和
20、測(cè)試等是十分重要的。利用FPGA可以進(jìn)行重復(fù)配置高精度的FIR濾波器設(shè)計(jì),使用VHDL硬件描述語言可以很方便地改變?yōu)V波器的系數(shù)和除數(shù)經(jīng)及實(shí)現(xiàn)大量的卷積運(yùn)算算法。</p><p> 三 閱讀的主要參考文獻(xiàn)及資料名稱</p><p> [1]薛嚴(yán)冰,韓雪,邵遠(yuǎn).基于分布式算法的FIR數(shù)字濾波器的FPGA實(shí)現(xiàn)[J].大連交通大學(xué)報(bào),2009(30):84—87</p><
21、p> [2]李錦屏.基于分布式算法的數(shù)字濾波器的設(shè)計(jì)[J].自動(dòng)化與儀器儀表,2010(3):42—43</p><p> [3]王天云.基于分布式算法的FIR濾波器的FPGA實(shí)現(xiàn)[J].艦船電子工程,2005(5):107—110</p><p> [4]呂紹娟,趙不賄.FIR數(shù)字濾波器的FPGA實(shí)現(xiàn)[J].微計(jì)算機(jī)信息,2008(24):223—226</p>
22、<p> [5]孫耀奇,高火濤,熊超,饒坤.基于MATLAB和FPGA的FIR數(shù)字濾波器的設(shè)計(jì)及實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2008(11):89—92</p><p> [6]孫躍光,劉仁鑫,程欣.基于VHDL的FIR低通數(shù)字濾波器的設(shè)計(jì)[J].微</p><p> 計(jì)算機(jī)信息,2010(26):150—152</p><p> 四 國內(nèi)外現(xiàn)狀和
23、發(fā)展趨勢(shì)與研究的主攻方向</p><p> ?。ㄒ唬﹪鴥?nèi)外現(xiàn)狀和發(fā)展趨勢(shì):</p><p> 數(shù)字濾波在DSP中占有重要地位。數(shù)字濾波器按實(shí)現(xiàn)的網(wǎng)絡(luò)結(jié)構(gòu)或者從單位脈沖響應(yīng),分為IIR(無限脈沖響應(yīng))和FIR(有限脈沖響應(yīng))濾波器。如果IIR濾波器和FIR濾波器具有相同的性能,那么通常IIR濾波器可以用較低的階數(shù)獲得高的選擇性,執(zhí)行速度更快,所有的存儲(chǔ)單元更少,所以既經(jīng)濟(jì)又高效,但I(xiàn)IR濾
24、波器卻遠(yuǎn)達(dá)不到FIR濾波器的線性相位。</p><p> 數(shù)字濾波在通信、圖像編碼、語音編碼、雷達(dá)等許多領(lǐng)域有著十分廣泛的應(yīng)用。目前,數(shù)字信號(hào)濾波器的設(shè)計(jì)在圖像處理,數(shù)據(jù)壓縮等方面的應(yīng)用取得了令人矚目的進(jìn)展和成就。近年來迅速發(fā)展。</p><p> 隨著信息時(shí)代數(shù)字時(shí)代的到來,數(shù)字濾波技術(shù)已經(jīng)成為一門及其重要的科學(xué)和技術(shù)領(lǐng)域。數(shù)字濾波器精確度高,使用靈活,可靠性高,具有模擬設(shè)備沒有的許
25、多優(yōu)點(diǎn),已廣泛地應(yīng)用與各個(gè)科學(xué)技術(shù)領(lǐng)域,例如數(shù)字電視,語音,通信、雷達(dá)、聲納、遙感、圖像、生物醫(yī)學(xué)以及許多工程應(yīng)用領(lǐng)域。以往的濾波器大多采用模擬電路技術(shù),但是模擬電路技術(shù)存在很多難以解決的問題,而采用數(shù)字則避免很多類似的難題,當(dāng)然數(shù)字濾波器在其他方面也有很多突出的優(yōu)點(diǎn)都是模擬技術(shù)所不能及的,所以采用數(shù)字濾波器對(duì)信號(hào)進(jìn)行處理是目前的發(fā)展方向。</p><p> MATLAB是美國Mathworks公司推出的一套應(yīng)
26、用于工程計(jì)算的可視化高性能語言與軟件環(huán)境。它以矩陣運(yùn)算為基礎(chǔ),把計(jì)算,可視化,程序設(shè)計(jì)融合到了一個(gè)交互式的工作環(huán)境中。MATLAB推出的工具箱使各個(gè)領(lǐng)域的研究人員可以直觀方便地進(jìn)行科學(xué)研究、工程應(yīng)用,其中的信號(hào)處理、圖像處理、小波等工具箱為數(shù)字濾波研究的蓬勃發(fā)展提供了有力的工具。</p><p> (二)研究的主攻方向:</p><p> FIR數(shù)字濾波器的傳輸函數(shù)是全零點(diǎn)型,不存在極
27、點(diǎn),因此也不會(huì)出現(xiàn)因極點(diǎn)可能跑到單位圓外面而導(dǎo)致系統(tǒng)的不穩(wěn)定的現(xiàn)象,并且由于它的單位脈沖響應(yīng)</p><p> 是有限長(zhǎng)的,在實(shí)現(xiàn)濾波時(shí),可采用FFT快速算法,因此,在一些需要線性相位的場(chǎng)合獲得了廣泛的應(yīng)用。因此,本課題重點(diǎn)介紹了FIR數(shù)字濾波器的設(shè)計(jì)和實(shí)現(xiàn)。</p><p> 基于FPGA數(shù)字濾波器的設(shè)計(jì)與實(shí)現(xiàn),不僅利用Matlab工具箱設(shè)計(jì)窗函數(shù)計(jì)算FIR濾波器系數(shù),并通過VHDL
28、層次化設(shè)計(jì)方法,同時(shí)FPGA與單片機(jī)相結(jié)合,采用C51及VHDL語言模塊化的設(shè)計(jì)思想進(jìn)行優(yōu)化編程,進(jìn)一步完善了數(shù)據(jù)的快速處理和有效控制,提高了設(shè)計(jì)的靈活性、可靠性,也系統(tǒng)功能的可擴(kuò)展性。</p><p><b> 。</b></p><p> 五、主要研究?jī)?nèi)容、需重點(diǎn)研究的關(guān)鍵問題及解決思路</p><p><b> ?。ㄒ唬┲饕?/p>
29、研究?jī)?nèi)容</b></p><p> FIR濾波器的硬件電路設(shè)計(jì)主要由前置放大電路、A/D轉(zhuǎn)換、D/A轉(zhuǎn)換、單片機(jī)、FPGA等部分組成。其中,數(shù)字濾波器利用Matlab工具箱設(shè)計(jì)窗函數(shù)計(jì)算FIR濾波器系數(shù),基于FPGA最終實(shí)現(xiàn)。系統(tǒng)設(shè)計(jì)框圖如下:</p><p><b> 信號(hào)輸入</b></p><p> 圖1 系統(tǒng)設(shè)計(jì)框圖
30、</p><p> 1)Matlab濾波器參數(shù)的設(shè)定</p><p> 使用Matlab軟件中的Filter Design_Toolbox工具箱中的FDA Tool,選擇所要設(shè)計(jì)的濾波器,通過不同的窗函數(shù)而產(chǎn)生的不同波形,實(shí)現(xiàn)濾波功能效果不</p><p> 同??梢砸来蔚玫絟(n)的值。</p><p> 2)系統(tǒng)功能仿真測(cè)試<
31、;/p><p> 通過開發(fā)工具Quartus對(duì)各個(gè)模塊的VHDL源程序及頂層電路進(jìn)行編譯、邏輯綜合,電路的糾錯(cuò)、驗(yàn)證、自動(dòng)布局布線及仿真等各種測(cè)試,最終將設(shè)計(jì)編譯的數(shù)據(jù)下載到芯片中,同時(shí)與單片機(jī)AT89S51結(jié)合,進(jìn)一步進(jìn)行數(shù)據(jù)的快速處理和控制,實(shí)現(xiàn)鍵盤可設(shè)置參數(shù)及LCD顯示。</p><p><b> 3)設(shè)計(jì)思路分析</b></p><p>
32、; 這種基于FPGA數(shù)字濾波器的設(shè)計(jì)與實(shí)現(xiàn),不僅利用Matlab工具箱設(shè)計(jì)窗函數(shù)計(jì)算FIR濾波器系數(shù),并通過VHDL層次化設(shè)計(jì)方法,同時(shí)FPGA與單片機(jī)相結(jié)合,采用C51及VHDL語言模塊化的設(shè)計(jì)思想進(jìn)行優(yōu)化編程,進(jìn)一步完善了數(shù)據(jù)的快速處理和有效控制,提高了設(shè)計(jì)的靈活性、可靠性,也系統(tǒng)功能的可擴(kuò)展性。(二)需重點(diǎn)研究的關(guān)鍵問題及解決方案</p><p> 1)對(duì)于具有對(duì)稱結(jié)構(gòu)的直接型FIR濾波器用加窗的設(shè)計(jì)方
33、法,經(jīng)比較后窗函數(shù)選用漢明窗,根據(jù)實(shí)際指標(biāo)要求在Matlab和“Filter Design”工具里設(shè)置各參數(shù),然后算得系數(shù)h(n),得到的系數(shù)是用十進(jìn)制表示的,需要將其轉(zhuǎn)換成系統(tǒng)要求的精度(如18位)的定點(diǎn)二制小數(shù),把所有系數(shù)乘以后再四舍五入即可。</p><p> 2)用Verilog HDL分別實(shí)現(xiàn)濾波器的各個(gè)模塊,仿真無誤后生成單元模塊圖,然后在Quartus II里調(diào)用該模塊,互聯(lián)后綜合得到系統(tǒng)電路圖。
34、</p><p><b> 六、工作條件</b></p><p> 計(jì)算機(jī)一臺(tái)、 FPGA開發(fā)板、12864液晶屏</p><p> 調(diào)試工具(示波器、函數(shù)信號(hào)發(fā)生器、穩(wěn)壓電源,萬用表)</p><p><b> 七、進(jìn)度安排</b></p><p> 第1周:制定
35、畢業(yè)設(shè)計(jì)安排</p><p> 第2周:制作開題報(bào)告幻燈片,查找相關(guān)資料</p><p> 第3周:完成開題答辯</p><p><b> 第4周:方案審定</b></p><p> 第5周:學(xué)習(xí)VerilogHDL語言,設(shè)計(jì)思路等</p><p> 第6和7周:采用Matlab中的FD
36、ATool進(jìn)行FIR數(shù)字濾波器參數(shù)的設(shè)定</p><p> 第8和9周:收集數(shù)字濾波器相關(guān)資料和數(shù)據(jù),并加以整理</p><p> 第10周:查找閱讀外文資料和文獻(xiàn)</p><p> 第11周:完成英語文稿翻譯</p><p> 第12和13周:完成畢業(yè)設(shè)計(jì)論文</p><p> 第14周:完成畢業(yè)設(shè)計(jì)答辯&
37、lt;/p><p> 八 指導(dǎo)教師審查意見</p><p><b> 簽名: </b></p><p><b> 年 月 日</b></p><p> 畢業(yè)論文(設(shè)計(jì))指導(dǎo)教師評(píng)審意見</p><p> 畢業(yè)論文(設(shè)計(jì))評(píng)閱教師評(píng)語</p>&l
38、t;p> 畢業(yè)論文(設(shè)計(jì))答辯記錄及成績(jī)?cè)u(píng)定</p><p> 基于FPGA的FIR數(shù)字濾波器的設(shè)計(jì)</p><p> 學(xué) 生:** 電子信息學(xué)院</p><p> 指導(dǎo)老師:** 電子信息學(xué)院</p><p> 【摘要】隨著科技的發(fā)展,電子電路的設(shè)計(jì)正逐漸擺脫傳統(tǒng)的設(shè)計(jì)模式,而采用FPGA(現(xiàn)場(chǎng)可編程門陣列)來
39、設(shè)計(jì)電子電路正成為設(shè)計(jì)的趨勢(shì)。目前,在數(shù)字信號(hào)處理和電子應(yīng)用技術(shù)領(lǐng)域,濾波器作為一個(gè)不可少的組成部分,處在一個(gè)十分重要的地位,已經(jīng)廣泛應(yīng)用于通信、語音、圖像、自動(dòng)控制、軍事、航空航天、醫(yī)療和家用電器等眾多領(lǐng)域,并日益顯示出其巨大的應(yīng)用價(jià)值。</p><p> 隨著利用計(jì)算機(jī)技術(shù)解決濾波器設(shè)計(jì)的不斷深入,派生出了一個(gè)新的分支,即數(shù)字濾波器,同模擬濾波器相比,它具有精度高、靈活性好、便于大規(guī)模集成等突出優(yōu)點(diǎn),還可以
40、避免模擬濾波器所無法克服的電壓漂移、溫度漂移和噪聲等問題。有限長(zhǎng)沖激響應(yīng)(FIR)濾波器,由于FIR系統(tǒng)只有零點(diǎn)、系統(tǒng)穩(wěn)定,便于實(shí)現(xiàn)FFT算法、運(yùn)算速度快、線性相位的特性和設(shè)計(jì)更為靈活等突出優(yōu)點(diǎn)而在工程實(shí)際中獲得廣泛應(yīng)用。本文將研究基于FPGA設(shè)計(jì)FIR數(shù)字濾波器。</p><p> 【關(guān)鍵詞】FPGA 數(shù)字信號(hào)處理;數(shù)字濾波器;現(xiàn)場(chǎng)可編程門陣列;硬件描述語言</p><p> Th
41、e design of FIR digital filter based on</p><p> FPGA ABSTRACT</p><p> Student:senming le School of Electronic Information </p><p> Teacher: Weiju Cai Sch
42、ool of Electronic Information</p><p> [Abstract] With the development of the technology, the design of the electronic circuit is getting rid of traditional pattern, while using FPGA to design electronic cir
43、cuit is becoming the trend of design. At present, in the field of digital signal processing and electronic applications, the filter as an essential component in a very important position, has been widely used in communic
44、ation, voice, image, automatic control, radar, military, aerospace, health care and home appliances and many oth</p><p> With the filter design using computer technology to solve the deepening derive a new
45、branch of the digital filter, compared with analog filter, it has high precision, flexibility, and easy large-scale integration and other advantages,and can escape many problems such as voltage excursion, temperature exc
46、ursion, noise and so on which can not be solved by analogy filter.It is widely used of Finite Impulse Response (FIR) filter, because it has the advantage of only zeros, system stable, linearity p</p><p> [K
47、ey words] FPGA Digital signal processing; digital filter; field programmable gate array; hardware description; software</p><p><b> 前言</b></p><p> 數(shù)字濾波在圖像處理、語音識(shí)別和模式識(shí)別等數(shù)字信號(hào)處理中占有重要地位
48、。與模擬濾波器相比,數(shù)字濾波器可以滿足濾波器幅度和相位特性的嚴(yán)格要求,可以克服模擬濾波器所無法克服的電壓漂移、溫度漂移和噪聲等問題。</p><p> FIR 濾波器被廣泛用于各類數(shù)字信號(hào)處理系統(tǒng)中實(shí)現(xiàn)卷積、相關(guān)、自適應(yīng)濾波、正交插值等處理,對(duì)于非實(shí)時(shí)系統(tǒng)和低速采樣系統(tǒng),FIR 濾波器的運(yùn)算可在CPU 或DSP 處理器上采用軟件實(shí)現(xiàn)。但對(duì)于無線通訊、雷達(dá)以及工業(yè)控制,甚至語音信號(hào)處理等實(shí)時(shí)應(yīng)用,由于FIR 運(yùn)算
49、計(jì)算量過大,采用DSP 軟件可能無法實(shí)現(xiàn),因此采用可編程器件便是最好的方法。有限沖激響應(yīng)(FIR)濾波器可以保證嚴(yán)格的線性相位。同時(shí)由于其實(shí)現(xiàn)結(jié)構(gòu)主要是非遞歸的,因此FIR 濾波器可以穩(wěn)定工作。 目前 FIR 濾波器大致有以下幾種實(shí)現(xiàn)方法: ?。?)使用單片通用數(shù)字濾波器集成電路。單片通用數(shù)字濾波器使用簡(jiǎn)單方便,但由于字長(zhǎng)和階數(shù)的規(guī)格較少,不能完全滿足實(shí)際需要。雖可采用多片擴(kuò)展來滿足,但會(huì)增加體積和功耗,因而在實(shí)際中受到一定限
50、制?! 。?)采用DSP 器件實(shí)現(xiàn)。由于有專門的函數(shù)可供調(diào)用,因此使用DSP 器件設(shè)計(jì)FIR濾波器相對(duì)較簡(jiǎn)單,其應(yīng)用也最為廣泛。其唯一缺點(diǎn)是程序順序執(zhí)行,盡管DSP 器件性能不斷提高,但在某些實(shí)時(shí)性要求極高的場(chǎng)合中受到限制?! 。?)采用可編程邏輯器件實(shí)現(xiàn)。隨著可編程邏輯器件的容量和速度的不斷</p><p><b> 1 緒論</b></p><p> 在現(xiàn)
51、代信號(hào)處理和電子應(yīng)用技術(shù)領(lǐng)域,濾波器作為一種不可少的組成部分處在了一個(gè)十分重要的位置,并日益顯示出其巨大的應(yīng)用價(jià)值。</p><p> 長(zhǎng)期以來,人們不斷地探索濾波器的設(shè)計(jì)與實(shí)現(xiàn)方法,努力地追求著簡(jiǎn)化設(shè)計(jì)、減小體積、改善性能、提高靈活性和可靠性、便于制作等問題。隨著微電子學(xué)迅速發(fā)展,以單個(gè)芯片進(jìn)行FIR濾波器的設(shè)計(jì)正在發(fā)展和應(yīng)用中。</p><p> 如今FIR濾波器的硬件設(shè)計(jì)有多種實(shí)
52、現(xiàn)方法。第一種是采用單片機(jī)來實(shí)現(xiàn),但單片機(jī)的處理速度比較慢。第二種是采用專用的DSP芯片,但DSP的串行指令執(zhí)行發(fā)式,時(shí)期工作速度和效率大打折扣,因此當(dāng)濾波器的系數(shù)增加或字長(zhǎng)增長(zhǎng)時(shí),計(jì)算時(shí)間會(huì)成倍增加,從而降低了最大有效數(shù)據(jù)采樣率。第三種是采用市場(chǎng)上通用的FIR濾波器集成電路,但由于它的通用性很難滿足設(shè)計(jì)者獨(dú)特的要求。第四種是采用可編程邏輯器件(PLD)的方法來實(shí)現(xiàn)。</p><p> 現(xiàn)場(chǎng)可編程門陣列FPGA
53、器件的出現(xiàn)是超大規(guī)模集成電路技術(shù)和計(jì)算機(jī)輔助設(shè)計(jì)技術(shù)發(fā)展的結(jié)果。FPGA器件集成度高、體積小,具有通過用戶編程實(shí)現(xiàn)專門應(yīng)用功能。但在很多工程設(shè)計(jì)應(yīng)用中,由FPGA器件完成的主程序中只完成大量的數(shù)學(xué)運(yùn)算,程序調(diào)試時(shí)以二進(jìn)制形式輸出的信號(hào)可視性差,給設(shè)計(jì)人員進(jìn)行仿真、調(diào)試帶來了很多不便。對(duì)于很多工程設(shè)計(jì)人員來說MATLAB是一種熟悉的具有強(qiáng)大的運(yùn)算功能和波形仿真、分析功能的軟件,如果能將FPGA與MATLAB接口,就可以快速、準(zhǔn)確、直觀地對(duì)
54、FPGA程序進(jìn)行校驗(yàn)和仿真,尤其在數(shù)字信號(hào)處理等工程應(yīng)用領(lǐng)域具有實(shí)際意義。本文正是借助于MATLAB/Simulink工具設(shè)計(jì)分析FIR數(shù)字濾波器,并實(shí)現(xiàn)對(duì)FIR數(shù)字濾波器系統(tǒng)的模擬仿真。</p><p> 自從1989年美國Xilinx公司率先發(fā)明FPGA的概念以來,F(xiàn)PGA技術(shù)以其現(xiàn)場(chǎng)設(shè)計(jì)、現(xiàn)場(chǎng)修改、現(xiàn)場(chǎng)驗(yàn)證、現(xiàn)場(chǎng)實(shí)現(xiàn)的可達(dá)數(shù)萬門級(jí)的數(shù)字系統(tǒng)單片化得應(yīng)用優(yōu)勢(shì),隨著亞微米CMOS集成電路制作技術(shù)的成熟與發(fā)展,
55、器件集成度不斷增大,期間價(jià)格不斷下降的趨勢(shì),逐漸受到各國電子系統(tǒng)應(yīng)用領(lǐng)域的設(shè)計(jì)工程師的廣泛關(guān)注和歡迎。時(shí)至今日,F(xiàn)PGA技術(shù)不再是ASIC技術(shù)領(lǐng)域的一個(gè)點(diǎn)綴和補(bǔ)充,而躍為電子應(yīng)用(包括通訊技術(shù)、計(jì)算機(jī)應(yīng)用、自動(dòng)控制、儀器儀表)等諸多領(lǐng)域的實(shí)用技術(shù),成為科研實(shí)驗(yàn)、樣機(jī)試制、小批量產(chǎn)品即時(shí)實(shí)現(xiàn)的最佳途徑。</p><p> 2 MATLAB軟件介紹</p><p> 2.1 MATLAB的
56、概況</p><p> MATLAB(Matrix Laboratory)是矩陣實(shí)驗(yàn)室之意,除具備卓越的數(shù)值計(jì)算能力外,它還提供了專業(yè)水平的符號(hào)計(jì)算、文字處理、圖像處理、語音處理、可視化建模仿真和實(shí)時(shí)控制等功能。</p><p> 在當(dāng)今30多個(gè)數(shù)學(xué)類科技應(yīng)用軟件中,就軟件數(shù)學(xué)處理的原始內(nèi)核而言,可分為兩大類,一類是數(shù)值計(jì)算型軟件,如MATLAB,Xmath,Gauss等,這類軟件長(zhǎng)
57、于數(shù)值計(jì)算,對(duì)處理大批數(shù)據(jù)效率高;另一類是數(shù)學(xué)分析軟件, Maple這類軟件以符號(hào)計(jì)算見長(zhǎng),能給出解析和任意精確解,其缺點(diǎn)是處理大量數(shù)據(jù)時(shí)效率較低,MathWorks公司順應(yīng)多功能需求之潮流,在其卓越數(shù)值計(jì)算和圖示能力的基礎(chǔ)上,又率先在專業(yè)水平上開拓了其符號(hào)計(jì)算,文字處理,可視化建模和實(shí)時(shí)控制能力,開發(fā)了適合多學(xué)科,多部門要求的新一代科技應(yīng)用軟件MATLAB。經(jīng)過多年的國際競(jìng)爭(zhēng),MATLAB已經(jīng)占據(jù)了數(shù)值軟件市場(chǎng)的主導(dǎo)地位。</p
58、><p> 世紀(jì)80年代初期,Cleve Moler與John Little等利用C語言開發(fā)了新一代的MATLAB語言,此時(shí)的MATLAB語言已同時(shí)具備了數(shù)值計(jì)算功能和簡(jiǎn)單的圖形處理功能。1984年,Cleve Moler與John Little等正式成立了Mathworks公司,把MATLAB語言推向市場(chǎng),并開始了對(duì)MATLAB工具箱等的開發(fā)設(shè)計(jì)。1993年,Mathworks公司推出了基于個(gè)人計(jì)算機(jī)的MATLA
59、B 4.0版本,到了1997年又推出了MATLAB 5.X版本 ,并在2000年又推出了最新的MATLAB 6版本。</p><p> 2.2 FDATool介紹</p><p> FDATool (Filter Design&Analysis Tool)是MATLAB信號(hào)處理工具箱里專用的濾波器設(shè)計(jì)分析工具 ,MATLAB6.0以上的版本還專門增加了濾波器設(shè)計(jì)工具箱 (Fi
60、lter Design Toolbox)。 FDATool可以設(shè)計(jì)幾乎所有的常規(guī)濾波器,包括FIR和IIR的各種設(shè)計(jì)方法 。它操作簡(jiǎn)單 ,方便靈活。</p><p> FDATool界面分為兩大部分,一部分是Design Filter,在界面的下半部,用來設(shè)置濾波器的設(shè)計(jì)參數(shù);另一部分則是特性區(qū),在界面的上半部分,用來顯示濾波器的各種特性。 Design Filter部分主要分為:FilterType(濾波器類
61、型 )選項(xiàng),包括Lowpass(低通 )、Highpass(高通 )、Bandpass(帶通 )、Bandstop(帶阻 )和特殊的FIR濾波器。</p><p> Design Method(設(shè)計(jì)方法 )選項(xiàng),包括IIR濾波器的Butterowrth(巴特沃思 )法、Chebyshev Type I(切比雪夫I型 )法、Chebyshev Type Ⅱ (切比雪夫Ⅱ型 )法、Elliptic(橢圓濾波器 )法
62、和FIR濾敞器的Equiripple法、Least-Squares(最小乘方 )法、Window(窗函數(shù) )法。</p><p> filter order(濾波器階數(shù))選項(xiàng),定義濾波器的階數(shù),包括specify order(指定階數(shù))和minimum order(最小階數(shù))。在specify order中填入所要設(shè)計(jì)的濾波器的階數(shù)(n階濾波器,specify order=n-1),如果選擇minimum or
63、der則matlab根據(jù)所選擇的濾波器類型自動(dòng)使用最小階數(shù)。</p><p> frenquency specifications選項(xiàng),可以詳細(xì)定義頻帶的各參數(shù),包括采樣頻率fs和頻帶的截止頻率。它的具體選項(xiàng)由filter type選項(xiàng)和design method選項(xiàng)決定,例如bandpass(帶通)濾波器需要定義fstop1(下阻帶截止頻率)、fpass1(通帶下限截止頻率)、 fpass2(通帶上限截止頻率
64、)、fstop2(上阻帶截止頻率),而lowpass(低通)濾波器只需要定義fstop1、fpass1。采用窗函數(shù) 設(shè)計(jì)濾波器時(shí),由于過渡帶是由窗函數(shù)的類型和階數(shù)所決定的,所以只需要定義通帶截止頻率,而不必定義阻帶參數(shù)。</p><p> 3 硬件描述語言VHDL及FPGA</p><p> 3.1 硬件描述語言VHDL </p><p> VHDL的英文
65、全名是Very-High-Speed Integrated Circuit Hardware Description Language,誕生于1982年。1987年底,VHDL被IEEE和美國國防部確認(rèn)為標(biāo)準(zhǔn)硬件描述語言。子IEEE公布了VHDL的標(biāo)準(zhǔn)版本,IEEE-1076(簡(jiǎn)稱87版)之后,各EDA公司相繼推出了自己的VHDL設(shè)計(jì)環(huán)境,或宣布自己的設(shè)計(jì)工具可以和VHDL接口。此后VHDL在電子設(shè)計(jì)領(lǐng)域得到了廣泛的接受,并逐步取代了原
66、有的非標(biāo)準(zhǔn)的硬件描述語言。1993年,IEEE對(duì)VHDL進(jìn)行了修訂,從更高的抽象層次和系統(tǒng)描述能力上擴(kuò)展VHDL的內(nèi)容,公布了新版本的VHDL,即IEEE標(biāo)準(zhǔn)的1076-1993版本,(簡(jiǎn)稱93版)。現(xiàn)在,VHDL和Verilog作為IEEE的工業(yè)標(biāo)準(zhǔn)硬件描述語言,又得到眾多EDA公司的支持,在電子工程領(lǐng)域,已成為事實(shí)上的通用硬件描述語言。有專家認(rèn)為,在新的世紀(jì)中,VHDL與Verilog語言將擔(dān)負(fù)起大部分的數(shù)字系統(tǒng)設(shè)計(jì)任務(wù)。</
67、p><p> 3.2 FPGA在設(shè)計(jì)中的具體應(yīng)用</p><p> 在利用FPGA進(jìn)行FIR濾波器研究時(shí),為了確保設(shè)計(jì)的順利完成,必須對(duì)一些問題仔細(xì)考慮。在本章中將詳細(xì)討論基于FPGA涉及硬件電路的方式優(yōu)于傳統(tǒng)的硬件電路的設(shè)計(jì)模式,F(xiàn)PGA的結(jié)果和用到的器件的結(jié)構(gòu)、FPGA的開發(fā)環(huán)境及開發(fā)語言,在本設(shè)計(jì)中數(shù)是如何具體表示的和運(yùn)算在FPGA中是如何完成的,以及在FIR濾波器的設(shè)計(jì)中重要部件
68、的設(shè)計(jì)方法。</p><p><b> 硬件電路的設(shè)計(jì)方式</b></p><p> 隨著計(jì)算機(jī)軟件、硬件和集成電路制造技術(shù)的飛速發(fā)展,以及數(shù)字硬件設(shè)計(jì)復(fù)雜度快速增長(zhǎng)和設(shè)計(jì)成果的繼承性的需要,對(duì)數(shù)字硬件系統(tǒng)的設(shè)計(jì)方法產(chǎn)生了極大的影響,傳統(tǒng)的以線路圖為基礎(chǔ)的數(shù)字硬件系統(tǒng)設(shè)計(jì)方法正逐步被以硬件描述語言為基礎(chǔ)的設(shè)計(jì)方法所取代。</p><p>
69、 傳統(tǒng)的硬件電路設(shè)計(jì)方法</p><p> 在傳統(tǒng)的硬件電路設(shè)計(jì)中,設(shè)計(jì)者需要先了解整個(gè)系統(tǒng)的原理,畫出相應(yīng)的原理圖,在根據(jù)原理圖生成相應(yīng)的線路圖,還需要對(duì)軟件生成的線路圖進(jìn)行布線,布線好的在拿到工廠生產(chǎn)電路板,在按原理圖和電路圖將相應(yīng)的原件插入PCB板中,焊接,整體調(diào)試等。整個(gè)過程很復(fù)雜,有點(diǎn)像搭積木的性質(zhì),設(shè)計(jì)者的許多時(shí)間會(huì)被無謂的浪費(fèi),而且設(shè)計(jì)的周期非常長(zhǎng),并且要求設(shè)計(jì)者具有過硬的電子電路知識(shí)和設(shè)計(jì)開發(fā)經(jīng)
70、驗(yàn)。</p><p> 從上述描述看出,系統(tǒng)硬件的設(shè)計(jì)是從選擇具體元器件開始的,并用這些元器件進(jìn)行邏輯電路設(shè)計(jì),即從最底層開始設(shè)計(jì),完成系統(tǒng)各獨(dú)立功能模塊設(shè)計(jì),然后再將個(gè)功能模塊連接起來,直到最高層,完成整個(gè)系統(tǒng)的硬件設(shè)計(jì)。用上述設(shè)計(jì)方法設(shè)計(jì)的數(shù)字硬件系統(tǒng)最后形成的設(shè)計(jì)文件,主要是由若干張電路原理圖構(gòu)成的文件。在電路原理圖中詳細(xì)標(biāo)注了各邏輯單元、器件的名稱和相互之間的信號(hào)連接關(guān)系。</p><
71、;p> 基于FPGA的硬件電路設(shè)計(jì)方法</p><p> 基于FPGA來設(shè)計(jì)電路與傳統(tǒng)的方法有本質(zhì)的不同,它摒棄了傳統(tǒng)設(shè)計(jì)中的不靈活性,其可以通過軟件編程的方法而對(duì)硬件結(jié)構(gòu)和工作方式進(jìn)行重構(gòu),使得硬件的設(shè)計(jì)可以如同軟件設(shè)計(jì)那樣方便快捷,從這一點(diǎn)上來說,軟件設(shè)計(jì)師只要具備一定的電子設(shè)計(jì)思想,就完全可以轉(zhuǎn)到此項(xiàng)工作。</p><p> 在本文中使用的是VHDL語言,最早是由美國國防
72、部為描述電子電路所開發(fā)的一種語言,它可以很方便地描述一個(gè)系統(tǒng)的功能,也可以詳細(xì)描述一個(gè)器件的狀態(tài)。</p><p> 4 數(shù)字濾波器的原理及設(shè)計(jì)</p><p> 4.1 數(shù)字濾波器基礎(chǔ)</p><p><b> 數(shù)字濾波器的概述</b></p><p> 數(shù)字濾波器(digital filter)是由數(shù)字乘法器
73、、加法器和延時(shí)單元組成的一種裝置。其功能是對(duì)輸入離散信號(hào)的數(shù)字代碼進(jìn)行運(yùn)算處理,以達(dá)到改變信號(hào)頻譜的目的。由于電子計(jì)算機(jī)技術(shù)和大規(guī)模集成電路的發(fā)展,數(shù)字濾波器已可用計(jì)算機(jī)軟件實(shí)現(xiàn),也可用大規(guī)模集成數(shù)字硬件來實(shí)現(xiàn)。數(shù)字濾波器是一個(gè)離散時(shí)間系統(tǒng)(按預(yù)定的算法,將輸入離散時(shí)間信號(hào)轉(zhuǎn)換為所要求的輸出離散時(shí)間信號(hào)的特定功能裝置)。</p><p><b> 數(shù)字濾波器的特點(diǎn)</b></p>
74、;<p> 線性時(shí)間不變(Line Time-Invariant, LTI)數(shù)字濾波器通常分為有限脈沖響應(yīng)(Finite Impulse Response, FIR)和無限脈沖響應(yīng)(Infinite Impulse Response, IIR)兩大類。FIR濾波器相對(duì)于IIR濾波器的有點(diǎn)與不足如下:</p><p><b> 優(yōu)點(diǎn):</b></p><p
75、> 1.具有嚴(yán)格的線性相位又具有任意的幅度;</p><p> 2.FIR濾波器的單位采樣響應(yīng)是有限長(zhǎng)的,因而濾波器的性能穩(wěn)定;</p><p> 3.FIR濾波器由于單位沖激響應(yīng)是有限長(zhǎng)的,因而可以用快速傅里葉變換(FFT)算法來實(shí)現(xiàn)過濾信號(hào),可以大大提高運(yùn)算效率。</p><p><b> 不足:</b></p>
76、<p> 1.FIR系統(tǒng)的系數(shù)長(zhǎng)度一般會(huì)比IIR系統(tǒng)大,也就是說要設(shè)計(jì)一個(gè)符合要求的濾波器,F(xiàn)IR系統(tǒng)需要較多乘法器,當(dāng)以直接回旋運(yùn)算執(zhí)行時(shí)其效率差。</p><p> 2.此系統(tǒng)的輸出延遲時(shí)間長(zhǎng)。</p><p> 由上面的比較可以看出,F(xiàn)IR濾波器還存在缺點(diǎn),但采用FPGA進(jìn)行FIR濾波器的設(shè)計(jì),運(yùn)用FPGA中的算法來提高速度,縮短延遲的時(shí)間,可以使FIR濾波器負(fù)荷指
77、標(biāo)的要求,隨著FPGA的快速發(fā)展,F(xiàn)IR的缺點(diǎn)將逐漸被克服。</p><p> FIR數(shù)字濾波器的基礎(chǔ)</p><p> 數(shù)字濾波器(DF)是個(gè)離散系統(tǒng),它所處理的對(duì)象是用序列表示離散信號(hào)或數(shù)字信號(hào)。DF的因果離散系統(tǒng)函數(shù)可以表示成:</p><p><b> (4.1.1)</b></p><p> 其常系數(shù)線
78、性差分方程為:</p><p><b> (4.1.2)</b></p><p> 可以看出,數(shù)字濾波器是把輸入和之前的輸出序列經(jīng)過一定的運(yùn)算變換成輸出的序列。對(duì)于FIR系統(tǒng),其系統(tǒng)函數(shù)僅有零點(diǎn)(除z=0的極點(diǎn)外),因此FIR系統(tǒng)的差分方程可以表示為:</p><p><b> (4.1.3)</b></p&g
79、t;<p><b> 轉(zhuǎn)移函數(shù)為:</b></p><p><b> (4.1.4)</b></p><p> 由式 (4.1.3)可知,系統(tǒng)的脈沖響應(yīng)是因果序列,因?yàn)槠漭敵鰞H與即時(shí)輸入以及過去的輸入數(shù)據(jù)有關(guān),而與過去的輸出數(shù)據(jù)沒有直接關(guān)系。由此可見FIR濾波器是因果的,是物理可實(shí)現(xiàn)的系統(tǒng),因而它在實(shí)際中往往采用非遞歸(無反饋
80、作用)形式的結(jié)構(gòu)來實(shí)現(xiàn)。</p><p> 4.2 FIR數(shù)字濾波器的基本結(jié)構(gòu)</p><p> FIR濾波器的構(gòu)成形式主要有直接型、級(jí)聯(lián)型、線性相位FIR濾波器和頻率采樣型等,下面分別加以討論。</p><p><b> 直接型結(jié)構(gòu)</b></p><p> 圖4.2.1 給出了N階LTI型FIR濾波器的圖解
81、。由圖4. 2.1可見FIR濾波器是由一個(gè)抽頭延遲線、加法器和乘法器的幾何構(gòu)成的。</p><p> 圖4.2.1 直接型結(jié)構(gòu)的FIR濾波器</p><p><b> 級(jí)聯(lián)型</b></p><p> 如將式(4.1.3)分解為二階實(shí)系數(shù)因子形式: (4.2.1)</p>&l
82、t;p> 級(jí)聯(lián)型FIR濾波器的優(yōu)缺點(diǎn)如下:</p><p> 優(yōu)點(diǎn):每一節(jié)控制一堆零點(diǎn),因而在需要控制傳輸零點(diǎn)的場(chǎng)合時(shí)可采用;</p><p> 缺點(diǎn):相應(yīng)的濾波系數(shù)增加,乘法運(yùn)算次數(shù)增加,因而需要較多的存儲(chǔ)器,運(yùn)算時(shí)間比直接型長(zhǎng)。</p><p> 線性相位FIR系統(tǒng)的結(jié)構(gòu) </p><p> 線性相位響應(yīng)的優(yōu)點(diǎn)如下:<
83、;/p><p> 1.設(shè)計(jì)問題中只有實(shí)數(shù)運(yùn)算而沒有復(fù)數(shù)運(yùn)算,運(yùn)算簡(jiǎn)單;</p><p> 2.線性相位FIR濾波器沒有延時(shí)失真,僅有某一固定時(shí)延,便于設(shè)計(jì);</p><p> 3.對(duì)于長(zhǎng)度為M(或M-1)的濾波器,其運(yùn)算次數(shù)具有M/2量級(jí),提高運(yùn)算速度,節(jié)省資源。</p><p> 系統(tǒng)相位線性度的標(biāo)準(zhǔn)尺度就是“組延遲”,其定義為:<
84、;/p><p><b> (4.2.2)</b></p><p> 完全理想的線性相位濾波器對(duì)于一定頻率范圍的組延遲是一個(gè)常數(shù),如果濾波器是對(duì)稱或反對(duì)稱的,就可以實(shí)現(xiàn)線性相位。</p><p> 線性相位(相移)表示一個(gè)系統(tǒng)的相頻特性與頻率成正比,由于不同頻率傳輸速度都一樣,所以信號(hào)通過它產(chǎn)生的時(shí)間延遲等于常數(shù)k,所以不出現(xiàn)相位失真,對(duì)于一個(gè)
85、數(shù)字系統(tǒng)來說,即</p><p><b> (4.2.3)</b></p><p> 假設(shè)一個(gè)離散時(shí)間系統(tǒng)的幅頻特性等于1,則信號(hào)通過該系統(tǒng)后,其輸出 的頻率特性</p><p><b> (4.2.4)</b></p><p> 所以 ,這樣輸出和輸入在時(shí)間上是唯一對(duì)應(yīng)的,達(dá)到無失真?zhèn)鬏數(shù)?/p>
86、目的。</p><p> 可以證明,線性相位的條件為:</p><p> (1) 偶對(duì)稱 (2) 奇對(duì)稱</p><p> 即如果單位脈沖響應(yīng) 為實(shí)數(shù),且具有偶對(duì)稱或及對(duì)稱性,則FIR數(shù)字濾波器具有嚴(yán)格的線性相位特性,其對(duì)稱中心在 處。線性相位型FIR濾波器的優(yōu)點(diǎn):簡(jiǎn)化網(wǎng)絡(luò)結(jié)構(gòu)。</p><p> (a)
87、 N為奇數(shù)</p><p> (b) N為偶數(shù)</p><p> 圖4.2.2 線性相位FIR濾波器結(jié)構(gòu)</p><p><b> 頻率采樣型</b></p><p> 頻率采樣型結(jié)構(gòu)是一種用系數(shù)將濾波器參數(shù)化的實(shí)現(xiàn)結(jié)構(gòu),一個(gè)有限長(zhǎng)序列可以由相同長(zhǎng)度頻域采樣值來唯一確定。</p><p&
88、gt; 系統(tǒng)函數(shù)在單位圓上做N等分取樣就是單位取樣響應(yīng) 的離散傅里葉變 , 與系統(tǒng)函數(shù)之間的關(guān)系可用內(nèi)插公式表示:</p><p><b> (4.2.5)</b></p><p> 其中 。由式(4.2.4.1)可見,F(xiàn)IR系統(tǒng)可用一子FIR系統(tǒng)和一子IIR系統(tǒng)級(jí)聯(lián)而成。</p><p> 頻率采樣型FIR濾波器的優(yōu)缺點(diǎn)如下:<
89、/p><p> 優(yōu)點(diǎn):選頻性好,適于窄帶濾波,這里大部分 為零,只有較少的二階子網(wǎng)絡(luò);不同的FIR濾波器若長(zhǎng)度相同,可通過改變系統(tǒng)用用同一個(gè)網(wǎng)絡(luò)實(shí)現(xiàn);復(fù)用性好。</p><p> 缺點(diǎn):具體實(shí)現(xiàn)時(shí)難免存在誤差,零、極點(diǎn)可能不能正好抵消,造成系統(tǒng)不穩(wěn)定;結(jié)構(gòu)復(fù)雜,采用的存儲(chǔ)器多。</p><p> 4.3 數(shù)字濾波器的設(shè)計(jì)</p><p>
90、 FIR濾波器設(shè)計(jì)方法是以直接逼近所需離散系統(tǒng)的頻率響應(yīng)為基礎(chǔ)的。設(shè)計(jì)方法包括窗函數(shù)法和最優(yōu)化方法(等同紋波法),其中窗函數(shù)法是設(shè)計(jì)FIR濾波器的最常用的方法之一。這里重點(diǎn)介紹窗函數(shù)法設(shè)計(jì)FIR數(shù)字濾波器。</p><p> 窗設(shè)計(jì)的基本思想是要選取某一合適的理想頻率選擇性濾波器,然后將他的脈沖響應(yīng)截?cái)嘁缘玫揭粋€(gè)線性相位和因果的FIR濾波器。</p><p> 任何數(shù)字濾波器的頻率響
91、應(yīng)都是的周期函數(shù),它的傅里葉級(jí)數(shù)展開式為:</p><p><b> (4.3.1)</b></p><p> 其中 (4.3.2)</p><p> 傅里葉系數(shù) 實(shí)際上就是濾波器的沖激響應(yīng)。由于 可能是無限長(zhǎng)序列且為非因果響應(yīng),是物理不可實(shí)現(xiàn)的,為此要尋找一個(gè)因果的 ,在
92、相應(yīng)的誤差準(zhǔn)則下最佳逼近 。窗函數(shù)法設(shè)計(jì)的初衷是使設(shè)計(jì)的濾波器頻率特性 </p><p> 在頻域均方誤差最小意義下進(jìn)行逼近,即</p><p><b> (4.3.3)</b></p><p> 窗函數(shù)法就是用被稱為窗函數(shù)的有限加權(quán)序列 來修正式(1.2.5),其所需 表示為:</p><p><b>
93、 (4.3.4)</b></p><p> 是有限長(zhǎng)序列,當(dāng)及時(shí), ,這里僅以沖激響應(yīng)對(duì)稱即</p><p> ,(n=1,2,3 ),N-1時(shí)低通濾波器為例說明。低通濾波器的頻率響應(yīng)函數(shù) 如下式所示:</p><p><b> (4.3.5)</b></p><p> 在 時(shí)為0,其中 為采樣頻
94、率歸一化時(shí)的角頻率, 為歸一化截止角頻率。利用傅里葉變換公式求出式(4.3.2)對(duì)應(yīng)的沖激響應(yīng) 為:</p><p><b> (4.3.6)</b></p><p> 設(shè)計(jì)FIR濾波器常用的窗函數(shù)由:矩形函數(shù)窗、三角(Bartlett)窗函數(shù)、漢寧(Hanning)窗函數(shù)、海明(Hamming)窗函數(shù)、布萊克曼(Blackman)窗函數(shù)和凱澤(Kaiser)窗函
95、數(shù),具體性能指標(biāo)可參看表4.3.1。</p><p> 表4.3.1 窗函數(shù)性能指標(biāo)比較</p><p><b> 窗函數(shù)的選擇原則:</b></p><p> 1.具有較低的旁瓣幅度,尤其是第一旁瓣幅度;</p><p> 2.旁瓣幅度下降速度要快,以利增加阻帶衰減;</p><p>
96、 3.主瓣寬度要窄,以獲得較陡的過渡帶。</p><p> 通常上述幾點(diǎn)很難同時(shí)滿足。當(dāng)選用主瓣寬度較窄時(shí),雖然較陡的過渡帶,但通帶和阻帶的波動(dòng)明顯增加;當(dāng)選用最小的旁瓣幅度時(shí),雖然能得到勻滑的幅度響應(yīng)和較小的阻帶波動(dòng),但是過渡帶加寬。因此,實(shí)際選用的窗函數(shù)往往是它們的折中。在保證主瓣寬度達(dá)到一定要求的條件下,適當(dāng)犧牲主瓣寬度來換取旁瓣波動(dòng)的減小。</p><p> 4.4 FIR
97、濾波器窗函數(shù)設(shè)計(jì)法步驟 </p><p> 寫出相應(yīng)理想濾波器的單位脈沖響應(yīng)表達(dá)式</p><p> 確定窗口的類型(根據(jù)確定)</p><p> 確定窗口長(zhǎng)度確定延時(shí)常數(shù)</p><p><b> 得到FIR濾波器</b></p><p> (注: 為阻帶衰減;為各種窗函數(shù)的頻率響應(yīng))
98、</p><p> 5 FIR濾波器的設(shè)計(jì)與仿真</p><p><b> 5.1設(shè)計(jì)方案</b></p><p><b> 主要研究?jī)?nèi)容</b></p><p> FIR濾波器的硬件電路設(shè)計(jì)主要由前置放大電路、A/D轉(zhuǎn)換、D/A轉(zhuǎn)換、單片機(jī)、FPGA等部分組成。其中,數(shù)字濾波器利用Matl
99、ab工具箱設(shè)計(jì)窗函數(shù)計(jì)算FIR濾波器系數(shù),基于FPGA最終實(shí)現(xiàn)。系統(tǒng)設(shè)計(jì)框圖如下:</p><p><b> 信號(hào)輸入</b></p><p> 圖5.1.1 系統(tǒng)設(shè)計(jì)框圖</p><p> Matlab濾波器參數(shù)的設(shè)定</p><p> 使用Matlab軟件中的Filter Design_Toolbox工具箱
100、中的FDA Tool,選擇所要設(shè)計(jì)的濾波器,通過不同的窗函數(shù)而產(chǎn)生的不同波形,實(shí)現(xiàn)濾波功能效果不同??梢砸来蔚玫絟(n)的值。</p><p><b> 系統(tǒng)功能仿真測(cè)試</b></p><p> 通過開發(fā)工具Quartus對(duì)各個(gè)模塊的VHDL源程序及頂層電路進(jìn)行編譯、邏輯綜合,電路的糾錯(cuò)、驗(yàn)證、自動(dòng)布局布線及仿真等各種測(cè)試,最終將設(shè)計(jì)編譯的數(shù)據(jù)下載到芯片中,同時(shí)
101、與單片機(jī)AT89S51結(jié)合,進(jìn)一步進(jìn)行數(shù)據(jù)的快速處理和控制,實(shí)現(xiàn)鍵盤可設(shè)置參數(shù)及LCD顯示。</p><p><b> 設(shè)計(jì)思路分析</b></p><p> 這種基于FPGA數(shù)字濾波器的設(shè)計(jì)與實(shí)現(xiàn),不僅利用Matlab工具箱設(shè)計(jì)窗函數(shù)計(jì)算FIR濾波器系數(shù),并通過VHDL層次化設(shè)計(jì)方法,同時(shí)FPGA與單片機(jī)相結(jié)合,采用C51及VHDL語言模塊化的設(shè)計(jì)思想進(jìn)行優(yōu)化編
102、程,進(jìn)一步完善了數(shù)據(jù)的快速處理和有效控制,提高了設(shè)計(jì)的靈活性、可靠性,也系統(tǒng)功能的可擴(kuò)展性。</p><p> 需重點(diǎn)研究的關(guān)鍵問題及解決方案</p><p> 對(duì)于具有對(duì)稱結(jié)構(gòu)的直接型FIR濾波器用加窗的設(shè)計(jì)方法,經(jīng)比較后窗函數(shù)選用漢明窗,根據(jù)實(shí)際指標(biāo)要求在Matlab和“Filter Design”工具里設(shè)置各參數(shù),然后算得系數(shù)h(n),得到的系數(shù)是用十進(jìn)制表示的,需要將其轉(zhuǎn)換成系
103、統(tǒng)要求的精度(如18位)的定點(diǎn)二制小數(shù),把所有系數(shù)乘以后再四舍五入即可。</p><p> 用Verilog HDL分別實(shí)現(xiàn)濾波器的各個(gè)模塊,仿真無誤后生成單元模塊圖,然后在Quartus II里調(diào)用該模塊,互聯(lián)后綜合得到系統(tǒng)電路圖。</p><p><b> FIR濾波器的結(jié)構(gòu)</b></p><p> FIR濾波器的結(jié)構(gòu)主要是非遞歸結(jié)
104、構(gòu),沒有輸出到輸入的反饋。并且FIR濾波器很容易獲得嚴(yán)格的線性相位特性,避免被處理信號(hào)產(chǎn)生相位失真。而線性相位體現(xiàn)在時(shí)域中僅僅是h(n)在時(shí)間上的延遲,這個(gè)特點(diǎn)在圖像信號(hào)處理、數(shù)據(jù)傳輸?shù)炔ㄐ蝹鬟f系統(tǒng)中是非常重要的。此外,它不會(huì)發(fā)生阻塞現(xiàn)象,能避免強(qiáng)信號(hào)淹沒弱信號(hào),因此特別適合信號(hào)強(qiáng)弱相差懸殊的情況。</p><p> FIR數(shù)字濾波器的設(shè)計(jì)方案</p><p> 通常窗函數(shù)設(shè)計(jì)FIR濾
105、波器的方法,利用MATLAB濾波器設(shè)計(jì)工具求出FIR濾波器的系數(shù),在用VHDL語言及框圖編寫濾波器。</p><p> 對(duì)于線性相位因果FIR濾波器,它的系數(shù)具有中心對(duì)稱特性,即 。令 ,對(duì)于偶對(duì)稱,帶入可得:</p><p><b> (5.1.1)</b></p><p> 根據(jù)要求,要設(shè)計(jì)一個(gè)輸入8位,輸出8位的17階線性相位FIR
106、濾波器,所以采用圖2(a)的方式,其中輸入信號(hào)范圍為:[±99,0,0,0, ±70,0,0,0, ±99,0,0,0, ±70,…],此濾波器 Fs為44kHz,Fc為10.4kHz。用Kaiser窗,Beta=0.5.MATLAB設(shè)計(jì)計(jì)算濾波器系數(shù)過程如下:</p><p> 圖5.1.2 用FDATOOL設(shè)計(jì)數(shù)字濾波器</p><p>
107、圖5.1.3 MATLAB設(shè)計(jì)FIR數(shù)字濾波器參數(shù)設(shè)置 </p><p> 圖5.1.4 MATLAB設(shè)計(jì)FIR數(shù)字濾波器的幅頻響應(yīng)</p><p> 圖5.1.5 MATLAB設(shè)計(jì)FIR數(shù)字濾波器的相頻響應(yīng)</p><p> 圖5.1.6 MATLAB設(shè)計(jì)FIR數(shù)字濾波器的脈沖響應(yīng)</p><p> 圖5.1.7 M
108、ATLAB設(shè)計(jì)FIR數(shù)字濾波器的參數(shù)</p><p> 對(duì)結(jié)果進(jìn)行四舍五入可得FIR濾波器的參數(shù)為:</p><p> ]由系數(shù)可以看出是線性相位對(duì)稱的FIR濾波器。</p><p> 根據(jù)以上所說的思路,可以將FIR濾波器的原理圖設(shè)計(jì)如下:</p><p> 圖5.1.8 FIR濾波器原理圖</p><p>
109、; 5.2 模塊電路設(shè)計(jì)</p><p> 設(shè)計(jì)的FIR濾波器可以分為以下三種模塊:寄存器、加法器、乘法器。</p><p><b> 寄存器</b></p><p><b> 寄存器原理</b></p><p> 寄存器用于寄存一組二值代碼,對(duì)寄存器的觸發(fā)器只要求他們具有置0、置1的功能
110、即可,因而本設(shè)計(jì)中用D觸發(fā)器原理組成寄存器,實(shí)現(xiàn)寄存功能。</p><p> 寄存器要求實(shí)現(xiàn)的功能</p><p> 在CLK正跳沿前接受輸入信號(hào),正跳沿時(shí)觸發(fā)翻轉(zhuǎn),正跳沿輸入后即被封鎖。</p><p><b> 寄存器的代碼</b></p><p><b> 見附錄2</b></p
111、><p><b> 寄存器的波形仿真</b></p><p> 圖5.2.1 8位寄存器框圖</p><p> 圖5.2.2 8位寄存功能仿真波形</p><p><b> 加法器</b></p><p> 本設(shè)計(jì)共使用了五種不同的加法器,為了提高設(shè)計(jì)精度,在中間過
112、程中都沒有將多余的數(shù)截去,直到最后一個(gè)加法器才截去多余的位數(shù)。這五種不同的加法器分別是:10位加10位加法器,17位加17位加法器,18位加18位加法器,19位加19位加法器,20位加20位加法器。各個(gè)加法器所用原理均相同,下面以10位加10位加法器為例。</p><p><b> 加法器的原理</b></p><p> 在將兩個(gè)多位二進(jìn)制數(shù)相加時(shí),除了最低位以外
113、,每一位都應(yīng)該考慮來自低位的進(jìn)位,即將兩個(gè)對(duì)應(yīng)位的加數(shù)和來自低位的進(jìn)位3個(gè)數(shù)相加。這種運(yùn)算稱為全加,所用的電路稱為全加器。</p><p> 多為加法器的構(gòu)成有兩種方式:并行進(jìn)位和串行進(jìn)位。并行進(jìn)位加法器設(shè)有進(jìn)位產(chǎn)生邏輯,預(yù)算速度較快;串行進(jìn)位方式是將全加器級(jí)聯(lián)構(gòu)成多位加法器。并行進(jìn)位加法器通常比串行級(jí)聯(lián)加法器占用更多的資源。隨著位數(shù)的增加,相同位數(shù)的并行加法器與串行加法器的資源占用差距也越來越大,因此,在工程
114、中使用加法器時(shí),要在速度和容量之間尋找平衡點(diǎn)。</p><p> 本設(shè)計(jì)中由于是帶符號(hào)數(shù)相加,直接將數(shù)據(jù)定義為帶符號(hào)數(shù),調(diào)用庫std_logic_arith就可以直接對(duì)帶符號(hào)數(shù)進(jìn)行算術(shù)運(yùn)算。</p><p> 加法器要求實(shí)現(xiàn)的功能</p><p> 實(shí)現(xiàn)兩個(gè)二進(jìn)制數(shù)字的相加運(yùn)算,當(dāng)達(dá)到時(shí)鐘上升沿時(shí),將兩數(shù)輸入、運(yùn)算、輸出結(jié)果。</p><p
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計(jì)基于fpga的fir數(shù)字濾波器設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)-基于fpga的fir數(shù)字濾波器設(shè)計(jì)
- 基于fpga的fir數(shù)字濾波器設(shè)計(jì)
- 基于fpga的fir數(shù)字濾波器設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--fir數(shù)字濾波器的設(shè)計(jì)
- 基于FPGA的FIR數(shù)字濾波器的設(shè)計(jì).pdf
- 畢業(yè)設(shè)計(jì)----基于matlab的fir數(shù)字濾波器設(shè)計(jì)
- 基于FPGA的高速FIR數(shù)字濾波器設(shè)計(jì).pdf
- fir數(shù)字濾波器的設(shè)計(jì)
- 基于fir的數(shù)字濾波器設(shè)計(jì)研究
- 基于fir的數(shù)字濾波器設(shè)計(jì)研究
- 基于FPGA的FIR數(shù)字濾波器設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于FPGA的FIR數(shù)字濾波器研究與設(shè)計(jì).pdf
- FIR數(shù)字濾波器的設(shè)計(jì).pdf
- fir數(shù)字濾波器的設(shè)計(jì)方法
- 基于dsp 的fir數(shù)字濾波器設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)----基于窗函數(shù)法fir數(shù)字濾波器的設(shè)計(jì)
- 基于FPGA的FIR數(shù)字濾波器的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于FPGA的FIR數(shù)字濾波器的設(shè)計(jì)和實(shí)現(xiàn).pdf
- 三fir數(shù)字濾波器的設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論