
1. 总线1.1 总线的定义总线Bus是连接计算机系统各部件CPU、主存、I/O 接口等的一组公共信息传输线是多个部件之间共享的信息传输介质。两个核心特征共享性总线为多个部件所共用任何两个部件之间的信息交换都必须通过总线完成分时性同一时刻总线上只允许一个部件向总线发送信息否则会发生冲突因此需要仲裁机制总线把CPU、存储器、I/O 设备挂 在同一条公共通路上通过分时共享实现各部件间的信息交换。1.2 总线标准总线标准总线规范是统一规定的总线物理连接方式、电气性能、信号功能与工作时序的正式文件其作用在于让不同厂家生产的部件CPU、内存、接口卡能 即插即用、互换兼容。一套完整的总线标准通常从以下四方面特性进行规定图1 总线标准的特性1.2.1 机械特性定义规定总线的物理连接方式即总线的形状、尺寸、引脚排列与连接器的机械规格。包含的具体内容规定项说明总线根数构成该总线的传输线数量数据线、地址线、控制线各多少根插头 / 插座形状与尺寸连接器的几何外形、体积、定位方式引脚排列每个引脚的位置编号、间距、顺序插接方式板卡的插接方向、固定方式、防呆设计物理特性保证了不同厂商生产的接口卡 / 设备在机械上可以互换插接。例如 PCI/PCIe 插槽的长度、引脚间距USB 接口的 A/B/C 型外观都是物理特性的体现。1.2.2 电气特性定义规定总线上各信号线的电平范围、驱动能力、方向及负载能力等电气参数。包含的具体内容规定项说明信号电平高电平、低电平的电压范围如 TTL 电平高 ≥2.0V、低 ≤0.8V信号方向每根线是单向输入 / 输出还是双向传输驱动能力信号线能驱动的负载数量、最大电流 / 扇出系数时序电压关系信号有效时的电平判断标准电气特性保证不同厂家的部件在电气上可以互连而不损坏、不失真。例如同一总线标准要求所有设备使用相同的逻辑电平规范TTL/CMOS/LVDS 等。1.2.3 功能特性定义规定每根信号线的作用功能即对信号线逐一定义其传输什么信息。总线信号按功能可分为三类对应三种总线信号类别对应总线功能地址信号地址总线 AB传送地址信息指示要访问的存储单元 / 端口数据信号数据总线 DB传送数据信息控制信号控制总线 CB传送控制、时序、状态信号如读、写、中断请求、总线请求、时钟等功能特性定义了总线的语义让各部件明确每根线干什么。例如标准中会明确规定哪几根是地址线、哪几根是数据线、哪根是 读 命令线、哪根是 写 命令线、时钟线有几根等。1.2.4 时间特性定义规定各信号线在时间上的相互关系即信号的时序关系—— 哪根信号线在什么时候有效、什么时候无效、先后顺序如何。包含的具体内容各信号有效与无效的时刻信号之间的先后顺序如先发地址、后发数据先发请求、后等应答时间宽度信号保持多长时间建立时间 / 保持时间Setup/Hold Time数据相对于时钟 / 控制信号提前有效和保持有效的时间要求。时间特性定义了总线操作的节奏保证发送方和接收方在正确的时刻采样数据。它决定了总线的定时方式同步 / 异步及最高工作频率。例如同步总线的时序图会精确标出时钟上升沿、地址有效、数据有效、读写命令的先后与宽度。1.2.5 四方面特性对比特性回答的问题核心内容典型体现物理特性怎么插、怎么连根数、形状、尺寸、引脚排列插槽形状、引脚间距电气特性用什么电平、能带多少负载电平范围、方向、驱动能力TTL/CMOS 电平规范功能特性每根线干什么各信号线的功能定义地址线 / 数据线 / 控制线划分时间特性信号什么时候有效时序关系、有效时刻、先后顺序读 / 写时序图、建立 / 保持时间总线标准的四方面特性 ——物理特性怎么连、电气特性用什么电信号、功能特性每根线干什么、时间特性信号何时有效—— 共同构成了一个完整的总线规范是 即插即用 和部件互换的基础2. 总线的分类2.1 按功能分类这是系统总线最常用的分类方式分为三组数据总线CPU 与主存、I/O 之间交换数据的通道。双向意味着既可 CPU→设备写也可 设备→CPU读。数据总线宽度是衡量计算机性能的重要指标 —— 宽度越宽单次传送数据越多。地址总线只能由 CPU 输出部分系统允许 DMA 控制器也输出单向性保证了寻址的确定性。地址总线宽度直接决定可寻址空间例如 32 位地址线可寻址 4GB2³² 字节。控制总线包含读 / 写命令、中断请求与响应、总线请求与允许、时钟、复位、就绪等信号是所有总线中最复杂的一组也是区分不同总线标准的关键。图2 总线按功能分类总线类型符号方向传送内容关键指标数据总线DB (Data Bus)双向数据信息指令、操作数数据总线宽度决定一次能并行传送的位数8/16/32/64 位地址总线AB (Address Bus)单向由 CPU 向外发存储单元 / 端口的地址地址总线宽度决定可寻址空间n 位可寻址 2ⁿ 个单元控制总线CB (Control Bus)部分双向、部分单向控制信号、时序信号、状态信号如读写命令、中断请求、复位等补充按连接部件的层次位置分类片内总线芯片内部各寄存器、ALU 等单元之间的连线系统总线连接 CPU、主存、I/O 接口的传输线即上述数据 / 地址 / 控制总线通信总线计算机系统之间或与其他系统外设之间通信的线路如 USB、串口、网口。2.2 按数据传输方式分类并行总线的瓶颈并行线数多要求各线传播延迟一致频率升高后 线间偏斜skew 加剧难以继续提速因此并行总线频率普遍不高PCI 最高 133MHz 左右。串行总线的优势用差分对传输如 PCIe、USB、SATA通过提高单通道速率弥补位宽劣势并支持多通道并行PCIe x1/x4/x16因此现代高速总线几乎全部转向串行。类型特点优点缺点典型例子并行总线一次同时并行传送多位数据传输速率高、控制简单线数多、成本高、抗干扰差、传输距离短ISA、PCI、早期的 ATA串行总线一次只传送 1 位逐位传输线数少、成本低、抗干扰强、可远距离传输、易扩展需并 / 串转换单次速率受限于位率USB、SPI、I²C、UART、PCIe、SATA现代趋势随着频率提升并行总线如 PCI逐渐被高速串行点对点总线如 PCIe取代因为串行在高频下时序简单、误码率低。2.3 按所处位置/层次分类按总线在计算机系统中的位置和连接对象划分类型位置连接对象特点例子片内总线芯片内部CPU 内部寄存器、ALU、cache 等线短、速度最高、工艺相关CPU 内部数据通路、片上总线系统总线板卡 / 主机内部CPU、主存、I/O 接口之间是计算机的核心总线含数据 / 地址 / 控制三组前端总线 FSB、PCI、PCIe通信总线外部总线 / 设备总线计算机之间或计算机与外设之间计算机↔计算机、计算机↔外设距离远、速度相对低、抗干扰要求高USB、RS-232、以太网、IEEE-1394片上系统SoC内部常采用层次化片内总线如 AMBA 体系中的AHB高速、APB低速外设以及 NoC 片上网络属于 片内总线 范畴的演进。2.4 按时序控制方式通信方式分类这是按 总线如何协调数据传输时序 来分类对应通信方式类型时序基准特点典型同步总线统一时钟周期固定、控制简单、按最慢设备计时早期存储总线、同步 SRAM/DRAM 接口异步总线无时钟靠请求 — 应答握手适应不同速度设备、控制复杂异步 SRAM、传统 I/O 总线半同步总线有时钟 插入等待两者兼顾ISA、PCI部分阶段分离式总线分离事务分阶段传输、总线可被复用利用率最高PCIe、QPI、HyperTransport2.5 按连接结构 / 拓扑分类拓扑说明特点典型共享总线型所有设备挂同一总线分时共享简单、成本低、带宽共享、易冲突ISA、PCI并行共享点对点星型 / 交换式设备通过交换器逐对连接带宽独享、可并行传输、扩展性好PCIe、SATA点对点、USBHub 星型环型 / 树型 / 网状特定连接形态用于特定网络 / 互连场景令牌环、总线型以太网早期共享式总线 → 交换式点对点解决带宽瓶颈。例如 PCI 是共享并行总线PCIe 改为点对点串行 交换开关Switch。2.6 其他常见分类角度1按总线在系统中所起的作用控制方式单总线结构CPU、主存、I/O 全部挂接在一条总线上简单但慢双总线结构主存总线 I/O 总线分离三总线结构主存总线、I/O 总线、DMA 总线多级层次化总线现代计算机分层设置速度逐级降低、负载分流。2按数据传送方向单向总线只允许一个方向传送地址总线双向总线两个方向都可传送数据总线。3按仲裁判优方式集中式仲裁链式查询、计数器定时查询、独立请求方式分布式仲裁各设备自行仲裁无中心仲裁器。4按是否面向标准应用层系统标准总线如 ISA、EISA、PCI、PCIe机箱内板级互连外设 / 通信标准总线如 USB、IEEE-1394、SATA、RS-232、以太网外部设备互连。图3 分类总览图3. 总线的通信方式数据传输控制 / 定时方式总线通信要解决的核心问题发送方与接收方如何在时间上协调保证数据被正确、可靠地传送。按 时序控制定时方式 的不同分为四种同步、异步、半同步、分离式。3.1 同步通信原理由统一时钟CLK控制总线周期长度固定所有部件严格按照时钟节拍工作。发送方和接收方都以系统时钟为基准数据传送的每一步都发生在预先规定好的时钟节拍上。优点控制逻辑简单、实现容易、传输速度快。缺点时间安排以最慢的设备为准当快速设备与慢速设备共用总线时快设备被迫等待浪费时间对不同速度设备适应性差。典型应用早期同步存储总线同步 SRAM/DRAM 接口处理器内部片上简单总线高速同步串行接口的时钟方案。3.2 异步通信原理无统一时钟靠 请求 — 应答握手信号协调即发送方发 请求 接收方发 应答 来匹配速度。根据请求 / 应答信号的撤销关系握手信号的三种互锁方式互锁方式请求撤销时机应答撤销时机可靠性说明不互锁发出后不等应答自行定时撤销收到请求后自行撤销最低双方各自按自己的时间表撤销可能出现信号冲突半互锁要等收到应答才撤销请求发出应答后自行撤销不等请求撤销中请求方严格等待应答方较宽松全互锁等收到应答才撤销请求等请求撤销后才撤销应答最高双方互相等待、完全互锁握手最可靠优点能适应不同速度的设备时间利用率高快设备不等慢设备。缺点握手开销大、控制逻辑复杂、速度相对较慢。典型应用异步 SRAM 接口读等待 tAA、写需地址 / 数据 / 写命令时序配合传统异步 I/O 总线如某些早期接口UART 串行通信起止位 波特率无统一时钟本质也是异步节拍。3.3 半同步通信原理同步与异步的结合。仍以统一时钟为基准保留同步的节拍性但在周期中允许插入 等待状态当慢速设备来不及响应时通过拉低WAIT等待/ READY就绪信号让总线插入若干个等待时钟周期从而延长总线周期适应慢设备。优点既保留了同步控制简单的优点又能通过插入等待适应不同速度设备。缺点等待周期内总线被占用效率仍有损失。典型应用ISA 总线通过 IOCHRDY 信号插入等待周期PCI 总线的早期 / 某些阶段通过 TRDY#、IRDY# 握手 等待不少 CPU 与慢速外设的接口CPU 插入等待状态 WAIT。3.4 分离式通信原理把一次总线传输拆成 请求 和 应答 两个独立阶段中间不连续占用总线请求阶段申请方主设备占用总线很短时间发出地址 请求随即释放总线数据准备期被选中的从设备准备数据期间总线被释放其他主设备可以继续使用总线应答阶段从设备数据准备好后再次申请总线把数据传送给申请方。优点总线在等待设备准备数据的空隙被其他传输利用总线利用率最高。缺点控制逻辑最复杂需要区分 请求阶段 和 应答阶段。典型应用现代高速总线如 PCI-X、HyperTransport、QPI、PCIe 的分层协议普遍采用分离事务思想。3.5 四种通信方式对比对比项同步异步半同步分离式时钟基准统一时钟无时钟握手统一时钟 等待无 / 低占用定时方式固定节拍请求 — 应答节拍 插入等待分段 复用速度匹配能力差好较好最好总线利用率较低较高中最高控制复杂度最简单较复杂中最复杂传输延迟低固定较高握手中较高但吞吐高典型应用同步存储、片上总线异步 SRAM、UARTISA、PCIPCIe、QPI、HT四种方式按 总线利用率 / 控制复杂度 大致呈递增关系同步 半同步 异步 分离式分离式在现代高速总线中应用最广4. 总线的主要参数4.1 时间参数时间参数描述总线在时间维度的行为是判断总线快慢与正确性的核心。1. 时钟周期Clock Cycle定义总线工作时钟的一个基本周期是总线所有定时操作的时间基准由高电平 低电平时间组成。单位ns纳秒。关系频率 f 1 / T。例如 100MHz 时钟 → 周期 10ns。2. 总线周期Bus Cycle / 传输周期定义完成一次总线操作如一次读 / 写、一次地址传送 数据传送所需的时间。组成通常由若干个时钟周期组成例如同步读周期 T1、T2、T3 三个节拍。与时钟周期的区别时钟周期是 心跳总线周期是 一次事务后者是前者的整数倍半同步 / 异步下可含等待周期。3. 总线传输率总线带宽Bandwidth★核心参数定义单位时间内总线上传送的数据量反映总线的数据传输能力。计算公式总线带宽(B/s) 总线宽度(bit) ÷ 8 × 总线工作频率(Hz)即每周期传送的字节数 × 时钟频率。计算示例总线宽度频率带宽计算结果ISA16 位8 MHz16÷8 × 8M16 MB/sPCI32 位33 MHz32÷8 × 33M132 MB/sPCI 64 位64 位66 MHz64÷8 × 66M528 MB/sPCI-X64 位133 MHz64÷8 × 133M1064 MB/s ≈ 1.06 GB/s注意DDR 类双倍数据率总线在每个时钟沿都传数据带宽公式为 宽度 ÷8 × 频率 × 2或按数据率计算。4. 传输延迟Propagation Delay定义信号从发送端到接收端在总线上传播所需的时间。影响延迟越大可支持的工作频率越低高频下信号还没到达就触发下一个沿限制了总线最大长度和最高频率的乘积长度 × 频率 ≤ 常数。5. 建立时间 / 保持时间Setup / Hold Time建立时间 tSU数据在时钟有效沿到来之前必须提前稳定的最短时间保持时间 tH数据在时钟有效沿之后必须继续保持的最短时间。作用保证采样沿处数据稳定防止亚稳态metastability。4.2 总线宽度1. 数据总线宽度Data Bus Width定义一次能并行传送的数据位数8/16/32/64/128 位。作用数据宽度越宽单次传送的数据越多与带宽成正比见带宽公式。真实标准ISA8/16 位PCI32/64 位现代 CPU 数据总线64 位x86 平台PCIe 为串行用 通道数 表示x1/x4/x8/x16每个 lane 一位差分对。2. 地址总线宽度Address Bus Width定义地址总线的位数决定可寻址空间大小。计算n 位地址线 → 可寻址 2ⁿ 个存储单元按字节寻址则 2ⁿ 字节。真实标准地址线位数可寻址空间16 位64 KB20 位1 MB8086/808824 位16 MB8028632 位4 GB80386 及以后36/40 位64 GB / 1 TBPAE 扩展关键点数据宽度管 一次传多少地址宽度管 能找多少两者独立常被混淆。4.3 总线的结构(1) 分层结构总线体系结构按层次组织总线形成 层级总线体系解决速度匹配与瓶颈问题结构说明特点单总线结构所有部件挂接在一条总线上结构简单、成本低但易冲突、速度慢、可靠性差双总线结构主存总线 I/O 总线分离CPU 访问主存与 I/O 分开速度提升三总线结构主存总线、I/O 总线、DMA 总线支持 DMA 直接传送减少 CPU 干预多级层次化总线如 CPU— 存储器总线、I/O 总线PCI/PCIe、扩展总线逐级分开速度逐级降低、负载分流是现代计算机主流北桥 / 南桥→SoC 片内 AMBA 总线如 AHB/APB(2) 拓扑结构拓扑说明特点总线型共享总线所有节点共享一条传输线任一时刻只允许一个主设备占用简单、成本低但带宽共享、易成为瓶颈早期 ISA/PCI星型点对点 交换各节点通过交换器 / 桥接器点对点连接带宽独享、可并行现代 PCIe 采用点对点 Switch环型 / 树型 / 网状特定连接形态用于特定通信场景趋势共享式总线 → 交换式 / 点对点结构以提高并行度与带宽如 PCI → PCIe。4.4 其它主要参数参数定义影响总线工作频率总线时钟频率决定基础传输速度与带宽成正比总线负载能力扇出一条总线上可挂接的最大设备数受驱动能力、电气特性限制总线协议 / 标准总线遵循的规范时序、仲裁、命令等决定互操作性与可靠性传输类型支持支持的传送类型单次 / 突发 Burst、读 / 写、DMA突发传输大幅提升带宽利用率总线位数并行 / 串行通道数数据通道数决定并行度仲裁方式集中式 / 分布式决定多主设备时的分配效率关于突发传输Burst一次地址传送后连续传送多个数据可显著提高带宽是 PCI、DDR、PCIe 等的重要特性。4.5 时间参数关系图核心公式汇总带宽 宽度 (bit) ÷ 8 × 频率 (Hz)寻址空间 2^(地址线位数) 字节时钟周期 1 / 频率总线周期 ≈ 若干时钟周期同步固定半同步可插入等待参数类别关键参数作用时间参数时钟周期、总线周期、带宽、传输延迟、建立 / 保持时间决定快慢与采样正确性宽度参数数据宽度带宽、地址宽度寻址空间决定吞吐量与寻址范围结构参数分层结构单 / 双 / 三 / 多级、拓扑共享 / 点对点决定扩展性、带宽共享与并行度其他参数频率、负载能力、协议、突发传输、仲裁综合决定总线整体能力5. 总线的操作与控制1一次完整的总线操作总线事务按经典教材划分为四个阶段阶段内容说明① 申请分配阶段总线请求与仲裁主设备向总线仲裁机构发出占用总线的请求仲裁机构判优将总线使用权分配给某一申请者解决 多个主设备争用总线 问题② 寻址阶段获得使用权的主设备通过地址总线发出目的地址选中从设备完成主 / 从设备的寻址匹配③ 传数阶段数据传送主设备与从设备之间通过数据总线交换数据读或写按约定的定时方式同步 / 异步等完成发送方与接收方协调时序④ 结束阶段释放数据传送完毕撤销有关信息释放总线控制权使总线回到空闲状态供下一部件继续申请使用总线请求 → 总线仲裁 → 寻址 → 传送数据 →结束释放。部分教材将 结束释放 并入第三阶段后但四阶段划分是最通行的表述。2总线仲裁判优由于总线是共享资源同一时刻只能有一个主设备占用因此需要仲裁集中式仲裁由总线仲裁器统一管理包括链式查询按固定优先级依次查询计数器定时查询计数器轮询各设备优先级可编程独立请求方式各设备单独发请求线由仲裁器并行判优响应最快。分布式仲裁无中心仲裁器各设备自行比较优先级获得总线使用权如自举分布式方式。6. 小结主题关键结论定义各部件共享的公共信息传输介质特点是共享性 分时性分类按功能数据 / 地址 / 控制总线按传输方式并行 / 串行通信方式同步时钟、异步握手三种互锁、半同步时钟 等待、分离式利用率最高主要参数时间参数时钟 / 总线周期、带宽、总线宽度数据 / 地址、结构分层 / 拓扑操作四阶段申请分配请求 仲裁→ 寻址 → 传数 → 结束释放