- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章DMA微机原理
第 6 章 DMA控制器 DMA控制器 8273A 学习目的: 通过对本章的学习,您应该能够达到下列要求: 了解 8259A、8237A、8253 芯片的内部结构 描述各芯片的工作原理 熟悉 8259A、8253 芯片的工作方式 掌握各芯片的编程方法 学会 8253 的应用 6.1 DMA概述 主要内容: DMA控制器的一般结构和概要 DMA控制器8237A的原理 8237A的编程和使用 基本问题: 说明在DMA方式时内存往外设传输数据的过程。 DMA控制器初始化工作包括哪些内容? DMA控制器在什么时候作为主模块? 什么时候作为从模块? 为什么CPU对DMA控制器提出的总线响应要比中断请求响应快? DMA控制器 DMA 控制器可以象CPU那样得到总线控制权,用DMA方式实现外部设备和存储器之间的数据高速传输。 一个DMA控制器通常可以连接一个或几个输入/输出接口,每个接口通过一组连线和DMA控制器相连。 将DMA控制器中和某个接口有联系的部分为一个通道。而一个DMA控制器一般由几个通道组成。 DMA方式,外设向內存传输数据的过程: 当一个接口中有数据要输入时,就往DMA控制器发个DMA请求;DMA控制器接到请求后,便往控制总线上发一个总线请求; 如果CPU允许让出总线,则发一个总线允许信号;DMA控制器接到此信号后,就将地址寄存器的内容送到地址总线上,同时往接口发一个DMA回答信号,并发一个1/O读信号和一个内存写信号; 接口接到DMA回答信号以后,将数据送到数据总线上,并撤除DMA请求信号;内存在接收到数据以后,一般往DMA控制器回送一个准备好信号,于是,DMA控制器的地址寄存器内容加1或减1,计数器的值减1,而且撤除总线请求信号,这样,就完成了对一个数据的DMA输入传输。 DMA传输结束时,往接口发一个结束信号,向CPU交回总线控制权。其状态寄存器的传输结束标志置“1”。 6.2 8257芯片内部结构 数据总线缓冲器 读写逻辑电路 工作方式寄存器 状态寄存器 优先选择逻辑 4个DMA通道 6.3 8237A的控制寄存器格式和软命令 8237共有9类寄存器 当前地址寄存器 当前字节数寄存器 基地址和基字节数寄存器 命令寄存器 方式寄存器 请求寄存器 屏蔽寄存器 状态寄存器 临时寄存器。 6.3.1 8237A的控制寄存器格式 1. 基地址寄存器 该寄存器用以存放16位地址。在编程时,它与当前地址寄存器被同时写入某一起始地址。在8237A工作过程中其内容不变化。在自动预置时,其内容被写到当前地址寄存器中。 2. 基字节计数寄存器 该寄存器用以存放该通道数据传送的个数。在编程时,它与当前字节计数寄存器被同时写入要传送数据的个数。在8237A工作过程中其内容保持不变。在自动预置时,其内容被写到当前字节计数寄存器中。 3. 当前地址寄存器 每个通道有一个16位的当前地址数寄存器。该寄存器存放DMA传送期间的地址值。每次传送后自动加1或减1。CPU可以对其进行读写操作。在选择自动预置时,每当字计数值减为0或外部发生,就会自动将基地址寄存器的内容写入当前地址寄存器中,恢复其初始值。 4. 当前字节计数寄存器 每个通道有一个16位的当前字节数寄存器。它保持着要传送的字节数,在每次传送后此寄存器减1。在自动预置下,每当字计数值减为0或外部发生,就会自动将基字节计数寄存器的内容写入当前字节计数寄存器中,恢复其初始计数值。 5. 地址暂存寄存器和字节计数寄存器 这两个16位的寄存器和CPU不直接发生关系,程序员也不能控制这两个寄存器。 6. 工作方式寄存器 8单通道屏蔽寄存器寄存器 9四通道屏蔽寄存器寄存器 8237A请求寄存器格式 8237A状态寄存器格式 6.3.2 8237A的软命令 1. 清除高/低触发器 8237内部的高/低触发器用以控制写入或读出16位寄存器的高字节还是低字节。如触发器为0,则操作的为低字节;为“1”,操作的为高字节。在复位以后,此触发器被清为零,每当对16位寄存器进行操作,此触发器改变状态。我们也可以用此命令使它清为零,以改变下面要进行的读/写操作的顺序。 2. 主清除命令 这个命令与硬件的Reset信号有相同的功能,即它使命令、状态、请求、临时寄存器以及内部的高低触发器清零;使屏蔽寄存器全置为1(即屏蔽状态);使8237进入空闲周期,以便进行编程。 3. 清除屏蔽寄存器命令 6.4 8237A的工作时序 DMA控制器内部包含一个控制器寄存器和一个状态寄存器,一个地址寄存器和计数器。多通道时,控制寄存器和状态寄存器为本多个通道所公用,而地址寄存器和计数器为本每个通道所
您可能关注的文档
最近下载
- 钢结构吊装专项施工方案(技术方案).doc
- 中国成人念珠菌病诊断与治疗专家共识解读PPT课件.pptx VIP
- 05S804:矩形钢筋混凝土蓄水池.pdf VIP
- 01-泌尿系统疾病总论.ppt VIP
- 物理治疗学神经生理疗法Bobath技术.docx VIP
- Unit 3 My favourite food Lesson 2 Happy birthday, Amber! 单元教学设计 粤教沪外教版英语三年级下册.docx
- Andrews分析法诊断正畸.pptx
- (新课程中小学科学教学设计与案例分析提纲及答案2.doc VIP
- 2025年湖北省遴选面试真题及答案大全解析.docx VIP
- DB11T 1832.15-2022 建筑工程施工工艺规程 第15部分:通风与空调安装工程 conv.docx VIP
原创力文档


文档评论(0)