第09口章DMA控制器.pptVIP

  1. 1、本文档共93页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
9.1 DMA概要 9.1.1 什么叫DMA 9.1.2 应用场合 9.1.3 DMA传送过程 9.1 DMA概要 9.1 DMA概要 9.2 8237A的编程结构 9.2.1 基本特点 9.2.2 编程结构 9.2.3 引脚信号 9.3 工作方式和工作时序 9.3.1 芯片使用方式 9.3.2 数据传送方式 9.3.3 传送类型 9.3.4 工作时序 一.芯片使用方式 二. DMA数据传送方式 DMA传送方式 单字节传送方式 数据块传送方式 请求传送方式 (引脚有效) 级连方式 DMA传送类型 DMA读 DMA写 DMA检验 9.4 8237A的寄存器 9.4.1 通道专用寄存器 9.4.2 通道公用寄存器 9.4.3 各寄存器的端口地址 9.5 8237A的编程和应用 9.5.1 初始化步骤 9.5.2 编程实例1 9.5.3 编程实例2 复习题9 1 什么是DMA传输? DMA传输有什么优点?为什么? 2 叙述一次数据块DMA传输和一个数据DMA传输的全过程。 3 什么叫DMA通道?它如何组成? 4 DMA控制器8237A的成组传送方式和单字节传送方式各有什么特点?它们的适用范围各是什么? 5 怎样用指令启动一次DMA传输?怎样用指令允许/关闭一个通道的DMA传输? 6 DMA控制器8237A能不能用中断方式工作?请说明。 7 如何判断某通道的DMA传输是否结束?有几种方法可供使用? 8 叙述一次DMA控制器8237A编程使用的主要步骤。 9 使用DMA控制器8237A传输1字节数据需要多少时间?受那些因素影响?请作具体分析。 D5:滞后写和扩展写 0:滞后写,表示写脉冲滞后读脉冲一个时钟。 1 :扩展写,表示读、写脉冲同时产生。 扩展写增加了写命令宽度。压缩时序下 (D3=1) 该位无意义。 D4:优先级 0:固定优先权, DREQ0 最高,DREQ3 最低。 1:循环优先权,刚服务过的通道优先权变为最低。 D3 :时序类型 0:普通时序,传输一个字节需3个时钟周期。 1:压缩时序。对于高速外设,可将时序压缩到2个周期。 * D2:启动与停止8237A工作 0:启动;1:停止。一般为0。 该位设置影响所有通道。 D1 和 D0:控制内存到内存的传输。 仅当 D0 = 1 (允许M→M传输) 时 D1 才有意义。 实现M→M传输,需先把源区数据送入8237A的暂存寄存器,然后再送到目的区。即:每次M→M传输需2个DMA周期。 一般用通道0的地址寄存器存放源地址,用通道1的地址寄存器和字节寄存器存放目的地址和字节数。 传输时,目的地址可自动加/减1,而源地址可通过设置D1=1使其保持不变,这样可使同一数据传输到整个目标内存区域。 * 【例4-2】 PC机中的8237A 按如下要求工作:禁止存储器到存储器传送,采用正常时序,滞后写入,固定优先级,允许8237A工作,DREQ信号高电平有效,而DACK信号低电平有效。已知写命令寄存器对应的地址为08H,请给出写命令的程序段。 解: 命令字 写命令字代码段: MOV AL, 00H OUT 08H, AL * 低4位表示哪些DMA通道传送结束。 高4位表示哪些通道有DMA请求还未处理。 状态位在复位或被读出后,均被清零。 * 3. 状态寄存器(8位,只读) 用于存放8237A的状态信息。 低4位表示各个通道是否传输结束;高4位表示各个通道当前是否有DMA请求。 * 1: 通道2有DMA 请求 1: 通道3有DMA 请求 D7 D6 D5 D4 D3 D2 D1 D0 1: 通道1有DMA 请求 1: 通道0有DMA 请求 1: 通道3传输结束 1: 通道2传输结束 1: 通道1传输结束 1: 通道0传输结束 3. 状态寄存器(8位,只读) 用来禁止或允许通道的DMA请求。各通道相互独立。复位使4个通道全被屏蔽。有以下两种形式: 单通道屏蔽寄存器:每次只能屏蔽一个通道。 * 4. 屏蔽寄存器(8位,只写) 四通道屏蔽寄存器:可同时屏蔽4个通道。 低4位全部置1,则屏蔽所有的DMA请求。 低4位全部置0,则允许所有的DMA请求。 * 4. 屏蔽寄存器(8位,只写) 【例4-3】 请采用单通道屏蔽和四通道屏蔽两种方式来开放DMA通道2。(已知单通道屏蔽寄存器和四通道屏蔽寄存器对应的地址分别为0AH和0FH

文档评论(0)

xiaofei2001128 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档