第6章FIR數(shù)字濾波器設(shè)計(jì)ppt課件_第1頁(yè)
第6章FIR數(shù)字濾波器設(shè)計(jì)ppt課件_第2頁(yè)
第6章FIR數(shù)字濾波器設(shè)計(jì)ppt課件_第3頁(yè)
第6章FIR數(shù)字濾波器設(shè)計(jì)ppt課件_第4頁(yè)
第6章FIR數(shù)字濾波器設(shè)計(jì)ppt課件_第5頁(yè)
已閱讀5頁(yè),還剩87頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 第第6章章 FIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 6.1 FIR數(shù)字濾波器原理數(shù)字濾波器原理 6.2 運(yùn)用運(yùn)用DSP Builder設(shè)計(jì)設(shè)計(jì)FIR數(shù)字濾波器數(shù)字濾波器 6.3 運(yùn)用運(yùn)用FIR IP Core設(shè)計(jì)設(shè)計(jì)FIR濾波器濾波器 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 6.1 FIR數(shù)字濾波器原理數(shù)字濾波器原理 對(duì)于一個(gè)FIR濾波器系統(tǒng)而言,它的沖激呼應(yīng)總是有限長(zhǎng)的,其系統(tǒng)函數(shù)可以記為MkkkzbzH0)(第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 其中M是FIR濾波器的零點(diǎn)數(shù),即延時(shí)節(jié)數(shù),為表達(dá)簡(jiǎn)便,

2、在本章中M被稱為FIR濾器的階數(shù)。最根本的FIR濾波器可用下式表示:10)()()(Liihinxny 其中x(n)是輸入采樣序列,h(i)是濾波器系數(shù),L是濾波器的系數(shù)長(zhǎng)度,y(n)表示濾波器的輸出序列。也可以用卷積來(lái)表示輸出序列y(n)與x(n)、h(n)的關(guān)系。)()()(nhnxny第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-1中顯示了一個(gè)典型的直接I型4階FIR濾波器,其輸出序列y(n)滿足以下等式:)3()3()2()2() 1() 1 ()()0()(nxhnxhnxhnxhnh第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-1 4階FIR濾波

3、器構(gòu)造 z1x(n)h(0)y(n)z1z1h(1)h(2)h(3)第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 在這個(gè)FIR濾波器中,總共存在3個(gè)延時(shí)節(jié),4個(gè)乘法單元,一個(gè)4輸入的加法器。假設(shè)采用普通的數(shù)字信號(hào)處置器(DSP Processor)來(lái)實(shí)現(xiàn),只能用串行的方式順序地執(zhí)行延時(shí)、乘加操作,這不能夠在一個(gè)DSP(指數(shù)字信號(hào)處置器)指令周期內(nèi)完成,必需用多個(gè)指令周期來(lái)完成。 但是,假設(shè)采用FPGA來(lái)實(shí)現(xiàn),就可以采用并行構(gòu)造,在一個(gè)時(shí)鐘周期內(nèi)得到一個(gè)FIR濾波器的輸出。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 6.2 運(yùn)用運(yùn)用DSP Builder設(shè)計(jì)設(shè)計(jì)FIR數(shù)

4、字濾波器數(shù)字濾波器 運(yùn)用DSP Builder可以方便地在圖形化環(huán)境中設(shè)計(jì)FIR數(shù)字濾波器,而且濾波器系數(shù)的計(jì)算可以借助Matlab強(qiáng)大的計(jì)算才干和現(xiàn)成的濾波器設(shè)計(jì)工具來(lái)完成。 6.2.1 3階常系數(shù)FIR濾波器的設(shè)計(jì) 在此用以下例如來(lái)闡明整個(gè)設(shè)計(jì)過(guò)程。 假定一個(gè)3階的FIR濾波器,其可以表示為)3() 3()2()2() 1() 1 ()()0()(nxhnxhnxhnxhCnhq第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 其中:h(0)=63,h(1)=127,h(2)=127,h(3)=63,是量化時(shí)附加的因子。 這里采用直接I型來(lái)實(shí)現(xiàn)該FIR濾波器。設(shè)計(jì)好的3階直接I型F

5、IR濾波器模型圖可以參見圖6-2。詳細(xì)的新模型建立、模塊調(diào)用過(guò)程可以參見第3章。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-2 3階FIR濾波器第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖中模塊的參數(shù)作如下設(shè)置:xin模塊:(Altbus)庫(kù):Altera DSP Builder中Bus Manipulation庫(kù)參數(shù)“Bus Type設(shè)為“signed Integer參數(shù)“Node Type設(shè)為“Input port參數(shù)“number of bits設(shè)為“8第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) yout模塊:(Altbus)庫(kù):Alte

6、ra DSP Builder中Bus Manipulation庫(kù)參數(shù)“Bus Type設(shè)為“signed Integer參數(shù)“Node Type設(shè)為“Output port參數(shù)“number of bits設(shè)為“8 Parallel Adder Subtractor模塊:(Parallel Adder Subtractor)庫(kù):Altera DSP Builder中Arithmetic庫(kù)“Add(+)Sub(-)設(shè)為“+第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) Delay1、Delay2、Delay3模塊:(Delay)庫(kù):Altera DSP Builder中Storage庫(kù)

7、參數(shù)“Depth設(shè)為“1參數(shù)“Clock Phase Selection設(shè)為“1 h0模塊:(Gain)庫(kù):Altera DSP Builder中Arithemtic庫(kù)參數(shù)“Gain Value設(shè)為“63參數(shù)“Map Gain Value to Bus Type設(shè)為“Signed Integer參數(shù)“Gate Value number of bits設(shè)為“8參數(shù)“Number of Pipeline Levels設(shè)為“0第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) h1模塊:(Gain)參數(shù)“Gain Value設(shè)為“127其他同h0模塊 h2模塊:(Gain)參數(shù)“Gain Va

8、lue設(shè)為“127其他同h0模塊 h3模塊:(Gain)參數(shù)“Gain Value設(shè)為“63其他同h0模塊第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 由于FIR濾波器的系數(shù)曾經(jīng)給定,是一個(gè)常數(shù),從圖中看到,在DSP Builder中可以用Gain(增益)模塊來(lái)實(shí)現(xiàn)的運(yùn)算,用延時(shí)Delay模塊來(lái)實(shí)現(xiàn)輸入信號(hào)序列的延時(shí)。 設(shè)計(jì)完3階FIR濾波器模型后,就可以添加Simulink模塊進(jìn)展仿真了,如圖6-3所示。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-3 帶仿真模塊的3階濾波器模型第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 新增的仿真模塊的參數(shù)作如下

9、設(shè)置:Chirp Signal模塊:(Chirp Signal)庫(kù):Simulink中Sources庫(kù)參數(shù)“Initial Frequency(Hz)設(shè)為“0.1參數(shù)“Target time設(shè)為“10參數(shù)“Frequency at target time(Hz)設(shè)為“1參數(shù)“Interpret vectors parameters as 1-D選中第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) Gain模塊:(Gain)庫(kù):Simulink中Math Operations庫(kù)參數(shù)“Gain設(shè)為“127參數(shù)“Multiplication設(shè)為“Element wise(K.*u)Scope

10、模塊:(Scope)庫(kù):Simulink中sinks庫(kù)參數(shù)“Number of Axes為“2第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 其中,Chirp Signal模塊為線性調(diào)頻信號(hào)發(fā)生模塊,生成一個(gè)線性調(diào)頻信號(hào)0.1 Hz1 Hz。 在該模型仿真中,運(yùn)用默許的仿真參數(shù)。 仿真結(jié)果如圖6-4所示。顯然,一個(gè)線性調(diào)頻信號(hào)經(jīng)過(guò)3階FIR濾波器后幅度發(fā)生了變化,頻率較高部分的幅度被衰減了。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-4 FIR濾波器仿真結(jié)果 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 6.2.2 4階FIR濾波器節(jié)的設(shè)計(jì) 上節(jié)引見的

11、是常系數(shù)FIR濾波器的例如。本節(jié)將設(shè)計(jì)一個(gè)系數(shù)可變的FIR濾波器節(jié)。對(duì)于直接I型的FIR濾波器(構(gòu)造見圖6-5),是可以級(jí)聯(lián)的。也就是說(shuō),在濾波器系數(shù)可變的情況下,可以預(yù)先設(shè)計(jì)好一個(gè)FIR濾波器節(jié),在實(shí)踐運(yùn)用中經(jīng)過(guò)不斷地調(diào)用FIR濾波器節(jié),將其級(jí)聯(lián)起來(lái),用來(lái)完成多階FIR濾波器的設(shè)計(jì)。當(dāng)然,對(duì)于線性相位的FIR濾波器,我們可以采用改良后的濾波器構(gòu)造,可以節(jié)省一半的乘法器。在這里,為了表達(dá)方便,沒有采用改良后的FIR構(gòu)造。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-5 直接I型FIR濾波器構(gòu)造z1xinh(0)youtz1z1h(1)h(2)x(n)z1h(k 1)h(k)x

12、(n k)第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-6是一個(gè)直接I型的4階FIR濾波器節(jié)的構(gòu)造。為了使該濾波器節(jié)的調(diào)用更為方便,在xin輸入后插入了一個(gè)延時(shí)單元,由3階濾波器演化成4階的,不過(guò)常系數(shù)項(xiàng)(系數(shù)項(xiàng)) 恒為0。由于在通訊運(yùn)用中,F(xiàn)IR濾波器處置的往往是信號(hào)流,因此添加一個(gè)延時(shí)單元不會(huì)影響FIR濾波器處置的結(jié)果,只是系統(tǒng)延時(shí)添加了一個(gè)時(shí)鐘周期。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-6 直接I型4階FIR濾波器節(jié) z1xinh(1)y4outz1z1h(2)h(3)h(4)x(n1)z1第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)

13、計(jì) 對(duì)于該FIR濾波器節(jié),其系統(tǒng)函數(shù)可以用下式來(lái)表示: 由于浮點(diǎn)小數(shù)在FPGA中實(shí)現(xiàn)比較困難,實(shí)現(xiàn)的代價(jià)太大,因此在DSP Builder中無(wú)妨運(yùn)用整數(shù)運(yùn)算來(lái)實(shí)現(xiàn),最后用位數(shù)舍取的方式得到結(jié)果。為了使參數(shù)可變,F(xiàn)IR濾波器系數(shù)、也作為輸入端口。在本設(shè)計(jì)中輸入序列的位寬設(shè)為9位。 圖6-7顯示的就是一個(gè)設(shè)計(jì)好的4階FIR濾波器節(jié),與圖6-2的常數(shù)FIR濾波器相比,這里用Product(乘法)模塊替代了Gain(增益)模塊。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-7 直接I型4階FIR濾波器節(jié)第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-7中相關(guān)模塊的參數(shù)

14、設(shè)置如下:xin、hn1、hn2、hn3、hn4模塊:(Altbus)庫(kù):Altera DSP Builder中Bus Manipulation庫(kù)參數(shù)“Bus Type設(shè)為“signed Integer參數(shù)“Node Type設(shè)為“Input port參數(shù)“number of bits設(shè)為“9第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) yn模塊:(Altbus)庫(kù):Altera DSP Builder中Bus Manipulation庫(kù)參數(shù)“Bus Type設(shè)為“signed Integer參數(shù)“Node Type設(shè)為“Output port參數(shù)“number of bits設(shè)為

15、“20 xn4模塊:(Altbus)庫(kù):Altera DSP Builder中Bus Manipulation庫(kù)參數(shù)“Bus Type設(shè)為“signed Integer參數(shù)“Node Type設(shè)為“Output port參數(shù)“number of bits設(shè)為“9第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) Parallel Adder Subtractor模塊:(Parallel Adder Subtractor)庫(kù):Altera DSP Builder中Arithmetic庫(kù)參數(shù)“Add(+)Sub(-)設(shè)為“+運(yùn)用“Pipeline參數(shù)“Clock Phaese Selecti

16、oon設(shè)為“1 Delay、Delay1、Delay2、Delay3模塊:(Delay)庫(kù):Altera DSP Builder中Storage庫(kù)參數(shù)“Depth設(shè)為“1參數(shù)“Clock Phase Selection設(shè)為“1 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) Product模塊:(Product)庫(kù):Altera DSP Builder中Arithemtic庫(kù)參數(shù)“Pipeline設(shè)為“2參數(shù)“Clock Phase Selection設(shè)為“1不選擇“Use LPM第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 6.2.3 16階FIR濾波器模型設(shè)計(jì) 利用以

17、上設(shè)計(jì)的4階FIR濾波器節(jié)可以方便地搭成階直接I型FIR濾波器(留意: )。比如要實(shí)現(xiàn)一個(gè)16階的低通濾波器,可以調(diào)用4個(gè)4階FIR濾波器節(jié)來(lái)實(shí)現(xiàn)。 1. 設(shè)計(jì)4階FIR濾波器節(jié)子系統(tǒng) 建立一個(gè)新的DSP Builder模型,復(fù)制上節(jié)的FIR4tap模型到新模型。按照第4章所示的方法由FIR4tap模型建立子系統(tǒng)(SubSystem),并對(duì)端口信號(hào)進(jìn)展修正,把子系統(tǒng)更名為fir4tap,如圖6-8所示。fir4tap的內(nèi)部構(gòu)造如圖6-9所示。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-8 fir4tap子系統(tǒng) 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-

18、9 fir4tap子系統(tǒng)內(nèi)部原理圖 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 2. 組成16階FIR濾波器模型 復(fù)制4個(gè)fir4tap,并將它們銜接起來(lái)。前一級(jí)的輸出端口x4接后一級(jí)的x輸入端口,并附加上16個(gè)常數(shù)端口,作為FIR濾波器系數(shù)的輸入。把4個(gè)子系統(tǒng)fir4tap的輸出端口y銜接起來(lái),接入一個(gè)4輸入端口的加法器,得到FIR濾波器的輸出yout。 留意:在作好子系統(tǒng)后,要按照第4章中所述的方式,修正其Mask參數(shù)Mask Type為“SubSystem AlteraBlockSet。設(shè)計(jì)好的16階FIR濾波器如圖6-10所示。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)

19、字濾波器設(shè)計(jì) 圖6-10 16階直接I型FIR濾波器模型第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 16階直接I型FIR濾波器模型中,對(duì)新添加的模塊作如下設(shè)置:xin模塊:(Altbus)庫(kù):Altera DSP Builder中Bus Manipulation庫(kù)參數(shù)“Bus Type設(shè)為“signed Integer參數(shù)“Node Type設(shè)為“Input port參數(shù)“number of bits設(shè)為“9第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) yout模塊:(Altbus)庫(kù):Altera DSP Builder中Bus Manipulation庫(kù)參數(shù)“Bu

20、s Type設(shè)為“signed Integer參數(shù)“Node Type設(shè)為“Output port參數(shù)“number of bits設(shè)為“20 x16模塊:(Altbus)庫(kù):Altera DSP Builder中Bus Manipulation庫(kù)參數(shù)“Bus Type設(shè)為“signed Integer參數(shù)“Node Type設(shè)為“Output port參數(shù)“number of bits設(shè)為“9第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) Parallel Adder Subtractor模塊:(Parallel Adder Subtractor)庫(kù):Altera DSP Buil

21、der中Arithmetic庫(kù)參數(shù)“Add(+)Sub(-)設(shè)為“+運(yùn)用“Pipeline參數(shù)“Clock Phaese Selectioon設(shè)為“1 h0、h1、h2、h3、h4、h5、h6、h7、h8、h9、h10、h11、h12、h13、h14、h15模塊:(Delay)庫(kù):Altera DSP Builder中Bus Manipulation庫(kù)參數(shù)“Bus Type設(shè)為“Signed Integer參數(shù)“number of bits設(shè)為“9第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 6.2.4 運(yùn)用MATLAB的濾波器設(shè)計(jì)工具1. 濾波器目的假設(shè)需求設(shè)計(jì)一個(gè)16階的FIR

22、濾波器(),給定的參數(shù)如下: 低通濾波器 采樣頻率Fs為48 kHz,濾波器Fc為10.8 kHz 輸入序列位寬為9位(最高位為符號(hào)位)在此利用MATLAB來(lái)完成FIR濾波器系數(shù)確實(shí)定。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 2. 翻開MATLAB的FDATool MATLAB集成了一套功能強(qiáng)大的濾波器設(shè)計(jì)工具FDATool(Filter Design & Analysis Tool),可以完成多種濾波器的設(shè)計(jì)、分析和性能評(píng)價(jià)。 點(diǎn)擊MATLAB主窗口下方的“Start(開場(chǎng))按鈕,按圖6-11選擇“ToolBox“Filter Design“Filter Design &

23、Analysis Tool(FDATool),翻開FDATool,如圖6-12所示。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-11 翻開FDATool 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-12 FDATool界面第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 3. 選擇Design FilterFDATool界面左下側(cè)陳列了一組工具按鈕,其功能分別如下所述: 濾波器轉(zhuǎn)換(TransForm Filer) 設(shè)置量化參數(shù)(Set Quantization Parameters) 實(shí)現(xiàn)模型(Realize Model) 導(dǎo)入濾波器(Impo

24、rt Filter) 設(shè)計(jì)濾波器(Design Filter)選擇其中的按鈕,進(jìn)入設(shè)計(jì)濾波器界面,進(jìn)展以下選擇:第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 濾波器類型(Filter Type)為低通(Lowpass); 設(shè)計(jì)方法(Design Method)為FIR,采用窗口法(Window); 濾波器階數(shù)(Filter Order)定制為15; 窗口類型為Kaiser,Beta為0.5; Fs為48 kHz,F(xiàn)c為10.8 kHz。 設(shè)置好后的界面見圖6-13。 留意:在濾波器階數(shù)選擇時(shí),在此設(shè)置的是15階,而不是16階!這是由于在前面設(shè)計(jì)的16階FIR濾波器的常系數(shù)項(xiàng)。其系統(tǒng)

25、函數(shù)可用下式來(lái)表示:第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-13 濾波器設(shè)計(jì)界面第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 顯然上式可以寫成: 即可以看成是一個(gè)15階的FIR濾波器的輸出結(jié)果經(jīng)過(guò)了一個(gè)單位延時(shí)單元。所以在FDATool中把它當(dāng)成15階FIR濾波器來(lái)計(jì)算參數(shù)。點(diǎn)擊,讓MATLAB計(jì)算FIR濾波器系數(shù)并作相關(guān)分析。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 4. 濾波器分析 計(jì)算完FIR濾波器系數(shù)后,往往需求對(duì)設(shè)計(jì)好的FIR濾波器進(jìn)展相關(guān)的性能分析,以便了解該濾波器能否滿足設(shè)計(jì)要求。分析操作步驟如下: 選擇FDATool的菜單“A

26、nalysis“Magnitude Response,啟動(dòng)幅頻呼應(yīng)分析。圖6-14顯示了濾波器的幅頻呼應(yīng)圖,x軸為頻率,y軸為幅度值(單位為dB)。 在圖的左側(cè)列出了當(dāng)前濾波器的相關(guān)信息:第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 濾波器類型為Direct form FIR(直接I型FIR濾波器); 濾波器階數(shù)為15。 留意:不是每種FIR濾波器設(shè)計(jì)方法計(jì)算出的濾波器都是直接I型構(gòu)造的。假設(shè)在DSP Builder中設(shè)計(jì)的FIR濾波器為直接I型構(gòu)造,那就必需保證在這里顯示的FIR濾波器構(gòu)造為“Direct form FIR。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì)

27、 圖6-14 FIR濾波器的幅頻呼應(yīng)第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 選擇菜單“Analysis“Phase Response,啟動(dòng)相頻呼應(yīng)分析。圖6-15顯示了濾波器的相頻呼應(yīng)。由圖可以看到設(shè)計(jì)的FIR濾波器在通帶內(nèi)其相位呼應(yīng)為線性的,即該濾波器是一個(gè)線性相位的濾波器。 圖6-16顯示了濾波器幅頻特性與相頻特性的比較。這可以經(jīng)過(guò)菜單項(xiàng)選擇擇“Analysis“Magnitude & Phase Response來(lái)啟動(dòng)分析。 選擇菜單“Analysis“Group Delay Response,啟動(dòng)群延時(shí)分析,波形如圖6-17所示。第第6 6章章 FIRFIR數(shù)字濾波器

28、設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-15 FIR濾波器的相頻呼應(yīng) 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-16 幅頻呼應(yīng)與相頻呼應(yīng)的比較 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-17 FIR濾波器的群延時(shí) 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 在菜單“Analysis下還有一些分析: “Impulse Response:沖激呼應(yīng),見圖6-18。 “Step Response:階躍呼應(yīng),見圖6-19。 “Pole/Zero Plot:零極點(diǎn)圖,見圖6-20。 由于直接I型FIR濾波器只需零點(diǎn),所以在圖6-20中不存在極點(diǎn)。第第6 6章章

29、FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-18 FIR濾波器的沖激呼應(yīng) 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-19 FIR濾波器的階躍呼應(yīng) 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-20 FIR濾波器的零極點(diǎn)第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 求出的FIR濾波器的系數(shù)可以經(jīng)過(guò)選擇菜單“Analysis“Filter Coefficients來(lái)察看,見圖6-21。圖中列出了FDATool計(jì)算的15階直接I型FIR濾波器的部分系數(shù)。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-21 FIR濾波器系數(shù) 第第

30、6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 5. 量化 從圖6-21可以看到,F(xiàn)DATool計(jì)算出的值是一個(gè)有符號(hào)小數(shù),而在DSP Builder下建立的FIR濾波器模型需求一個(gè)整數(shù)作為濾波器系數(shù)。所以必需進(jìn)展量化,并對(duì)得到的系數(shù)進(jìn)展歸一化。為此,點(diǎn)擊FDATool左下側(cè)的工具按鈕進(jìn)展量化參數(shù)設(shè)置。在設(shè)置“Turn quantization on前選擇“,如圖6-22所示。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 在濾波器的設(shè)計(jì)目的中,曾經(jīng)提到FIR濾波器的輸入位寬是9位,表示為有符號(hào)數(shù)。在圖6-22中設(shè)置前4項(xiàng)的量化格式(Format)為“9 8,表示量化后位寬為9

31、位,絕對(duì)值為8位;設(shè)置后2項(xiàng)(乘積、乘積和)的量化格式為“18 16。 點(diǎn)擊按鈕,翻開圖6-23所示的對(duì)話框。在此量化優(yōu)化設(shè)置對(duì)話框中選擇相關(guān)的優(yōu)化選項(xiàng)。 圖6-24中顯示了量化后的部分系數(shù)值。留意在這里系數(shù)仍是用小數(shù)表示的,不同于量化前的系數(shù),如今其二進(jìn)制表示的位數(shù)已滿足量化要求。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-22 量化參數(shù)設(shè)置 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-23 量化優(yōu)化設(shè)置對(duì)話框 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-24 量化后的系數(shù)值 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì)

32、 設(shè)計(jì)的FIR濾波器在量化后濾波器的性能會(huì)有所改動(dòng),其幅頻呼應(yīng)、相頻呼應(yīng)也有所變化。量化在帶來(lái)實(shí)現(xiàn)方便的同時(shí)也帶來(lái)了量化噪聲,圖6-26顯示了量化帶來(lái)的噪聲分析。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-25 量化后的幅頻、相頻呼應(yīng) 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-26 量化后的噪聲分析 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 6. 導(dǎo)出濾波器系數(shù) 為導(dǎo)出設(shè)計(jì)好的濾波器系數(shù),選擇FDATool菜單的“File“Export.,翻開導(dǎo)出(Export)對(duì)話框,如圖6-27所示。在該窗口中,選擇導(dǎo)出到任務(wù)區(qū)(Workspace

33、)。這時(shí)濾波器系數(shù)就存入到一個(gè)一維變量Num中了,不過(guò)這時(shí)Num中的元素是以小數(shù)方式出現(xiàn)的: Num = -0.0742 0.0234 0.1133 0.0117 -0.1758 -0.0977 0.3594 0.8281 0.8281 0.3594 -0.0977 -0.1758 0.0117 0.1133 0.0234 -0.0742 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖圖6-27 導(dǎo)出系數(shù)對(duì)話框?qū)С鱿禂?shù)對(duì)話框第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 如今假設(shè)要在FIR濾波器模型中運(yùn)用這些數(shù)據(jù),還需求將它們轉(zhuǎn)化為整數(shù):在MATLAB主窗口的命令窗口中

34、鍵入:Num * (28)得到: Num*(28)ans = Columns 1 through 10 -19 6 29 3 -45 -25 92 212 212 92 Columns 11 through 16 -25 -45 3 29 6 -19第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 7. 修正FIR濾波器模型添加參數(shù) 把計(jì)算出的系數(shù)逐個(gè)填入到FIR濾波器模型中,見圖6-28。這樣就完成了一個(gè)16階直接I型FIR低通濾波器的設(shè)計(jì)。 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-28 16階低通FIR濾波器第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波

35、器設(shè)計(jì) 8. 導(dǎo)出濾波器系數(shù)的另一種方法 按照上面引見的導(dǎo)出濾波器系數(shù)的方法在FIR濾波器階數(shù)較大時(shí)就不太方便,而且在設(shè)計(jì)要求有所變化時(shí)系數(shù)的修正極為不利??梢园凑找韵路椒▉?lái)導(dǎo)出: 把FIR濾波器模型中的h1h16模塊的參數(shù)“Constant Value(常數(shù)值)設(shè)置為: Num(n)*(28) 其中Num同上文所述,是FDATool的導(dǎo)出系數(shù),n用詳細(xì)的數(shù)字來(lái)替代,如h1模塊用Num(1)*(28),h2模塊用Num(2)*(28)。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 6.2.5 16階FIR濾波器的硬件實(shí)現(xiàn) 1. 由Simulink模型轉(zhuǎn)成VHDL 翻開SingalC

36、ompiler,選定器件系列,把模型轉(zhuǎn)成VHDL文件,詳細(xì)操作步驟可以參見第3章。 2. 綜合 在SignalCompiler中選擇Quartus II進(jìn)展綜合,或者利用第三方綜合工具,比如LeonardoSpectrum進(jìn)展綜合。圖6-29顯示了LeonardoSpectrum綜合結(jié)果的部分RTL原理圖。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 3. 適配下載 假設(shè)采用Quartus II進(jìn)展綜合,在Quartus II中翻開SignalCompiler建立的Quartus工程文件,選擇詳細(xì)器件,鎖定管腳,完成適配后下載至FPGA開發(fā)板中。假設(shè)采用其它綜合工具進(jìn)展綜合,適配流

37、程請(qǐng)參見第4章。 在FPGA開發(fā)板上參與高頻信號(hào)源,驗(yàn)證FIR濾波器的濾波效果。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-29 LeonardoSpectrum綜合結(jié)果第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 6.3 運(yùn)用運(yùn)用FIR IP Core設(shè)計(jì)設(shè)計(jì)FIR濾波器濾波器 對(duì)于一個(gè)面向市場(chǎng)和實(shí)踐工程運(yùn)用的系統(tǒng)設(shè)計(jì),在開發(fā)速度和效率方面要求很高。然而對(duì)于普通的設(shè)計(jì)者,在短期內(nèi)也不能夠全面了解FIR濾波器(指在FPGA上實(shí)現(xiàn))相關(guān)的優(yōu)化技術(shù),也沒有必要了解過(guò)多的細(xì)節(jié)。另外,F(xiàn)IR濾波器的濾波系數(shù)確實(shí)定,即FIR濾波器的設(shè)計(jì)方法也是比較費(fèi)事的,需求破費(fèi)大量的精

38、神和時(shí)間才干設(shè)計(jì)出在速度、資源利用、性能上都滿足要求的FIR濾波器。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 另一方面,雖然DSP Builder提供了大量的根本DSP模塊,但是要了解用哪些模塊可以構(gòu)建一個(gè)高效的FIR濾波器依然不是一件簡(jiǎn)單的事情。 但是,假設(shè)采用設(shè)計(jì)好的FIR濾波器的IP核,幾乎可以很容易地處理以上的問(wèn)題。對(duì)于IP核,在速度、資源利用、性能上往往進(jìn)展過(guò)專門的優(yōu)化,還提供了相關(guān)的IP運(yùn)用開發(fā)工具。 Altera提供的FIR Compiler是一個(gè)結(jié)合Altera FPGA器件的FIR Filter Core,DSP Builder與FIR Compiler可以嚴(yán)

39、密地結(jié)合起來(lái)。DSP Builder提供了一個(gè)FIR Core的運(yùn)用環(huán)境和仿真驗(yàn)證環(huán)境。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 6.3.1 FIR濾波器核與DSP Builder集成 運(yùn)用FIR Core之前,首先必需保證Matlab、DSP Builder、Quartus II以及IP核的本身,即FIR Compiler等工具安裝正確。假設(shè)一切正常,我們可以在Simulink庫(kù)管理器中看到“Altera MegaCore FIR Compiler這個(gè)庫(kù),如圖6-30所示。 MegaCore是Altera的IP Core方案中的一個(gè)組成部分,F(xiàn)IR Compiler作為一個(gè)M

40、egaCore,不附帶在DSP Builder和Quartus II中,需求單獨(dú)向Altera公司購(gòu)買或懇求試用版。如今最新的FIR Compiler的版本可以支持Quartus II和DSP Builder。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-30 FIR Core模塊 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 6.3.2 FIR濾波器核的運(yùn)用 1. 調(diào)用FIR模塊 在 S i m u l i n k 環(huán) 境 中 新 建 一 個(gè) 模 型 , 放 置SignalCompiler模塊和FIR模塊(如圖6-31)。 留意:在DSP Builder中運(yùn)用FIR Compiler時(shí),需求有SignalCompiler的支持,所以在運(yùn)用配置FIR模塊時(shí),必需放置SignalCompiler模塊。 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-31 調(diào)用FIR Core 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 2. 配置FIR濾波器核 假定需求設(shè)計(jì)一個(gè)帶通的高階FIR濾波器,設(shè)計(jì)目的如下: 濾波器類型:帶通(BandPass) 采樣頻率:50 MHz 通帶:24 MHz

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論