基于FPGA的高階音頻均衡濾波器設計
2.4 乘累加模塊
乘累加模塊負責將輸入的數據和系數進(jìn)行乘累加運算,每256個(gè)時(shí)鐘周期輸出一個(gè)濾波結果。其實(shí)現框圖如圖8所示。本文引用地址:http://dyxdggzs.com/article/191298.htm
輸入序列緩存模塊輸出的數據y1~y4和濾波器系數存儲陣列輸出的相應系數h1~h4在該模塊進(jìn)行乘累加運算。每256個(gè)時(shí)鐘周期,計算完1個(gè)采樣點(diǎn)數據的4個(gè)部分y1’~y4’,由鎖存器鎖存,經(jīng)兩級流水線(xiàn)加法器后得到最終濾波結果y,然后將累加器清零,開(kāi)始準備下個(gè)采樣點(diǎn)數據的計算。其中,鎖存器的鎖存時(shí)鐘及乘累加器的清零信號都由輸入序列的寫(xiě)使能wren經(jīng)過(guò)相應的延時(shí)處理后得到。
3 仿真結果
對設計的均衡濾波器進(jìn)行綜合編譯,編譯報告如圖9所示。
可見(jiàn)該1 024階FIR均衡濾波器在EP1C3系列FPGA內得以實(shí)現,僅占用其約70%的邏輯資源和約50%的存儲空間。為了驗證該設計功能,將濾波器系數利用存儲器初始化文件進(jìn)行初始化,存儲的系數如圖10所示。
為了直觀(guān)驗證,輸入序列x取為δ序列,即x中只有1個(gè)數據為1,其它為0。根據濾波器及卷積的相關(guān)知識,輸出結果y=x*h=δ*h=h,即為濾波器系數。仿真結果如圖11所示。
輸入序列x只有1個(gè)采樣時(shí)鐘周期為數據1,其它全為0,fout為輸出的濾波結果??梢?jiàn)結果為-1~-16的重復數據,與圖10所示的濾波器系數一致,濾波器工作正常。
4 結束語(yǔ)
利用EP1C3約70%的邏輯單元及約50%的存儲空間,設計了1024階FIR數字濾波器,并通過(guò)重載系數,可實(shí)現多種頻率響應的均衡特性,實(shí)現了簡(jiǎn)易數字均衡濾波器的功能,達到了設計目標。
評論