基于FPGA的FIR濾波器的實(shí)現(xiàn)_第1頁
基于FPGA的FIR濾波器的實(shí)現(xiàn)_第2頁
基于FPGA的FIR濾波器的實(shí)現(xiàn)_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

1、    基于FPGA的FIR濾波器的實(shí)現(xiàn)    基于FPGA的FIR濾波器的實(shí)現(xiàn)    類別:EDA/PLD      作者:天津大學(xué)電子信息工程學(xué)院(300072)     郭繼昌 向 暉 滕建輔 李香萍來源:電子技術(shù)應(yīng)用         基于FPGA的FIR濾波器的實(shí)現(xiàn)  &

2、#160;  摘 要: 提出了一種采用現(xiàn)場可編程門陣列器件FPGA并利用窗函數(shù)法實(shí)現(xiàn)線性FIR數(shù)字濾波器硬件電路的方案,并以一個(gè)十六階低通FIR數(shù)字濾波器電路的實(shí)現(xiàn)為例說明了利用Xilinx公司XC4000系列芯片的設(shè)計(jì)過程。設(shè)計(jì)的電路通過軟件程序進(jìn)行了驗(yàn)證和硬件仿真,結(jié)果表明電路工作正確可靠,能滿足設(shè)計(jì)要求。    關(guān)鍵詞: FPGA FIR數(shù)字濾波器 窗函數(shù) 全加器    隨著微電子技術(shù)的發(fā)展,采用現(xiàn)場可編程門陣列FPGA進(jìn)行數(shù)字信號(hào)處理得到了飛速發(fā)展。由于FPGA具有現(xiàn)場可編程的特點(diǎn),可以實(shí)現(xiàn)專用集

3、成電路,因此越來越受到硬件電路設(shè)計(jì)工程師們的青睞。本文研究了基于FPGA的FIR數(shù)字低通濾波器硬件電路的實(shí)現(xiàn)方法。用這種方法實(shí)現(xiàn)的濾波器內(nèi)部電路結(jié)構(gòu)透明化,并減小了體積,提高了工作效率。     用窗函數(shù)法設(shè)計(jì)線性相位FIR濾波器的方法     傅立葉系數(shù)h(n)實(shí)際上就是數(shù)字濾波器的沖激響應(yīng)。獲得有限沖激響應(yīng)數(shù)字濾波器的一種可能方法就是把式(1)的無窮級(jí)數(shù)截取為有限項(xiàng)級(jí)數(shù)來近似,而眾所周知的吉布斯現(xiàn)象使得直接截取法不甚令人滿意。     窗函數(shù)法是用被稱為窗函數(shù)的有限加權(quán)序

4、列w(n)來修正式(2)的傅立葉系數(shù),以求得要求的有限    選用漢寧(Hnnning)窗作為窗函數(shù),函數(shù)如式(6)所示。         十六階FIR低通數(shù)字濾波器硬件電路設(shè)計(jì)    下面以一個(gè)十六階FIR低通濾波器為例說明硬件電路的設(shè)計(jì)方法和過程。    2.1 設(shè)計(jì)指標(biāo)和參數(shù)提取    2.1.1 設(shè)計(jì)指標(biāo)    

5、; 截止頻率:37.5kHz    類 型:低通 輸入數(shù)據(jù)寬度:8位    階 數(shù):16階 輸出數(shù)據(jù)寬度:16位    2.1.2 參數(shù)提取     采用上面介紹的低通濾波器的頻率響應(yīng)函數(shù)和漢寧窗函數(shù)進(jìn)行設(shè)計(jì)。計(jì)算出的符合設(shè)計(jì)指標(biāo)的線性相位16階FIR數(shù)字低通濾波器的特性參數(shù)如下:    h0=h15=0.000000    h1=h14=0.001992&

6、#160;   h2=h13=0.008241    h3=h12=0.018332    h4=h11=0.030784    h5=h10=0.043353    h6=h9=0.053550    h=7=h8=0.059257    2.2 單元電路設(shè)計(jì)    FIR低通數(shù)字濾波器

7、電路分為數(shù)據(jù)位擴(kuò)展、并串轉(zhuǎn)換器、移位寄存器組、前加單元、中間處理單元、后處理單元以及控制單元等部分,其構(gòu)成框圖如圖所示。    2.2.1 數(shù)據(jù)位擴(kuò)展    這里所設(shè)計(jì)的FIR數(shù)字濾波器輸入是8位寬的,為了防止溢出,保證電路的正常工作,這里采用符號(hào)位擴(kuò)展方法,經(jīng)過符號(hào)位擴(kuò)展,總的輸入數(shù)據(jù)寬度為9位。    2.2.2 并串轉(zhuǎn)換器    并串轉(zhuǎn)換器由9個(gè)2選1選擇器和9個(gè)D觸發(fā)器組成,結(jié)構(gòu)十分簡單,在此不再對(duì)其電路結(jié)構(gòu)贅述。其工作過程為:

8、并串轉(zhuǎn)換器以采樣速率周期地采入8位樣點(diǎn)數(shù)據(jù),并輸出1位數(shù)據(jù)流給后級(jí)的移位寄存器。    2.2.3 移位寄存器組    寄存器組主要完成移位功能。    2.2.4 前加單元    前加單元的主要功能是將移位寄存器輸出的1位串行數(shù)據(jù)流進(jìn)行預(yù)相加,它由一位串行加法器構(gòu)成。XC4000系列芯片具有以下兩個(gè)特點(diǎn):    ()內(nèi)部基本單元CLB(可配置邏輯模塊)包括三個(gè)函數(shù)發(fā)生器,分別以F、G和H標(biāo)記。其

9、中兩個(gè)第一級(jí)的函數(shù)發(fā)生器F和G,每個(gè)可實(shí)現(xiàn)4輸入的任何函數(shù),同時(shí)它們也可以與H函數(shù)發(fā)生器組合生成五輸入的任何函數(shù)。此外,CLB還具有CLB內(nèi)部連線比外部連線延時(shí)小的特點(diǎn)。    ()XC4000系列提供了快速進(jìn)位邏輯(Carry Logic)用來加速加法器和計(jì)數(shù)器的進(jìn)位通道。利用快速進(jìn)位邏輯、加法器和計(jì)數(shù)器,在占用最小數(shù)量CLB的情況下,卻具有極快的工作速度。且該進(jìn)位邏輯可以進(jìn)行靈活配置,以實(shí)現(xiàn)任意長度的計(jì)數(shù)器和減法器。     因此,從提高芯片利用率、布線率,減小電路延時(shí)等方面考慮,必須充分利用XC4000系列芯

10、片的特點(diǎn),對(duì)電路中的位全加器作適合于FPGA特點(diǎn)的特殊設(shè)計(jì)。圖電路為本文所采用的經(jīng)優(yōu)化后的包括快速進(jìn)位邏輯的位全加器電路,其中FMAP為函數(shù)映射,可將特定電路映射到CLB的F、G或H函數(shù)發(fā)生器中;CY4為快速進(jìn)位邏輯宏單元。    2.2.5 中間處理單元    在FIR數(shù)字濾波器中,中間處理單元主要實(shí)現(xiàn)對(duì)來自前加單元的位串行輸出數(shù)據(jù)的相乘和累加功能。這里采用基于ROM查表法的分布式算法進(jìn)行中間處理單元的電路設(shè)計(jì)。     如前所述,本文僅考慮沖激響應(yīng)對(duì)稱的情況,即濾波器的系

11、數(shù)是對(duì)稱的,所以獨(dú)立系數(shù)的數(shù)目應(yīng)等于1/2的階數(shù)。對(duì)于16階的FIR濾波器來說,其獨(dú)立系數(shù)的個(gè)數(shù)為8個(gè)。這8個(gè)獨(dú)立系數(shù)按表所示的各種組合存儲(chǔ)于2個(gè)基于ROM的查找表內(nèi)。    2.2.6 后處理單元     后處理單元的主要功能是對(duì)數(shù)據(jù)進(jìn)行四舍五入和從數(shù)據(jù)流中取出需要的數(shù)據(jù)。完成四舍五入功能需要一個(gè)16位的加法器,取數(shù)據(jù)則需要16位并行D觸發(fā)器。    2.2.7 控制單元    控制單元主要由計(jì)數(shù)器和D觸發(fā)器組成。它對(duì)電路的控制主要包

12、括:在電路開始工作前進(jìn)行全局復(fù)位,作好工作準(zhǔn)備;對(duì)輸入單元的工作進(jìn)行控制;提供中間處理單元正常工作所必須的一些信號(hào);提供最終輸出結(jié)果時(shí)的輸出同步信號(hào)(OUTSYN)。    2.3 電路原理及功能仿真    采用Xilinx公司的XC4005EPC84設(shè)計(jì)的16階FIR低通數(shù)字濾波器的硬件電路最上層的電路原理圖如圖所示。    圖是FIR數(shù)字濾波器的上層圖,其輸入輸出管腳情況和硬件資源占用情況分別見表和表。     為了檢測(cè)設(shè)計(jì)的電路能

13、否連續(xù)正確地工作,連續(xù)輸入了16位數(shù)據(jù)(十進(jìn)制),分別為:100,101,102,103,104,105,106,107,-101,-102,-103,-104,-105,-106,-107。FIR數(shù)字濾波器硬件仿真結(jié)果(前16個(gè)輸出)如表所示。在表中同時(shí)列出了根據(jù)文獻(xiàn)4編寫的程序所得到的軟件計(jì)算結(jié)果。     從上述數(shù)據(jù)可以看出,軟件仿真結(jié)果與硬件仿真結(jié)果相比,誤差的絕對(duì)值均,可以認(rèn)為濾波器的硬件電路工作正確。     此外,為了驗(yàn)證此濾波器在邊緣值輸入時(shí)能否正確工作,還進(jìn)行了邊緣值測(cè)試。當(dāng)輸入數(shù)據(jù)是位時(shí),其兩個(gè)邊緣值分別是+127和-128,對(duì)應(yīng)16進(jìn)制的7F和80。利用這兩組數(shù)據(jù)做輸入,得到的輸出也與軟件結(jié)果進(jìn)行對(duì)比,可以證實(shí)此時(shí)電路也能正確工作。    本文設(shè)計(jì)的16階線性相位FIR數(shù)字低通濾波器,利用XC4005EPC84-2芯

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論