基于FPGA的FIR濾波器的性能研究
摘要:目前FIR濾波器的一般設計方法比較繁瑣,開(kāi)發(fā)周期長(cháng),如果采用設計好的FIR濾波器的IP核,則開(kāi)發(fā)效率大為提高。本方案基于A(yíng)ltera公司的CycloneⅡ系列芯片EP2C8Q208C8N,首先利用MATLAB中的濾波器函數fir2得出需產(chǎn)生的FIR濾波器的系數,再導入FIR IP Core,成功完成了FIR數字濾波器的設計。另外分析了階數與不均勻采樣數據對FPGA資源的影響和時(shí)生成FIR濾波器的輸出性能的影響,并將實(shí)際輸出的幅頻特性圖與我們需要的幅頻特性圖相比較,驗證生成的FIR數字濾波器的性能。
關(guān)鍵詞:FIR IP Core;FIR數字濾波器;濾波器系數;幅頻特性圖;EP2C8Q208C8N
在信號處理領(lǐng)域中,常常需要對信號進(jìn)行加工處理,處理的本質(zhì)就是信息的變換和提取,是將信息從各種噪聲、干擾的環(huán)境中提取出來(lái),變換成我們需要的形式。數字濾波器是由乘法器、加法器和延時(shí)單元組成的一種裝置,是一個(gè)離散時(shí)間系統按預定的算法,將輸入離散時(shí)間信號轉換為所要求的輸出離散時(shí)間信號的特定功能裝置。在一般情況下,圖像處理及數據傳輸都要求信道具有線(xiàn)性相位特性。有限沖擊響應(FIR)數字濾波器就可以做成具有嚴格的線(xiàn)性相位,同時(shí)又可以具有任意的幅度特性。此外,FIR濾波器的單位抽樣響應是有限長(cháng)的,因而濾波器一定是穩定的。故FIR濾波器廣泛應用于數字系統處理領(lǐng)域。但目前FIR濾波器的設計方法比較繁瑣,開(kāi)發(fā)周期長(cháng),本文則介紹了一種簡(jiǎn)潔有效的設計方法,并且注重它的資源及性能分析。
隨著(zhù)IC(Integrated Circuit)技術(shù)的發(fā)展和EDA(Electronic Design Automatic)工具的完善,各大FPGA器件廠(chǎng)商及第三方都陸續推廣專(zhuān)門(mén)的信號處理IP(Intellectual Property)Core,使得基于FPGA的數字信號處理DSP(Digital Signal Processing)系統的開(kāi)發(fā)更加便捷,利用IP Core設計FIR濾波器,設計周期短,占用邏輯資源少,其運算速度相比DSP處理器有很大的提高,故IP核也逐漸成為數字信號處理實(shí)現高
速實(shí)時(shí)的一種方式。
在設計一個(gè)FIR濾波器之前,首先要確定濾波器的技術(shù)指標。本文是通過(guò)MATLAB算出濾波器的系數,導入IP核,就可通過(guò)FPGA實(shí)現任意的我們需要產(chǎn)生的濾波器。
1 FIR數字濾波器的設計
1.1 FIR數字帶通濾波器的系數設計原理
本文以設計帶通濾波器為例介紹如何設計基于IP核的FIR數字濾波器?,F有一雙T帶阻濾波電路如圖1所示,測量一系列不同頻率對應的幅值,根據測量的幅頻特性關(guān)系,我們可通過(guò)MATLAB算出需要設計的帶通濾波器的系數。其帶阻網(wǎng)絡(luò )的中心頻率計算公式:
圖2為實(shí)際中用毫伏表逐點(diǎn)采樣法測量帶阻網(wǎng)絡(luò )的幅頻特性圖,用MATLAB軟件繪制出其幅頻特性圖。由于電阻電容的標稱(chēng)誤差,實(shí)際中測量帶阻電路,其中心頻率點(diǎn)f0在3.7 kHz,衰減31.2133dB。
FIR數字帶通濾波器的系數設計原理是:設帶阻網(wǎng)絡(luò )的幅頻特性為H1(jw),FIR帶通網(wǎng)絡(luò )的幅頻特性為H2(jw),要實(shí)現數字幅頻均衡,則要滿(mǎn)足:
由以上分析知:將帶阻網(wǎng)絡(luò )進(jìn)行頻率采樣,測量帶阻網(wǎng)絡(luò )的頻率值和對應的幅度值,則帶通濾波器的幅度值實(shí)際可認為是帶阻網(wǎng)絡(luò )的幅度值的倒數。由帶阻網(wǎng)絡(luò )的幅頻特性,可推算出需要產(chǎn)生的FIR帶通濾波器的性能指標,如圖3所示。
評論