1.通信方式的分类和概念
1.1 按 "数据传输方式" 分类:串行通信 vs 并行通信
数据传输方式决定了 "多个数据位如何同时或分时传输",两者特点差异显著:
- 串行通信 :设备间通过少量数据信号线(一般 8 根以下) ,按 "数据位形式一位一位" 传输数据(类似 "单个车道的公路,同一时刻只能传 1 个数据位")。
- 并行通信 :使用8、16、32 或 64 根及更多数据线,同时传输多个数据位(类似 "多车道公路,可同时传多个数据位")。
| 特性 | 串行通信 | 并行通信 |
|---|---|---|
| 通讯距离 | 较远 | 较近 |
| 抗干扰能力 | 较强 | 较弱 |
| 传输速率 | 较慢 | 较高 |
| 成本 | 较低(节省线材、PCB 布线面积,尤其远距离) | 较高(需更多数据线) |
由于并行传输对 "多数据线的同步性" 要求极高,且通讯速率提升后,信号干扰问题会显著恶化性能。因此, 高速率场景越来越多采用"高速串 行差分传输" (用串行方式实现近似并行的高带宽)。
1.2 按 "数据同步方式" 分类:同步通讯 vs 异步通讯
同步方式决定了 "收发双方如何保持数据时序一致",核心区别是是否依赖"时钟信号" 同步:
- 同步通讯 :收发双方用一根时钟信号线 做同步参考,在时钟信号的 "上升沿 / 下降沿" 驱动下,协调同步传输数据(数据信号里"绝大部分是有效数据")。
- 异步通讯 :不使用独立时钟信号,而是在数据信号中穿插同步用的标识位(如 "起始位、校验位、停止位"),或把数据 "打包成帧" 传输;部分场景需双方约定 "传输速率" 辅助同步。
| 维度 | 同步通讯 | 异步通讯 |
|---|---|---|
| 时钟依赖 | 依赖独立时钟信号线 | 不依赖独立时钟,靠数据内标识位 / 帧结构同步 |
| 有效数据占比 | 高(数据信号几乎都是有效内容) | 低(数据中含起始位、校验位、停止位等额外标识) |
| 时钟误差容忍度 | 低(双方时钟必须严格同步,误差稍大就会丢数据) | 高(无需严格时钟同步,靠标识位容错) |
| 效率 | 高(有效数据占比高) | 低(额外标识位占用传输资源) |
1.3 按 "传输方向与时间关系" 分类:单工、半双工、全双工通讯
该维度聚焦 "数据在信道中的传输方向(单向 / 双向)" 和 "时间上是否可同时收发"。
| 通讯方式 | 具体说明 |
|---|---|
| 全双工 | 同一时刻,收发双方可同时发送和接收数据(如手机通话:你说话时能听到对方,对方说话时你也能回应) |
| 半双工 | 收发双方能双向传输,但同一时间只能 "发" 或 "收"(如对讲机:按下讲话键才能发,松开才能听) |
| 单工 | 数据永远只能从 "固定发送方" 传到 "固定接收方",反向无法传输(如电视广播:电视台发信号,电视只能收) |
1.4 通讯速率核心概念:比特率、波特率、码元
"速率" 衡量通信的 "传输效率",需明确三个关键术语的区别与联系:
- 比特率 :每秒钟传输的二进制位数,单位是 "比特每秒(bit/s)"。
- 波特率 :每秒钟传输的码元个数("码元" 是数字通信中 "承载信息的基本信号单元")。
- 码元 :用 "时间间隔相同的符号" 表示二进制数字,这个 "时间间隔内的信号" 就是码元。若码元的 "离散状态数">2(如 M 进制),则为 M 进制码元。
- 二进制码元 :若用 "0V 表示 0,5V 表示 1",一个码元只能表示 "0 或 1" 两种状态(对应 1 个二进制比特位)。此时,波特率 = 比特率(因为 1 个码元承载 1 个比特)。
- 多进制码元 :若用 "0V 表示 00、2V 表示 01、4V 表示 10、6V 表示 11",一个码元能表示 "00、01、10、11" 四种状态(对应 2 个二进制比特位)。此时,波特率 = 比特率 ÷ 2(因为 1 个码元承载 2 个比特)。
- 波特率与比特率的关系:波特率=比特率/每符号含的比特数。
2.接口、总线、协议的定义与关系
通信系统的核心是 "硬件连接 " 与 "软件规则 " 的结合,通信接口 (硬件连接标准)、通信总线 (多部件互联通路)、通信协议 (数据传输规则)是三大关键要素,三者定义与关系如下:
通信接口: 是输入 / 输出的硬件连接标准 ,"实现通信功能的硬件接口" 即为通信接口。根据 "数据传输方式",通信分为串行通信 (按位依次传输)和并行通信(多位同时传输),因此通信接口也对应两类:
- 串行接口(串口): 支持串行通信的硬件接口(如
RS-232的DB9接口)。 - 并行接口(并口):支持并行通信的硬件接口(如早期打印机的并行端口)。
通信总线:是一组传输通道的集合,由 "数据线、地址线、控制线" 等构成,是逻辑器件(如芯片、模块)之间传输数据的 "通路"。从广义看,计算机通信按 "传输特点" 分为串行、并行通信,对应总线也分为:
-
串行总线:如 I2C、SPI、UART(串口总线)等,按位传输数据。
-
并行总线:如早期 PCI 总线,多位数据同时传输。
此外,总线还可从其他维度分类(更细致的场景划分):
| 分类维度 | 子类别 | 说明 |
|---|---|---|
| 功能划分 | 内部总线、系统总线、I/O 总线 | 内部总线:芯片内部模块间互联;系统总线:连接 CPU、内存、外设;I/O 总线:外设与系统交互 |
| 时序控制方式 | 同步总线、异步总线 | 同步总线:靠统一时钟信号实现数据同步;异步总线:靠握手信号(非时钟)同步 |
| 数据传输格式 | 串行总线、并行总线 | 与 "通信接口" 逻辑一致,分别按位传输或多位同时传输 |
通信协议 是传输数据的规则集合 ,是 "总体协作框架"------ 定义接口设备、器件、电信号、总线、传输通道之间的交互关系,确保所有组件能配合完成 "信号传输与数据交互"。
三者关系总结如下:
- 接口: 强调 "两个部件之间的硬件连接",聚焦 "信号形式、数据格式的转换"(比如 "如何物理连接两个设备")。
- 总线: 更注重 "多个部件的互联扩展",强调 "可扩展性、灵活性、行业规范化"(很多总线有统一标准,如 USB、PCIe)。
- 协议: 是 "跑在硬件(接口、总线)之上的软件规则",规定 "接口怎么用、总线怎么传数据"。
需要注意的是,接口与总线有时不严格区分(常合称 "总线接口" 或 "接口总线");通信总线与通信协议必须匹配才能通信(如 USB 总线需遵循 USB 协议)。