首页 » 硬件 » 计算中的总线类型:完整指南和示例
总线协调数据、地址和控制,以同步 CPU、内存和外围设备之间的读/写。
有按传输(串行/并行)、方向性和时钟以及多路复用和奇偶校验变体进行分类。
层次结构和仲裁决定速度、延迟以及有多少设备可以无冲突地共享介质。
计算机的内部通信依赖于由线路和信号组成的网络,称为“总线”。虽然这个术语听起来很抽象,但总线的本质是命令和数据传输的路径,使所有部件能够同时运行。 如果没有总线系统,CPU、内存和外设之间就无法进行有效传输,因此,不存在实用的计算机。
在本文中,我们将清晰地分析现有的不同类型的总线、它们的分类方式以及它们的重要性。我们将涵盖从总线的基本功能到按传输方式、流向、同步以及系统内的层级结构进行分类的所有内容。 目标是让您在阅读规格时能够识别每条总线,并了解它在性能和稳定性方面发挥的作用。.
计算机科学中的总线是什么?
在计算机领域,总线是 一组传输信息的互连线路 系统的不同组件之间:CPU、内存、控制器、I/O 设备等。每条线可以承载一位;这就是我们谈论总线宽度(8、16、32、64 位等)的原因。 32位总线可以同时传输32位。,因为它有 32 个并行线程或轨道。
从物理角度来看,总线可以包括 电路板上的走线(印刷电路板)、电阻器、电容器和集成电路 与标牌相关。这些部件不属于装饰性部件: 它们决定信号完整性、有用路径长度和抗噪能力。,特别是在高频时。
总线的工作原理:信号、协议和仲裁
组件物理连接到总线,以便按照以下方式交换信息 通讯协议 定义速度、编码、同步和控制。当发送器想要传输数据时,它会将数据放在相应的线路上,并激活控制信号。 接收器根据所选协议进行解码和处理确保双方“讲同一种语言”。
为了避免冲突,系统需要以下机制 仲裁和访问控制如果两个设备同时尝试使用总线,信号就会混合,信息就会丢失。因此,需要制定指导方针和规则来规定谁可以使用总线以及何时使用。 这种控制对于防止碰撞和保持一致性至关重要。 在内存和外围设备中。
信号也有一个层次结构: 数据、地址和控制线每个组都履行不同的职能,并且它们的协调使得读取或写入周期能够有序且可预测地完成。
按传输方式分类:串行总线、并行总线
总线可以通过两种基本方式发送信息。并行地, 通过多条线路同时传输多个位,允许在中等频率下实现较大的带宽。串联, 通过更少的导体逐个发送比特,更多地依赖于频率和编码技术。
并行总线在经典计算机中,它被广泛使用:处理器总线、扩展总线、视频总线,甚至打印机(例如 LPT/IEEE 1284 端口)。由于它线路众多,控制逻辑可以很简单,这在计算能力有限的系统中非常有用。 一个历史例子是英特尔的前端总线(FSB),地址、控制和数据线各有不同。有趣的是,最初的 IBM PC 选择了 8088(8 位 I/O)而不是 8086,以充分利用现有硬件并降低成本。
在典型的并行总线中我们发现: 地址线(用于信号位置或设备)、控制线(中断、DMA、状态)和数据线 (它们传输有用的比特)。虽然它功能强大,但其物理复杂性随着宽度和长度的增加而增长,这限制了每个 干扰、偏差和信号完整性问题.
串行总线它不需要很多线路,而是使用很少的线路(甚至只有一条数据线)来逐位传输信息。它的带宽很大程度上取决于频率和编码。如今,它在 磁盘和 SSD、扩展总线和高性能链路,因为斜率越少,速度和距离就越容易扩展。 USB、SATA 或 PCIe标准 是这一理念应用于系统不同层面的很好的例子。
电视上最好的图像质量是多少?根据公交车所载信息
在系统内部,数据总线、地址总线和控制总线之间存在区别。这种概念上的划分有助于我们理解每个内存或 I/O 周期。 他们共同商定要做什么、在哪里做以及使用什么信息。.
数据总线。它是从内存中读取用户数据或指令的通道。它通常是双向的: 允许读写 CPU、内存和设备之间的带宽。带宽越大,每个周期可以传输的信息就越多,这直接影响性能。 在代码访问中,指令通过该总线循环 为 CPU 提供信息。
地址总线它指示要访问的具体位置。它通常是单向的,从主设备(例如 CPU)到内存或目标设备。它的宽度定义了可寻址空间:n 条线, 可以选择 2^n 个位置例如,256 个位置需要 8 条线。 设计中可以添加控制信号来指示地址何时有效。.
总线去控制它承载控制公共线路(数据和地址)使用以及系统状态和条件的信号。它包括读取或写入、时序信号、中断、DMA 和仲裁等命令。 其作用是协调和同步行动,避免冲突。 共享总线的模块之间。
举个实际的例子。假设你想计算 A + B,并将结果保存在 C 中,其中每个变量都位于特定的地址。CPU 将 地址总线上的 Dir_A,通过控制指示这是一个读数,并通过数据总线接收该值并暂时存储。它重复执行B,在ALU中执行求和,然后放置 地址总线上的 Dir_C,数据总线上的结果并通过控制指定它是写入。 这样就完成了一个协调的读/写周期。.
多路复用总线:地址和数据之间共享线路
为了节省物理线路,一些设计 将地址和数据复用到同一组。这些线路有时用作地址总线,有时用作数据总线,但永远不会同时起作用。控制总线负责 指示在特定时间哪种类型的信息有效该技术减少了轨道数量,但代价是增加了周期或增加了逻辑复杂性。
系统中的总线层次结构
现代计算机将总线组织成层级结构。非常快的链路(例如, 链接到缓存或内存),然后连接到主 RAM 所在的系统总线并桥接到其他子系统。 越靠近CPU,速度越快,延迟越低。;随着层次结构的下降,设备越来越多,同时进行的通信也越来越多,但时间优先级却越来越低。
此层次结构因体系结构而异。一些系统包括 缓存总线、多处理器互连 或用于 GPU 的专用链路。拓扑和层的选择取决于性能、吞吐量、成本和功耗要求。 平衡距离、宽度和设备数量是避免瓶颈的关键。.
附加分类:位置、用途、方向、时钟和奇偶校验
根据位置当主板核心(内存、系统/FSB、数据)的一部分构成内部总线时,我们称之为内部总线。外部总线或扩展总线用于 连接外围设备和外部设备,可以通过内部插槽或通向外部的端口。
根据用途。在专用总线上,系统的每个元素都有 独家线路,可以同时实现多个周期,但代价是巨大的物理复杂性(许多线路)。相比之下,共享总线 统一多个设备的地址、数据和控制,这简化了硬件,尽管它迫使你仲裁转弯和 不允许在同一介质上同时进行多个循环经典的 FSB 是共享总线的一个例子。
阻抗如何影响声音?根据方向性单向(单工)总线仅在一个方向上传输数据,例如用于 来自 CPU 的信号地址双向(半双工)总线允许双向发送,但不能同时发送;它需要 指示当前方向的标志。在全双工总线上,可能存在 双向同时传输,以更多的物理通道或逻辑通道为代价来提高性能。
根据分享方式直达巴士旨在 单一类型的信息 (数据、地址或控制)。复用时,同一组线路 携带不同类型的信号 在不同的时间,通过控制和时间来识别。
根据时钟的存在. 在同步总线上,时钟信号 设定转移速度,通过利用时钟边沿简化协调。异步时钟不依赖于公共时钟;它们使用 请求、识别和循环结束的附加信号它们提供了灵活性,但可能需要更复杂的逻辑。
有或无奇偶校验奇偶校验增加了一个额外的位 检测简单错误 在传输过程中(奇偶校验或偶校验)。在其最强大的版本中,使用纠错码(ECC),能够 检测并纠正某些位错误. 在非奇偶校验总线上,没有检查,这使得事情更便宜、更简单,但降低了可靠性。
杂种一辆公交车可以同时属于多个类别;例如, 并行、双向、同步,或串联、直接和同步。标签描述了正交、非排他属性。
总线按其连接的设备和具体示例
CPU总线是 CPU 与其直接支持芯片(例如芯片组或缓存控制器)之间的通信路径。它用于 在 CPU 和内存之间传输数据 或者在CPU和外部缓存之间。其性能决定了指令和数据流向处理器的流程。
扩展总线随着时间的推移,将卡连接到主板已经出现了几种标准: ISA (个人电脑先驱) PCI (通用外设互连)和 AGP (加速图形端口)专注于视频,后来被性能更高的串行链路取代。 这些公交车可以扩大运力 带有网络适配器、声音、存储等。
外设和存储总线. 对于磁盘和固态驱动器,接口如 IDE/PATA、SATA、SCSI 和 SAS,定义了逻辑总线、连接器和信令。在外部端口级别, USB (通用串行总线)采用高速串行总线理念,标准化了从打印机到数字化仪的数千种设备的连接和传输。 目标是简化扩展和兼容性.
工业或现场总线. 在自动化和工业环境中,使用特定的总线: PROFIBUS (实时数据), 的Modbus (自动化和监控), CAN (广泛用于汽车和医疗设备), AS-i接口 (简单设备)和 国际总线 (高速)。 这些总线优先考虑稳健性、延迟和可靠性 面对不利条件。
串联与并联的数字:频率、宽度和时间
并行情况下,每个周期的传输宽度等于数据线的数量。例如,有8条数据线, 每个周期可以发送1个字节每秒总量取决于有效频率:宽度乘以频率。串联,单线, 每个位需要一个周期;一个字节需要8个周期。通过提高频率(或使用高效编码),串行总线可以弥补线路不足。 因此现代串行链路实现了非常高的带宽。.
这解释了为什么并行总线在频率增加时会遇到物理限制(线路间偏差、干扰),而 连续剧的编码、频道和差分链接都得到了改进,就像 PCIe、SATA 或最新一代 USB 一样。
在 Windows 10、8 或 7 中禁用 SSD 的 Superfetch 预取寻址:总线大小和可访问内存
地址总线的宽度决定了无需额外技巧即可寻址的内存大小。如果使用 n 条线,则 2^n 个可能的方向如果一个设计有 8 条线,则它有 256 个位置;如果有 32 条线,则它有 4.294.967.296 个位置。 有些公交车增加了控制线来标记方向何时有效。或分页/分段技术来扩展逻辑空间。
实际上,除了纯地址线之外,还涉及其他系统元素。控制器、寄存器,甚至微码都可以 协调地址的生成和使用方式,哪些区域映射到 I/O 设备以及如何保护访问。 所有这些都与控制总线相连以完成循环。.
完整性、控制方面以及典型线路示例
控制线包括但不限于: 读/写、中断、DMA 和状态信号在 FSB 等历史总线上,它们被组织成单独的地址、控制和数据组,从而清晰地展示了每个组的作用。 链接后,时间协调数据和地址的有效性 以便接收者在正确的时间捕获信息。
为了保持完整性、终端、上拉/下拉电阻、仔细的拓扑结构,以及在更快的总线上, 差分传输和均衡技术目标是消除噪音、串扰和抖动。 总线速度越快,信号工程就越重要。 以及盘子布局的质量。
历史演变:从第一根电缆束到高速链路
第一代最初的总线只是连接外设的简单线缆束,不像今天这样复杂。CPU 一次只能为一个外围设备提供服务因此引入了中断和通道控制器来改进 I/O(例如 IBM 709)。DEC 推广了 I/O 到内存地址的映射,这一想法在 PDP-11 通用总线.
第二代CPU-RAM 总线与 I/O 总线分离,以缓解瓶颈(例如: 努总线)出现了特定的协议和专用总线,例如 AGP 对于图形,以及 PCI 适用于现代外围设备。在存储方面,它们共存 IDE 和 SCSI,为更加模块化和更快的架构铺平了道路。
第三代自 2000 世纪初以来,他们已经抵达 的HyperTransport, InfiniBand的 以及后来的举措,例如 CXL (Compute Express Link)用于标准化异构系统中的 CPU-设备和 CPU-内存互连。 非常高性能的点对点串行链路 定义互连的现状。
尾注:技术、实用性和概念准确性
在许多流行的地址总线描述中,它被赋予了一些与其不对应的功能,例如 传输能量或交换数据 (这适用于数据总线和单独的电源线)。记住地址总线 仅指示位置或设备;数据通过其自身的通道传输,并由控制器协调整个过程。有了这种精度,我们就能更好地理解为什么 每组线的存在方式及其整合方式.
同样,尽管整个系统包括控制器、寄存器、逻辑开关和指导 CPU 的指令集,但这些 从严格意义上来说,它们不是公交车的一部分,但要与其互动。公交车是媒介;其他街区 决定传输什么、何时以及如何传输.
技术进步正在推动更快、更可靠、更高效的公交车,无论是在家庭还是工业环境中。从 通过 CAN、Modbus 或 PROFIBUS 实现自动化,直至配备 PCIe 和 USB 的台式计算机,我们生活中存在多种类型和层次的互连。 选择合适的公交车需要平衡性能、成本、距离和稳健性 取决于使用情况。
了解什么是总线、如何对总线进行分类以及每个信号组的作用,可以让您明智地阅读规范、检测瓶颈,并规划扩展或集成,减少意外。 串联或并联、专用或共享、同步或异步:所有这些加起来就是构建平衡的系统。 信息流通顺畅。
相关文章:PCI 和 PCI Express 有什么区别?