国产一区二区三区三州86295_视频一区二区国产_国产日韩综合导航_日韩亚洲大尺度高清

你的位置:首頁 > EMC安規(guī) > 正文

麥克風陣列信號采集系統(tǒng)的設計

發(fā)布時間:2012-11-26 責任編輯:sherryyu

【導讀】介紹了基于TMS320C6713的信號采集處理系統(tǒng)。該系統(tǒng)以TMS320C6713作為核心控制器,通過多通道音頻串行口(McASP)與A/D芯片PCM4204連接。系統(tǒng)充分利用McASP接口多通道的特點,設計了16通道麥克風陣列采集處理平臺,并通過外擴USB芯片與PC主機端進行數(shù)據(jù)傳輸,方便用戶在PC端進行數(shù)據(jù)處理。該系統(tǒng)采樣數(shù)據(jù)量大、同步性強、精確度高、傳輸速率快、可靠性好,方便為各種麥克風陣列應用提供原始數(shù)據(jù)。

 

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

一、硬件系統(tǒng)設計

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

圖片

 1.1  麥克風陣列

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

1.2  A/D采樣模塊

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

圖片 

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

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

圖片

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

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

 圖片

圖4中,PCM4204 A采用主動工作模式,PCM4204B、PCM4204C和PCM4204D采用被動工作模式。系統(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ù)。
通過配置芯片引腳S/M、FMT2、FMT1、FMT0、FS2、FS1和:FS0對PCM4204進行設置。

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

 TMS320C6713通過EMIF的CE3存儲空間可以外擴USB2.0接口,因此在對外擴USB進行讀/寫訪問前,需要通過EMIF的CE3控制寄存器CE3C-TL來配置CE3空間存儲器接口的類型、存儲器寬度及讀寫時序。CY7C68001采用并行異步存儲器接口通過可編程邏輯芯片CPLD與TMS320C6713相連,其原理框圖如圖5所示。 

圖片

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

圖片

 經(jīng)實驗驗證,USB異步傳輸速率可達3 Mbit•s-1,滿足系統(tǒng)需求。

1.6 PC機平臺

DSP數(shù)據(jù)處理模塊通過USB接口與PC機相連,通過CY7C68001芯片,將前端采集的數(shù)據(jù)傳輸?shù)絇C機,方便對數(shù)據(jù)的進一步處理。
[page]
二、 程序設計

2.1 McASP接口程序設計

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

 圖片

依據(jù)PCM4204的I2S數(shù)據(jù)格式,將接收幀同步信號的寬度定為32 bit,接收延遲設置為1個delay;AXR[0]~AXR[7]設置為接收模式。
 
2.2 EDMA傳輸程序設計

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

 圖片

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

2.3 DSP端OSB接口程序設計

 首先,通過調(diào)用用戶的初始化函數(shù),使能外部中斷并初始化USB寄存器。之后,程序通過數(shù)據(jù)傳輸函數(shù),完成DSP與PC機的數(shù)據(jù)傳輸。
 USB初始化程序配置如下:
(1)使能外部中斷6(EXT_INT6)。
(2)加載USB描述表,并進行自舉檢測,如自舉不成功,則重新自舉,直到端點0收到設置包為止。
 (3)配置USB為異步從FIFO(Asynchronous SlaveFIFO)模式,采用內(nèi)部48 MHz時鐘源。
(4)讀取FNADDR寄存器,判斷USB工作狀態(tài)。
 (5)依據(jù)USB工作狀態(tài),配置EP2、EP4、EP6、EP8,并設置一次傳送的Byte長度。設置EP2、EP4為BULK OUT,EP6、EP8為BULK IN,其緩沖大小分別為2×512 Byte。
 在數(shù)據(jù)傳輸過程中,PC端通過EP2向DSP發(fā)送讀數(shù)據(jù)命令,DSP通過外部中斷收到讀命令后,使用EP6發(fā)送已采集好的數(shù)據(jù)。在聲音數(shù)據(jù)采集系統(tǒng)中,每路麥克風以96 kHz進行24位采樣,按照ping-pong方式進行存儲。在傳輸過程中還需進行判斷,當采集數(shù)據(jù)存儲在ping緩存時,發(fā)送pong緩存中的數(shù)據(jù),當采集數(shù)據(jù)存儲在pong緩存時,發(fā)送ping緩存的數(shù)據(jù)。由于TMS320C6713通過EMIF的CE3存儲空間可以外擴USB2.0接口,需對EMIF接口的CE3寄存器進行配置,將USB接口設為16位異步存儲接口,設定讀/寫的建立時間(Setup)、促發(fā)時間(Strobe)、保持時間,使其滿足CY7C68001的讀/寫時序要求。

2.4 PC機平臺應用程序設計

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

要采購麥克風么,點這里了解一下價格!
特別推薦
技術文章更多>>
技術白皮書下載更多>>
熱門搜索
LED驅(qū)動IC LED驅(qū)動模塊 LED散熱 LED數(shù)碼管 LED數(shù)字調(diào)光 LED顯示 LED顯示屏 LED照明 LED照明設計 Lightning Linear Litepoint Littelfuse LTC LTE LTE功放 LTE基帶 Marvell Maxim MCU MediaTek MEMS MEMS傳感器 MEMS麥克風 MEMS振蕩器 MHL Micrel Microchip Micron Mic連接器
?

關閉

?

關閉