通信畢業(yè)設(shè)計-- 基于fpga的fir數(shù)字濾波器的設(shè)計_第1頁
已閱讀1頁,還剩57頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  畢業(yè)論文(設(shè)計)</b></p><p>  題目名稱: 基于FPGA的FIR數(shù)字濾波器的設(shè)計 </p><p>  題目類型: 畢 業(yè) 論 文 </p><p>  學(xué)生姓名:

2、 </p><p>  院 (系): 電子信息學(xué)院 </p><p>  專業(yè)班級: </p><p>  指導(dǎo)教師: </p><p>  輔導(dǎo)

3、教師: </p><p>  時 間: 2012年12月20日 至2013年6月10日 </p><p><b>  目錄</b></p><p>  畢業(yè)設(shè)計(論文)任務(wù)書Ⅰ</p><p><b>  開題報告Ⅱ</b&g

4、t;</p><p>  畢業(yè)論文(設(shè)計)指導(dǎo)教師評審意見III</p><p>  畢業(yè)論文(設(shè)計)評閱教師評語Ⅳ</p><p>  畢業(yè)論文(設(shè)計)答辯會議記錄Ⅴ</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è)計中的具體應(yīng)用4</p><p>  4 數(shù)字濾波器的原理及設(shè)計6</p><p>  4.1數(shù)字濾波器基礎(chǔ)6</p><p>  4.2 FIR數(shù)字濾波器的基本結(jié)構(gòu)7</p><p>  4.3 數(shù)字濾波器的設(shè)計10</p&g

7、t;<p>  4.4 FIR濾波器窗函數(shù)設(shè)計法步驟12</p><p>  5 FIR濾波器的設(shè)計與仿真13</p><p>  5.1設(shè)計方案13</p><p>  5.2 模塊電路設(shè)計20</p><p>  5.3 FIR濾波器的整體電路23</p><p>  5.4 FIR濾波器整

8、體電路仿真結(jié)果及結(jié)果分析26</p><p><b>  參考文獻28</b></p><p><b>  附錄29</b></p><p><b>  致 謝34</b></p><p>  畢業(yè)設(shè)計(論文)任務(wù)書</p><p>  學(xué)院(系

9、) 電子信息學(xué)院 專業(yè) 通信工程 班級 通信**</p><p>  學(xué)生姓名 ** 指導(dǎo)教師/職稱 ** (講師)</p><p>  畢業(yè)設(shè)計(論文)題目:</p><p>  基于FPGA的FIR數(shù)字濾波器的設(shè)計</p><p>  畢業(yè)設(shè)計(論文)起止時間:</p><p> 

10、 2012年12月20日~2013年6月10日</p><p>  2.畢業(yè)設(shè)計(論文)所需資料及原始數(shù)據(jù)(指導(dǎo)教師選定部分)</p><p>  FPGA開發(fā)板、MATLAB軟件、QUARTUSⅡ軟件</p><p>  1)徐 年,張劍英,基于FPGA的FIR數(shù)字濾波器的實現(xiàn),《信息工程》2007年第4期</p><p>  2)侯楓,杜

11、雪峰,基于VHDL語言的FIR數(shù)字濾波器的實現(xiàn),《三門峽職業(yè)技術(shù)學(xué)院學(xué)報》2009年12月</p><p>  3)黃睿,方康玲,基于FPGA的數(shù)字濾波器的硬件實現(xiàn)與應(yīng)用,《微計算機信息》(測控自動化)2006年第22卷第9-1期.</p><p>  4)孫耀奇,基于Matlab和FPGA的FIR數(shù)字濾波器的實現(xiàn),《現(xiàn)代電子技術(shù)》2008年第11期</p><p>

12、;  3.畢業(yè)設(shè)計(論文)應(yīng)完成的主要內(nèi)容</p><p>  1)利用Matlab工具箱設(shè)計線性相位FIR低通濾波器;</p><p>  2)了解窗函數(shù)設(shè)計FIR低通濾波器的方法,并對矩形窗、三角窗、漢明窗的幅度譜進行比較,選擇其中一種進行設(shè)計;</p><p>  3)利用Verilog HDL分別實現(xiàn)濾波器的各個模塊,仿真無誤后生成單元模塊圖;</p&

13、gt;<p>  4)然后在QuartusⅡ里調(diào)用該模塊,互聯(lián)后綜合得到系統(tǒng)電路圖;</p><p>  5)設(shè)計FIR低通濾波器測試電路。</p><p>  4.畢業(yè)設(shè)計(論文)的目標及具體要求</p><p>  目標:Matlab信號處理工具箱實現(xiàn)用窗函數(shù)法設(shè)計線性相位的FIR低通濾波器;VerilogHDL分別實現(xiàn)濾波器的各個模塊。</

14、p><p>  要求:①完成的任務(wù)必須符合實際工作要求</p><p>  ②論文按照規(guī)范格式寫作,文字字數(shù)不少于1.5萬</p><p>  5、完成畢業(yè)設(shè)計(論文)所需的條件及上機時數(shù)要求</p><p>  微機一臺:CPU 500M以上、內(nèi)存2G以上、硬盤20G以上</p><p>  軟件:Matlab、Quar

15、tusⅡ</p><p>  上機時數(shù)要求:上機時數(shù)不低于25學(xué)時。</p><p>  任務(wù)書批準日期 年 月 日 教研室(系)主任(簽字) </p><p>  任務(wù)書下達日期 年 月 日 指導(dǎo)教師(簽字) </p><p>  完成任務(wù)日期

16、 年 月 日 學(xué)生(簽名) </p><p><b>  畢業(yè)設(shè)計開題報告</b></p><p>  題 目 名 稱 基于FPGA的FIR數(shù)字濾波器的設(shè)計</p><p>  院 (系) 電 信 學(xué) 院 </p><p>  專 業(yè) 班 級

17、 通信** </p><p>  學(xué) 生 姓 名 </p><p>  指 導(dǎo) 教 師 ** </p><p>  輔 導(dǎo) 教 師 ** </p><p>  開題報告日期

18、 2013年3月23日 </p><p>  基于FPGA數(shù)字濾波器的設(shè)計</p><p>  學(xué) 生: **,電子信息學(xué)院(通信工程)</p><p>  指導(dǎo)教師:**,電子信息學(xué)院</p><p><b>  一 題目來源</b></p><p><b>  生

19、產(chǎn)社會實際</b></p><p><b>  二 研究目的及意義</b></p><p>  現(xiàn)今,在數(shù)字信號處理和電子應(yīng)用領(lǐng)域,濾波器作為一個不可缺少的組成部分,已經(jīng)廣泛應(yīng)用于通信、語音、圖像、軍事、航空、航天、醫(yī)療和家用電器等重要領(lǐng)域。FIR數(shù)字濾波器是數(shù)字信號處理系統(tǒng)中最基本的元件,其嚴格的線形相位特性,對于高保真的信號處理,如語音處理,數(shù)據(jù)處理和

20、測試等是十分重要的。利用FPGA可以進行重復(fù)配置高精度的FIR濾波器設(shè)計,使用VHDL硬件描述語言可以很方便地改變?yōu)V波器的系數(shù)和除數(shù)經(jīng)及實現(xiàn)大量的卷積運算算法。</p><p>  三 閱讀的主要參考文獻及資料名稱</p><p>  [1]薛嚴冰,韓雪,邵遠.基于分布式算法的FIR數(shù)字濾波器的FPGA實現(xiàn)[J].大連交通大學(xué)報,2009(30):84—87</p><

21、p>  [2]李錦屏.基于分布式算法的數(shù)字濾波器的設(shè)計[J].自動化與儀器儀表,2010(3):42—43</p><p>  [3]王天云.基于分布式算法的FIR濾波器的FPGA實現(xiàn)[J].艦船電子工程,2005(5):107—110</p><p>  [4]呂紹娟,趙不賄.FIR數(shù)字濾波器的FPGA實現(xiàn)[J].微計算機信息,2008(24):223—226</p>

22、<p>  [5]孫耀奇,高火濤,熊超,饒坤.基于MATLAB和FPGA的FIR數(shù)字濾波器的設(shè)計及實現(xiàn)[J].現(xiàn)代電子技術(shù),2008(11):89—92</p><p>  [6]孫躍光,劉仁鑫,程欣.基于VHDL的FIR低通數(shù)字濾波器的設(shè)計[J].微</p><p>  計算機信息,2010(26):150—152</p><p>  四 國內(nèi)外現(xiàn)狀和

23、發(fā)展趨勢與研究的主攻方向</p><p> ?。ㄒ唬﹪鴥?nèi)外現(xiàn)狀和發(fā)展趨勢:</p><p>  數(shù)字濾波在DSP中占有重要地位。數(shù)字濾波器按實現(xiàn)的網(wǎng)絡(luò)結(jié)構(gòu)或者從單位脈沖響應(yīng),分為IIR(無限脈沖響應(yīng))和FIR(有限脈沖響應(yīng))濾波器。如果IIR濾波器和FIR濾波器具有相同的性能,那么通常IIR濾波器可以用較低的階數(shù)獲得高的選擇性,執(zhí)行速度更快,所有的存儲單元更少,所以既經(jīng)濟又高效,但IIR濾

24、波器卻遠達不到FIR濾波器的線性相位。</p><p>  數(shù)字濾波在通信、圖像編碼、語音編碼、雷達等許多領(lǐng)域有著十分廣泛的應(yīng)用。目前,數(shù)字信號濾波器的設(shè)計在圖像處理,數(shù)據(jù)壓縮等方面的應(yīng)用取得了令人矚目的進展和成就。近年來迅速發(fā)展。</p><p>  隨著信息時代數(shù)字時代的到來,數(shù)字濾波技術(shù)已經(jīng)成為一門及其重要的科學(xué)和技術(shù)領(lǐng)域。數(shù)字濾波器精確度高,使用靈活,可靠性高,具有模擬設(shè)備沒有的許

25、多優(yōu)點,已廣泛地應(yīng)用與各個科學(xué)技術(shù)領(lǐng)域,例如數(shù)字電視,語音,通信、雷達、聲納、遙感、圖像、生物醫(yī)學(xué)以及許多工程應(yīng)用領(lǐng)域。以往的濾波器大多采用模擬電路技術(shù),但是模擬電路技術(shù)存在很多難以解決的問題,而采用數(shù)字則避免很多類似的難題,當然數(shù)字濾波器在其他方面也有很多突出的優(yōu)點都是模擬技術(shù)所不能及的,所以采用數(shù)字濾波器對信號進行處理是目前的發(fā)展方向。</p><p>  MATLAB是美國Mathworks公司推出的一套應(yīng)

26、用于工程計算的可視化高性能語言與軟件環(huán)境。它以矩陣運算為基礎(chǔ),把計算,可視化,程序設(shè)計融合到了一個交互式的工作環(huán)境中。MATLAB推出的工具箱使各個領(lǐng)域的研究人員可以直觀方便地進行科學(xué)研究、工程應(yīng)用,其中的信號處理、圖像處理、小波等工具箱為數(shù)字濾波研究的蓬勃發(fā)展提供了有力的工具。</p><p>  (二)研究的主攻方向:</p><p>  FIR數(shù)字濾波器的傳輸函數(shù)是全零點型,不存在極

27、點,因此也不會出現(xiàn)因極點可能跑到單位圓外面而導(dǎo)致系統(tǒng)的不穩(wěn)定的現(xiàn)象,并且由于它的單位脈沖響應(yīng)</p><p>  是有限長的,在實現(xiàn)濾波時,可采用FFT快速算法,因此,在一些需要線性相位的場合獲得了廣泛的應(yīng)用。因此,本課題重點介紹了FIR數(shù)字濾波器的設(shè)計和實現(xiàn)。</p><p>  基于FPGA數(shù)字濾波器的設(shè)計與實現(xiàn),不僅利用Matlab工具箱設(shè)計窗函數(shù)計算FIR濾波器系數(shù),并通過VHDL

28、層次化設(shè)計方法,同時FPGA與單片機相結(jié)合,采用C51及VHDL語言模塊化的設(shè)計思想進行優(yōu)化編程,進一步完善了數(shù)據(jù)的快速處理和有效控制,提高了設(shè)計的靈活性、可靠性,也系統(tǒng)功能的可擴展性。</p><p><b>  。</b></p><p>  五、主要研究內(nèi)容、需重點研究的關(guān)鍵問題及解決思路</p><p><b> ?。ㄒ唬┲饕?/p>

29、研究內(nèi)容</b></p><p>  FIR濾波器的硬件電路設(shè)計主要由前置放大電路、A/D轉(zhuǎn)換、D/A轉(zhuǎn)換、單片機、FPGA等部分組成。其中,數(shù)字濾波器利用Matlab工具箱設(shè)計窗函數(shù)計算FIR濾波器系數(shù),基于FPGA最終實現(xiàn)。系統(tǒng)設(shè)計框圖如下:</p><p><b>  信號輸入</b></p><p>  圖1 系統(tǒng)設(shè)計框圖

30、</p><p>  1)Matlab濾波器參數(shù)的設(shè)定</p><p>  使用Matlab軟件中的Filter Design_Toolbox工具箱中的FDA Tool,選擇所要設(shè)計的濾波器,通過不同的窗函數(shù)而產(chǎn)生的不同波形,實現(xiàn)濾波功能效果不</p><p>  同。可以依次得到h(n)的值。</p><p>  2)系統(tǒng)功能仿真測試<

31、;/p><p>  通過開發(fā)工具Quartus對各個模塊的VHDL源程序及頂層電路進行編譯、邏輯綜合,電路的糾錯、驗證、自動布局布線及仿真等各種測試,最終將設(shè)計編譯的數(shù)據(jù)下載到芯片中,同時與單片機AT89S51結(jié)合,進一步進行數(shù)據(jù)的快速處理和控制,實現(xiàn)鍵盤可設(shè)置參數(shù)及LCD顯示。</p><p><b>  3)設(shè)計思路分析</b></p><p>

32、;  這種基于FPGA數(shù)字濾波器的設(shè)計與實現(xiàn),不僅利用Matlab工具箱設(shè)計窗函數(shù)計算FIR濾波器系數(shù),并通過VHDL層次化設(shè)計方法,同時FPGA與單片機相結(jié)合,采用C51及VHDL語言模塊化的設(shè)計思想進行優(yōu)化編程,進一步完善了數(shù)據(jù)的快速處理和有效控制,提高了設(shè)計的靈活性、可靠性,也系統(tǒng)功能的可擴展性。(二)需重點研究的關(guān)鍵問題及解決方案</p><p>  1)對于具有對稱結(jié)構(gòu)的直接型FIR濾波器用加窗的設(shè)計方

33、法,經(jīng)比較后窗函數(shù)選用漢明窗,根據(jù)實際指標要求在Matlab和“Filter Design”工具里設(shè)置各參數(shù),然后算得系數(shù)h(n),得到的系數(shù)是用十進制表示的,需要將其轉(zhuǎn)換成系統(tǒng)要求的精度(如18位)的定點二制小數(shù),把所有系數(shù)乘以后再四舍五入即可。</p><p>  2)用Verilog HDL分別實現(xiàn)濾波器的各個模塊,仿真無誤后生成單元模塊圖,然后在Quartus II里調(diào)用該模塊,互聯(lián)后綜合得到系統(tǒng)電路圖。

34、</p><p><b>  六、工作條件</b></p><p>  計算機一臺、 FPGA開發(fā)板、12864液晶屏</p><p>  調(diào)試工具(示波器、函數(shù)信號發(fā)生器、穩(wěn)壓電源,萬用表)</p><p><b>  七、進度安排</b></p><p>  第1周:制定

35、畢業(yè)設(shè)計安排</p><p>  第2周:制作開題報告幻燈片,查找相關(guān)資料</p><p>  第3周:完成開題答辯</p><p><b>  第4周:方案審定</b></p><p>  第5周:學(xué)習(xí)VerilogHDL語言,設(shè)計思路等</p><p>  第6和7周:采用Matlab中的FD

36、ATool進行FIR數(shù)字濾波器參數(shù)的設(shè)定</p><p>  第8和9周:收集數(shù)字濾波器相關(guān)資料和數(shù)據(jù),并加以整理</p><p>  第10周:查找閱讀外文資料和文獻</p><p>  第11周:完成英語文稿翻譯</p><p>  第12和13周:完成畢業(yè)設(shè)計論文</p><p>  第14周:完成畢業(yè)設(shè)計答辯&

37、lt;/p><p>  八 指導(dǎo)教師審查意見</p><p><b>  簽名: </b></p><p><b>  年 月 日</b></p><p>  畢業(yè)論文(設(shè)計)指導(dǎo)教師評審意見</p><p>  畢業(yè)論文(設(shè)計)評閱教師評語</p>&l

38、t;p>  畢業(yè)論文(設(shè)計)答辯記錄及成績評定</p><p>  基于FPGA的FIR數(shù)字濾波器的設(shè)計</p><p>  學(xué) 生:** 電子信息學(xué)院</p><p>  指導(dǎo)老師:** 電子信息學(xué)院</p><p>  【摘要】隨著科技的發(fā)展,電子電路的設(shè)計正逐漸擺脫傳統(tǒng)的設(shè)計模式,而采用FPGA(現(xiàn)場可編程門陣列)來

39、設(shè)計電子電路正成為設(shè)計的趨勢。目前,在數(shù)字信號處理和電子應(yīng)用技術(shù)領(lǐng)域,濾波器作為一個不可少的組成部分,處在一個十分重要的地位,已經(jīng)廣泛應(yīng)用于通信、語音、圖像、自動控制、軍事、航空航天、醫(yī)療和家用電器等眾多領(lǐng)域,并日益顯示出其巨大的應(yīng)用價值。</p><p>  隨著利用計算機技術(shù)解決濾波器設(shè)計的不斷深入,派生出了一個新的分支,即數(shù)字濾波器,同模擬濾波器相比,它具有精度高、靈活性好、便于大規(guī)模集成等突出優(yōu)點,還可以

40、避免模擬濾波器所無法克服的電壓漂移、溫度漂移和噪聲等問題。有限長沖激響應(yīng)(FIR)濾波器,由于FIR系統(tǒng)只有零點、系統(tǒng)穩(wěn)定,便于實現(xiàn)FFT算法、運算速度快、線性相位的特性和設(shè)計更為靈活等突出優(yōu)點而在工程實際中獲得廣泛應(yīng)用。本文將研究基于FPGA設(shè)計FIR數(shù)字濾波器。</p><p>  【關(guān)鍵詞】FPGA 數(shù)字信號處理;數(shù)字濾波器;現(xiàn)場可編程門陣列;硬件描述語言</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ù)字信號處理中占有重要地位

48、。與模擬濾波器相比,數(shù)字濾波器可以滿足濾波器幅度和相位特性的嚴格要求,可以克服模擬濾波器所無法克服的電壓漂移、溫度漂移和噪聲等問題。</p><p>  FIR 濾波器被廣泛用于各類數(shù)字信號處理系統(tǒng)中實現(xiàn)卷積、相關(guān)、自適應(yīng)濾波、正交插值等處理,對于非實時系統(tǒng)和低速采樣系統(tǒng),FIR 濾波器的運算可在CPU 或DSP 處理器上采用軟件實現(xiàn)。但對于無線通訊、雷達以及工業(yè)控制,甚至語音信號處理等實時應(yīng)用,由于FIR 運算

49、計算量過大,采用DSP 軟件可能無法實現(xiàn),因此采用可編程器件便是最好的方法。有限沖激響應(yīng)(FIR)濾波器可以保證嚴格的線性相位。同時由于其實現(xiàn)結(jié)構(gòu)主要是非遞歸的,因此FIR 濾波器可以穩(wěn)定工作。 目前 FIR 濾波器大致有以下幾種實現(xiàn)方法:  (1)使用單片通用數(shù)字濾波器集成電路。單片通用數(shù)字濾波器使用簡單方便,但由于字長和階數(shù)的規(guī)格較少,不能完全滿足實際需要。雖可采用多片擴展來滿足,但會增加體積和功耗,因而在實際中受到一定限

50、制?! 。?)采用DSP 器件實現(xiàn)。由于有專門的函數(shù)可供調(diào)用,因此使用DSP 器件設(shè)計FIR濾波器相對較簡單,其應(yīng)用也最為廣泛。其唯一缺點是程序順序執(zhí)行,盡管DSP 器件性能不斷提高,但在某些實時性要求極高的場合中受到限制?! 。?)采用可編程邏輯器件實現(xiàn)。隨著可編程邏輯器件的容量和速度的不斷</p><p><b>  1 緒論</b></p><p>  在現(xiàn)

51、代信號處理和電子應(yīng)用技術(shù)領(lǐng)域,濾波器作為一種不可少的組成部分處在了一個十分重要的位置,并日益顯示出其巨大的應(yīng)用價值。</p><p>  長期以來,人們不斷地探索濾波器的設(shè)計與實現(xiàn)方法,努力地追求著簡化設(shè)計、減小體積、改善性能、提高靈活性和可靠性、便于制作等問題。隨著微電子學(xué)迅速發(fā)展,以單個芯片進行FIR濾波器的設(shè)計正在發(fā)展和應(yīng)用中。</p><p>  如今FIR濾波器的硬件設(shè)計有多種實

52、現(xiàn)方法。第一種是采用單片機來實現(xiàn),但單片機的處理速度比較慢。第二種是采用專用的DSP芯片,但DSP的串行指令執(zhí)行發(fā)式,時期工作速度和效率大打折扣,因此當濾波器的系數(shù)增加或字長增長時,計算時間會成倍增加,從而降低了最大有效數(shù)據(jù)采樣率。第三種是采用市場上通用的FIR濾波器集成電路,但由于它的通用性很難滿足設(shè)計者獨特的要求。第四種是采用可編程邏輯器件(PLD)的方法來實現(xiàn)。</p><p>  現(xiàn)場可編程門陣列FPGA

53、器件的出現(xiàn)是超大規(guī)模集成電路技術(shù)和計算機輔助設(shè)計技術(shù)發(fā)展的結(jié)果。FPGA器件集成度高、體積小,具有通過用戶編程實現(xiàn)專門應(yīng)用功能。但在很多工程設(shè)計應(yīng)用中,由FPGA器件完成的主程序中只完成大量的數(shù)學(xué)運算,程序調(diào)試時以二進制形式輸出的信號可視性差,給設(shè)計人員進行仿真、調(diào)試帶來了很多不便。對于很多工程設(shè)計人員來說MATLAB是一種熟悉的具有強大的運算功能和波形仿真、分析功能的軟件,如果能將FPGA與MATLAB接口,就可以快速、準確、直觀地對

54、FPGA程序進行校驗和仿真,尤其在數(shù)字信號處理等工程應(yīng)用領(lǐng)域具有實際意義。本文正是借助于MATLAB/Simulink工具設(shè)計分析FIR數(shù)字濾波器,并實現(xiàn)對FIR數(shù)字濾波器系統(tǒng)的模擬仿真。</p><p>  自從1989年美國Xilinx公司率先發(fā)明FPGA的概念以來,F(xiàn)PGA技術(shù)以其現(xiàn)場設(shè)計、現(xiàn)場修改、現(xiàn)場驗證、現(xiàn)場實現(xiàn)的可達數(shù)萬門級的數(shù)字系統(tǒng)單片化得應(yīng)用優(yōu)勢,隨著亞微米CMOS集成電路制作技術(shù)的成熟與發(fā)展,

55、器件集成度不斷增大,期間價格不斷下降的趨勢,逐漸受到各國電子系統(tǒng)應(yīng)用領(lǐng)域的設(shè)計工程師的廣泛關(guān)注和歡迎。時至今日,F(xiàn)PGA技術(shù)不再是ASIC技術(shù)領(lǐng)域的一個點綴和補充,而躍為電子應(yīng)用(包括通訊技術(shù)、計算機應(yīng)用、自動控制、儀器儀表)等諸多領(lǐng)域的實用技術(shù),成為科研實驗、樣機試制、小批量產(chǎn)品即時實現(xiàn)的最佳途徑。</p><p>  2 MATLAB軟件介紹</p><p>  2.1 MATLAB的

56、概況</p><p>  MATLAB(Matrix Laboratory)是矩陣實驗室之意,除具備卓越的數(shù)值計算能力外,它還提供了專業(yè)水平的符號計算、文字處理、圖像處理、語音處理、可視化建模仿真和實時控制等功能。</p><p>  在當今30多個數(shù)學(xué)類科技應(yīng)用軟件中,就軟件數(shù)學(xué)處理的原始內(nèi)核而言,可分為兩大類,一類是數(shù)值計算型軟件,如MATLAB,Xmath,Gauss等,這類軟件長

57、于數(shù)值計算,對處理大批數(shù)據(jù)效率高;另一類是數(shù)學(xué)分析軟件, Maple這類軟件以符號計算見長,能給出解析和任意精確解,其缺點是處理大量數(shù)據(jù)時效率較低,MathWorks公司順應(yīng)多功能需求之潮流,在其卓越數(shù)值計算和圖示能力的基礎(chǔ)上,又率先在專業(yè)水平上開拓了其符號計算,文字處理,可視化建模和實時控制能力,開發(fā)了適合多學(xué)科,多部門要求的新一代科技應(yīng)用軟件MATLAB。經(jīng)過多年的國際競爭,MATLAB已經(jīng)占據(jù)了數(shù)值軟件市場的主導(dǎo)地位。</p

58、><p>  世紀80年代初期,Cleve Moler與John Little等利用C語言開發(fā)了新一代的MATLAB語言,此時的MATLAB語言已同時具備了數(shù)值計算功能和簡單的圖形處理功能。1984年,Cleve Moler與John Little等正式成立了Mathworks公司,把MATLAB語言推向市場,并開始了對MATLAB工具箱等的開發(fā)設(shè)計。1993年,Mathworks公司推出了基于個人計算機的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信號處理工具箱里專用的濾波器設(shè)計分析工具 ,MATLAB6.0以上的版本還專門增加了濾波器設(shè)計工具箱 (Fi

60、lter Design Toolbox)。 FDATool可以設(shè)計幾乎所有的常規(guī)濾波器,包括FIR和IIR的各種設(shè)計方法 。它操作簡單 ,方便靈活。</p><p>  FDATool界面分為兩大部分,一部分是Design Filter,在界面的下半部,用來設(shè)置濾波器的設(shè)計參數(shù);另一部分則是特性區(qū),在界面的上半部分,用來顯示濾波器的各種特性。 Design Filter部分主要分為:FilterType(濾波器類

61、型 )選項,包括Lowpass(低通 )、Highpass(高通 )、Bandpass(帶通 )、Bandstop(帶阻 )和特殊的FIR濾波器。</p><p>  Design Method(設(shè)計方法 )選項,包括IIR濾波器的Butterowrth(巴特沃思 )法、Chebyshev Type I(切比雪夫I型 )法、Chebyshev Type Ⅱ (切比雪夫Ⅱ型 )法、Elliptic(橢圓濾波器 )法

62、和FIR濾敞器的Equiripple法、Least-Squares(最小乘方 )法、Window(窗函數(shù) )法。</p><p>  filter order(濾波器階數(shù))選項,定義濾波器的階數(shù),包括specify order(指定階數(shù))和minimum order(最小階數(shù))。在specify order中填入所要設(shè)計的濾波器的階數(shù)(n階濾波器,specify order=n-1),如果選擇minimum or

63、der則matlab根據(jù)所選擇的濾波器類型自動使用最小階數(shù)。</p><p>  frenquency specifications選項,可以詳細定義頻帶的各參數(shù),包括采樣頻率fs和頻帶的截止頻率。它的具體選項由filter type選項和design method選項決定,例如bandpass(帶通)濾波器需要定義fstop1(下阻帶截止頻率)、fpass1(通帶下限截止頻率)、 fpass2(通帶上限截止頻率

64、)、fstop2(上阻帶截止頻率),而lowpass(低通)濾波器只需要定義fstop1、fpass1。采用窗函數(shù) 設(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和美國國防部確認為標準硬件描述語言。子IEEE公布了VHDL的標準版本,IEEE-1076(簡稱87版)之后,各EDA公司相繼推出了自己的VHDL設(shè)計環(huán)境,或宣布自己的設(shè)計工具可以和VHDL接口。此后VHDL在電子設(shè)計領(lǐng)域得到了廣泛的接受,并逐步取代了原

66、有的非標準的硬件描述語言。1993年,IEEE對VHDL進行了修訂,從更高的抽象層次和系統(tǒng)描述能力上擴展VHDL的內(nèi)容,公布了新版本的VHDL,即IEEE標準的1076-1993版本,(簡稱93版)?,F(xiàn)在,VHDL和Verilog作為IEEE的工業(yè)標準硬件描述語言,又得到眾多EDA公司的支持,在電子工程領(lǐng)域,已成為事實上的通用硬件描述語言。有專家認為,在新的世紀中,VHDL與Verilog語言將擔負起大部分的數(shù)字系統(tǒng)設(shè)計任務(wù)。</

67、p><p>  3.2 FPGA在設(shè)計中的具體應(yīng)用</p><p>  在利用FPGA進行FIR濾波器研究時,為了確保設(shè)計的順利完成,必須對一些問題仔細考慮。在本章中將詳細討論基于FPGA涉及硬件電路的方式優(yōu)于傳統(tǒng)的硬件電路的設(shè)計模式,F(xiàn)PGA的結(jié)果和用到的器件的結(jié)構(gòu)、FPGA的開發(fā)環(huán)境及開發(fā)語言,在本設(shè)計中數(shù)是如何具體表示的和運算在FPGA中是如何完成的,以及在FIR濾波器的設(shè)計中重要部件

68、的設(shè)計方法。</p><p><b>  硬件電路的設(shè)計方式</b></p><p>  隨著計算機軟件、硬件和集成電路制造技術(shù)的飛速發(fā)展,以及數(shù)字硬件設(shè)計復(fù)雜度快速增長和設(shè)計成果的繼承性的需要,對數(shù)字硬件系統(tǒng)的設(shè)計方法產(chǎn)生了極大的影響,傳統(tǒng)的以線路圖為基礎(chǔ)的數(shù)字硬件系統(tǒng)設(shè)計方法正逐步被以硬件描述語言為基礎(chǔ)的設(shè)計方法所取代。</p><p> 

69、 傳統(tǒng)的硬件電路設(shè)計方法</p><p>  在傳統(tǒng)的硬件電路設(shè)計中,設(shè)計者需要先了解整個系統(tǒng)的原理,畫出相應(yīng)的原理圖,在根據(jù)原理圖生成相應(yīng)的線路圖,還需要對軟件生成的線路圖進行布線,布線好的在拿到工廠生產(chǎn)電路板,在按原理圖和電路圖將相應(yīng)的原件插入PCB板中,焊接,整體調(diào)試等。整個過程很復(fù)雜,有點像搭積木的性質(zhì),設(shè)計者的許多時間會被無謂的浪費,而且設(shè)計的周期非常長,并且要求設(shè)計者具有過硬的電子電路知識和設(shè)計開發(fā)經(jīng)

70、驗。</p><p>  從上述描述看出,系統(tǒng)硬件的設(shè)計是從選擇具體元器件開始的,并用這些元器件進行邏輯電路設(shè)計,即從最底層開始設(shè)計,完成系統(tǒng)各獨立功能模塊設(shè)計,然后再將個功能模塊連接起來,直到最高層,完成整個系統(tǒng)的硬件設(shè)計。用上述設(shè)計方法設(shè)計的數(shù)字硬件系統(tǒng)最后形成的設(shè)計文件,主要是由若干張電路原理圖構(gòu)成的文件。在電路原理圖中詳細標注了各邏輯單元、器件的名稱和相互之間的信號連接關(guān)系。</p><

71、;p>  基于FPGA的硬件電路設(shè)計方法</p><p>  基于FPGA來設(shè)計電路與傳統(tǒng)的方法有本質(zhì)的不同,它摒棄了傳統(tǒng)設(shè)計中的不靈活性,其可以通過軟件編程的方法而對硬件結(jié)構(gòu)和工作方式進行重構(gòu),使得硬件的設(shè)計可以如同軟件設(shè)計那樣方便快捷,從這一點上來說,軟件設(shè)計師只要具備一定的電子設(shè)計思想,就完全可以轉(zhuǎn)到此項工作。</p><p>  在本文中使用的是VHDL語言,最早是由美國國防

72、部為描述電子電路所開發(fā)的一種語言,它可以很方便地描述一個系統(tǒng)的功能,也可以詳細描述一個器件的狀態(tài)。</p><p>  4 數(shù)字濾波器的原理及設(shè)計</p><p>  4.1 數(shù)字濾波器基礎(chǔ)</p><p><b>  數(shù)字濾波器的概述</b></p><p>  數(shù)字濾波器(digital filter)是由數(shù)字乘法器

73、、加法器和延時單元組成的一種裝置。其功能是對輸入離散信號的數(shù)字代碼進行運算處理,以達到改變信號頻譜的目的。由于電子計算機技術(shù)和大規(guī)模集成電路的發(fā)展,數(shù)字濾波器已可用計算機軟件實現(xiàn),也可用大規(guī)模集成數(shù)字硬件來實現(xiàn)。數(shù)字濾波器是一個離散時間系統(tǒng)(按預(yù)定的算法,將輸入離散時間信號轉(zhuǎn)換為所要求的輸出離散時間信號的特定功能裝置)。</p><p><b>  數(shù)字濾波器的特點</b></p>

74、;<p>  線性時間不變(Line Time-Invariant, LTI)數(shù)字濾波器通常分為有限脈沖響應(yīng)(Finite Impulse Response, FIR)和無限脈沖響應(yīng)(Infinite Impulse Response, IIR)兩大類。FIR濾波器相對于IIR濾波器的有點與不足如下:</p><p><b>  優(yōu)點:</b></p><p

75、>  1.具有嚴格的線性相位又具有任意的幅度;</p><p>  2.FIR濾波器的單位采樣響應(yīng)是有限長的,因而濾波器的性能穩(wěn)定;</p><p>  3.FIR濾波器由于單位沖激響應(yīng)是有限長的,因而可以用快速傅里葉變換(FFT)算法來實現(xiàn)過濾信號,可以大大提高運算效率。</p><p><b>  不足:</b></p>

76、<p>  1.FIR系統(tǒng)的系數(shù)長度一般會比IIR系統(tǒng)大,也就是說要設(shè)計一個符合要求的濾波器,F(xiàn)IR系統(tǒng)需要較多乘法器,當以直接回旋運算執(zhí)行時其效率差。</p><p>  2.此系統(tǒng)的輸出延遲時間長。</p><p>  由上面的比較可以看出,F(xiàn)IR濾波器還存在缺點,但采用FPGA進行FIR濾波器的設(shè)計,運用FPGA中的算法來提高速度,縮短延遲的時間,可以使FIR濾波器負荷指

77、標的要求,隨著FPGA的快速發(fā)展,F(xiàn)IR的缺點將逐漸被克服。</p><p>  FIR數(shù)字濾波器的基礎(chǔ)</p><p>  數(shù)字濾波器(DF)是個離散系統(tǒng),它所處理的對象是用序列表示離散信號或數(shù)字信號。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)過一定的運算變換成輸出的序列。對于FIR系統(tǒng),其系統(tǒng)函數(shù)僅有零點(除z=0的極點外),因此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)是因果序列,因為其輸出僅與即時輸入以及過去的輸入數(shù)據(jù)有關(guān),而與過去的輸出數(shù)據(jù)沒有直接關(guān)系。由此可見FIR濾波器是因果的,是物理可實現(xiàn)的系統(tǒng),因而它在實際中往往采用非遞歸(無反饋

80、作用)形式的結(jié)構(gòu)來實現(xiàn)。</p><p>  4.2 FIR數(shù)字濾波器的基本結(jié)構(gòu)</p><p>  FIR濾波器的構(gòu)成形式主要有直接型、級聯(lián)型、線性相位FIR濾波器和頻率采樣型等,下面分別加以討論。</p><p><b>  直接型結(jié)構(gòu)</b></p><p>  圖4.2.1 給出了N階LTI型FIR濾波器的圖解

81、。由圖4. 2.1可見FIR濾波器是由一個抽頭延遲線、加法器和乘法器的幾何構(gòu)成的。</p><p>  圖4.2.1 直接型結(jié)構(gòu)的FIR濾波器</p><p><b>  級聯(lián)型</b></p><p>  如將式(4.1.3)分解為二階實系數(shù)因子形式: (4.2.1)</p>&l

82、t;p>  級聯(lián)型FIR濾波器的優(yōu)缺點如下:</p><p>  優(yōu)點:每一節(jié)控制一堆零點,因而在需要控制傳輸零點的場合時可采用;</p><p>  缺點:相應(yīng)的濾波系數(shù)增加,乘法運算次數(shù)增加,因而需要較多的存儲器,運算時間比直接型長。</p><p>  線性相位FIR系統(tǒng)的結(jié)構(gòu) </p><p>  線性相位響應(yīng)的優(yōu)點如下:<

83、;/p><p>  1.設(shè)計問題中只有實數(shù)運算而沒有復(fù)數(shù)運算,運算簡單;</p><p>  2.線性相位FIR濾波器沒有延時失真,僅有某一固定時延,便于設(shè)計;</p><p>  3.對于長度為M(或M-1)的濾波器,其運算次數(shù)具有M/2量級,提高運算速度,節(jié)省資源。</p><p>  系統(tǒng)相位線性度的標準尺度就是“組延遲”,其定義為:<

84、;/p><p><b>  (4.2.2)</b></p><p>  完全理想的線性相位濾波器對于一定頻率范圍的組延遲是一個常數(shù),如果濾波器是對稱或反對稱的,就可以實現(xiàn)線性相位。</p><p>  線性相位(相移)表示一個系統(tǒng)的相頻特性與頻率成正比,由于不同頻率傳輸速度都一樣,所以信號通過它產(chǎn)生的時間延遲等于常數(shù)k,所以不出現(xiàn)相位失真,對于一個

85、數(shù)字系統(tǒng)來說,即</p><p><b>  (4.2.3)</b></p><p>  假設(shè)一個離散時間系統(tǒng)的幅頻特性等于1,則信號通過該系統(tǒng)后,其輸出 的頻率特性</p><p><b>  (4.2.4)</b></p><p>  所以 ,這樣輸出和輸入在時間上是唯一對應(yīng)的,達到無失真?zhèn)鬏數(shù)?/p>

86、目的。</p><p>  可以證明,線性相位的條件為:</p><p>  (1) 偶對稱 (2) 奇對稱</p><p>  即如果單位脈沖響應(yīng) 為實數(shù),且具有偶對稱或及對稱性,則FIR數(shù)字濾波器具有嚴格的線性相位特性,其對稱中心在 處。線性相位型FIR濾波器的優(yōu)點:簡化網(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ù)化的實現(xiàn)結(jié)構(gòu),一個有限長序列可以由相同長度頻域采樣值來唯一確定。</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)級聯(lián)而成。</p><p>  頻率采樣型FIR濾波器的優(yōu)缺點如下:<

89、/p><p>  優(yōu)點:選頻性好,適于窄帶濾波,這里大部分 為零,只有較少的二階子網(wǎng)絡(luò);不同的FIR濾波器若長度相同,可通過改變系統(tǒng)用用同一個網(wǎng)絡(luò)實現(xiàn);復(fù)用性好。</p><p>  缺點:具體實現(xiàn)時難免存在誤差,零、極點可能不能正好抵消,造成系統(tǒng)不穩(wěn)定;結(jié)構(gòu)復(fù)雜,采用的存儲器多。</p><p>  4.3 數(shù)字濾波器的設(shè)計</p><p>

90、  FIR濾波器設(shè)計方法是以直接逼近所需離散系統(tǒng)的頻率響應(yīng)為基礎(chǔ)的。設(shè)計方法包括窗函數(shù)法和最優(yōu)化方法(等同紋波法),其中窗函數(shù)法是設(shè)計FIR濾波器的最常用的方法之一。這里重點介紹窗函數(shù)法設(shè)計FIR數(shù)字濾波器。</p><p>  窗設(shè)計的基本思想是要選取某一合適的理想頻率選擇性濾波器,然后將他的脈沖響應(yīng)截斷以得到一個線性相位和因果的FIR濾波器。</p><p>  任何數(shù)字濾波器的頻率響

91、應(yīng)都是的周期函數(shù),它的傅里葉級數(shù)展開式為:</p><p><b>  (4.3.1)</b></p><p>  其中 (4.3.2)</p><p>  傅里葉系數(shù) 實際上就是濾波器的沖激響應(yīng)。由于 可能是無限長序列且為非因果響應(yīng),是物理不可實現(xiàn)的,為此要尋找一個因果的 ,在

92、相應(yīng)的誤差準則下最佳逼近 。窗函數(shù)法設(shè)計的初衷是使設(shè)計的濾波器頻率特性 </p><p>  在頻域均方誤差最小意義下進行逼近,即</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>  是有限長序列,當及時, ,這里僅以沖激響應(yīng)對稱即</p><p>  ,(n=1,2,3 ),N-1時低通濾波器為例說明。低通濾波器的頻率響應(yīng)函數(shù) 如下式所示:</p><p><b>  (4.3.5)</b></p><p>  在 時為0,其中 為采樣頻

94、率歸一化時的角頻率, 為歸一化截止角頻率。利用傅里葉變換公式求出式(4.3.2)對應(yīng)的沖激響應(yīng) 為:</p><p><b>  (4.3.6)</b></p><p>  設(shè)計FIR濾波器常用的窗函數(shù)由:矩形函數(shù)窗、三角(Bartlett)窗函數(shù)、漢寧(Hanning)窗函數(shù)、海明(Hamming)窗函數(shù)、布萊克曼(Blackman)窗函數(shù)和凱澤(Kaiser)窗函

95、數(shù),具體性能指標可參看表4.3.1。</p><p>  表4.3.1 窗函數(shù)性能指標比較</p><p><b>  窗函數(shù)的選擇原則:</b></p><p>  1.具有較低的旁瓣幅度,尤其是第一旁瓣幅度;</p><p>  2.旁瓣幅度下降速度要快,以利增加阻帶衰減;</p><p>

96、  3.主瓣寬度要窄,以獲得較陡的過渡帶。</p><p>  通常上述幾點很難同時滿足。當選用主瓣寬度較窄時,雖然較陡的過渡帶,但通帶和阻帶的波動明顯增加;當選用最小的旁瓣幅度時,雖然能得到勻滑的幅度響應(yīng)和較小的阻帶波動,但是過渡帶加寬。因此,實際選用的窗函數(shù)往往是它們的折中。在保證主瓣寬度達到一定要求的條件下,適當犧牲主瓣寬度來換取旁瓣波動的減小。</p><p>  4.4 FIR

97、濾波器窗函數(shù)設(shè)計法步驟 </p><p>  寫出相應(yīng)理想濾波器的單位脈沖響應(yīng)表達式</p><p>  確定窗口的類型(根據(jù)確定)</p><p>  確定窗口長度確定延時常數(shù)</p><p><b>  得到FIR濾波器</b></p><p>  (注: 為阻帶衰減;為各種窗函數(shù)的頻率響應(yīng))

98、</p><p>  5 FIR濾波器的設(shè)計與仿真</p><p><b>  5.1設(shè)計方案</b></p><p><b>  主要研究內(nèi)容</b></p><p>  FIR濾波器的硬件電路設(shè)計主要由前置放大電路、A/D轉(zhuǎn)換、D/A轉(zhuǎn)換、單片機、FPGA等部分組成。其中,數(shù)字濾波器利用Matl

99、ab工具箱設(shè)計窗函數(shù)計算FIR濾波器系數(shù),基于FPGA最終實現(xiàn)。系統(tǒng)設(shè)計框圖如下:</p><p><b>  信號輸入</b></p><p>  圖5.1.1 系統(tǒng)設(shè)計框圖</p><p>  Matlab濾波器參數(shù)的設(shè)定</p><p>  使用Matlab軟件中的Filter Design_Toolbox工具箱

100、中的FDA Tool,選擇所要設(shè)計的濾波器,通過不同的窗函數(shù)而產(chǎn)生的不同波形,實現(xiàn)濾波功能效果不同??梢砸来蔚玫絟(n)的值。</p><p><b>  系統(tǒng)功能仿真測試</b></p><p>  通過開發(fā)工具Quartus對各個模塊的VHDL源程序及頂層電路進行編譯、邏輯綜合,電路的糾錯、驗證、自動布局布線及仿真等各種測試,最終將設(shè)計編譯的數(shù)據(jù)下載到芯片中,同時

101、與單片機AT89S51結(jié)合,進一步進行數(shù)據(jù)的快速處理和控制,實現(xiàn)鍵盤可設(shè)置參數(shù)及LCD顯示。</p><p><b>  設(shè)計思路分析</b></p><p>  這種基于FPGA數(shù)字濾波器的設(shè)計與實現(xiàn),不僅利用Matlab工具箱設(shè)計窗函數(shù)計算FIR濾波器系數(shù),并通過VHDL層次化設(shè)計方法,同時FPGA與單片機相結(jié)合,采用C51及VHDL語言模塊化的設(shè)計思想進行優(yōu)化編

102、程,進一步完善了數(shù)據(jù)的快速處理和有效控制,提高了設(shè)計的靈活性、可靠性,也系統(tǒng)功能的可擴展性。</p><p>  需重點研究的關(guān)鍵問題及解決方案</p><p>  對于具有對稱結(jié)構(gòu)的直接型FIR濾波器用加窗的設(shè)計方法,經(jīng)比較后窗函數(shù)選用漢明窗,根據(jù)實際指標要求在Matlab和“Filter Design”工具里設(shè)置各參數(shù),然后算得系數(shù)h(n),得到的系數(shù)是用十進制表示的,需要將其轉(zhuǎn)換成系

103、統(tǒng)要求的精度(如18位)的定點二制小數(shù),把所有系數(shù)乘以后再四舍五入即可。</p><p>  用Verilog HDL分別實現(xiàn)濾波器的各個模塊,仿真無誤后生成單元模塊圖,然后在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濾波器很容易獲得嚴格的線性相位特性,避免被處理信號產(chǎn)生相位失真。而線性相位體現(xiàn)在時域中僅僅是h(n)在時間上的延遲,這個特點在圖像信號處理、數(shù)據(jù)傳輸?shù)炔ㄐ蝹鬟f系統(tǒng)中是非常重要的。此外,它不會發(fā)生阻塞現(xiàn)象,能避免強信號淹沒弱信號,因此特別適合信號強弱相差懸殊的情況。</p><p>  FIR數(shù)字濾波器的設(shè)計方案</p><p>  通常窗函數(shù)設(shè)計FIR濾

105、波器的方法,利用MATLAB濾波器設(shè)計工具求出FIR濾波器的系數(shù),在用VHDL語言及框圖編寫濾波器。</p><p>  對于線性相位因果FIR濾波器,它的系數(shù)具有中心對稱特性,即 。令 ,對于偶對稱,帶入可得:</p><p><b>  (5.1.1)</b></p><p>  根據(jù)要求,要設(shè)計一個輸入8位,輸出8位的17階線性相位FIR

106、濾波器,所以采用圖2(a)的方式,其中輸入信號范圍為:[±99,0,0,0, ±70,0,0,0, ±99,0,0,0, ±70,…],此濾波器 Fs為44kHz,Fc為10.4kHz。用Kaiser窗,Beta=0.5.MATLAB設(shè)計計算濾波器系數(shù)過程如下:</p><p>  圖5.1.2 用FDATOOL設(shè)計數(shù)字濾波器</p><p>  

107、圖5.1.3 MATLAB設(shè)計FIR數(shù)字濾波器參數(shù)設(shè)置 </p><p>  圖5.1.4 MATLAB設(shè)計FIR數(shù)字濾波器的幅頻響應(yīng)</p><p>  圖5.1.5 MATLAB設(shè)計FIR數(shù)字濾波器的相頻響應(yīng)</p><p>  圖5.1.6 MATLAB設(shè)計FIR數(shù)字濾波器的脈沖響應(yīng)</p><p>  圖5.1.7 M

108、ATLAB設(shè)計FIR數(shù)字濾波器的參數(shù)</p><p>  對結(jié)果進行四舍五入可得FIR濾波器的參數(shù)為:</p><p>  ]由系數(shù)可以看出是線性相位對稱的FIR濾波器。</p><p>  根據(jù)以上所說的思路,可以將FIR濾波器的原理圖設(shè)計如下:</p><p>  圖5.1.8 FIR濾波器原理圖</p><p>

109、;  5.2 模塊電路設(shè)計</p><p>  設(shè)計的FIR濾波器可以分為以下三種模塊:寄存器、加法器、乘法器。</p><p><b>  寄存器</b></p><p><b>  寄存器原理</b></p><p>  寄存器用于寄存一組二值代碼,對寄存器的觸發(fā)器只要求他們具有置0、置1的功能

110、即可,因而本設(shè)計中用D觸發(fā)器原理組成寄存器,實現(xiàn)寄存功能。</p><p>  寄存器要求實現(xiàn)的功能</p><p>  在CLK正跳沿前接受輸入信號,正跳沿時觸發(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è)計共使用了五種不同的加法器,為了提高設(shè)計精度,在中間過

112、程中都沒有將多余的數(shù)截去,直到最后一個加法器才截去多余的位數(shù)。這五種不同的加法器分別是:10位加10位加法器,17位加17位加法器,18位加18位加法器,19位加19位加法器,20位加20位加法器。各個加法器所用原理均相同,下面以10位加10位加法器為例。</p><p><b>  加法器的原理</b></p><p>  在將兩個多位二進制數(shù)相加時,除了最低位以外

113、,每一位都應(yīng)該考慮來自低位的進位,即將兩個對應(yīng)位的加數(shù)和來自低位的進位3個數(shù)相加。這種運算稱為全加,所用的電路稱為全加器。</p><p>  多為加法器的構(gòu)成有兩種方式:并行進位和串行進位。并行進位加法器設(shè)有進位產(chǎn)生邏輯,預(yù)算速度較快;串行進位方式是將全加器級聯(lián)構(gòu)成多位加法器。并行進位加法器通常比串行級聯(lián)加法器占用更多的資源。隨著位數(shù)的增加,相同位數(shù)的并行加法器與串行加法器的資源占用差距也越來越大,因此,在工程

114、中使用加法器時,要在速度和容量之間尋找平衡點。</p><p>  本設(shè)計中由于是帶符號數(shù)相加,直接將數(shù)據(jù)定義為帶符號數(shù),調(diào)用庫std_logic_arith就可以直接對帶符號數(shù)進行算術(shù)運算。</p><p>  加法器要求實現(xiàn)的功能</p><p>  實現(xiàn)兩個二進制數(shù)字的相加運算,當達到時鐘上升沿時,將兩數(shù)輸入、運算、輸出結(jié)果。</p><p

溫馨提示

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

評論

0/150

提交評論