EDMA简介_jjydatougrace的空间_百度空间

1.Characteristics

􀂙 EDMA控制器可以独立于CPU处理L2 Cache/SRAM和C64x外设之间的数据传输,包括:Cache服务、非Cache存储器存取、用户编程的数据传输和主机(host)存取
􀂙 C64x EDMA增强至64个通道(C6211/C6711EDMA为16通道,C6201/C6701为4通道DMA)
􀂙 带有可编程的优先权和链接(Link)和连接(Chain)数据传输能力
􀂙 可在C64x可寻址的存储器不同地址间(包括L2 SRAM、外设和外部存储器)传输数据
􀂙 所谓“通道”并不是指物理传输通道(EDMA控制器、DMA总线),而是指不同内容(传输源地址、目的地址、传输数量、触发方式等)的DMA传输。用户在系统初始化时可事先设置好许多不同的DMA通道,以便实际运行时可以一个接一个地进行不同的DMA传输,而不必临时再设置通道。因此通道数越多
,DMA能力越强。

2.Start Mechanisms

􀂙 CPU启动(非同步的EDMA):CPU通过写相应寄存器来启动一个EDMA
􀂙 由事件触发的EDMA:许多事件(如HPI、DSP中断、定时器中断、外部中断、McBSP发送中断、McBSP接收中断、另一个EDMA传输结束等)均可触发相应通道的EDMA传输。但事件必须要由CPU通过相应寄存器来使能。为同步的EDMA。

3.Controller

EDMA控制器由以下部分组成:
􀂙 事件和中断处理寄存器
􀂙 事件编码器
􀂙 参数RAM
􀂙 硬件地址产生器
事件寄存器完成对EDMA事件的捕获、控制。若有多个事件同时发生,由事件编码器对它们进行处理(将同时发生的事件进行排队)。
参数RAM存放与事件相关(各通道)的传输参数;这些参数送入硬件地址发生器以产生对EMIF/外设的存取地址。

4.Terminology

􀂋 Element(元素)传输:单个数据(8、16、32bit)从源到目的传输。若需要,每个element传输均可由同步事件触发。
􀂋 Frame(帧)传输:一组element组成一帧,一帧中的各element在存储器中可以是相邻连续存放的,也可以是间隔存放的。帧传输可受同步事件控制,也可不受同步事件控制。帧一般多用于1
维传输中。
􀂋 Array(阵列)传输:一组连续的element组成一个阵列,在array中element不允许间隔存放。阵列传输可受同步事件控制,也可不受其控制。
􀂋 Block(块)传输:多帧或多个array的数组组成一个数据块。启动可为同步或非同步方式。

5。Transfer Types

􀂋 1D:多个数据帧组成一个1维传输块,块中帧个数可为1-65535。
􀂋 2D:多个数据阵列组成一个2D传输块。第1维是阵列中的element,第2维是阵列个数,块中阵列个数可以为1-65535。

6。Link&Chain

Link:
可将不同的EDMA传输参数组链接起来,组成一个传输链,为同一个通道服务。在传输链中,一个传
输的结束会导致自动从参数RAM中装载下次传输需要的传输参数,开始下一次传输。
Chain:
由一个EDMA通道传输的结束触发另一个EDMA通道的传输。

7。QDMA

􀂋 QDMA(即快速DMA): 在某些应用中,需要由CPU执行的代码直接控制一段数据搬移,采用QDMA非常合适
􀂋 QDMA支持几乎所有的EDMA传输方式,但提交传输申请的速度比EDMA要快得多
􀂋 QDMA操作由两组存储器映射寄存器进行控制
􀁺 {dy}组五个寄存器,定义了QDMA传输参数(与EDMA参数RAM中的内容相似)
􀁺 第二组五个寄存器是{dy}组寄存器的伪映射(pseudo-mapping)借助于它来实现QDMA存取性能的优化
􀂋 QDMA控制器还有许多机制保证提交DMA申请时的高速率



郑重声明:资讯 【EDMA简介_jjydatougrace的空间_百度空间】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——