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