DMA在实时图像处理中的应用
stinationcontrolregister)——传输的目的地址;
此外,DMA通道可以使用以下全局DMA寄存器,以完成比较复杂的传输过程:
*全局地址寄存器组(globaladdressregisterA、B、C和D);
*全局索引寄存器组(globalindexregisterA和registerA和B)。
全局地址寄存器组共有4个32位寄存器,其作为分裂地址或地址重载值。全局索引寄存器2个32位寄存器。每个寄存器含2个控制域,其中高16位为帧索引域(FRAMEINDEX),其值为帧间的地址偏移量,也就是传输完1帧后,地址的调整量;低16位为数据单元索引域(ELEMENTINDEX),其值为帧内地址偏移量,也就是每传输完1个数据单元的地址调整量。全局计数重载计数器与全局索引寄存器结构一样,用于重载DMA通道的传输计数寄存器。全局DMA寄存器可以为任意DMA通道使用,而且同一寄存器可以同时被一个以上的DMA通道使用。
2.2DMA工作过程简介
DMA是十分复杂的系统,限于篇幅,这里只简要介绍DMA的工作过程。
在C6000系列DMA中,把所传输的一定数量的数据单元(ELEMENT)称为帧(FRAME),帧的大小由传输计数寄存器的低16位数据即单元计数域(ELEMENTCOUNT)指定,该寄存器的值通过传输计数寄存器的高16位即帧计数域(FRAMECOUNT)指定。当完成1次DMA读操作,ELEMENTCOUNT值自动域1;当最后1个数据单元读操作完成时,FRAMECOUNT自动减1,此时ELEMENTCOUNT的
值将被全局计数重载寄存器的ELEMENTCOUNT更新;当最后1帧的读操作完成后,传输计数寄存器将被全局计数重载寄存器的值更新。
DMA控制器负责对每个通道的读写传输进行地址计算。在计算机传输地址时,有基本调整和使用全局索引寄存器进行调整2种方式:基本调整是指通过控制域SRCDIR和DSTDIR来设置传输地址,按数据字长大小(由ESIZE控制)递增、递减或保持不变;而使用全局索引寄存器调整与基本调整不同,这种模式下,根据传输的数据元素是否当前帧的最后一个来进行地址调整。
在全局索引寄存器调整模式下,地址调整值由全局索引寄存器控制。全局索引寄存器含2个控制域,其中高16位为帧索引域(FRAMEINDEX),其值为帧间的地址偏移量,也就是传输完1帧后的地址调整量;低16位为数据单元索引域(ELEMENTINDEX),其值的帧内地址偏移量,也就是每传输完1个数据单元的地址调整量。
3几种典型的DMA操作及其应用
3.1块移动
块移动能够将1块连续数据块从一个地址传输到另一个地址,通常用于将数据或程序从外部存储器移到内部存储器。这种块移动是最简单、最常见的DMA工作方式。例如,将1块1K连续的32位数据块从外存(0x02000000)移动至内存(0x80000000),如图1所示。
相关寄存器的值设置:
Primarycontrolregister=0x00000050
Transfercontrolregister=0x00000400
Sour 《DMA在实时图像处理中的应用(第2页)》
本文链接地址:http://www.oyaya.net/fanwen/view/168593.html
此外,DMA通道可以使用以下全局DMA寄存器,以完成比较复杂的传输过程:
*全局地址寄存器组(globaladdressregisterA、B、C和D);
*全局索引寄存器组(globalindexregisterA和registerA和B)。
全局地址寄存器组共有4个32位寄存器,其作为分裂地址或地址重载值。全局索引寄存器2个32位寄存器。每个寄存器含2个控制域,其中高16位为帧索引域(FRAMEINDEX),其值为帧间的地址偏移量,也就是传输完1帧后,地址的调整量;低16位为数据单元索引域(ELEMENTINDEX),其值为帧内地址偏移量,也就是每传输完1个数据单元的地址调整量。全局计数重载计数器与全局索引寄存器结构一样,用于重载DMA通道的传输计数寄存器。全局DMA寄存器可以为任意DMA通道使用,而且同一寄存器可以同时被一个以上的DMA通道使用。
2.2DMA工作过程简介
DMA是十分复杂的系统,限于篇幅,这里只简要介绍DMA的工作过程。
在C6000系列DMA中,把所传输的一定数量的数据单元(ELEMENT)称为帧(FRAME),帧的大小由传输计数寄存器的低16位数据即单元计数域(ELEMENTCOUNT)指定,该寄存器的值通过传输计数寄存器的高16位即帧计数域(FRAMECOUNT)指定。当完成1次DMA读操作,ELEMENTCOUNT值自动域1;当最后1个数据单元读操作完成时,FRAMECOUNT自动减1,此时ELEMENTCOUNT的
值将被全局计数重载寄存器的ELEMENTCOUNT更新;当最后1帧的读操作完成后,传输计数寄存器将被全局计数重载寄存器的值更新。
DMA控制器负责对每个通道的读写传输进行地址计算。在计算机传输地址时,有基本调整和使用全局索引寄存器进行调整2种方式:基本调整是指通过控制域SRCDIR和DSTDIR来设置传输地址,按数据字长大小(由ESIZE控制)递增、递减或保持不变;而使用全局索引寄存器调整与基本调整不同,这种模式下,根据传输的数据元素是否当前帧的最后一个来进行地址调整。
在全局索引寄存器调整模式下,地址调整值由全局索引寄存器控制。全局索引寄存器含2个控制域,其中高16位为帧索引域(FRAMEINDEX),其值为帧间的地址偏移量,也就是传输完1帧后的地址调整量;低16位为数据单元索引域(ELEMENTINDEX),其值的帧内地址偏移量,也就是每传输完1个数据单元的地址调整量。
3几种典型的DMA操作及其应用
3.1块移动
块移动能够将1块连续数据块从一个地址传输到另一个地址,通常用于将数据或程序从外部存储器移到内部存储器。这种块移动是最简单、最常见的DMA工作方式。例如,将1块1K连续的32位数据块从外存(0x02000000)移动至内存(0x80000000),如图1所示。
相关寄存器的值设置:
Primarycontrolregister=0x00000050
Transfercontrolregister=0x00000400
Sour 《DMA在实时图像处理中的应用(第2页)》