第5章输入输出系统_第1页
第5章输入输出系统_第2页
第5章输入输出系统_第3页
第5章输入输出系统_第4页
第5章输入输出系统_第5页
已阅读5页,还剩64页未读 继续免费阅读

下载本文档

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

文档简介

1、主要知识点:1主机与输入输出设备间传送数据的四种控制方式 程序查询、中断、DMA、通道2系统总线的结构,理解输入/输出接口的分类、功能及基本组成。3中断处理的全过程,中断优先、中断屏蔽、中断嵌套、中断向量的概念。4DMA方式的原理和工作过程重点与难点: 程序中断的概念、中断系统的组成、中断处理的具体过程、 DMA方式的基本原理。 5.1 概述 输入输出系统包括: (1)硬件部分:外部设备、接口、系统总线 系统总线是连接主机与外设的信息载体; 接口是控制主机与外设间信息传送控制方式的电路 (2)软件部分: 设备控制程序是指在一些设备控制器中由微处理器执行的程序; 设备驱动程序是指“操作系统”中一

2、组对外设的驱动程序。 用户I/O程序:简单统一的界面实现设备控制一、主机与外设的连接模式1、单总线方式2、双总线方式CPU内存设备接口设备接口系统总线(单总线结构)CPU内存设备接口设备接口内存总线系统总线(双总线结构)CPU内存设备接口IOP(通道)内存总线系统总线(三总线结构)设备接口I/O总线3、三总线方式(高性能多总线结构)判定与分配选择通道磁盘控制器磁盘控制器字节多路通道设备控制器设备控制器设备设备设备数组多路通道设备控制器设备控制器设备设备设备CPU主存磁盘磁盘磁盘I/O总线IO总线IO总线存储总线(IBM 370的通道结构)(IBM 370的通道结构)4、 通道控制方式与输入输出

3、处理机(IOP)方式 通道本身是一个专门管理输入/输出的控制器。 通道控制器的进一步发展,使之成为一个处理器,就是IOP方式。 特点:信息传送的吞吐量大,大型计算机中采用。 二、总线类型与总线标准 总线是一组可以分时、共享分时、共享 的公共信息传输线路。1、按功能分类:内部总线、系统总线、外部总线CPUCPU地址锁存器地址锁存器地址总线地址总线数据缓冲器数据缓冲器数据总线数据总线总线控制器总线控制器控制总线控制总线主主存存中中断断控控制制器器DMADMA控控制制器器接口接口I/OI/O设备设备接口接口I/OI/O设备设备适配器外围设备CPURAMROMPIOCTC总线控制逻辑总线扩展板存储模块

4、扩展板打印机接口板显示器接口板外总线系统总线部件内总线(局部总线与系统总线结构图)2、 按数据传送格式分 并行总线 串行总线发送部件接收部件10110101高位低位并串转换串并转换发送部件接收部件传送数据10110101并行总线串行总线3、按时序控制方式分 同步总线 异步总线4、总线标准 微机中有:PC总线 ISA总线 EISA总线 PCI总线 等三、接口的功能与分类 1、接口功能主要有4点: 寻址 数据缓冲 数据格式变换、电平转换 控制逻辑 2、接口分类 并行接口与串行接口 同步接口与异步接口 中断接口、DMA接口 等等 3、接口的主要部件组成: 数据缓冲器 设备地址识别线路 设备状态寄存器

5、 主机命令字寄存器 数据格式转换 控制逻辑4、I/O接口(I/O设备)的编址方式 (1) 统一编址方式 (2) 独立编址方式00007FFF8000FFFF主存地址空间I/O地址空间例:统一编址方式0000FFFF主存地址空间000I/O地址空间3FF例: 独立编址方式5.2 系统总线 一、总线信号组成 1、总线标准的制定应描述出总线的4个特性: 物理特性(机械特性) 电气特性 逻辑特性(功能特性) 时序特性 2、按逻辑特性分,系统总线分为4组: (1)电源线、地线 (2)地址线 (3) 数据线 (4)控制信号线 控制信号线通常包括: (1)复位信号(RESET) (2)同步定时信号 例:CP

6、U时钟(CLOCK)、总线状态信号(S0,S1)、 刷新同步(REFESH)、机器周期同步(MCSYNC)等 (3)异步应答信号 主同步(MSYNC)、从同步(SSYNC) (4)总线控制权信号 总线请求(BREQ)、总线批准(BACK)、总线忙(BUSY) (5)中断请求与批准 信号 中断请求(IREQ1IREQ7)、中断响应(INTA) (6)数据传送控制信号 存储器读(MEMR)、存储器写(MEMW)、 输入输出设备读(IOR)、输入输出设备写(IOW)T1T2T3T4总 线 周 期时钟地址读命令数据(总线的同步控制方式)二、总线操作时序 1、同步控制方式2、异步控制方式地地址址M MR

7、 RE EQ QR RD DM MS SY YN N数数据据S SS SY YN N主,请求从,回答主,请求从,回答主,请求从,回答不互锁半互锁全互锁三、总线的仲裁 1、集中式仲裁 链式查询仲裁 计数器定时查询仲裁 独立请求仲裁 2、分布式仲裁四、总线带宽 各功能总线组中的信号线数,即总线一次操作可以传输的数据位数,位数越多则一次传输的信息也越多。5.3 直接程序传送方式及接口直接程序传送方式及接口 一、基本原理一、基本原理 通过通过CPU执行一段程序,控制外部设备与主机之间的数据传执行一段程序,控制外部设备与主机之间的数据传送的整个过程。送的整个过程。CPU在执行程序时需要不断查询外部设备的

8、状在执行程序时需要不断查询外部设备的状态,如果设备的数据传送没有准备好,态,如果设备的数据传送没有准备好,CPU就反复查询;只有就反复查询;只有当设备准备好(当设备准备好(READY),),CPU才能用才能用I/O指令传送一个数据。指令传送一个数据。 特点:特点: (1)CPU主动的不断查询外设状态;主动的不断查询外设状态;(2)数据的输入)数据的输入/输出都必须经过输出都必须经过CPU;(3)CPU 与设备间是串行工作,所以与设备间是串行工作,所以CPU的使用效率低。的使用效率低。二、程序控制流程二、程序控制流程 直接程序传送方式的直接程序传送方式的程序流程图见右边的图。程序流程图见右边的图

9、。 启动设备 准备好?传送数据修改内存地址数据量减1 传送完?关闭设备NYNY读取设备状态三、程序查询方式的接口三、程序查询方式的接口电路电路数据缓冲寄存器命令/状态寄存器译码地址IOWIOR系统总线设备0号采集器准备好?1号采集器准备好?2号采集器准备好?3号采集器准备好?从0号采集器输入一个数据YesNo从1号采集器输入一个数据YesNo从2号采集器输入一个数据YesNo从3号采集器输入一个数据YesNo主程序流(程序直接控制方式的顺序查询程序流程)5.4 程序中断方式及接口程序中断方式及接口 一、一、 基本概念基本概念 1、什么叫程序中断、什么叫程序中断 在程序执行过程中,由于某个随机在

10、程序执行过程中,由于某个随机事件的请求,暂停现程序的执行,转事件的请求,暂停现程序的执行,转去执行一段处理此随机事件的程序,去执行一段处理此随机事件的程序,处理完后又回到原程序继续执行,这处理完后又回到原程序继续执行,这一过程叫一过程叫“程序中断程序中断”。返回中断服务程序响应主程序中断请求2、程序中断的特点:、程序中断的特点:(1)当数据传送)当数据传送“准备好准备好”时由设备主动向时由设备主动向CPU提出中断请求;提出中断请求;(2)CPU与设备是并行工作的;与设备是并行工作的;(3)一般用于低速设备的数据传送。)一般用于低速设备的数据传送。3、 中断分类中断分类 中断内中断外中断外设的请

11、求人工干预自愿中断强迫中断硬件故障软件故障(强迫中断)(程序中安排,通过中断指令引起)如“溢出中断”二、二、 中断请求信号的提出与传送中断请求信号的提出与传送 1、中断请求信号的提出、中断请求信号的提出QIRQD CQIRQD CIRQIRQ屏蔽寄存器IRQIRQ07INT中断控制器TDTMTDTMINT0INTnCPUCPUINT多线请求单线请求CPUINTINT0nINT0INTnINTi二维多线请求2、中断请求信号的传送、中断请求信号的传送 (1) 多线请求多线请求 (2)单线请求)单线请求 (3)二维结构方式)二维结构方式 (4)混合方式)混合方式三、优先权逻辑与屏蔽技术三、优先权逻辑

12、与屏蔽技术 优先权有两种类型:优先权有两种类型: (1) CPU与中断源间的优先关系与中断源间的优先关系 (2)各个中断源之间的优先关系)各个中断源之间的优先关系1、CPU与中断源间的优先关系与中断源间的优先关系 对于中断源的中断请求,对于中断源的中断请求,CPU是否是否“有求必应有求必应”? 不是的。不是的。 当当CPU当前的优先权高于中断源的优先权时,当前的优先权高于中断源的优先权时,CPU可以不可以不响应中断请求。反之,则必须响应。响应中断请求。反之,则必须响应。 CPU内部设有一个内部设有一个“中断允许触发器中断允许触发器” TIEN, TIEN =1时,时,允许允许CPU响应中断,响

13、应中断, TIEN =0时,不允许时,不允许CPU响应中断。响应中断。 可以用指令使可以用指令使TIEN =1,称,称“开中断开中断”,例,例8086中的开中断中的开中断指令指令 STI; 可以用指令使可以用指令使TIEN =0,称,称“关中断关中断”,例,例8086中的关中断中的关中断指令指令 CLI。2、中断源之间的优先关系、中断源之间的优先关系 分两种情况:分两种情况: (1)同时有多个中断源请求,优先响应谁?)同时有多个中断源请求,优先响应谁? (2)当)当A中断源的请求正在处理时,中断源的请求正在处理时,B中断源又提出请求,中断源又提出请求,CPU是否响应?(也即是否响应?(也即 中

14、断嵌套中断嵌套 的问题)的问题) 优先关系的基本原则:优先关系的基本原则: 故障中断故障中断 DMA请求请求 外设中断请求外设中断请求 快速外设快速外设 慢速外设慢速外设 输入设备输入设备 输出设备输出设备 进一步优先权处理方法:进一步优先权处理方法: 对于同时请求的多个中断源,采用对于同时请求的多个中断源,采用“优先排队优先排队”技术。如下:技术。如下:(1)软件查询方法)软件查询方法 CPU响应中断后,响应中断后,进入一个公共的中断处进入一个公共的中断处理程序,在该程序中,理程序,在该程序中,CPU用用“查询查询I/O指指令令”,依次测试各中断,依次测试各中断源是否有中断请求,若源是否有中

15、断请求,若有请求,有请求,CPU就转入相就转入相应的中断服务程序,;应的中断服务程序,;没有,就继续往下查询。没有,就继续往下查询。 可见,先查询到的中断可见,先查询到的中断源优先权高。源优先权高。 软件查询方法的程软件查询方法的程序流程图见右边:序流程图见右边:0号设备请求?1号设备请求?2号设备请求?3号设备请求?执行0号设备中断服务程序YesNo执行1号设备中断服务程序YesNo执行2号设备中断服务程序YesNo执行3号设备中断服务程序YesNo保护断点和现场(响应中断)恢复断点和现场(返回主程序)(程序中断方式的固定优先级查询流程)INTR0INTR1INTR2INTR0INTR1IN

16、TR2(具有独立请求线的并行排优逻辑)(2) 并行优先排队逻辑并行优先排队逻辑 每个中断源提供独立的中断请求信号给每个中断源提供独立的中断请求信号给CPU。 特点:特点: 响应的响应的速度快;速度快; 但硬件但硬件成本高。成本高。 适用于适用于具有多请具有多请求线的计求线的计算机系统。算机系统。CPUI/OI/O编码INTINTA链式优先排队(菊花链方式)I/OI/O编码INTINTA链式优先排队(多重查询方式)(3) 链式优先排队逻辑链式优先排队逻辑设备A设备B设备C设备D设备E设备F设备G设备H设备I01IR201IM2中断优先排队电路与中断控制逻辑01IR101IM101IR001IM0

17、INTR2INTR1INTR0高低优先权CPUINTA2INTA1INTA0(4)二维结构的优先排队)二维结构的优先排队中断请求寄存器优先级分析电路中断服务寄存器中断屏蔽寄存器数据缓冲读/写逻辑级联缓冲与比较器IREQ0IREQ1IREQ2IREQ3IREQ4IREQ5IREQ6IREQ7INTINTAD -DARDWRCSCAS0CAS1CAS2SP/EN007中断控制器8259A结构示意图(5) 中断控制器集成芯片的优先排队中断控制器集成芯片的优先排队(Intel 8259A) 屏蔽技术的应用,屏蔽技术的应用, 解决中断嵌套的问题。解决中断嵌套的问题。 在多重中断方式下,在多重中断方式下,

18、CPU响应某个中断源的请求后,应响应某个中断源的请求后,应禁止响应优先权小于或等于它的中断请求。而可以响应优先禁止响应优先权小于或等于它的中断请求。而可以响应优先权大于它的中断源的请求。权大于它的中断源的请求。 通常采用设置屏蔽码的办法。屏蔽掉优先权低的中断请求,通常采用设置屏蔽码的办法。屏蔽掉优先权低的中断请求,开放优先权高的请求。开放优先权高的请求。 利用屏蔽技术,动态修改优先权。利用屏蔽技术,动态修改优先权。 中断响应优先权中断响应优先权:指由硬件优先排队电路分配的各个中断:指由硬件优先排队电路分配的各个中断源在中断响应时的优先关系,一经确定,不易改变。源在中断响应时的优先关系,一经确定

19、,不易改变。 中断处理优先权中断处理优先权:指利用屏蔽字,分配各中断源被处理时:指利用屏蔽字,分配各中断源被处理时的优先关系。可以通过修改屏蔽字的值,改变中断源的优先的优先关系。可以通过修改屏蔽字的值,改变中断源的优先关系。关系。四、中断服务程序入口的获取方式四、中断服务程序入口的获取方式1、 非向量中断非向量中断 CPU响应中断后响应中断后 ,产生一个,产生一个固定的地址,由此地址单元中读固定的地址,由此地址单元中读取中断查询程序的入口地址,取中断查询程序的入口地址,通通过软件查询确定中断源,过软件查询确定中断源,并转入并转入相应的中断服务程序。相应的中断服务程序。01JMP nnnn查询程

20、序 如图:以如图:以1号单元作为固定地址,号单元作为固定地址,该单元中安排一条转移指令,转到地该单元中安排一条转移指令,转到地址为址为nn的查询程序去。的查询程序去。 非向量中断法的优点是:简单、易实现,成本低。非向量中断法的优点是:简单、易实现,成本低。 缺点是响应的速度慢。缺点是响应的速度慢。向量中断向量中断 (1) 有关的概念有关的概念 . 中断向量中断向量 所有中断服务程序的入口地址和状态字在一起,称做所有中断服务程序的入口地址和状态字在一起,称做中断向量。中断向量。 . 中断向量表中断向量表 所有中断服务程序的入口地址(或包括服务程序的状态字)所有中断服务程序的入口地址(或包括服务程

21、序的状态字)组织成一维表,存放在一段连续的存储区。该存储区叫中断组织成一维表,存放在一段连续的存储区。该存储区叫中断向量表。向量表。 . 向量地址向量地址 存放某中断源的中断服务程序入口地址的单元地址叫向量存放某中断源的中断服务程序入口地址的单元地址叫向量地址。地址。 (2) 向量中断向量中断 响应中断时,由响应中断时,由硬件直接产生硬件直接产生对应于中断源的向量地址,据此访问对应于中断源的向量地址,据此访问中断向量表,从中读取服务程序入口地址,由此转向服务程序。中断向量表,从中读取服务程序入口地址,由此转向服务程序。 0000000100020003偏移量 .段地址 .中断向量表向量地址00

22、04;00230024;007F0080;03FF中断类型号0型1型255型专用区中断向量表一例五、中断响应五、中断响应 1、 CPU响应中断的条件响应中断的条件 (1)有中断请求信号产生而且没有被屏蔽;)有中断请求信号产生而且没有被屏蔽; (2)CPU处于开中断状态;处于开中断状态; (3)在一条指令执行结束时响应中断。)在一条指令执行结束时响应中断。 2、 CPU的中断响应过程的中断响应过程 CPU响应中断后就进入响应中断后就进入“中断周期中断周期” IT 。 在中断周期,在中断周期,CPU完成三件事:完成三件事: (中断隐指令)(中断隐指令) (1)关中断)关中断 (2)保护断点)保护断

23、点 (3)转向中断服务程序)转向中断服务程序进入中断周期,执行隐指令,(关中断,保护断点,转中断处理)响应保护现场及旧屏蔽字设置新屏蔽字开中断执行中断服务程序关中断恢复现场及屏蔽字开中断返回(中断处理过程)六、中断处理六、中断处理 中断处理过程分:单级中断处理过程分:单级中断方式、多重中断方式。中断方式、多重中断方式。 右图是多重中断方式处右图是多重中断方式处理过程的流程图。理过程的流程图。 处理过程中,有两次关处理过程中,有两次关中断、两次开中断。其中中断、两次开中断。其中在执行中断服务程序的前在执行中断服务程序的前的开中断、执行后的关中的开中断、执行后的关中断是为了能在执行中断服断是为了能

24、在执行中断服务程序时实现中断嵌套。务程序时实现中断嵌套。设备选择电路地址总线命令字寄存器数据总线状态字寄存器数据总线数据缓冲器数据总线其它控制逻辑中断控制器IRQi数据总线INTINTA中断接口组成模型系统总线IRQ0IRQ7七、中断接口七、中断接口组成模型组成模型 图中的中断控制器是多个设备公用的,它包含有中断优先排队、中断屏蔽等功能电路。 5.5 DMA方式及接口 一、基本概念 1、程序中断方式的不足之处 对于高速的外部设备,采用程序中断方式,会造成数据的丢失。 2、直接内存访问直接内存访问(DMA ) 方式方式 的定义 DMA方式是一种完全由硬件执行I/O交换的工作方式。在这种方式中,D

25、MA控制器从CPU完全接管对总线的控制,数据交换不经过CPU,而直接在内存和I/O设备之间进行。在数据传送期间不需要CPU的程序干预,而是由DMA控制器向内存发出地址和控制信号,修改地址,对传送的字的个数计数,并且以中断方式向CPU报告传送操作的结束。 3、DMA方式的特点方式的特点 DMA方式的主要特点是速度快。方式的主要特点是速度快。 由于由于CPU根本不参加传送操作,因此就省去了根本不参加传送操作,因此就省去了CPU取指令、取数、送数等操作。在数据传送过程中,取指令、取数、送数等操作。在数据传送过程中,没有保存现场、恢复现场之类的工作。内存地址修改、没有保存现场、恢复现场之类的工作。内存

26、地址修改、传送字个数的计数等等,也不是由软件实现,而是用传送字个数的计数等等,也不是由软件实现,而是用硬件线路直接实现的。所以硬件线路直接实现的。所以DMA方式能满足高速方式能满足高速I/O设备的要求,也有利于设备的要求,也有利于CPU效率的发挥。效率的发挥。 4、DMA的三种传送方式的三种传送方式(1)停止停止CPU访问内存(成组连续传送方式)访问内存(成组连续传送方式) 当外围设备要求传送一批数据时,由当外围设备要求传送一批数据时,由DMA控制控制器发一个停止信号给器发一个停止信号给CPU,要求,要求CPU放弃对系统总线放弃对系统总线的使用权。的使用权。DMA控制器获得总线控制权以后,开始

27、进控制器获得总线控制权以后,开始进行数据传送。在行数据传送。在一批数据一批数据传送完毕后,传送完毕后,DMA控制器通控制器通知知CPU可以使用内存,并把总线控制权交还给可以使用内存,并把总线控制权交还给CPU。这种传送方式的时间图如下:这种传送方式的时间图如下: 优点优点: 控制简单,控制简单,它适用于数据传输率很高的设备进行成组传送。它适用于数据传输率很高的设备进行成组传送。缺点缺点: 在在DMA控制器访内阶段,内存的效能没有充分发挥,相当控制器访内阶段,内存的效能没有充分发挥,相当一部分内存工作周期是空闲的。这是因为,外围设备传送两个数一部分内存工作周期是空闲的。这是因为,外围设备传送两个

28、数据之间的间隔一般总是大于内存存储周期,即使高速据之间的间隔一般总是大于内存存储周期,即使高速I/O设备也是设备也是如此。如此。 (2)周期挪用法(单字传送方式)周期挪用法(单字传送方式) 当当I/O设备没有设备没有DMA请求时,请求时,CPU按程序要按程序要求访问内存;一旦求访问内存;一旦I/O设备有设备有DMA请求,则由请求,则由I/O设备挪用一个或几个内存周期,传送一个字设备挪用一个或几个内存周期,传送一个字的数据。的数据。 I/O设备要求设备要求DMA传送时可能遇到两种情况:传送时可能遇到两种情况: 1) 此时此时CPU不需要访内,如不需要访内,如CPU正在执行乘正在执行乘法指令。由于

29、乘法指令执行时间较长,此时法指令。由于乘法指令执行时间较长,此时I/O访内与访内与CPU访内没有冲突,即访内没有冲突,即I/O设备挪用一二设备挪用一二个内存周期对个内存周期对CPU执行程序没有任何影响。执行程序没有任何影响。2)I/O设备要求访内时设备要求访内时CPU也要求访内,这也要求访内,这就产生了访内冲突。就产生了访内冲突。 在这种情况下在这种情况下I/O设备访内优先,因为设备访内优先,因为I/O访内有时间要求,前一个访内有时间要求,前一个I/O数据必须在下一数据必须在下一个访内请求到来之前存取完毕。显然,在这个访内请求到来之前存取完毕。显然,在这种情况下种情况下I/O 设备挪用一二个内

30、存周期,意味设备挪用一二个内存周期,意味着着CPU延缓了对指令的执行,或者更明确地延缓了对指令的执行,或者更明确地说,在说,在CPU执行访内指令的过程中插入执行访内指令的过程中插入DMA请求,挪用了一二个内存周期。请求,挪用了一二个内存周期。 这种传送方式的时间图如下:这种传送方式的时间图如下:特点:特点:周期挪用的方法既实现了周期挪用的方法既实现了I/O传送,又较好地发挥了内存传送,又较好地发挥了内存和和CPU的效率。但是的效率。但是I/O设备每一次周期挪用都有申请总线控制设备每一次周期挪用都有申请总线控制权、建立线控制权和归还总线控制权的过程,所以传送一个字权、建立线控制权和归还总线控制权

31、的过程,所以传送一个字对内存来说要占用一个周期,但对对内存来说要占用一个周期,但对DMA控制器来说一般要控制器来说一般要25个内存周期个内存周期(视逻辑线路的延迟而定视逻辑线路的延迟而定)。因此,因此,周期挪用的方法适用于周期挪用的方法适用于I/O设备读写周期大于内存存储周设备读写周期大于内存存储周期的情况。期的情况。 (3)DMA与与CPU交替访内交替访内 如果如果CPU的工作周期比内存存取周期长很多,此的工作周期比内存存取周期长很多,此时采用交替访内的方法可以使时采用交替访内的方法可以使DMA传送和传送和CPU同时发同时发挥最高的效率。假设挥最高的效率。假设CPU工作周期为工作周期为 1.

32、2s,内存存取,内存存取周期小于周期小于0.6s,那么一个,那么一个CPU周期可分为周期可分为C1和和C2两个两个分周期,其中分周期,其中C1供供DMA控制器访内,控制器访内,C2专供专供CPU访访内。这种传送方式的时间图如下:内。这种传送方式的时间图如下: 特点:特点:这种方式不需要总线使用权的申请、建立和归这种方式不需要总线使用权的申请、建立和归还过程,总线使用权是通过还过程,总线使用权是通过C1和和C2分时进行的。分时进行的。 CPU和和DMA控制器各自有自己的访内地址寄存器、控制器各自有自己的访内地址寄存器、数据寄存器和读数据寄存器和读/写信号等控制寄存器。写信号等控制寄存器。 对于总

33、线,这是用对于总线,这是用C1,C2控制的一个多路转换器,控制的一个多路转换器,这种总线控制权的转移几乎不需要什么时间,所以对这种总线控制权的转移几乎不需要什么时间,所以对DMA传送来讲效率是很高的。传送来讲效率是很高的。5、DMA方式的硬件组成方式的硬件组成(Inter 8237) 地址总线数据总线控制总线I/O缓冲I/O缓冲I/O缓冲时序与控制逻辑优先级仲裁逻辑命令控制逻辑A3-0A7-4DB7-0HLDAHRQDACK7-0DREQ7-0(至接口)8237DMA控制器结构寄存器组与标志触发器(1)内存地址计数器内存地址计数器 用于存放内存中要交换的数据的地址。在用于存放内存中要交换的数据

34、的地址。在DMA传送前,须通过程序将数据在内存中的起始位置传送前,须通过程序将数据在内存中的起始位置(首首地址地址)送到内存地址计数器。而当送到内存地址计数器。而当DMA传送时,每交传送时,每交换一次数据,将地址计数器加换一次数据,将地址计数器加“1”,从而以增量方,从而以增量方式给出内存中要交换的一批数据的地址式给出内存中要交换的一批数据的地址。 (3)数据缓冲寄存器数据缓冲寄存器 用于暂存每次传送的数据用于暂存每次传送的数据(一个字一个字)。当输入时,由。当输入时,由设备设备(如磁盘如磁盘)送往数据缓冲寄存器,再由缓冲寄存器送往数据缓冲寄存器,再由缓冲寄存器通过数据总线送到内存。反之,输出

35、时,由内存通过通过数据总线送到内存。反之,输出时,由内存通过数据总线送到数据缓冲寄存器,然后再送到设备。数据总线送到数据缓冲寄存器,然后再送到设备。 (2)字计数器字计数器 用于记录传送数据块的长度用于记录传送数据块的长度(多少字数多少字数)。其。其内容也是在数据传送之前由程序预置,交换的字内容也是在数据传送之前由程序预置,交换的字数通常以补码形式表示。在数通常以补码形式表示。在DMA传送时,每传传送时,每传送一个字,字计数器就加送一个字,字计数器就加“1” ,当计数器溢出,当计数器溢出即最高位产生进位时,表示这批数据传送完毕,即最高位产生进位时,表示这批数据传送完毕,于是引起于是引起DMA控

36、制器向控制器向CPU发中断信号。发中断信号。(4)“DMA请求请求”标志标志 每当设备准备好一个数据字后给出一个控制信每当设备准备好一个数据字后给出一个控制信号,使号,使“DMA请求请求” 标志置标志置“1”。该标志置位后。该标志置位后向向“控制控制/状态状态”逻辑发出逻辑发出DMA请求,后者又向请求,后者又向CPU发出总线使用权的请求发出总线使用权的请求(HOLD),CPU响应此响应此请求后发回响应信号请求后发回响应信号HLDA,“控制控制/状态状态”逻辑接逻辑接收此信号后发出收此信号后发出DMA响应信号,使响应信号,使“DMA请求请求”标志复位,为交换下一个字做好准备。标志复位,为交换下一

37、个字做好准备。 (5)“控制控制/状态状态”逻辑逻辑 由控制和时序电路以及状态标志等组成,用于修由控制和时序电路以及状态标志等组成,用于修改内存地址计数器和字计数器,指定传送类型改内存地址计数器和字计数器,指定传送类型(输入输入或输出或输出),并对,并对“DMA请求请求”信号和信号和CPU响应信号响应信号进行协调和同步。进行协调和同步。 (6)中断机构中断机构 当字计数器溢出时当字计数器溢出时(全全0),意味着一组数据交换,意味着一组数据交换完毕,由溢出信号触发中断机构,向完毕,由溢出信号触发中断机构,向CPU提出中断提出中断报告。这里的中断与上一节介绍的报告。这里的中断与上一节介绍的I/O中

38、断所采用中断所采用的技术相同,但中断的目的不同,前面是为了数据的技术相同,但中断的目的不同,前面是为了数据的输入或输出,而这里是为了报告一组数据传送结的输入或输出,而这里是为了报告一组数据传送结束。因此它们是束。因此它们是I/O系统中不同的中断事件系统中不同的中断事件。6、DMA数据传送过程数据传送过程 可分为三个阶段: 传送前预处理传送前预处理 正式传送正式传送 传送后处理传送后处理。 预处理预处理 由由CPU执行几条输入输出指令,测试设备状态,执行几条输入输出指令,测试设备状态,向向DMA控制器的设备地址寄存器中送入设备号并控制器的设备地址寄存器中送入设备号并启动设备,向内存地址计数器中送

39、入起始地址,向启动设备,向内存地址计数器中送入起始地址,向字计数器中送入交换的数据字个数。在这些工作完字计数器中送入交换的数据字个数。在这些工作完成后,成后,CPU继续执行原来的主程序继续执行原来的主程序。正式传送正式传送 当外设准备好发送数据当外设准备好发送数据(输入输入)或接受数据或接受数据(输输出出)时,它发出时,它发出DMA请求,由请求,由DMA控制器向控制器向CPU发出总线使用权的请求发出总线使用权的请求(HOLD)。下图示出了停。下图示出了停止止CPU访内方式的访内方式的DMA传送数据的流程图。传送数据的流程图。 后处理后处理 一旦一旦DMA的中断请求得到响应,的中断请求得到响应,

40、CPU停止主停止主程序的执行,转去执行中断服务程序做一些程序的执行,转去执行中断服务程序做一些DMA的结束处理工作。这些工作包括校验送入内存的的结束处理工作。这些工作包括校验送入内存的数据是否正确;决定继续用数据是否正确;决定继续用DMA方式传送下去,方式传送下去,还是结束传送;测试在传送过程中是否发生了错还是结束传送;测试在传送过程中是否发生了错误等等。误等等。二、二、DMA控制器与接口的连接方式控制器与接口的连接方式 DMA控制器定义为以下功能: 申请总线申请总线、 控制总线控制总线、 控制控制DMA传送传送 狭义DMA接口定义为以下功能: 与具体设备相适配与具体设备相适配 进行数据传送的

41、接口逻辑进行数据传送的接口逻辑 以上的控制器与接口组成以上的控制器与接口组成广义的接口广义的接口。CPU主存控制/状态逻辑数据缓冲寄存器地址寄存器/计数器字寄存器中断机构设备选择电路设备 系统总线总线请求总线批准DMA控制器(接口)(单通道DMA控制器 )1、单通道、单通道DMA控制器控制器CPU主存控制/状态逻辑数据缓冲寄存器地址寄存器/计数器字寄存器中断机构设备选择电路 系统总线总线请求总线批准DMA控制器(接口)I/OI/OI/O总线(选择型DMA控制器)2、选择型、选择型DMA控制器控制器CPU主存总线请求总线批准接口接口I/OI/ODREQ0DACK0DREQ3DACK3系统总线DM

42、A控制器(多路型DMA控制器)3、多路型、多路型DMA控制器控制器 现有磁盘、磁带、打印机三个设备同时工作。 磁盘、磁带、打印机分别以30s、 45s、 150s的间隔向控制器发DMA请求。 根据传输速率,磁盘优先权最高,磁带次之,打印机最低。 假设DMA控制器每完成一次DMA传送所需的时间是5s。画出多路型DMA控制器服务三个设备的工作时间图。多路型多路型DMA控制器工作过程举例:控制器工作过程举例:T1间隔中控制器首先为打印机服务。间隔中控制器首先为打印机服务。T2间隔前沿首先为优先权高的磁盘服务,然后为磁带服间隔前沿首先为优先权高的磁盘服务,然后为磁带服务,每次服务传送一个字节。务,每次

43、服务传送一个字节。在在120s时间阶段中,为打印机服务只有一次时间阶段中,为打印机服务只有一次(T1),为磁,为磁盘服务四次盘服务四次(T2,T4,T6,T7),为磁带服务三次,为磁带服务三次(T3,T5,T8)。4、多个、多个DMA控制器的连接控制器的连接(1)级连方式)级连方式D DM MA A控控制制器器D DR RE EQ Q0 0D DA AC CK K0 0D DR RE EQ Q3 3D DA AC CK K3 3D DM MA A控控制制器器D DR RE EQ Q0 0D DA AC CK K0 0C CP PU UH HR RQ QH HL LD DA AD DM MA A控控制制器器D DM MA A控控制制器器D DM MA A控控制制器器C CP PU UH H

温馨提示

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

评论

0/150

提交评论