【笔记】第5章输入输出系统

一、 概述

1. 输入输出系统的发展概况

  1. (早期)分散连接:外设与主机采用程序查询方式,CPU和I/O设备串行工作
  2. (接口模块和DMA阶段)总线连接:CPU和I/O设备并行工作,信息交换方式变为中断方式、DMA方式
  3. 具有通道结构的阶段:通道有自己的指令系统,执行通道程序,控制连接在通道上的I/O设备,与主机进行信息传输
  4. 具有I/O处理机的阶段

2. 输入输出系统的组成

  1. I/O软件
    · I/O指令:cpu指令的一部分,格式:操作码+命令码+设备码
    · 通道指令:通道自身的指令,指出数组的首地址、传送字数、操作命令
  2. I/O硬件
    · 设备 I/O接口
    · 设备 设备控制器 通道

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

  1. I/O设备编址方式
    · 统一编制:将I/O设备的地址看作内存地址的一部分;CPU利用取数、存数指令控制I/O设备;CPU系统指令集相对简单,适用于内存系统编址空间大
    · 不统一编址:内存空间地址外,设置外部设备编址;有专门的I/O指令
  2. 设备选址:用设备选择电路识别是否被选中
  3. 传送方式
    · 串行
    · 并行
  4. 联络方式
    - 立即响应
    - 异步工作采用应答信号
    在这里插入图片描述
    - 同步工作采用同步时标
  5. I/O设备与主机的连接方式
    · 辐射式连接,即分散连接:每台设备都配有一套控制线路和一组信号线
    · 总线连接:便于增删设备

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

1→3:I/O系统的自治能力越来越强
  1. 程序查询方式:串行方式
    在这里插入图片描述
  2. 程序中断方式:部分并行方式
    在这里插入图片描述
  3. DMA(直接存储器访问)方式
    · 主存和I/O之间有一条直接数据通道
    · 不中断现行程序
    · cpu和I/O并行工作,周期挪用(周期盗取)
  4. 三种方式工作效率比较
    在这里插入图片描述

二、 外部设备

1. 概述

在这里插入图片描述
其中,外部设备大致分为三类:
- 人机交互设备:键盘、鼠标、打印机、显示器
- 计算机信息存储设备:磁盘、光盘、磁带
- 机—机通讯设备:调制解调器等

2. 输入设备

  1. 键盘:根据ASCII判断键
  2. 鼠标:机械式、光电式
  3. 触摸屏

3. 输出设备

  1. 显示器
    · 字符显示:字符发生器
    · 图形显示:主观图像
    · 图像显示:客观图像
  2. 打印机:击打式(点阵式)、非击打式(激光、喷墨)

4. 其他

  1. A/D、D/A: 模拟/数字(数字/模拟)转换器
  2. 终端:由显示器和键盘组成,完成显示控制与存储、键盘管理及通信控制
  3. 汉字(其他文字)处理:输入、存储、输出

5. 多媒体设备

  1. 定义:通过计算机对文字、数据、图形、图像、动画、声音等多种媒体信息进行综合处理和管理,使用户可以通过多种感官与计算机进行实时信息交互的技术。
  2. 关键技术:数据解压缩、编码技术、专用芯片、语音图片识别等

三、 I/O接口

1. 概述

为什么要设置接口?

  1. 实现设备的选择
  2. 实现数据缓冲达到速度匹配
  3. 实现数据串—并格式转换
  4. 实现电平转换
  5. 传送控制命令
  6. 反应设备的状态(忙、就绪、中断请求)

2. 接口的功能和组成

  1. 总线连接方式的I/O接口电路
    · 总线类型:设备选择线(单向)、数据线(双向)、命令线(单向)、状态线(单向)
    · 示意图
    在这里插入图片描述
  2. 功能与组成
    · 选址功能(设备选择电路)、传送命令(命令寄存器、命令译码器+节拍)、传送数据(数据缓冲寄存器)、反应设备状态(设备状态标记)
    · 完成触发器D、工作触发器B、中断请求触发器INTR、评比触发器MASK
  3. I/O接口的基本组成
    在这里插入图片描述

3. 接口类型

  1. 按数据传送方式分类:并行接口、串行接口
  2. 按功能选择的灵活性分类:可编程接口、不可编程接口
  3. 按通用性分类:通用接口、专用接口
  4. 按数据传送的控制方式分类:中断接口、DMA接口(程序查询方式不需要接口)

四、 程序查询方式

1. 程序查询方式的流程

单个设备

  1. 检查状态标记:测试指令
  2. 转备就绪?:转移(分支)指令
  3. 交换数据:传送(输入输出,访存)指令

多个设备

  1. 需要通过程序查询和CPU、内存进行数据交换
  2. 优先级越高的设备被查询到的时间最早
    在这里插入图片描述

程序流程

  1. 首先需要保存寄存器内容
  2. 设置计数值(阈值n或-n),控制传输的数据量
  3. 设置主存缓冲区首址
  4. 启动外设
  5. 准备好?(否,原地踏步)
  6. 传送一个数据
  7. 修改主存地址
  8. 修改计数值
  9. 传送完?(否,返回4)
    10.结束I/O传送
    在这里插入图片描述

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

在这里插入图片描述

五、 程序中断方式

1. 中断的概念

定义:CPU在执行程序的过程中,若发生意外事件(或特殊事件),CPU需要中断当前程序的处理,转而处理该异常事件,通过执行中断服务程序的方式处理,处理结束后返回原程序继续执行的过程。

2. I/O中断的产生

  • 中断源:引起中断的原因,或者能够发出中断请求信号的来源。
  • CPU与外设部分并行工作

3. 程序中断方式的接口电路

配置中断请求触发器和中断屏蔽触发器

在这里插入图片描述

排队器

  1. 硬件:链式排队器(在CPU内或在接口电路中)
    在这里插入图片描述
  2. 软件(第8章)

中断向量地址形成部件

· 中断号:被中断的编号
· 中断向量:中断服务程序的入口地址,程序状态字
在这里插入图片描述

程序中断方式接口电路的基本组成

在这里插入图片描述

4. I/O中断处理过程

  1. CPU响应中断的条件
    · 允许中断触发器ENIT=1
    · 用开中断指令将ENIT置为1
    · 用关中断指令将ENIT置为0或硬件自动复位
  2. CPU响应中断的时间
    · 当D=1(随机)且MASK=0时
    · 在每条指令执行阶段的结束前,CPU发中断请求(将ENIT置为1)

5. 中断服务程序流程

  1. 中断服务程序的流程
    ① 保护现场
    - 程序断点的保护:中断隐指令(硬件)完成
    - 寄存器内容的保护:进栈指令
    ② 中断服务:对不同的I/O设备具有不同的设备服务
    ③ 恢复现场:出栈指令/内存单元的指定位置/寄存器
    ④ 中断返回
  2. 单重中断和多重中断
    · 单重中断:不允许中断现行的中断服务程序
    · 多重中断:允许级别更高的中断源,中断现行的中断服务程序(中断的嵌套)
  3. 单重中断和多重中断的服务程序流程
    在这里插入图片描述
  4. 主程序和服务程序抢占CPU示意图
    在这里插入图片描述

六、 DMA(直接存储器访问)方式

1. DMA方式的特点

DMA和程序中断两种方式的数据通路

在这里插入图片描述

DMA与主存交换数据的三种方式

  1. 停止CPU访问主存
    · 控制简单,适合大量数据传输
    · CPU处于不工作状态,DMA工作时仍然占用主存
    · 未充分发挥CPU对主存的利用率
    在这里插入图片描述

  2. 周期挪用(周期窃取)
    · 利用CPU不访问存储器的一个或几个周期来实现DMA操作,此时DMA可以使用总线而不用通知CPU也不会妨碍CPU的工作。
    · DMA访存可能:CPU不访存,CPU正在访存(DMA等待),CPU与DMA同时请求访存(CPU将总线控制权让给DMA)
    在这里插入图片描述

  3. DMA与CPU交替访问
    · 实用性弱,结构简单
    · CPU工作周期(C1专供DMA访问,C2专供CPU访问)
    · 不需要申请建立和归还总线的使用权

2. DMA接口的功能和组成

  1. DMA接口功能
    · 向CPU申请DMA传送
    · 处理总线控制权的转交
    · 管理系统总线、控制数据传送(方向等)
    · 确定数据传送的首地址和长度,修正传送过程中的数据地址和长度(确定数据块传送是否结束)
    · DMA传送结束时,给出操作完成信号
  2. DMA接口组成
    · AR:地址寄存器
    · WC:字数计数器(传输数据量计数)
    · BR:数据暂存区
    · DAR:设备地址寄存器(设备电路选择,保存柱面号、磁道号、扇区号)
    · DREQ:设备请求,DACK:
    在这里插入图片描述

3. DMA的工作过程

DMA传送过程:预处理、数据传送、后处理

  1. 预处理(通过几条输入输出指令预置如下信息)
    · 通知DMA控制逻辑传送方向
    · 设备地址→DMA的DAR
    · 主存地址→DMA的AR
    · 传送字数→DMA的WC
  2. DMA传送过程示意
    在这里插入图片描述
    3.数据传送过程
    · 输入:设备→BR
    · 输出:BR→设备
    在这里插入图片描述
  3. 后处理(由中断服务程序完成)
    · 校验送入主存的数是否正确
    · 是否继续用DMA
    · 测试传送过程是否正确,错则转诊断程序

DMA接口与系统的连接方式

  1. 具有公共请求线的DMA请求
    在这里插入图片描述
  2. 独立的DMA请求
    在这里插入图片描述
  3. DMA方式与中断方式比较
    在这里插入图片描述

4. DMA接口的类型

  1. 选择线:在物理上连接多个设备;在逻辑上只允许连接一个设备。
    在这里插入图片描述
  2. 多路型:在物理上连接多个设备;在逻辑上允许连接多个设备;但数据传输时只有一个设备与内存进行数据传输。
  3. 多路型DMA接口工作原理
    在这里插入图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

啊有礼貌

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值