8章DMA控制器及其应用 教学目标 教学重点 教学过程
第8章 DMA控制器及其应用 教学目标 教学重点 教学过程
教学目标 了解DMA传送的工作原理和其在系统中的两 种工作状态 了解DMA控制器8237A的内部结构和内部寄 存 掌握8237A的工作方式和控制字 掌握8237A的编程方法
教学目标 ▪ 了解DMA传送的工作原理和其在系统中的两 种工作状态 ▪ 了解DMA控制器8237A的内部结构和内部寄 存器 ▪ 掌握8237A的工作方式和控制字 ▪ 掌握8237A的编程方法
教学重点 DMA传送的工作原理和其在系统中的两种工 作状态 DMA控制器8237A的内部结构和内部寄存器 8237A的工作方式和控制字 8237A的编程方法
教学重点 ▪ DMA传送的工作原理和其在系统中的两种工 作状态 ▪ DMA控制器8237A的内部结构和内部寄存器 ▪ 8237A的工作方式和控制字 ▪ 8237A的编程方法
8.千概述 DMA( Direct Memory Access)方式指主要 依靠硬件实现主存与MO设备之间进行直接的 数据传送,它是一般微机系统中都具备的 种Ⅳ/O设备与主存传送数据的控制方式,称为 直接存储器存取方式。存储器与MO设备之间 的数据传送在DMA控制器(又称DMAC)的 管理下直接进行,而不经过CPU。这种方式 大大提高了传送数据的速率,但控制电路复 杂,适于大批量高速度数据传送的场合
8.1 概 述 ▪ DMA(Direct Memory Access)方式指主要 依靠硬件实现主存与I/O设备之间进行直接的 数据传送,它是一般微机系统中都具备的一 种I/O设备与主存传送数据的控制方式,称为 直接存储器存取方式。存储器与I/O设备之间 的数据传送在DMA控制器(又称DMAC)的 管理下直接进行,而不经过CPU。这种方式 大大提高了传送数据的速率,但控制电路复 杂,适于大批量高速度数据传送的场合
81.1DMA传送的工作原理 外设 CPU 存储器 线 程序控制的数据输入/输出 DMA控制的数据输入/输出
8.1.1 DMA传送的工作原理 CPU 总 线 外设 存储器 程序控制的数据输入/输出 DMA控制的数据输入/输出
811DMA传送的工作原理 主机板 KAK(少 存储器 答求 系统总线 DMA 接口 设备 控制器 8237A
8.1.1 DMA传送的工作原理 CPU 8088 总线 逻辑 存储器 DMA 控制器 8237A I/O 接口 I/O 设备 系 统 总 线 回 答 请 求 主机板
DMA传送操作过程如下 (1)外设准备好数据后向DMAC发出DMA请求 (2)DMAC经过内部的判优和屏蔽处理后,向总线仲裁机构发出总线请求信号 HRQ,请求占用总线。即DMAC将此请求传递到CPU的总线保持端HOLD,向 CPU提出DMA请求; (3)CPU在完成当前总线周期后检测HOLD,在非总线封锁条件下,对DMA请 求作出响应;一是CPU将地址总线、数据总线、控制总线置高阻,放弃对总线 的控制权;二是CPU送出有效的总线响应信号HLDA加载至DMAC,告之可以使 用总线; 4)DMAC接收到有效的总线响应信号后,向外设送出DMA应答信号,通知外 设做好数据传送准备,同时占用总线,开始对总线实施控制; (5)DMAC送出内存地址和对内存与外设的控制信号,控制外设与内存或内存 与内存之间的数据传送 (6)DMAC通过计数控制将预定的数据传送完后 方面,向外设发出传送结 束信号,另一方面,向CPU发出无效的HOLD信号,撤消CPU的DMA请求 7)CPU收到此信号后,送出无效的HLDA,并重新开始控制总线,实现正常 的总线控制操作。 在DMA传送期间,HRQ信号和HLDA信号一直有效,直至DMA传送结束
DMA传送操作过程如下 ▪ (1)外设准备好数据后向DMAC发出DMA请求; ▪ (2)DMAC经过内部的判优和屏蔽处理后,向总线仲裁机构发出总线请求信号 HRQ,请求占用总线。即DMAC将此请求传递到CPU的总线保持端HOLD,向 CPU提出DMA请求; ▪ (3)CPU在完成当前总线周期后检测HOLD,在非总线封锁条件下,对DMA请 求作出响应;一是CPU将地址总线、数据总线、控制总线置高阻,放弃对总线 的控制权;二是CPU送出有效的总线响应信号HLDA加载至DMAC,告之可以使 用总线; ▪ (4)DMAC接收到有效的总线响应信号后,向外设送出DMA应答信号,通知外 设做好数据传送准备,同时占用总线,开始对总线实施控制; ▪ (5)DMAC送出内存地址和对内存与外设的控制信号,控制外设与内存或内存 与内存之间的数据传送; ▪ (6)DMAC通过计数控制将预定的数据传送完后,一方面,向外设发出传送结 束信号,另一方面,向CPU发出无效的HOLD信号,撤消CPU的DMA请求; ▪ (7)CPU收到此信号后,送出无效的HLDA,并重新开始控制总线,实现正常 的总线控制操作。 ▪ 在DMA传送期间,HRQ信号和HLDA信号一直有效,直至DMA传送结束
812DMA控制器在系统中的两种工 作状态 DMA控制器与其他外围接口控制器不同, 具有接管和控制系统总线的功能,即取代 CPU而成为系统的主控者。但在取得总线控 制权之前,它也要受CPU控制。DMA控制器 在系统中有两种工作状态:主动态与被动态 并处在两种不同的地位:主控器与受控器
8.1.2 DMA控制器在系统中的两种工 作状态 ▪ DMA控制器与其他外围接口控制器不同,它 具有接管和控制系统总线的功能,即取代 CPU而成为系统的主控者。但在取得总线控 制权之前,它也要受CPU控制。DMA控制器 在系统中有两种工作状态:主动态与被动态; 并处在两种不同的地位:主控器与受控器
8.1.2DMA控制器在系统甲的两种工 作状态 0 0 位 n位地址 地址译码器 存储体 数据缓冲器 数据 控制 逻辑 R/W 电路
8.1.2 DMA控制器在系统中的两种工 作状态 存储体 地 址 译 码 器 数 据 缓 冲 器 控制 逻辑 电路 n位地址 存储体 0 1 2 −1 n 0 1 m … … CS R / W m位 数据
82DMA控制器 当数据传送工作在DMA方式时,其过程完全 由一种硬件电路来实现的,这种硬件电路称 为DMA控制器(DMAC)。DMAC具有接收 外设DMA请求、向CPU发出总线请求、形成 地址信号和控制信号、自动修改指针、发出 结束信号等基本功能
8.2 DMA控制器 ▪ 当数据传送工作在DMA方式时,其过程完全 由一种硬件电路来实现的,这种硬件电路称 为DMA控制器(DMAC)。DMAC具有接收 外设DMA请求、向CPU发出总线请求、形成 地址信号和控制信号、自动修改指针、发出 结束信号等基本功能