微机系统原理与接口第12章.ppt

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

6. 屏蔽寄存器 (共用) 功能: 屏蔽某一通道的DMA请求。 8237A有2个屏蔽寄存器 — 单通道屏蔽寄存器、 多通道屏蔽寄存器 无用 D2 D1 D0 1: 使相应通道的 屏蔽触发器为1 0: 使相应通道的 屏蔽触发器为0 D1 D0 选中 0 0 0 1 1 0 1 1 CH0 CH1 CH2 CH3 每写入一次, 只能预置 一个通道的屏蔽触发器。 ? 单通道屏蔽寄存器 ? 多通道屏蔽寄存器 (共用) D3 D2 D1 D0 无用 选中 CH0 Di=1: 使相应通道的屏 蔽触发器为1 Di=0: 使相应通道的屏 蔽触发器为0 写入一次, 可使4 个通道的屏蔽寄存器分别置1或置0。 CH1 CH2 CH3 7. 软件请求寄存器 (共用) 无用 1: 使相应通道的请求触发器置1 0: 使相应通道的请求触发器置0 D1 D0 选中 0 0 0 1 1 0 1 1 CH0 CH1 CH2 CH3 D2 D1 D0 硬件DMA请求: 由引脚DREQ0 ~ 3的有效信号, 使通道 的“请求触发器”置1 。 软件DMA请求:由于预置“请求寄存器”, 而从内部使通 道的 “请求触发器”置1 。 实验表明: 某通道的屏蔽触发器置1后, 该通道的硬件、软件DMA 请求都将被屏蔽。 8. 状态寄存器 CH3 CH2 CH1 CH0 CH3 CH2 CH1 CH0 D7 D4 D3 D0 Di=1表示有DMA请求 Di=1表示该通道DMA传送结束 12.3 8237A在PC系列机中的应用 1. 用2片8237A级连提供7个DMA通道 HRQ DREQ0 DACK0 DREQ1 DACK1 DREQ2 DACK2 DREQ3 DACK3 DACK0 DACK1 DACK2 DACK3 HRQ DREQ0 DACK0 DREQ1 DACK1 DREQ2 DACK2 DREQ3 DACK3 HRQ 至CPU DACK5 DACK6 DACK7 DREQ0 DREQ1 DREQ2 DREQ3 DMAC1 DMAC2 DREQ5 DREQ6 DREQ7 8237A的每个通道地址寄存器是16位, 进行DMA传送时, 当前地址寄存器的内容 ? 系统地址线上。 我们知道: 16位地址可寻址64K内存 20位地址可寻址1兆内存 24位地址可寻址16兆内存 在PC / XT中, 内存为1兆, 高四位地址由谁给出? 在PC / AT中, 内存为16兆, 高8位地址由谁给出? 为此, 在DMA接口电路中, 以8237A为核心为每一通道 增加了一个“页面寄存器”, 用来存放高4位 (AT机中为 高8位)地址。 2. 如何扩充8237A的寻址范围 (增设页面地址寄存器 ) 地址锁存器 当前地址寄存器 页面寄存器 系统数据线 初始化时, 写入高8位RAM地址 A19 ~ A16 地址驱动器 中8位RAM地址 低8位RAM地址 A15 ~ A8 A7 ~ A0 8237A某通道 3. 页面寄存器口地址 CH0 CH1 CH2 CH3 D M A C 1 D M A C 2 CH0 CH1 CH2 CH3 页面寄存器口地址 87H 83H 81H 82H / 8BH 89H 8AH 12.4 8237A的初始化编程 (1)命令字写入控制寄存器。 (2)屏蔽字写入屏蔽寄存器,屏蔽要初始化的通道。 (3)方式字写入方式寄存器,为通道规定传送类型及 工作方式。 (4)置0先后触发器,为后继的地址寄存器和字节寄存 器规定写入顺序。 (5) 计算存储单元的20位物理地址。 (6) 将物理地址的高8位 存入页面

文档评论(0)

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

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

1亿VIP精品文档

相关文档