DMA技术.ppt_第1页
DMA技术.ppt_第2页
DMA技术.ppt_第3页
DMA技术.ppt_第4页
DMA技术.ppt_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 电子发烧友 电子技术论坛,1,为什么DMA传送方式能实现高速传送? DMA传送的过程是什么样的?画出流程。 DMA有哪些操作方式?各有什么特点。 简述DMA控制器的两个工作状态的特点。 试设计一种在8088大模式下与8237连接的基本电路图。并说明你的设计中8237各个端口的实际地址。 DMA控制器的时序包括哪几个状态周期?试画出正常读传输的时序。 DMAC的内部地址寄存器是16位的,如何扩展地址来访问16MB的地址空间?,自学思考题, 电子发烧友 电子技术论坛,2,4.1.1 数据传送的控制, 数据传送涉及的3个问题 1)数据的来源; 2)数据的去处; 3)数据本身以及如何控制数据的传送。

2、,第4章 DMA技术 4.1 概述, 电子发烧友 电子技术论坛,3, DMA方式控制的数据传送, 电子发烧友 电子技术论坛,4, DMA传送方式通常用来高速传送大批量的数据块。如:, 硬盘和软盘I/O; 快速通信通道I/O;, 多处理机和多程序数据块传送; 在图像处理中,对CRT屏幕送数据;, 快速数据采集; DRAM的刷新操作。, 电子发烧友 电子技术论坛,5, DMA传送包括: (1)存储单元传送:存储器存储器。 (2)DMA读传送:存储器I/O设备。 (3)DMA写传送:I/O设备存储器。, 电子发烧友 电子技术论坛,6,4.1.2 DMA传送的工作过程,1)I/O设备向DMAC发出DM

3、A请求; 2) DMAC向CPU发出总线请求;,3)CPU在执行完当前指令的当前的总线周期后,向DMAC发出总线响应信号; 4)CPU脱离对系统总线的控制,由DMAC接管对系统总线的控制;, 电子发烧友 电子技术论坛,7,5)DMAC向I/O设备发出的DMA应答信号; 6)DMAC进行一个字节的传送; 7)完成设定的字节数据传送,CPU恢复对系统总线的控制。, 电子发烧友 电子技术论坛,8,4.1.3 DMA传送的方式,1DMA操作类型 数据传送。数据传送是把源地址的数据传送到目的地址中去。 数据检验。当数据传送完毕之后,可以进行校验操作。校验操作并不进行数据传送,只进行数据校验。但操作过程仍

4、然要通过DMAC向CPU提出申请,进入DMA周期。 数据检索。数据检索操作并不进行数据传送,只是对在指定的内存区内查找某个关键字节或某几个关键数据位是否存在,如果查找到了,就停止检索操作。, 电子发烧友 电子技术论坛,9,2DMA操作方式 单字节操作方式。每次进行DMA操作只操作一个字节 。 连续操作方式。只要DMA操作开始,DMAC始终占用总线,直到DMA操作完成,才把总线控制权交还CPU。 请求操作方式。如果有DMA请求,则DMAC就占用总线;当DMA请求无效,或DMA操作完成,或由外部传来过程结束信号(EOP)时,DMAC都会释放总线。 级联传送方式。, 电子发烧友 电子技术论坛,10,

5、4.2 DMA控制器,4.2.1 DMA控制器在系统中的两种工作状态,1)主动态 在DMAC获得总线控制权之后,DMAC取代CPU而成为系统的主控者,接管和控制系统总线(数据总线、地址总线和控制总线)。通过总线向存储器或I/O设备发出地址、读/写信号,以控制在两个实体之间的传送。,2)被动态 在DMAC获得总线控制权之前,DMAC受CPU控制(。此时,CPU可对DMAC进行初始化编程,也可从DMAC中读出状态。当DMAC上电或复位时,DMAC自动处于被动态。, 电子发烧友 电子技术论坛,11,4.2.2 82C37A 的内部结构和引脚功能说明,1. 82C37A的特点 具有4个独立的DMA通道

6、,每个通道都可独立地进行初始化。 每个通道的DMA请求都可以被允许或禁止。 每个通道的DMA有不同的优先级,既可以是固定优先级,也可以是循环优先级。 每个通道进行一次传送的最大字节数为64K。 提供4种传送方式:单字节传送方式、数据块传送方式、请求传送方式和级联传送方式。 时钟频率从DC到5MHz的全静态设计。 在5MHz的时钟频率下传送速率高达1.6MB/s。, 电子发烧友 电子技术论坛,12,282C37A 的内部结构 DMA通道 读/写控制 控制逻辑, 电子发烧友 电子技术论坛,13,82C37A内部逻辑框图, 电子发烧友 电子技术论坛,14,282C37A 的引脚功能, 电子发烧友 电

7、子技术论坛,15,4.2.3 82C37A 的内部寄存器, 电子发烧友 电子技术论坛,16,1控制寄存器, 电子发烧友 电子技术论坛,17,2工作方式寄存器, 电子发烧友 电子技术论坛,18,3状态寄存器, 电子发烧友 电子技术论坛,19,4请求寄存器, 电子发烧友 电子技术论坛,20,5屏蔽寄存器, 电子发烧友 电子技术论坛,21,4.2.4 82C37A DMA控制器端口地址, 电子发烧友 电子技术论坛,22,4.2.5 软命令,1)清先/后触发器软命令 MOV AL, 0XXH;0XXH为AL中任意值 OUT 0CH, AL; 先/后触发器被清“0”,2)总清除软命令 MOV AL, 0

8、XXH;0XXH为AL中任意值 OUT 0DH, AL;写入总清端口,执行总清除命令,3)清屏蔽寄存器软命令。 MOV AL, 0XXH ;0XXH为AL中任意值 OUT 0EH, AL;写入清屏蔽寄存器端口, 电子发烧友 电子技术论坛,23,4.2.6 DMA控制器的工作时序, DMA空闲周期SI 过渡状态S0 DMA 有效周期(S1、S2、S3、S4), 82C37A内部状态变化流程, 电子发烧友 电子技术论坛,24, 电子发烧友 电子技术论坛,25,4.3 DMA编程和应用举例 4.3.1 82C37A的初始化编程, 初始化编程的步骤: 命令字写入控制寄存器 屏蔽字写入屏蔽寄存器,方式字

9、写入方式寄存器 清“0” 先/后触发器,写入地址寄存器字节寄存器 解除屏蔽 写入请求寄存器, 电子发烧友 电子技术论坛,26,4.3.2 82C37A 的应用举例,182C37A DMAC的级联, 电子发烧友 电子技术论坛,27,2如何扩展82C37A DMAC的寻址空间, 电子发烧友 电子技术论坛,28, 电子发烧友 电子技术论坛,29,3应用举例,现假设在级联的82C37的主片通道1,将内存其始地址为80000H的280H字节的内容直接输出到外部设备。,MOVAL, 4;命令字, 禁止82C37工作 OUT08, AL;写命令寄存器 MOVAL, 0 OUT0CH, AL;清除先/后触发器 OUT02, AL;写低位地址 OUT02, AL;写高位地址, 电子发烧友 电子技术论坛,30,MOV AL, 8 ;页面地址为8 OUT 83H, AL ;写页面寄存器 MOV AX, 280H ;传输字节数 DEC AX OUT 03, AL ;写字节数低位 MOV AL, AH OUT 03, AL ;写字节数高位 MOV AL, 49H ;模式字: 单字节读, 地址加1 OUT 0BH, AL, 电子发烧友 电子技术论坛,31,MOV AL, 40H;命令字: DAC

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论