计算机组成原理之DMA控制器的组成,DMA传送过程

298 阅读2分钟

计算机组成原理之DMA控制器的组成: 在这里插入图片描述

DMA控制器主要由以下部分组成:

内存地址计数器:用于存储和更新内存地址,确保数据能够准确地从源地址传输到目标地址。

字计数器:用于记录传输的数据块大小,当计数器减到0时,表示数据传输完成。

数据缓冲寄存器:作为DMA子系统和外设或存储器之间的缓冲器,用于暂存数据,提高数据传输效率。

DMA请求标志:用于接收来自外设的DMA请求信号。

控制/状态逻辑:负责控制DMA操作的状态和流程,确保数据传输的顺利进行。

中断机构:当数据传输完成时,向CPU发出中断请求,通知CPU进行后续处理。

DMA传送过程:

1、DMA预处理:由CPU完成一些必要的准备工作,如设置DMA控制器的寄存器、测试I/O设备的状态等。然后,外设向DMA控制器发出DMA请求。

2、DMA控制器向CPU发出总线请求信号,请求接管总线控制权。

3、CPU响应DMA控制器的请求,将控制总线、地址总线及数据总线让出,由DMA控制器进行控制。

4、DMA控制器向外部设备发出DMA请求回答信号,开始进行数据传输。数据传输过程由DMA控制器独立完成,无需CPU干预。

5、数据传送完毕后,DMA控制器通过中断请求线发出中断信号。CPU在接收到中断信号后,转入中断处理程序进行后续处理,如校验数据、更新内存地址等。

6、中断处理结束后,CPU返回到被中断的程序继续执行,同时DMA控制器也准备好进行下一次DMA操作。