版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p> EDA設(shè)計基礎(chǔ)實驗課程論文</p><p> 題 目 基于FPGA的FIR數(shù)字低通濾波器的設(shè)計 </p><p> 學(xué) 院 通信與電子工程學(xué)院 </p><p> 專業(yè)班級 通信111班
2、 </p><p> 學(xué)生姓名 </p><p> 指導(dǎo)教師 </p><p> 2013年 6月 3日</p><p><b> 目 錄<
3、/b></p><p><b> 摘要I</b></p><p> AbstractII</p><p><b> 第1章 緒論1</b></p><p> 1.1 課題的目的和意義1</p><p> 1.2 FPGA技術(shù)的發(fā)展及應(yīng)用2</
4、p><p> 1.3 FPGA軟件設(shè)計工具Quartus II3</p><p> 第2章 FIR數(shù)字濾波器的理論研究及分析5</p><p> 2.1 數(shù)字濾波器的理論基礎(chǔ)5</p><p> 2.2 數(shù)字濾波器的分類5</p><p> 2.3 FIR數(shù)字濾波器的設(shè)計方法6</p>&
5、lt;p> 第3章FPGA DSP系統(tǒng)設(shè)計分析7</p><p> 3.1 DSP的基本概念7</p><p> 3.2 FPGA實現(xiàn)DSP的特點8</p><p> 3.3 DSP Builder設(shè)計工具及設(shè)計規(guī)則9</p><p> 第4章 基于FPGA的FIR低通濾波器設(shè)計12</p><p
6、> 4.1設(shè)計方案12</p><p> 4.2 FDATool濾波器設(shè)計12</p><p> 4.3 FPGA定點數(shù)的確定14</p><p> 4.3.1導(dǎo)出系數(shù)文件14</p><p> 4.3.2 FPGA定點數(shù)轉(zhuǎn)換15</p><p> 4.4 FIR濾波器模型的建立17<
7、;/p><p> 4.4.1乘加子系統(tǒng)的搭建17</p><p> 4.4.2 濾波器模塊的添加和模塊參數(shù)設(shè)置21</p><p> 4.4.3各模塊的連接27</p><p> 第5章Simulink仿真29</p><p> 5.1 仿真時間設(shè)定29</p><p> 5.
8、2 示波器模塊顯示29</p><p> 5.3 仿真結(jié)果分析31</p><p><b> 結(jié)論33</b></p><p><b> 參考文獻34</b></p><p><b> 致謝35</b></p><p><b>
9、; 附錄36</b></p><p> 附錄1 FIR濾波器仿真模型圖36</p><p> 附錄2 FIR濾波器測試模型圖37</p><p> 附錄3 FPGA定點數(shù)轉(zhuǎn)換程序37</p><p><b> 摘 要</b></p><p> 在現(xiàn)代通信領(lǐng)域中,F(xiàn)
10、IR數(shù)字濾波器以其良好的線性特性被廣泛使用,屬于數(shù)字信號處理的基本模塊之一。在實踐中,往往要求對信號處理有實時性和靈活性,而已有的一些軟件和硬件的實現(xiàn)方式則難以同時到達這兩方面的要求。隨著可編程邏輯器件和FDA技術(shù)的發(fā)展,使用FPGA來實現(xiàn)FIR濾波器,既具有實時性,又兼顧了一定的靈活性,越來越多的電子工程師采用FPGA器件來實現(xiàn)FIR濾波器。</p><p> 本設(shè)計利用MATLAB/Simulink/DSP
11、 Builder設(shè)計一個FIR濾波器。首先根據(jù)濾波器指標,利用MATLAB工具箱濾波器設(shè)計工具設(shè)計濾波器,然后根據(jù)實際需要將系數(shù)導(dǎo)出并量化。接下來在Simulink中使用Simulink庫和DSP Builder庫建立設(shè)計模型,并在Simulink中仿真。</p><p> 關(guān)鍵詞:FPGA,F(xiàn)IR低通濾波器,DSP Builder,Simulink</p><p><b>
12、 Abstract</b></p><p> In the modern communications field, the FIR Digital Filter is used from any practical applications for its good linear phase character, and it provide an important function in di
13、gital signal processing design. In practice, there is always a real-time and flexible requirement for signal processing. However, software and hardware techniques available for implementation are difficult to meet the de
14、mand for the two aspects in the same time.Along with the development of PLD device and EDA technology,</p><p> This design uses MATLAB / Simulink / DSP Builder to design a FIR Digital Filter . Firstly accor
15、ding to the index of the filter, MATLAB /Toolboxes / Filter Design / Filter Design & Analysis Tool(FDATool) is used to design the filter . Then according to practical requirement derive and quantify the coefficient .
16、 Use the Simulink Library and the DSP Builder Library to establish design model and simulate in the Simulink.</p><p> Key words: FPGA,F(xiàn)IR low pass Filter , DSP Builder , Simulink</p><p><b&g
17、t; 第1章 緒論</b></p><p><b> 1.1 概述</b></p><p> 在當(dāng)今的生活中,身邊的工程技術(shù)領(lǐng)域越來越受到關(guān)注。其中的通信領(lǐng)域所涉及到的各種信號更是重中之重。如何在較強的背景的噪聲下和干擾的信號下有效提煉出真正的有用信號并將其真正運用到實際的工程中,這正是信號處理要解決的問題。上世紀60年代,數(shù)字信號處理在理論層上發(fā)
18、展迅猛。其體系和框架逐漸成熟,如今,數(shù)字信號處理已經(jīng)成為一門完整的學(xué)科。其涉及到許多學(xué)科而又廣泛應(yīng)用于許多領(lǐng)域,20世紀60年代以來,隨著計算機和信息技術(shù)的飛速發(fā)展,數(shù)字信號處理技術(shù)應(yīng)運而生并得到迅速的發(fā)展。數(shù)字信號處理是一種通過使用數(shù)學(xué)技巧執(zhí)行轉(zhuǎn)換或提取信息,來處理現(xiàn)實信號的方法,這些信號由數(shù)字序列表示。</p><p> 而數(shù)字濾波器在這門學(xué)科中占有很重要的地位。數(shù)字濾波器是一個離散時間系統(tǒng)(按預(yù)定的算法,
19、將輸入離散時間信號要求的輸出離散時間信號的轉(zhuǎn)換為所特定功能裝置)。應(yīng)用數(shù)字濾波器處理模擬信號時,首先須對輸入模擬信號進行限帶、抽樣和模數(shù)轉(zhuǎn)換。數(shù)字濾波器輸入信號的抽樣率應(yīng)大于被處理信號帶寬的兩倍,其頻率響應(yīng)具有以抽樣頻率為間隔的周期重復(fù)特性,且以折疊頻率即1/2抽樣頻率點呈鏡像對稱。為得到模擬信號,數(shù)字濾波器處理的輸出數(shù)字信號須經(jīng)數(shù)模轉(zhuǎn)換、平滑。數(shù)字濾波器具有高精度、高可靠性、可程控改變特性或復(fù)用、便于集成等優(yōu)點。數(shù)字濾波器在語言信號處
20、理、圖像信號處理、醫(yī)學(xué)生物信號處理以及其他應(yīng)用領(lǐng)域都得到了廣泛應(yīng)用。它涉及到的領(lǐng)域很廣,如通信系統(tǒng),系統(tǒng)控制,生物醫(yī)學(xué)工程,機械振動,遙感遙測,地質(zhì)勘探,故障檢測,電力系統(tǒng),航空航天,自動化儀器等。</p><p> 數(shù)字濾波器的好壞對相關(guān)的眾多工程技術(shù)領(lǐng)域影響很大,一個好的數(shù)字濾波器會有效的推動眾多的工程技術(shù)領(lǐng)域改造和學(xué)科發(fā)展。所以對數(shù)字濾波器的工作原理,硬件結(jié)構(gòu)和實現(xiàn)方法進行研究具有一定的意義。</p
21、><p> FPGA(Field-Programmable Gate Array),即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點。</p><p> FPGA采用了邏輯單元陣列LCA(Logic Cell Array)這
22、樣一個概念,內(nèi)部包括可配置邏輯模塊CLB(Configurable Logic Block)、輸出輸入模塊IOB(Input Output Block)和內(nèi)部連線(Interconnect)三個部分。 現(xiàn)場可編程門陣列(FPGA)是可編程器件。與傳統(tǒng)邏輯電路和門陣列(如PAL,GAL及CPLD器件)相比,F(xiàn)PGA具有不同的結(jié)構(gòu),F(xiàn)PGA利用小型查找表(16×1RAM)來實現(xiàn)組合邏輯,每個查找表連接到一個D觸發(fā)器的輸入端,觸發(fā)器
23、再來驅(qū)動其他邏輯電路或驅(qū)動I/O,由此構(gòu)成了即可實現(xiàn)組合邏輯功能又可實現(xiàn)時序邏輯功能的基本邏輯單元模塊,這些模塊間利用金屬連線互相連接或連接到I/O模塊。FPGA的邏輯是通過向內(nèi)部靜態(tài)存儲單元加載編程數(shù)據(jù)來實現(xiàn)的,存儲在存儲器單元中的值決定了邏輯單元的邏輯功能以及各模塊之間或模塊與I/O間的聯(lián)接方式,并最終決定了FPGA所能實現(xiàn)的功能, FPGA允許無限次的編程.</p><p> 1.2 FPGA技術(shù)的發(fā)展
24、及應(yīng)用</p><p> FPGA正處于高速發(fā)展時期,新型芯片的規(guī)模越大,成本也越來越低,低端的FPGA已逐步取代了傳統(tǒng)的數(shù)字元件,高端的FPGA將會成為今后競爭的主流。</p><p> 自1985年問世以來,F(xiàn)PGA從集成電路與系統(tǒng)家族一個不起眼的小角色逐漸成為電子設(shè)計領(lǐng)域的重要器件。它極大地提高了設(shè)計靈活性并縮短了產(chǎn)品上市時間,在通信、工業(yè)控制、航空領(lǐng)域中廣泛應(yīng)用。</p&
25、gt;<p> FPGA行業(yè)集中度很高,幾家美國公司掌握著行業(yè)的“制空權(quán)”。特別是在航空航天及軍工等特殊領(lǐng)域,美國等少數(shù)國家對先進的技術(shù)保持封鎖。因此,發(fā)展國內(nèi)FPGA產(chǎn)業(yè)不是要不要的問題,而是怎么發(fā)展的問題。國內(nèi)IC企業(yè)介入FPGA的時間并不長,多數(shù)公司還處于學(xué)習(xí)階段。</p><p> Altera公司和Xilinx公司為代表的FPGA廠商,除了在FPGA產(chǎn)品線上不斷推陳出新之外,也在不懈地
26、提高開發(fā)軟件的設(shè)計能力,他們的軟件產(chǎn)品在很多方面一點也不遜色于專業(yè)的EDA廠商,所以從這個角度來說,F(xiàn)PGA廠商也是EDA公司。這里的代表性產(chǎn)品就是Altera公司的Quartus II開發(fā)軟件和Xilinx公司的ISE開發(fā)軟件。</p><p> Altera的FPGA開發(fā)工具已經(jīng)經(jīng)歷了四代。從最初的基于DOS的A+Plus,發(fā)展到Max+Plus,1991年推出基于Windows的開發(fā)工具Max+Plus
27、II。Max+Plus II在FPGA設(shè)計工具里是一個劃時代的產(chǎn)品,它提供了一種與結(jié)構(gòu)無關(guān)的圖形化設(shè)計環(huán)境,功能強大,使用方便。設(shè)計者無須精通器件內(nèi)部的復(fù)雜結(jié)構(gòu),而只需要使用自己熟悉的設(shè)計輸入工具(如原理圖或者HDL語言)把自己的設(shè)計輸入到計算機中,Max+Plus II就會自動把這些設(shè)計轉(zhuǎn)換成最終結(jié)構(gòu)所需的格式,用戶只要把最后生成的配置數(shù)據(jù)通過下載電纜下載到芯片中,即完成了所有的工作。</p><p> Qu
28、artus II是Altera公司在2001年推出的第四代開發(fā)工具,是一個集成化的多平臺設(shè)計環(huán)境,能夠直接滿足特定設(shè)計需要,在FPGA和CPLD設(shè)計各個階段都提供了工具支持,并為可編程片上系統(tǒng)(SOPC)提供全面的設(shè)計環(huán)境,是一個系統(tǒng)級的高效的EDA設(shè)計工具。而且,隨著器件結(jié)構(gòu)和性能的不斷提高,器件集成度的不斷擴大,Altera始終能夠同步推出與之相適應(yīng)的開發(fā)工具,滿足了設(shè)計者的要求,近年來一直保持著一年一個新版本的更新進度。</
29、p><p> 1.3 FPGA軟件設(shè)計工具Quartus II</p><p> Altera公司和Xilinx公司為代表的FPGA廠商,除了在FPGA產(chǎn)品線上不斷推陳出新之外,也在不懈地提高開發(fā)軟件的設(shè)計能力,他們的軟件產(chǎn)品在很多方面一點都不遜色于專業(yè)的EDA廠商,所以從這個角度來說,F(xiàn)PGA廠商也是EDA公司。這里的代表性產(chǎn)品就是Altera公司的Quartus II開發(fā)軟件和Xili
30、nx公司的ISE開發(fā)軟件。</p><p> Altera的FPGA開發(fā)工具已經(jīng)經(jīng)歷了四代。從最初的基于DOS的A+Plus,發(fā)展到Max+Plus,1991年推出基于Windows的開發(fā)工具Max+Plus II。Max+Plus II在FPGA設(shè)計工具里是一個劃時代的產(chǎn)品,它提供了一種和結(jié)構(gòu)無關(guān)的圖形化的設(shè)計環(huán)境,功能強大,使用方便。設(shè)計者無需精通器件內(nèi)部的復(fù)雜結(jié)構(gòu),而只需要使用自己熟悉的設(shè)計輸入工具(如原
31、理圖或者HDL語言)把自己的設(shè)計輸入到計算機中,Max+Plus II就會自動把這些設(shè)計轉(zhuǎn)換成最終結(jié)構(gòu)所需的格式,用戶只要把最后生成的配置數(shù)據(jù)通過下載電纜下載到芯片中,即完成了所有的工作。</p><p> Quartus II是Altera公司在2001年推出的第四代開發(fā)工具,是一個集成化的多平臺設(shè)計環(huán)境,能夠直接滿足特定的設(shè)計需要,在FPGA和CPLD設(shè)計各個階段都提供了工具支持,并為可編程片上系統(tǒng)(SOP
32、C)提供全面的設(shè)計環(huán)境,是一個系統(tǒng)級的高效的EDA設(shè)計工具。而且,隨著器件結(jié)構(gòu)和性能的不斷提高,器件集成度的不斷擴大,Altera始終能夠同步推出與之相適應(yīng)的開發(fā)工具,滿足了設(shè)計者的要求,近年來一直保持這一年一個新版本的更新進度。</p><p> Altera公司的Quartus II軟件是一種集編輯,編譯,綜合,布局布線,仿真與器件編程于一體的集成設(shè)計環(huán)境。Quartus II軟件支持基于VHDL與Veri
33、log HDL等硬件描述語言的設(shè)計和基于圖形的設(shè)計,內(nèi)部嵌有VHDL和Verilong HDL的邏輯綜合器,也支持利用第三方的綜合工具進行邏輯綜合。進行設(shè)計仿真時,既可以利用Quartus II軟件自己的仿真工具,也可以利用如ModelSim等第三方仿真工具。Quartus II軟件除了進行基于FPGA的一般的數(shù)字系統(tǒng)開發(fā)外。還可以與MATLAB和DSP Builder結(jié)合,進行基于FPGA的DSP系統(tǒng)開發(fā);使用內(nèi)嵌的SOPC Buil
34、der設(shè)計工具,配合Nios II IDE集成開發(fā)環(huán)境,進行基于Nios II軟核處理器的嵌入式系統(tǒng)開發(fā)。 </p><p> Quartus II軟件的設(shè)計流程遵循典型的FPGA設(shè)計流程,包括設(shè)計輸入,綜合,布局布線,時序分析,仿真驗證,編程配置等設(shè)計步驟,以及與布局布線有關(guān)的功耗分析,調(diào)試,工程更改管理,與時序分析和仿真驗證有關(guān)的時序逼近。</p><p> 第2章 FIR數(shù)字濾
35、波器的理論研究及分析</p><p> 2.1 數(shù)字濾波器的理論基礎(chǔ)</p><p> 數(shù)字濾波器是通過對數(shù)字信號的運算處理,改變信號頻譜,完成濾波作用的算法或裝置。數(shù)字濾波器由數(shù)字乘法器、加法器和延時單元組成的一種算法或裝置。數(shù)字濾波器的功能是對輸入離散信號的數(shù)字代碼進行運算處理,以達到改變信號頻譜的目的。</p><p> 數(shù)字濾波器一詞出現(xiàn)在60年代中期
36、。由于電子計算機技術(shù)和大規(guī)模集成電路的發(fā)展,數(shù)字濾波器已可用計算機軟件實現(xiàn),也可用大規(guī)模集成數(shù)字硬件實時實現(xiàn)。 </p><p> 數(shù)字濾波器是一個離散時間系統(tǒng)(按預(yù)定的算法,將輸入離散時間信號轉(zhuǎn)換為所要求的輸出離散時間信號的特定功能裝置)。應(yīng)用數(shù)字濾波器處理模擬信號時,首先須對輸入模擬信號進行限帶、抽樣和模數(shù)轉(zhuǎn)換。數(shù)字濾波器輸入信號的抽樣率應(yīng)大于被處理信號帶寬的兩倍,其頻率響應(yīng)具有以抽樣頻率為間隔的周期重復(fù)特
37、性,且以折疊頻率即1/2抽樣頻率點呈鏡像對稱。為得到模擬信號,數(shù)字濾波器處理的輸出數(shù)字信號須經(jīng)數(shù)模轉(zhuǎn)換、平滑。數(shù)字濾波器具有高精度、高可靠性、可程控改變特性或復(fù)用、便于集成等優(yōu)點。數(shù)字濾波器在語言信號處理、圖像信號處理、醫(yī)學(xué)生物信號處理以及其他應(yīng)用領(lǐng)域都得到了廣泛應(yīng)用。 </p><p> 數(shù)字濾波器有低通、高通、帶通、帶阻和全通等類型。它可以是時不變的或時變的、因果的或非因果的、線性的或非線性的。應(yīng)用最廣的是
38、線性、時不變數(shù)字濾波器,以及FIR濾波器。</p><p> 2.2 數(shù)字濾波器的分類</p><p> 數(shù)字濾波器有低通、高通、帶通、帶阻和全通等類型。它可以是時不變的或時變的、因果的或非因果的、線性的或非線性的。應(yīng)用最廣的是線性、時不變數(shù)字濾波器,以及FIR濾波器。</p><p> FIR濾波器:有限長單位沖激響應(yīng)濾波器,是數(shù)字信號處理系統(tǒng)中最基本的元件
39、,它可以在保證任意幅頻特性的同時具有嚴格的線性相頻特性,同時其單位抽樣響應(yīng)是有限長的,因而濾波器是穩(wěn)定的系統(tǒng)。</p><p> 鑒于IIR數(shù)字濾波器最大缺點:不易做成線性相位,而現(xiàn)代圖像、語聲、數(shù)據(jù)通信對線性相位的要求是普遍的。因此,F(xiàn)IR濾波器在通信、圖像處理、模式識別等領(lǐng)域都有著廣泛的應(yīng)用。</p><p> 2.3 FIR數(shù)字濾波器的設(shè)計方法</p><p&
40、gt; FIR濾波器設(shè)計方法以直接逼近所需離散時間系統(tǒng)的頻率響應(yīng)為基礎(chǔ)。設(shè)計方法過去主要包括窗函數(shù)法和最優(yōu)化方法(等同波紋法)。本文主要采用模塊法。</p><p> 在本次設(shè)計過程中,運用的是Altera公司的Quartus II軟件中的一款DSP Builder設(shè)計工具,與MATLAB相結(jié)合,利用MATLAB中自帶的濾波器模塊與DSP Builder中所包含的FPGA模塊構(gòu)建FIR數(shù)字濾波器,并在Simu
41、link中實現(xiàn)仿真。</p><p> 第3章 FPGA DSP系統(tǒng)設(shè)計分析</p><p> 3.1 DSP的基本概念</p><p> 數(shù)字信號處理(DSP)技術(shù)的迅速發(fā)展,已經(jīng)廣泛應(yīng)用于3G通信,網(wǎng)絡(luò)會議,多媒體系統(tǒng),雷達聲納,醫(yī)學(xué)儀器,實時圖像識別以及民用電器等,而且所有這一切在功能實現(xiàn),性能指標與成本方面都在不斷增加其要求。</p>
42、<p> 數(shù)字信號處理與模擬信號處理相比有許多優(yōu)點,如相對于溫度和工藝的變化,數(shù)字信號要比模擬信號更穩(wěn)健,在數(shù)字表示中可以改變信號的字長來更好的控制精度,與模擬信號中信號和噪聲同時被放大不同,DSP技術(shù)可以在放大信號的同時將噪聲和干擾去除,數(shù)字信號還可以不帶誤差的被存儲和恢復(fù),發(fā)送和接收,處理和操控。</p><p> 由于DSP與其他通用計算機技術(shù)互相區(qū)別的兩個重要特性是實時流量要求和數(shù)據(jù)驅(qū)動特
43、性。與通用計算機技術(shù)先在緩存器存儲數(shù)據(jù)再按批作業(yè)處理不同,DSP的硬件實現(xiàn)應(yīng)該首先滿足實時處理的流量約束的要求,從信號源周期地接受新的輸入采樣必須即時進行處理。但是,一旦硬件達到所要求的采樣率,就沒有必要提高計算的執(zhí)行速度了。</p><p> 在DSP系統(tǒng)中,一旦所有的輸入數(shù)據(jù)有效,就可以執(zhí)行任何的處理任務(wù)或計算,在這個意義上,這些系統(tǒng)由數(shù)據(jù)流同步,而不是由系統(tǒng)的時鐘同步,這使得DSP系統(tǒng)可以利用沒有全局時鐘
44、要求的異步電路,DSP算法由對一個無限時間序列重復(fù)地執(zhí)行相同代碼不終止的程序來描述。</p><p> 在處理或計算中,全部算法執(zhí)行一次稱為一個迭代。迭代周期是執(zhí)行算法的一個迭代要求的時間,它的倒數(shù)是迭代率。DSP系統(tǒng)根據(jù)每秒處理的采樣率,用采樣率來表征,也稱為流量。</p><p> 在進行計算的組合邏輯電路中,從輸入到輸出的最長路徑定義為關(guān)鍵通道。此時一個路徑的長度正比于它的計算時
45、間。DSP系統(tǒng)通常是利用時序電路來實現(xiàn)的,其中關(guān)鍵通道是由任何兩個寄存元件(或延遲元件)之間的最長路徑來定義的。關(guān)鍵通道的計算時間決定一個DSP系統(tǒng)的最小可處理的時鐘周期或最大的時鐘頻率。</p><p> 等待時間定義為由系統(tǒng)接受相應(yīng)的輸入到產(chǎn)生一個輸出之間的時間差。對于只包含組合邏輯的系統(tǒng),等待時間通常按照絕對的時間單位或者門延遲的數(shù)目表示。對于時序系統(tǒng),等待時間通常按照時鐘周期數(shù)來表示。DSP系統(tǒng)的時鐘速
46、率與它的采樣率一般是不相同的。 </p><p> 3.2 FPGA實現(xiàn)DSP的特點</p><p> 要實現(xiàn)一個基本的數(shù)字信號處理系統(tǒng),需要加法器,乘法器和存儲器。FPGA內(nèi)部包括了上述的所有器件,因而成為實現(xiàn)DSP的理想選擇。</p><p> 要采用FPGA實現(xiàn)DSP算法,必須經(jīng)過量化。一般情況下,DSP就是把輸入序列通過一定的運算變換成輸出序列。可以采
47、用如下公式表示</p><p> 在公式中,系數(shù),通常都是通過理論計算或者MATLAB工具計算得到的。前者采用的是無限精度,后者采用的是雙精度浮點數(shù)。無論是無限精度還是雙精度浮點數(shù),F(xiàn)PGA芯片都是無法直接處理的。所以必須將系數(shù),進行量化,以有限長的二進制數(shù)的形式表示。量化采用的二進制位數(shù)越多,精度越高,但耗費的FPGA資源就越多,設(shè)計中根據(jù)系統(tǒng)的指標對精度和資源進行折衷。</p><p&g
48、t; 對系數(shù)進行量化后,還需要選取運算結(jié)構(gòu),不同的結(jié)構(gòu)所需的存儲器及乘法器資源是不同的,前者影響復(fù)雜度,后者影響運算速度。此外,在有限精度(有限字長)情況下,不同運算結(jié)構(gòu)的誤差,穩(wěn)定性是不同的。</p><p> 對系數(shù)進行量化并選取適當(dāng)運算結(jié)構(gòu)后,便可以采用FPGA來實現(xiàn)DSP系統(tǒng)了。實現(xiàn)嵌入式DSP系統(tǒng),已經(jīng)不能像一般的數(shù)字系統(tǒng)的設(shè)計那樣,從寄存器傳輸級利用硬件描述語言直接進行描述,而是要先脫離開硬件實現(xiàn)
49、的結(jié)構(gòu),從算法的角度對所涉及的系統(tǒng)進行建模,方針和優(yōu)化。</p><p> FPGA是具有極高并行度的信號處理引擎,能夠滿足算法復(fù)雜度不斷增加的應(yīng)用要求,通過并行方式提供極高性能的信號處理能力。</p><p> FPGA的DSP系統(tǒng)實現(xiàn)高性能的數(shù)字信號處理,主要基于三個因素:</p><p> 高度的并行性:FPGA能實現(xiàn)高性能數(shù)字信號處理是因為FPGA是高
50、度并行處理的引擎,對于多通道的DSP設(shè)計是理想的器件;</p><p> 重構(gòu)的靈活性:FPGA的硬件可再配置特性使其實現(xiàn)的高性能DSP具有極大的靈活性,對于所設(shè)想的算法可以用專門的定制結(jié)構(gòu)實現(xiàn);</p><p> 最佳的性價比:隨著半導(dǎo)體工藝的線寬進一步縮小,器件規(guī)模增加,F(xiàn)PGA價格不斷降低,可以花費低的成本實現(xiàn)設(shè)計系統(tǒng)的集成化。</p><p> 3.3
51、 DSP Builder設(shè)計工具及設(shè)計規(guī)則</p><p> DSP Builder是一個系統(tǒng)級(或算法級)設(shè)計工具。DSP Builder將The MathWorks MATLAB和Simulink系統(tǒng)級設(shè)計工具的算法開發(fā)、仿真和驗證功能與VHDL綜合、仿真和Altera開發(fā)工具整合在一起,實現(xiàn)了這些工具的集成。</p><p> DSP Builder構(gòu)架在多個軟件工具之上,并把系
52、統(tǒng)級和RTL級兩個設(shè)計領(lǐng)域的設(shè)計工具連接起來,最大程度地發(fā)揮了兩種工具的優(yōu)勢。DSP Builder依賴于Math Works公司的數(shù)學(xué)分析工具MATLAB/Simulink,以Simulink的Blockset出現(xiàn),可以在Simulink中進行圖形化設(shè)計和仿真,同時又通過Signal Compiler可以把MATLAB/Simulink的設(shè)計文件(.mdl)轉(zhuǎn)成相應(yīng)的硬件描述語言VHDL設(shè)計文件(.vhd),以及用于控制綜合與編譯的T
53、CL腳本。</p><p> 使用DSP Builder模塊迅速生成Simulink系統(tǒng)建模硬件。DSP Builder包括比特和周期精度的Simulink模塊,涵蓋了算法和存儲功能等基本操作??梢允褂肈SP Builder模型中的MegaCore功能實現(xiàn)復(fù)雜功能的集成。</p><p> 圖3-1 DSP Builder設(shè)計流程圖</p><p> DSP
54、Builder設(shè)計規(guī)則遵循以下三點:</p><p><b> 位寬設(shè)計規(guī)則</b></p><p> 在Simulink中,所有數(shù)據(jù)是利用雙精度(double)來表示的,它是64位二進制的補碼浮點數(shù),而雙精度數(shù)對FPGA是不可行的。所以需要將Simulink中雙精度浮點數(shù)轉(zhuǎn)換成FPGA中的定點數(shù)。</p><p> 對于硬件電路設(shè)計,S
55、imulink信號必須轉(zhuǎn)換成與硬件結(jié)構(gòu)相對應(yīng)的總線格式。因此,浮點值必須轉(zhuǎn)換為定點值。這種轉(zhuǎn)換是硬件設(shè)計的關(guān)鍵步驟,因為轉(zhuǎn)換的位數(shù)和小數(shù)點的位置將直接影響所需的硬件資源和系統(tǒng)精度。一般情況下,轉(zhuǎn)換為較多的位數(shù)精度較高,但是需要較多的硬件資源,對于設(shè)計者來說,就是在資源與性能之間找到一個折衷的方案,以達到最高的性價比。</p><p><b> 頻率設(shè)計規(guī)則</b></p>&
56、lt;p> 如果設(shè)計中不包含PLL和其他分頻模塊,DSP Builder使用同步設(shè)計規(guī)則將Simulink設(shè)計轉(zhuǎn)換成硬件設(shè)計,在DSP Builder中,所有的時許模塊(如Delay模塊)都是以單一時鐘上升沿工作,這個時鐘頻率為整個系統(tǒng)的采樣頻率。值得注意的是,在Simulink中的失序模塊時鐘引腳是不顯示的,但是當(dāng)該模塊通過DSP Builder轉(zhuǎn)換為VHDL語言后,將會在這些時序模塊上自動加上時鐘引腳,默認的時鐘引腳為clo
57、ck,默認的低電平復(fù)位引腳名稱為aclr。</p><p> 如果設(shè)計中包含了PLL和分頻模塊,DSP Builder模塊將根據(jù)PLL或分頻模塊輸出時鐘組中的某一時鐘的上升沿工作,相應(yīng)的系統(tǒng)就成俄日多時鐘系統(tǒng)。</p><p> DSP Builder模塊可以利用多個Simulink采樣周期運行。時鐘域可以在DSP Builder的模塊資源中進行設(shè)定。時鐘域也可以在DSP Builde
58、r的速率變更模塊(如Tsamp)資源中進行規(guī)定。</p><p> 當(dāng)利用多個采樣周期時,DSP Builder必須將每個采樣周期與實際時鐘域聯(lián)系,所以DSP Builder模塊必須包含DSP Builder速率變更模塊(頂層的PLL或Clock_Derived)。</p><p><b> 時序關(guān)系對比</b></p><p> 在DS
59、P Builder和Simulink中驚醒仿真的方法,時序模型,驅(qū)動和輸出之間的存在關(guān)系對比。</p><p> 第4章 基于FPGA的FIR低通濾波器設(shè)計</p><p><b> 4.1設(shè)計方案</b></p><p> 圖4-1 濾波器設(shè)計流程圖</p><p> FIR低通濾波器參數(shù)為:系統(tǒng)頻率為50M
60、Hz,通帶截止頻率Fpass為1MHz,阻帶截止頻率Fstop為4MHz,通帶最大衰減Apass為1dB,阻帶最小衰減Astop為30dB.</p><p> 4.2 FDATool濾波器設(shè)計</p><p> MATLAB集成了一套功能強大的濾波器設(shè)計工具FDATool,可以完成多種濾波器的設(shè)計、分析和性能評估。</p><p> 利用MATLAB工具箱濾波
61、器設(shè)計工具設(shè)計濾波器,F(xiàn)DATool初始界面如圖4.2所示,</p><p> 圖4-2 FDATool初始界面</p><p> 根據(jù)給出濾波器設(shè)計要求,修改參數(shù)。濾波器類型選擇FIR,系統(tǒng)頻率Fs修改為50MHz,通帶截止頻率Fpass修改為1MHz,阻帶截止頻率Fstop修改為4MHz,通帶最大衰減Apass修改為1dB,阻帶最小衰減Astop修改為30dB。參數(shù)設(shè)置完成后,自動
62、完成濾波器的設(shè)計,并給出濾波器幅頻響應(yīng)圖,如圖4.3所示。</p><p> 圖4-3 濾波器設(shè)計圖</p><p> 4.3 FPGA定點數(shù)的確定</p><p> 濾波器設(shè)計完全后,首先導(dǎo)出以雙精度形式給出的濾波器系數(shù),而根據(jù)DSP Builder設(shè)計規(guī)則中的位寬設(shè)計規(guī)則,雙精度數(shù)對FPGA是不可行的,所以需要將雙精度浮點數(shù)轉(zhuǎn)換成FPGA中的定點數(shù)。<
63、;/p><p> 4.3.1導(dǎo)出系數(shù)文件</p><p> 濾波器設(shè)計完成后,設(shè)置導(dǎo)出系數(shù)文件的格式與數(shù)據(jù)類型,導(dǎo)出窗口如圖4.4所示,</p><p> 圖4-4 導(dǎo)出系數(shù)文件格式和數(shù)據(jù)類型</p><p> 導(dǎo)出并自動打開系數(shù)文件。默認情況下,系數(shù)是以雙精度形式給出,得到的系數(shù)如圖4-5所示。</p><p>
64、 圖4-5 濾波器雙精度系數(shù)</p><p> 4.3.2 FPGA定點數(shù)轉(zhuǎn)換</p><p> 根據(jù)DSP Builder的位寬設(shè)計規(guī)則:在Simulink中,所有數(shù)據(jù)是利用雙精度(double)來表示的,它是64位二進制的補碼浮點數(shù),而雙精度數(shù)對FPGA是不可行的。所以需要將Simulink中雙精度浮點數(shù)轉(zhuǎn)換成FPGA中的定點數(shù)。</p><p> 在M
65、ATLAB中編程進行處理,輸入如圖4-6所示。</p><p> 圖4-6 雙精度系數(shù)轉(zhuǎn)換定點數(shù)</p><p> 最終得到處理后的濾波器系數(shù)如圖4-7所示。</p><p> 圖4-7 定點數(shù)濾波器系數(shù)</p><p> 4.4 FIR濾波器模型的建立</p><p> 在Simulink中建立一模型。利用
66、MATLAB中自帶的濾波器模塊與DSP Builder中所包含的FPGA模塊構(gòu)建FIR數(shù)字濾波器。</p><p> 4.4.1乘加子系統(tǒng)的搭建</p><p> 添加5個Altera DSP Builder Blockset文件夾中,Arithmetic庫中的Multiply Add模塊。</p><p> 圖4-8 Multiply Add模塊</p
67、><p> 其中,第一個Multiply Add模塊參數(shù)設(shè)置如圖4-9和4-10所示:</p><p> 圖4-9 Multiply Add模塊參數(shù)設(shè)置(Main選項卡)</p><p> 圖4-10 Multiply Add模塊參數(shù)設(shè)置(Optional Ports and Settings選項卡)</p><p> 其余4個Mult
68、iply Add模塊中的常數(shù)值(Constant Values)選項分別對應(yīng)4.3.2節(jié)中所得到的FIR濾波器系數(shù)。分別為:</p><p> 【50 63 75 85】【93 97 97 93】【85 75 63 50】【37 27 24 -6】</p><p> 添加Altera DSP Builder Blockset文件夾中,Arithmetic庫中的Parallel Adde
69、r Subtractor模塊,</p><p> 圖4-11 Parallel Adder Subtractor模塊</p><p> 參數(shù)設(shè)置如圖4-12所示。</p><p> 圖4-12 Parallel Adder Subtractor模塊參數(shù)設(shè)置</p><p> 將各模塊進行連線,并選中所有模塊,創(chuàng)建乘加子系統(tǒng),如圖4-1
70、3所示。</p><p> 圖4-13 創(chuàng)建子系統(tǒng)</p><p> 圖4-14 乘加子系統(tǒng)</p><p> 該子系統(tǒng)中每個乘加模塊輸入位寬為34,由于每兩個乘加模塊輸出求和需要進行擴位,所以子系統(tǒng)的輸出位寬為38位。</p><p> 4.4.2 濾波器模塊的添加和模塊參數(shù)設(shè)置</p><p> ?。?)加
71、入正弦信號產(chǎn)生模塊</p><p> 添加2個Simulink文件夾中,Sources庫中的Sine Wave模塊,</p><p> 圖4-15 Sine Wave模塊</p><p> 圖4-16 Sine Wave1模塊參數(shù)設(shè)置</p><p> 圖4-17 Sine Wave2模塊參數(shù)設(shè)置</p><p&g
72、t; 分別設(shè)置兩個正弦波模塊參數(shù),如圖4.16和4.17所示。分別產(chǎn)生頻率為500KHz與5MHz的正弦波。</p><p> ?。?)加入Add模塊</p><p> 添加Simulink文件夾中,Math Operations庫中的Add模塊,</p><p> 圖4.18 Add模塊</p><p><b> 采用默認
73、參數(shù)設(shè)置。</b></p><p> ?。?)加入Input與Output模塊</p><p> 添加Altera DSP Builder Blockset文件夾中,IO&Bus庫中的Input與Output模塊,</p><p> 圖4-19 Input與Output模塊</p><p> 圖4-20 Input模
74、塊參數(shù)設(shè)置</p><p> 設(shè)置有符號整數(shù)均為16位,如圖4-20所示。</p><p> (4)加入Shift Taps模塊</p><p> 添加Altera DSP Builder Blockset文件夾中,Storage庫中的Shift Taps模塊,</p><p> 圖4-21 Shift Taps模塊</p>
75、;<p> 圖4-22 Shift Taps模塊參數(shù)設(shè)置</p><p> 設(shè)置參數(shù)Number of Taps為20,Distance Between Taps為1,如圖4-22所示。</p><p> (5)加入Bus Conversion模塊</p><p> 添加Altera DSP Builder Blockset文件夾中,IO&am
76、p;Bus庫中的Bus Conversion模塊,</p><p> 圖4-23 Bus Conversion模塊</p><p> 圖4-24 Bus Conversion模塊參數(shù)設(shè)置</p><p> 其中輸入位寬的設(shè)置與圖4.13所示的乘加子系統(tǒng)輸出匹配,即位寬為38。由于在4.3節(jié)中將雙精度系數(shù)轉(zhuǎn)換為定點數(shù)時乘以1024,所以這里需要將濾波器結(jié)果除以1
77、024,即截掉低10位,如圖4-24所示。</p><p> ?。?)加入clock模塊</p><p> 添加Altera DSP Builder Blockset文件夾中,AltLab庫中的clock模塊,</p><p> 圖4-25 clock模塊</p><p> 圖4-26 clock模塊參數(shù)設(shè)置</p>&l
78、t;p> 設(shè)置Real-World Clock Period為20ns,Simulink Sample Time為2e-8,如圖4-26所示。</p><p> (7)加入Signal Compiler模塊</p><p> 添加Altera DSP Builder Blockset文件夾中,AltLab庫中的Signal Compiler模塊,</p><
79、p> 圖4-27 Signal Compiler模塊</p><p><b> 采用默認參數(shù)設(shè)置。</b></p><p> ?。?)加入Scope模塊</p><p> 添加Simulink文件夾中,Sinka庫中的Scope模塊,</p><p> 圖4-28 Scope模塊</p>&l
80、t;p> 圖4-29 Scope模塊參數(shù)設(shè)置</p><p> 設(shè)置通道數(shù)為4,如圖4-29所示。</p><p> 4.4.3各模塊的連接</p><p> 將上述所有模塊拖入新建模型后,修改設(shè)置參數(shù),最后進行連線。濾波器模型如圖4-30所示。</p><p> 圖4-30 FIR濾波器模型</p><p
81、> 第5章 Simulink仿真</p><p> 完成模型設(shè)計之后,在Simulink環(huán)境下對模型進行仿真,檢驗設(shè)計結(jié)果是否正確。</p><p> 5.1 仿真時間設(shè)定</p><p> 圖5-1 仿真時間設(shè)定</p><p> 選擇命令菜單Simulation/Configuration parameters,將其中S
82、top time改為5e-5。</p><p> 5.2 示波器模塊顯示</p><p> 仿真前,雙擊示波器模塊,彈出示波器顯示窗口。</p><p> 圖5-2 仿真前示波器模塊無顯示</p><p> 按Ctrl+T鍵開始仿真。仿真結(jié)束后,雙擊示波器模塊,彈出示波器顯示窗口,單擊示波器工具條Autoscale按鈕,示波器按自動比
83、例顯示波形。</p><p> 圖5-3 仿真后示波器模塊顯示</p><p> 5.3 仿真結(jié)果分析</p><p> 本文第4節(jié)所設(shè)計的FIR低通濾波器模型,系統(tǒng)頻率為50MHz,通帶截止頻率Fpass為1MHz。阻帶截止頻率Fstop為4MHz,通帶最大衰減Apass為1dB,阻帶最小衰減Astop為30dB。</p><p>
84、 仿真結(jié)束后,觀察示波器模塊,</p><p> 圖5-4 示波器第一欄顯示波形</p><p> 示波器第一欄為頻率為500KHz的正弦波,</p><p> 圖5-5 示波器第二欄顯示波形</p><p> 示波器第二欄為頻率為5MHz的正弦波,</p><p> 圖5-6 示波器第三欄顯示波形</
85、p><p> 示波器第三欄為第一欄和第二欄的兩列正弦波疊加后的波形,</p><p> 圖5-7 示波器第四欄顯示波形</p><p> 示波器第四欄為第三欄的波形(即第一欄和第二欄的兩列正弦波疊加后的波形),經(jīng)過FIR低通濾波器后的波形輸出。</p><p> 從示波器仿真顯示的結(jié)果中,可以觀察到5MHz的高頻信號通過FIR低通濾波器后
86、被濾除??梢员砻?,當(dāng)高于FIR低通濾波器截止頻率的波形通過模型時,將會被濾除。</p><p><b> 結(jié)論</b></p><p> 本次基于FPGA的FIR數(shù)字低通濾波器的設(shè)計最終能實現(xiàn)對通過濾波器的高頻信號的濾除,在這一設(shè)計過程中加深自己對于FPGA技術(shù)以及DSP數(shù)字信號處理的知識的了解,有著很大的幫助。本設(shè)計利用FPGA軟件設(shè)計工具Quartus II中
87、的DSP Builder濾波器模塊和MATLAB中的FDATool濾波器模塊相結(jié)合,遵照DSP Builder設(shè)計規(guī)則,表現(xiàn)出了FPGA實現(xiàn)DSP的特點。同時也考慮到了兩者不兼容之處,通過合理的轉(zhuǎn)換加以處理。</p><p> 在本文中對本次設(shè)計的各個模塊進行了詳細的分析與說明,其中重點部分是FIR低通濾波器模型的建立,并附加以仿真演示和結(jié)果分析,次要闡述FPGA技術(shù)以及DSP數(shù)字信號處理,涵蓋了兩者之間聯(lián)系,
88、使之一目了然。</p><p> 同時本文也闡明了個別模塊的參數(shù)設(shè)置調(diào)整,以及其對于濾波器的作用。使本文層次清楚明了,易于理解。</p><p> 在仿真結(jié)束后,我也對硬件可能的實施做了一定的研究。首先要將仿真中用到的FIR濾波器模型進行調(diào)整。按照直接數(shù)字頻率合成(DDS)原理,在FPGA內(nèi)部產(chǎn)生兩個不同頻率正弦波的疊加信號作為FIR濾波器的輸入,并加入SignalTap模塊采集FPG
89、A內(nèi)部信號。接著對新模型進行編譯,生成Quartus II項目。再利用Quartus II軟件進行引腳鎖定,全編譯生成下載文件并下載到DE2開發(fā)板。最后就可以利用SignalTap II Logic Analyzer觀察FPGA內(nèi)部信號并驗證設(shè)計的正確性了。</p><p> 從本次完成設(shè)計的過程中,我也發(fā)現(xiàn)了自身能力上的許多不足。首先是對于軟硬件的熟練掌握情況;其次是雖然本設(shè)計有很多優(yōu)勢,但在很多功能上依然有
90、很大的發(fā)展空間;最后是有待提高創(chuàng)新思維的能力。</p><p> 從選題到設(shè)計到最后的完成報告,期間的過程是漫長的,我也受益匪淺。整個設(shè)計使我主要對FPGA技術(shù)有了一個較為充分的學(xué)習(xí)與探究,以及對于其發(fā)展趨勢有了一個全方面的認識。對于我今后的學(xué)習(xí)或者是工作一定會有很大的幫助。</p><p><b> 參考文獻</b></p><p>
91、[1] 馬建國,孟憲元. 電子設(shè)計自動化技術(shù)基礎(chǔ)[M].北京:清華大學(xué)出版社, 2004</p><p> [2] 孟憲元,錢偉康. FPGA嵌入式系統(tǒng)設(shè)計[M].北京:電子工業(yè)出版社, 2007 </p><p> [3] Michael D.Ciletti. Verilog HDL高級數(shù)字設(shè)計[M].北京:電子工業(yè)出版社, 2005</p><p>
92、 [4] 徐光輝,程東旭,黃如等. 基于FFGA的嵌入式開發(fā)和應(yīng)用[M].北京:電子工業(yè)出版社,2006</p><p> [5] Steve Kilts. Advanced FPGA Design[M].New York:Wiley-IEEE Press, 2007</p><p> [6] D.A.Pucknell,K.Eshraghian. 超大規(guī)模集成電路設(shè)計基礎(chǔ)—系統(tǒng)與
93、電路[M].北京:科學(xué)出版社,1993</p><p> [7] 劉明彰. 基于FPGA的嵌入式系統(tǒng)設(shè)計[M].北京:國防出版社, 2007</p><p> [8] 夏宇聞. Verilog數(shù)字系統(tǒng)設(shè)計教程[M].北京:北京航空航天大學(xué)出版社, 2003</p><p> [9] Altera Corpoation,San Jose,CA. DSP B
94、uilder User Guide[EB/OL],2007 </p><p> [10] Altera Corpoation. Stratix Device[EB/OL],2004</p><p> [11] 潘松,黃繼業(yè),王國棟. 現(xiàn)代DSP技術(shù)[M].西安:西安電子科技大學(xué)出版社,2003</p><p> [12] 任愛鋒,初秀琴,常存,孫肖子. 基于F
95、PGA的嵌入式系統(tǒng)設(shè)計[M].西安:西安電子科技大學(xué)出版社,2004</p><p> [13] 張志剛. FPGA與SOPC設(shè)計教程—DE2實踐[M].西安:西安電子科技大學(xué)出版社,2003</p><p> [14] 程佩青. 數(shù)字信號處理教程(第三版)[M].北京:清華大學(xué)出版社,2007</p><p> [15] 褚振勇,翁木云. FPGA設(shè)計及應(yīng)用
96、[M].西安:西安電子科技大學(xué)出版社,2002</p><p><b> 致謝</b></p><p> 論文是在我致敬老師的悉心指導(dǎo)下逐步完成的。在幾個月的學(xué)習(xí)和研究中,起初對FPGA一無所知,對設(shè)計所需要使用到的幾款軟件更是一籌莫展,后來在大力會老師的幫助和指導(dǎo)下,我閱讀了大量的資料和書籍,最終對其有了初步的認識與了解。在逐步的努力下,我掌握了整個設(shè)計的基本框
97、架與系統(tǒng)理論。</p><p> 本設(shè)計將FPGA技術(shù)與FIR低通濾波器相結(jié)合,最終通過FPGA實現(xiàn)了FIR低通濾波器的作用。從選題到初稿的修改再到定稿的完成,在此過程中遇到了很多障礙和難題,但在老師和同學(xué)的幫助下,都被一一攻破了。</p><p> 在此向幫助和指導(dǎo)過我的各位老師及同學(xué)表示最誠摯的感謝!同時也要感謝這篇論文所涉及到的各位學(xué)者。本文引用了數(shù)位學(xué)者的研究文獻,如果沒有各位
98、學(xué)者的研究成果的幫助和啟發(fā),我將很難完成本篇論文的寫作。</p><p> 在今后新的征程中,無論面臨多大的困難,我也將懷抱著感激、懷抱著情誼、懷抱著責(zé)任、懷抱著期望和夢想,堅定、自信地走下去。最后,再次至上崇高的敬意和謝意。</p><p><b> 附錄</b></p><p> 附錄1 FIR濾波器仿真模型圖</p>
99、<p> 附錄2 FIR濾波器測試模型圖</p><p> 附錄3 FPGA定點數(shù)轉(zhuǎn)換程序</p><p> a=[-0.0054931250905244297 </p><p> 0.023142815248780077 </p><p> 0.026174344
100、594146581 </p><p> 0.036394956388419414 </p><p> 0.048716255663116742 </p><p> 0.061416476613156482 </p><p&
101、gt; 0.073321017541188194 </p><p> 0.083375188429048272 </p><p> 0.09065920850198729 </p><p> 0.094485230868513986 &l
102、t;/p><p> 0.094485230868513986 </p><p> 0.09065920850198729 </p><p> 0.083375188429048272 </p><p> 0.073321017541188194
103、 </p><p> 0.061416476613156482 </p><p> 0.048716255663116742 </p><p> 0.036394956388419414 </p><p> 0.0261
104、74344594146581 </p><p> 0.023142815248780077 </p><p> -0.0054931250905244297];</p><p> coe_low_pass=round(a*1024);</p><p> clear all;&
105、lt;/p><p> Wp=0.2*pi;</p><p> Ws=0.4*pi;</p><p><b> B=Ws-Wp;</b></p><p> N=ceil(6.6*pi/B)+1;</p><p> n=0:1:N-1;</p><p> a=(N-1)
106、/2;</p><p> Wc=(Ws+Wp)/2;</p><p> hd=sin(Wc*(n-a+eps))./(pi*(n-a+eps));</p><p> w_ham=(hamming(N))';</p><p> hn=hd.*w_ham;</p><p> freqz(hn,1);<
107、;/p><p> MATLAB程序如下:</p><p><b> N=21;</b></p><p><b> T1=0.3;</b></p><p> a=(N-1)/2;</p><p> n=0:(N-1);</p><p> wl=(
108、2*pi*n/N);</p><p> Hrs=[1,1,T1,zeros(1,15),T1,1,1];</p><p> Hdr=[1,1,0,0];Wd=[0,0.2,0.2,1];</p><p> k1=0:floor((N-1)/2);k2=(floor(N-1)/2+1):(N-1);</p><p> angH=[-a*
109、2*pi*k1/N,a*2*pi*k2/N];</p><p> H=Hrs.*exp(j*angH);</p><p> h=real(ifft(H,N));</p><p> freqz(h,1);</p><p> 頂層文件的VHDL代碼如下:</p><p> library ieee;---FIR文
110、件</p><p> Use ieee.std_logic_1164.all;</p><p> entity filter is</p><p> port(xin:in std_logic_vector(7 downto 0);---輸入端口</p><p> clk:in std_logic;</p><p&
111、gt; yout:out std_logic_vector(15 downto 0));---十六位輸出</p><p> end filter;</p><p> architecture arc of filter is</p><p> component reg is</p><p> port (xin: in std_l
112、ogic_vector (23 downto 0);</p><p> clk:in std_logic;</p><p> yout:out std_logic_vector(15 downto 0));</p><p> end component;</p><p> component shiftadd is
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 課程設(shè)計-基于blackman窗的fir數(shù)字低通濾波器設(shè)計
- 畢業(yè)設(shè)計---基于fpga的fir數(shù)字低通濾波器的設(shè)計
- 基于fpga的fir濾波器課程設(shè)計
- 基于FPGA的FIR低通濾波器.pdf
- 基于fpga的fir濾波器課程設(shè)計報告
- 數(shù)字信號處理課程設(shè)計-等波紋數(shù)字fir低通濾波器
- fpga課程設(shè)計報告--基于fpga的fir濾波器的設(shè)計
- fir低通濾波器加窗分析課程設(shè)計
- 數(shù)字信號處理課程設(shè)計報告---基于inverse_sinc_fir的數(shù)字低通濾波器
- 數(shù)字信號課程設(shè)計---基于漢明窗函數(shù)的fir低通濾波器的設(shè)計
- 基于fpga的iir數(shù)字低通濾波器設(shè)計
- 數(shù)字信號處理課程設(shè)計---用窗函數(shù)法設(shè)計fir數(shù)字低通濾波器
- 基于fpga的fir數(shù)字濾波器設(shè)計
- 基于fpga的fir數(shù)字濾波器設(shè)計
- 基于fpga的fir濾波器設(shè)計
- 巴特沃斯數(shù)字低通濾波器課程設(shè)計
- 低通濾波器課程設(shè)計論文
- 電路課程設(shè)計---低通濾波器
- dsp課程設(shè)計--基于窗函數(shù)設(shè)計法線性相位型fir數(shù)字低通濾波器設(shè)計
- 課程設(shè)計---iir數(shù)字低通濾波器的matlab實現(xiàn)
評論
0/150
提交評論