您的位置:首页 > 其它

DMA读写

2014-03-04 11:14 267 查看
一 DMA操作

1 DMA定义

DMA是直接内存访问

Direct Memory Access(存储器直接访问)。这是指一种高速的数据传输操作,允许在外部设备和存储器之间直接读写数据,既不通过CPU,也不需要CPU干预。整个数据传输操作在一个称为"DMA控制器"的控制下进行的。CPU除了在数据传输开始和结束时做一点处理外,在传输过程中CPU可以进行其他的工作。这样,在大部分时间里,CPU和输入输出都处于并行操作。因此,使整个计算机系统的效率大大提高。 DMA的概念:DMA是在专门的硬件( DMA)控制下,实现高速外设和主存储器之间自动成批交换数据尽量减少CPU干预的输入/输出操作方式。通常有两种方式:

◎独占总线方式 ◎周期挪用方式 。

2 DMA组成

DMA的组成:

◎主存地址寄存器

◎数据数量计数器

◎DMA的控制/状态逻辑

◎DMA请求触发器

◎数据缓冲寄存器

◎中断机构

3 DMA数据传输过程

◎传送前的预处理:由CPU完成以下步骤

向DMA卡送入设备识别信号,启动设备,测试设备运行状态,送入内存地址初值,传送数据个数, DMA的功能控制信号。

◎数据传送:在DMA卡控制下自动完成

◎传送结束处理

DMA 卡上应包括通用接口卡的全部组成部分,并多出如下内容:

主存地址寄存器,传送字数计数器,DMA控制逻辑,DMA请求,DMA响应,DMA工作方式,DMA优先级及排队逻辑等 一次完整的DMA传送过程:

DMA 预处理,CPU向DMA送命令,如DMA方式,主存地址,传送的字数等,之后CPU执行。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: