计算机体系结构 第四章 输入输出

4 输入输出

4.1 输入输出原理

  • 通常把处理机和主存储其之外的部分统称为输入输出系统,包括输入输出设备、输入输出接口和输入输出软件的等
  • 运算器、控制器、主存储器和总线等也要通过输入输出系统来管理

4.1.1 输入输出系统的特点

请添加图片描述

1 实时性

请添加图片描述

2 设备无关性
  • 独立于具体设备的标准接口
  • 计算机系统的使用者,在需要更换外围设备时,各种不同型号,不同生产厂家的设备都可以直接通过标准接口与计算机系统连接
  • 处理机采用统一的硬件和软件对品种繁多的设备进行管理
  • 某些计算机系统已经实现了即插即用技术
3 异步性
  • 输入输出设备通常不使用统一的时钟系统,各个设备按照自己的时钟工作,但又要在某些时刻接受处理机的控制
  • 外围设备与处理机之间的交互式随机的
  • 处理机与外围设备之间,外围设备与外围设备之间能并行工作

4.1.2 输入输出系统的组织方式

请添加图片描述

请添加图片描述

请添加图片描述

4.1.3 基本的输入输出方式

1 程序控制的输入输出方式

4个特点:

  1. 何时对何设备进行输入输出操作受CPU控制
  2. CPU要通过指令对设备进行测试才能知道设备的工作状态。空闲、准备就绪、忙碌等
  3. 数据的输入和输出都要经过CPU
  4. 用于连接低速外围设备,如终端、打印机等
    请添加图片描述

一个处理机管理多台外围设备。处理机采用轮流循环测试方法,分时为各台外围设备服务

  • 优点:灵活性好,可以很容易过地改变各台外围设备的优先级
  • 缺点:不能实现处理及与外围设备之间并行工作

请添加图片描述

2 中断输入输出

定义:当出现来自系统外部,机器内部,甚至处理机本身的任何例外的,或者虽然是事先安排的,但出现在现行程序的什么地方是事先不知道的事件时,CPU暂停执行现行程序,转去处理这些事件,等处理完成后再返回来继续执行原先的程序

特点:

  1. CPU与外围设备能够并行工作。
  2. 能够处理例外事件。
  3. 数据的输入和输出都要经过CPU。
  4. 用于连接低速外围设备。
3 直接存储器访问方式

DMA:Direct Memory Access:主要用来连接高速外围设备。如磁盘存储器,磁带存储器、光盘辅助存储器,行式打印机等

请添加图片描述

请添加图片描述

请添加图片描述

使用DMA方式实际上有如下三种:
  1. 周期窃取
  • 周期窃取是窃取的主存的一至多个存取周期
    请添加图片描述
  1. 直接存取方式
    请添加图片描述

  2. 数据块传送方式
    请添加图片描述

4.2 中断系统

4.2.1 中断源的组织

请添加图片描述

1 中断源的种类

请添加图片描述

2 中断源的分类组织
  • 中断源分类组织的目的:在中断响应后尽快找到中断入口
  • 根据中断事件的紧迫程度,中断源工作速度、性质等进行分类
  • 为每一类中断原分配一个硬件入口,在进入这个入口之后,在通过软件找到具体的中断源
  • 可屏蔽中断与不可屏蔽中断,或称一般中断和异常中断
3 中断优先级

安排中断优先顺序主要由下列因素来决定:

  • 中断源的急迫性

  • 设备的工作速度

  • 数据恢复的难易程度

  • 要求处理及提供的服务量

  • 中断优先级和中断服务顺序:
    中断优先级由硬件排对器决定, 但是可以软件设置中断屏蔽吗改变中断服务顺序。

4.2.2 中断系统的软硬件分配

1 主要考虑的两个因素:
  • 中断响应时间
  • 灵活性: 容易更改
2 中断处理过程:

在这里插入图片描述
在这里插入图片描述

  • 必须硬件实现的: 保存中断点和进入中断服务程序入口
    这两个功能相当于执行一条转子程序指令,因为终端发生在先行程序的什么地方是不确定的,不能由程序员来安排。
  • 必须软件实现的:终端服务,返回中断点
    返回中断点,通过执行中断返回指令来实现
    中断服务必须用软件实现
3 中断响应时间

定义: 从中断源向处理及发出中断服务请求开始,到处理机开始执行这个中断源的中断服务程序时为止

  • 影响中断响应时间的4个因素:
  1. 最长指令执行时间。
  2. 处理其他更紧急任务的时间
  3. 从第一次关CPU到第一次开COU所经历的时间
  4. 多个中断源同时请求中断服务,通过软件找到中断服务程序入口所用的时间

4.2.3 中断源的识别方法

1 识别中断源的查询法
  • 所有中断源公用一条中断请求线
  • 处理机响应中断后都进入同一个程序入口
  • 用软件找出申请中断的中断源
    在这里插入图片描述
2 软件排对链法
  • 设置一个中断请求寄存器,每个中断源在其中占据以为,并按照中断优先级从高到低的顺序排列。
  • 所有中断源使用同一条公共的中断请求线,进入公共中断源服务程序入口,其过程与查询法相同。
  • 在公共中断服务程序入口,用一条特殊指令将中断请求寄存器中的内容读到通用寄存器,然后用一条按位扫描指令找到第一位为“1”的位号(该位号实际上是所有请求中断服务的中断源中,具有最好优先级的中断源的相对编号)。
  • 通过变址转移指令直接转移到中断源的中断服务程序入口
  • 节省软件逐个寻找中断源的时间
3 串行排队链法
  • 用硬件排队器和编码器,在所有终端服务的中断源中,找出具有最高优先级的中断源。
  • 识别中断源速度更快
    在这里插入图片描述

在这里插入图片描述

4 中断向量法
  • 主存固定区域开辟专用中断向量区
  • 用硬件排对器和编码器在所有请求中断服务的中断源中,产生最高优先级的中断源编号
  • 隐含执行上面方法中的两条识别中断源的指令,直接通过硬件转向这个中断源的中断服务程序入口
  • 不需要进入公共的中断服务程序,用硬件实现,快速向中断服务程序入口地址转移
5 独立请求法
  • 各个中断源使用自己的独立的中断请求线
  • 通过仲裁线路,选择优先级最高的中断源
  • 将串行排队器集中到处理机中,克服了串行排队链法可靠性差确定,但灵活性差

在这里插入图片描述
独立分组请求法

  • 把独立请求发法与穿行排队链法结合起来
  • 组内采用用串行排队链法,组件采用独立请求法

在这里插入图片描述

4.2.4 中断现场的保存和恢复

  • 程序计数器PC,由硬件完成保存
  • 处理机状态字、堆栈指针、基址寄存器、中断屏蔽码等。保存与恢复方法有:主存固定区域,压入系统堆栈、交换处理机状态字。也可以采用软件在中断服务程序中保存和恢复。
  • 软件现场:中断服务程序中被破环的通用寄存器。一般采用软件来保存和恢复现场

4.2.5 中断屏蔽

中断屏蔽的三个用处:

  • 中断优先级由硬件确定了的情况下,改变中断源的中断服务顺序
  • 决定设备时否采用中断工作方式
  • 多处理机中,把外围设备的服务工作分配到不同处理机中

中断屏蔽实现

  • 每级中断源设置屏蔽位
  • 改变处理机优先级

中断响应顺序

中断服务顺序

请添加图片描述

首先关CPU中断,撤销中断请求,再开中断,D1执行一小段时间,响应D2…

在响应一个中断请求之后,如果没有屏蔽其他中断,之后会相应其他中断。

实现方法
  • 改变处理机优先级

只有高于处理机的优先级才能才能被响应

4.3 通道处理机

4.3.1 通道的作用和功能

1 三种基本输入输出方式存在的问题
  • CPU输入输出负担很重
  • 低速外围设备,每传送一个字符都要由CPU执行一段程序来完成
  • 高速外围设备初始化、前处理、后处理等工作需要CPU完成
  • 大型机中的外围设备台数很多,但一般并不同时工作,让DMA控制器能被多台设备共享,提高硬件的利用率

在这里插入图片描述

2 通道的主要功能

在这里插入图片描述

4.3.2 通道的工作过程

通道完成一次数据输入输出的过程分三步

  • 用户程序使用访管指令进入管理程序,由CPU通过管理程序组织一个通道程序,并启动通道
  • 通道处理机执行通道程序,完成指定的数据输入输出
  • 通道结束后,再次调用管理程序进行处理

完成一次输入输出,CPU只需要调用两次管理程序

在这里插入图片描述
在这里插入图片描述

4.3.3 通道种类

在这里插入图片描述

1 字节多路通道
  • 采用分时方式工作,为多台中低速外围设备服务
  • 有多个子通道,每个子通道连接一个控制器
  • 子通道共享通道控制模块,拥有独立寄存器
  • 可以在主存中开辟固定区域充当寄存器

在这里插入图片描述

2 选择通道
  • 为高速外围设备服务
  • 一旦选中一个设备,通道就进入“忙”状态,知道该设备的数据传输工作全部完成为止
  • 只有一个以成组方式工作的子通道

在这里插入图片描述

3 数组多路通道
  • 字节多路通道和选择通道的结合。
  • 每次为一台高速设备传送一个数据块,并轮流为多台外围设备服务。
  • 数组多路通道的实际工作方式是:在为一台高速设备传送数据的同时,有多台高速设备可以在定位或者在找扇区。
  • 与选择通道相比,数组多路通道的数据传输率和通道的硬件利用都很高
  • 一次输入输出过程中要多次与同一台高速外围设备连接和断开,控制硬件的复杂度也高

4.3.4 通道中的数据传送过程

字节多路通道
在这里插入图片描述
在这里插入图片描述
所 需 要 的 总 时 间 T B Y T E = ( T S + T D ) ∗ p ∗ n 所需要的总时间 T_{BYTE} = (T_S+T_D)*p*n TBYTE=(TS+TD)pn
选择通道

在这里插入图片描述
在这里插入图片描述

4.3.5 通道流量分析

  • 通道流量: 单位时间内能够传送的最大数据量。又称通道吞吐率,通道数据传输率等
  • 通道最大流量:通道在满负荷工作状态下的流量

在这里插入图片描述
在这里插入图片描述

  • 为了保证通道不丢失数据,通道实际流量不应该大于通道最大流量

4.4 输入输出处理机

能够独立承担输入输出工作的专用处理机

4.4.1 输入输出处理机的作用

通道处理机存在的问题:

  • 每完成一次输入输出操作要两次中断CPU的现行程序
  • 通道处理机不能处理自身及输入输出设备的故障
  • 数据格式转换、码制转换、数据块检验等工作要CPU完成
  • 文件管理、设备管理等工作,通道处理机本身无能为力

在这里插入图片描述
输入输出处理机除了能够完成通道处理机的全部功能之外,还具有如下功能

在这里插入图片描述

  • 输入输出处理机还可以根据需要完成分配给它的其它任务,如数据库管理等
  • 除了具有数据的输入输出功能之外,还具有运算功能和程序控制等功能
  • 不仅能够执行输入输出指令,还能够执行算术逻辑指令和程序控制指令等,就象一般的处理机那样

4.4.2 输入输出处理机的种类

在这里插入图片描述
在这里插入图片描述

4.5 总线系统

  • 总线是用于互连计算机、CPU、存储器、I/O端口及外部设备、远程通信设备间信息传送通路的集合
  • 总线与其相配合的附属控制电路统称为总线系统
  • 按照信息传送功能、性能的不同,总线系统包括数据线、地址线、时序和中断信号等控制/状态线、电源线、地线以及备用线等

4.5.1 总线分类

在这里插入图片描述

4.5.2 总线的控制方式

集中式控制

总线控制机构基本集中在一起,不论是在连接到总线的一个部件中,还是在单独的硬件中

在这里插入图片描述
集中式串行链接
在这里插入图片描述

  • 优先次序是由“总线可用”线所接部件的物理位置决定的
  • 优点: 选择算法简单; 部件增减容易,可扩充性好;逻辑简单容易通过重复设置提高可靠性
    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

分布式控制

总线控制逻辑分散在连到总线的各个部件间

4.5.3 总线的通讯方式

同步通讯: 两个不讲信息通过定宽、定距的系统时标进行同步

  • 传送效率高,受总线影响小
  • 出现同步误差,受干扰

异步通信

  • 单向控制:通信过程之手目的或源部件中的一个控制
    优点:简单、高速
  • 双向控制:由源和目的双方控制

异步单向源控式
在这里插入图片描述
异步单向目控式通信:解决传送有效性检验
在这里插入图片描述
异步请求回答双向控制
在这里插入图片描述
非互锁方式
在这里插入图片描述

  • 若下一个数据准备到达目的部件时,上一个数据接收仍然处在高电平,这样“数据准备”就会使“数据接收”一直处在高电平,从而出错。
    在这里插入图片描述
    互锁方式
    下一个“数据准备信号”只能在“数据接收”信号接收后才会被发出
    在这里插入图片描述
  • 硬件控制复杂
  • 适应不同俗的的设备,保证数据正确,并且有较高的数据传输速率

4.5.4 数据宽度

  • 数据宽度是I/O设备取得I/O总线后所传输的数据的总量,而数据通路宽度,是数据总线的物理宽度。
  • 一个数据宽度可能需要多个数据周期才能完成
    在这里插入图片描述

4.4.5 总线线数

在这里插入图片描述

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值