直接存储器访问DMA方式
上一节
下一节
9.5 DMA直接存储器访问
高速大容量的存储器和主存储器之间交换信息时,若采用程序直接传输或程序中断传输方式会遇到以下问题:
1.主机的效率低
采用程序直接传输时,主机与外设不能并行工作,而且每传输一个字要执行若干条指令,主机的效率低;
2.增加了CPU的额外负担
采用中断控制传输数据时,由于要保护断点现场和恢复断点,增加了CPU的额外负担。特别是高速设备,CPU不断地处于中断和返回过程中,容易造成数据丢失。
为了克服这些缺点,引入了直接存储器访问DMA方式!
9.5.1直接存储器访问DMA
DMA(Direct Memory Access)数据传输方式是在高速I/O设备与主存储器之间由硬件组成直接数据通道,高速外设按照连接地址直接访问主存储器,进行成块数据传输。
数据传输是在DMA控制器的控制下进行的。由DMA控制器给出当前正在传输的数据字节的主存地址,并统计传输数据的个数,以确定一组数据的传输是否已结束。在主存中开辟一连续地址的专用缓冲区,用来提供或接收传输的数据。在数据传输开始前和结束后,要通过程序或中断方式对缓冲器和DMA控制器进行预处理和后处理
教学目的要求:掌握DMA数据传输原理;理解DMA控制器的作用,掌握DMA控制器的应用环境;
教学重点:掌握DMA数据传输过程。
教学难点:DMA数据传输过程。

