基于DSP6713的IIR格型自適應(yīng)濾波器
4 自適應(yīng)IIR格型濾波算法的DSP實(shí)現(xiàn)
由于自適應(yīng)濾波器需要兩個(gè)輸入端,一個(gè)為主信號(hào)輸入端,另一個(gè)為參考信號(hào)輸入端。因此,如何在軟件和硬件上設(shè)計(jì)和實(shí)現(xiàn)兩個(gè)信號(hào)通路的建立問(wèn)題是自適應(yīng)濾波器的關(guān)鍵之一。為了解決雙通道自適應(yīng)濾波器的信號(hào)輸入通道問(wèn)題,可以采用開(kāi)發(fā)板上的CS4272編解碼器的立體聲輸入功能,利用立體聲編解碼器的左、右兩路音頻輸入作為主信號(hào)輸入和參考信號(hào)輸入。然后將兩個(gè)通道的信號(hào)送往DSP進(jìn)行自適應(yīng)IIR格型濾波處理,將處理后的信號(hào)通過(guò)McBSP0傳送到CS4272編解碼器,CS4272編解碼器的D/A轉(zhuǎn)換電路再將數(shù)字信號(hào)轉(zhuǎn)換為模擬音頻。整個(gè)自適應(yīng)濾波的過(guò)程如圖4所示。
本文中自適應(yīng)濾波器的參考輸入通道采用的是目標(biāo)板上的立體聲輸入接口的左通道,主信號(hào)通道采用立體聲接口的右通道,操作完成后進(jìn)行交替,采用Ping-Pong數(shù)據(jù)緩沖結(jié)構(gòu),Ping-Pong緩沖存儲(chǔ)區(qū)分配采用下面的C語(yǔ)言形式:
程序使用CCS開(kāi)發(fā)環(huán)境進(jìn)行編譯、鏈接生成可執(zhí)行公共目標(biāo)文件(COFF),然后加載運(yùn)行。濾波器的權(quán)系數(shù)設(shè)定為512階,自適應(yīng)步長(zhǎng)為5×10-5,輸入信號(hào)為某組給定的音頻信號(hào),通過(guò)CCS開(kāi)發(fā)環(huán)境的圖形分析工具得到測(cè)試結(jié)果如圖5所示??梢钥吹?,濾波前后的頻譜圖非常相似,結(jié)果表明該濾波器具有很好的濾波效果。
最后通過(guò)SEED-XDSusb 2.O仿真器下載到開(kāi)發(fā)板上運(yùn)行并播放音樂(lè)進(jìn)行實(shí)時(shí)測(cè)試,實(shí)驗(yàn)結(jié)果符合預(yù)期效果,有很好的實(shí)用價(jià)值。
評(píng)論