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

?

基于FPGA的通用型FIR數(shù)字濾波器的研究與設(shè)計(jì)

2015-12-26 12:45張震
軟件 2015年6期
關(guān)鍵詞:加法器乘法器

摘要:FIR數(shù)字濾波器的實(shí)現(xiàn)是基于加法器和乘法器,通過延遲將輸入信號與固定的抽頭系數(shù)相乘累加得到濾波結(jié)果,其中濾波系數(shù)是已知的數(shù)值,當(dāng)我們需要一個(gè)固定階數(shù)系數(shù)的值不固定時(shí),我們就需要將濾波的系數(shù)通過外部輸入的方式再與輸入信號相乘。對于FIR數(shù)字濾波器的通用型的研究是基于傳統(tǒng)的串行FIR數(shù)字濾波器的結(jié)構(gòu)進(jìn)行改造,使用VerilogHDL語言在QuartusII和Modelsim軟件里面進(jìn)行設(shè)計(jì)和仿真。結(jié)果表明基于FPGA的通用FIR數(shù)字濾波器的設(shè)計(jì)是可行的。

關(guān)鍵詞:加法器;乘法器;串行FIR數(shù)字濾波器;串行結(jié)構(gòu);通用型FIR數(shù)字濾波器

中圖分類號:TN713+.7

文獻(xiàn)標(biāo)識碼:A

DOI:10.3969/j.issn.1003-6970.2015.06.023

本文著錄格式:張震,基于FPGA的通用型FIR數(shù)字濾波器的研究與設(shè)計(jì)叮].軟件,2015,36(6):125-128

ResearchandDesignofUniversalFIRDigitalFilterBasedonFPGA

ZHANGZhen

[Abstract]:FIRdigitalfilterisrealizedbasedonaddersandmultipliers.Bydelayingthemultiplicationaccumulationoftheinputtedsignalandthefixedtapcoefficients,thefilterresultsareobtained.Thefiltercoefficientisknown.Whenafixedordernumbercoefficientvalueisnotfixed,weneedtomultiplythefiltercoefficientsthroughexternalinpulwiththeinputsignal.ResearchonuniversaltypeofFIRdigitalfilterisbasedontraditionalserialFIRdigitalfilterstructuretransformation,usingVerilogHDLlanguageinquartusandModelsimsoftwarefordesignandsimulation.TheresultsshowthatthedesignofgeneralFIRdigitalfilterbasedonFPGAisfeasible.

[Keywordsl:Adder;Multiplier;FIRdigitalfilter;Serialstructure;GeneralFIRdigitalfilter

0引言

研究人員自20世紀(jì)中期以來不斷的研究與發(fā)現(xiàn),并且提出了一整套關(guān)于數(shù)字濾波器的相關(guān)理論。數(shù)字濾波器[1-3]是對輸入的數(shù)字信號進(jìn)行相應(yīng)的累乘加運(yùn)算得到輸出的濾波信號的處理。利用FIR數(shù)字濾波器可以將不同的信號進(jìn)行處理,從而提取出我們需要的信號而過濾掉干擾信號。不同的實(shí)現(xiàn)方法可以分為FIR數(shù)字濾波器和IIR數(shù)字濾波器[4]。由于FIR數(shù)字濾波器是可以實(shí)現(xiàn)線性相位的,并且它的單位沖擊響應(yīng)為有限長,因此FIR數(shù)字濾波器的系統(tǒng)是總是穩(wěn)定的[5]。對于數(shù)字濾波器具有很強(qiáng)的穩(wěn)定性、高精度性、靈活性等等比較優(yōu)秀的特點(diǎn),隨著數(shù)字濾波技術(shù)的不斷發(fā)展,F(xiàn)IR數(shù)字濾波器在信號處理、數(shù)字圖像處理以及通信領(lǐng)域等等應(yīng)用也是十分的廣泛[6]。

FIR數(shù)字濾波器的系數(shù)的實(shí)現(xiàn)有兩種方式,一種方式是可編程型的,另一種則是固定型的.對于可編程的系數(shù)實(shí)現(xiàn)使用起來比較的靈活,固定型的有利于實(shí)現(xiàn)高速度和低功耗的系統(tǒng)實(shí)現(xiàn),本文使用的是可編程的。

對于階數(shù)為N的FIR數(shù)字濾波器的實(shí)現(xiàn),它的表達(dá)式為:

在實(shí)現(xiàn)FIR數(shù)字濾波器的方法中,使用FPGA的硬件實(shí)現(xiàn)可以使得FIR數(shù)字濾波器具有速度快的優(yōu)點(diǎn)。但是對于階數(shù)越多實(shí)現(xiàn)的FIR數(shù)字濾波器消耗的硬件資源也是比較多的,因此本文實(shí)現(xiàn)的通用型FIR數(shù)字濾波器是以低階的方式來實(shí)現(xiàn)和驗(yàn)證的。

1FIR數(shù)字濾波器的基本原理

1.1濾波器的一般表示方式

對于FIR數(shù)字濾波器的數(shù)學(xué)表達(dá)式也可以表示成[7]:

式(1)中:N-濾波器的階數(shù);h(n)-第n級的抽頭系數(shù)(單位脈沖響應(yīng));x(n)-第n時(shí)刻的輸入信號。FIR數(shù)字濾波器的h(n)單位脈沖響應(yīng)是有限長的,也就是FIR數(shù)字濾波器是一個(gè)有限長的序列與輸入信號的乘積累加和實(shí)現(xiàn)的,從式(1)中可以看出FIR數(shù)字濾波器是由一個(gè)加法器和乘法器的集合構(gòu)成的,對于每一次的采樣都要進(jìn)行N次的乘法和(N-l)次的加法運(yùn)算。其中的單位脈沖響應(yīng)h(n)為實(shí)數(shù),在幅度上滿足對稱條件

h(n)=土h(N_n)。

1.2串行FIR數(shù)字濾波器的結(jié)構(gòu)設(shè)計(jì)

對于h(n)做z域變換可以得到FIR數(shù)字濾波器的系統(tǒng)函數(shù)H(z),其系統(tǒng)函數(shù)表達(dá)式為:

n=U

由此可以得到FIR數(shù)字濾波器的串行結(jié)構(gòu)示意圖如下圖1所示:

圖1中x(n)為輸入的待處理信號;h(n)為固定的系數(shù),其脈沖響應(yīng)的數(shù)值是已知確定的數(shù)值;z-l代表著輸入信號的延遲。但是在通用型FIR數(shù)字濾波器的實(shí)現(xiàn)當(dāng)中h(n)單位脈沖響應(yīng)是通過相同的時(shí)鐘周期逐個(gè)地輸入再與相應(yīng)的輸入延遲信號相乘的,輸入的單位脈沖是可以根據(jù)白己的實(shí)際需要來變化的輸入的,因此達(dá)到了通用型FIR數(shù)字濾波器的實(shí)現(xiàn)。

1.3加法器

加法器[8-9]是數(shù)字信號處理過程中最常用、最簡單的邏輯單元。在很多的運(yùn)算過程中都需要用到加法器,減法和乘法的過程轉(zhuǎn)換也可以通過加法器來實(shí)現(xiàn)。在FIR數(shù)字濾波器的實(shí)現(xiàn)當(dāng)中我們需要通過加法器對乘法器運(yùn)算的結(jié)果進(jìn)行累加得m濾波器的輸出結(jié)果。對于加法器也有不同的結(jié)構(gòu)實(shí)現(xiàn),不同的加法器的實(shí)現(xiàn)方式的不同使得對資源、速度的結(jié)果也是不一樣的。下面讓我們簡單的了解加法器的實(shí)現(xiàn)原理。

加法器有半加器和全加器,半加器是沒有地位進(jìn)位端的加法器,而全加器相比于半加器多了一個(gè)進(jìn)位輸入端,全加器的真值表見表1。

通過上表1的全加器真值表我們就可以得l斗J全加器的邏輯表達(dá)式為:

S=AABACin:

C_out=(A&B)|((AAB)&C_in);

從全加器的表達(dá)式可以看出和的值與輸入信號和進(jìn)位信號異或的到,進(jìn)位信號同樣與輸入信號和進(jìn)位信號相關(guān)。

1.4乘法器

乘法器[10]同樣是信號處理的基本邏輯單元之一,比較常用的像濾波器、FFT都需要使用到乘法器。乘法器的實(shí)現(xiàn)也是有多種的,下面我們介紹在數(shù)字信號處理當(dāng)中比較常用的一位相加乘法器。

移位相加乘法器的實(shí)現(xiàn)相對簡單,就是對數(shù)進(jìn)行二進(jìn)制的轉(zhuǎn)化進(jìn)行相乘來實(shí)現(xiàn)。一位乘法器是根據(jù)乘數(shù)的每一位是0或1來判斷被乘數(shù)是否移位相加,如果為1則被乘數(shù)移位相加,否則被乘數(shù)不想加。

一位乘法器的實(shí)現(xiàn)過程如下:

例如一個(gè)3bit乘法器需要一個(gè)6bit移位寄存器和一個(gè)6bit的加法器就可以實(shí)現(xiàn)。

2通用型FIR數(shù)字濾波器的研究與設(shè)計(jì)

2.1通用型FIR數(shù)字濾波器的原理

通用型的FIR數(shù)字濾波器與FIR數(shù)字濾波器的設(shè)計(jì)基本上相同。通用型的原理就是在FIR數(shù)字濾波器的基礎(chǔ)之上對FIR數(shù)字濾波器的單位脈沖響應(yīng)做一些處理,具體的處理就是將h(n)的單位脈沖響應(yīng)的數(shù)值通過外部可輸入的方式,經(jīng)過寄存器寄存,寄存器的時(shí)鐘周期和輸入信號的時(shí)鐘為同一個(gè)時(shí)鐘,每一個(gè)時(shí)鐘輸入信號延遲一位的同時(shí)單位脈沖響應(yīng)也進(jìn)行延遲,最后與相應(yīng)的延遲輸入信號進(jìn)行相乘在相加,輸出的結(jié)果就是濾波輸出。

2.2通用型FIR數(shù)字濾波器的結(jié)構(gòu)設(shè)計(jì)

通過以上的原理可以得出如下圖2的通用型的FIR數(shù)字濾波器的結(jié)構(gòu)圖:

從圖2和圖1的對比我們可以發(fā)現(xiàn)通用型FIR數(shù)字濾波器與一般的FIR數(shù)字濾波器的不同。一般的FIR數(shù)字濾波器的脈沖響系數(shù)應(yīng)是固定的和每一個(gè)延遲信號直接相乘,而對于通用型的FIR數(shù)字濾波器的脈沖響應(yīng)系數(shù)是通過引出輸入端口進(jìn)行輸入的脈沖,這個(gè)輸入的脈沖是根據(jù)自己的需要來編寫脈沖響應(yīng)系數(shù)的數(shù)值的,從而達(dá)到了通用型的目的。

對于通用型的FIR數(shù)字濾波器的表達(dá)式其輸出的方式其實(shí)和式(1)-樣的,只是通用型的結(jié)構(gòu)上和輸入方式上的不同,通用型是脈沖響應(yīng)系數(shù)的值通過設(shè)置一個(gè)輸入的端口,通過這個(gè)端口來輸入脈沖響應(yīng)系數(shù)的值得方式,而這個(gè)值是可以改變的。

3通用型FIR數(shù)字濾波器的設(shè)計(jì)驗(yàn)證

3.1設(shè)計(jì)實(shí)現(xiàn)

下面通過VerilogHDL語言通過QuartusII和Modelsim軟件來設(shè)計(jì)一個(gè)8階通用的FIR數(shù)字濾波器設(shè)計(jì)并進(jìn)行驗(yàn)證。FIR數(shù)字濾波器的數(shù)據(jù)相系數(shù)為有符號的9位數(shù),F(xiàn)IR數(shù)字濾波器的階數(shù)是L=8,因此在設(shè)計(jì)中加法器的位數(shù)為:9+9+log2(/)一1=20。處理的第一步就是先set,如果setx=0就將濾波器的脈沖響應(yīng)系數(shù)輸入到抽頭延遲線上,否則就將數(shù)據(jù)下載到x寄存器中;第二步執(zhí)行乘積和的計(jì)算,對乘積進(jìn)行一位有符號擴(kuò)展,并加到前面的部分乘積和上。所有的乘法器為3級流水線結(jié)構(gòu)。最后輸出y_out除以256后輸I斗『。

3.2驗(yàn)證

3.2.1代碼實(shí)現(xiàn)

基于VerilogHDL語言的代碼結(jié)構(gòu)框架實(shí)現(xiàn)如下:

3.2.2驗(yàn)證仿真結(jié)果

最后通過代碼的實(shí)現(xiàn),在QuartusII和Modelsim軟件結(jié)合的仿真,其輸入的8階的濾波系數(shù)為{124,214,57,-33,-33,57,214,124}下載到抽頭延遲線上,輸入的處理信號為100,101,102,…….,得到了如下圖的波形仿真圖:

4結(jié)語

本文主要介紹了基于FPGA的串行濾波器的一般實(shí)現(xiàn)結(jié)構(gòu)進(jìn)行一些改進(jìn)來實(shí)現(xiàn)通用型FIR數(shù)字濾波器的設(shè)計(jì),根據(jù)串行結(jié)構(gòu)實(shí)現(xiàn)的FIR數(shù)字濾波器的原理和結(jié)構(gòu),將串行結(jié)構(gòu)的FIR數(shù)字濾波器的脈沖響應(yīng)系數(shù)通過同一個(gè)時(shí)鐘(clk)下載到濾波器當(dāng)中,然后再與輸入的信號進(jìn)行累乘加的運(yùn)算得到通用型的FIR數(shù)字濾波器。同時(shí)闡述了通用型這種設(shè)計(jì)方法的思想和原理實(shí)現(xiàn)方法,根據(jù)實(shí)驗(yàn)結(jié)果證明了通用型FIR數(shù)字濾波器的實(shí)現(xiàn)的可行性。通過這個(gè)實(shí)現(xiàn)的方法找到了另外一種實(shí)現(xiàn)FIR數(shù)字濾波器的實(shí)現(xiàn)方式,由于具有通用性對于硬件的資源可以重復(fù)的利用,具有很強(qiáng)的研究意義。

參考文獻(xiàn)

[1]高學(xué)金,齊詠生,王普,基于卡爾曼濾波器和多向核主元分析的發(fā)酵過程在線監(jiān)測[J].新型工業(yè)化,2011,1(9):102-110.

[2]劉雪艷,張雪英,黃麗霞.Gammachir濾波器組在語音特征提取中的應(yīng)用[J].新型工業(yè)化,2011,1(11):21-28.

[3]祖霄鵬,肖建康,朱文軍.新型正六邊形微帶多模帶通濾波器[J].新型工業(yè)化,2011,1(12):113-116.

[4]胡廣書.數(shù)字信號處理理論、算法與實(shí)現(xiàn)[M].北京:清華大學(xué)出版社,2003.

[5]吳鎮(zhèn)揚(yáng).數(shù)字信號處理[M].北京:高等教育出版社,2004.

[6]李金明.數(shù)字FIR濾波器在監(jiān)控系統(tǒng)中圖像信號處理方面的應(yīng)用[D].蘭州:蘭州理T大學(xué),2006.

[7]王正彥,范延濱.用FPGA實(shí)現(xiàn)FIR濾波器算法研究[J]測控技術(shù),2004,23(zl):123-126.

[8]朱小佩,蕭蘊(yùn)詩,岳繼光.基于流水線結(jié)構(gòu)的8位超前進(jìn)位加法器設(shè)計(jì)[J].電子工程師,2009,9(31):1.

[9]王悅,陳濤.基于FPGA的流水線珠算加法器設(shè)計(jì)[J].科學(xué)技術(shù)與工程,2013,11(32):1.

[10]鞠芳,馬昕,田嵐.基于FPGA的數(shù)字乘法器性能比較[J].電子器件,2011,06:1.

猜你喜歡
加法器乘法器
分段式高性能近似加法器設(shè)計(jì)
一種低開銷的近似乘法器設(shè)計(jì)
基于Karatsuba和Vedic算法的快速單精度浮點(diǎn)乘法器
淺析基于verilog 的加法器設(shè)計(jì)
一種混合結(jié)構(gòu)的新型近似加法器
通用加法器的邏輯實(shí)現(xiàn)與分析
基于FPGA的流水線單精度浮點(diǎn)數(shù)乘法器設(shè)計(jì)*
三旋光結(jié)構(gòu)一步無進(jìn)位加法器的設(shè)計(jì)
條件推測性十進(jìn)制加法器的優(yōu)化設(shè)計(jì)
基于VHDL的乘法器的設(shè)計(jì)與對比
莱阳市| 合山市| 宁国市| 五华县| 鹰潭市| 廊坊市| 醴陵市| 长白| 蒙山县| 清徐县| 当涂县| 汝城县| 汉源县| 六枝特区| 瑞金市| 泰安市| 铜川市| 鹤庆县| 石阡县| 长白| 天等县| 明溪县| 当涂县| 黑山县| 绥阳县| 沾化县| 梁平县| 宁津县| 昌黎县| 南雄市| 页游| 兴业县| 焉耆| 班戈县| 福清市| 罗平县| 中卫市| 阳高县| 武清区| 同仁县| 昭通市|