基于DSP的數(shù)字音頻均衡器設(shè)計(jì)
摘要 音頻均衡器在音頻系統(tǒng)中是調(diào)節(jié)音色的重要工具之一。文中提出了一種基于ADSP—BF533硬件平臺(tái)的數(shù)字音頻均衡器設(shè)計(jì),其音頻處理算法包括譜分析和均衡算法。經(jīng)過(guò)測(cè)試表明,該系統(tǒng)可達(dá)到理想的音頻均衡效果,用戶可對(duì)各種音效進(jìn)行選擇和自定義音效。
關(guān)鍵詞 音頻均衡器;譜分析;ADSP—BF533
均衡器是一種可以分別凋節(jié)各種頻率成分電信號(hào)放大龜?shù)碾娮釉O(shè)備,通過(guò)調(diào)節(jié)音頻均衡器的參數(shù),可以補(bǔ)償揚(yáng)聲器和聲場(chǎng)的缺陷,起到補(bǔ)償和修飾各種聲源的作用。
分立器件與運(yùn)放構(gòu)建的模擬電感音頻均衡器,因受分立器件本身性能的影響,存在許多不利因素,使該音頻均衡器在競(jìng)爭(zhēng)中處于劣勢(shì)。提出了在ADSP—BF533硬件系統(tǒng)上設(shè)計(jì)數(shù)字音頻均衡器的方法。譜分析算法采用FFT,其程序設(shè)計(jì)可以調(diào)用DSP的實(shí)時(shí)信號(hào)處理庫(kù)函數(shù)。均衡器的設(shè)計(jì)算法采用FIR濾波器的設(shè)計(jì)方法,F(xiàn)IR濾波器具有嚴(yán)格的線性相位,均衡后的音頻不會(huì)產(chǎn)生相位失真。系統(tǒng)相對(duì)于模擬音頻均衡器有較大的優(yōu)越性,設(shè)計(jì)靈活、運(yùn)算精度高、處理速度快、滿足實(shí)時(shí)信號(hào)處理的要求。
1 數(shù)字音頻均衡器的硬件設(shè)計(jì)
硬件平臺(tái)以ADSP—BF533(DSP)作為數(shù)字信號(hào)處理核心,AD1836A作為音頻采集和播放單元,LCD顯示模塊和按鍵實(shí)現(xiàn)人界交互。系統(tǒng)原理如圖1所示。
模擬音頻信號(hào)經(jīng)AD1836A模數(shù)轉(zhuǎn)換,南DSP數(shù)字均衡后再傳送給AD1836A進(jìn)行數(shù)模轉(zhuǎn)換,以實(shí)現(xiàn)音頻信號(hào)的均衡。用戶可以通過(guò)LCD顯示模塊和按鍵來(lái)改變DSP中的軟件處理流程或參數(shù),完成對(duì)數(shù)字音頻均衡器的控制。
1.1 主處理器ADSP-BF533
ADSP—BF533處理器是ADSP Blackfin系列的成員,其結(jié)構(gòu)采用了微信號(hào)結(jié)構(gòu)(Micro Signal Architecture),具備簡(jiǎn)潔的RISC指令集結(jié)構(gòu)。內(nèi)部指令處理采用流水線技術(shù),并集成乘累加單元(MAC)和算術(shù)邏輯單元(ALU),其最高核頻率可達(dá)600 MHz。
BF533集成了豐富的外設(shè)接口,在數(shù)字音頻均衡器中使用SPORT0完成數(shù)字音頻的數(shù)據(jù)傳輸,使用SPI來(lái)配置AD1836A的工作模式,并用可編程標(biāo)志(PF)與LCD、按鍵進(jìn)行連接。
1.2 音頻編碼器AD1836A
AD1836A是一個(gè)高性能的單片編碼器,能夠提供3個(gè)立體聲的DAC和2個(gè)立體聲的ADC。DSP通過(guò)SPI將AD1836A配置采樣率為48 kHz,數(shù)據(jù)字寬為24位的音頻編碼器,并通過(guò)SPORT和AD1836A進(jìn)行數(shù)據(jù)的傳輸,其串行數(shù)據(jù)端口可以采用流行的I2S串行模式。
1.3 LCD顯示模塊設(shè)計(jì)
LCD選用MSP-G240128DYSY的點(diǎn)陣式液晶顯示模塊,該液晶顯示模塊的驅(qū)動(dòng)控制系統(tǒng)由液晶顯示控制器T6963C及其外圍電路、行驅(qū)動(dòng)器組、列驅(qū)動(dòng)器組和液晶驅(qū)動(dòng)偏電壓電路組成。BF533通過(guò)PF接口實(shí)現(xiàn)對(duì)T6963C8位數(shù)據(jù)總線和控制線的讀寫(xiě)。其中使用PF0~PF7為數(shù)據(jù)線,PF12~PF14為控制線,圖2給出了BF533和LCD的接口方式。
2 數(shù)字音頻均衡器的軟件設(shè)計(jì)
軟件流程如圖3所示,首先對(duì)BF533進(jìn)行一系列的初始化,將系統(tǒng)設(shè)置在確定的工作狀態(tài)下。初始化完畢用戶通過(guò)按鍵選擇LCD的菜單項(xiàng)控制音頻信號(hào)處理。
2.1 音頻信號(hào)的譜分析算法
在音頻信號(hào)處理中加入譜分析可以更直觀地看出對(duì)不同頻段的增益調(diào)節(jié)效果,方便了調(diào)節(jié)和分析。頻譜特性曲線可以通過(guò)離散傅里葉變換得到,如式(1)所示。
式中,x(n)為音頻信號(hào)采樣序列;為旋轉(zhuǎn)因子;N為DFT變換區(qū)間長(zhǎng)度;X(k)可以用來(lái)描述其音頻信號(hào)的頻譜。
實(shí)際操作中AD1836A每次通過(guò)SPORT0,將4個(gè)24位的采樣數(shù)據(jù)送入SPORT0接收緩沖區(qū),并產(chǎn)生一次接收中斷,在中斷服務(wù)程序中接收的數(shù)據(jù)被送入設(shè)定的緩沖區(qū)中,當(dāng)接收計(jì)數(shù)器達(dá)到N時(shí),對(duì)采樣數(shù)據(jù)進(jìn)行FFT,計(jì)算出的幅頻特性曲線實(shí)時(shí)顯示在LCD上。[!--empirenews.page--]
2.2 音頻信號(hào)的均衡器算法
均衡器的作用是對(duì)信號(hào)的某段特定頻率成分進(jìn)行推進(jìn)或衰減。只調(diào)節(jié)低頻或高頻增益的均衡器,是由擱置濾波器(Shelving Filter)控制,低頻調(diào)節(jié)由低通擱置濾波器實(shí)現(xiàn),高頻調(diào)節(jié)由高通擱置濾波器實(shí)現(xiàn),其頻率響應(yīng)如圖4所示。
在大多數(shù)應(yīng)用中,低通和高通濾波器是盡量對(duì)頻譜的一部分完全刪除。但擱置濾波器僅僅是對(duì)頻譜的一部分進(jìn)行推進(jìn)或衰減,而留下剩余部分不受影響,此時(shí)就需要設(shè)計(jì)一個(gè)峰值濾波器或帶通濾波器,其頻率響應(yīng)如圖5所示。
這3種濾波器組成了最簡(jiǎn)單的均衡系統(tǒng),本系統(tǒng)是要設(shè)計(jì)一個(gè)圖示均衡器,其操作簡(jiǎn)單便于控制,由一系列的固定中心頻率的峰值濾波器組成,可以得出圖示均衡器的設(shè)計(jì)框圖如圖6所示。
按照上述思路,實(shí)際上只需設(shè)計(jì)均衡器中的濾波器即可,根據(jù)線性系統(tǒng)的疊加性,以上的各個(gè)濾波器可以并聯(lián)成一個(gè)系統(tǒng)函數(shù),這個(gè)系統(tǒng)函數(shù)是要求線性相位,以滿足不失真的還原出聲音信號(hào),而線性相位FIR數(shù)字濾波器正好滿足上述條件。系統(tǒng)設(shè)計(jì)了一個(gè)9段的均衡器,將AD1836A初始化為采樣率fs=48 kHz,定義歸一化頻率λ=f/fs,可以給出均衡器各個(gè)頻率段的參數(shù)如表1所示。
[!--empirenews.page--]
設(shè)計(jì)理想濾波器傳輸函數(shù),其幅頻特性如圖7所示,其中g(shù)ain1~gain9是9個(gè)頻率段的增益,每個(gè)頻率段的增益可調(diào)范圍是-12~12 dB。
由圖可以看出均衡器的傳輸函數(shù)是由一個(gè)低通濾波器并聯(lián)一系列帶通濾波器組成的,因此可寫(xiě)成如下形式
對(duì)hd(n)進(jìn)行加窗h(n)=hd(n)w(n),然后讓h(n)和x(n)進(jìn)行卷積,即可得到輸出序列y(n),從而完成了濾波運(yùn)算。
3 系統(tǒng)測(cè)試
系統(tǒng)測(cè)試包括兩方面的內(nèi)容,首先是譜分析測(cè)試,用來(lái)檢驗(yàn)系統(tǒng)進(jìn)行的譜分析是否滿足工程要求;另一個(gè)是均衡器測(cè)試,檢驗(yàn)均衡器對(duì)各個(gè)頻段的增益調(diào)節(jié)效果和對(duì)整個(gè)音頻范圍的均衡效果。測(cè)試方法可以通過(guò)BF533的開(kāi)發(fā)軟件VisualDSP++的plot功能實(shí)現(xiàn)。
3.1 譜分析測(cè)試
對(duì)輸入信號(hào)進(jìn)行48 kHz的采樣,將數(shù)據(jù)放入長(zhǎng)度為256的緩沖區(qū)中為譜分析作準(zhǔn)備。聲音信號(hào)的頻率范圍是20 Hz~20 kHz,其20 Hz和20 kHz正弦信號(hào)的譜分析測(cè)試結(jié)果如下。
其中圖8和圖9分別是是20 Hz和20 kHz的256點(diǎn)的采樣信號(hào)和頻譜圖,其中圖8(a),圖9(a)的頻譜是實(shí)際信號(hào)的頻譜,圖8(b),圖9(b)是FFT得到的頻譜,可見(jiàn)該算法能夠較好的反映出原始信號(hào)的頻譜特性。由圖可以看出,該算法滿足了譜分析的需要。
[!--empirenews.page--]
3.2 均衡器測(cè)試
均衡器可以看成是一個(gè)線性時(shí)不變系統(tǒng),其系統(tǒng)函數(shù)是單位沖擊響應(yīng)h(n)的離散時(shí)間傅里葉變換,因此的幅頻特性反映了均衡器的均衡效果。
(1)均衡器增益測(cè)試。信號(hào)源產(chǎn)生20 Hz~20 kHz的正弦掃頻信號(hào),并從示波器觀測(cè)信號(hào)幅度的變化,測(cè)試系統(tǒng)的幅頻特性曲線是否滿足要求。9段均衡器每個(gè)頻率段的可調(diào)范圍是-12~12 dB,經(jīng)測(cè)試當(dāng)輸入峰峰值為1 V的正弦信號(hào)時(shí),設(shè)置均衡器的增益全部為0 dB時(shí),輸出信號(hào)峰峰值為540 mV;在需要頻段增益為-12 dB時(shí),輸出信號(hào)峰峰值為140 mV;在需要頻段增益為12 dB時(shí),輸出信號(hào)峰峰值為2.18 V,可見(jiàn)均衡的增益是滿足要求的。圖10和圖11為均衡器低中高頻3個(gè)頻段的增益測(cè)試頻譜圖。
(2)均衡器音效測(cè)試。系統(tǒng)可以提供7種音效供用戶選擇,其中有POP、ROCK、DANCE、COUNTRY、JAZZ、CLASSIC和BRUCE。它們都是對(duì)音頻信號(hào)的不同頻段進(jìn)行放大或衰減,以達(dá)到不同的音質(zhì)效果。每一種音效的各個(gè)頻段的增益如表2所示。
根據(jù)以上參數(shù)設(shè)計(jì)的均衡器,在幾個(gè)音效下的系統(tǒng)函數(shù)幅頻特性曲線如圖12所示。
4 結(jié)束語(yǔ)
介紹了一種基于ADSP—BF533設(shè)計(jì)數(shù)字音頻均衡器的方法,即用數(shù)字信號(hào)處理的方法實(shí)現(xiàn)對(duì)音頻信號(hào)的均衡。提出了一種采用FIR濾波器設(shè)計(jì)均衡器的算法,并利用LCD和按鍵實(shí)現(xiàn)外部控制,該方法滿足了對(duì)音頻信號(hào)的實(shí)時(shí)處理和均衡。