输入/输出及其控制 - 软考备战(五)

计算机体系结构及其组成(三)

参考资料:

(7)输入和输出设备:计算机与外界的互动桥梁 - 知乎

计算机组成原理------I/O接口以及I/O设备数据传送控制方式 - 王陸 - 博客园

何谓脱机IO和联机IO?__牛客网


目录

计算机体系结构及其组成(三)

[3.1 输入/输出设备](#3.1 输入/输出设备)

[1. 输入设备的概念与角色](#1. 输入设备的概念与角色)

常见输入设备分类

输入设备的关键过程

信息采集

信号转换

编码与传输

[2. 输出设备](#2. 输出设备)

常见输出设备分类

输出设备的关键过程

接收数据

解码与转换

呈现/记录

[3. 既是输入又是输出的设备(兼设备)](#3. 既是输入又是输出的设备(兼设备))

[3.2 输入输出系统(I/O 系统)](#3.2 输入输出系统(I/O 系统))

[1. 定义与组成](#1. 定义与组成)

[2. 输入输出系统的三大特点](#2. 输入输出系统的三大特点)

[3. CPU 与外设交换数据的基本过程](#3. CPU 与外设交换数据的基本过程)

[3.3 I/O 控制方式对比](#3.3 I/O 控制方式对比)

[四种 I/O 控制方式对比](#四种 I/O 控制方式对比)

[1. 程序查询方式](#1. 程序查询方式)

[2. 程序中断方式](#2. 程序中断方式)

[3. DMA方式(直接存储器访问)](#3. DMA方式(直接存储器访问))

[4. 信道方式](#4. 信道方式)

[3.4 I/O 接口与编址方式对比](#3.4 I/O 接口与编址方式对比)

[1. I/O 接口](#1. I/O 接口)

基本结构

基本功能

数据寄存器

状态寄存器

控制寄存器

端口地址译码与控制逻辑

[2. 外设编址方式对比](#2. 外设编址方式对比)

[3.5 常见输入/输出接口标准](#3.5 常见输入/输出接口标准)

[3.6 联机、脱机和假脱机](#3.6 联机、脱机和假脱机)


3.1 输入/输出设备

1. 输入设备的概念与角色

将外部世界的信息(文字、图像、声音、物理量等)转换为计算机能识别的二进制数字信号,让计算机"感知"外界信息。

常见输入设备分类

|-------------------------|-------------------|------------------------------------|
| 类别 | 典型设备 | 主要功能与特点 |
| 字符输入设备 | 键盘 | 最常用的文字与指令输入工具;通过扫描矩阵检测按键,产生键码送给主机。 |
| 图形 / 图像输入设备 | 鼠标、扫描仪、数码相机、摄像头 | 鼠标用于定位与选择;扫描仪/摄像头将图像/视频转为数字图像信号。 |
| 语音 / 模拟输入设备 | 麦克风、语音识别系统、各种传感器 | 将声音、温度、压力等模拟信号转换为数字信号,需A/D转换。 |
| 其他输入设备 | 光笔、手写输入板、游戏杆、体感设备 | 用于特定交互场景(如手写、游戏、VR/AR等)。 |

输入设备的关键过程
信息采集

按键、图像、声音、温度等被设备感知。

信号转换

将物理/光学/声学信号转换为电信号。

编码与传输

由设备内部控制器转换为二进制编码,通过接口(USB、PS/2等)送给主机。

2. 输出设备

将计算机处理后的结果(数字、文字、图形、图像、声音等)转换为人或其他机器能识别的形式输出。

常见输出设备分类

|--------------------------|------------------------|---------------------------------|
| 类别 | 典型设备 | 主要功能与特点 |
| 显示输出设备 | 显示器(LCD、LED、OLED)、投影仪 | 将数字信号转换为光信号,显示文字、图形、图像;是必备输出设备。 |
| 打印 / 绘图输出设备 | 打印机(喷墨、激光)、绘图仪 | 将信息以纸质/图纸形式硬拷贝输出。 |
| 语音 / 影像输出设备 | 音箱、耳机、音响系统、语音合成设备 | 将数字音频信号转换为声音信号。 |
| 磁记录 / 存储输出设备 | 磁盘、磁带、光盘等(既是外存也是I/O设备) | 将数据长期保存,也可视为输出/输入设备 |

输出设备的关键过程
接收数据

从主机接收数字化的结果数据。

解码与转换

按设备需求进行解码、D/A转换、格式变换等。

呈现/记录

在屏幕上显示、在纸上打印、在磁介质上记录等。

3. 既是输入又是输出的设备(兼设备)

很多设备并不是"纯输入"或"纯输出",而是兼具两种功能:

|-----------------------------|-----------|-----------------|----------------------|
| 设备 | 输入功能 | 输出功能 | 说明 |
| 硬盘 /SSD | 读入数据到主机 | 将主机数据写入盘片 | 典型兼设备,属于外存,也是I/O设备。 |
| 光盘( CD/DVD/BD | 将盘上数据读入主机 | 将主机数据刻录到光盘(可写盘) | 可读可写型号兼具输入/输出。 |
| U / 移动硬盘 | 从主机读取数据 | 向主机写入数据 | 通过USB接口实现双向数据传输。 |
| 带触摸功能的显示器 | 触摸输入 | 显示输出 | 同时具备输入(触摸)和输出(显示)功能。 |
| 网络通信设备(网卡) | 接收网络数据 | 发送网络数据 | 实现主机与网络的双向通信。 |

在许多教材中,外存(磁盘、磁带、光盘、闪存)既被视为存储器,也被视为I/O设备,因此"输入输出设备"与"外围设备"常混用。

3.2 输入输出系统(I/O 系统)

1. 定义与组成

定义

计算机系统中主机与外部进行通信的系统,包括外围设备和输入输出控制系统两部分。

组成
外围设备

输入设备、输出设备、外存设备等。

输入输出控制系统

I/O接口、I/O控制器、总线、相关软件等,负责在CPU/主存与外设之间协调数据传送。

2. 输入输出系统的三大特点

|-----------|--------------------------------------------|--------------------------------------|
| 特点 | 含义 | 对系统设计的影响 |
| 异步性 | 各外设不使用统一中央时钟,按自己时序工作,但要在某些时刻接受CPU控制。 | 需要"自治控制"和应答式同步机制。 |
| 实时性 | 对不同速度和类型的外设,CPU必须在规定时间内提供I/O服务,否则可能丢数据或出错。 | 采用分层结构、优先级机制、中断与DMA等方式。 |
| 设备无关性 | CPU通过统一的标准接口管理各类外设,无需关心设备内部细节。 | 采用统一接口规范(如串口、并口、USB、SCSI等),实现"即插即用"。 |

3. CPU 与外设交换数据的基本过程

输入过程

CPU 在地址总线上给出外设端口地址,选择某输入设备。

等待输入设备数据"就绪"。

从数据总线读入数据到CPU寄存器。

输出过程

CPU 在地址总线上给出外设端口地址,选择某输出设备。

将数据放到数据总线上。

输出设备确认数据有效,将数据取走。

3.3 I/O 控制方式对比

CPU 如何控制外设与主机之间的数据传送(异步)。

常见方式:

程序查询、程序中断、DMA、通道/IOP。

四种 I/O 控制方式对比

|------------------------|-------------------------------------------------------|----------------|--------------------------------|--------------------|---------------------|-------------------------|
| 控制方式 | 基本思想 | 数据传送依靠 | CPU 与外设并行性 | 适用设备类型 | 主要优点 | 主要缺点 |
| 程序查询方式 | CPU不断查询外设状态,直到"就绪"才进行一次数据传送。 | 软件(CPU执行查询程序) | CPU与外设串行工作,传送与主程序串行。 | 低速、简单设备(开关、简单显示) | 硬件简单、成本低。 | CPU效率极低,大量时间花在"等待"上。 |
| 程序中断方式 | 外设准备好后主动向CPU发中断请求;CPU响应后执行中断服务程序完成数据传送。 | 软件(中断服务程序) | CPU与外设并行 工作,但传送与主程序串行。 | 中低速设备(键盘、鼠标、串口) | CPU利用率明显提高,能处理突发事件。 | 每次中断需保护/恢复现场,频繁中断时开销大。 |
| DMA 方式 | 在DMA控制器控制下,数据在内存与外设间直接成块传送,无需CPU干预。 | 硬件(DMA控制器) | CPU与外设并行传送与主程序也并行。 | 高速块设备(磁盘、网卡、高速A/D) | 数据传送速度高,CPU占用极少。 | 硬件复杂,成本高;需要DMA控制器和总线仲裁。 |
| 通道 /IOP 方式 | 通道是一个具有独立执行I/O指令能力的I/O处理器;CPU只需发I/O命令,由通道执行通道程序完成I/O。 | 硬件+通道程序(IOP执行) | CPU与I/O系统高度并行。 | 大中型机中的大量高速外设 | CPU与I/O彻底分离,系统效率最高。 | 结构最复杂,成本最高,多用于大中型机。 |

|-----------------|---------------|----------------|--------------------------|
| 维度 | 程序查询 | 程序中断 | DMA |
| CPU 主动性 | CPU主动轮询外设状态 | CPU被动等待中断请求 | CPU被动接受DMA请求,仅在初始化和结束参与。 |
| 数据传送基本单位 | 字/字节 | 字/字节 | 数据块 |
| CPU 利用率 | 最低(大部分时间在等待) | 较高(等待时可执行其他任务) | 最高(传送期间CPU可做其他事) |
| 接口硬件复杂度 | 最简单 | 较复杂(需要中断逻辑) | 最复杂(需要DMA控制器) |
| 适合场景 | 简单控制、单片机、低速设备 | 中低速、随机设备 | 高速、批量数据传送 |

1. 程序查询方式

CPU不断读取状态寄存器,查询外设是否"就绪"。

特点:

效率极低,CPU与外设串行工作,"踏步等待",仅适合简单、低速设备。

2. 程序中断方式

CPU发出命令后继续执行程序,外设准备好后主动向CPU发信号(中断请求),CPU响应后暂停当前程序,转去处理中断服务程序。

中断处理过程:

  1. 中断请求:外设发信号。
  2. 中断判优:如果有多个请求,决定响应优先级最高的。
  3. 中断响应:CPU完成当前指令周期,保存断点(PC)和状态(PSW),关中断。
  4. 中断服务:执行中断服务程序(保护现场、数据传送、恢复现场)。
  5. 中断返回:返回原程序断点处继续执行。

优点:

CPU与外设并行工作,效率高于查询方式。

3. DMA方式(直接存储器访问)

硬件(DMAC)控制数据在内存和外设间直接传送,无需CPU干预。

(DMAC控制器具有总线请求、地址修改、计数等功能)

DMA传送过程的总线占有方式
停止CPU访存

DMA期间CPU交出总线控制权,效率高但影响CPU工作。

周期挪用(窃取)

DMA利用CPU不使用存储器的周期进行传送,是常用的折中方案。

交替访存

CPU和DMA分时使用总线,效率最高,硬件复杂。

DMA vs 中断
数据传送者

DMA由硬件(控制器)完成;中断由软件(中断服务程序)完成。

响应时间

DMA响应时间极短(微秒级);中断响应时间较长(需保护现场)。

适用场景

DMA适合高速、批量数据传送(如磁盘读写);中断适合低速、随机数据传送(如键盘)。

4. 信道方式

拥有独立执行I/O指令能力的I/O处理器(IOP)。

CPU只需发一条启动命令,信道即可独立管理整个I/O过程,进一步解放CPU。常用于大型机。

3.4 I/O 接口与编址方式对比

1. I/O 接口

基本结构
基本功能

典型 I/O 接口(外设控制器)一般包含:

数据寄存器

暂存CPU与外设之间传送的数据。

状态寄存器

向外设/CPU提供当前工作状态(忙/就绪/出错)。

控制寄存器

存放CPU发出的控制命令(启动/停止/读/写)。

端口地址译码与控制逻辑

识别CPU是否访问本接口,产生相应控制信号。

2. 外设编址方式对比

|-----------------------------|----------------------------|---------------------------|-----------------------------|-------------------|
| 编址方式 | 地址空间结构 | 指令特点 | 优缺点 | 典型架构 |
| 统一编址(存储器映射方式) | I/O端口占用内存地址空间的一部分,与主存统一编址。 | 无专用I/O指令,用普通访存指令访问I/O端口。 | 优点:指令丰富、寻址灵活;缺点:占用部分主存地址空间。 | ARM、MIPS、PowerPC等 |
| 独立编址( I/O 映射方式) | I/O端口与主存各自独立地址空间。 | 有专用I/O指令(如IN/OUT)访问I/O端口。 | 优点:不占主存空间,译码简单;缺点:指令功能有限。 | x86架构 |

3.5 常见输入/输出接口标准

|------------------------------|------------------------------------------------------------------------------------------------------|--------------------------------|
| 接口类型 | 特点与标准 | 适用场景 |
| 磁盘接口 | IDE (PATA) :并行传输,排线宽,抗干扰差,已淘汰。 SCSI:小型机系统接口,速度快,支持多任务,常用于服务器。 SATA:串行传输,速率高,抗干扰强,主流硬盘接口。 | 硬盘、光驱 |
| 串行接口 | 按位传输,距离远,抗干扰强。 RS-232:传统低速串口。 | 鼠标、Modem、工业控制 |
| 并行接口 | 多位同时传输,距离短,易干扰。 | 老式打印机、扫描仪 |
| PC Card 接口 | 便携式设备扩展卡接口(如无线上网卡)。 | 笔记本电脑(已逐渐被ExpressCard取代) |
| USB ( 通用串行总线 ) | 支持热插拔、即插即用、供电。版本:USB 1.1, 2.0, 3.0, 3.1/3.2, 4.0。 | 几乎所有外设(键鼠、U盘、移动硬盘) |
| IEEE 1394 ( 火线 ) | 高速串行接口,支持点对点传输,无需主机干预。 | 曾广泛用于数码摄像机、高端存储(现已被USB 3.0+取代) |

3.6 联机、脱机和假脱机

这是操作系统管理I/O设备的三种技术形态。

联机操作

外设直接在CPU控制下工作。

CPU处理数据的同时,外设处于等待或传输状态,效率受限于外设速度(如早期的键盘输入)。

脱机操作

外设不直接与主机连接,通过卫星机(预处理机)处理I/O,完成后将磁带/磁盘送入主机。

目的是减少主机等待慢速外设的时间,提高主机效率。

假脱机

用磁盘作为大容量缓冲区,模拟脱机输入/输出技术。

核心机制

  • 输入井/输出井:在磁盘上开辟的存储区域。
  • 预输入程序:将用户作业从慢速设备(如读卡机)读入磁盘输入井。
  • 缓输出程序:将输出数据写入磁盘输出井,待打印机空闲时再输出。

将独占设备(如打印机)改造为共享设备,提高了系统吞吐量。

解决了"高速CPU与低速I/O设备"的矛盾。

相关推荐
Whoami!7 小时前
⋐ 15-2 ⋑ 软考高项 | 第 20 章:高级项目管理 [ 下 ]
软考·高项·信息系统项目管理师·量化项目管理
猹叉叉(学习版)7 小时前
【系统分析师_知识点整理】 9.系统规划与分析
笔记·软考·系统分析师·系统规划
@insist1231 天前
数据库系统工程师-云计算与大数据核心知识
大数据·数据库·云计算·软考·数据库系统工程师·软件水平考试
猹叉叉(学习版)1 天前
【系统分析师_知识点整理】 8.项目管理
笔记·项目管理·软考·系统分析师
Alaso_shuang1 天前
全英文计算机科学速成班概况
计算机·计算机科学·计算机概论
小李的便利店2 天前
系统架构设计师-案例分析-软件架构设计
系统架构·软考·soa·架构风格
zlp19922 天前
软考(系统架构师)-大数据篇
系统架构·软考高级·软考·系统架构师
Whoami!2 天前
⋐ 14-2 ⋑ 软考高项 | 第 19 章:变更管理
软考·信息系统项目管理师·变更管理
Whoami!2 天前
⋐ 15-1 ⋑ 软考高项 | 第 20 章:高级项目管理 [ 上 ]
软考·信息系统项目管理师·项目集管理·项目组合管理