<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何在主流MCU和DSC上實現音頻算法

電子設計 ? 來源:郭婷 ? 作者:電子設計 ? 2019-02-18 08:21 ? 次閱讀

數字音頻和語音無處不在,產品范圍從專業工業嵌入式系統到消費類產品,如耳機和車載套件。許多應用需要處理器將噪聲抑制,回聲消除和增益控制等算法實時應用于流,以最大化音頻質量。大多數設計團隊可能會將此類算法與專用于DSP專用處理器的實現相關聯,這些處理器專用于音頻任務。然而,今天,集成DSP數學功能的微控制器MCU) - 通常稱為數字信號控制器(DSC) - 可以處理實時音頻算法和其余的應用要求。我們將研究一些典型的算法,并考慮如何在主流MCU和DSC上實現這些算法。

首先,我們將介紹一些典型的以音頻為中心的功能,這些功能可能會用于通信應用,如電話,免提套件,對講機,無線電和其他設備。噪聲是此類應用中的常見問題,盡管抑制算法可以通過麥克風大大降低與語音一起捕獲的環境噪聲(圖1)。噪聲源可能是機器,甚至是PC的風扇噪音。

如何在主流MCU和DSC上實現音頻算法

圖1:噪聲抑制算法可以大大降低麥克風隨聲音捕獲的環境噪聲。

噪聲抑制算法通常必須在數據流上實時執行。 Microchip提供了與dsPIC DSC一起使用的算法。該算法對語音數據進行操作,該數據采用8 kHz采樣,分辨率為16位。該算法順序處理10毫秒的語音塊。

噪聲抑制算法中的主要DSP功能是頻域快速傅立葉變換(FFT)。該算法不斷更新檢測到的噪聲的輪廓。它可以縮放各個頻段的信號,放大語音和靜音噪聲。

Microchip在噪聲抑制庫中提供算法。該算法以匯編語言編碼以獲得最大性能,但高級語言應用程序代碼可以通過應用程序編程接口(API)訪問這些函數。

聲學回聲消除

回聲消除是另一種方便的算法,可以提高音頻質量,尤其是在有線或無線通信鏈路上(圖2)。當麥克風和揚聲器彼此靠近時,從揚聲器到麥克風的信號傳播到通信鏈路的另一端,產生最多會分散注意力的回聲,并且最壞的情況是使鏈路無用。

如何在主流MCU和DSC上實現音頻算法

圖2:回聲消除依賴于時域有限脈沖響應(FIR)濾波器來消除通過通信鏈路傳播的語音中的回聲。

Microchip提供聲學回聲消除庫,以消除回聲現象。時域算法依賴于自適應有限脈沖響應(FIR)濾波器,該濾波器應用于來自通信鏈路遠端的音頻。濾波器系數提供此自適應能力,并使用歸一化最小均方(NLMS)算法進行設置。該算法確保濾波器緊密地模擬實際聲學路徑。此外,非線性處理器算法消除了殘余回聲。

與噪聲抑制算法類似,聲學回聲消除庫采用匯編語言編碼,可以在dsPIC處理器上實時處理數據。它提供大于40 dB的消除,并使用8 kHz采樣率。它還與通常用于汽車免提應用的G.167 ITU標準兼容。

Microchip提供了幾個額外的以音頻為中心的庫。例如,符合ITU G.168標準的線路回聲消除庫以電話系統為目標?;贕UI的語音和音頻快進工具可與其他庫(如噪聲抑制庫)配合使用,以允許調整應用程序。自動增益控制庫可輕松調整音頻電平。

數字信號控制器

現在我們將討論您可能在音頻應用中使用的處理器類型。如上所述,Microchip庫是為公司的dsPIC DSC設計的。 DSC本質上只是一個增加了數學硬件以支持以DSP為中心的應用的MCU。與典型的MCU一樣,這些IC仍然集成了存儲器和各種外設。

Microchip實際上是第一個使用DSC的術語,盡管現在幾乎每個MCU供應商都有這樣的產品。 Microchip提供的產品包括dsPIC30F和dsPIC33F/E系列。所有產品都包括單周期硬件MAC(乘法器累加器) - 具體來說,是一個16x16位乘法器和一個40位累加器。 DSC還包括一個桶形移位器,可以在一個周期內移位任意數量的位。桶形移位器和MAC一起實現了以DSP為中心的算法的實時執行。圖3中的框圖描述了dsPIC30F架構。

如何在主流MCU和DSC上實現音頻算法

圖3:dsPIC30F DSC包括一個16x16位乘法器和40位累加器,以及一個桶形移位器,用于實現以DSP為中心的應用。

選擇DSPIC系列的成員添加在音頻和語音應用中特別方便的外設。例如,dsPIC33FJ128GP804 DSC包含一個16位雙通道數模轉換器DAC),可用于輸出音頻。此外,DSC還包括一個10位模數轉換器ADC),支持多達13個音頻輸入通道。 ADC每秒可捕獲超過一百萬個樣本。 40 MIPS處理器提供了實現應用程序代碼和音頻算法的性能余量。

DSC開發板

想要嘗試dsPIC技術的設計團隊有許多可供選擇的開發板。 Microchip DM24001-ND dsPIC Explorer板包含dsPIC33FL256GP710 DSC,Microchip DM24002-ND dsPIC Explorer板包含dsPIC33FJ32GP204 DSC。兩者都配有16位PIC MCU。

Explorer板是一般實驗的理想選擇,但Microchip還提供針對特定應用的夾層PICtail板,可與基本Explorer板一起使用。音頻PICtail plus開發板包括一個16/24位編解碼器,一個耳機放大器,以及具有可調增益的麥克風和線路輸入。語音PICtail開發板支持自適應差分脈沖編碼調制(ADPCM)。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • dsp
    dsp
    +關注

    關注

    545

    文章

    7667

    瀏覽量

    344873
  • mcu
    mcu
    +關注

    關注

    146

    文章

    16100

    瀏覽量

    344550
  • 編解碼器
    +關注

    關注

    0

    文章

    229

    瀏覽量

    24024
收藏 人收藏

    評論

    相關推薦

    基于簡單8位MCU的支持音頻的應用程序

    音頻 MCU 的一個示例是AT32UC3A0512AU集成 512 KB 閃存和 64 KB RAM 的 MCU。音頻 MCU 帶有設備執行
    發表于 08-12 11:56 ?2057次閱讀
    基于簡單8位<b class='flag-5'>MCU</b>的支持<b class='flag-5'>音頻</b>的應用程序

    labview 數據壓縮傳輸 各種壓縮算法實現?

    image實時視頻實時音頻還有其他實時數據如何快速壓縮傳輸1 如何在lab實現speex 等算法2有沒有lab相關的壓縮工具庫---go
    發表于 08-26 19:10

    何在STM32F4平臺實現算法仿真和集成?

    何在STM32F4平臺實現算法仿真和集成?
    發表于 11-19 06:36

    何在FETMX8MQ-C核心板實現低功耗音頻播放

    Cortex-M4處理器。本文將系統講解——如何在FETMX8MQ-C核心板實現低功耗音頻播放。01、低功率音頻應用概述在這個應用中,i.
    發表于 12-20 07:24

    何在連接的聲卡播放音頻

    我在 Cube/FW-packs 中找到了一些音頻類設備示例,但沒有一個帶有音頻主機。我在 Cube 中選擇了 H743 USB_HOST 和 Audio_Class,ok?,F在:如何在連接的聲卡
    發表于 12-01 07:37

    何在AT32F系列MCU使用FreeRTOS

    本指導手冊描述了如何在AT32F系列MCU使用FreeRTOS。FreeRTOS是一款開源的嵌入式實時操作系統,目前在各種嵌入式應用中應用廣泛。本指導手冊包括FreeRTOS系統移植
    發表于 10-24 07:46

    何在AT32 MCU使用FPU功能

    How to use FPU描述了如何在AT32 MCU使用FPU功能。
    發表于 10-24 07:45

    功率驅動器件與MCU_DSC的接口電路設計技巧

    功率驅動器件與MCU_DSC的接口電路設計技巧
    發表于 01-14 12:15 ?10次下載

    選擇一個用于音頻捕獲回放的MCU

    音頻捕獲和回放成為許多基于微控制器(MCU)的應用程序的必要條件。然而,音頻支持的保真度和編解碼器的范圍是難以置信的廣泛。你可以啟用基于主機的音頻應用簡單的8位微控制器平臺,但質量的
    發表于 07-03 11:41 ?7次下載
    選擇一個用于<b class='flag-5'>音頻</b>捕獲回放的<b class='flag-5'>MCU</b>

    16位MCUDSC程序員參考手冊.免費下載.pdf

    本文主要介紹了16位MCUDSC程序員參考手冊.
    發表于 06-28 05:25 ?45次下載
    16位<b class='flag-5'>MCU</b>和<b class='flag-5'>DSC</b>程序員參考手冊.免費下載.pdf

    如何使用微芯片DSPIC DSC系列實現永磁同步電機的無傳感器聚焦算法

    該應用筆記討論了使用微芯片DSPIC?DSC系列實現永磁同步電機(PMSM)的無傳感器聚焦算法。
    發表于 06-01 09:16 ?14次下載
    如何使用微芯片DSPIC <b class='flag-5'>DSC</b>系列<b class='flag-5'>實現</b>永磁同步電機的無傳感器聚焦<b class='flag-5'>算法</b>

    何在DSP芯片上實現Matlab的仿真算法

    當用Matlab完成數字信號處理算法仿真后,如何在DSP芯片上實時實現,是電氣信息類大學生需要掌握的一項重要的工程實踐能力。在仿真過程中,有算法移植、DSP工程建立和
    發表于 09-10 16:08 ?32次下載
    如<b class='flag-5'>何在</b>DSP芯片上<b class='flag-5'>實現</b>Matlab的仿真<b class='flag-5'>算法</b>

    何在AT32 MCU上使用FPU功能

    何在AT32 MCU上使用FPU功能
    的頭像 發表于 11-01 17:18 ?3688次閱讀
    如<b class='flag-5'>何在</b>AT32 <b class='flag-5'>MCU</b>上使用FPU功能

    PIC MCU和dsPIC DSC的B類安全軟件庫

    電子發燒友網站提供《PIC MCU和dsPIC DSC的B類安全軟件庫.pdf》資料免費下載
    發表于 09-19 16:14 ?0次下載
    PIC <b class='flag-5'>MCU</b>和dsPIC <b class='flag-5'>DSC</b>的B類安全軟件庫

    16位MCUDSC程序員參考手冊

    電子發燒友網站提供《16位MCUDSC程序員參考手冊.pdf》資料免費下載
    發表于 09-25 14:51 ?8次下載
    16位<b class='flag-5'>MCU</b>和<b class='flag-5'>DSC</b>程序員參考手冊
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>