基於DSPG+Qualcomm 8MIC 強力回聲消除聲源定位會議音響方案

在今年特殊年的情況下,遠端會議已成了日常工作的必備環節,所以人們對會議室音響系統的要求越來越高,對音質音色也要求頗高,因為一般的設備會引起聲反饋,造成嘯叫,還有間斷的雜音,會嚴重影響會議效率與質量。

專業的會議室音響系統顯得尤其重要了。看似簡單的把音箱功放、會議話筒、調音台等設備連接起來,其實不然,其中的專業技術是鮮為人知的。
會議室音響系統設計中需要考慮多種問題,如抗干擾、減少聲反饋、避免嘯叫,要求能提供清晰透亮的人聲,和舒服自然的會議環境。


選對會議室音響系統會讓會議變得事半功倍,在音質上大家對QUALCOMM的APTX codec是無可挑剔的。

在消除回音和嘯叫的技術上,一直以來是大家的心病。今天在這我給大家推薦一款高效的DSPG 配合Qualcomm主控執行8MIC強力聲源定位回聲消除會議音響的一個方案,“8 MIC強力聲源定位回聲消除”大家驚不驚喜、意不意外。沒錯,這裡我推薦使用的就是DSP Group所設計的DBMD7這顆處理器晶片。 

  • DBMD7系列提供了一個完整的語音處理器解決方案,用於移動設備和物聯網(IoT)世界中需要超高處理能力的始終在線應用。
  • DBMD7實現了一個三核DSP,旨在處理市場上最複雜的音頻算法。

技術層次描述:

依據方案方塊圖可知,在SCO鏈路建立起來時啟動8個MIC採集聲音並輸入到DBMD7,D7經過內部的算法處理後,將處理過的聲音從I2S輸出到QCC3024的IS2輸入端,
QCC3024將接收到的聲音傳入到SCO鏈路的上行,通過藍牙將聲音傳輸給對方。然後QCC3024將下行收到的聲音從speack輸出,並將聲音通過I2S輸出到DBMD7的I2S輸入,
給DBMD7作為AEC的參考信號。

軟體的移植工作描述:

在QCC3024的晶片ADK中,需要將DBMD7的固件移植到我們的QCC3024的軟體中來,當QCC3024開機的時候,就需要通過SPI/UART/I2C接口將固件加載到D7的晶片中,對其初始化。

 1、在軟體的移植工作中(如下描述是通過SPI接口來傳輸數據的),首先需要的是調整好主控端的SPI接口的讀寫操作,將QCC3024的SPI讀寫接口全部替換DBMD7 固件默認的接口,並將DBMD7固件中的int dbmdx_init(void) 函數中的所有子函數全部調通,
需要注意到reset、RX READY兩個PIN的配置。

因為D7工作前需要復位。因此,系統上電時需要RTOS AP拉低拉高RESET/RSTN GPIO,如下圖所示。

RX READY GPIO 的配置需要與實物的連接要一致,否則後續的工作都不能往下繼續:

RX READY GPIO用於SPI傳輸,每當AP從D7讀取數據時,AP需要等待RX READY給出時鐘。如下圖所示




2、在int dbmdx_init(void)函數下,主要實現如下幾個函數功能:


3、可以逐步調式每一個單一的子函數的方式,這樣會更有效率一點,調試階段需要藉助邏輯分析儀來檢查結果,如下圖所示:



4、整個DSPG的系統跑成功之後,代表D7的移植工作完成了80%,後續的就是調試D7與主控QCC3024的對接了。

由上面的描述可知,QCC3024是作為I2S的master, 需要實現I2S的輸入和 I2S的數出同時執行,並設置DAC也同時輸出。





由於在DBMD7的固件中,在uc_d7_voice_call_init()中,對MIC的信號需要使用到32bit 48Ksmprate 的信號,因此我們在QCC3024的I2S端,也需要配置為一致。





5、當QCC3024連接手機後,只要建立SCO鏈路,就通過函數uc_d7_voice_call_create_run()來激活DBMD7晶片啟動 voice call.

當SCO鏈路斷開,QCC3024端就得調用uc_d7_voice_call_terminate()函數來結束voice call。

►場景應用圖

►產品實體圖

►展示板照片

►方案方塊圖

►PCB設計圖

►錄音調試圖

►DBMD7 方塊圖

►8 MIC的連接圖

►核心技術優勢

DBMD7的目標應用程序包括:  智能個人助理語音命令處理器  杜比環繞聲和DTS語音處理器  智能電視語音識別  智能音效條。 DBMD7基於三個CEVA-X™ DSP處理器。該晶片配備了相關接口,用於與系統中的其他設備進行通信,如應用處理器(AP)、編解碼器、數字麥克風和傳感器。 DBMD7提供了以下組合:  三種高性能、高效率、低功耗的VLIW/SIMD數字信號處理器  支持豐富的接口集  體積小,適合移動設備 獨立操作,與手機AP的簡單接口  預處理算法最多可用於8個麥克風,以提高語音觸發(VT)、語音命令(VC)和自動語音識別(ASR)性能。  發送路徑:VT/VC,VC和音頻緩衝,ASR預處理:回聲消除(AEC),BF和降噪(NR)  接收路徑:音頻處理算法  語音通話中最多可使用8個麥克風的預處理算法  發送路徑:AEC、NR、EQ、自動增益控制(AGC)  接收路徑:NR、AGC、EQ、揚聲器處理 DSP核心  DBMD7包括三個CEVA-X2 DSP處理器:  雙可編程高頻DSP處理器,運行高達700兆赫。  一個可編程低功耗DSP處理器,運行高達125MHz,用於低泄漏VT、檢測和激活。  每個CEVA-X DSP處理器提供:  程序緊耦合內存(PTCM):64 KB RAM  程序緩存:32 KB  數據緊耦合存儲器(DTCM):64KB RAM  數據緩存:64 KB  3個非矢量中斷,1個矢量中斷,1個NMI  4MB AXI共享RAM  僅限LP處理器的64KB ROM

►方案規格

該方案的MUC,我們採用的是Qualcomm 的QCC3024藍牙晶片,與DSPG的傳輸接口是通過SPI接口,因為SPI的傳輸速度塊而又穩定。 DBMD7支持用於引導和控制的外部主機接口,速度如下:  SPI:高達25 Mbps  I2C:最高3 Mbps  UART:高達6 Mbps DBMD7 DSP核心  DBMD7包括三個CEVA-X2 DSP處理器:  雙可編程高頻DSP處理器,運行高達700兆赫。  一個可編程低功耗DSP處理器,運行高達125MHz,用於低泄漏VT、檢測和激活。  每個CEVA-X DSP處理器提供:  程序緊耦合內存(PTCM):64 KB RAM  程序緩存:32 KB  數據緊耦合存儲器(DTCM):64KB RAM  數據緩存:64 KB  3個非矢量中斷,1個矢量中斷,1個NMI  4MB AXI共享RAM  僅限LP處理器的64KB ROM 安全加速器 對代碼安全保護、身份驗證和回滾保護的安全引導支持提供以下服務:  AES 128代碼解密  基於ECDSA的代碼認證驗證  沙二段(224256)  散列公鑰存儲的OTP(Fuse)處理和使用 QCC3024硬體規格:  90-ball 5.5 x 5.5 x 1.0 mm 0.5 mm pitch VFBGA  藍牙5.1規格、DSP最高頻率120MHz  一路SPI,支持主或從模式,速率高達15.4 Mbps  支持APTX、AAC、SBC codec  三核處理器架構與低功耗應用  輸出支持立體聲