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

設(shè)系數(shù)c[n]是已知常數(shù),x[n]是變量,在有符號(hào)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í)需對(duì)其進(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)電路,并利用測(cè)試儀器,組成了測(cè)試系統(tǒng),如圖3所示。該測(cè)試系統(tǒng)包含交流信號(hào)發(fā)生器、實(shí)驗(yàn)電路和示波器。而實(shí)驗(yàn)電路包括MD轉(zhuǎn)換電路、FIR數(shù)字濾波電路和D/A轉(zhuǎn)換電路,它是整個(gè)測(cè)試系統(tǒng)的重要部分。

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

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

4.3 FIR數(shù)字濾波電路
FIR是有限沖激響應(yīng)(Finite Impulse Response)的簡(jiǎn)稱。由線性系統(tǒng)理論可知,在某種適度條件下,輸入到線性系統(tǒng)的一個(gè)沖擊完全可以表征系統(tǒng)。當(dāng)我們處理有限的離散數(shù)據(jù)時(shí),線形系統(tǒng)的響應(yīng)(包括對(duì)沖擊的響應(yīng))也是有限的。若線性系統(tǒng)僅是一個(gè)空間濾波器,則通過(guò)簡(jiǎn)單地觀察它對(duì)沖擊的響應(yīng),我們就可以完全確定該濾波器。通過(guò)這種方式確定的濾波器稱為有限沖擊響應(yīng)(FIR)濾波器。FIR濾波器是在數(shù)字信號(hào)處理(DSP)中經(jīng)常使用的兩種基本的濾波器之一,另一個(gè)為IIR濾波器。IIR濾波器是無(wú)限沖激響應(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 濾波效果測(cè)試
將設(shè)計(jì)的低通濾波器的配置文件到器件中進(jìn)行實(shí)際濾波測(cè)試,用示波器觀察各個(gè)頻率點(diǎn)上輸出信號(hào)的幅值大小。由濾波測(cè)試結(jié)果可知,該FIR濾波電路完全達(dá)到低通濾波器5 MHz的采樣頻率,1.5 MHz的截止頻率,以及16階的技術(shù)指標(biāo)參數(shù)。圖7為原始波形,圖8為濾波后的波形。

6 結(jié)語(yǔ)
研究了在FPGA中采用分布式算法實(shí)現(xiàn)FIR濾波器的原理和方法,設(shè)計(jì)了FIR濾波器并借助Altera公司的FPGA器件和0uartusⅡ軟件對(duì)設(shè)計(jì)方案進(jìn)行仿真驗(yàn)證,測(cè)試結(jié)果完滿足系統(tǒng)設(shè)計(jì)要求。
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫(kù)電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫(kù)電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫(kù)電子市場(chǎng)網(wǎng),http://www.hbjingang.com,違反者本網(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)等問(wèn)題,請(qǐng)?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)的信號(hào)完整性2022/9/26 16:45:38
- 高速PCB信號(hào)完整性(SI)設(shè)計(jì)核心實(shí)操規(guī)范
- 鎖相環(huán)(PLL)中的環(huán)路濾波器:參數(shù)計(jì)算與穩(wěn)定性分析
- MOSFET反向恢復(fù)特性對(duì)系統(tǒng)的影響
- 電源IC在惡劣環(huán)境中的防護(hù)設(shè)計(jì)
- 連接器耐腐蝕性能測(cè)試方法
- PCB電磁兼容(EMC)設(shè)計(jì)與干擾抑制核心實(shí)操規(guī)范
- 用于相位噪聲測(cè)量的低通濾波器設(shè)計(jì)與本振凈化技術(shù)
- MOSFET在高頻開關(guān)中的EMI問(wèn)題
- 電源IC在便攜式設(shè)備中的設(shè)計(jì)要點(diǎn)
- 連接器結(jié)構(gòu)設(shè)計(jì)常見(jiàn)問(wèn)題分析









