一. 内容总览

二. 输入输出系统概述

1. 输入输出系统的发展史

计算机组成原理——输入输出系统_数据

(1). 早期阶段

计算机组成原理——输入输出系统_主存_02

1. I/O设备的特点
  1. 每个I/O设备都有一套独立的逻辑电路与CPU连接,即分散连接
  2. I/O设备和CPU是串行方式工作,工作效率低
  3. I/O设备的逻辑控制电路和CPU控制器不可分割,增减I/O设备困难
2. I/O设备与主机的通信方式

采用程序查询方式

(2). 接口模块和DMA阶段

计算机组成原理——输入输出系统_工作效率_03

1. 接口模块的特点

接口的功能:

  1. 设有数据通路
数据经过结构起到缓冲作用,完成串—并变换
  1. 设有控制通路
用来传送CPU向I/O设备发出的控制命令,并且让CPU接受I/O设备的反馈信息
  1. 满足中断请求处理(程序中断方式)
这个特点使得CPU和I/O设备可以进行并行方式工作,提高CPU工作效率
  1. 使多台I/O设备并行工作,分时占用总线

缺点:

主机与I/O设备交换信息时,CPU要中断现行程序,即CPU和I/O设备不能做到绝对的并行工作
2. DMA(直接存储器存取技术)特点

计算机组成原理——输入输出系统_主存_04


DMA方式特点:

I/O设备与主存之间有一条直接数据通路,I/O设备可以直接与主存交换信息,
使CPU在I/O设备与主存交换信息时任能继续工作

(3). 具有通道结构阶段

计算机组成原理——输入输出系统_数据_05

  1. 为什么大中型计算机要采用通道技术
1. 大中型计算机I/O设备多,每个I/O设备配置专门DMA接口,增加硬件成本,并且会出现访问主存冲突
2. CPU对许多DMA接口管理,浪费时间
  1. 通道结构的特点
1. 通道可视为具有特殊功能的处理器,有专门的通道指令,独立执行通道指令所编写的输入输出程序
2. 依据CPU的I/O指令进行启动、停止、改变工作状态
3. CPU不直接参与管理,提高CPU资源利用率

(4). 具有I/O处理机阶段

  1. I/O处理机(或称外围处理机)的特点
独立于主机工作,即可完成I/O通道要完成的I/O控制,又可以完成码制变换、格式处理、数据块检错、纠错等

2. 输入输出系统的组成

计算机组成原理——输入输出系统_工作效率_06

(1). I/O软件

1. I/O指令

计算机组成原理——输入输出系统_工作效率_07

  1. 操作码字段
特点:作为I/O指令和其他指令(如访存指令、算逻指令、控制指令等)的判别代码
  1. 命令码字段
特点:体现I/O设备的具体操作

作用:
1. 将数据从I/O设备输入主机
2. 将数据从主机输出至I/O设备
3. 转态测试
4. 形成某些操作命令
  1. 设备码字段
特点:是多台设备的选择码,相当于设备的地址
2. 通道指令
  1. 定义
通道指令是对具有通道的I/O系统专门设置的指令

通道指令又称通道控制字(Channel Control Word,CCW)是通道用于执行I/O操作的指令,
可以有管理程序存放在主存的任何地方,由通道从主存中取出并执行
  1. 特点
通道指令是通道自身的指令,用来执行I/O操作
如:读、写、磁带走带、磁盘找道

(2). I/O硬件

1. 带有接口的I/O子系统

计算机组成原理——输入输出系统_数据_08

2. 具有通道的I/O系统

计算机组成原理——输入输出系统_主存_09

3. I/O设备与主机的联系方式

计算机组成原理——输入输出系统_主存_10

(1). I/O设备编址方式

通常将I/O设备码看做是地址码,对I/O设备地址码的编址可采用两种方式:

  1. 统一编址
占用存储空间,减少了主存容量,但无需专用I/O指令
  1. 不统一编址
不占用主存空间,不影响主存容量,需要设置专门的I/O指令

(2). 设备寻址

(3). 传送方式

  1. 并行传送
定义:同一瞬间,n位信息同时从CPU输出至I/O设备,或由I/O设备输入到CPU

特点:传送速度快,数据线多
  1. 串行传送
定义:同一瞬间只传送一位信息,在不同的时刻连续逐位传送一串信息

特点:传送速度慢,只需一根数据线和地址线

(4). I/O设备与主机的联络方式

按I/O设备速度不同分类
  1. 立即响应方式
适用于:对于一些工作速度十分缓慢的I/O设备,无需特殊联络信号

他们通常都已处于某种等待状态,只要CPU的I/O指令一到,他们便立即响应

如:指示灯的亮与灭,开关的通与关等
  1. 异步工作采用应答信号联络方式
适用于:当I/O设备与主机工作速度不匹配时,通常采用异步工作方式

特点:在交换信息前,I/O设备与CPU各自完成自身的任务,一旦出现联络信号,彼此才准备交换信息


分类:
1. 异步并行应答联络方式

计算机组成原理——输入输出系统_主存_11

2. 异步串行联络方式

计算机组成原理——输入输出系统_工作效率_12

  1. 同步工作采用同步时标联络方式
要求:I/O设备与CPU的工作速度完全同步

这种联络相互之间还得配有专用电路,用以产生同步时标来控制同步工作

(5). I/O设备与主机的连接方式

辐射式

计算机组成原理——输入输出系统_主存_13


要求:每台I/O设备都有一套控制线路和一组信号线,因此所用的器件和连线较多,对I/O设备增删都非常困难

出现时期:计算机发展初期

总线式

计算机组成原理——输入输出系统_数据_14


要去:通过一组总线(地址线、数据线、控制线),将所有的I/O设备与主机连接

出现时期:现代大多数计算机所采用的方式

4. I/O设备与主机信息传送的控制方式

注:I/O通道和I/O处理方式详细内容见计算机体系结构

计算机组成原理——输入输出系统_数据_15

(1). 程序查询方式

1. 概念

程序查询方式是由CPU通过程序不断的查询I/O设备是否已做好准备,从而控制I/O设备与主机交换信息。

2. 程序查询方式的要求

采用这种方式实现主机和I/O设备交换信息,要求I/O接口内设置一个能反映I/O设备是否准备就绪的状态标记,CPU通过对此标记的检测,可得知I/O设备的准备情况

3. 程序查询方式的流程
  1. 单个I/O设备的查询流程
  2. 计算机组成原理——输入输出系统_工作效率_16

  3. 多个I/O设备的查询流程

当有多个I/O设备时,CPU需按各个I/O设备在系统中的优先级别进行逐级查询

计算机组成原理——输入输出系统_主存_17

  1. 完成查询需要的指令
测试指令:用来查询I/O设备是否准备就绪

传送指令:当I/O设备已准备就绪的时候,执行传送指令

转移指令:若I/O设备未准备就绪,执行转移指令,转移至测试指令,继续测试I/O设备状态
  1. 详解:单个I/O设备程序查询方式流程
  2. 计算机组成原理——输入输出系统_主存_18

4. 程序查询方式的缺点

一方面:只要一启动I/O设备,CPU便不断的查询I/O设备的准备情况,从而终止了原程序的执行。CPU在反复查询过程中,犹如就地踏步

另一方面:I/O设备准备就绪后,CPU要一字一字地从I/O设备取出,经CPU送至主存,此刻CPU也不能执行原程序,使得CPU和I/O设备处于串行工作状态,CPU利用率不高

5. 程序查询方式的接口电路

计算机组成原理——输入输出系统_主存_19

(2). 程序中断方式

1. 原理

当CPU在启动I/O设备后,不查询设备是否已准备就绪,继续执行自身程序,只是当I/O设备准备就绪并向CPU发出中断请求后才予以响应,大大提高CPU工作效率

计算机组成原理——输入输出系统_主存_20

2. 举例:从I/O设备读数据块到主存的程序流程

计算机组成原理——输入输出系统_工作效率_21

3. 程序中断方式优缺点

优点:在I/O设备进行准备的时候,CPU不需要时刻查询I/O设备的准备情况,不出现踏步的现象,CPU和I/O设备并行执行,CPU资源利用率提高

缺点:CPU和I/O接口不仅在硬件方面需要增加相应电路,而且在软件方面还需要编制中断服务程序

4. 中断的概念
  1. 中断定义:
    计算机在执行程序的过程中,当出现异常情况或特殊请求时,计算机停止现行程序的运行,转向对这些异常情况或特殊请求的处理,处理结束后再返回到现行程序的间断处,继续执行原程序
  2. 中断技术:
    实现中断功能的软硬件技术统称
5. I/O中断的产生
  1. 中断产生原因
    在I/O设备与主机交换信息时,由于设备本身机电特性的原因,其工作速度较低,与CPU无法匹配,所以当CPU启动I/O设备之后,自己还需要等待一段时间等到I/O设备执行完成后,才能实现主机与I/O设备之间的信息交换
  2. 中断的本质
    在设备准备的时候,CPU不作无谓等待,继续执行现行程序,只有当I/O设备准备就绪之后向CPU提出请求,再暂时中断CPU现行程序,使CPU执行I/O服务程序

计算机组成原理——输入输出系统_工作效率_22

  1. 中断技术应用领域
  1. 适应I/O设备工作速度低的问题
  2. 计算机突然掉电异常情况,在掉电瞬间启用中断立即启动另一个备份电源,迅速进行一些必要处理
  3. 实时控制领域,要求CPU及时响应外来信号的请求,完成相应操作
6. 程序中断方式的接口电路

为了处理I/O中断,在I/O接口电路中必须配置相关的硬件电路

计算机组成原理——输入输出系统_主存_23

(1). 中断请求触发器
(2). 中断屏蔽触发器
(3). 排队器
(4). 中断向量地址形成部件(设备编码器)
7. I/O中断处理过程
8. 中断服务程序的流程
(1). 保护现场
(2). 中断服务(设备服务)
(3). 恢复现场
(4). 中断返回

(3). DMA方式

1. DMA方式原理

主存与I/O设备之间有一条数据通路,主存与I/O设备交换信息时,无须调用中断服务程序。
若出现DMA和CPU同时访存,CPU总是将总线占用权让给DMA,通常把DMA的这种占有称为窃取或挪用

注:窃取的时间一般为一个存取周期,故把DMA占用的存取周期称为窃取周期(挪用周期)
在DMA窃取存取周期(挪用周期)时,CPU仍能够继续执行内部操作
2. DMA方式的特点
3. DMA接口的功能和组成
4. DMA的工作过程
5. DMA的接口类型

(4). 三种I/O设备与主机交换信息的方式比较

1. 工作效率的比较

计算机组成原理——输入输出系统_主存_24

三. I/O设备

1. 概述

计算机组成原理——输入输出系统_主存_25


计算机组成原理——输入输出系统_数据_26

2. 输入设备

3. 输出设备

4. 其他I/O设备

5. 多媒体技术

(1). 多媒体的定义

  1. 所谓媒体:是指信息传递和存储的最基本的技术和手段
常见的媒体:音乐、语言、图片、文件、书籍、电视、广播、电话
  1. 研究多媒体技术:就是要强调计算机与声音、活动图像、文件相结合

(2). 多媒体计算机的关键技术

  1. 视频和音频数据的压缩与解压技术
  2. 多媒体专用芯片
  3. 大容量存储器
  4. 适用于多媒体技术的软件

四. I/O接口

1. 概述

接口可以看做是两个系统或两个部件之间的交接部分,它既可以是两种硬件设备之间的连接电路,也可以是两个软件之间的共同逻辑边界
在这里我们主要是指主机和I/O设备之间设置的一个硬件电路及其软件控制

计算机组成原理——输入输出系统_主存_27


注:

接口(Interface):若干个端口加上相应的控制逻辑才能组成接口

端口(Port):指接口电路中的一些寄存器,这些寄存器分别用来存放数据信息、控制信息和状态信息,
端口分类:数据端口、控制端口、状态端口

CPU通过输入指令,从端口读入信息,通过输出指令,可将信息写入到端口中

2. 接口的功能和组成

计算机组成原理——输入输出系统_主存_28

(1). 总线结构计算机

计算机组成原理——输入输出系统_主存_29


每一台I/O设备都是通过I/O接口挂到系统总线上的

  1. 数据线

    是I/O设备与主机之间数据代码的传送线
  2. 设备选择线

    是用来传送设备码的,它的根数取决于I/O指令中设备码的位数
  3. 命令线

    主要用来传送CPU向设备发出的各种命令信号
  4. 状态线

    将I/O设备的状态向主机报告的信号线

(2). 接口的功能

1. 选址功能

由于I/O总线与所有的设备的接口电路进行相联,但是CPU究竟选择哪台设备,还得通过设备选择线上的设备码来确定
设备码将送至所有设备的接口

计算机组成原理——输入输出系统_数据_30

2. 传送命令功能

当CPU向I/O设备发出命令时,要去I/O设备能作出响应,
通常在I/O接口中设有存放命令的命令寄存器以及命令译码器

计算机组成原理——输入输出系统_主存_31

3. 传送数据功能

数据必须通过接口才能实现主机与I/O设备之间的传送

4. 反映I/O设备工作状态的功能

为了使CPU能及时了解个I/O设备的工作状态,接口内必须设置一些反应设备工作状态的触发器

(3). 接口的组成

随着大规模集成电路制作工艺的不断进步,目前大多数I/O设备所共用的电路都制作在一个芯片内,作为通用接口芯片。
另一些I/O设备专用的电路,制作在I/O设备的设备控制器中
本节所讲的接口的功能及组成均是指通用接口所具备的

计算机组成原理——输入输出系统_主存_32


计算机组成原理——输入输出系统_数据_33

3. 接口类型

计算机组成原理——输入输出系统_数据_34

(1).并行接口

将一个字节(一个字)的所有位同时传送

(2). 串行接口

在设备与接口之间一位一位的传送

(3). 可编程接口

功能和操作方式可用程序来改变或选择

(4). 不可编程接口

不能由程序来改变其功能,但可以通过硬连线逻辑来实现不同功能

(5). 通用接口

可供多种I/O设备使用

(6). 专用接口

为某类外设或某种用途专门设计的

(7). 程序型接口

用于连接速度较慢的I/O设备

现代计算机一般都可采用程序中断方式实现主机与I/O设备设备之间的信息交换,故都配有这类接口

(8). DMA型接口

用于连接高速I/O设备