摘 要: 在信息信號(hào)處理過(guò)程中,如對(duì)信號(hào)的過(guò)濾、檢測(cè)、預(yù)測(cè)等,都要使用濾波器,數(shù)字濾波器是數(shù)字信號(hào)處理中使用最廣泛的一種器件。本文提出了一種采用DSP Builder實(shí)現(xiàn)有限沖激響應(yīng)濾波器的設(shè)計(jì)方案,并以一個(gè)16階FIR數(shù)字濾波器的實(shí)現(xiàn)為例,設(shè)計(jì)并完成軟硬件仿真與驗(yàn)證,結(jié)果表明,該方法簡(jiǎn)單易行,能滿足設(shè)計(jì)要求。
關(guān)鍵詞: 有限沖擊響應(yīng)濾波器 16階FIR濾波器 DSPbuilder
1.引言
有限沖激響應(yīng)(FIR)數(shù)字濾波器在數(shù)字通信系統(tǒng)中經(jīng)常被用于實(shí)現(xiàn)各種功能電路,如低通濾波器,通帶選擇,抗混疊,抽取和內(nèi)插等。特別在圖像處理及數(shù)據(jù)傳輸?shù)纫笮诺谰哂芯€性相位特性等方面,F(xiàn)IR數(shù)字濾波器比IIR數(shù)字濾波器更具優(yōu)勢(shì)。首先,F(xiàn)IR數(shù)字濾波器具有精密的線性相位,同時(shí)又可以具有任意的幅度特性。其次,F(xiàn)IR數(shù)字濾波器的單位抽樣響應(yīng)是有限長(zhǎng)的,因而濾波器是穩(wěn)定的。再次,只要經(jīng)過(guò)一定的延時(shí),任何非因果有限長(zhǎng)代序列都能變成因果的有限長(zhǎng)序列,因而總能用因果系統(tǒng)來(lái)實(shí)現(xiàn)。最后,F(xiàn)IR濾波器由于單位沖激響應(yīng)是有限長(zhǎng)的,因而可以用快速傅立葉變換算法來(lái)實(shí)現(xiàn)過(guò)濾信號(hào),從而大大提高運(yùn)算效率。
2.FIR濾波器原理
對(duì)于一個(gè)FIR濾波器系統(tǒng),它的沖激響應(yīng)總是有限長(zhǎng)的,其系統(tǒng)函數(shù)可以記為:
式中,x(n)是輸入采樣;h(n)是濾波器系數(shù);L是濾波器階數(shù);y(n)表示濾波器的輸出序列。也可以用卷積來(lái)表示輸出序列x(n)與y(n)的關(guān)系:
y(n)=x(n)h(n)
提供的濾波器設(shè)計(jì)的專門(mén)工具用Matlab箱——FDATool FIR仿真設(shè)計(jì)濾波器。滿足要求的濾波器幅頻特性如圖1所示:
3. 16階FIR濾波器模型設(shè)計(jì)
3.1 4階FIR數(shù)字濾波器設(shè)計(jì)
16階FIR數(shù)字濾波器可由4階FIR數(shù)字濾波器構(gòu)成。直接I型4FIR階數(shù)字濾波器的原理如圖2所示。
圖中所示的是個(gè)直接I型的4階FIR數(shù)字濾波器的結(jié)構(gòu),為了使該濾波器的調(diào)用更加方便,在xin輸入后插入一個(gè)延遲單元,將3階FIR數(shù)字濾波器演變?yōu)?階,不過(guò)常數(shù)系數(shù)項(xiàng)h(0)恒為0。在通信應(yīng)用中,F(xiàn)IR數(shù)字濾波器往往處理的是信號(hào)流,增加一個(gè)延遲單元不會(huì)影響FIR數(shù)字濾波器處理的結(jié)果,只是系統(tǒng)延遲增加了一個(gè)時(shí)鐘周期。
根據(jù)上述分析,首先在DSP Builder中建立了一個(gè)4價(jià)FIR數(shù)字濾波器,作為一個(gè)子系統(tǒng)供后面的16階FIR數(shù)字濾波器調(diào)用。4階FIR數(shù)字濾波器內(nèi)部結(jié)構(gòu)如圖3所示:
3.2直線I型16階數(shù)字濾波器的設(shè)計(jì)
直接I型數(shù)字濾波器的設(shè)計(jì)模型如圖4所示。為了組成一個(gè)直接的16階數(shù)字濾波器,首先需要建立一個(gè)新的DSP Builder模型,復(fù)制4個(gè)4階數(shù)字濾波器模型到新模型。復(fù)制后,按照?qǐng)D4所示結(jié)構(gòu)圖把它們連接起來(lái),前一端的輸出接口x4接后一級(jí)的x輸入端口,并增加16個(gè)常數(shù)端口,作為FIR濾波器端口的輸入端。把四個(gè)子系統(tǒng)的輸入端口y連接起來(lái),接入一個(gè)四輸入端口加法器,得到FIR濾波器的輸出yout。圖4中的16個(gè)常數(shù)端口h1—h16統(tǒng)一設(shè)置的值為255,而實(shí)際中濾波器的系統(tǒng)是根據(jù)具體要求進(jìn)行計(jì)算而確定的。在這里把參數(shù)設(shè)置為:-19,6,29,3,-45,-25,92,212,212,92,-25,-45,3,29,6,-19。
顯然,一個(gè)線性調(diào)頻信號(hào)通過(guò)FIR濾波器后幅度發(fā)生了變化,頻率較高部分的幅度被衰減了。
4.結(jié)語(yǔ)
應(yīng)用Matlab/DSP Builder可以對(duì)多種類型的電子線路模塊進(jìn)行系統(tǒng)建模、分析和硬件實(shí)現(xiàn),且更適合于開(kāi)發(fā)一些較為復(fù)雜的功能系統(tǒng)及高速算法模塊的設(shè)計(jì)和實(shí)現(xiàn)。在進(jìn)行數(shù)字濾波器的開(kāi)發(fā)時(shí),采用DSP Builder作為設(shè)計(jì)工具能加快進(jìn)度。
參考文獻(xiàn):
[1]江國(guó)強(qiáng).SOPC技術(shù)及應(yīng)用.北京:機(jī)械工業(yè)出版社,2006.9.
[2]王誠(chéng),吳繼華.AlteraFPGA/CPLD設(shè)計(jì)(基礎(chǔ)篇)[M].北京:人民郵電出版社,2005.
[3]吳繼華,王誠(chéng).AlteraFPGA/CPLD設(shè)計(jì)(高級(jí)篇)[M].北京:人民郵電出版社,2005.
[4]江國(guó)強(qiáng).EDA技術(shù)及應(yīng)用[M].北京:電子工業(yè)出版社,2004.