DMA方式和通道方式_第1页
DMA方式和通道方式_第2页
DMA方式和通道方式_第3页
DMA方式和通道方式_第4页
DMA方式和通道方式_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

1、6.6 直接存储器存取(DMA),2,一、基本概念,DMA (Direct Memory Access) 直接存储器存取 在主存储器和外设之间直接进行数据交换,不需要CPU的程序干预。通过专门的硬件装置DMA控制器(DMAC)来进行控制,并借用系统总线作为信息的传送通道。 除事先设置DMAC需要CPU介入外,一旦启动DMA传送,则完全由硬件自动操作完成,整个传送过程不再需要CPU的干预。 在微机系统中,DMAC有双重身份: 在CPU掌管总线时,它是总线上的被控设备(I/O设备),CPU可以对它进行I/O读和I/O写; 在DMAC接管总线时,它是总线的主控设备,通过系统总线来控制存储器和外设直接

2、进行数据交换。,3,一、基本概念,DMA的适用场合 高速外设(当外设的速度接近或超过一条指令的处理速度) 用于磁盘、磁带、光盘等外存储设备的接口 用于网络通信接口 用于动态存储器的刷新 用于高速数据采集接口,4,二、 DMA的传送方式,周期挪用方式 当DMA要求访问主存时,如果CPU也要访问主存,则CPU暂时停顿一个存储周期。一个数据结束后,CPU立即继续运行。也称单字传送方式。 适用:主存储器工作速度高出I/O设备较多时。可以提高主存的时间利用率,对CPU程序执行的影响较小。,5,二、 DMA的传送方式,CPU暂停访问方式 当DMA传送数据时,CPU停止工作,把主存使用权交给DMA控制逻辑。

3、在这批数据传送结束后,DMA再交还主存使用权。也称成组传送方式。 适用: I/O设备的数据传输率接近主存储器的工作速度。,6,二、 DMA的传送方式,3. DMA与CPU交替访存方式 “透明的DMA方式” 适用:外设的工作周期接近主存的存取周期,7,三、DMA接口组成,主存地址寄存器 块长计数器 设备数据地址寄存器 命令状态寄存器,数据缓冲寄存器 DMA控制逻辑 中断控制逻辑 端口译码,DMA接口 负责申请、控制总线,控制DMA传送 DMA接口的基本模型(图6.39),8,三、DMA接口组成,中断逻辑,DMA 逻辑,数据块长计数器,端口译码,命令状态 寄存器,数据缓冲寄存器,主存地址 寄存器,

4、设备数据地址 寄存器,外设,-1,1,中断向量,AB DB,中断请求,中断应答,DMA请求,DMA应答,MMRD,MMWR,四、DMA过程,包括:1 初始化、2 DMA传送、3 结束处理。 初始化,包括: 中断初始化(设置中断向量,允许中断等) 对DMA接口设置参数: 主存缓冲区首地址 传送的数据块长度 外设地址 启动命令及传送方向,10,四、DMA过程,DMA传送(以输入为例) DMA请求 当输入数据已准备好,接口缓冲寄存器已满时,接口通过DMA请求逻辑向CPU发DMA请求; DMA响应 CPU接到DMA请求,在当前内存周期结束后,将总线输出端置成高阻态,发出DMA应答信号,将总线控制权交给

5、DMA控制器 DMA访问内存 接口接到应答信号后,接管总线使用权,将接口中主存地址送地址总线,将存储器读写信号送控制总线,完成一次数据传送。 每次DMA传送后,接口中主存地址自增(或自减), 数据块长度减1 完成一次传送后,清除DMA请求信号,准备好下一批时,再发DMA请求信号。重复直至传送结束。,DMA接口组成,DMA访问内存,CPU访问内存,中断应答 中断请求,一批数据读写完毕,磁盘中断 处理程序,IRET,一条指令执行结束 中断向量,当前内存周期结束 DMA应答,DMA访问内存,CPU访问内存,DMA请求 数据寄存器满,当前内存周期结束 DMA应答,读盘,柱面符合?,扇区符合?,N,N,

6、CPU访问内存,读盘,DMA请求 数据寄存器满,其它任何程序,磁盘寻址,DMA接口,CPU,12,四、DMA过程,结束处理 数据块传送完毕后,发中断请求信号,CPU进行中断处理。(重新初始化或中止DMA操作),DMA接口组成,13,五、DMA方式特点 (与中断方式对比),DMA方式的并行性比中断方式更高; 仅初始化和结束处理需CPU干预 DMA传送无需程序切换、程序控制; DMA方式主要是靠硬件来实现数据传送; CPU响应DMA请求在CPU周期结束后,而响应中断是在当前指令周期结束后; DMA方式中存在CPU与DMA接口之间内存访问权和总线控制权的频繁转换; DMA只能完成数据传送,不能像中断

7、那样实现各种处理功能。,6.7 I/O通道控制方式,15,程序查询方式、程序中断、DMA有共同特点: 1、都需要CPU的介入 程序查询:完全介入; 中断:需要CPU介入 ,但CPU可做其他事务; DMA:在传输开始和结束时介入。 2、都需要接口硬件支持 程序查询:最简单的硬件; 中断:需增加中断控制器; DMA:需增加DMA控制器但保留中断控制器。 因此,这三种方式适用于外设不太多的小型机、微型机。对于I/O数量多,输入输出频繁的系统,占用CPU时间太多,接口硬件太复杂。,16,6.7.1 基本概念,通道,能执行有限通道指令的I/O控制器,代替CPU管理控制外设。 与DMA相比 都能在I/O设

8、备和主存之间建立数据直传通路; DMA只能实现固定的数据传送控制,而通道有自己的指令和程序,具有更强的独立处理数据输入和输出的能力。 DMA只能控制一台或少数几台同类设备,而一个通道可以同时控制多台同类或不同类设备。 通道是在一定的硬件基础上利用软件手段实现对I/O的控制和传送。,17,典型具有通道的计算机结构,18,6.7.2 通道的功能,接受CPU的I/O指令,并按指令要求选择指定外设。 从主存中取出相应通道程序执行,向设备控制器发送各种命令。 控制外设和主存间的数据交换,根据需要进行数据字的拆装,提供数据缓存空间以及指示数据存入主存的地址和数据量。 获得外设的状态信息,并形成整个通道的状

9、态信息,根据要求将这些信息存入主存特定单元,提供给CPU使用。 将来自外设的中断请求和通道本身的中断请求按次序及时报告给CPU。 来自通道的中断有两种:数据传送结束中断,故障中断。,19,6.7.3 通道的类型,字节多路通道 用于连接多台慢速外设,如键盘、打印机等 以字节交叉方式传送信息 数据传输率等于各慢速外设速度之和,20,6.7.3 通道的类型,2. 选择通道 可连接多台高速外设,但一次只选择一台设备,成组传送。待一批数据传送完毕后,才能选择另一台设备。 数据传输率等于所连接外设中速度最高的外设速率,21,6.7.3 通道的类型,3. 数组多路通道 综合前两种通道的优点,可连接多台高速设备,允许几台设备并行工作,以成组交叉方式传送。每个外设都有数据缓冲区。 最大传输率为所连外设中传输率最大的一个。,22,具有三种通道的计算机系统,主CPU,选择通道,内存,字节多路通道,数组多路通道,系统总线,局部I/O总线,局部I/O总线,局部I/O总线,23,6.7.4 通道的工作过程,通道完成一次数据传输,工作过程主要分以下3步: 在用户程序中,遇

温馨提示

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

评论

0/150

提交评论