【正文】
og 適應(yīng)了標(biāo)準(zhǔn)化需求,成為 IEEE 標(biāo)準(zhǔn)。 HDL(Hardware Description Language) 1 硬件描述語(yǔ)言簡(jiǎn)介 硬件描述語(yǔ)言是一種用形式化方法來描述數(shù)字電路的設(shè)計(jì)數(shù)字邏輯系統(tǒng)的語(yǔ)言。 由自頂向下的設(shè)計(jì)過程可知,從總體行為設(shè)計(jì)開始到最終邏輯綜合,形成網(wǎng)表為止,每一步都要進(jìn)行仿真檢查,這樣有利于盡早發(fā)現(xiàn)系統(tǒng)設(shè)計(jì)中存在的問題,從而可以大大縮短系統(tǒng)硬件設(shè)計(jì)周期。如果一切正常,那么系統(tǒng)的硬件設(shè)計(jì)就基本結(jié)束。也就是說,邏輯綜合的結(jié)果相當(dāng)于在人工設(shè)計(jì)硬件電路時(shí),根據(jù)系統(tǒng)要求畫出了系統(tǒng)的邏輯電路原理圖。邏輯綜合這一階段是利用邏輯綜合工具,將 RTL方式描述的程序轉(zhuǎn)換成用基本邏輯元件表示的文件(門級(jí)網(wǎng)絡(luò)表)。如果通過這一步仿真,那么就可以利用綜合工具進(jìn)行綜合了。也就是說,系統(tǒng)采用 RTL方式描述,才能導(dǎo)出系統(tǒng)的邏輯表達(dá)式,才能進(jìn)行邏輯綜合。如前所述,用行為方式描述的系統(tǒng)結(jié)構(gòu)的程序,其抽象度很高,是很難直接影射到具體邏輯元件結(jié)構(gòu)的硬件實(shí)現(xiàn)的。 第二層次是 RTL方式描述。在行為描述階段,并不真正考 慮其實(shí)際的操作和算法用什么方法來實(shí)現(xiàn)。所謂行為描述,實(shí)質(zhì)上就是對(duì)整個(gè)系統(tǒng)的數(shù)字模型的描述。在利用 VHDL的硬件設(shè)計(jì)方法中,設(shè)計(jì)者將至上自下分成 3個(gè)層次對(duì)系統(tǒng)硬件進(jìn)行設(shè)計(jì)。 圖 FPGA設(shè)計(jì)流程圖 IC電路設(shè)計(jì)一般都采用自頂向下的設(shè)計(jì)方法。用戶無需了解 FPGA的內(nèi)部構(gòu)造和工作原理,只要在計(jì)算機(jī)上輸入電路原理圖或硬件描述語(yǔ)言, FPGA開發(fā)系統(tǒng)就能自動(dòng)進(jìn)行模擬、驗(yàn)證、分割、布局和布線,最后實(shí)現(xiàn) FPGA的內(nèi)部配置。它在低端市場(chǎng)的產(chǎn)品有 Cyclone 和 CycloneⅡ系列,在高端市場(chǎng)則有 Stratix、 StratixGX 及StratixⅡ系列產(chǎn)品。目前,它在低端市場(chǎng)推出了 Spartan2 和 Spartan3 系列產(chǎn)品,在高端市場(chǎng)則推出了Virtex Virtex4 系列產(chǎn)品。 4 主流 FPGA 廠商介紹 目前主要的 FPGA 生產(chǎn)廠家為 Xilinx 和 Altera。 (3)FPGA 的分段式布線結(jié)構(gòu)決定了其延 遲的不可預(yù)測(cè)性,而 CPLD 的連續(xù)式布線結(jié)構(gòu)決定了它的時(shí)延是均勻的和可預(yù)測(cè)的。 (1)FPGA 是觸發(fā)器密集型的器件,具有大量的觸發(fā)器資源;而 CPLD 是組合邏輯密集型的器件,觸發(fā)器資源少。 3 FPGA VS. CPLD 可編程邏輯器件的兩種主要類型是 FPGA(Field Programmable Gate Array,現(xiàn)場(chǎng)可編程門陣列 )和 CPLD(Complex Programmable Logic Device,復(fù)雜可編程邏輯器件 )。 可編程互連資源( IR) 可編程邏輯互連資源可以將 FPGA內(nèi)部的 CLB和 CLB之間、 CLB和 IOB之間連接起來,構(gòu)成各種具有復(fù)雜功能的系統(tǒng)。 輸入 /輸出模塊( IOB) IOB提供了器件引腳和內(nèi)部邏輯功能陣列之間的連接。這些數(shù)據(jù)選擇器的地址控制信號(hào)均由編程信息提供, 從而實(shí)現(xiàn)所需的電路結(jié)構(gòu)。它主要由邏輯函數(shù)發(fā)生器、觸發(fā)器、數(shù)據(jù)選擇器等電路組成?;?SRAM的 FPGA器件,在工作前需要從芯片外部加載配置數(shù)據(jù),配置數(shù)據(jù)可以控制加載過程,在現(xiàn)場(chǎng)修改器件的邏輯功能,即所謂現(xiàn)場(chǎng)編程。 FPGA的功能由邏輯結(jié)構(gòu)的配置數(shù)據(jù)決定。 FPGA一般由三種可編程電路和一個(gè)用于存放編程數(shù)據(jù)的 SRAM組成,這三種可編程電路是:可編程邏輯塊 CLB、輸入輸出模塊 IOB和互連資源 IR,其基本結(jié)構(gòu)如圖 。使用 FPGA器件可以大大縮短系統(tǒng)的研制周期,減少資金投入。 FPGA器件集成度 高、體積小,具有通過用戶編程實(shí)現(xiàn)專門應(yīng)用的功能。 圖 PLD的基本結(jié)構(gòu) 2 現(xiàn)場(chǎng)可編程門陣列 FPGA是現(xiàn)場(chǎng)可編程門陣列 (Field Programmable Gate Array)的簡(jiǎn)稱, 是20世紀(jì) 80年代中期出現(xiàn)的高密度可編程邏輯器件。輸入由緩沖器組成,它使輸入信號(hào)具 有足夠的驅(qū)動(dòng)能力并產(chǎn)生互補(bǔ)輸入信號(hào)。 簡(jiǎn)單 PLD的基本結(jié)構(gòu)圖如圖 所示。 FPGA 概述 1 簡(jiǎn)單 PLD的基本結(jié)構(gòu) 簡(jiǎn)單 PLD包括 PROM, PLA, PAL和 GAL。本設(shè)計(jì)就是用 Quartus Ⅱ 所支持的一種很常用的硬件描述語(yǔ)言( VHDL)來編程,并在 Quartus Ⅱ 上編譯與仿真。本人畢業(yè)設(shè)計(jì)就是基于 FPGA運(yùn)用 VHDL設(shè)計(jì)實(shí)現(xiàn) FIR 濾波器 。單片通用數(shù)字濾波器使用方便,但由于字長(zhǎng)和階數(shù)的規(guī)格較少,不能完全滿足實(shí)際需要;使用 DSP器件實(shí)現(xiàn)雖然簡(jiǎn)單,但由于程序順序執(zhí)行,執(zhí)行速度較慢。在數(shù)字濾波器中,有限沖激響應(yīng)( FIR)濾波器具有無限沖激響應(yīng)( IIR)濾波器所沒有的線性相位,所以本課題研究的就是 FIR 數(shù)字濾波器,主要討論了它的結(jié)構(gòu)以及實(shí)現(xiàn)的方法。 關(guān)鍵字: FIR 濾波器; FPGA; VHDL; MATLAB; Quartus Ⅱ Abstract: Digital filter is a fundamental device used in pronunciation amp。介紹了基于 FPGA 的 FIR 濾波器的數(shù)字信號(hào)處理的算法設(shè)計(jì),采用直接型和轉(zhuǎn)置型的基本結(jié)構(gòu)來設(shè)計(jì),其運(yùn)算效率明顯提高,并結(jié)合先進(jìn)的 EDA 軟件進(jìn)行高效的設(shè)計(jì)和實(shí)現(xiàn),并給出了用 Quartus Ⅱ運(yùn)行的仿真結(jié)果。本文介紹了用 VHDL實(shí)現(xiàn)線性相位 FIR(有限長(zhǎng)單位沖激響應(yīng) )濾波器。有限沖激響應(yīng)( FIR)濾波器能在設(shè)計(jì)任意幅頻特性的同時(shí)保證嚴(yán)格的線性相位特性。目錄 引 言 ............................................... 3 第一章 FPGA 的設(shè)計(jì)流程 ................................. 4 FPGA 概述 ................................................. 5 FPGA 設(shè)計(jì)流程 .............................................. 7 硬件描述語(yǔ)言 HDL(Hardware Description Language) ............... 8 FPGA 開發(fā)工具 Quartus Ⅱ 軟件設(shè)計(jì)流程 ....................... 10 第二章 有限沖激響應(yīng) (FIR)濾波器的原理及設(shè)計(jì) .................. 12 數(shù)字信號(hào)處理基礎(chǔ)原理 ...................................... 12 FIR 濾波器背影知識(shí) ....................................... 15 FIR 數(shù)字濾波器原理 ........................................ 17 利用窗函數(shù)法設(shè)計(jì) FIR 濾波器 ................................. 21 第三章 FIR 數(shù)字濾波器的 FPGA 實(shí)現(xiàn) ........................ 25 串行 FIR 濾波器原理 ........................................ 26 分布式算法基礎(chǔ) ............................................ 26 直接型 FIR 濾波器的原理結(jié)構(gòu)圖 ............................... 28 具有轉(zhuǎn)置結(jié)構(gòu)的 FIR 濾波器 ................................... 30 第四章 結(jié)論與總結(jié) ..................................... 34 謝 辭 .............................................. 35 參考文獻(xiàn) ............................................ 36 摘要 :本論文課題是《 基于 FPGA 的 FIR 濾波器設(shè)計(jì)與實(shí)現(xiàn) 》 。數(shù)字濾波器是語(yǔ)音與圖象處理、模式識(shí)別、雷達(dá)信號(hào)處理、頻譜分析等應(yīng)用中的一種基本的處理部件,它能滿足濾波器對(duì)幅度和線性相位的嚴(yán)格要求,避免模擬濾波器所無法克服的電壓漂移、溫度漂移和噪聲等問題。因此在許多應(yīng)用領(lǐng)域都顯示了強(qiáng)大的生命力,具有重要應(yīng)用意義。提出了一種基于 FPGA的 FIR 濾波器設(shè)計(jì)方案。該設(shè)計(jì)對(duì) FPGA 硬件資源的利用高效合理,用 VHDL 編程,在 PFGA 中實(shí)現(xiàn)了高采樣率的 FIR 濾波器。pattern process, patternrecognition, radar signal process and spectral analysis. It can meet the high needs to range and phase, and can avoid such problems as voltage drifting, temperature drifting and noise that analogue filters cannot overe. FIR filter can assure a strict linear phase identity while designing any range and frequency. Therefore, FIR filter has shown its strong vitality in many fields and its importance in using. In the paper, the way to use VHDL to design linear phase FIR filter is introduced and its importance in using. In the paper, the way to use VHDL to design linear phase FIR filter is introduced and its designing thoughts are expounded. This paper introduces the design scheme of FIR filter based on FPGA, introduces that the design technology of FIR filter based on FPGA about digital system processing arithmetic. FIR filter adopts the basic structure of direct type, the result are shifting and adding. Integrating advanced software of EDA to design and achieve, and giving some emulator results. This design makes high use of hardware resource about FPGA, programming with VHDL language, achieving FIR filter with high sampling level based on PDGA. Keywords: Finite Impulse Response Digital Filter(FIR)、 Field Programmable Gate、 Array( FPGA) 、 VHDL、 Quartus Ⅱ 引 言 在數(shù)字信號(hào)處理技術(shù)不斷發(fā)展的今天,數(shù)字濾波器正在迅速地代替?zhèn)鹘y(tǒng)的模擬濾波器,所以有越來越多的人們?cè)谘芯繑?shù)字濾波器的結(jié)構(gòu)以及其實(shí)現(xiàn)。 目前 FIR濾波器的實(shí)現(xiàn)方法有 3種:利用單片通用數(shù)字濾波器集成電路 、 DSP器件和 可編程邏輯器件實(shí)現(xiàn)。 FPGA有著規(guī)整的內(nèi)部邏輯陣列和豐富的連線資源,特別適合于數(shù)字信號(hào)處理任務(wù),相對(duì)于串行運(yùn)算為主導(dǎo)的通用 DSP芯片來說,其并行性和可擴(kuò)展性更好。 眾所周知, Quartus Ⅱ 是美國(guó) ALTERA公司自行開發(fā)的一種針對(duì)其公司生產(chǎn)的系列 FPGA的設(shè)計(jì)、仿真、編程的工具軟件, Quartus Ⅱ 是 FPGA應(yīng)用軟件中比較典型和常見的一種工具,在我國(guó)應(yīng)用較為普遍。 1 FPGA 的設(shè)計(jì)流程 可編程邏輯器件 (PLD, Program