新闻中心

EEPW首页>嵌入式系统>设计应用> 基于DSP双路音频信号实时处理系统设计

基于DSP双路音频信号实时处理系统设计

作者: 时间:2011-08-25 来源:网络 收藏

在DMA应用中,可以赋予每个通道的bit流高低的优先级。每个DMA通道的同步事件为MCBSP串口收发事件,同时每个通道某个事件完成后可向CPU发送一个中断。用户可以编写代码修改寄存器配置,当DMA在进行数据传输时,只要用户使能该通道,就可将配置寄存器复制到工作寄存器中。另外DMA支持自动初始化模式,可以在块传输过程中反复复制,连接示意图如图2所示。

本文引用地址://m.amcfsurvey.com/article/150302.htm

c.jpg



2 软件系统
方案中两路麦克风输入数据,两路耳机输出数据。在此给出一路的接收发送过程,另一路思路相同。
在DARAM中开辟缓冲和单元,数据传输均采用DMA独立于CPU的方式。CPU只有在接收DMA触发中断后对数据进行,并将处理后数据拷贝到DMA发送缓冲。为保证整个传输过程中无数据丢失,DMA接收端采用半帧中断的方式接收数据。在数据载入过程中,可以选择两个区域进行操作,将数据区分为receive1与receive2用于保存载入的数据,同时开辟程序运行区process1和process2用于运行程序。当receive区域触发半帧中断,CPU读取receive1中的数据并将其复制到process1中,调用处理函数proc1,在CPU进行相关处理时,DMA继续将数据载入receive2,其满时触发整帧中断,DMA自动初始化将receive1覆盖。CPU此时即可将receive2中的数据复制到process2中,调用处理函数proc 2,这样receive区域交替更新,即可实现程序的不间断运行。
每次中断服务程序的运行时间必须小于半帧中断的间隔时间。此方案可以保证系统的延时足够小。在使用该方案时,用户必须根据自己的需要合适的采样频率和缓冲数据区的大小。为提高系统稳定性,实验可以根据要求设计中断的优先级。系统软件设计如图3所示。

d.jpg



3 结束语
系统采用VC5509作为核心处理器,充分利用了片上资源,采用独立于CPU的DMA实现了数据的采集处理以及发送,降低了总线占用率。设计的可更新缓冲区不仅符合DMA传输要求而且避免了数据丢失,更新减少了数据空间的浪费。另外该系统具有低功耗、稳定性高的特点,可以根据用户需求进一步扩展。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭