现代微机原理及接口技术 978-7-302-18204-7 第08章新.ppt

现代微机原理及接口技术 978-7-302-18204-7 第08章新.ppt

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8章 DMA控制器及其应用 教学目标 教学重点 教学过程 教学目标 了解DMA传送的工作原理和其在系统中的两种工作状态 了解DMA控制器8237A的内部结构和内部寄存器 掌握8237A的工作方式和控制字 掌握8237A的编程方法 教学重点 DMA传送的工作原理和其在系统中的两种工作状态 DMA控制器8237A的内部结构和内部寄存器 8237A的工作方式和控制字 8237A的编程方法 8.1 概 述 DMA(Direct Memory Access)方式指主要依靠硬件实现主存与I/O设备之间进行直接的数据传送,它是一般微机系统中都具备的一种I/O设备与主存传送数据的控制方式,称为直接存储器存取方式。存储器与I/O设备之间的数据传送在DMA控制器(又称DMAC)的管理下直接进行,而不经过CPU。这种方式大大提高了传送数据的速率,但控制电路复杂,适于大批量高速度数据传送的场合。 8.1.1 DMA传送的工作原理 8.1.1 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传送结束。 8.1.2 DMA控制器在系统中的两种工作状态 DMA控制器与其他外围接口控制器不同,它具有接管和控制系统总线的功能,即取代CPU而成为系统的主控者。但在取得总线控制权之前,它也要受CPU控制。DMA控制器在系统中有两种工作状态:主动态与被动态;并处在两种不同的地位:主控器与受控器。 8.1.2 DMA控制器在系统中的两种工作状态 8.2 DMA控制器 当数据传送工作在DMA方式时,其过程完全由一种硬件电路来实现的,这种硬件电路称为DMA控制器(DMAC)。DMAC具有接收外设DMA请求、向CPU发出总线请求、形成地址信号和控制信号、自动修改指针、发出结束信号等基本功能。 8.2 DMA控制器 8237A是一种高性能可编程DMA控制器,它具有一下主要特性: (1)有四个独立DMA通道,也可以采用级联方式对通道数目进行扩充。 (2)各通道具有独立的允许/禁止DMA请求的控制功能和自动预置功能。 (3)具有两种优先级可供选择:固定优先级和循环优先级。 (4)各通道具有四种工作方式:单字节传送方式、数据块传送方式、请求传送方式和级联方式。 (5)具有两种基本时序:正常时序和压缩时序。 8.2.1 8237A的内部结构和引脚 2.内部结构 8237A组成 8237A主要由三个基本控制逻辑单元、三个地址/数据缓冲器单元和一组内部寄存器组成。 (1)控制逻辑单元:包括定时和控制逻辑、命令控制逻辑和优先级控制逻辑。根据初始化编程所设置的工作方式寄存器的内容和命令,在输入时钟信号的控制下,定时和控制逻辑产生8237A的内部定时信号和外部控制信号。在CPU控制总线时,命令控制逻辑将CPU在初始化编程送来的命令字进行译码,当8237A进入DMA服务时,命令控制逻辑对DMA的工作方式控制字进行译码。优先级控制逻辑用来裁决各通道的优先权顺序,解决多个通道同时请求DMA服务时可能出现的优先权竞争问题。 (2)地址/数据缓冲器单元包括I/O缓冲器1、I/O缓冲器2和输出缓冲器。 (3)内部寄存器,将在下一节详细讲解。 2 8237A的内部寄存器 1.基地址寄存器 2.当前地址寄存器 3.基字节计数寄存器 4.当前字节计数寄存器 5.控制寄存器 6.工作方式寄存器 7.屏蔽寄存器 8.请求寄存器 9.状态寄存器 10.暂存寄存器 3.8237A的工作方式 4. 8237A的控制字和编程 8237A的控制字 2.8237A初始化编程 对8237A初始化编程分为以下

您可能关注的文档

文档评论(0)

带头大哥 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档