首页|嵌入式系统|显示技术|模拟IC/电源|元件与制造|其他IC/制程|消费类电子|无线/通信|汽车电子|工业控制|医疗电子|测试测量
首页 > 分享下载 > 嵌入式系统 > TI DSP速成讲义6

TI DSP速成讲义6

资料介绍
速成讲义

TI C54xx DSP 十天速成讲义 <六>  

实验六 DMA实验
实验目的:学习DMA的原理的使用方法
实验内容:用DMA方法接收McBSP接口语音芯片的数据


DMA是直接存储器存取,是一种传送不占用CPU处理时间的大批量数据传送的有效方式
。我们用以下实例来说明它的应用:


如果我们要做一个音频处理系统,需要连续用McBSP接口的语音芯片采集若干个样本进
行处理,比如频谱分析、音频压缩等。本例假设要每采集256个样本进行一次处理。上例
用的是查询方式,占用了所有CPU资源。可以用中断方式,结合前面的实验不难做到,请
同学们自行完成。在这个实验中我们将介绍一个更有效的DMA传送方式。我们比较一下用
中断方式和DMA方式的效率有何不同:
一、中断方式:每当中缓冲串口接收一个16bit样本的数据,触发一次串口接收中断,将
数据转移到一个256
word的数据接收缓冲区并计数。当计数达到256个,即缓冲区满时,将256个数据转移到
数据处理存储区,并通知主程序进行处理。


二、DMA方式:我们使用一个通道自动接收McBSP传来的数据并存入接收缓冲区,当缓
冲区满时触发DMA中断,将256个数据传送到数据处理存储区,传送完毕触发通知主程序
进行处理。


由上比较可见,每接收一批样本,用中断方式将触发256次中断,也就是主程被打断2
56次去接收数据。而用DMA方式,只在全部256个样本全部接收完毕时发生一次中断,这
时主程序应该已经处理完上一批的数据。
进一步考虑,当数据处理完毕后还需要将数据送走,这时又可以采用另一个DMA通道完成
这个任务,将CPU释放出来等待进行下一批样本的处理。


事实上DMA传送并非比用CPU直接处理快,例如在内部存贮器之间传送时,用CPU需要2
cycle/word,而用DMA要4cycle/word。
标签:dsp讲义
TI DSP速成讲义6
本地下载

评论