试题详情
简答题叙述一次数据块DMA传输和一个数据DMA传输的全过程。
  • 一次数据块DMA传输的全过程:
    (1)程序对DMA控制器进行初始化,写入存储器数据块首地址,传输字节数,传输方向等信息。同时启动外部设备(例如,启动输出设备进行第一次输出);
    (2)外部设备每完成一次输入/输出,它的完成信号通过DMA控制器启动一次DMA数据传输;
    (3)全部预设的数据传输完成,DMA控制器发出“传输完成”信号,向CPU申请中断。CPU在中断服务程序中设置完成标志,或者对DMA控制器进行下一次初始化。
    一个数据DMA传输的全过程:
    (1)外设准备就绪,需要进行DMA操作时,向DMA控制器发出“DMA请求信号”。DMA控制器接到此信号后,向CPU发“总线请求信号”。
    (2)CPU接到总线请求信号,在当前总线周期结束后,发出“DMA响应信号”。
    (3)DMAC向外部设备发出“外设读”或“外设写”控制信号,向存储器发出“存储器写”或“存储器读” 控制信号,同时发出存储单元地址。在这二个信号的作用下,一字节的数据从外设接口通过数据总线送往存储单元,或者从存储单元送往外设接口。
    (4)传送1个字节之后,DMAC自动修改内部地址寄存器和字节计数器的内容。
    (5)DMA控制器撤销“总线请求信号”,CPU也撤销 “总线应答”信号。
  • 关注下方微信公众号,在线模考后查看

热门试题