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