您当前的位置:五五电子网电子知识单片机-工控设备DSP/FPGA技术DMA在实时图像处理中的应用(二) 正文
DMA在实时图像处理中的应用(二)

DMA在实时图像处理中的应用(二)

点击数:7384 次   录入时间:03-04 11:59:12   整理:http://www.55dianzi.com   DSP/FPGA技术

.1 块移动

块移动能够将1块连续数据块从一个地址传输到另一个地址,通常用于将数据或程序从外部存储器移到内部存储器。这种块移动是最简单、最常见的DMA工作方式。例如,将1块1K连续的32位数据块从外存(0x02000000)移动至内存(0x80000000),如图1所示。

相关寄存器的值设置:

Primary control register =0x00000050

Transfer control register =0x00000400

Source control register =0x02000000

Destination control register =0x80000000

其中主控寄存器各控制域设置与意义如下:

DST RELOAD =00 无目标地址重载

SRC RELOAD =00 无源地址重载

EMOD =0

FS =0 无帧同步

TCINT =1 允许中断

PRI =1 DMA优先

WSYNC =00000 无读同步

RSYNC =000 无写同步

RSYNC =00 无写同步

FRAME COUNT =0X000

ELEMENT COUNT =0X0400

INDEX =0 全局计数重载寄存器A

CNT RELOAD =0 全局计数重载寄存器A

SPLIT =00 无分裂地址

ESIZE =00 数据单元4BYTES

DSTDIR =11 索引寄存器方式

SRCDIR =01 地址递增

STATUS =00此位只读

START =00 DMA停止

在主控寄存器的START读中写入01b就可以开始DMA的传输。

3.2 数据重排

往往数据的格式并不符合运算的要求。在这种情况下,可以通过DMA进行数据重新排列,以满足运算的要求。数据重排主要是利用DMA的帧传输方式。数据重排所必需的、最关键的一步是设置全局寄存器,所以,以下讨论的重点就是全局寄存器的设置。

3.2.1 求矩阵转置

图2显示了将一个位于外存16bit的连续数据区,开始地址(0x02000000),数据重排并移至片内存储区,首地址为(0x80000000)前后的排列情况。




本文关键字:暂无联系方式DSP/FPGA技术单片机-工控设备 - DSP/FPGA技术