您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 第十章 直接存储器存取(DMA)控制
第十章直接存储器存取(DMA)控制主要内容:10.1DMA基本知识10.2S3C2410的DMA控制器10.3DMA方式实现存储器到存储器的数据传送10.1DMA基本知识计算机系统中各种常用的数据输入/输出方法有查询方式(包括无条件及条件传送方式)和中断方式,这些方式适用于CPU与慢速及中速外设之间的数据交换。但当高速外设要与系统内存或者要在系统内存的不同区域之间进行大量数据的快速传送时,就在一定程度上限制了数据传送的速率。直接存储器存取(DMA)就是为解决这个问题提出的,采用DMA方式,在一定时间段内,由DMA控制器取代CPU,获得总线控制权,来实现内存与外设或者内存的不同区域之间大量数据的快速传送。1.外设向DMAC发出DMA传送请求;2.DMAC通过连接到CPU的HOLD信号向CPU提出DMA请求;3.CPU在完成当前总线操作后会立即对DMA请求做出响应。CPU的响应包括两个方面:一方面,CPU将控制总线、数据总线和地址总线浮空,即放弃对这些总线的控制权;另一方面,CPU将有效的HLDA信号加到DMAC上,以通知DMACCPU己经放弃了总线的控制权;4.CPU将总线浮空,即放弃了总线控制权后,由DMAC接管系统总线的控制权,并向外设送出DMA的应答信号;5.DMAC送出地址信号和控制信号,实现外设与内存或内存之间大量数据的快速传送。6.DMAC将规定的数据字节传送完之后,通过向CPU发HOLD信号,撤消对CPU的DMA请求。CPU收到此信号,一方面使HLDA无效,另一方面又重新开始控制总线,实现正常取指令、分析指令、执行指令的操作。DMA传送包括三种方式:.存储器到I/O接口.I/O接口到存储器.存储器到存储器10.2S3C2410的DMA控制器1.传输数据源地址寄存器(DISRC(n=0,1,2,3))2。传输数据目标地址寄存器(DIDST(n=0,1,2,3))传输数据目标地址寄存器是32位寄存器,最高位不用。它存储传输数据目标地址,配置见表10-23。DMA控制寄存器(DCON(n=0,1,2,3))DMA控制寄存器DCON每通道一个,是DMA工作的基本条件约定,它的配置如表10-3所示:4。源数据配置寄存器(DISRCC(n=0,1,2,3))源数据配置寄存器(DISRCC)描述了源数据的配置情况,具体见表10-4:5。目标数据配置寄存器(DISRCC(n=0,1,2,3))目标数据配置寄存器(DIDSTC)描述了目标数据的配置情况,具体见表10-5:6。DMA状态寄存器(DSTAT(n=0,1,2,3))DMA状态寄存器描述了DMA状态,具体见表10-6:7。DMA屏蔽寄存器(DMASKTRIG(n=0,1,2,3))DMA屏蔽寄存器是DMA通道开关,具体见表10-7:10.3DMA方式实现存储器到存储器的数据传送10.3.1头文件定义和函数声明10.3.2DMA方式实现存储器到存储器的数据传送
本文标题:第十章 直接存储器存取(DMA)控制
链接地址:https://www.777doc.com/doc-3129575 .html