近年來,電子技術的發(fā)展促進了多媒體設備的繁榮,同時隨著人們對便攜式設備和可移動終端的廣泛需求,使得低功耗成為了這類電子設備最大的技術難題之一。低功耗意味著在同一時間段內在相同條件下移動終端消耗的能量更少,使得此類設備有更長的續(xù)航工作時間。低功耗設計降低了系統(tǒng)功耗,提高了能量利用率。
ARM微處理器因其高性能和低功耗的特性,特別適合于便攜式設備的開發(fā)與應用。本文設計了一種基于ARM的低功耗語音去噪系統(tǒng),為應用于便攜式移動的語音去噪設備提供了一種很好的設計思路和方法。
1 算法設計
譜減法的原理就是在頻域將噪聲的頻譜分量從帶噪語音信號的頻譜中減去。其設計思想是在假設加性噪聲與短時平穩(wěn)的語音信號相互獨立的條件下,從帶噪語音信號的功率譜中減去噪聲的功率譜,進而得到去噪后較純凈的語音頻譜。
如果帶噪語音信號為
y(i)=s(i)+n(i)(1)
上式中,y(i)為帶噪語音,s(i)為純凈語音,n(i)為噪聲信號。經(jīng)過FFT變換,頻域表達式為:
Y(k)=S(k)+N(k)(2)
由式(2)可得:
因為譜減法的前提是語音信號與噪聲信號是不相關的,且S(k})、N(k)服從高斯分布,均值為零,于是對式(3)求期望可得:
由此可得原始語音的估計值。針對人耳對相位的不敏感這一特點,可以用原始帶噪語音的相位譜代替去噪后語音信號的相位譜。
整個算法的流程如圖1所示。
2 硬件設計
2.1 主控CPU芯片選型
本系統(tǒng)要求低功耗,傳統(tǒng)的信號處理系統(tǒng)大多采用DSP,DSP芯片雖然數(shù)據(jù)處理能力強大,但是本身功耗太高,因此不適用于低功耗設計的要求,加之DSP內部外設種類很少,如不具有A/D和D/A等模塊,對于系統(tǒng)設計,增加這些功能模塊無疑又會增加功耗。
LPC1756是NXP(恩智浦)公司推出的高度集成和低功耗的32位嵌入式處理器,內核構架為32位高性能ARM Cortex-M3 CPU,具有3級流水線和哈佛結構總線,LPC756具有256 kB片上Flash和32 kB SRAM,時鐘頻率可高達120MHz,指令執(zhí)行速度最高為150 MIPS,工作在最高頻率時,所耗電流也僅為數(shù)十毫安。LPC1756具有大量豐富的外設:一個12位模數(shù)轉換器(ADC),高達8個輸入通道;一個10位數(shù)模轉換器(DAC);4個32位通用定時器;8個DMA通道等。此外,具有80個引腳的LPC1756的封裝體積為12x12x1.4 mm。總之,該芯片具備處理速度快、功能豐富、體積小和性價比高等優(yōu)點。因此符合本系統(tǒng)設計要求。
為了適應低功耗設計的要求采用LPC1756片內ADC模塊和DAC模塊。為了節(jié)約CPU處理數(shù)據(jù)的時間,在采集端和輸出端均采用DMA傳輸模式。
2.2 大電壓差電源設計
在本系統(tǒng)中,要求輸入電壓為26 V直流電壓,輸出電流不超過60 mA。ARM處理器所需供電電壓為2.4~3.3 V。目前流行的電源壓降模塊普遍采用線性穩(wěn)壓源和開關電源。線性穩(wěn)壓源常見的如LDO(低壓差輸出)模塊,LDO原理是利用三極管基極電壓來控制輸入輸出端的電壓差來獲得輸出所需電壓的目的,而系統(tǒng)電流也要流經(jīng)三極管,因此LDO在降壓的同時,其自身的功耗也很大,LDO芯片的功耗:
P=(VIN-VOUT)*I (6)
式(6)中VIN為輸入電壓(轉換前),VOUT為輸出電壓(轉換后),I為輸出電流。假設本系統(tǒng)電流為50mA,因此由式(6)可得LDO自身功耗P=(26-3.3)*50 mW=1 135mW,可見在這種高壓差的LDO系統(tǒng)中,損失的功率太大使得電源轉換效率很低,這樣在LDO芯片上會產(chǎn)生很大的熱量,很容易燒壞電源芯片,不僅會使整個系統(tǒng)癱瘓,而且會造成安全隱患。但是LDO具有輸出電壓穩(wěn)定、紋波小等優(yōu)點,適合低壓差電源轉換。
開關電源常見的如DC-DC模塊,開關電源的原理是利用開關的特性,經(jīng)反饋網(wǎng)絡輸出對應占空比的PWM信號來控制MOS管的柵極電壓,從而達到輸出預期電壓的目的,MOS管的漏源極間的導電溝道電阻非常小,因此消耗在開關電源上的功耗很小。因此鑒于開關電源輸入電源范圍寬、功耗小等優(yōu)點,廣泛在系統(tǒng)設計時被采用。需要指出的是在用開關電源時,由于開關電源頻繁的開關特性,會使得輸出電壓的紋波和噪聲較大,因此在設計時需考慮濾波和PCB布線等情況。
鑒于上述原因,本系統(tǒng)電源模塊采用開關電源和LDO共同作用的架構,先用開關電源將輸入電壓(DC26V)轉換至適合LDO輸入電壓(DC5V)范圍內,這樣可以有效降低在LDO上的功耗;然后再利用LDO模塊轉換至系統(tǒng)所需的穩(wěn)定電壓(DC3.3V),確保系統(tǒng)不受電源紋波的干擾。開關電源芯片選用美國國家半導體公司的LM2576開關電源,其具有電壓輸入范圍寬、轉換效率高以及帶負載能力強等優(yōu)點;LDO芯片采用美國TI公司的TPS79133芯片,其具有輸出電壓穩(wěn)定、紋波小等特點。
2.3 信號調理模塊設計
輸入為語音信號,經(jīng)麥克風轉換為電壓信號,但這種電壓信號很徽弱,一般為幾十毫伏,需要經(jīng)過放大才能被A/D有效采集,為了提高放大后信號的信噪比,在放大前端應對信號進行濾波處理,語音信號分布在300~3400 Hz之間,因此可對輸入信號進行低通率波。又由于譜減算法的特性,去噪后信號的幅度較去噪前信號的幅度減小很多,所以對去噪后的語音信號也應當放大和濾波處理。
本系統(tǒng)采用飛思卡爾半導體公司的MC34119集成運放,該芯片具有寬電壓輸入(2.0~16 V)、對語音信號具有自適應增益功能以及不需外部加直流偏置等特點。由于LPC1756內部A/D和D/A參考電壓為3.3 V,因此運放的輸入(參考)電壓也應為3.3 V,信號增益是通過反饋電阻與輸入電阻之比來確定。即:
Gain=RF/RI(7)
在本系統(tǒng)中,輸入增益設為10倍,輸出增益設為3倍。低通濾波器采用美信半導體公司MAX7427集成芯片,該芯片具有功耗低(僅需0.8 mA)、外圍電路簡單等特點,且通過外接振蕩電容來計算上限截止頻率,適用頻率范圍1~12 000 Hz,符合本系統(tǒng)頻率范圍。
3 系統(tǒng)整體框架
語音信號頻率范圍為300~3400Hz,根據(jù)奈奎斯特采樣定理,采樣率至少為信號頻率的兩倍時,信號才能被不失真采集。在本系統(tǒng)中,采樣率是通過LPC1756內部的32位高精度定時器模塊來控制,每間隔125μs對A/D轉換結果進行一次讀數(shù),即采樣率設定為8 000 Hz,讀取的數(shù)據(jù)通過DMA模塊傳輸至預處理地址中,這樣提高了CPU的處理效率。同理,為了保證輸入輸出的同步性,在定時器中斷函數(shù)里,每采集一個信號點,就必須輸出一個信號點。為了提高CPU利用率,去噪后的語音信號也是通過DMA通道傳輸。在信號的采集與輸出端,均通過放大濾波電路,都是為了提高語音信號的信噪比。在濾波電路中,截止頻率設定為4 000 Hz。其實物的PCB布線如圖3所示。
4 系統(tǒng)測試結果
在上述設計的條件下,輸入電壓為26 V(DC)的情況下,系統(tǒng)正常工作時,所耗電流為20 mA,滿足低功耗的要求。對系統(tǒng)去噪效果進行主觀試聽,分別試聽了0 dB、3 dB、5 dB、10 dB和20 dB情況下帶噪語音經(jīng)過系統(tǒng)后的去噪效果,聽者都認為系統(tǒng)的去噪效果良好,有較好的語音自然度和清晰度。
3 dB帶噪語音去噪前后示波器對比圖如圖4所示。
如圖4所示,示波器上通道1(上半部分)顯示的是去噪后的語音信號,通道2(下半部分)顯示的是去噪前的3 dB帶噪語音信號。
5 結束語
文中基于ARM處理器,設計出了具有低功耗的語音去噪系統(tǒng)。用C語言編程將譜減算法成功移植到ARM平臺上,并且效果較好。譜減算法在語音去噪應用中非常成熟,因此本文著重介紹了該系統(tǒng)的硬件設計,與傳統(tǒng)的基于DSP的系統(tǒng)設計相比,大大降低了系統(tǒng)功耗和成本,為以后的低功耗和高性價比系統(tǒng)設計提供了一種很好的思路和方法。