數(shù)字音頻和語音無處不在,產(chǎn)品范圍從專業(yè)工業(yè)嵌入式系統(tǒng)到消費(fèi)類產(chǎn)品,如耳機(jī)和車載套件。許多應(yīng)用需要處理器將噪聲抑制,回聲消除和增益控制等算法實(shí)時(shí)應(yīng)用于流,以最大化音頻質(zhì)量。大多數(shù)設(shè)計(jì)團(tuán)隊(duì)可能會(huì)將此類算法與專用于DSP專用處理器的實(shí)現(xiàn)相關(guān)聯(lián),這些處理器專用于音頻任務(wù)。然而,今天,集成DSP數(shù)學(xué)功能的微控制器(MCU) - 通常稱為數(shù)字信號(hào)控制器(DSC) - 可以處理實(shí)時(shí)音頻算法和其余的應(yīng)用要求。我們將研究一些典型的算法,并考慮如何在主流MCU和DSC上實(shí)現(xiàn)這些算法。
首先,我們將介紹一些典型的以音頻為中心的功能,這些功能可能會(huì)用于通信應(yīng)用,如電話,免提套件,對(duì)講機(jī),無線電和其他設(shè)備。噪聲是此類應(yīng)用中的常見問題,盡管抑制算法可以通過麥克風(fēng)大大降低與語音一起捕獲的環(huán)境噪聲(圖1)。噪聲源可能是機(jī)器,甚至是PC的風(fēng)扇噪音。
圖1:噪聲抑制算法可以大大降低麥克風(fēng)隨聲音捕獲的環(huán)境噪聲。
噪聲抑制算法通常必須在數(shù)據(jù)流上實(shí)時(shí)執(zhí)行。 Microchip提供了與dsPIC DSC一起使用的算法。該算法對(duì)語音數(shù)據(jù)進(jìn)行操作,該數(shù)據(jù)采用8 kHz采樣,分辨率為16位。該算法順序處理10毫秒的語音塊。
噪聲抑制算法中的主要DSP功能是頻域快速傅立葉變換(FFT)。該算法不斷更新檢測到的噪聲的輪廓。它可以縮放各個(gè)頻段的信號(hào),放大語音和靜音噪聲。
Microchip在噪聲抑制庫中提供算法。該算法以匯編語言編碼以獲得最大性能,但高級(jí)語言應(yīng)用程序代碼可以通過應(yīng)用程序編程接口(API)訪問這些函數(shù)。
聲學(xué)回聲消除
回聲消除是另一種方便的算法,可以提高音頻質(zhì)量,尤其是在有線或無線通信鏈路上(圖2)。當(dāng)麥克風(fēng)和揚(yáng)聲器彼此靠近時(shí),從揚(yáng)聲器到麥克風(fēng)的信號(hào)傳播到通信鏈路的另一端,產(chǎn)生最多會(huì)分散注意力的回聲,并且最壞的情況是使鏈路無用。
圖2:回聲消除依賴于時(shí)域有限脈沖響應(yīng)(FIR)濾波器來消除通過通信鏈路傳播的語音中的回聲。
Microchip提供聲學(xué)回聲消除庫,以消除回聲現(xiàn)象。時(shí)域算法依賴于自適應(yīng)有限脈沖響應(yīng)(FIR)濾波器,該濾波器應(yīng)用于來自通信鏈路遠(yuǎn)端的音頻。濾波器系數(shù)提供此自適應(yīng)能力,并使用歸一化最小均方(NLMS)算法進(jìn)行設(shè)置。該算法確保濾波器緊密地模擬實(shí)際聲學(xué)路徑。此外,非線性處理器算法消除了殘余回聲。
與噪聲抑制算法類似,聲學(xué)回聲消除庫采用匯編語言編碼,可以在dsPIC處理器上實(shí)時(shí)處理數(shù)據(jù)。它提供大于40 dB的消除,并使用8 kHz采樣率。它還與通常用于汽車免提應(yīng)用的G.167 ITU標(biāo)準(zhǔn)兼容。
Microchip提供了幾個(gè)額外的以音頻為中心的庫。例如,符合ITU G.168標(biāo)準(zhǔn)的線路回聲消除庫以電話系統(tǒng)為目標(biāo)?;贕UI的語音和音頻快進(jìn)工具可與其他庫(如噪聲抑制庫)配合使用,以允許調(diào)整應(yīng)用程序。自動(dòng)增益控制庫可輕松調(diào)整音頻電平。
數(shù)字信號(hào)控制器
現(xiàn)在我們將討論您可能在音頻應(yīng)用中使用的處理器類型。如上所述,Microchip庫是為公司的dsPIC DSC設(shè)計(jì)的。 DSC本質(zhì)上只是一個(gè)增加了數(shù)學(xué)硬件以支持以DSP為中心的應(yīng)用的MCU。與典型的MCU一樣,這些IC仍然集成了存儲(chǔ)器和各種外設(shè)。
Microchip實(shí)際上是第一個(gè)使用DSC的術(shù)語,盡管現(xiàn)在幾乎每個(gè)MCU供應(yīng)商都有這樣的產(chǎn)品。 Microchip提供的產(chǎn)品包括dsPIC30F和dsPIC33F/E系列。所有產(chǎn)品都包括單周期硬件MAC(乘法器累加器) - 具體來說,是一個(gè)16x16位乘法器和一個(gè)40位累加器。 DSC還包括一個(gè)桶形移位器,可以在一個(gè)周期內(nèi)移位任意數(shù)量的位。桶形移位器和MAC一起實(shí)現(xiàn)了以DSP為中心的算法的實(shí)時(shí)執(zhí)行。圖3中的框圖描述了dsPIC30F架構(gòu)。
圖3:dsPIC30F DSC包括一個(gè)16x16位乘法器和40位累加器,以及一個(gè)桶形移位器,用于實(shí)現(xiàn)以DSP為中心的應(yīng)用。
選擇DSPIC系列的成員添加在音頻和語音應(yīng)用中特別方便的外設(shè)。例如,dsPIC33FJ128GP804 DSC包含一個(gè)16位雙通道數(shù)模轉(zhuǎn)換器(DAC),可用于輸出音頻。此外,DSC還包括一個(gè)10位模數(shù)轉(zhuǎn)換器(ADC),支持多達(dá)13個(gè)音頻輸入通道。 ADC每秒可捕獲超過一百萬個(gè)樣本。 40 MIPS處理器提供了實(shí)現(xiàn)應(yīng)用程序代碼和音頻算法的性能余量。
DSC開發(fā)板
想要嘗試dsPIC技術(shù)的設(shè)計(jì)團(tuán)隊(duì)有許多可供選擇的開發(fā)板。 Microchip DM24001-ND dsPIC Explorer板包含dsPIC33FL256GP710 DSC,Microchip DM24002-ND dsPIC Explorer板包含dsPIC33FJ32GP204 DSC。兩者都配有16位PIC MCU。
Explorer板是一般實(shí)驗(yàn)的理想選擇,但Microchip還提供針對(duì)特定應(yīng)用的夾層PICtail板,可與基本Explorer板一起使用。音頻PICtail plus開發(fā)板包括一個(gè)16/24位編解碼器,一個(gè)耳機(jī)放大器,以及具有可調(diào)增益的麥克風(fēng)和線路輸入。語音PICtail開發(fā)板支持自適應(yīng)差分脈沖編碼調(diào)制(ADPCM)。
-
dsp
+關(guān)注
關(guān)注
554文章
8053瀏覽量
349524 -
mcu
+關(guān)注
關(guān)注
146文章
17194瀏覽量
351879 -
編解碼器
+關(guān)注
關(guān)注
0文章
265瀏覽量
24261
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論