版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、主要知识点:1主机与输入输出设备间传送数据的四种控制方式2系统总线的结构,理解输入/输出接口的分类、功能及基本组成。3中断处理的全过程,中断优先、中断屏蔽、中断嵌套、中断向量的概念。4DMA方式的原理和工作过程重点与难点: 程序中断的概念、中断系统的组成、中断处理的具体过程、 DMA方式的基本原理。 5.1 概述 输入输出系统包括: (1)硬件部分:外部设备、接口、系统总线 系统总线是连接主机与外设的信息载体; 接口是控制主机与外设间信息传送控制方式的电路 (2)软件部分:设备控制程序、设备驱动程序、用户I/O程序。 设备控制程序是指在一些设备控制器中由微处理器执行的程序; 设备驱动程序是指“
2、操作系统”中一组对外设的驱动程序。一、主机与外设的连接模式 1、总线型 是微型计算机中最常用的系统结构形式,见下图。CPUCPU地址锁存器地址锁存器地址总线地址总线数据缓冲器数据缓冲器数据总线数据总线总线控制器总线控制器控制总线控制总线主主存存中中断断控控制制器器DMADMA控控制制器器接口接口I/OI/O设备设备接口接口I/OI/O设备设备适配器外围设备优点: 结构简单、易于扩展、易于实现。缺点: 信息吞吐量有限、速度较慢。CPU接口I/OI/OI/O早期的星形结构CPUCPU主主存存接口接口I/OI/O设备设备I/OI/O设备设备I/OI/O设备设备I/OI/O设备设备系统总线系统总线实用
3、的星形连接模式2、辐射型 结构的特点是:每个外设与主机间有各自独立的数据通路。 优点: 各个设备具有独立的通路,相互干扰小,可靠性高。 缺点:不能实现各个设备间的直接通信。判定与分配选择通道磁盘控制器磁盘控制器字节多路通道设备控制器设备控制器设备设备设备数组多路通道设备控制器设备控制器设备设备设备CPU主存磁盘磁盘磁盘I/O总线IO总线IO总线存储总线(IBM 370的通道结构)(IBM 370的通道结构)3、 通道控制方式与输入输出处理机(IOP)方式 通道本身是一个专门管理输入/输出的控制器。 通道控制器的进一步发展,使之成为一个处理器,就是IOP方式。 特点:信息传送的吞吐量大,大型计算
4、机中采用。 CPU内存设备接口设备接口系统总线(单总线结构)CPU内存设备接口设备接口内存总线系统总线(双总线结构)二、总线类型与总线标准 总线是一组可以分时、共享分时、共享 的公共信息传输线路。1、按系统组成分类:(1) 单总线(2)多总线(3)局部总线(4)系统总线CPU内存设备接口IOP(通道)内存总线系统总线(三总线结构)设备接口I/O总线CPURAMROMPIOCTC总线控制逻辑总线扩展板存储模块扩展板打印机接口板显示器接口板外总线系统总线部件内总线(局部总线与系统总线结构图)2、 按数据传送格式分 并行总线 串行总线发送部件接收部件10110101高位低位并串转换串并转换发送部件接
5、收部件传送数据10110101并行总线串行总线3、按时序控制方式分 同步总线 异步总线4、总线标准 微机中有:PC总线 ISA总线 EISA总线 PCI总线 等三、接口的功能与分类 1、接口功能主要有4点: 寻址 数据缓冲 数据格式变换、电平转换 控制逻辑 2、接口分类 并行接口与串行接口 同步接口与异步接口 中断接口、DMA接口 等等 3、接口的主要部件组成: 数据缓冲器 设备地址识别线路 设备状态寄存器 主机命令字寄存器 数据格式转换 控制逻辑4、I/O接口(I/O设备)的编址方式 (1) 统一编址方式 (2) 独立编址方式00007FFF8000FFFF主存地址空间I/O地址空间例:统一
6、编址方式0000FFFF主存地址空间000I/O地址空间3FF例: 独立编址方式5.2 系统总线 一、总线信号组成 1、总线标准的制定应描述出总线的4个特性: 物理特性(机械特性) 电气特性 逻辑特性(功能特性) 时序特性 2、按逻辑特性分,系统总线分为4组: (1)电源线、地线 (2)地址线 (3) 数据线 (4)控制信号线 控制信号线通常包括: (1)复位信号(RESET) (2)同步定时信号 例:CPU时钟(CLOCK)、总线状态信号(S0,S1)、 刷新同步(REFESH)、机器周期同步(MCSYNC)等 (3)异步应答信号 主同步(MSYNC)、从同步(SSYNC) (4)总线控制权
7、信号 总线请求(BREQ)、总线批准(BACK)、总线忙(BUSY) (5)中断请求与批准 信号 中断请求(IREQ1IREQ7)、中断响应(INTA) (6)数据传送控制信号 存储器读(MEMR)、存储器写(MEMW)、 输入输出设备读(IOR)、输入输出设备写(IOW)T1T2T3T4总 线 周 期时钟地址读命令数据(总线的同步控制方式)二、总线操作时序 1、同步控制方式地地址址M MR RE EQ QR RD DM MS SY YN N数数据据S SS SY YN N2、异步控制方式主,请求从,回答主,请求从,回答主,请求从,回答不互锁半互锁全互锁5.3 直接程序传送方式及接口直接程序传
8、送方式及接口 一、基本原理一、基本原理 通过通过CPU执行一段程序,控制外部设备与主机之间的数据传执行一段程序,控制外部设备与主机之间的数据传送的整个过程。送的整个过程。CPU在执行程序时需要不断查询外部设备的状在执行程序时需要不断查询外部设备的状态,如果设备的数据传送没有准备好,态,如果设备的数据传送没有准备好,CPU就反复查询;只有就反复查询;只有当设备准备好(当设备准备好(READY),),CPU才能用才能用I/O指令传送一个数据。指令传送一个数据。 特点:特点: (1)CPU主动的不断查询外设状态;主动的不断查询外设状态;(2)数据的输入)数据的输入/输出都必须经过输出都必须经过CPU
9、;(3)CPU 与设备间是串行工作,所以与设备间是串行工作,所以CPU的使用效率低。的使用效率低。二、程序控制流程二、程序控制流程 直接程序传送方式的直接程序传送方式的程序流程图见右边的图。程序流程图见右边的图。 启动设备 准备好?传送数据修改内存地址数据量减1 传送完?关闭设备NYNY读取设备状态三、程序查询方式的接口三、程序查询方式的接口电路电路数据缓冲寄存器命令/状态寄存器译码地址IOWIOR系统总线设备0号采集器准备好?1号采集器准备好?2号采集器准备好?3号采集器准备好?从0号采集器输入一个数据YesNo从1号采集器输入一个数据YesNo从2号采集器输入一个数据YesNo从3号采集器
10、输入一个数据YesNo主程序流(程序直接控制方式的顺序查询程序流程)DBR设备选择电路CPU数据总线地址总线启动命令准备就绪QDBQRSRS设备输入数据启动设备设备工作完成程序查询方式接口电路基本组成(输入接口)6123455.4 程序中断方式及接口程序中断方式及接口 一、一、 基本概念基本概念 1、什么叫程序中断、什么叫程序中断 在程序执行过程中,由于某个随机在程序执行过程中,由于某个随机事件的请求,暂停现程序的执行,转事件的请求,暂停现程序的执行,转去执行一段处理此随机事件的程序,去执行一段处理此随机事件的程序,处理完后又回到原程序继续执行,这处理完后又回到原程序继续执行,这一过程叫一过程
11、叫“程序中断程序中断”。返回中断服务程序响应主程序中断请求2、程序中断的特点:、程序中断的特点:(1)当数据传送)当数据传送“准备好准备好”时由设备主动向时由设备主动向CPU提出中断请提出中断请求;求;(2)CPU与设备是并行工作的;与设备是并行工作的;(3)一般用于低速设备的数据传送。)一般用于低速设备的数据传送。3、 中断分类中断分类 中断内中断外中断外设的请求人工干预自愿中断强迫中断硬件故障软件故障(强迫中断)(程序中安排,通过中断指令引起)如“溢出中断”二、二、 中断请求信号的提出与传送中断请求信号的提出与传送 1、中断请求信号的提出、中断请求信号的提出QIRQD CQIRQD CIR
12、QIRQ屏蔽寄存器IRQIRQ07INT中断控制器TDTMTDTMINT0INTnCPUCPUINT多线请求单线请求CPUINTINT0nINT0INTnINTi二维多线请求2、中断请求信号的传送、中断请求信号的传送 (1) 多线请求多线请求 (2)单线请求)单线请求 (3)二维结构方式)二维结构方式 (4)混合方式)混合方式三、优先权逻辑与屏蔽技术三、优先权逻辑与屏蔽技术 优先权有两种类型:优先权有两种类型: (1) CPU与中断源间的优先关系与中断源间的优先关系 (2)各个中断源之间的优先关系)各个中断源之间的优先关系1、CPU与中断源间的优先关系与中断源间的优先关系 对于中断源的中断请求
13、,对于中断源的中断请求,CPU是否是否“有求必应有求必应”? 不不是的。是的。 当当CPU当前的优先权高于中断源的优先权时,当前的优先权高于中断源的优先权时,CPU可以可以不响应中断请求。反之,则必须响应。不响应中断请求。反之,则必须响应。 CPU内部设有一个内部设有一个“中断允许触发器中断允许触发器” TIEN, TIEN =1时,允许时,允许CPU响应中断,响应中断, TIEN =0时,不允许时,不允许CPU响应中断。响应中断。 可以用指令使可以用指令使TIEN =1,称,称“开中断开中断”,例,例8086中的开中中的开中断指令断指令 STI; 可以用指令使可以用指令使TIEN =0,称,
14、称“关中断关中断”,例,例8086中的关中中的关中断指令断指令 CLI。2、中断源之间的优先关系、中断源之间的优先关系 分两种情况:分两种情况: (1)同时有多个中断源请求,优先响应谁?)同时有多个中断源请求,优先响应谁? (2)当)当A中断源的请求正在处理时,中断源的请求正在处理时,B中断源又提出请求,中断源又提出请求,CPU是否响应?(也即是否响应?(也即 中断嵌套中断嵌套 的问题)的问题) 优先关系的确定原则:优先关系的确定原则: 故障中断故障中断 DMA请求请求 外设中断请求外设中断请求 快速外设快速外设 慢速外设慢速外设 输入设备输入设备 输出设备输出设备 优先权处理方法:优先权处理
15、方法: 1)对于同时请求的多个中断源,采用)对于同时请求的多个中断源,采用“优先排队优先排队”技术。技术。(1)软件查询方法)软件查询方法 CPU响应中断后,响应中断后,进入一个公共的中断处进入一个公共的中断处理程序,在该程序中,理程序,在该程序中,CPU用用“查询查询I/O指指令令”,依次测试个各个,依次测试个各个中断源是否有中断请求,中断源是否有中断请求,若有请求,若有请求,CPU就转入就转入相应的中断服务程序,;相应的中断服务程序,;没有,就继续往下查询。没有,就继续往下查询。 可见,先查询到的中断可见,先查询到的中断源优先权高。源优先权高。 软件查询方法的程软件查询方法的程序流程图见右
16、边:序流程图见右边:0号设备请求?1号设备请求?2号设备请求?3号设备请求?执行0号设备中断服务程序YesNo执行1号设备中断服务程序YesNo执行2号设备中断服务程序YesNo执行3号设备中断服务程序YesNo保护断点和现场(响应中断)恢复断点和现场(返回主程序)(程序中断方式的固定优先级查询流程)保护断点和现场(响应中断)N=?0号设备请求?1号设备请求?2号设备请求?3号设备请求?AAYNNNN=00=01=02=03N=01;执行0号设备中断服务程序N=02;执行1号设备中断服务程序N=03;执行2号设备中断服务程序N=00;执行3号设备中断服务程序恢复断点,现场恢复断点,现场恢复断点
17、,现场恢复断点,现场(返回主程序)(轮流优先级形式)INTR0INTR1INTR2INTR0INTR1INTR2(具有独立请求线的并行排优逻辑)(2) 并行优先排队逻辑并行优先排队逻辑 如下图。如下图。 每个中断源提供独立的中断请求信号给每个中断源提供独立的中断请求信号给CPU。 特点:特点: 响应的响应的速度快;速度快; 但硬件但硬件成本高。成本高。 适用于适用于具有多请具有多请求线的计求线的计算机系统。算机系统。CPUI/OI/O编码INTINTA链式优先排队(菊花链方式)I/OI/O编码INTINTA链式优先排队(多重查询方式)(3) 链式优先排队逻辑链式优先排队逻辑 下图中是常用的两种
18、形式。下图中是常用的两种形式。CPUINTAI IR R1 1I IR R2 2I IR R3 3011010101010000I IR R1 1I IR R2 2I IR R3 3数据总线()链式优先排队逻辑电路 多重查询方式 I IN NT TI II IN NT TO OI IR RS S1 1I IR RS S2 2I IR RS S3 3中断请求寄存器优先级分析电路中断服务寄存器中断屏蔽寄存器数据缓冲读/写逻辑级联缓冲与比较器IREQ0IREQ1IREQ2IREQ3IREQ4IREQ5IREQ6IREQ7INTINTAD -DARDWRCSCAS0CAS1CAS2SP/EN007中断
19、控制器8259A结构示意图(4) 中断控制器集成芯片的优先排队中断控制器集成芯片的优先排队 (见下图)(见下图)设备A设备B设备C设备D设备E设备F设备G设备H设备I01IR201IM2中断优先排队电路与中断控制逻辑01IR101IM101IR001IM0INTR2INTR1INTR0高低优先权CPUINTA2INTA1INTA0二维结构的优先排队二维结构的优先排队2)屏蔽技术的应用,)屏蔽技术的应用, 解决中断嵌套的问题。解决中断嵌套的问题。 在多重中断方式下,在多重中断方式下,CPU响应某个中断源的请求后,应响应某个中断源的请求后,应禁止响应优先权小于或等于它的中断请求。而可以响应优先禁止
20、响应优先权小于或等于它的中断请求。而可以响应优先权大于它的中断源的请求。权大于它的中断源的请求。 通常采用设置屏蔽码的办法。屏蔽掉优先权低的中断请求,通常采用设置屏蔽码的办法。屏蔽掉优先权低的中断请求,开放优先权高的请求。开放优先权高的请求。 利用屏蔽技术,动态修改优先权。利用屏蔽技术,动态修改优先权。 中断响应优先权中断响应优先权:指由硬件优先排队电路分配的各个中断:指由硬件优先排队电路分配的各个中断源在中断响应时的优先关系,一经确定,不易改变。源在中断响应时的优先关系,一经确定,不易改变。 中断处理优先权中断处理优先权:指利用屏蔽字,分配各中断源被处理时:指利用屏蔽字,分配各中断源被处理时
21、的优先关系。可以通过修改屏蔽字的值,改变中断源的优先的优先关系。可以通过修改屏蔽字的值,改变中断源的优先关系。举例:关系。举例:四、中断服务程序入口的获取方式四、中断服务程序入口的获取方式1、 非向量中断非向量中断 CPU响应中断后响应中断后 ,产生一个,产生一个固定的地址,由此地址单元中读固定的地址,由此地址单元中读取中断查询程序的入口地址,取中断查询程序的入口地址,通通过软件查询确定中断源,过软件查询确定中断源,并转入并转入相应的中断服务程序。相应的中断服务程序。01JMP nnnn查询程序 如图:以如图:以1号单元作为固定地址,号单元作为固定地址,该单元中安排一条转移指令,转到地该单元中
22、安排一条转移指令,转到地址为址为nn的查询程序去。的查询程序去。 非向量中断法的优点是:简单、易实现,成本低。非向量中断法的优点是:简单、易实现,成本低。 缺点是响应的速度慢。缺点是响应的速度慢。向量中断向量中断 (1) 有关的概念有关的概念 . 中断向量中断向量 所有中断服务程序的入口地址和状态字在一起,称做中断所有中断服务程序的入口地址和状态字在一起,称做中断向量。向量。 . 中断向量表中断向量表 所有中断服务程序的入口地址(或包括服务程序的状态字)所有中断服务程序的入口地址(或包括服务程序的状态字)组织成一维表,存放在一段连续的存储区。该存储区叫组织成一维表,存放在一段连续的存储区。该存
23、储区叫“中中断向量表。断向量表。 . 向量地址向量地址 存放某中断源的中断服务程序入口地址的单元地址叫向量存放某中断源的中断服务程序入口地址的单元地址叫向量地址。地址。 (2) 向量中断向量中断 响应中断时,由响应中断时,由硬件直接产生硬件直接产生对应于中断源的向量地址,据此访问对应于中断源的向量地址,据此访问中断向量表,从中读取服务程序入口地址,由此转向服务程序。中断向量表,从中读取服务程序入口地址,由此转向服务程序。 0000000100020003偏移量 .段地址 .中断向量表向量地址0004;00230024;007F0080;03FF中断类型号0型1型255型专用区中断向量表一例五、
24、中断响应五、中断响应 1、 CPU响应中断的条件响应中断的条件 (1)有中断请求信号产生而且没有被屏蔽;)有中断请求信号产生而且没有被屏蔽; (2)CPU处于开中断状态;处于开中断状态; (3)在一条指令执行结束时响应中断。)在一条指令执行结束时响应中断。 2、 CPU的中断响应过程的中断响应过程 CPU响应中断后就进入响应中断后就进入“中断周期中断周期” IT 。 在中断周期,在中断周期,CPU完成三件事:完成三件事: (中断隐指令)(中断隐指令) (1)关中断、)关中断、 (2)保护断点、)保护断点、 (3)转向中断服务程序)转向中断服务程序进入中断周期,执行隐指令,(关中断,保护断点,转
25、中断处理)响应保护现场及旧屏蔽字设置新屏蔽字开中断执行中断服务程序关中断恢复现场及屏蔽字开中断返回(中断处理过程)六、中断处理六、中断处理 中断处理过程分:单级中断处理过程分:单级中断方式、多重中断方式。中断方式、多重中断方式。 右图是多重中断方式处右图是多重中断方式处理过程的流程图。理过程的流程图。 处理过程中,有两次关处理过程中,有两次关中断、两次开中断。其中中断、两次开中断。其中在执行中断服务程序的前在执行中断服务程序的前的开中断、执行后的关中的开中断、执行后的关中断是为了能在执行中断服断是为了能在执行中断服务程序时实现中断嵌套。务程序时实现中断嵌套。设备选择电路地址总线命令字寄存器数据
26、总线状态字寄存器数据总线数据缓冲器数据总线其它控制逻辑中断控制器IRQi数据总线INTINTA中断接口组成模型系统总线IRQ0IRQ7七、中断接口七、中断接口组成模型组成模型 图中的中断控制器是多个设备公用的,它包含有中断优先排队、中断屏蔽等功能电路。 5.5 DMA方式及接口 一、基本概念 1、程序中断方式的不足之处 对于高速的外部设备,采用程序中断方式,会造成数据的丢失。 2、直接内存访问直接内存访问(DMA ) 方式方式 的定义 DMA方式是一种完全由硬件执行I/O交换的工作方式。在这种方式中,DMA控制器从CPU完全接管对总线的控制,数据交换不经过CPU,而直接在内存和I/O设备之间进
27、行。在数据传送期间不需要CPU的程序干预,而是由DMA控制器向内存发出地址和控制信号,修改地址,对传送的字的个数计数,并且以中断方式向CPU报告传送操作的结束。 3、DMA方式的特点方式的特点 DMA方式的主要特点是速度快。方式的主要特点是速度快。 由于由于CPU根本不参加传送操作,因此就省去了根本不参加传送操作,因此就省去了CPU取指令、取数、送数等操作。在数据传送过程中,取指令、取数、送数等操作。在数据传送过程中,没有保存现场、恢复现场之类的工作。内存地址修改、没有保存现场、恢复现场之类的工作。内存地址修改、传送字个数的计数等等,也不是由软件实现,而是用传送字个数的计数等等,也不是由软件实
28、现,而是用硬件线路直接实现的。所以硬件线路直接实现的。所以DMA方式能满足高速方式能满足高速I/O设备的要求,也有利于设备的要求,也有利于CPU效率的发挥。效率的发挥。 4、DMA的三种传送方式的三种传送方式(1)停止停止CPU访问内存(成组连续传送方式)访问内存(成组连续传送方式) 当外围设备要求传送一批数据时,由当外围设备要求传送一批数据时,由DMA控制控制器发一个停止信号给器发一个停止信号给CPU,要求,要求CPU放弃对系统总线放弃对系统总线的使用权。的使用权。DMA控制器获得总线控制权以后,开始进控制器获得总线控制权以后,开始进行数据传送。在行数据传送。在一批数据一批数据传送完毕后,传
29、送完毕后,DMA控制器通控制器通知知CPU可以使用内存,并把总线控制权交还给可以使用内存,并把总线控制权交还给CPU。这种传送方式的时间图如下:这种传送方式的时间图如下: 优点优点: 控制简单,控制简单,它适用于数据传输率很高的设备进行成组传送。它适用于数据传输率很高的设备进行成组传送。缺点缺点: 在在DMA控制器访内阶段,内存的效能没有充分发挥,相当控制器访内阶段,内存的效能没有充分发挥,相当一部分内存工作周期是空闲的。这是因为,外围设备传送两个数一部分内存工作周期是空闲的。这是因为,外围设备传送两个数据之间的间隔一般总是大于内存存储周期,即使高速据之间的间隔一般总是大于内存存储周期,即使高
30、速I/O设备也是设备也是如此。如此。 (2)周期挪用法(单字传送方式)周期挪用法(单字传送方式) 当当I/O设备没有设备没有DMA请求时,请求时,CPU按程序要按程序要求访问内存;一旦求访问内存;一旦I/O设备有设备有DMA请求,则由请求,则由I/O设备挪用一个或几个内存周期,传送一个字设备挪用一个或几个内存周期,传送一个字的数据。的数据。 I/O设备要求设备要求DMA传送时可能遇到两种情况:传送时可能遇到两种情况: 1) 此时此时CPU不需要访内,如不需要访内,如CPU正在执行乘正在执行乘法指令。由于乘法指令执行时间较长,此时法指令。由于乘法指令执行时间较长,此时I/O访内与访内与CPU访内
31、没有冲突,即访内没有冲突,即I/O设备挪用一二设备挪用一二个内存周期对个内存周期对CPU执行程序没有任何影响。执行程序没有任何影响。2)I/O设备要求访内时设备要求访内时CPU也要求访内,这也要求访内,这就产生了访内冲突。就产生了访内冲突。 在这种情况下在这种情况下I/O设备访内优先,因为设备访内优先,因为I/O访内有时间要求,前一个访内有时间要求,前一个I/O数据必须在下一数据必须在下一个访内请求到来之前存取完毕。显然,在这个访内请求到来之前存取完毕。显然,在这种情况下种情况下I/O 设备挪用一二个内存周期,意味设备挪用一二个内存周期,意味着着CPU延缓了对指令的执行,或者更明确地延缓了对指
32、令的执行,或者更明确地说,在说,在CPU执行访内指令的过程中插入执行访内指令的过程中插入DMA请求,挪用了一二个内存周期。请求,挪用了一二个内存周期。 这种传送方式的时间图如下:这种传送方式的时间图如下:特点:特点:周期挪用的方法既实现了周期挪用的方法既实现了I/O传送,又较好地发挥了内存传送,又较好地发挥了内存和和CPU的效率。但是的效率。但是I/O设备每一次周期挪用都有申请总线控制设备每一次周期挪用都有申请总线控制权、建立线控制权和归还总线控制权的过程,所以传送一个字权、建立线控制权和归还总线控制权的过程,所以传送一个字对内存来说要占用一个周期,但对对内存来说要占用一个周期,但对DMA控制
33、器来说一般要控制器来说一般要25个内存周期个内存周期(视逻辑线路的延迟而定视逻辑线路的延迟而定)。因此,因此,周期挪用的方法适用于周期挪用的方法适用于I/O设备读写周期大于内存存储周设备读写周期大于内存存储周期的情况。期的情况。 (3)DMA与与CPU交替访内交替访内 如果如果CPU的工作周期比内存存取周期长很多,此的工作周期比内存存取周期长很多,此时采用交替访内的方法可以使时采用交替访内的方法可以使DMA传送和传送和CPU同时发同时发挥最高的效率。假设挥最高的效率。假设CPU工作周期为工作周期为 1.2s,内存存取,内存存取周期小于周期小于0.6s,那么一个,那么一个CPU周期可分为周期可分
34、为C1和和C2两个两个分周期,其中分周期,其中C1供供DMA控制器访内,控制器访内,C2专供专供CPU访访内。这种传送方式的时间图如下:内。这种传送方式的时间图如下: 特点:特点:这种方式不需要总线使用权的申请、建立和归这种方式不需要总线使用权的申请、建立和归还过程,总线使用权是通过还过程,总线使用权是通过C1和和C2分时进行的。分时进行的。 CPU和和DMA控制器各自有自己的访内地址寄存器、控制器各自有自己的访内地址寄存器、数据寄存器和读数据寄存器和读/写信号等控制寄存器。写信号等控制寄存器。 对于总线,这是用对于总线,这是用C1,C2控制的一个多路转换器,控制的一个多路转换器,这种总线控制
35、权的转移几乎不需要什么时间,所以对这种总线控制权的转移几乎不需要什么时间,所以对DMA传送来讲效率是很高的。传送来讲效率是很高的。5、DMA方式的硬件组成方式的硬件组成一个最简单的一个最简单的DMA控制器由以下逻辑部件组成:控制器由以下逻辑部件组成: (1)内存地址计数器内存地址计数器 用于存放内存中要交换的数据的地址。在用于存放内存中要交换的数据的地址。在DMA传送前,须通过程序将数据在内存中的起始位置传送前,须通过程序将数据在内存中的起始位置(首首地址地址)送到内存地址计数器。而当送到内存地址计数器。而当DMA传送时,每交传送时,每交换一次数据,将地址计数器加换一次数据,将地址计数器加“1
36、”,从而以增量方,从而以增量方式给出内存中要交换的一批数据的地址式给出内存中要交换的一批数据的地址。 (3)数据缓冲寄存器数据缓冲寄存器 用于暂存每次传送的数据用于暂存每次传送的数据(一个字一个字)。当输入时,由。当输入时,由设备设备(如磁盘如磁盘)送往数据缓冲寄存器,再由缓冲寄存器送往数据缓冲寄存器,再由缓冲寄存器通过数据总线送到内存。反之,输出时,由内存通过通过数据总线送到内存。反之,输出时,由内存通过数据总线送到数据缓冲寄存器,然后再送到设备。数据总线送到数据缓冲寄存器,然后再送到设备。 (2)字计数器字计数器 用于记录传送数据块的长度用于记录传送数据块的长度(多少字数多少字数)。其。其
37、内容也是在数据传送之前由程序预置,交换的字内容也是在数据传送之前由程序预置,交换的字数通常以补码形式表示。在数通常以补码形式表示。在DMA传送时,每传传送时,每传送一个字,字计数器就加送一个字,字计数器就加“1” ,当计数器溢出,当计数器溢出即最高位产生进位时,表示这批数据传送完毕,即最高位产生进位时,表示这批数据传送完毕,于是引起于是引起DMA控制器向控制器向CPU发中断信号。发中断信号。(4)“DMA请求请求”标志标志 每当设备准备好一个数据字后给出一个控制信每当设备准备好一个数据字后给出一个控制信号,使号,使“DMA请求请求” 标志置标志置“1”。该标志置位后。该标志置位后向向“控制控制
38、/状态状态”逻辑发出逻辑发出DMA请求,后者又向请求,后者又向CPU发出总线使用权的请求发出总线使用权的请求(HOLD),CPU响应此响应此请求后发回响应信号请求后发回响应信号HLDA,“控制控制/状态状态”逻辑接逻辑接收此信号后发出收此信号后发出DMA响应信号,使响应信号,使“DMA请求请求”标志复位,为交换下一个字做好准备。标志复位,为交换下一个字做好准备。 (5)“控制控制/状态状态”逻辑逻辑 由控制和时序电路以及状态标志等组成,用于修由控制和时序电路以及状态标志等组成,用于修改内存地址计数器和字计数器,指定传送类型改内存地址计数器和字计数器,指定传送类型(输入输入或输出或输出),并对,
39、并对“DMA请求请求”信号和信号和CPU响应信号响应信号进行协调和同步。进行协调和同步。 (6)中断机构中断机构 当字计数器溢出时当字计数器溢出时(全全0),意味着一组数据交换,意味着一组数据交换完毕,由溢出信号触发中断机构,向完毕,由溢出信号触发中断机构,向CPU提出中断提出中断报告。这里的中断与上一节介绍的报告。这里的中断与上一节介绍的I/O中断所采用中断所采用的技术相同,但中断的目的不同,前面是为了数据的技术相同,但中断的目的不同,前面是为了数据的输入或输出,而这里是为了报告一组数据传送结的输入或输出,而这里是为了报告一组数据传送结束。因此它们是束。因此它们是I/O系统中不同的中断事件系
40、统中不同的中断事件。6、DMA数据传送过程数据传送过程 可分为三个阶段: 传送前预处理传送前预处理 正式传送正式传送 传送后处理传送后处理。 预处理预处理 由由CPU执行几条输入输出指令,测试设备状态,执行几条输入输出指令,测试设备状态,向向DMA控制器的设备地址寄存器中送入设备号并控制器的设备地址寄存器中送入设备号并启动设备,向内存地址计数器中送入起始地址,向启动设备,向内存地址计数器中送入起始地址,向字计数器中送入交换的数据字个数。在这些工作完字计数器中送入交换的数据字个数。在这些工作完成后,成后,CPU继续执行原来的主程序继续执行原来的主程序。正式传送正式传送 当外设准备好发送数据当外设
41、准备好发送数据(输入输入)或接受数据或接受数据(输输出出)时,它发出时,它发出DMA请求,由请求,由DMA控制器向控制器向CPU发出总线使用权的请求发出总线使用权的请求(HOLD)。下图示出了停。下图示出了停止止CPU访内方式的访内方式的DMA传送数据的流程图。传送数据的流程图。 后处理后处理 一旦一旦DMA的中断请求得到响应,的中断请求得到响应,CPU停止主停止主程序的执行,转去执行中断服务程序做一些程序的执行,转去执行中断服务程序做一些DMA的结束处理工作。这些工作包括校验送入内存的的结束处理工作。这些工作包括校验送入内存的数据是否正确;决定继续用数据是否正确;决定继续用DMA方式传送下去
42、,方式传送下去,还是结束传送;测试在传送过程中是否发生了错还是结束传送;测试在传送过程中是否发生了错误等等。误等等。二、二、DMA控制器与接口的连接方式控制器与接口的连接方式 DMA控制器定义为以下功能: 申请总线申请总线、 控制总线控制总线、 控制控制DMA传送传送 狭义DMA接口定义为以下功能: 与具体设备相适配与具体设备相适配 进行数据传送的接口逻辑进行数据传送的接口逻辑 以上的控制器与接口组成以上的控制器与接口组成广义的接口广义的接口。CPU主存控制/状态逻辑数据缓冲寄存器地址寄存器/计数器字寄存器中断机构设备选择电路设备 系统总线总线请求总线批准DMA控制器(接口)(单通道DMA控制
43、器 )1、单通道、单通道DMA控制器控制器CPU主存控制/状态逻辑数据缓冲寄存器地址寄存器/计数器字寄存器中断机构设备选择电路 系统总线总线请求总线批准DMA控制器(接口)I/OI/OI/O总线(选择型DMA控制器)2、选择型、选择型DMA控制器控制器CPU主存总线请求总线批准接口接口I/OI/ODREQ0DACK0DREQ3DACK3系统总线DMA控制器(多路型DMA控制器)3、多路型、多路型DMA控制器控制器 现有磁盘、磁带、打印机三个设备同时工作。 磁盘、磁带、打印机分别以30s、 45s、 150s的间隔向控制器发DMA请求。 根据传输速率,磁盘优先权最高,磁带次之,打印机最低。 假设
44、DMA控制器每完成一次DMA传送所需的时间是5s。画出多路型DMA控制器服务三个设备的工作时间图。多路型多路型DMA控制器工作过程举例:控制器工作过程举例:T1间隔中控制器首先为打印机服务。间隔中控制器首先为打印机服务。T2间隔前沿首先为优先权高的磁盘服务,然后为磁带服间隔前沿首先为优先权高的磁盘服务,然后为磁带服务,每次服务传送一个字节。务,每次服务传送一个字节。在在120s时间阶段中,为打印机服务只有一次时间阶段中,为打印机服务只有一次(T1),为磁,为磁盘服务四次盘服务四次(T2,T4,T6,T7),为磁带服务三次,为磁带服务三次(T3,T5,T8)。4、DMA控制器的连接控制器的连接(
45、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 HL LD DA AH HR RQ Q(2)公共请求方式)公共请求方式D DM MA A控控制制器器D DM MA A控控制制器器C CP PU UH HL LD D
46、A A0 0H HR RQ Q0 0D DM MA A控控制制器器H HL LD DA A1 1H HL LD DA An nH HR RQ Q1 1H HR RQ Qn n(2)独立请求方式)独立请求方式地址总线数据总线控制总线I/O缓冲I/O缓冲I/O缓冲时序与控制逻辑优先级仲裁逻辑命令控制逻辑A3-0A7-4DB7-0HLDAHRQDACK7-0DREQ7-0(至接口)8237DMA控制器结构寄存器组与标志触发器三、三、DMA 控制器的组成控制器的组成5.6 通道控制方式及通道控制方式及IOP方式方式一、概述一、概述 通道的出现进一步提高了通道的出现进一步提高了CPU的效率。因的效率。因
47、为通道是一个特殊功能的处理器,它有自己的为通道是一个特殊功能的处理器,它有自己的指令和程序专门负责数据输入输出的传输控制,指令和程序专门负责数据输入输出的传输控制,而而CPU将将“传输控制传输控制”的功能下放给通道后只的功能下放给通道后只负责负责“数据处理数据处理”功能。这样,通道与功能。这样,通道与CPU分分时使用内存,实现了时使用内存,实现了CPU内部运算与内部运算与I/O设设 备备的平行工作。的平行工作。 通道的基本功能通道的基本功能 是执行通道指令,组织外是执行通道指令,组织外围设备和内存进行数据传输,按围设备和内存进行数据传输,按I/O指令要求启指令要求启动外围设备,向动外围设备,向
48、CPU报告中断等,具体有以下报告中断等,具体有以下五项任务:五项任务: (1)接受接受CPU的的I/O指令,按指令要求与指定的指令,按指令要求与指定的外围设备进行通信。外围设备进行通信。 (2)从内存选取属于该通道程序的通道指令,经从内存选取属于该通道程序的通道指令,经译码后向设备控制器和设备发送各种命令。译码后向设备控制器和设备发送各种命令。 (3)组织外围设备和内存之间进行数据传送,并组织外围设备和内存之间进行数据传送,并根据需要提供数据缓存的空间,以及提供数据根据需要提供数据缓存的空间,以及提供数据存入内存的地址和传送的数据量。存入内存的地址和传送的数据量。(4)从外围设备得到设备的状态
49、信息,形成并保从外围设备得到设备的状态信息,形成并保存通道本身的状态信息,根据要求将这些状态存通道本身的状态信息,根据要求将这些状态信息送到内存的指定单元,供信息送到内存的指定单元,供CPU使用。使用。(5)将外围设备的中断请求和通道本身的中断请将外围设备的中断请求和通道本身的中断请求,按次序及时报告求,按次序及时报告CPU。 二、通道二、通道 1、通道的类型、通道的类型(1) 字节多路通道字节多路通道 字节多路通道可以连接多台低速设备,字节多路通道可以连接多台低速设备,如键盘、打印机等,以字节交叉方式传送如键盘、打印机等,以字节交叉方式传送数据。数据。a1a1 a2a2b1b1 b2b2c1
50、c1 c2c2通道通道a1a1 b1b1 c1c1 a2a2 b2b2 c2c2字节多路通道的传送方式示意图(2)选择通道)选择通道 选择通道又称高速通道,在物理上它可以选择通道又称高速通道,在物理上它可以连接多台高速设备,但是这些设备不能同时工连接多台高速设备,但是这些设备不能同时工作,在某一段时间内通道只能选择一个设备进作,在某一段时间内通道只能选择一个设备进行工作。当成组传送完毕后,才能选择另一台行工作。当成组传送完毕后,才能选择另一台设备。设备。a1a1a2a2a1a1a2a2a1a1a2a2通道通道a1a1a2a2b1b1b2b2c1c1c2c2选择通道的传送方式示意图(3)数组多路
51、通道)数组多路通道 基本思想基本思想:当某设备进行数据传送时,通道只为该设备服务;当设备在执行寻址等控制性动作时,通道暂时断开与这个设备的连接,挂起该设备的通道程序,去为其他设备服务,即执行其他设备的通道程序。所以数组多路通道很像一个多道程序的处理器。 数组多路通道可以连接多台快速设备,允许并行数组多路通道可以连接多台快速设备,允许并行工作,以成组交叉方式传送数据。工作,以成组交叉方式传送数据。 数组多路通道既保留了选择通道高速传送数据的数组多路通道既保留了选择通道高速传送数据的优点,又充分利用了控制性操作的时间间隔为其他设优点,又充分利用了控制性操作的时间间隔为其他设备服务,使通道效率充分得
52、到发挥,因此数组多路通备服务,使通道效率充分得到发挥,因此数组多路通道在实际系统中得到较多应用。道在实际系统中得到较多应用。字节多路通道和数组多路通道的共同之处字节多路通道和数组多路通道的共同之处: 都是多路通道,在一段时间内能交替执行多个设备的通道程序,使这些设备同时工作。 字节多路通道和数组多路通道的不同之处字节多路通道和数组多路通道的不同之处: (1)数组多路通道允许多个设备同时工作,但只允许一个设备进行传输型操作,其他设备进行控制型操作。而字节多路通道不仅允许多个设备同时操作,而且也允许它们同时进行传输型操作。 (2)数组多路通道与设备之间数据传送的基本单位是数据块数据块,通道必须为一
53、个设备传送完一个数据块以后,才能为别的设备传送数据块。而字节多路通道与设备之间数据传送的基本单位是字节字节,通道为一个设备传送一个字节后,又可以为另一个设备传送一个字节,因此各设备与通道之间的数据传送是以字节为单位交替进行。CPU存储管理主存选择通道磁盘控制器磁盘磁盘磁盘控制器磁盘磁盘I/O总线数组多路通道磁带控制器磁带磁带磁带控制器磁带磁带I/O总线字节多路通道设备控制器设备设备控制器设备设备I/O总线存储总线(IBM4300的I/O子系统) 较大规模的计算机系统中,可同时具有上述3种通道。下图是IBM4300系统的I/O子系统框图二、I/O指令、通道指令与通道程序 1、 I/O指令 CPU
54、是通过执行I/O指令以及处理来自通道的中断,实现对通道的管理。来自通道的中断有两种,一种是数据传送结束中数据传送结束中断断,另一种是故障中断故障中断。 管态管态 CPU运行操作系统的管理程序的状态。目态目态 CPU执行目的程序时的状态。大中型计算机的I/O指令都是管态指令,只有当CPU处于管态时,才能运行I/O指令,目态时不能运行I/O指令。这是因为大中型计算机的软、硬件资源为多个用户所共享,而不是分给某个用户专用。 以IBM4300系统为例,其I/O指令有8种。 SIO、SIOF、TCH、TIO、HDV、HIO、CLRIO、STIDC (详见书P385)2、通道指令 通道通过执行通道指令,控制设备控制器进行数据传送操作,并以通
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024版设备购买协议
- 2025年度疫情防控应急物资储备中心n95口罩采购合同范本3篇
- 二零二五年度货运司机劳务派遣合同3篇
- 2025年度大豆绿色种植推广合作合同范本3篇
- 2025年度绿色有机西瓜产地直销合作合同范本3篇
- 2025年度不锈钢板材国际贸易结算及风险管理合同3篇
- 2024行政合同争议调解程序:如何有效运用行政优先权3篇
- 2025年度WPS合同管理平台定制开发与实施合同3篇
- 二零二五年甘肃离岗创业人员社保接续与待遇保障合同3篇
- 2025年物流配送与快递快递行业风险管理合同范本3篇
- 起重机的维护保养要求与月度、年度检查记录表
- 消防设施维护保养记录表
- 城区生活垃圾填埋场封场项目 投标方案(技术方案)
- 垃圾分类巡检督导方案
- 大一护理生涯发展展示
- 五年级上册数学应用题100题及答案
- 中国绿色食品市场调查与分析报告
- 新生儿急救与复苏培训
- 外贸跟单员工作总结PPT
- UG-NX-8.5标准教程课件
- 神经科2023年度工作总结及2024年度计划
评论
0/150
提交评论