国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于FPGA的IIR帶通數(shù)字濾波器設(shè)計(jì)與仿真

2012-06-01 06:57杭州電子科技大學(xué)射頻電路與系統(tǒng)教育部重點(diǎn)實(shí)驗(yàn)室楊延亮程知群
電子世界 2012年3期
關(guān)鍵詞:并聯(lián)濾波器精度

杭州電子科技大學(xué)射頻電路與系統(tǒng)教育部重點(diǎn)實(shí)驗(yàn)室 楊延亮 程知群 馮 濤

基于FPGA的IIR帶通數(shù)字濾波器設(shè)計(jì)與仿真

杭州電子科技大學(xué)射頻電路與系統(tǒng)教育部重點(diǎn)實(shí)驗(yàn)室 楊延亮 程知群 馮 濤

該文給出了用Matlab設(shè)計(jì)IIR帶通數(shù)字濾波器的方法,利用Matlab語(yǔ)言進(jìn)行程序設(shè)計(jì)出二階環(huán)為基礎(chǔ)的并聯(lián)結(jié)構(gòu)模型,通過(guò)在Matlab環(huán)境下仿真軟件Simulink對(duì)設(shè)計(jì)的帶通濾波器進(jìn)行了動(dòng)態(tài)仿真,確定了濾波器系數(shù)的量化字長(zhǎng)。從仿真結(jié)果來(lái)看,設(shè)計(jì)的帶通數(shù)字濾波器既滿(mǎn)足濾波器的選頻特性,又優(yōu)化了硬件資源。在實(shí)際的應(yīng)用中,可以根據(jù)不同F(xiàn)PGA資源靈活修改濾波器系數(shù),在不同規(guī)模的FPGA上實(shí)現(xiàn)。

無(wú)限脈沖響應(yīng);帶通數(shù)字濾波器;量化字長(zhǎng);現(xiàn)場(chǎng)可編程門(mén)陣列

1.引言

在數(shù)字信號(hào)處理的領(lǐng)域內(nèi),數(shù)字濾波技術(shù)是極其重要的一個(gè)分支。無(wú)論是信號(hào)的獲取、傳輸,還是信號(hào)的處理和交換都離不開(kāi)數(shù)字濾波,它對(duì)于信號(hào)安全有效的傳輸是至關(guān)重要的[1]。在主要的兩類(lèi)數(shù)字濾波器中,IIR(無(wú)限脈沖響應(yīng))濾波器被廣泛使用。

Matlab是美國(guó)MathWorks公司出品的數(shù)學(xué)軟件,用于算法開(kāi)發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析以及數(shù)值計(jì)算的高級(jí)技術(shù)計(jì)算語(yǔ)言和交互式環(huán)境[2]。其中Matlab自帶的信號(hào)處理工具箱,具有強(qiáng)大的信號(hào)處理和分析功能,它提供了豐富簡(jiǎn)便的設(shè)計(jì),使原來(lái)繁瑣的程序設(shè)計(jì)簡(jiǎn)化成函數(shù)的調(diào)用,這樣便可以快速有效的實(shí)現(xiàn)數(shù)字濾波器的設(shè)計(jì)與仿真。

FPGA(現(xiàn)場(chǎng)可編程門(mén)陣列)以其優(yōu)越的實(shí)時(shí)性和設(shè)計(jì)靈活性成為了控制系統(tǒng)中不可或缺的一部分,它可利用Simulink設(shè)計(jì)仿真的有限字長(zhǎng)IIR濾波器自動(dòng)生成VHDL或Verilog代碼,下載至FPGA實(shí)現(xiàn)濾波器功能[3]。本文研究了基于FPGA有限字長(zhǎng)的IIR帶通數(shù)字濾波器的相關(guān)理論,設(shè)計(jì)方法及仿真。

2.IIR數(shù)字濾波器設(shè)計(jì)基本原理

數(shù)字IIR濾波器的設(shè)計(jì)都是基于模擬IIR濾波器,之后將其轉(zhuǎn)化為等價(jià)的數(shù)字濾波器[4]。其中沖擊響應(yīng)不變法是一種較為常用的方法。其總的變化流程如下:

考慮到傳統(tǒng)濾波器計(jì)算量大,濾波特性不宜調(diào)整等缺點(diǎn),如何解決這些問(wèn)題便顯得極為關(guān)鍵。利用Matlab強(qiáng)大的數(shù)字信號(hào)處理和計(jì)算能力可快速有效的設(shè)計(jì)數(shù)字濾波器,不僅極大的簡(jiǎn)化了計(jì)算量,而且它可以隨時(shí)對(duì)比設(shè)計(jì)要求和濾波器特性進(jìn)行參數(shù)調(diào)整,方便靈活[5]。

3.基于FPGA的IIR濾波器設(shè)計(jì)

3.1 濾波器設(shè)計(jì)方法的選擇

高階IIR數(shù)字濾波器的系統(tǒng)傳遞函數(shù)可表示為:

根據(jù)濾波器傳遞函數(shù)H(z)的不同表達(dá)形式,可以得出不同的實(shí)現(xiàn)結(jié)構(gòu)。相對(duì)較為常用的3種結(jié)構(gòu)為直接型,級(jí)聯(lián)型和并聯(lián)型。其中直接型對(duì)系數(shù)的敏感度最高,受有限字長(zhǎng)造成的影響最大。級(jí)聯(lián)型H(z)的連接順序具有很大的自由度,因此在實(shí)際設(shè)計(jì)中這些組合方式,比例變化和H(z)的連接順序等都會(huì)產(chǎn)生很大的問(wèn)題。并聯(lián)型濾波器則可以很好的克服上述兩種結(jié)構(gòu)的缺點(diǎn),因此在濾波器極點(diǎn)不重復(fù)時(shí),并聯(lián)型濾波器被廣泛使用。

在相同性能的要求下,橢圓濾波器比巴特沃斯和切比雪夫?yàn)V波器所需的階數(shù)低,且過(guò)渡帶窄,可獲得更好的選頻特性。

3.2 Matlab程序設(shè)計(jì)

通過(guò)Matlab設(shè)計(jì)的帶通濾波器部分代碼如下:

上述程序給出了橢圓濾波器模型設(shè)計(jì)的10階并聯(lián)型結(jié)構(gòu)的數(shù)字濾波器[6]。通帶為頻率1000~2000Hz,采樣頻率8000Hz,通帶衰減1dB,阻帶衰減60dB。

3.3 濾波器穩(wěn)定性問(wèn)題

二階IIR濾波器傳遞函數(shù)為:從式中可以看出,為確保穩(wěn)定性,極點(diǎn)必須位于單位圓之內(nèi)(即|p1|<1,|p2|<1),因此可以得到:

由Schur-Cohn穩(wěn)定性測(cè)試可以得到a1和a2的關(guān)系為:

只要滿(mǎn)足上述兩式的關(guān)系,就可以保證濾波器的穩(wěn)定性。

理論設(shè)計(jì)出的濾波器系數(shù)是無(wú)限精度的,但在實(shí)際的應(yīng)用中,所有的系數(shù)都必須是以二進(jìn)制數(shù)儲(chǔ)存在計(jì)算機(jī)中,這就要求量化系數(shù),取有限精度的字長(zhǎng),相應(yīng)造成濾波器零極點(diǎn)的位置發(fā)生偏移,使得實(shí)際的頻率響應(yīng)和理論情況有所出入,情況嚴(yán)重時(shí)還可能使濾波器極點(diǎn)偏移至穩(wěn)定單位圓外,造成整個(gè)系統(tǒng)不穩(wěn)定。

圖1 初始化函數(shù)

圖2 濾波器系數(shù)參數(shù)

圖3 未經(jīng)量化的幅頻響應(yīng)

圖4 量化精度16bits幅頻響應(yīng)

圖5 量化精度14bits幅頻響應(yīng)

圖6 量化精度13bits幅頻響應(yīng)

圖7 IIR濾波器Simulink仿真模型

圖8 4單頻與白噪聲相加頻譜

圖9 單頻加白噪聲濾波后頻譜

圖10 白噪聲濾波后的頻譜

導(dǎo)致這些不穩(wěn)定的因素主要有兩方面體現(xiàn):溢出和極限環(huán)。溢出問(wèn)題可以通過(guò)飽和模式、保護(hù)位、對(duì)信號(hào)和/或系數(shù)進(jìn)行縮放等消除溢出效應(yīng);而對(duì)于極限環(huán)所造成的不穩(wěn)定,可以通過(guò)截尾法、降低濾波器階數(shù)、使用更多位來(lái)提高精度,移動(dòng)極點(diǎn)使其遠(yuǎn)離單位圓等方法來(lái)消除極限環(huán)[7]。總之,在FPGA上實(shí)現(xiàn)IIR濾波器之前,檢查其穩(wěn)定性和有限字長(zhǎng)效應(yīng)是非常重要的。

3.4 濾波器系數(shù)量化精度造成的影響

在Simulink濾波器模型中,可以通過(guò)設(shè)定變量的方法可靈活控制濾波器系數(shù)字長(zhǎng),如圖1、2所示。

在圖2所示的Parameter Attributes和Signal Attributes分別對(duì)應(yīng)的data type中可對(duì)其進(jìn)行變量設(shè)定;圖1所示的InitFcn函數(shù)可以對(duì)濾波器系數(shù)、加法器等設(shè)定與圖2相對(duì)應(yīng)的變量,并對(duì)其初始化。其優(yōu)勢(shì)在于當(dāng)需要改變?yōu)V波器字長(zhǎng)時(shí),無(wú)需通過(guò)對(duì)每個(gè)濾波器系數(shù)字長(zhǎng)逐一進(jìn)行修改,只需在InitFcn函數(shù)中對(duì)其對(duì)應(yīng)的初始化常量值進(jìn)行修改量化即可。不同的量化字長(zhǎng)對(duì)應(yīng)不同的濾波效果,對(duì)幅頻響應(yīng)造成的影響如圖3-6所示。A子集還是B子集進(jìn)行編碼。反過(guò)來(lái)也可以說(shuō),左側(cè)數(shù)據(jù)區(qū)字符編碼的奇偶排列順序,決定了前置碼。比如,如果某個(gè)條形碼的左側(cè)數(shù)據(jù)區(qū)的編碼是:奇偶偶偶奇奇,那么前置碼就是6。

3.5 條碼譯碼

經(jīng)由條碼的條空寬度歸一化到-1,-2,-3,-4,1,2,3和4八個(gè)整數(shù)后,創(chuàng)建譯碼表,表3所示。譯碼工作通過(guò)查詢(xún)此表即可實(shí)現(xiàn)。例如:某個(gè)字符的四個(gè)條空寬度分別是,-3,1,-2和1,經(jīng)查表可知,這個(gè)字符是“8”。

4.實(shí)驗(yàn)結(jié)果分析

仿真實(shí)驗(yàn)使用VC++ Express 2008和OpenCV開(kāi)發(fā)平臺(tái)。實(shí)驗(yàn)表明,本文算法效果良好。對(duì)于光照不均勻,輕微模糊,及傾斜角在正負(fù)25度內(nèi)的條碼圖像,都能正確識(shí)別。如圖7所示。

[1]中國(guó)標(biāo)準(zhǔn)出版社.條碼國(guó)家標(biāo)準(zhǔn)匯編[M].北京:中國(guó)標(biāo)準(zhǔn)出版社,2004.

[2]陸宗騏.C/C++圖像處理編程[M].北京:清華大學(xué)出版社,2005.

[3]蘇彥華.VC++數(shù)字圖像識(shí)別技術(shù)典型案例[M].北京:人民郵電出版社,2004

[4]沈庭芝.數(shù)字圖像處理及模式識(shí)別[M].北京:北京理工大學(xué)出版社,1998.

姜亮(1980—),男,研究生,研究方向:計(jì)算機(jī)應(yīng)用。

猜你喜歡
并聯(lián)濾波器精度
識(shí)別串、并聯(lián)電路的方法
從濾波器理解卷積
分析誤差提精度
開(kāi)關(guān)電源EMI濾波器的應(yīng)用方法探討
基于DSPIC33F微處理器的采集精度的提高
審批由“串聯(lián)”改“并聯(lián)”好在哪里?
基于Canny振蕩抑制準(zhǔn)則的改進(jìn)匹配濾波器
GPS/GLONASS/BDS組合PPP精度分析
并聯(lián)型APF中SVPWM的零矢量分配
一種軟開(kāi)關(guān)的交錯(cuò)并聯(lián)Buck/Boost雙向DC/DC變換器