现代微机原理及接口技术 教学课件 ppt 作者 978-7-302-18204-7 电子教案 第08章

上传人:E**** 文档编号:89395852 上传时间:2019-05-24 格式:PPT 页数:26 大小:394KB
返回 下载 相关 举报
现代微机原理及接口技术  教学课件 ppt 作者  978-7-302-18204-7 电子教案 第08章_第1页
第1页 / 共26页
现代微机原理及接口技术  教学课件 ppt 作者  978-7-302-18204-7 电子教案 第08章_第2页
第2页 / 共26页
现代微机原理及接口技术  教学课件 ppt 作者  978-7-302-18204-7 电子教案 第08章_第3页
第3页 / 共26页
现代微机原理及接口技术  教学课件 ppt 作者  978-7-302-18204-7 电子教案 第08章_第4页
第4页 / 共26页
现代微机原理及接口技术  教学课件 ppt 作者  978-7-302-18204-7 电子教案 第08章_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《现代微机原理及接口技术 教学课件 ppt 作者 978-7-302-18204-7 电子教案 第08章》由会员分享,可在线阅读,更多相关《现代微机原理及接口技术 教学课件 ppt 作者 978-7-302-18204-7 电子教案 第08章(26页珍藏版)》请在金锄头文库上搜索。

1、第8章 DMA控制器及其应用,教学目标 教学重点 教学过程,教学目标,了解DMA传送的工作原理和其在系统中的两种工作状态 了解DMA控制器8237A的内部结构和内部寄存器 掌握8237A的工作方式和控制字 掌握8237A的编程方法,教学重点,DMA传送的工作原理和其在系统中的两种工作状态 DMA控制器8237A的内部结构和内部寄存器 8237A的工作方式和控制字 8237A的编程方法,8.1 概 述,DMA(Direct Memory Access)方式指主要依靠硬件实现主存与I/O设备之间进行直接的数据传送,它是一般微机系统中都具备的一种I/O设备与主存传送数据的控制方式,称为直接存储器存取

2、方式。存储器与I/O设备之间的数据传送在DMA控制器(又称DMAC)的管理下直接进行,而不经过CPU。这种方式大大提高了传送数据的速率,但控制电路复杂,适于大批量高速度数据传送的场合。,8.1.1 DMA传送的工作原理,8.1.1 DMA传送的工作原理,DMA传送操作过程如下,(1)外设准备好数据后向DMAC发出DMA请求; (2)DMAC经过内部的判优和屏蔽处理后,向总线仲裁机构发出总线请求信号HRQ,请求占用总线。即DMAC将此请求传递到CPU的总线保持端HOLD,向CPU提出DMA请求; (3)CPU在完成当前总线周期后检测HOLD,在非总线封锁条件下,对DMA请求作出响应;一是CPU将

3、地址总线、数据总线、控制总线置高阻,放弃对总线的控制权;二是CPU送出有效的总线响应信号HLDA加载至DMAC,告之可以使用总线; (4)DMAC接收到有效的总线响应信号后,向外设送出DMA应答信号,通知外设做好数据传送准备,同时占用总线,开始对总线实施控制; (5)DMAC送出内存地址和对内存与外设的控制信号,控制外设与内存或内存与内存之间的数据传送; (6)DMAC通过计数控制将预定的数据传送完后,一方面,向外设发出传送结束信号,另一方面,向CPU发出无效的HOLD信号,撤消CPU的DMA请求; (7)CPU收到此信号后,送出无效的HLDA,并重新开始控制总线,实现正常的总线控制操作。 在

4、DMA传送期间,HRQ信号和HLDA信号一直有效,直至DMA传送结束。,8.1.2 DMA控制器在系统中的两种工作状态,DMA控制器与其他外围接口控制器不同,它具有接管和控制系统总线的功能,即取代CPU而成为系统的主控者。但在取得总线控制权之前,它也要受CPU控制。DMA控制器在系统中有两种工作状态:主动态与被动态;并处在两种不同的地位:主控器与受控器。,8.1.2 DMA控制器在系统中的两种工作状态,8.2 DMA控制器,当数据传送工作在DMA方式时,其过程完全由一种硬件电路来实现的,这种硬件电路称为DMA控制器(DMAC)。DMAC具有接收外设DMA请求、向CPU发出总线请求、形成地址信号

5、和控制信号、自动修改指针、发出结束信号等基本功能。,8.2 DMA控制器,8237A是一种高性能可编程DMA控制器,它具有一下主要特性: (1)有四个独立DMA通道,也可以采用级联方式对通道数目进行扩充。 (2)各通道具有独立的允许/禁止DMA请求的控制功能和自动预置功能。 (3)具有两种优先级可供选择:固定优先级和循环优先级。 (4)各通道具有四种工作方式:单字节传送方式、数据块传送方式、请求传送方式和级联方式。 (5)具有两种基本时序:正常时序和压缩时序。,8.2.1 8237A的内部结构和引脚,2内部结构,8237A组成,8237A主要由三个基本控制逻辑单元、三个地址/数据缓冲器单元和一

6、组内部寄存器组成。 (1)控制逻辑单元:包括定时和控制逻辑、命令控制逻辑和优先级控制逻辑。根据初始化编程所设置的工作方式寄存器的内容和命令,在输入时钟信号的控制下,定时和控制逻辑产生8237A的内部定时信号和外部控制信号。在CPU控制总线时,命令控制逻辑将CPU在初始化编程送来的命令字进行译码,当8237A进入DMA服务时,命令控制逻辑对DMA的工作方式控制字进行译码。优先级控制逻辑用来裁决各通道的优先权顺序,解决多个通道同时请求DMA服务时可能出现的优先权竞争问题。 (2)地址/数据缓冲器单元包括I/O缓冲器1、I/O缓冲器2和输出缓冲器。 (3)内部寄存器,将在下一节详细讲解。,2 823

7、7A的内部寄存器,1基地址寄存器 2当前地址寄存器 3基字节计数寄存器 4当前字节计数寄存器 5控制寄存器 6工作方式寄存器 7屏蔽寄存器 8请求寄存器 9状态寄存器 10暂存寄存器,3.8237A的工作方式,4. 8237A的控制字和编程,8237A的控制字,28237A初始化编程,对8237A初始化编程分为以下几个步骤: (1)发清除命令:向DMA+0DH端口执行一次写操作,就可以复位内部寄存器。 (2)写地址寄存:将传送数据块的首地址和末地址按照先低位后高位的顺序写入基地址寄存器和当前地址寄存器。 (3)写字节计数器:将传送数据块的字节数N(写入的值为N-1)按照先低位后高位的顺序写入基

8、字节计数器和当前字节计数器。 (4)写工作方式寄存器:设置工作方式和操作类型。 (5)写屏蔽寄存器:开放指定DMA通道的请求。 (6)写控制寄存器:设置和的有效极性,启动8237A工作。 (7)写请求寄存器:共有用软件请求DMA传送(存储器与存储器之间的数据块传送)时,才需要写该寄存器。,8.3 8237A的应用举例,1电路连接,2程序清单,STACK SEGMENT PARA STACK STACK DB 256 DUP(0) ;堆栈区256个字节 STACK ENDS DATA SEGMENT DAM EQU 0 BUFFER DB 4 DUP(0FH) ;待传送的4个字节数据 DATA

9、ENDS,2程序清单,CODE SEGMENT START PROC FAR ASSUME CS:CODE,DA:DATA PUSH DS ;保存DS段地址 MOV AX,0 PUSH AX ;保存返回地址的偏移量 MOV AX,DATA MOV DS,AX ;建立数据段地址 CLI ;禁止全部中断申请,2程序清单,MOV AL,89H ;工作方式:通道1,读传送,禁止 ;自动预置,地址加1,成组传送 OUT DMA+0BH,AL ;写通道1方式寄存器 OUT DMA+0CH,AL ;清除字节指示器,计算缓冲区20位绝对地址 MOV AX,DS ;取数据段地址 MOV CL,4 ;移位次数 R

10、OL AX,CL ;循环左移4次 MOV CH,AL ;将DS的高4位存CH AND AL,0F0H ;去除DS的高4位 MOV BX,OFFSET BUF ;获得缓冲区首地址偏移量,2程序清单,ADD AX,BX ;计算16位绝对地址 JNC DMAIN ;无进位则跳至DMAIN INC CH ;有进位则DS高4位加1 DMAIN: OUT DMA+2,AL ;通道2当前地址寄存器和基地址寄存器低8位 MOV AL,AH OUT DMA+2,AL ;通道2当前地址寄存器和基地址寄存器高8位 MOV AL,CH,2程序清单,AND AL,0FH ;取高4位绝对地址 OUT 083H,AL ;高

11、4位地址写入页面寄存器第三组 MOV AL,03H ;通道1基字寄存器低8位 OUT DMA+3,AL ;通道1基字寄存器高8位 OUT DMA+8,AL ;命令字为0,允许DMA,正常时序,固定优先权 ;滞后写,高电平有效,低电平有效,2程序清单,MOV AL,01H OUT DMA+10,AL ;清除通道1屏蔽位,允许通道1DMA请求 STI START ENDP CODE ENDS END START,小 结,数据传送是微型计算机系统中大量进行的操作。存储器与存储器之间或存储器与I/O设备之间的数据传送可以采用DMA方式进行。DMA传送过程由DMA控制器直接控制,借助于总线来完成,不受CPU干预。因此,可以进行大量的、快速的数据传送。DMA控制器具有接收外设DMA请求、向CPU发出总线请求、形成地址信号和控制信号、自动修改指针、发出结束信号等基本功能。8237A是一种常用的高性能可编程DMA控制器,用来对DMA传送过程进行控制。它有多类型的可编程控制特性,从而可增进系统的优化和增大数据的吞吐量,并允许在程序控制下实现动态控制。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号