好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

输入输出技术DMA研究报告.ppt

28页
  • 卖家[上传人]:yuzo****123
  • 文档编号:137583852
  • 上传时间:2020-07-09
  • 文档格式:PPT
  • 文档大小:437.50KB
  • / 28 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第9章 DMA控制接口及内部结构,本章以DMA控制器8237A为例,主要介绍其工作原理、结构、工作时序及工作方式等,重点介绍DMAC的内部寄存器、编程方式及其应用9.1 DMA概述,DMA传输方式作是CPU与外部设备之间进行数据交换的四种基本方式之一,采用专门的硬件,即DMA控制器来控制数据的传输,克服了数据传输由程序控制而使系统工作效率低的缺点 9.1.1 DMA传输的特点 (以硬件控制取代软件控制进行信息传送) DMA控制器暂时享有总线控制权,行使地址修改、控制数据传送等功能,数据传送速度主要受存储设备的存取速度限制9.1.2 DMA传输的过程及工作方式,在DMA数据传输过程中脱离了CPU的控制,采用DMA控制器来管理和控制数据传输的整个过程,而DMA控制器的启动初始化,都是由CPU控制完成 DMA控制原理图如下:,,DMA传输的过程的三个阶段 DMA方式传送数据过程分为3阶段,即准备阶段、数据传送阶段和传送结束阶段9.1.3 DMA控制器的结构,DMA控制器可以像CPU那样获得总线的控制权,完成外设与存储器之间的数据高速交换DMA控制器不但要与外设连接,以接受外设发出的DMA操作请求和在DMA期间对外设进行控制,还要与CPU连接,以请求总线的控制权;同时,它还需要与三大总线连接,以便进行总线的控制。

      DMA控制器内部结构与外设的连线,9.2 DMA控制器8237A,DMA控制器可以像CPU那样获得总线的控制权,完成外设与存储器之间的数据高速交换DMA控制器不但要与外设连接,以接受外设发出的DMA操作请求和在DMA期间对外设进行控制,还要与CPU连接,以请求总线的控制权;同时,它还需要与三大总线连接,以便进行总线的控制9.2.1 8237A控制器的特点 1、8237A有4个独立的DMA通道,可以编程实现对4个不同外设DMA传送操作的控制; 2、每个通道的DMA请求都可以被允许和禁止,并能对各个通道的DMA请求进行优先权管理; 3、能完成存储器与外设之间的数据传送,还可以完成存储器两个区域之间的数据传送,每个通道一次传送数据的最大长度可达64KB; 4、存储器的寻址范围为64K; 5、8237A的DMA传送方式有4种:单字节传送方式、成组传送方式、请求传送方式和级联传送方式; 6、8237A可以通过级联方式扩展通道数; 7、具有控制传送结束用的外接过程结束控制信号输入端EOP,允许外部输入该信号以结束DMA传送9.2 DMA控制器8237A,DMA控制器在系统中有两种工作状态,即主动态和被动态。

      在主动态时,DMA控制器完全取代CPU对总线的控制权,通过总线向存储器或外设发出地址和读/写信号,以控制两种存储实体间的数据交换在被动态时,DMA与其它接口一样,接受CPU对它的读/写操作,在进行DMA方式传送之前,由CPU处理对DMA控制器编程,以确定通道选择DMA操作类型及方式、内存首地址及需要传送的字节数等参数 1.8237A的内部结构 8237A是一个多功能的可编程DMA控制器,内部主要包括时序和控制逻辑、优先级编码逻辑、命令控制逻辑、数据和地址缓冲器组和内部寄存器组9.2.2 工作原理、内部结构和引脚,8237A内部结构,9.2.2 工作原理、内部结构和引脚,,1、时序与控制逻辑 该部分的功能是根据初始化编程时所设置的工作方式,在输入时钟和定时控制下,产生8237A的内部定时信号和外部控制信号,其中内部定时信号包括DMA请求、DMA传送及DMA结束等 2、优先级编码逻辑 该部分的功能是在有多个通道都有DMA请求的情况下,根据CPU对8237A初始化命令,对多个通道DMA请求进行优选权排序,来决定通道优先级别服务的先后顺序,以解决多通道同时请求DMA服务可能造成的冲突问题。

      3、命令控制逻辑 该部分的功能是对CPU送来的地址信号进行译码,通过译码来确定要读/写的内部寄存器9.2.2 工作原理、内部结构和引脚,4、数据和地址缓冲器组 8237A包括两个I/O缓冲器和一个输出缓冲器,8237A的数据线和地址线通过这些缓冲器与系统总线连接,可以接管和释放总线A7A0为8237A的地址线,DB7DB0在主态时传送地址信息,在被动态时传送数据信息 5、内部寄存器组 8237A内部寄存器主要分为两大类其中5种属于通道寄存器,即8237A中每个通道都有的基地址寄存器、当前地址寄存器、当前字节字计数器、基字节计数器、方式寄存器;另外5种属于公用寄存器,即每个通道公用的命令寄存器、状态寄存器、请求寄存器、屏蔽寄存器和暂存器9.2.2 工作原理、内部结构和引脚,1. 8237A的工作时序,9.2.3 8237A的工作时序及工作方式,2. 8237A的工作方式 DMA传送方式分有四种,即单字节传送、成组传送、请求传送和级联传送方式等 单字节传送方式 每个DMA工作周期只传送一个字节的数据,每传完一个字节传送后,位于DMA控制器中的字节计数器的值减1,然后撤销DMA控制器对CPU的请求信号,让出总线的控制权。

      成组传送方式 DMA控制器请求总线连续传送多个字节数据,数据的字节数在DMA传送前通过初始化编程进行设置 请求传送方式 由外部是否有DMA请求决定,如果有DMA请求,DMA控制器才有可能占用总线,进行连续的数据传送 级联传送方式 主要是为了完成DMA系统的扩展,可以实现由多个DMA控制器构成的主从式DMA传送系统9.2.3 8237A的工作时序及工作方式,8237A内部寄存器主要分为两大类:公用寄存器和通道寄存器9.2.4 8237A的内部寄存器,,1. 公用寄存器 1) 命令寄存器 8237A的4个通道公用的一个8位寄存器,用于存放编程的命令字,由CPU在编程时写入,控制8237A的操作其命令字格式如下图所示:,9.2.4 8237A的内部寄存器,,,2)状态寄存器 状态寄存器是用来存放8237A状态信息的8位寄存器其中高4位分别对应当前4个通道DMA请求响应情况,低4位分别表示4个通道的计数结束状态格式如下:,9.2.4 8237A的内部寄存器,,,3)请求寄存器 8237A 内部都有一个请求寄存器,最低两位D1D0用来实现对通道的选择,D2规定了对所选通道的请求触发器所执行的操作了。

      格式如图所示:,9.2.4 8237A的内部寄存器,,,4)屏蔽寄存器 8237A 内部都有一个屏蔽寄存器,由4个通道的屏蔽触发器共同构成格式如图所示:,9.2.4 8237A的内部寄存器,,,,上述的屏蔽字用于对某个通道的屏蔽触发器单独操作,8237A还允许使用综合屏蔽命令来设置通道的屏蔽触发器综合屏蔽命令可以一次性完成4个通道的屏蔽设置通过综合屏蔽命令可以一次完成对4个通道的屏蔽设置格式如图所示:,9.2.4 8237A的内部寄存器,,,,,5)暂存寄存器 暂存寄存器是8237A内部一个公用8位寄存器,用于在进行存储器之间数据传送时,暂时保留所传送的数据 2、通道寄存器 1)方式寄存器 8237A的4个通道是完全独立的,每个通道都有一个6位的方式寄存器,用于选择DMA的传送方式和类型等8237A方式寄存器的格式如图所示:,9.2.4 8237A的内部寄存器,,,2)当前地址寄存器 8237A的每个通道都有一个16位的当前地址寄存器,用以存放DMA传送的地址 3)当前字节计数寄存器 8237A的每个通道都有一个16位的当前字节计数寄存器,用以存放当前DMA传送的字节数。

      4)基地址寄存器 8237A的每个通道都有一个16位的基地址寄存器,用以存放DMA传送的起始地址基地址寄存器与当前地址寄存器合用一个端口地址 5)基字节计数寄存器 8237A的每个通道都有一个16位的基字节计数寄存器,用以存放对应通道当前字节的初始值基字节计数寄存器与当前字节计数器和用一个端口地址9.2.4 8237A的内部寄存器,,,9.3.1 8237A的编程控制 1. 8237A的软件命令 为实现对8237A编程控制,8237A专门设计了3条特殊的软命令:复位命令、清除先/后触发命令和清除屏蔽寄存器 1) 复位命令 也称总清除命令,与硬件复位信号RESET相同该命令通过向0DH地址进行输出完成 2) 清除先/后触发命令 该命令保证正确设置8237A各个通道的地址寄存器和字节计数寄存器的初值,通过向OCH地址进行输出完成 3) 清除屏蔽寄存器 该命令可以清除8237A的4个通道屏蔽标志位,通过向0EH地址进行输出完成,允许各个通道接受DMA请求9.3 DMA控制器8237A的应用,,,2. 8237A初始化编程 在进行DMA传送之前,CPU要对8237A进行初始化编程。

      初始化操作是在空闲周期内进行,是由CPU用输出指令向8237A内部寄存器写数据 1)8237A初始化的基本步骤 右图所示为8237A的初始化编程流程9.3.1 8237A的编程控制,,,,2)8237A内部寄存器对应的端口地址,9.3.1 8237A的编程控制,,,,,综合屏蔽控制字:02H,例:在8088CPU系统板上的DMA控制器8237A中,通过通道1将外设50字节的数据送入首地址为6000H的内存区域,编写初始化程序 工作方式字:55H,,,,,,命令控制字:00H,,,,,,MOV AL, 04H ;命令字,关闭8237A(D2=1) OUT 08H, AL ;写入命令寄存器中 MOV AL, 00H OUT 0DH,AL ;总清除,发复位命令 MOV AL, 00H OUT 02H, AL ;存储器的首地址低8位写入通道1的地址寄存器 MOV AL, 60H OUT 02H, AL ;存储器的高8位写入通道1的地址寄存器 MOV AL, 32H OUT 03H, AL ;传送字节的低8位写入通道1的基字节计数寄存器 MOV AL, 00H OUT 03H, AL ;传送字节的高8位写入通道1的基字节计数寄存器 MOV AL, 55H ;工作方式字:单字节传送,写操作,地址加1 OUT 0BH, AL ;工作方式字写入方式寄存器 MOV AL, 02H ;综合屏蔽命令字:允许通道1工作 OUT OFH, AL ;写入综合屏蔽命令字 MOV AL, 00H ;命令字:优先级固定,启动8237A工作 OUT 08H, AL ;命令字写入控制寄存器,初始化程序如下:,,,,,,,。

      点击阅读更多内容
      相关文档
      2025年度安全环保知识竞赛总复习题库及答案(共380题).doc 2025年度安全环保知识竞赛总复习题库及答案(共300题).doc 2025年度安全环保知识竞赛总复习题库及答案(共350题).doc 2025年度《行政法与行政诉讼法》知识考试复习题库及答案(完整版).doc 2025年地球地理自然科学知识竞赛题库及答案(共360题).doc 2025年地球地理自然科学知识竞赛题库及答案(共350题).doc 2025年度大学生党校党课入党积极分子培训考试试卷及答案(共四套).doc 2025年电力安全知识竞赛试题200题及答案.docx 2025年度安全环保知识竞赛总复习题库及答案(共360题).doc 2025年度《建筑设备》课程形成性考核试卷及答案(共四套).doc 2025年地球地理自然科学知识竞赛题库及答案(共380题).doc 2025年度大学生法律知识竞赛试题库及答案(共200题).doc 2025年第二届安全知识竞赛题库及答案(完整版).docx 2025年地球地理自然科学知识竞赛题库及答案(共330题).doc 2025年党纪党规知识竞赛题目及答案(完整版).docx 2025年度大学生安全知识竞赛题库及答案.doc 2025年度安全环保知识竞赛总复习题库及答案(共330题).doc 2025年第六届传统文化知识竞赛初赛题库及答案(共270题).docx 2025年党员入党积极分子培训结业考试复习题库及答案.docx 2025年党员领导干部应知应会廉政知识要点汇编(90个).docx
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.