ChapADMA控制器及其应用.ppt

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ChapADMA控制器及其应用

Chap12 8237A DMA控制器及其应用 DMA操作过程 DMA请求阶段 DMA响应和数据传送阶段 DMA传送结束阶段 DMAC DMA控制器的主要功能 DMAC应具有以下几个部分: DMA工作过程 1、外设 DMAC CPU(HOLD = 1 请求占有总线) CPU(HLDA = 1 同意让出总线) DMAC 2、CPU将地址、数据、控制总线的管理权交DMAC 3、DMAC回答外设。 4、进行DMA传送。传送的内存地址,字节数由DMAC控制。 5、传送完毕,DMAC交出总线管理权,CPU重新占有总线。 12-2 8237A的组成和工作原理 一. 8237引脚功能 8237引脚 8237引脚 二. 8237内部寄存器 8237控制寄存器 2. 状态寄存器 3. 暂存寄存器 4. 模式寄存器 8237模式寄存器各位的含义 8237模式寄存器各位的含义 5. 基地址寄存器和当前地址寄存器 6. 基本字节计数器和当前字节计数器 7. 先/后触发器 8. 请求寄存器 9. 屏蔽寄存器 10. 综合屏蔽寄存器 11. 清除屏蔽寄存器 12. 复位命令寄存器 6.5.2 8237的时序 2. 扩展写时序 3. 压缩时序 6.5.3 8237A的编程和应用举例 8237 编程 8237对内存和I/O的寻址 存储器寻址 I/O寻址 1. 正常的DMA读写操作 一片8237占用连续16个端口地址,用DMA+00H~DMA+0FH表示。其中,DMA表示该片8237的基地址。 在AT以上的微机中,使用2片8237,其地址为: 第一片8237,基地址DMA=0000H,使用0000H~000F I/O地址。 第二片8237,基地址DMA=00C0H,使用00C0H~00CF I/O地址。 I/O接口和总线 存储器寻址 在主控模式下,8237可以产生16位存储器地址信号,地址引脚A7~A0输出地址低8位,高8位地址由数据引脚DB7~DB0输 出,经地址锁存器后形成存储器地址的A15~A8。用ADSTB启动地址锁存器。 当系统的存储器地址多于16位时,多余位地址由一个称为DMA页面寄存器的接口电路提供 * DMA=Direct Memory Access,直接存储器存取 CPU 内存 外设 数据通道 数据通道 非DMA方式 (包括程序控制方式和中断方式) DMAC 内存 外设 数据通道 DMA方式 12-1 DMA概述 DMA操作之前,应先对DMAC编程,把要传送的数据块长度、数据块在存储器中的起始地址,数据传送方向等信息发送给DMAC DMA操作过程包括三个阶段: DMA请求 DMA响应和数据传送 传送结束 当外设要求以DMA方式为它服务时,发DMA请求信号DREQ到DMAC DMAC检查该信号是否被屏蔽及其优先权,如确认该信号有效则向CPU发送总线请求信号HRQ(连到CPU的HOLD) CPU DMAC HRQ 外设 DREQ 地址总线 数据总线 存储器 每个总线周期结束时CPU检测HOLD,如为高电平,则响应HOLD请求进入保持态,使三态总线CPU侧呈高阻状态,并以总线保持响应信号HLDA通知DMAC DMAC接管总线,并以DACK信号通知外设,使之成为DMA传送时被选中的设备,同时DMAC给出内存地址以及I/O读写和存储器读写控制信号,在外设和存储器之间完成数据传送 CPU DMAC HLDA 外设 DACK 存储器 地址总线 数据总线 MEMR/MEMW 传送完成后,DMAC放弃总线,撤消总线请求(HRQ为低),CPU检测到HRQ(HOLD)为低后,撤消HLDA,CPU重新获得总线控制权 CPU DMAC HRQ 外设 EOP 地址总线 数据总线 存储器 PC系列微机使用可编程DMA控制器 8237A(简称8237)实现DMA功能 8237有四个通道,每个通道都有独立的与相应外设接口相联系的信号,四个通道共享与CPU相连的控制信号、地址信号、数据信号 PC/AT以上的微机使用两片8237,Pentium微机系统中没有独立的8237芯片,其功能集成在芯片组中 DMAC具有独立的控制三大总线来访问存储器和I/O端口的能力,它能像CPU一样提供数据传送所需的地址信息和读写控制信息 DMAC和CPU都挂在系统总线上,当进入DMA方式时,DMAC成为总线主控。 在总线上,可以控制其他

文档评论(0)

taotao0c + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档