一種FIR數(shù)字濾波器設(shè)計(jì)與仿真
出處:國外電子元器件 發(fā)布于:2011-06-10 21:43:54
1 引言
數(shù)字濾波器由數(shù)字乘法器、加法器和延時(shí)單元組成的一種算法或裝置。數(shù)字濾波器的功能是對輸入離散信號的數(shù)字代碼進(jìn)行運(yùn)算處理,以達(dá)到改變信號頻譜的目的。
數(shù)字濾波器是一個(gè)離散時(shí)間系統(tǒng)(按預(yù)定的算法,將輸入離散時(shí)間信號轉(zhuǎn)換為所要求的輸出離散時(shí)間信號的特定功能裝置)。應(yīng)用數(shù)字濾波器處理模擬信號時(shí),首先須對輸入模擬信號進(jìn)行限帶、抽樣和模數(shù)轉(zhuǎn)換。數(shù)字濾波器輸入信號的抽樣率應(yīng)大于被處理信號帶寬的兩倍,其頻率響應(yīng)具有以抽樣頻率為間隔的周期重復(fù)特性,且以折疊頻率即1/2抽樣頻率點(diǎn)呈鏡像對稱。為得到模擬信號,數(shù)字濾波器處理的輸出數(shù)字信號須經(jīng)數(shù)模轉(zhuǎn)換、平滑。數(shù)字濾波器具有高、高可靠性、可程控改變特性或復(fù)用、便于集成等優(yōu)點(diǎn)。數(shù)字濾波器在語言信號處理、圖像信號處理、醫(yī)學(xué)生物信號處理以及其他應(yīng)用領(lǐng)域都得到了廣泛應(yīng)用。
FPGA(Field-Programmable Gate Array),即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。
系統(tǒng)設(shè)計(jì)師可以根據(jù)需要通過可編輯的連接把FPGA內(nèi)部的邏輯塊連接起來,就好像一個(gè)電路試驗(yàn)板被放在了一個(gè)芯片里。一個(gè)出廠后的成品FPGA的邏輯塊和連接可以按照設(shè)計(jì)者而改變,所以FPGA可以完成所需要的邏輯功能。
FPGA一般來說比ASIC(專用集成芯片)的速度要慢,無法完成復(fù)雜的設(shè)計(jì),而且消耗更多的電能。但是他們也有很多的優(yōu)點(diǎn)比如可以快速成品,可以被修改來改正程序中的錯(cuò)誤和更便宜的造價(jià)。廠商也可能會(huì)提供便宜的但是編輯能力差的FPGA。因?yàn)檫@些芯片有比較差的可編輯能力,所以這些設(shè)計(jì)的開發(fā)是在普通的FPGA上完成的,然后將設(shè)計(jì)轉(zhuǎn)移到一個(gè)類似于ASIC的芯片上。另外一種方法是用CPLD(復(fù)雜可編程邏輯器件備)。
2 基本原理
分布式算法(Distributed Arithmetic,簡稱DA)是一項(xiàng)重要的FPGA技術(shù),廣泛應(yīng)用在計(jì)算乘積和之中。該算法基本原理如下:
一線性時(shí)不變網(wǎng)絡(luò)輸出:

設(shè)系數(shù)c[n]是已知常數(shù),x[n]是變量,在有符號DA系統(tǒng)中假設(shè)變量x[n]的表達(dá)式為:

式中xb[n]為x[n]的第b位,而x[n]也就是x的第n次采樣。于是,內(nèi)積y可以表示為:

分布式算法是一種以實(shí)現(xiàn)乘加運(yùn)算為目的的運(yùn)算方法。它與傳統(tǒng)算法實(shí)現(xiàn)乘加運(yùn)算的不同在于執(zhí)行部分積運(yùn)算的先后順序。該算法利用一個(gè)查找表(LUT)實(shí)現(xiàn)映射,即用一個(gè)2N字寬、預(yù)先編好程序的LUT接收一個(gè)N位輸入向量xb=[xb[0]],xb[1],…,xb[N-1]]的映射,經(jīng)查找表的查找后直接輸出部分積。與傳統(tǒng)算法相比,分布式算法可極大的減少硬件電路的規(guī)模,提高電路的執(zhí)行速度。
3 FIR濾波器的設(shè)計(jì)與實(shí)現(xiàn)
3.1 FIR濾波器系數(shù)的提取
線性相位FIR濾波器通常采用窗函數(shù)法設(shè)計(jì)。這里采用MATLAB窗函數(shù)進(jìn)行設(shè)計(jì)。窗函數(shù)設(shè)計(jì)的基本思想是要選取某一合適的理想頻率選擇性濾波器,然后將其脈沖響應(yīng)截?cái)喃@得一個(gè)線性相位和因果的FIR濾波器。根據(jù)給定的濾波器技術(shù)指標(biāo),選用凱澤(Kaiser)窗設(shè)計(jì),其幅頻特性和相頻特性如圖1所示。

由于從MATLAB算出的系數(shù)h(n)的值是一組浮點(diǎn)數(shù),而FPGA器件只是定點(diǎn)數(shù)計(jì)算,所以要將浮點(diǎn)數(shù)轉(zhuǎn)換為定點(diǎn)數(shù)。為了獲得濾波器系數(shù),轉(zhuǎn)換時(shí)需對其進(jìn)行處理,轉(zhuǎn)換后系

![]()
3.2 FPGA實(shí)現(xiàn)FIR濾波器
FPGA采用FLEXlOK系列中的EPF10K10 2C84—3器件。EDA 工具使用QuartusⅡ5.1。使用FIR濾波器描述編程,從而實(shí)現(xiàn)FIR濾波器的頂層原理圖,如圖2所示。

4 FIR濾波器實(shí)驗(yàn)電路
完成FIR濾波器程序設(shè)計(jì)后,可將程序編譯時(shí)生成的配置文件到選用的器件中,配置后的器件就能夠執(zhí)行FIR濾波器的功能。為了驗(yàn)證設(shè)計(jì)的FIR濾波器的實(shí)際濾波效果,設(shè)計(jì)了一個(gè)實(shí)驗(yàn)電路,并利用測試儀器,組成了測試系統(tǒng),如圖3所示。該測試系統(tǒng)包含交流信號發(fā)生器、實(shí)驗(yàn)電路和示波器。而實(shí)驗(yàn)電路包括MD轉(zhuǎn)換電路、FIR數(shù)字濾波電路和D/A轉(zhuǎn)換電路,它是整個(gè)測試系統(tǒng)的重要部分。

4.1 A/D轉(zhuǎn)換電路
A/D轉(zhuǎn)換電路可將模擬信號轉(zhuǎn)換為數(shù)字信號,其電路如圖4所示。該轉(zhuǎn)換電路中選用MAXIM公司的12位逐次逼近式A/D轉(zhuǎn)換器MAXl83,其轉(zhuǎn)換時(shí)間為3μs。MAXl83設(shè)置為雙極性工作模式,模擬信號的輸入范圍是±5 V。

4.2 D/A轉(zhuǎn)換電路
D/A轉(zhuǎn)換定義將數(shù)字信號轉(zhuǎn)換為模擬信號的電路稱為數(shù)模轉(zhuǎn)換器(簡稱d/a轉(zhuǎn)換器或dac,digital to analog converter)。
D/A轉(zhuǎn)換電路可將數(shù)字輸入信號轉(zhuǎn)換為模擬信號,其電路如圖5所示。該電路選用MAXIM公司的電壓輸出型D/A轉(zhuǎn)換器MX7245,其輸出的模擬信號為電壓信號,并具有12位的數(shù)據(jù)輸入端。在一定時(shí)序的控制下,D/A轉(zhuǎn)換器將輸入端接收到的數(shù)字信號YOUT[11..0]轉(zhuǎn)換成模擬信號輸出。在模擬信號的輸出端連接由電阻和電容構(gòu)成的一個(gè)低通濾波器,具有平滑濾波的作用。

4.3 FIR數(shù)字濾波電路
FIR是有限沖激響應(yīng)(Finite Impulse Response)的簡稱。由線性系統(tǒng)理論可知,在某種適度條件下,輸入到線性系統(tǒng)的一個(gè)沖擊完全可以表征系統(tǒng)。當(dāng)我們處理有限的離散數(shù)據(jù)時(shí),線形系統(tǒng)的響應(yīng)(包括對沖擊的響應(yīng))也是有限的。若線性系統(tǒng)僅是一個(gè)空間濾波器,則通過簡單地觀察它對沖擊的響應(yīng),我們就可以完全確定該濾波器。通過這種方式確定的濾波器稱為有限沖擊響應(yīng)(FIR)濾波器。FIR濾波器是在數(shù)字信號處理(DSP)中經(jīng)常使用的兩種基本的濾波器之一,另一個(gè)為IIR濾波器。IIR濾波器是無限沖激響應(yīng)濾波器。
圖6給出FIR數(shù)字濾波電路。該電路包括高密度可編程邏輯器件、有源品體振蕩器、10針插座以及多只電阻和按鍵開關(guān)。這里選用的高密度可編程邏輯器件為AIXERA公司FLEXlOK系列的EPF10K20RC240—3。

配置的濾波器設(shè)計(jì)后,利用器件中的剩余資源,即由EPFl0K20RC240—4型FPGA控制A/D轉(zhuǎn)換器和D/A轉(zhuǎn)換器的功能。其中,引腳RD、ADCS分別與A/D轉(zhuǎn)換器的引腳RD、CS相連,而引腳WR、LDAC、DACS分別與D/A轉(zhuǎn)換電路的引腳WR、LDAC、CS相連。
5 濾波效果測試
將設(shè)計(jì)的低通濾波器的配置文件到器件中進(jìn)行實(shí)際濾波測試,用示波器觀察各個(gè)頻率點(diǎn)上輸出信號的幅值大小。由濾波測試結(jié)果可知,該FIR濾波電路完全達(dá)到低通濾波器5 MHz的采樣頻率,1.5 MHz的截止頻率,以及16階的技術(shù)指標(biāo)參數(shù)。圖7為原始波形,圖8為濾波后的波形。

6 結(jié)語
研究了在FPGA中采用分布式算法實(shí)現(xiàn)FIR濾波器的原理和方法,設(shè)計(jì)了FIR濾波器并借助Altera公司的FPGA器件和0uartusⅡ軟件對設(shè)計(jì)方案進(jìn)行仿真驗(yàn)證,測試結(jié)果完滿足系統(tǒng)設(shè)計(jì)要求。
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- 掌握 DSP:原理剖析與應(yīng)用實(shí)踐2025/5/8 14:03:24
- 模糊邏輯在 DSP 上實(shí)時(shí)執(zhí)行2023/7/25 17:13:30
- 多速率DSP及其在數(shù)模轉(zhuǎn)換中的應(yīng)用2023/6/12 15:28:52
- 使用 DSP 加速 CORDIC 算法2023/3/29 15:46:30
- 高速DSP系統(tǒng)的信號完整性2022/9/26 16:45:38









