第八章 计算机组成原理输入输出系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算机组成原理
第5页
第八章
输入/输出系统
端口地址编址方式
端口有二种编址方式: 统一编址 端口地址和存储器地址统一编址。在这种编址方式中,I/O 端口和内存单元统一编址,即把I/O端口当作内存单元对待,从整个内存空 间中划出一个子空间给I/O端口,每一个I/O端口分配一个地址码,用访问 存储器的指令对I/O端口进行操作。 优点:I/O端口的数目几乎不受限制;访问内存指令均适用于I/O端口, 对I/O端口的数据处理能力强。 缺点:程序中I/O操作不清晰,难以区分程序中的I/O操作和存储器操 作;I/O端口占用了一部分内存空间;I/O端口地址译码电路较复杂。 独立编址 I/O端口编址和存储器的编址相互独立,即I/O端口地址空间和存储器 地址空间分开设臵,互不影响。该方式下,只能使用输入/输出指令。 优点:不占用内存空间;使用I/O指令,程序清晰,很容易看出是I/O 操作还是存储器操作;译码电路比较简单。 缺点:只能用专门的I/O指令,访问端口的方法不如存储器的方法多。
计算机组成原理
第12页
第八章
输入/输出系统
下图给出了中断处理的基本过程,主程序只是在设备A、B、C数据 准备就绪并发出相应的中断请求时,才去进行中断处理,完成数据传送 操作。在速度较慢的外围设备准备自己的数据时,CPU照常执行自己的 主程序。在这个意义上说,CPU和外围设备的一些操作是并行地进行的, 因而同串行进行的程序查询方式相比,计算机系统的效率是大大提高了。
第八章 输入/输出系统
本章要求:
1. 了解I/O系统的一些基本概念;
2. 中断方式处理过程; 3. DMA方式及通道方式基本概念。
第1页
第八章
输入/输出系统
8.1 输入输出系统概念
输入输出(I/O)系统包括输入输出设备、设备控制器及 与输入输出操作有关的软硬件。 输入输出系统结构设计的好坏会直接影响计算机系统的 性能,不仅影响输入输出速度,各用户从程序送入到运算结 果输出的时间,CPU、主存的利用率,还会影响到整个I/O系 统的兼容性、可扩展性、综合处理能力和性能价格比等。 输入输出系统的发展经历了四个阶段,即程序控制I/O方 式(包括程序查询方式、程序中断方式)、直接存储器访问 (DMA)及通道方式。它们可以分别作用于不同的计算机系 统,也可用于同一系统。
中断请求
INTR CPU 三态门
D7—D0
中断排队 与编码器
中断输入
INTA
中断响应
EN
计算机组成原理
第16页
第八章
输入/输出系统
中断源提出中断请求
中断处理
中断请求
判优逻辑进行优先排队 中断判优 CPU执行完当前指令 CPU取下一条指令
中断信号有效? 否 是 CPU允许中断? 是 CPU关闭中断
中断响应
通常,当一个中断发生时,CPU暂停它的现行程序,而转向中断处
理程序,从而可以输入或输出一个数据。当中断处理完毕后,CPU又返 回到它原来的任务,并从它停止的地方开始执行程序。这种方式下,若 无外设提出请求,CPU一直在处理原来的任务。可以看出,它节省了 CPU宝贵的时间,是管理I/O操作的一个比较有效的方法。程序中断方 式一般适用于随机出现的服务,并且一旦提出要求,应立即进行(按优 先级次序)。同程序查询方式相比,硬件结构相对复杂一些,服务开销
构依赖于CPU,对外设发展不利。
计算机组成原理
第4页
第八章
输入/输出系统
I/O接口的功能
(1)对传送数据提供缓冲、隔离和寄存 由于I/O设备与CPU的定时标准不同,数据处理速度也不同,所以需 要对传送数据提供缓冲、隔离和寄存(或锁存)。 (2)对信号的形式和数据的格式进行转换 计算机与I/O设备所用的信号的形式和数据的格式可能不同,I/O接 口应能进行相互之间的转换。 (3)对I/O端口进行寻址 I/O接口实际上都会包含若干个I/O端口。从编程的角度,和I/O设备 打交道实际是和I/O端口打交道。每一个I/O端口有一个编号,称为端口地 址,简称口地址。 (4)与CPU和I/O设备进行联络 I/O接口处于CPU和I/O设备的中间,在传送数据时,经常要在两个 方向上进行联络,即接口电路既要面向CPU进行联络,又要面向I/O设备 进行联络。
计算机组成原理
第14页
ቤተ መጻሕፍቲ ባይዱ 第八章
输入/输出系统
中断识别
当CPU响应中断、保护断点之后,就要进行中断源的识别,即寻找中 断源,找到相应的中断服务程序入口。识别中断源有三种方法:查询法、 向量法和强臵程序计数器法。 (1)查询法 这是通过程序来查询是哪一个中断源提出的中断请求。
...
中断源1 中断源2
INTR
...
中断源n
寄 存 器
译码
...
三 态 门
EN
D7—D0
A15—A0
IOR
计算机组成原理
第15页
第八章
输入/输出系统
(2)向量法(矢量法) 这是一种硬件方法。在CPU发出中断响应信号时,由硬件产生当前所 有请求中级别最高的中断源的中断标识码。中断标识码是中断源的识别标 志,可用来形成相应的中断服务程序的入口地址或存放中断服务程序的首 地址。当有中断源提出请求时,中断排队与编码器进行判优并产生其中级 别最高的中断源的中断标识码。在到来时,CPU通过三态门获得中断标识 码。

保护断点地址
找出中断源,形成中断服务程序 入口地址,并转向中断服务程序
保护现场
中断服务 中断处理 恢复现场
CPU开放中断 中断返回 返回原程序断点处
计算机组成原理
第17页
第八章
输入/输出系统
多重中断
由于中断源相互独立而随机地发出中断请求,因此常常会同时发生多个 中断请求。同一类中的各中断请求的响应和处理的优先次序,一般不是由中 断系统的硬件而是由其软件或通道来管理。而不同类的中断就要根据中断的 性质、紧迫性、重要性以及软件处理的方便性把它们分成不同的级别。中断 系统按中断源的级别高低来响应。通常把优先级最高的中断定为一级,其次 是二级,再次是三级,依此类推。不同机器对优先级高低的划分有差异。 在同时发生多个不同中断类的中断请求时,中断响应硬件中的排队器决 定响应的次序。然而,中断的处理要由中断服务程序来完成,而中断服务程 序在执行前或执行中是可以被中断的。这样,中断处理次序就可以不同于中 断响应次序。 一般在处理某级中的某个中断请求时,与它同级的或比它低级的中断请 求是不能中断它的处理的。只有比它高级的中断请求才能中断其处理过程, 等响应和处理完后,再继续处理原先的那个中断请求。 中断响应的次序用排队器硬件实现,次序是由高到低排好序的。为了能 根据需要,由操作系统灵活改变实际的中断处理次序,很多机器都设臵了中 断级屏蔽位寄存器,以决定某级中断请求能否进入中断响应排队器。只要能 进入中断响应排队器的,总是让高级别的优先响应。
计算机组成原理
第2页
第八章
输入/输出系统
接口的概念
接口是处理器CPU与“外部世界”的连接电路,是 CPU与外界进行信息交换的中转站。所谓的外部世界是指 除CPU本身以外的所有设备或电路,包括存储器、I/O设备、 控制设备、测量设备、通讯设备、多媒体设备等。 一个能够实际运行的接口,应由硬件和软件两部分组成。
A中断请求 主程序 B中断请求 C中断请求 主程序
A中断服务程序
B中断服务程序
C中断服务程序
计算机组成原理
第13页
第八章
输入/输出系统
中断源
凡是能引起中断的设备或事件均称为中断源。中断源向中断系统发 出请求中断的申请,称为中断请求。同时可能有多个中断请求,这时中 断系统需要按事先确定的中断响应优先次序对优先级高的中断请求予以 响应。所谓中断响应就是允许其中断CPU现行程序的运行,转去对该请 求进行预处理,包括保存好断点现场,调出有关处理该中断的中断处理 程序,准备运行。 中断系统也可以对中断请求进行屏蔽,使之暂时得不 到响应。 目前,微机中的中断源一般有以下几种: (1)外设的服务请求:系统外设要求与CPU交换信息而产生的中断。 (2)CPU内部事件:程序员的疏忽或算法上的差错,使程序在运行过 程中出现多种错误而产生的中断,如除法错,运算溢出等。 (3)硬件故障中断:机器在运行过程中,硬件出现偶然性或固定性的 错误而引起的中断,例如电源掉电、内存出错等。 (4)软中断:又称为软件中断,是用软件方法产生中断,即在程序中 安排特定的指令:INT <中断类型号>,当程序执行到该类指令时,进入 到中断类型号所对应的中断服务程序。 显然,软中断是人为安排的,而上面介绍的3种硬件中断源引起的中 断是随机的。
计算机组成原理
第7页
第八章
输入/输出系统
现行程序 CPU向I/O设备发出读指令
CPU读I/O设备状态 未准备就绪
检查状态 准备就绪 从I/O接口中读一个字到CPU
出错
从CPU向主存写入一个字 否
完成否? 是 现行程序
计算机组成原理
第8页
第八章
输入/输出系统
2. 程序中断方式
中断是外围设备用来“主动”通知CPU,准备送出输入数据或接收 输出数据的一种方法。
计算机组成原理
第6页
第八章
输入/输出系统
I/O设备数据传送控制方式
1. 程序查询方式 程序查询方式是早期计算机中使用的一种方式。其过程是由CPU不断 查询I/O设备是否已做好准备,从而控制I/O设备与主机交换信息。采用这种 方式实现主机和I/O设备交换信息,要求I/O设备接口内设臵一个能反映设备 是否准备就绪的状态标记,CPU通过对此标记的检测,可得知设备的准备 情况。 数据在CPU和外围设备之间的传送完全靠计算机程序控制,查询方式 的优点是CPU的操作和外围设备的操作能够同步,而且硬件结构比较简单, 易于实现。缺点是CPU效率低,因为外围设备动作很慢,程序进入查询循 环时将占用CPU时间,CPU此时只能等待,不能处理其它业务,CPU利用 率低。即使CPU采用定期地由主程序转向查询设备状态的子程序进行扫描 轮询的办法,CPU宝贵资源的浪费也是可观的。因此,这种方式适合于在 CPU不太忙且传输速度不高的情况下采用,当前除单片机外,很少使用程 序查询方式。
从使用角度来看,接口的硬件部分应包括有:
基本逻辑电路 端口地址译码电路
供选电路
计算机组成原理
第3页
第八章
输入/输出系统
为什么要在CPU与外设之间设臵接口电路?
有几个方面的原因: 一是CPU与外设两者的信号线不兼容,在信号线功能 定义、逻辑定义和时序关系上都不一致; 二是两者的工作速度不一致,一般来说,CPU速度高, 而不同外设速度有高有低,差异很大; 三是若不通过接口,而由CPU直接对外设的操作实施 控制,就会使CPU疲于与外设打交道之中,大大降低CPU 的效率; 四是若外部设备直接由CPU控制,也使外设的硬件结
计算机组成原理
第10页
第八章
输入/输出系统
4. 通道方式 通道是一个具有特殊功能的处理器,某些应用中称为输入输出处理 器(IOP),它可以实现对外围设备的统一管理和外围设备与内存之间 的数据传送。 存储管理部件
通道总线 内存 选择通道 磁盘控制器
...
磁盘控制器
磁盘 CPU 存 储 总 线 字节多路 通道 设备控制器 设备 数组多路 通道 设备控制器 设备 通道总线 通道总线
磁盘
磁盘
...
设备控制器 设备 设备
...
设备控制器 设备 设备
计算机组成原理
第11页
第八章
输入/输出系统
8.2 程序中断方式
中断概念
所谓中断,是一个过程,即CPU在正常执行程序的过程中,遇到外 部/内部的紧急事件需要处理,暂时中断当前程序的执行,而转去为该 事件服务,待服务完毕,再返回到暂停处(断点)继续执行原来的程序。 为事件服务的程序称为中断服务程序或中断处理程序。 严格地说,上面的描述是针对硬件事件引起的中断而言的。用软件 方法也可以引起中断,即事先在程序中安排特殊的指令,CPU执行到该 类指令时,转去执行相应的一段预先安排好的程序,然后再返回去执行 原来的程序,这可称为软中断。把软中断考虑进去,可给中断再下一个 定义:中断是一个过程,是CPU在执行当前程序的过程中因硬件或软件 的原因插入了另一段程序运行的过程。
时间较大。
计算机组成原理
第9页
第八章
输入/输出系统
3. 直接存储器访问方式(DMA) 程序中断方式和程序查询方式有一个共同点,即数据传送都是通 过CPU执行指令来完成的,而CPU指令系统只支持CPU(寄存器)和 存储器/外设间的数据传送。所以,如果外设要和存储器进行数据交 换,也必须经过CPU寄存器中转,显然,中转浪费了时间。 由此设想,如果在外设和存储器之间能开辟一个直接数据通道, 数据传送由另外的硬件来控制,那么既加快了传送速度又减轻了CPU 对I/O的负担。DMA传送方式正是受了这个启发而提出的。 DMA方式的工作特点是,当需要进行DMA传送时,DMAC (DMA控制器)向CPU提出总线使用请求,获得CPU响应后,DMAC 控制总线,外设和存储器之间的数据传送在DMAC的控制下完成,此 时,CPU处于空闲状态。当然,DMA传送方式的提出还有一个更直接 的原因,即中断传送方式和程序查询方式从速度上满足不了磁盘、磁 带等高速外设与存储器之间进行数据交换的需要。这些设备的数据传 送有两大特点:一是传送速率高;二是成批传送,即把设备的一批数 据传到一个内存区,或将一个内存区的全部数据传送给设备,所以在 数据传送的同时还伴随着内存指针的修改、传送数据个数的统计以及 传送结束的判断等。
相关文档
最新文档