--- tags: - 计算机系统结构 - 复习 - 总线 - IO系统 create time: 2026-06-15 10:00 --- # 总线与 I/O 系统 ## 概述 本文档讲解总线的基本概念、分离事务总线的工作原理,以及 I/O 系统的性能评价指标。总线是连接处理器、存储器和 I/O 设备的通信通道,其设计直接影响系统整体性能。 > [!tip] 考试重点 > 分离事务总线的概念和别称常以选择题出现。I/O 系统性能评价指标需理解各维度的含义。 ## 正文 ### 一、总线基础 **总线**(Bus)是计算机系统中多个功能部件之间共享的通信通道,由一组导线和相关的控制逻辑组成。 #### 1.1 总线分类 | 分类方式 | 类型 | 说明 | |----------|------|------| | 按用途 | 数据总线、地址总线、控制总线 | 分别传输数据、地址、控制信号 | | 按层次 | 系统总线、I/O 总线 | 系统总线连接 CPU 和主存,I/O 总线连接外设 | | 按控制 | 同步总线、异步总线 | 同步靠时钟,异步靠握手信号 | #### 1.2 总线性能指标 - **总线带宽**:单位时间内传输的数据量(MB/s) - **总线宽度**:数据线的位数(如 64 位) - **总线频率**:总线时钟频率(如 800 MHz) ### 二、分离事务总线 **核心思想**:将一个总线事务分成**请求**和**响应**两个阶段,在请求和响应之间的空闲时间内,总线可以供给其他 I/O 设备使用。 ```mermaid sequenceDiagram participant C as CPU participant B as Bus participant M as Memory C->>B: 请求阶段(发送地址+命令) B->>M: 内存准备数据 Note over B: 总线空闲,可服务其他请求 M->>B: 响应阶段(返回数据) B->>C: 数据到达 ``` **别称**: | 名称 | 说明 | |------|------| | 流水总线 | 因为请求和响应可以流水化 | | 分离协议总线 | 因为协议将事务分离 | | **交叉互连总线** | **不是**分离事务总线的别称,是另一种总线拓扑 | | **独占总线** | **不是**分离事务总线的别称 | > [!note] 分离事务总线的优势 > 传统总线在一个事务完成前一直被占用,分离事务总线在等待内存响应时释放总线,允许多个设备并发使用,显著提高总线利用率。 ### 三、I/O 系统性能 #### 3.1 性能评价维度 | 维度 | 含义 | 衡量指标 | |------|------|----------| | **连接特性** | 设备连接能力和带宽 | 设备数量、通道数 | | **容量** | 存储空间大小 | TB、PB | | **响应时间** | 从请求到完成的延迟 | ms、μs | | **吞吐率** | 单位时间处理的 I/O 量 | IOPS、MB/s | > [!question] I/O 系统性能为什么重要? > 随着处理器速度远超 I/O 设备速度,I/O 瓶颈日益突出。一个 I/O 操作可能耗时数毫秒,而 CPU 一个时钟周期仅数纳秒,巨大的速度差使得 I/O 系统可能成为整个系统的瓶颈。 #### 3.2 I/O 系统的瓶颈问题 ``` CPU 速度: ~GHz (纳秒级) 内存速度: ~100ns 磁盘速度: ~10ms (毫秒级) ``` 速度差距达到 **5~6 个数量级**,因此: - I/O 系统的性能对 CPU 利用率影响巨大 - I/O 和 CPU 的性能不匹配时,I/O 系统成为瓶颈 - 需要通过缓存、缓冲、异步 I/O 等技术缓解 ### 四、DMA 与中断 | 方式 | 原理 | CPU 参与度 | 适用场景 | |------|------|:----------:|----------| | 程序查询 | CPU 轮询 I/O 状态 | 高 | 简单系统 | | 中断 | I/O 完成后通知 CPU | 中 | 低速设备 | | **DMA** | 直接内存访问,不经过 CPU | 低 | 高速设备 | DMA 的工作流程: 1. CPU 设置 DMA 传输参数(源地址、目的地址、传输长度) 2. DMA 控制器接管总线,直接在设备和内存间传输数据 3. 传输完成后,DMA 控制器向 CPU 发中断通知 ## 关联笔记 - [[计算机系统结构/复习文档/计算机系统结构基础与定量原理]] - [[计算机系统结构/复习文档/存储系统与Cache]] - [[计算机系统结构/index|试题册索引]]