當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式教程
[導(dǎo)讀]麥克風(fēng)陣列信號(hào)采集系統(tǒng)的設(shè)計(jì)

作為傳統(tǒng)的語(yǔ)音拾取工具,單個(gè)孤立麥克風(fēng)在噪聲處理、聲源定位和跟蹤,語(yǔ)音提取和分離等方面存在不足,嚴(yán)重影響了語(yǔ)音通信質(zhì)量。如果使用多個(gè)麥克風(fēng)組成陣列,在時(shí)頻域的基礎(chǔ)上增加一個(gè)空間域,對(duì)來(lái)自空間不同方向的信號(hào)進(jìn)行實(shí)時(shí)處理,就可以彌補(bǔ)上述不足。現(xiàn)在已有的麥克風(fēng)陣列采集處理系統(tǒng)中,大多采用4路麥克風(fēng)陣列,這類(lèi)系統(tǒng)雖然在一定程度上能解決語(yǔ)音增強(qiáng)、噪音抑制、聲源定位和回聲抵消等問(wèn)題,但由于4個(gè)麥克風(fēng)個(gè)數(shù)較少,只能組成一字線(xiàn)陣,十字陣等幾種特定的陣列形狀,三維空間的方向及距離判斷有較大的誤差。設(shè)計(jì)的16通道麥克風(fēng)采集系統(tǒng)能夠組成麥克風(fēng)面陣,彌補(bǔ)了上述不足,較好地解決了三維空間信號(hào)位置判斷的問(wèn)題。

一、硬件系統(tǒng)設(shè)計(jì)

該硬件系統(tǒng)主要包括16路麥克風(fēng)構(gòu)成的陣列、A/D采樣模塊、DSP數(shù)據(jù)處理模塊、PC機(jī),如圖1所示。

 

 

1.1 麥克風(fēng)陣列

該系統(tǒng)中,麥克風(fēng)陣列選用聲望公司的MPA416傳聲器。MPA416傳聲器的靈敏度可達(dá)50 mV/Pa;擁有低本底噪聲;頻率響應(yīng)范圍20 Hz~20 kHz;當(dāng)其用于陣列時(shí),MPA416的相位差能控制在3°~5°,能滿(mǎn)足系統(tǒng)對(duì)精確度和穩(wěn)定性的要求。

1.2 A/D采樣模塊

A/D采樣模塊由4片PCM4204以及其外圍電路組成。PCM4204內(nèi)置了4個(gè)同步采樣通道,支持音頻串口和DSD數(shù)據(jù)口。音頻串口模式時(shí),輸出24位線(xiàn)性PCM碼,有主、被動(dòng)兩種工作模式,支持左、右對(duì)齊,I2S和TDM數(shù)據(jù)格式,動(dòng)態(tài)范圍為118 dB,最高采樣頻率216 kHz。系統(tǒng)選用1片PCM4204采用主動(dòng)工作模式,其余3片PCM4204采用被動(dòng)工作模式。通過(guò)音頻串口將外部采集的模擬聲音信號(hào)轉(zhuǎn)化為24位I2S格式數(shù)字信號(hào)。由于前端麥克風(fēng)陣列的輸出信號(hào)不是差分信號(hào),而PCM4204要求輸入信號(hào)為差分信號(hào),同時(shí)要求輸入差分信號(hào)幅值在-0.3~-0.3+VccV之間,因此其每路信號(hào)的前端都應(yīng)有一個(gè)緩沖電路,用來(lái)將所接收的麥克風(fēng)信號(hào)轉(zhuǎn)換為差分信號(hào)并對(duì)幅值進(jìn)行調(diào)整。緩沖電路主要由OPA1632和OPA22組成,OPA1632和OPA227是高精度、音頻差分放大器,緩沖電路如圖2所示。

 

 

1.3 DSP數(shù)據(jù)處理模塊

設(shè)計(jì)中數(shù)據(jù)處理模塊選擇TI公司浮點(diǎn)DSP芯片TMS320C6713作為模塊核心。TMS320C6713為高性能32位浮點(diǎn)DSP,適用于專(zhuān)業(yè)音頻信號(hào)處理,其主頻可達(dá)300 MHz,處理速度高達(dá)2 400 MIPS/1 800 MFLOPS。其內(nèi)部采用改進(jìn)的哈佛結(jié)構(gòu);具有256 kB的片內(nèi)存儲(chǔ)空間;豐富的外設(shè)包括兩個(gè)多通道緩沖串口(McBSP)、兩個(gè)多通道音頻串口(McASP)、SPI和I2C等;增強(qiáng)的直接存儲(chǔ)器訪(fǎng)問(wèn)(EDMA)控制器,可控制16個(gè)獨(dú)立通道完成不受CPU干預(yù)的數(shù)據(jù)傳輸;32 bit的外部存儲(chǔ)器接口(EMIF),能與SRAM、ERPOM、Flash、SBSRAM和SDRAM無(wú)縫連接。DSP數(shù)據(jù)處理模塊框圖如圖3所示。 其中,TMS320C6713通過(guò)McASP與前端的A/D采樣模塊相連,并利用EDMA數(shù)據(jù)傳輸速度快、傳輸量大,且不占用CPU時(shí)鐘周期的特點(diǎn),將采集數(shù)據(jù)轉(zhuǎn)存至TMS320C6713的片內(nèi)存儲(chǔ)空間。TMS320C6713外接CPLD控制EMIF接口,通過(guò)對(duì)EMIF接口上CE3空間的控制,控制USB芯片CY7C680 01,完成TMS320C6713與PC機(jī)平臺(tái)間的USB數(shù)據(jù)傳輸。

 

 

1.4 A/D采樣模塊與DSP數(shù)據(jù)處理模塊接口設(shè)計(jì)

4片PCM4204芯片與TMS320C6713的McASP1相連接,其連接示意圖如圖4所示。

 

 

圖4中,PCM4204 A采用主動(dòng)工作模式,PCM4204B、PCM4204C和PCM4204D采用被動(dòng)工作模式。系統(tǒng)采用I2S數(shù)據(jù)格式,PCM4204A的SDOUT1輸出的是1和2通道的數(shù)據(jù),SDOUT2輸出的是3和4通道的數(shù)據(jù);PCM4204B的SDOUT1輸出的是5和6通道的數(shù)據(jù),SDOUT2輸出的是7和8通道的數(shù)據(jù);PCM4204C的SDOUT1輸出的是9和10通道的數(shù)據(jù),SDOUT2輸出的是11和12通道的數(shù)據(jù);PCM4204D的SDOUT1輸出的是13和14通道的數(shù)據(jù),SDOUT2輸出的是15和16通道的數(shù)據(jù)。

通過(guò)配置芯片引腳S/M、FMT2、FMT1、FMT0、FS2、FS1和:FS0對(duì)PCM4204進(jìn)行設(shè)置。

1.5 DSP數(shù)據(jù)處理模塊USB接口設(shè)計(jì)

TMS320C6713通過(guò)EMIF的CE3存儲(chǔ)空間可以外擴(kuò)USB2.0接口,因此在對(duì)外擴(kuò)USB進(jìn)行讀/寫(xiě)訪(fǎng)問(wèn)前,需要通過(guò)EMIF的CE3控制寄存器CE3C-TL來(lái)配置CE3空間存儲(chǔ)器接口的類(lèi)型、存儲(chǔ)器寬度及讀寫(xiě)時(shí)序。CY7C68001采用并行異步存儲(chǔ)器接口通過(guò)可編程邏輯芯片CPLD與TMS320C6713相連,其原理框圖如圖5所示。

 

 

CY7C68001除了存儲(chǔ)器接口外,還有1個(gè)中斷信號(hào)

和4個(gè)狀態(tài)信號(hào)

。中斷信號(hào) 采用TMS320C6713的外部中斷EXT_INT6。TMS320C6713使用CY7C68001作為從設(shè)備。在這種模式下,DSP可以像讀/寫(xiě)普通FIFO一樣對(duì)CY7C68001內(nèi)部的FIFO進(jìn)行讀/寫(xiě)。PC主機(jī)發(fā)出命令的同時(shí)也由CY7C68001 的引腳提供中斷觸發(fā)信號(hào)給DSP的EXT_INT6。其上升沿被檢測(cè)到后,DSP就進(jìn)入相應(yīng)中斷服務(wù)程序,開(kāi)始處理USB的傳輸。DSP通過(guò)EA[4:2]連接FIFOA[2:0]對(duì)CY7C68001內(nèi)部FIFO或命令口進(jìn)行選擇。讀/寫(xiě)數(shù)據(jù)通過(guò)ED[15:0]與FIFO[15:0]連接進(jìn)行。FIFO和命令口的選擇和地址分配如表1所示。

 

 

 

經(jīng)實(shí)驗(yàn)驗(yàn)證,USB異步傳輸速率可達(dá)3 Mbit•s-1,滿(mǎn)足系統(tǒng)需求。

1.6 PC機(jī)平臺(tái)

DSP數(shù)據(jù)處理模塊通過(guò)USB接口與PC機(jī)相連,通過(guò)CY7C68001芯片,將前端采集的數(shù)據(jù)傳輸?shù)絇C機(jī),方便對(duì)數(shù)據(jù)的進(jìn)一步處理。

二、 程序設(shè)計(jì)

2.1 McASP接口程序設(shè)計(jì)

定義了4個(gè)寄存器組:全局寄存器組globalRegs、發(fā)送寄存器組xmtRegs、接收寄存器組mvRegs和串行化器控制寄存器組srctlRegs。通過(guò)這4個(gè)寄存器組,對(duì)McASP1的PFUNC,PDIR,SRCTL,RFMT,AFSRCTL,ACLKRCTL及AHCLKRCTL等寄存器進(jìn)行設(shè)置。各寄存器組所包含的主要寄存器情況如表2所示。

 

 

依據(jù)PCM4204的I2S數(shù)據(jù)格式,將接收幀同步信號(hào)的寬度定為32 bit,接收延遲設(shè)置為1個(gè)delay;AXR[0]~AXR[7]設(shè)置為接收模式。

2.2 EDMA傳輸程序設(shè)計(jì)

為保證數(shù)據(jù)的完整性,選用Ping-Pong模式對(duì)EDMA傳輸進(jìn)行配置,Ping緩存存放如表3所示,Pong緩存與Ping緩存結(jié)構(gòu)相同。

 

 

依據(jù)Ping、Pong緩存數(shù)據(jù)格式,對(duì)EDMA接收進(jìn)行配置,即對(duì):EDMA的opt,src,cnt,dst,idx,及rld寄存器分別進(jìn)行設(shè)置。通過(guò)opt寄存器設(shè)置數(shù)據(jù)長(zhǎng)度為32 bit,源數(shù)據(jù)和目的數(shù)據(jù)為一維方式,源地址固定,目的地址采用索引,啟用幀同步等。源地址和目的地址分別寫(xiě)入src,dst寄存器。cnt寄存器主要用于配置幀計(jì)數(shù)和單元計(jì)數(shù)。由于采用I2S的數(shù)據(jù)格式,所以1幀數(shù)據(jù)只包含2個(gè)單元數(shù)據(jù)。通過(guò)配置idex及rld寄存器,目的數(shù)據(jù)可以按照設(shè)定的索引方式存儲(chǔ)。

2.3 DSP端OSB接口程序設(shè)計(jì)

首先,通過(guò)調(diào)用用戶(hù)的初始化函數(shù),使能外部中斷并初始化USB寄存器。之后,程序通過(guò)數(shù)據(jù)傳輸函數(shù),完成DSP與PC機(jī)的數(shù)據(jù)傳輸。

USB初始化程序配置如下:

(1)使能外部中斷6(EXT_INT6)。

(2)加載USB描述表,并進(jìn)行自舉檢測(cè),如自舉不成功,則重新自舉,直到端點(diǎn)0收到設(shè)置包為止。

(3)配置USB為異步從FIFO(Asynchronous SlaveFIFO)模式,采用內(nèi)部48 MHz時(shí)鐘源。

(4)讀取FNADDR寄存器,判斷USB工作狀態(tài)。

(5)依據(jù)USB工作狀態(tài),配置EP2、EP4、EP6、EP8,并設(shè)置一次傳送的Byte長(zhǎng)度。設(shè)置EP2、EP4為BULK OUT,EP6、EP8為BULK IN,其緩沖大小分別為2×512 Byte。

在數(shù)據(jù)傳輸過(guò)程中,PC端通過(guò)EP2向DSP發(fā)送讀數(shù)據(jù)命令,DSP通過(guò)外部中斷收到讀命令后,使用EP6發(fā)送已采集好的數(shù)據(jù)。在聲音數(shù)據(jù)采集系統(tǒng)中,每路麥克風(fēng)以96 kHz進(jìn)行24位采樣,按照ping-pong方式進(jìn)行存儲(chǔ)。在傳輸過(guò)程中還需進(jìn)行判斷,當(dāng)采集數(shù)據(jù)存儲(chǔ)在ping緩存時(shí),發(fā)送pong緩存中的數(shù)據(jù),當(dāng)采集數(shù)據(jù)存儲(chǔ)在pong緩存時(shí),發(fā)送ping緩存的數(shù)據(jù)。由于TMS320C6713通過(guò)EMIF的CE3存儲(chǔ)空間可以外擴(kuò)USB2.0接口,需對(duì)EMIF接口的CE3寄存器進(jìn)行配置,將USB接口設(shè)為16位異步存儲(chǔ)接口,設(shè)定讀/寫(xiě)的建立時(shí)間(Setup)、促發(fā)時(shí)間(Strobe)、保持時(shí)間,使其滿(mǎn)足CY7C68001的讀/寫(xiě)時(shí)序要求。

2.4 PC機(jī)平臺(tái)應(yīng)用程序設(shè)計(jì)

PC端接口程序采用VC++6.0編寫(xiě),首先調(diào)用OpenDriver()打開(kāi)USB接口設(shè)備,獲得設(shè)備的句柄hDevice,之后調(diào)用Sx2SendVendorReq()函數(shù)向外設(shè)發(fā)出命令,讀取USB配置,最后調(diào)用Sx2BulkdataTrans()進(jìn)行數(shù)據(jù)傳輸,通過(guò)調(diào)用CFile類(lèi)將接收到的數(shù)據(jù)存放在文本文件中。程序使用多線(xiàn)程技術(shù),使得應(yīng)用程序?qū)SB數(shù)據(jù)傳輸在后臺(tái)進(jìn)行處理,應(yīng)用程序前臺(tái)還可進(jìn)行其他操作。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀(guān)點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話(huà)語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉