计算机是由若干系统功能部件构成的,这些系统功能部件只有连接在一起协调工作才能形成一个完整的计算机硬件系统。
起到连接和信息传输功能的部件就是总线。各个功能部件只有通过总线进行有效连接后,才能实现彼此间的通信及资源共享。
一、总线的概念
总线是连接多个部件的信息传输线,是各部件共享的传输介质。
总线的特点:
- 共享性
总线是供所有部件通信共享的,任何两个部件之间的数据传输都是通过共享的公共总线进行的。 - 独占性
当一个部件占用总线与另一个部件进行数据通信时,其他部件就不能再占用总线。
总线的分类(按总线上传输信号的不同来分):
- 地址总线
传送的是从CPU
等主设备发往从设备的地址信号。 - 控制总线
传送的是一个部件对另一个部件的控制或状态信息,如CPU
对存储器的读、写控制信号等。 - 数据总线
传送的是各部件之间交换的数据信息,数据总线通常是双向的。
以CPU
读存储器为例简要说明三类总线的作用,CPU
首先通过地址总线发出想要访问的存储单元的地址(即通过地址总线找到访问对象),然后通过控制总线发出读信号(即通过控制总线决定数据传输方向),最后经过数据总线把数据从存储器读到CPU
(即通过数据总线完成真正的数据传输)。
总线的特性:
- 物理特性
指的是总线的物理连接方式,包括:总线的根数,总线的插头、插座的形状,引脚线的排列方式等。 - 功能特性
指的是总线中每根传输线的功能,例如:地址总线用来传输地址码,数据总线他、用来传送数据等。 - 电气特性
指的是每根线上信号的传递方向及有效电平范围,一般规定送入CPU
的信号叫输入信号(IN
),从CPU
发出的信号叫输出信号(OUT
),定义高电平为1
,低电平为0
。 - 时间特性
指的是每根线在什么时间有效,也就是说,只有规定了总线上各信号有效的时序关系,整个计算机系统的各个功能部件才能有条不紊的协调工作。
二、总线的连接方式
由于外设设备较多,且种类繁杂】速度各异,不能简单地把它们连到CPU
上,因此必须寻找一种方法,以便将外围设备同CPU
连接起来。这项工作一般都是由适配器部件来完成的,适配器通常也称为I/O
接口。
根据连接方式不同,单处理机系统中采用的总线结构有两种:单总线结构和多总线结构。
1. 单总线结构
在许多单处理器的计算机中,使用单一的系统总线来连接CPU
、主存和I/O
设备,叫做单总线结构,允许I/O
设备之间、I/O
设备与CPU
之间、I/O
设备与主存之间直接交换信息。如下图所示:
这种结构简单,便于扩充,但所有的传送都通过这组共享的总线,因此极易形成计算机系统的瓶颈。
这类总线多数被小型计算机或微型计算机所使用。
2. 多总线结构
多总线结构是CPU
和cache
之间采用高速的CPU
总线。通过桥(具有缓冲、转换、控制功能的逻辑电路),CPU
总线、系统总线和高速总线彼此相连。如下图所示:
多总线结构实现了高速、中速、低速设备同时连接到不同的总线上进行工作,极大地提高了总线的效率和吞吐量。
三、总线的内部结构
1. 早期总线内部结构
早期的总线内部结构是处理器芯片引脚的延伸,是处理器与I/O
设备适配器的通道,这种简单的总线一般也由50 ~ 100
条线组成。如下图所示:
这种总线结构的不足之处在于:
-
CPU
总是唯一的主控者 - 总线信号是
CPU
引脚信号的延伸,故总线结构与CPU
紧密相关,通用性较差。
2. 当代总线内部结构
当代流行的总线内部结构是一些标准总线,追求的是与硬件结构、CPU
、技术无关的开发标准,并满足包括多个CPU
在内的主控者环境的需求。如下图所示:
由上图可以看出,CPU
和片内cache
一起作为一个模块与总线相连。同时,在系统中允许有多个这样的处理器模块。而总线控制器完成几个总线请求者之间的协调与仲裁。
整个总线分成以下四个部分:
- 数据传送总线
由地址总线、数据总线、控制总线组成。为了减少布线,数据总线常常和地址总线采用多路复用的方式。 - 仲裁总线
包括总线请求线和总线授权线。 - 中断和同步总线
用于处理带优先级的中断操作,包括中断请求线和中断认可线。 - 公用线
包括时钟信号线、电源线、地线、系统复位线及加电或断电的时序信号线等。
大多数计算机采用了分层次的多总线结构。在这种结构中,速度差异较大的设备模块使用不用速度的总线,而速度相近的设备模块使用同一类总线。