现代微机原理与接口技术 412DMA传送的工作过程 1)IO设备向DMAC发出DMA请求; 2)DMAC向CPU发出总线请求; 3)CPU在执行完当前指令的当前的总线周期后, 向DMAC发出总线响应信号; 4)CPU脱离对系统总线的控制,由DMAC接管 对系统总线的控制; Department of Computer Science Engineering 算机科学与工程系 http://qsyang.yeah.net
http://qsyang.yeah.net 现代微机原理与接口技术 6 4.1.2 DMA传送的工作过程 1)I/O设备向DMAC发出DMA请求; 2) DMAC向CPU发出总线请求; 3)CPU在执行完当前指令的当前的总线周期后, 向DMAC发出总线响应信号; 4)CPU脱离对系统总线的控制,由DMAC接管 对系统总线的控制;
现代微机原理与接口技术 5)DMAC向JO设备发出的DMA应答信号 6)DMAC进行一个字节的传送 7)完成设定的字节数据传送,CPU恢复对系 统总线的控制。 Department of Computer Science Engineering 7 算机科学与工程系 http://qsyang.yeah.net
http://qsyang.yeah.net 现代微机原理与接口技术 7 5)DMAC向I/O设备发出的DMA应答信号; 6)DMAC进行一个字节的传送; 7)完成设定的字节数据传送,CPU恢复对系 统总线的控制
现代微机原理与接口技术 413DMA传送的方式 1.DMA操作类型 °数据传送。数据传送是把源地址的数据传送到目的地 址中去。 数据检验。当数据传送完毕之后,可以进行校验操作。 校验操作并不进行数据传送,只进行数据校验。但操 作过程仍然要通过DMAC向CPU提出申请,进入 DMA周期。 数据检索。数据检索操作并不进行数据传送,只是对 在指定的内存区内查找某个关键字节或某几个关键数 据位是否存在,如果査找到了,就停止检索操作。 Department of Computer Science Engineering 算机科学与工程系 http://qsyang.yeah.net
http://qsyang.yeah.net 现代微机原理与接口技术 8 4.1.3 DMA传送的方式 1.DMA操作类型 • 数据传送。数据传送是把源地址的数据传送到目的地 址中去。 • 数据检验。当数据传送完毕之后,可以进行校验操作。 校验操作并不进行数据传送,只进行数据校验。但操 作过程仍然要通过DMAC向CPU提出申请,进入 DMA周期。 • 数据检索。数据检索操作并不进行数据传送,只是对 在指定的内存区内查找某个关键字节或某几个关键数 据位是否存在,如果查找到了,就停止检索操作
现代微机原理与接口技术 2.DMA操作方式 1)单字节操作方式。每次进行DMA操作只操作一个字 节 2)连续操作方式。只要DMA操作开始,DMAC始终占 用总线,直到DMA操作完成,才把总线控制权交还 CPU。 3)请求操作方式。如果有DMA请求,则DMAC就占用 总线;当DMA请求无效,或DMA操作完成,或由 外部传来过程结束信号(EOP)时,DMAC都会释 放总线。 4)级联传送方式。 Department of Computer Science Engineering 算机科学与工程系 http://qsyang.yeah.net
http://qsyang.yeah.net 现代微机原理与接口技术 9 2.DMA操作方式 1) 单字节操作方式。每次进行DMA操作只操作一个字 节 。 2) 连续操作方式。只要DMA操作开始,DMAC始终占 用总线,直到DMA操作完成,才把总线控制权交还 CPU。 3) 请求操作方式。如果有DMA请求,则DMAC就占用 总线;当DMA请求无效,或DMA操作完成,或由 外部传来过程结束信号(EOP)时,DMAC都会释 放总线。 4) 级联传送方式
4,2DMA控制器 现代微机原理与接口技术 421DMA控制器在系统中的两种工作状态 )主动态 在DMAC获得总线控制权之后,DMAC取代CPU而成 为系统的主控者,接管和控制系统总线(数据总线 地址总线和控制总线)。通过总线向存储器或ⅣO设备 发出地址、读/写信号,以控制在两个实体之间的传送 2)被动态 在DMAC获得总线控制权之前,DMAC受CPU控制( 此时,CPU可对DMAC进行初始化编程,也可从 DMAC中读出状态。当DMAC上电或复位时,DMAC 自动处于被动态。 Department of Computer Science Engineering 10 算机科学与工程系 http://qsyang.yeah.net
http://qsyang.yeah.net 现代微机原理与接口技术 10 4.2 DMA控制器 4.2.1 DMA控制器在系统中的两种工作状态 1)主动态 在DMAC获得总线控制权之后,DMAC取代CPU而成 为系统的主控者,接管和控制系统总线(数据总线、 地址总线和控制总线)。通过总线向存储器或I/O设备 发出地址、读/写信号,以控制在两个实体之间的传送 。 2)被动态 在DMAC获得总线控制权之前,DMAC受CPU控制( 。此时,CPU可对DMAC进行初始化编程,也可从 DMAC中读出状态。当DMAC上电或复位时,DMAC 自动处于被动态