您好,  [请登录] [QQ登录]  [支付宝登录[免费注册]

商品分类

分享到: 百度搜藏 搜狐微博 新浪微博 腾讯微博 QQ收藏 人人网 Facebook Twitter

ARM+DSP实现AIC23音频处理系统

发布日期:2011-06-02

     dsp数字音频处理器   arm dsp   arm dsp双核   arm和dsp   dsp arm fpga 
dsp与arm的区别   arm dsp gpu   arm和dsp区别   基于arm9和dsp   dsp和arm 音频处理

1  小序

  随着谋略机技能、电子技能和通讯技能的迅猛生长,音频处理惩罚技能也在浩繁范畴得到遍及应用。如通讯范畴中的手机、IP德律风,斲丧类电子产品中的MP3和CD播放器以及控制范畴中的语音辨认、声控体系等[1]。针对DSP强大的数字信号处理惩罚本领和ARM处理惩罚器精良的及时性能,连合音频编解码芯片TLV320AIC23的接口特点,本文叙述了由三者构成的音频处理惩罚体系的硬件接口计划和软件编程,提供了有效和实用的音频处理惩罚体系方案。

  TLV320AIC23(简称AIC23)是TI公司的一款高性能三维声音频编解码器Codec芯片。其内部集成的模数转换器(ADCs)和数模转换器(DACs)采取了带有过采样数字插补滤波的多位Sigma-Delta技能。数据传输字长为16、20、24、32位,支持采样频率范畴8kHz至96kHz。ADC和DAC的信噪比分别到达90dB和100dB。内置耳机输出放大器,支持MIC和LINE IN两种输入方法,且对输入和输出都具有可编程增益调理。别的,AIC23功耗低,回放模式下功率仅为23mW,省电模式下更是小于15uW。因此,AIC23成为数字音频应用

范畴中的抱负选择[2],在多种数码产品中发挥着紧张作用,比较典范的应用如手机、MP3、DV摄像机中的音频编解码。

  TMS320VC5402(简称VC5402)是TI公司的一款良好16位定点DSP,运算速率快,指令实行速率到达100MIPS。自带片内存储器和多种片上外设,遍及应用于语音编解码和通讯范畴[3]。

  S3C4510B(简称4510B)是Samsung公司的一款低本钱、高性能的16/32位精简指令集微控制器,其风雅的ARM7TDMI内核以及通用微处理惩罚器宏单位使其成为用户定制应用开辟的抱负选择[4]。

  2  体系硬件计划

  本音频处理惩罚体系重要由前述三个处理惩罚芯片构成:ARM控制单位,DSP信号处理惩罚单位以及AIC23音频征求单位。体系原理框图如图1。

基于<aDSP和ARM的音频处理惩罚体系原理框图 src="http://image.mcuol.com/News/070807194755090.gif" />

  图1  基于DSPARM的音频处理惩罚体系原理框图

  AIC23是可编程芯片,内部有11个16位寄存器,编程设置这些寄存器可得到所需的采样频率、输入输出增益和传输数据格局等。该控制接口有SPI和I2C两种事变模式,由芯片上的MODE引脚举行选择:MODE=0为I2C模式,MODE=1为SPI模式。因ARM 4510B上也有I2C接口,故选用I2C模式。AIC23的I2C接口地点由 引脚的状态决定, =0时地点为0011010, =1时地点为0011011。此中SDIN与SDA为数据线,SCLK与SCL为串行时钟线。VC5402有两个多通道缓冲串口,选用此中的McBSP0与AIC23举行通讯,信号连接如图1所示。图中AIC23事变在主模式,时钟信号、DAC和ADC的帧同步信号BFSX0和BFSR0都由AIC23提供。而DSP VC5402与ARM 4510B的通讯是通过DSP上的HPI接话柄现的。

  3  体系软件计划

  体系由ARM体系和DSP体系两大部分构成,ARM作为主控制器办理整个体系的事变进程,运行相干的应用步伐,可对多个任务举行调理,完成与外部DSP体系或其他外设的通讯。DSP则重要完成音频数据的征求和信号处理惩罚,并将处理惩罚后的数据发送给ARM提供用步伐调用。如许的计划可以大大进步体系的事变服从,这也是当前嵌入式体系,各移动手持配置如PDA、手机等的典范计划方案。

  这里详细要做的是对AIC23的控制接口编程,使其事变在所需的模式下。然后初始化DSP的McBSP,举行AD、DA转换和数据处理惩罚。

  3.1  ARM编程部分

  体系中对ARM的编程重要涉及对AIC23的初始化,使其进入正常事景况态,对音频数据举行征求和处理惩罚。这必要设置4510B的I2C总线特别成果寄存器:控制状态寄存器IICCON、预分频寄存器IICPS和移位缓冲寄存器IICBUF,寄存器相干阐明见表1[5]。

  表1  4510B I2C总线特别成果寄存器
4510B i2c总线特别成果寄存器

  AIC23的11个控制寄存器相干设置的细致形貌拜见文献2。这里的设置为:左右声道线路输入静音;耳机左右声道音量为6dB;使能DAC,麦克风音量为20dB作为ADC输入;使能ADC高通滤波;芯片各部分电路供电使能;芯片事变在主模式,采样数据长度16位,采取DSP数据格局(同步帧后跟随两个数据字);采样率88.2KHz(外部晶振为11.2896MHz);使能数字接口。

    对AIC23编程时的I2C总线时序如图2所示。设置好I2C的时钟频率后,起首发送开始条件(SCLK为高电平常,SDI从高电平向低电平切换),然后发送AIC23的器件地点,器件地点发出后发送AIC23相应寄存器的地点,再发送对该寄存器设置的数据,末了发送克制条件(SCLK为高电平常,SDI从低电平向高电平切换)。细致,这里的寄存器地点为7位,寄存器数据为9位,而I2C总线以字节为单位发送数据。因此在对AIC23的寄存器编程时,第一个字节包括了前7位的寄存器地点B15-B9以及设置数据的最高位B8,第二个字节为设置数据的后8位B7-B0。

I2C时序

 

  图2  I2C时序

  3.2  音频数据征求与播放

  初始化AIC23后,再初始化DSP以及McBSP0,之掉队行音频数据的征求与播放。通过麦克风征求语音信号,颠末数字滤波处理惩罚后由耳机输出。利用McBSP0的吸取停止生存数据,通过FIR数字滤波子步伐处理惩罚音频数据。步伐流程如图3所示。

音频数据处理惩罚步伐流程图

  图3  音频数据处理惩罚步伐流程图

  初始化McBSP0使其与AIC23和谐事变,这里要根据硬件计划和软件请求来配置McBSP0的各个控制寄存器。本体系中串口的重要设置为:吸取数据右对齐,带标记扩展;吸取停止使能;由片外提供发送、吸取帧信号和发送、吸取时钟信号;发送、吸取帧同步信号低电平有效;在时钟上升沿采样发送、吸取数据;每帧发送、吸取两个16位字数据[6]。

  数据吸取部分可在DSP停止步伐中用如下语句实现:

  mvkd      drr10,*ar5                    ;生存数据

  pshd       *ar5+%                 ;数据压入堆栈

  popd       new_ad                 ;从堆栈弹出数据到自定义的寄存器

  FIR滤波的相干步伐如下:

  ld     new_ad,a               ;新数据加载至累加器

  stm  #1,ar0                          ;双操纵数增量

  stm  #N,bk                          ;设置循环缓冲区长度,即FIR滤波级数(N为滤波级数)

  stl    a,*ar3+%                     ;新数据送至ar3指向的缓冲区

  rptz  a,#(N-1)                ;重复实行N-1级的乘加运算

  mac *ar2+0%,*ar3+0%,a             ;ar2为系数指针,结果在累加器高位中

sth   a,temp                          ;生存谋略结果

 

  ld     temp,a                          ;结果放入累加器低位

  … …

  stlm a,dxr10                 ;将累加器职位地方中的数据送至串口发送寄存器

  … …

  基于前述对AIC23和DSP的相应设置,采取21级系数对称FIR数字滤波,对经过麦克风输入的语音信号举行滤波处理惩罚,滤波结果由耳机输出,实际结果精良。所征求到的音频数据还可通过HPI接口发送至ARM提供用步伐调用。

  3.3  语音辨认应用测试

  语音辨认的基源头根本理是对语音信号举行特性提取。如今常用的语音辨认算法有基于模式立室的动态时间规正法(DTW: Dynamic Time Warping)、基于统计模型的隐马尔柯夫模型法(HMM: Hidden Markov Model)以及基于神经网络的辨认法(DNN、NPN、TDNN)等[7]。为便于体系应用测试,本文采取一种最浅显的要领对体系举行调试,即对英文元音的辨认。基源头根本理是提取元音字母的频率特性,各元音在其频域相应中都有三个明显的共振峰频率,而最容易辨认的是第一共振峰,由此可举行有效的元音辨认。在提取第一共振峰频率特性时采取“零交越”法(统计单帧信号波形穿越零点的次数——过零率),将信号频率特性的阐发转换为时域阐发,谋略得到的过零率与理论值举行比较即可实现元音的辨认。图4所示分别为元音“A”的时域和频域图。

元音A的时域图 和频域图

  图4  元音A的时域图 和频域图

  由频域采样图可以看到很明显的第一共振峰,此时谋略时域采样中信号的过零率可较为正确的辨认元音A,过零率的谋略中雷同便是零的采样点通常是薄弱的滋扰,可以马虎不计。经历证,这种浅显单位音辨认法的辨认率在80%以上,由此证明本体系音频处理惩罚的实用性。

  4  结束语

  本文叙述了基于信号处理惩罚和嵌入式应用的音频处理惩罚体系的计划和实现。叙述了体系的硬件计划、软件编程及其应用。通过ARM对音频芯片AIC23的控制和DSP与AIC23的通讯,实现了音频信号征求、处理惩罚、输出的成果以及大略的语音辨认。构建了基于ARMDSP的音频处理惩罚体系应用框架,对进一步的数据处理惩罚、控制应用等提供了确切可行的软硬件方案。

  参考文献

  1    张大波. 嵌入式体系原理、计划与应用. 北京:机器产业出版社,2004.11
  2    TLV320AIC23, Stereo Audio CODEC, 8- to 96-kHz, With Integrated Headphone Amplifier. Texas Instruments Incorporated, 2002
  3    TMS320VC5402, Fixed-Point Digital Signal Processor. Texas Instruments Incorporated, 2000
  4    S3C4510B User’s Manual. Samsung Electronics, 2001
  5    李驹光. ARM应用体系开辟详解:基于S3C4510B的体系计划. 北京:清华大学出版社, 2004
  6    TMS320C54xx McBSP to TLV320AIC24 Interface. Texas Instruments Incorporated, 2003
  7    黄涛,胡宾.基于SPCE061A单片机的非特定人语音辨认计划.微谋略机信息,2006,3-2:19-20