试题详情
简答题什么是DMA?DMA操作可以分几个主要步骤?
  • (1)DMA方式:即直接内存访问方式,完全由硬件执行I/O交换的工作方式。在这种方式下,DMA控制器从CPU完全接管对总线的控制,数据交换不经过CPU,而直接在内存与设备之间进行。
    (2)DMA操作可以分3个主要步骤:
    即传送前预处理、正式传送、传送后处理阶段。
    ①预处理阶段:由CPU执行几条输入输出指令,测试设备状态。向DMA控制器的设备地址寄存器中送入设备号,并启动设备。向内存地址计数器中送入起始地址。向字计数器中送入交换的数据字个数。
    ②正式传送阶段:外设准备好发送数据(输入)或接收数据(输出)时,发出DMA请求,由DMA控制器向CPU发出总线使用权的请求(HOLD)。CPU在本机器周期执行完毕后响应该请求并使CPU的总线驱动器处于高阻状态,然后与系统总线相脱离,DMA控制器接管数据总线和地址总线的控制,并向内存提供地址。在内存和外围设备之间进行数据交换。每交换一个字则地址计数器和字计数器加1,当记数值到0时,DMA操作结束并向CPU提出中断报告。
    ③DMA后处理工作:一旦DMA的中断请求得到响应,CPU将停止主程序的执行,转去执行中断服务程序进行DMA操作的后处理。包括校验送入内存的数据是否正确;决定使用DMA方式传送数据还是结束传送;测试传送过程中是否发生错误。
  • 关注下方微信公众号,在线模考后查看

热门试题