当前位置:
文档之家› 计算机组成原理第8章 输入输出系统
计算机组成原理第8章 输入输出系统
8.1 输入/输出系统概述
8.1.2 I/O设备的寻址方式
在独立编址方式中,主存地址空间和I/O端口地址空间是相对独 立的,分别单独编址。例如,在8086系统中,其主存地址范围是从 00000H~FFFFFH连续的1 MB,其I/O端口的地址范围从0000H~ FFFFH,它们互相独立,互不影响。CPU访问主存时,由主存读写 控制线控制;访问外设时,由I/O读写控制线控制,所以在指令系统 中必须设置专门的I/O指令。
8.3 程序中断方式
8.3.2 中断的工作过程
一个计算机系统包含多个中断源。由于中断产生的随机性, 使得有可能在某一时刻有多个中断源向CPU发出中断请求,但是 CPU在任意时刻只能响应并处理一个中断。
中断优先级判定的方法一般有两种:软件判优和硬件判优。
8.3 程序中断方式
8.3.2 中断的工作过程
读取外设状态字
程
外设准备就绪?
序 查
询
方
传送一次数据
式 的
工
修改传送数据
作
流
程
传送完否?
结束
8.2 程序查询方式
8.2.2 程序查询方式的接口
数
输 入 设 备
锁
据
存
缓
器
冲
器
三
R
态
DQ
缓 冲
器
地址 译码
8.2 程序查询方式
8.2.2 程序查询方式的接口
数
据
锁
存
器
地
输
址
出
译
设
码
备
R
QD
状 态 寄 存 器
8.3 程序中断方式
8.3.1 中断的基本概念
中断:由于系统中某些突发事件或异常情况的发生,而强迫CPU 暂停(或中断)正在执行的程序转去执行相应的服务,当中断服 务结束之后再回到原来被中断的地方继续执行原来的程序。
中断源:发出中断请求的来源。 中断源可以分为两大类:内部中断和外部中断。
8.3 程序中断方式
8.3 程序中断方式
8.3.3 中断处理
1 关中断
2 保护现场
中断 处理
3 开中断 4 执行中断服务程序
5 关中断和恢复现场
6 中断返回
8.3 程序中断方式
8.3.4 单级中断与多级中断
在单级中断系统中,所有的中断源都属于同一级,其优先 次序是离CPU近的优先级高。当响应某一中断请求时,执 行该中断源的中断服务程序,在此过程中,不允许其他中 断源打断中断服务程序。
8.3 程序中断方式
8.3.1 中断的基本概念
有两个方面的原因: ①在查询方式下,CPU不断地读取和检测状态字,如果 状态表明外设未准备就绪,则CPU必须等待。这些过程占用 了CPU大量的工作时间,而CPU真正用于传送数据的时间却 很短,而且大多数外设的速度比CPU的工作速度慢得多,所 以程序查询方式的实质无异于让CPU降低有效的工作速度, 适应慢速的外设。
8.3 程序中断方式
8.3.1 中断的基本概念
有两个方面的原因: ②用程序查询方式工作时,如果一个系统有多个外设, 那么CPU只能轮流对每个外设进行查询,而这些外设的工作 速度各不相同。这时CPU显然不能很好地满足各个外设随机 性地对CPU提出的输入/输出服务要求,所以不具备实时性。 可见,在实时系统以及多个外设的系统中,采用程序查询方 式进行数据传送往往是不合适的。
8.3 程序中断方式
8.3.2 中断的工作过程
8.3 程序中断方式
8.3.2 中断的工作过程
8.3 程序中断方式
8.3.2 中断的工作过程
(1)断点保护。为了在中断处理结束后能正 确地返回到中断处,在响应中断时,必须把当前 的程序计数器的内容(断点)保存起来。
(2)根据前面得到的中断类型码计算出中断 服务子程序的入口地址。
软件判优是指通过软件来安排各中断源的优先级别, 但是也要借助于简单的硬件电路实现,如下图所示。
CPU D0~D7
INTR
并行 I/O端
口
≥1
中断 请求 寄存 器
8.3 程序中断方式
8.3.2 中断的工作过程
硬件判优是指利用专门的硬件电路或中断控制器来安排 各中断源的优先级。
菊花链法的基本思想是将所有的中断源构成一个链,各 中断源在链中的前后顺序是根据中断源优先级的高低来排列 的,排在链前面的高优先级的中断会自动封锁后边低优先级 的中断。
8.3.1 中断的基本概念
在中断传送方式下,外部设备具有申请CPU服务的主动权。当输 入设备将数据准备好或者输出设备准备好接收数据时,便可以向 CPU发中断请求,使CPU暂时停下当前正在执行的程序而和外部 设备完成一次数据传输。等输入/输出操作完成以后,CPU继续 执行原来的程序。
8.3 程序中断方式
8.1.1 I/O系统的功能和组成
外设识别
主
外
机
数据或命令或状态
设
控制电路
8.1 输入/输出系统概述
8.1.2 I/O设备的寻址方式
统一编址方式又称存储器映射编址方式,即把每个I/O端口都当 成一个存储单元看待,I/O端口与存储器单元在同一个地址空间进行 编址。通常是在整个地址空间中划分出一小块连续的地址分配给I/O 端口,被I/O端口占用了的地址存储器不能再使用。
8.1 输入/输出系统概述
8.1.3 输入/输出方式
程序查 询方式
程序中 断方式
DMA方式
通道方式
8.2 程序查询方式
8.2.1 程序查询方式的工作原理
用程序查询方式传送 时,CPU通过执行程序不 断地读取并测试外设的状 态,如果外设处于准备好 状态 (输入设备)或者 空闲状态(输出设备), 则CPU执行输入指令或输 出指令与外设交换信息。
本章给出计算机系统中信息传输过程中的 技术解决方案。
8.1 输入/输出系统概述
8.1.1 I/O8系.统1的功能和组成
状态信息
实现主机和外设 的联络控制
数据信息 需要交换 的信息
传送控制 命令和 状态信息
功能
进行地址 译码和设 备选择
控制信息
数据格式 的变换
实现数据 缓冲
8.1 输入/输出系统概述
8.3.1 中断的基本概念
硬件故障处理
使CPU与I/O设备 实现并行工作
实现人机联系
实现实时处理
实现多道程序 和分时操作
8.3 程序中断方式
8.3.2 中断的工作过程
当外部设备处于就绪状态,即输入设备将 数据准备好或者输出设备准备好接收数据时, 便通过相应的硬件电路向CPU发送一个中断请 求信号,请求为之服务。
8.2 程序查询方式
8.2.1 程序查询方式的工作原理
对于程序查询方式来说,一个数 据传送过程包括3个环节:
(1)CPU从接口读取状态字。 (2)CPU检测状态字的对应位是 否满足“就绪”条件,如果不满足, 则继续回到前一步读取状态字。 (3)如果状态字表明外设已处于 “就绪”状态,则传送数据。
启动外设