1 / 4
文档名称:

ADSP2116x中DMA的应用.doc

格式:doc   大小:55KB   页数:4页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

ADSP2116x中DMA的应用.doc

上传人:小博士 2018/4/4 文件大小:55 KB

下载得到文件列表

ADSP2116x中DMA的应用.doc

相关文档

文档介绍

文档介绍:ADSP2116x中DMA的应用|第1
摘要:直接内存存取(DMA)是DSP芯片中用于快速数据交换的重要技术,文中对AD公司的浮点系列芯片ADSP2116x中DMA的应用方法作了详细介绍,同时重点介绍了链式DMA的操作方法,给出了一些实际应用中的例子。
关键词:DMA;链式DMA;浮点系列芯片;ADSP2116x
1 DMA概述
直接内存存取(DMA)是计算机系统提高运行效率的一项重要技术。它可以在CPU运行指令的同时,使系统从外部存储器或设备中存取数据,也可以在核心处理器不参与的情况下由专用的DMA设备存取数据。
对于DSP芯片来讲,DMA的作用尤为重要。众所周知,DSP芯片主要面向实时信号处理,其核心运算部件具有很高的运算速度,常以MFLOPS(每秒百万次浮点运算)来衡量。ADSP2116x的速度为600MFLOPS,此速度是以存储在芯片内部存储器中的程序和数据为前提的。在DSP内部,一般采用多总线的哈佛结构,数据总线和程序总线相互独立,即指令的存取和数据的存取并行不悖;另外,在AD- SP2116x内部还有各种接口总线,可用以提高数据的流通能力,而在芯片的外部,所有的总线都被合并在一起了。为了发挥DSP核心运算单元的高速运算能力,必须先把外部数据传输到片内存储器中。使用DMA操作可以减少核心处理器的负担,提高运算速度。另一方面,DSP系统总要与各种外部信号打交道,它从外部输入数字信号,经过各种算法处理后,还要输出给其它外部设备。不仅如此,对于很多应用系统,数据的输入和输出常常是连续不断的。试想,若用DSP的核心部件完成数据的输入和输出,将无法发挥DSP的高速运算能力。而AD公司的ADSP2116x系列则集成了DMA控制器,从而可用DMA来完成数据的输入和输出。
高效的DSP系统通常采用图1所示的结构。该结构的内部带有输入、输出缓冲区,而数据的获得则依靠DMA控制器。这样,核心运算单元就可以专门进行信号处理,而将外界数据的获取交给DMA来完成。
500)(this)">
2 ADSP2116x中的DMA
ADSP2116x中DMA的数据传输类型
ADSP2116x中的DMA包含14条独立通道,可完成下列类型的数据传输操作:
●片内存储器与片外存储器或片外设备之间的传输操作;
●片内存储器与其它ADSP2116x的片内存储器之间的传输操作;
●片内存储器与主处理器之间的传输操作;
●片内存储器与串行口之间的传输操作;
●片内存储器与Link口之间的传输操作;
●片内存储器与SPI口之间的传输操作;
●片外存储器与片外设备之间的传输操作。
ADSP2116x中与DMA有关的寄存器
DMA的编程实际上是通过内部核心处理单元或外部主机对片内有关的I/O寄存器设置来完成的,与DMA有关的I/O寄存器如表1所列。控制寄存器主要用来设置数据传输的方向、数据格式、是否链式等操作;参数寄存器用来设置数据传输的地址、数目等信息;数据缓存器则主要用来缓存传输的数据,以提高数据的传输率。这些I/O寄存器都被映射到片内存储器的前256个地址上。
ADSP2116x中DMA一般传输过程的设置
DMA一般传输过程的设置步骤如下:
(1)设置对应通