Files
final-exam/计算机系统结构/复习文档/总线与I_O系统.md
T

114 lines
4.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
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|试题册索引]]