DMA的工作过程

    

DMA的工作过程

DMADirect Memory Access的缩写,意为存储器直接访问。可以不通过CPU而在DMA控制器的控制下,高速地与I/O设备和存储器之间交换数据。CPU除了在数据传输开始和结束时做一些处理外,在传输过程中,CPU可以进行其他工作。这样,在大部分时间里,CPU和输入/输出都处于并行操作状态。所以,使整个计算机系统的效率大提高。DMA控制器是实现DMA输入/输出方式的具体执行操作。

ARM9S3C2440拥有4通道的DMA控制器,与系统总线的外围总线相连。DMA控制器的每一个通道可以在系统总线上的存储器与外围总线之间、系统总线上的设备之间以及外围总线之间操作数据传输而不被限制。

S3C2440DMA在以下四种情况可运行:

1.  源设备和目标都在系统总线AHB上;

2.  源设备和目标都在外围总线APB上;

3.  源设备在系统总线,而目标设备位于外围总线;

4.  源设备在外围总线,而目标设备位于系统总线;

DMA的主要优点是:可以不通过CPU的中断来实现数据的传输,DMA的运行可以通过软件或者通过外围设备的中断和请求来初始化。

DMA的工作过程(如图):

DMA的工作过程 - ♂苹果 - 眼睛想旅行

 

DMA的工作过程

1)  外设向DMAC发出请求;

2)  DMAC通过HOLDCPU发出总线请求;

3)  CPU响应释放三总线,并且发应答HLDA

4)  DMAC向外设发DMA应答;

5)  DMAC发出地址、控制信号,为外设传送数据;

6)  传送完规定的数据后,DMAC撤销HOLD信号,CPU也撤销HLDA信号,并且恢复对三总线的控制。

 

加个广告,我自已写的一个关于54/74和4000系列的集成电路数据手册应用,我是集成电路硬件工程师出身,所以写了这个应用:https://itunes.apple.com/us/app/logic-circuits/id578183596?ls=1&mt=8

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值