尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

计算机组成原理(24) 第六章 - 输入输出系统和IO控制方式

计算机组成原理(24) 第六章 - 输入输出系统和IO控制方式
📅 发布时间:2026/7/22 9:34:01

输入输出(I/O)系统是计算机系统中连接主机与外部设备的核心子系统,负责完成 CPU、内存与外设之间的数据传输、指令交互和状态反馈。而I/O 控制方式是指 CPU 管理外设数据传输的具体机制,直接决定系统的资源利用率和响应效率。

一、 现代计算机的结构

二、 输入输出(I/O)系统的组成

I/O 系统是一个分层架构的硬件 - 软件复合体,涵盖硬件设备、接口、控制逻辑和软件驱动四个核心部分:

组成层级核心组件功能描述
外设层输入设备(键盘、鼠标、传感器)、输出设备(显示器、打印机)、存储设备(硬盘、U 盘)数据的产生源或接收端,是 I/O 系统的最终交互对象
接口层I/O 接口(如 USB 控制器、SATA 控制器、GPIO 接口)解决主机与外设的信号匹配、数据缓冲、时序协调问题,是外设与总线的桥梁
总线层系统总线(PCIe、内存总线)、通信总线(USB、I2C)传输数据、地址和控制信号,连接 CPU、内存与 I/O 接口
软件层I/O 驱动程序、BIOS/UEFI、操作系统 I/O 管理模块提供外设的编程接口,屏蔽硬件差异,实现 CPU 对设备的逻辑控制

I/O 接口的核心作用

I/O 接口是 I/O 系统的关键,主要解决三个核心问题:

  1. 信号转换:将外设的模拟信号(如麦克风)转换为数字信号,或将主机的数字信号转换为外设的驱动信号(如电机控制);
  2. 数据缓冲:通过缓冲寄存器暂存数据,解决主机与外设的速度差异(如 CPU 速度 GHz 级,打印机速度毫秒级);
  3. 设备寻址:提供设备地址或片选信号,使 CPU 能精准定位目标外设(如 I2C 设备的 7 位地址)。

三、 主流 I/O 控制方式

I/O 控制方式的演进核心是减少 CPU 对 I/O 传输的干预,提升 CPU 的资源利用率。从早期的 “CPU 全程参与” 到现代的 “CPU 仅负责初始化”,共经历了 4 种核心控制方式,性能依次提升。

1. 程序查询方式(Programmed I/O, PIO)

核心原理

CPU 通过主动轮询的方式管理外设:CPU 执行 I/O 指令,不断查询外设的状态寄存器,直到外设准备好数据,再进行读写操作。

  • 核心流程:
    1. CPU 向外设发送启动命令;
    2. CPU 循环读取外设的状态位(如 “忙 / 就绪” 标志);
    3. 若外设就绪 → CPU 执行数据读写指令,传输一个数据;
    4. 若外设未就绪 → CPU 继续循环查询,直到就绪。
优缺点
优点缺点
硬件逻辑最简单,无需额外控制电路CPU 利用率极低(90% 以上时间用于循环查询,无法执行其他任务)
软件编程简单,无需中断处理逻辑传输效率低,仅适用于低速外设
实时性差(低速外设会长期占用 CPU)
适用场景
  • 低速外设(如键盘、打印机)、简单嵌入式系统(如 51 单片机控制 LED 灯)。

2. 程序中断方式(Interrupt-Driven I/O)

核心原理

外设主动向 CPU 发送中断请求,触发 CPU 暂停当前任务,转而执行中断服务程序(ISR)完成数据传输,传输完成后 CPU 恢复原任务。

  • 核心流程:
    1. CPU 向外设发送启动命令后,继续执行主程序;
    2. 外设准备好数据后,向 CPU 发送中断请求信号(INTR);
    3. CPU 执行完当前指令后,响应中断,保存现场(寄存器值);
    4. CPU 跳转到中断服务程序,完成一次数据读写;
    5. 中断服务程序执行完毕,恢复现场,CPU 继续执行主程序。
关键概念
  • 中断优先级:多个中断同时发生时,CPU 优先响应高优先级中断(如 DMA 中断 > 外设中断 > 时钟中断);
  • 中断屏蔽:CPU 通过中断屏蔽寄存器暂时屏蔽某类中断,避免干扰关键任务;
  • 向量中断:外设通过中断向量号直接告诉 CPU 中断服务程序的入口地址,无需 CPU 逐个查询设备。
优缺点
优点缺点
CPU 利用率大幅提升(无需主动轮询)每次中断需保存 / 恢复现场,存在中断开销;单次传输仅一个数据,高频中断仍会占用 CPU
实时性好(外设就绪后立即触发中断)不适用于高速、大批量数据传输(如硬盘读写)
适用场景
  • 中低速外设(如串口、鼠标、键盘)、需要实时响应的场景(如工业控制的传感器信号采集)。

3. 直接内存访问方式(Direct Memory Access, DMA)

核心原理

由DMA 控制器直接接管总线,在内存与外设之间直接传输数据,全程无需 CPU 参与,仅在传输开始和结束时通知 CPU。

  • 核心组件:

    • DMA 控制器:独立于 CPU 的硬件模块,具备总线控制权、地址寄存器、数据计数器;
    • 地址寄存器:存储内存的起始地址;
    • 数据计数器:存储待传输的数据块长度。
  • 核心流程:

    1. CPU 初始化 DMA 控制器:设置内存起始地址、数据长度、传输方向(读 / 写);
    2. CPU 发送启动命令后,继续执行主程序;
    3. DMA 控制器向仲裁器发送总线请求(BR),获得总线授权(BG)后接管总线;
    4. DMA 控制器直接控制外设与内存的数据传输,每传输一个数据,地址寄存器自增、计数器自减;
    5. 数据传输完成后,DMA 控制器向 CPU 发送DMA 中断,CPU 处理传输完成后的收尾工作(如数据校验)。
关键特性
  • 总线控制权转移:DMA 传输时,CPU 放弃总线使用权,传输完成后重新获得;
  • 块传输能力:支持一次性传输大批量数据,无需 CPU 逐字节干预;
  • 多种传输模式:
    • 单字节模式:每次传输 1 字节,释放总线,CPU 可插空执行;
    • 块传输模式:一次性传输整个数据块,期间独占总线;
    • 周期挪用模式:DMA 挪用 CPU 的空闲时钟周期传输数据,不影响 CPU 正常工作。
优缺点
优点缺点
CPU 利用率极高(仅初始化和收尾时参与)硬件复杂度提升(需 DMA 控制器);总线控制权转移存在总线切换开销
传输效率高,适合大批量、高速数据传输不支持复杂的数据处理(仅负责数据搬运)
适用场景
  • 高速外设(如硬盘、固态硬盘、显卡、网卡)、大批量数据传输(如视频流、文件读写)。

4. 通道控制方式(Channel I/O)

核心原理

通道是一个专用的 I/O 处理机,具备独立的指令集(通道指令),能自主执行 I/O 程序,管理多台外设的并行数据传输,进一步降低 CPU 的干预程度。

  • 核心组件:

    • 通道控制器:执行通道指令,管理外设与内存的数据传输;
    • 通道指令集:包含数据传输、设备控制、分支跳转等指令,专门用于 I/O 操作;
    • 通道程序:由通道指令组成,存储在内存中,描述 I/O 传输的具体流程。
  • 核心流程:

    1. CPU 向通道发送通道命令,指定通道程序的内存地址和目标外设;
    2. CPU 继续执行主程序,通道从内存读取通道程序并执行;
    3. 通道自主管理多台外设的并行传输(如同时读取硬盘和网卡数据);
    4. 所有 I/O 任务完成后,通道向 CPU 发送通道中断,CPU 进行结果处理。
通道类型
通道类型功能描述适用场景
字节多路通道分时管理多台低速外设,轮流为每个设备传输 1 字节数据终端、打印机等低速外设集群
数组多路通道为高速外设传输数据块,传输完一个数据块后切换到另一台设备硬盘、磁带机等高速外设集群
选择通道独占总线,全程为一台高速外设传输数据,传输完成后再切换设备高优先级的高速外设(如大型机的磁盘阵列)
优缺点
优点缺点
CPU 利用率达到最高(仅下达指令,无需参与任何传输细节)硬件复杂度极高(通道本质是小型处理机);成本高,仅适用于大型系统
支持多外设并行传输,提升系统整体 I/O 效率通道指令集功能有限,无法替代 CPU 的通用计算
适用场景
  • 大型计算机、服务器、数据中心(需管理数百台外设的并行 I/O 操作)。

四、四种 I/O 控制方式的性能对比

对比维度程序查询程序中断DMA 方式通道控制
CPU 干预程度全程干预(轮询)部分干预(中断响应)极少干预(初始化 + 收尾)无干预(仅下达指令)
CPU 利用率极低(<10%)中等(50%~80%)极高(>90%)最高(≈100%)
传输效率极低中等极高最高
硬件复杂度最低(无额外硬件)低(中断控制器)中(DMA 控制器)最高(通道处理机)
适用外设低速外设中低速外设高速外设高速外设集群
典型应用51 单片机控制 LED键盘、串口通信硬盘读写、网卡数据传输大型机、数据中心存储阵列

五、IO 系统的基本组成

相关新闻

  • 还在手动测兼容性?,用Open-AutoGLM脚本实现全自动识别与报告生成
  • 边缘计算场景下的软件测试新挑战与应对路径
  • Excalidraw医疗信息系统集成图绘制案例

最新新闻

  • 安阳本地老牌收金店,鑫清黄金珠宝,回收婚嫁三金与老黄金 - 清奢黄金上门回收
  • AI智能知识百科:通俗读懂人工智能
  • 昇腾NPU大模型推理优化:DeepSeek-V3.2-Exp性能突破
  • day2作业笔记
  • OpenClaw AI框架安装指南与性能优化技巧
  • 计算机网络:自顶向下方法 学习笔记

日新闻

  • AI云原生实战05-金融AI上云最难的不是技术,是“不出事“——TCE银行风控架构拆解
  • 2026年GEOSEO优化公司选型深度测评:五大硬核标准严选,这六家重塑搜索增长新格局 - 品牌前沿专家
  • **核验!2026年7月卡地亚香港**售后网点地址及服务电话公告 - 卡地亚服务中心

周新闻

  • SaaS软件行业GEO实践:AI搜索时代的品牌可见性与获客新路径
  • 什么是PCTFE?医药高端包装的“防潮王牌“材料
  • 【JVM调优实战】16-可视化利器-JConsole-VisualVM-JMC

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号