<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 淺談OMAP5912在語(yǔ)音采集系統的應用

淺談OMAP5912在語(yǔ)音采集系統的應用

作者: 時(shí)間:2012-01-05 來(lái)源:網(wǎng)絡(luò ) 收藏

0 引 言

本文引用地址:http://dyxdggzs.com/article/149875.htm

信號處理是研究用數字信號處理技術(shù)對信號進(jìn)行處理的一門(mén)新興學(xué)科。信號處理的極為廣泛,其中的主要技術(shù)包括語(yǔ)音編碼、語(yǔ)音合成、語(yǔ)音識別和語(yǔ)音增強等。語(yǔ)音識別就是讓計算機聽(tīng)懂人的話(huà),并做出正確的反應。目前主流的語(yǔ)音識別技術(shù)是基于統計模式識別的基本理論。同時(shí),隨著(zhù)高性能數字信號處理器(Digital Signal Processor,DSP)的日益普及,數字信號處理是將信號以數字方式表示并處理的理論和技術(shù)。數字信號處理與模擬信號處理是信號處理的子集。數字信號處理的目的是對真實(shí)世界的連續模擬信號進(jìn)行測量或濾波。因此在進(jìn)行數字信號處理之前需要將信號從模擬域轉換到數字域,這通常通過(guò)模數轉換器實(shí)現。而數字信號處理的輸出經(jīng)常也要變換到模擬域,這是通過(guò)數模轉換器實(shí)現的。利用DSP對語(yǔ)音信號處理進(jìn)行算法研究和實(shí)時(shí)實(shí)現正成為新的熱點(diǎn)。在此設計并實(shí)現了一種語(yǔ)音。該為語(yǔ)音信號處理的算法研究和實(shí)時(shí)實(shí)現提供一個(gè)通用平臺。

1 芯片簡(jiǎn)介

采用獨特的雙核結構,內含1個(gè)實(shí)現控制功能的帶有TI增強型ARM926EJ—S(簡(jiǎn)稱(chēng)ARM9)內核的處理器和1個(gè)實(shí)現數據處理功能的高性能、低功耗TMS320C55x DSP(簡(jiǎn)稱(chēng)DSP)內核。ARM9處理器可用來(lái)實(shí)現各種通信協(xié)議、通信協(xié)議(communications protocol)是指雙方實(shí)體完成通信或服務(wù)所必須遵循的規則和約定。協(xié)議定義了數據單元使用的格式,信息單元應該包含的信息與含義,連接方式,信息發(fā)送和接收的時(shí)序,從而確保網(wǎng)絡(luò )中數據順利地傳送到確定的地方。通過(guò)通信信道和設備互連起來(lái)的多個(gè)不同地理位置的數據通信,要使其能協(xié)同工作實(shí)現信息交換和資源共享,它們之間必須具有共同的語(yǔ)言。這個(gè)規則就是通信協(xié)議??刂坪腿藱C接口;DSP具有多條數據地址總線(xiàn),非常適合數據密集的多媒體處理,并具有極低的功耗。

TLV320AIC23(簡(jiǎn)稱(chēng)AIC23)是TI推出的一款高性能的立體聲音頻Codec芯片,內置耳機輸出放大器,支持MIC和LINE IN兩種輸入方式(二選一),且對輸入和輸出都具有可編程增益調節。AIC23的模數轉換(ADCs)和數模轉換(DACs)部件高度集成在芯片內部,采用了先進(jìn)的Sigma—delta過(guò)采樣技術(shù),可以在8~96 kHz的頻率范圍內提供16 b,20 b,24 b和32 b的采樣,ADC和DAC的輸出信噪比分別可以達到90 dB和100dB。

2 系統的硬件設計

2.1 系統的硬件結構

語(yǔ)音系統主要包括兩個(gè)模塊:以AIC23為核心的語(yǔ)音模塊;以的DSP為核心的語(yǔ)音數據接收處理模塊。

為使AIC23正常工作在需要的狀態(tài)下,必須通過(guò)I2C總線(xiàn)對其進(jìn)行配置。AIC23采集的語(yǔ)音信號經(jīng)過(guò)A/D轉換后,通過(guò)McBSPl傳送到接收寄存器DRR,然后經(jīng)DMA通道傳送至接收緩沖區。存放在發(fā)送緩沖區的數據,通過(guò)DMA通道傳送到McBSPl的發(fā)送寄存器DXR,DMA---Direct Memory Access,直接內存訪(fǎng)問(wèn),是一種數據傳輸模式。DMA方式下不直接訪(fǎng)問(wèn)CPU,而在RAM與設備之間傳輸,從而大大提高了數據傳輸速度。然后傳送至AIC23,經(jīng)過(guò)D/A轉換后,由HEADPHONE輸出,如圖1所示。

2.2 系統的硬件接口設計

利用的I2C總線(xiàn)和McBSPl完成對AIC23的控制和通信。I2C總線(xiàn)與AIC23的控制口相連,McBSPl與AIC23的數據口相連。AIC23設置為Master模式,向McBSPl提供時(shí)鐘和幀同步信號。McBSPl.DX作為AIC23的輸入通道,McBSPl.DR作為AIC23的輸出通道,如圖2所示。

3 系統的軟件設計

系統的軟件分兩個(gè)方面來(lái)說(shuō)明:主程序和中斷服務(wù)程序。

3.1 主程序

因為OMAP5912為雙核結構,且ARM9為主控制器,所以首先必須在A(yíng)RM9側進(jìn)行OMAP5912的初始化,讓DSP退出復位狀態(tài),這里僅需調用TI提供的OSK5912 Board Support Library中的OSK5912_init()函數即可。然后在DSP側進(jìn)行CPU、I2C總線(xiàn)、McBSPl、DMA的初始化,以及AIC23芯片的配置,如圖3所示。

限于篇幅,在此僅說(shuō)明通過(guò)I2C總線(xiàn)配置AIC23的過(guò)程。AIC23芯片是一個(gè)可編程的芯片,內部有11個(gè)16位寄存器決定芯片的工作狀態(tài)。圖2中的MODE引腳決定控制接口的工作模式:MODE=O為I2C模式,MODE=1為SPI模式。系統采用的是I2C模式,即由DSP通過(guò)I2C總線(xiàn)完成對AIC23的初始化。I2C總線(xiàn)作為ARM9和DSP的共享設備,其使用權由圖1中的寄存器I2C SSW MPU CONF和DSPI2C SSW CONF決定,在默認的情況下由ARM9使用。為了讓DSP能使用I2C總線(xiàn),I2C(Inter-Integrated Circuit)總線(xiàn)是由PHILIPS公司開(kāi)發(fā)的兩線(xiàn)式串行總線(xiàn),用于連接微控制器及其外圍設備。是微電子通信控制領(lǐng)域廣泛采用的一種總線(xiàn)標準。它是同步通信的一種特殊形式,具有接口線(xiàn)少,控制方式簡(jiǎn)單,器件封裝形式小,通信速率較高等優(yōu)點(diǎn)。I2C總線(xiàn)首先發(fā)送AIC23的地址,然后再把相應的AIC23內部映射寄存器的地址和配置參數合并為16位的控制字發(fā)送給AIC23。

3.2 中斷服務(wù)程序

在DSP的RAM空間中定義一個(gè)接收緩存數組Rxbuffer[]和發(fā)送緩存數組Txbuffer[],一個(gè)接收標志RxFlag和一個(gè)發(fā)送標志TxFlag。為了防止出現在執行中斷服務(wù)程序的時(shí)候,接收的新數據將緩存區未取走的數據覆蓋,將緩存數組分為上下兩部分,CPU在處理其中一個(gè)部分的時(shí)候,DMA自動(dòng)操作另一部分,如圖4(a)所示。

該語(yǔ)音采集系統以中斷的方式工作,在工作的過(guò)程中,會(huì )產(chǎn)生兩個(gè)中斷:DMA接收中斷;DMA發(fā)送中斷。以DMA接收中斷為例來(lái)說(shuō)明中斷服務(wù)程序。

當產(chǎn)生DMA接收中斷時(shí),首先判斷RxFlag的值,若為O,則取接收數組Rxbuffer下半部分的數據作進(jìn)一步的處理,同時(shí)置RxFlag為1;若為1,則取接收數組Rxbuffer上半部分的數據作進(jìn)一步的處理,同時(shí)置RxFlag為O,然后退出中斷服務(wù)程序,進(jìn)入主程序,等待中斷的再次產(chǎn)生,如圖4(b)所示。

4 仿真驗證

為了驗證設計的可行性,對該系統進(jìn)行了仿真測試。仿真軟件為CCS(Code Composer Studio)2.21。系統由硬件仿真器TDS560USB通過(guò)JTAG仿真接口與計算機相連,用戶(hù)可以通過(guò)該接口向OMAP5912芯片加載程序并觀(guān)察芯片內部存儲器的數據,完成系統仿真及程序調試的任務(wù)。

在A(yíng)RM和DSP側分別加載程序編譯后生成的。out文件,然后運行。經(jīng)配置后的AIC23從MIC IN輸入語(yǔ)音信號,并對其進(jìn)行8 kHz,16 b的采樣。不考慮圖4(a)中的信號處理過(guò)程,將采集到的語(yǔ)音直接送回AIC23芯片,經(jīng)D/A后,由HEADPHONE輸出,此時(shí),聽(tīng)到的正是輸入的語(yǔ)音信號。

5 結 語(yǔ)

根據TI公司的OMAP5912和CODEC芯片TLV320AIC23的特性,根據TI公司的設計并實(shí)現了一種基于OMAP5912的語(yǔ)音采集系統。在該系統中,DMA通道結合McBSP的使用,可以大大減少CPU的工作量,簡(jiǎn)化軟件設計,有效地利用DSP的硬件資源,提高系統的執行效率。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>