第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 使用使用DSP Builder設(shè)計(jì)設(shè)計(jì)FIR數(shù)字濾波器數(shù)字濾波器 6.3 使用使用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ù),為敘述簡(jiǎn)便,

2、在本章中M被稱(chēng)為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、器結(jié)構(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ù)字信號(hào)處理器(DSP Processor)來(lái)實(shí)現(xiàn),只能用串行的方式順序地執(zhí)行延時(shí)、乘加操作,這不可能在一個(gè)DSP(指數(shù)字信號(hào)處理器)指令周期內(nèi)完成,必須用多個(gè)指令周期來(lái)完成。 但是,如果采用FPGA來(lái)實(shí)現(xiàn),就可以采用并行結(jié)構(gòu),在一個(gè)時(shí)鐘周期內(nèi)得到一個(gè)FIR濾波器的輸出。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 6.2 使用使用DSP Builder設(shè)計(jì)設(shè)計(jì)FIR數(shù)

4、字濾波器數(shù)字濾波器 使用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)說(shuō)明整個(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濾波器模型圖可以參見(jiàn)圖6-2。具體的新模型建立、模塊調(diào)用過(guò)程可以參見(jiàn)第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ù):A

6、ltera 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中

7、Storage庫(kù)參數(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模塊:(

8、Gain)參數(shù)“Gain Value設(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ù)字濾波

9、器設(shè)計(jì) 新增的仿真模塊的參數(shù)作如下設(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è)為“

10、Element wise(K.*u)”Scope模塊:(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。 在該模型仿真中,使用默認(rèn)的仿真參數(shù)。 仿真結(jié)果如圖6-4所示。顯然,一個(gè)線性調(diào)頻信號(hào)通過(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ì)

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

12、h(1)h(2)x(n)z1h(k 1)h(k)x(n k)第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-6是一個(gè)直接I型的4階FIR濾波器節(jié)的結(jié)構(gòu)。為了使該濾波器節(jié)的調(diào)用更為方便,在xin輸入后插入了一個(gè)延時(shí)單元,由3階濾波器演變成4階的,不過(guò)常系數(shù)項(xiàng)(系數(shù)項(xiàng)) 恒為0。由于在通信應(yīng)用中,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第第

13、6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 對(duì)于該FIR濾波器節(jié),其系統(tǒng)函數(shù)可以用下式來(lái)表示: 由于浮點(diǎn)小數(shù)在FPGA中實(shí)現(xiàn)比較困難,實(shí)現(xiàn)的代價(jià)太大,因而在DSP Builder中不妨使用整數(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ù)字

14、濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-7中相關(guān)模塊的參數(shù)設(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è)為“O

15、utput port”參數(shù)“number of bits設(shè)為“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è)為“

16、+”使用“Pipeline”參數(shù)“Clock Phaese Selectioon設(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章章 F

17、IRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 6.2.3 16階FIR濾波器模型設(shè)計(jì) 利用以上設(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)部結(jié)構(gòu)如圖6-9所示。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-8

18、fir4tap子系統(tǒng) 第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-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”。

19、設(shè)計(jì)好的16階FIR濾波器如圖6-10所示。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(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模塊:(Alt

20、bus)庫(kù):Altera DSP Builder中Bus Manipulation庫(kù)參數(shù)“Bus 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 Subt

21、ractor模塊:(Parallel Adder Subtractor)庫(kù):Altera DSP Builder中Arithmetic庫(kù)參數(shù)“Add(+)Sub(-)”設(shè)為“+”使用“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ù)

22、字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 6.2.4 使用MATLAB的濾波器設(shè)計(jì)工具1. 濾波器指標(biāo)若需要設(shè)計(jì)一個(gè)16階的FIR濾波器(),給定的參數(shù)如下: 低通濾波器 采樣頻率Fs為48 kHz,濾波器Fc為10.8 kHz 輸入序列位寬為9位(最高位為符號(hào)位)在此利用MATLAB來(lái)完成FIR濾波器系數(shù)的確定。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 2. 打開(kāi)MATLAB的FDATool MATLAB集成了一套功能強(qiáng)大的濾波器設(shè)計(jì)工具FDATool(Filter Design & Analysis Tool),可以完成多種濾波器的設(shè)計(jì)、分析和性能評(píng)估。 點(diǎn)擊MATLAB主窗口下

23、方的“Start”(開(kāi)場(chǎng))按鈕,按圖6-11選擇“ToolBox”“Filter Design”“Filter Design & Analysis Tool(FDATool)”,打開(kāi)FDATool,如圖6-12所示。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-11 打開(kāi)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 Fil

24、er) 設(shè)置量化參數(shù)(Set Quantization Parameters) 實(shí)現(xiàn)模型(Realize Model) 導(dǎo)入濾波器(Import Filter) 設(shè)計(jì)濾波器(Design Filter)選擇其中的按鈕,進(jìn)入設(shè)計(jì)濾波器界面,進(jìn)行下列選擇:第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 濾波器類(lèi)型(Filter Type)為低通(Lowpass); 設(shè)計(jì)方法(Design Method)為FIR,采用窗口法(Window); 濾波器階數(shù)(Filter Order)定制為15; 窗口類(lèi)型為Kaiser,Beta為0.5; Fs為48 kHz,F(xiàn)c為10.8 kHz。 設(shè)置好

25、后的界面見(jiàn)圖6-13。 注意:在濾波器階數(shù)選擇時(shí),在此設(shè)置的是15階,而不是16階!這是由于在前面設(shè)計(jì)的16階FIR濾波器的常系數(shù)項(xiàng)。其系統(tǒng)函數(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ì) 顯然上式可以寫(xiě)成: 即可以看成是一個(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濾波器

26、系數(shù)后,往往需要對(duì)設(shè)計(jì)好的FIR濾波器進(jìn)行相關(guān)的性能分析,以便了解該濾波器是否滿足設(shè)計(jì)要求。分析操作步驟如下: 選擇FDATool的菜單“Analysis”“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ì) 濾波器類(lèi)型為Direct form FIR(直接I型FIR濾波器); 濾波器階數(shù)為15。 注意:不是每種FIR濾波器設(shè)計(jì)方法計(jì)算出的濾波器都是直接I型結(jié)構(gòu)的。如果在DSP Builder中設(shè)計(jì)的FIR濾波器為直

27、接I型結(jié)構(gòu),那就必須保證在這里顯示的FIR濾波器結(jié)構(gòu)為“Direct form FIR”。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖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顯示了濾波器幅頻特性與相頻特性的比較。這可以通過(guò)菜單選擇“Analysis”“Magnitude & Phase Response來(lái)啟

28、動(dòng)分析。 選擇菜單“Analysis”“Group Delay Response”,啟動(dòng)群延時(shí)分析,波形如圖6-17所示。第第6 6章章 FIRFIR數(shù)字濾波器設(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),見(jiàn)圖6-18。 “Step Response”:

29、階躍響應(yīng),見(jiàn)圖6-19。 “Pole/Zero Plot”:零極點(diǎn)圖,見(jiàn)圖6-20。 由于直接I型FIR濾波器只有零點(diǎn),所以在圖6-20中不存在極點(diǎn)。第第6 6章章 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ù)可以通過(guò)選擇菜單“Analysis”“Filter Coefficients來(lái)觀察,見(jiàn)圖6

30、-21。圖中列出了FDATool計(jì)算的15階直接I型FIR濾波器的部分系數(shù)。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 圖6-21 FIR濾波器系數(shù) 第第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ù)

31、字濾波器設(shè)計(jì) 在濾波器的設(shè)計(jì)指標(biāo)中,已經(jīng)提到FIR濾波器的輸入位寬是9位,表示為有符號(hào)數(shù)。在圖6-22中設(shè)置前4項(xiàng)的量化格式(Format)為“9 8”,表示量化后位寬為9位,絕對(duì)值為8位;設(shè)置后2項(xiàng)(乘積、乘積和)的量化格式為“18 16”。 點(diǎn)擊按鈕,打開(kāi)圖6-23所示的對(duì)話框。在此量化優(yōu)化設(shè)置對(duì)話框中選擇相關(guān)的優(yōu)化選項(xiàng)。 圖6-24中顯示了量化后的部分系數(shù)值。注意在這里系數(shù)仍是用小數(shù)表示的,不同于量化前的系數(shù),現(xiàn)在其二進(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ì)

32、圖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ì) 設(shè)計(jì)的FIR濾波器在量化后濾波器的性能會(huì)有所改變,其幅頻響應(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ù) 為

33、導(dǎo)出設(shè)計(jì)好的濾波器系數(shù),選擇FDATool菜單的“File”“Export.”,打開(kāi)導(dǎo)出(Export)對(duì)話框,如圖6 - 2 7 所 示 。 在 該 窗 口 中 , 選 擇 導(dǎo) 出 到 工 作 區(qū)(Workspace)。這時(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è)

34、計(jì)數(shù)字濾波器設(shè)計(jì) 圖圖6-27 導(dǎo)出系數(shù)對(duì)話框?qū)С鱿禂?shù)對(duì)話框第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 現(xiàn)在若要在FIR濾波器模型中使用這些數(shù)據(jù),還需要將它們轉(zhuǎn)化為整數(shù):在MATLAB主窗口的命令窗口中鍵入: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濾波器模型

35、中,見(jiàn)圖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ù)字濾波器設(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用具體的數(shù)字來(lái)代替,如h1模塊用

36、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 打開(kāi)SingalCompiler,選定器件系列,把模型轉(zhuǎn)成VHDL文件,具體操作步驟可以參見(jiàn)第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. 適配下載

37、如果采用Quartus II進(jìn)行綜合,在Quartus II中打開(kāi)SignalCompiler建立的Quartus項(xiàng)目文件,選擇具體器件,鎖定管腳,完成適配后下載至FPGA開(kāi)發(fā)板中。若采用其它綜合工具進(jìn)行綜合,適配流程請(qǐng)參見(jiàn)第4章。 在FPGA開(kāi)發(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 使用使用FIR IP Core設(shè)計(jì)設(shè)計(jì)FIR濾波器濾波器 對(duì)于一個(gè)面向市場(chǎng)和實(shí)際工程應(yīng)用的系統(tǒng)設(shè)計(jì),在開(kāi)發(fā)速度和效率方面要求很高

38、。然而對(duì)于一般的設(shè)計(jì)者,在短期內(nèi)也不可能全面了解FIR濾波器(指在FPGA上實(shí)現(xiàn))相關(guān)的優(yōu)化技術(shù),也沒(méi)有必要了解過(guò)多的細(xì)節(jié)。另外,F(xiàn)IR濾波器的濾波系數(shù)的確定,即FIR濾波器的設(shè)計(jì)方法也是比較麻煩的,需要花費(fèi)大量的精力和時(shí)間才能設(shè)計(jì)出在速度、資源利用、性能上都滿足要求的FIR濾波器。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 另一方面,雖然DSP Builder提供了大量的基本DSP模塊,但是要了解用哪些模塊可以構(gòu)建一個(gè)高效的FIR濾波器仍然不是一件簡(jiǎn)單的事情。 但是,如果采用設(shè)計(jì)好的FIR濾波器的IP核,幾乎可以很容易地解決以上的問(wèn)題。對(duì)于IP核,在速度、資源利用、性能上往往進(jìn)

39、行過(guò)專(zhuān)門(mén)的優(yōu)化,還提供了相關(guān)的IP應(yīng)用開(kāi)發(fā)工具。 Altera提供的FIR Compiler是一個(gè)結(jié)合Altera FPGA器件的FIR Filter Core,DSP Builder與FIR Compiler可以緊密地結(jié)合起來(lái)。DSP Builder提供了一個(gè)FIR Core的應(yīng)用環(huán)境和仿真驗(yàn)證環(huán)境。第第6 6章章 FIRFIR數(shù)字濾波器設(shè)計(jì)數(shù)字濾波器設(shè)計(jì) 6.3.1 FIR濾波器核與DSP Builder集成 使用FIR Core之前,首先必須保證Matlab、DSP Builder、Quartus II以及IP核的本身,即FIR Compiler等工具安裝正確。如果一切正常,我們可以在S

40、imulink庫(kù)管理器中看到“Altera MegaCore FIR Compiler這個(gè)庫(kù),如圖6-30所示。 MegaCore是Altera的IP Core計(jì)劃中的一個(gè)組成部分,F(xiàn)IR Compiler作為一個(gè)MegaCore,不附帶在DSP Builder和Quartus II中,需要單獨(dú)向Altera公司購(gòu)買(mǎi)或申請(qǐng)?jiān)囉冒妗,F(xiàn)在最新的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濾波器

41、核的使用 1. 調(diào)用FIR模塊 在 S i m u l i n k 環(huán) 境 中 新 建 一 個(gè) 模 型 , 放 置SignalCompiler模塊和FIR模塊(如圖6-31)。 注意:在DSP Builder中使用FIR Compiler時(shí),需要有SignalCompiler的支持,所以在使用配置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ì)指標(biāo)如下: 濾波器類(lèi)型:帶通(BandPass) 采樣頻率:50 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論