计算机组成原理 — 总线系统
2019-07-25 19:27 云物互联 阅读(1847) 评论(0) 编辑 收藏 举报目录
前文列表
《计算机组成的基本硬件设备》
《计算机组成原理 — 冯诺依曼体系结构》
《计算机组成原理 — 中央处理器》
《计算机组成原理 — 指令系统》
《计算机组成原理 — 存储系统》
《计算机组成原理 — 输入输出系统》
总线系统
计算机系统大多采用模块结构,一个模块可以是具有专门功能的插件板,或叫做部件。例如:主板、存储器卡、I/O 接口板等等。随着集成电路集成度的提高,在一块板上可以安装多个模块。各模块之间传送信息的通路就是总线,为了便于不同厂家生成的模块能够灵活的构成系统,所以形成了总线标准。总线系统是指微型计算机各部件之间传送信息的通道。
总线的分类
按照物理位置分类:
- 内部总线:指主机各模块之间传送信息的通道。如:连接 CPU、存储器、I/O 接口(设备控制器)的总线。常用的由 ISA 总线、PCI 总线和控制机的 STD 总线。
- 外部总线:指系统之间或系统与外部设备之间传送信息的通道。如:USB 和 IEEE 1394 等串行总线和 ISA(IDE) 和 SCSI 等并行总线。
按照组织形式分类:
- 单总线:所有的模块都连接到单一的总线上,总线具有地址线、数据线、控制线、电源/地线。单总线结构简单、便于扩充,但却因为共享度高,所以容易成为数据传输率的瓶颈。
- 多总线:将相较于主机而言速度更低的 I/O 设备从总线上分离出去,形成 系统总线 和 I/O 总线 分离的双总线结构。同理,还可以将高速 I/O 设备(e.g. 图形、视频、网络)与慢速 I/O 设备分离为两条 I/O 总线,成为三总线结构。这是现在最常见的总线组织形式。
按照传输方式分类:
- 串行总线:一位一位的传送二进制的总线。
- 并行总线:一次能同时传送多个二进制位数的总线。
按照传输的数据类型分类:
- 数据总线:用于在 CPU 与内存或 I/0 接口(设备控制器)之间传送数据。
- 地址总线:用于传送计算单元或 I/O 接口的地址信息。
- 控制总线:用于在 CPU 与内存或 I/O 接口之间传送控制信号。
总线的功能
总线是由两个或两个以上源部件传送信息到一个或多个部件的一组传输线,如果一根传输线仅用于连接一个源部件和一个或多个目的部件,则不称为总线。总线,顾名思义应该具有公共属性。又由于总线所具有的公共属性,所以首先需要规定每个部件所发送信息的信息类型,此外,为了避免多个部件(或称为模块)同时发送信息的矛盾还需要设置总线控制线路。总线控制线路负责总线判优、仲裁逻辑、驱动器和中断逻辑。
总线判优控制
总线判优控制是为了保证在同一时间内只能有一个申请者在使用总线。能够控制总线并启动数据传送的设备称为主控器,能够响应总线主控器发出的总线指令的设备称为受控器。通常 CPU 为主控器,存储器为受控器,I/O 设备可以为主控器也可以为受控器。
总线通信
同步通信:通信双方由统一的时钟控制数据传输,时钟信息通常由 CPU 发出,并送到总线上的所有部件,在规定的总线周期内,只有通信双方可以收发数据。
异步通信:通信双方通过 “握手” 信号实现总线数据传送,通常用于实现不同速度部件之间的数据传送。
并行通信:并行通信表示各位同时传输,有 8 位、16 位、32 位和 64 位。特点是位数越多传输越快,但传输距离短,只能在一个机柜内使用。
串行通信:串行通信表示一位一位的传输。特点是速度较慢,但胜在通信线路简单,容易实现双向传输,特别适合远距离传输。
NOTE:通常的,出现了一种新的并行通信协议,就会紧随着出现与之对应的串行通信协议。这是因为并行通信方式总是存在着一些难以克服的缺陷,使其无法满足所有的应用场景。比如:
- 信号时滞:虽然并行通信中的所有位是同时传输的,但却不能保证是所有位都同时到达的,先到等后到就造成了时滞的问题。而且会随着传输距离的拉长越发明显。
- 串扰:总线上传输的是电子信息,所以并排线缆间容易出现互相干扰的问题,这也导致了并行通信有着更高的误码率。
- 影响机箱散热:并行通信依赖大连接器和很宽的带状传输电缆,这会挤压机箱的散热空间。
串行异步通信:串行通信和异步通信的结合。这种通信方式需要使用到特殊的数据格式(具有起始位、停止位和奇偶校验位)。
出错处理
数据传送过程中可能会产生错误,有些接收部件自己具有纠错能力,但有些却没有。不能自动纠错的部件最起码需要能够发现错误,并且可以发出 “数据错误” 信息,通常向 CPU 发出中断请求信号,CPU 响应中断请求后转入出错处理程序。
总线类型
系统总线
系统总线(System Bus),又称为 CPU 总线、FSB(Front Side Bus,前端系统)总线,是一个单独的计算机总线,用于完成处理机(CPU、Cache、存储器和 I/O 接口)内部部件之间的通信。系统总线具有三种不同的功能总线,使用数据总线来搭载信息,使用地址总线来决定将信息送往何处,使用控制总线来决定如何动作。
ISA、EISA 和 VESA 总线
**ISA 总线(Industry Standard Architecture,工业标准体系结构)**是为 PC/AT 电脑而制定的总线标准,有 8 位和 16 位两种模式,时钟频率为 8MHz,工作频率为 33MHz/66MHz,数据传输率大约是 16MB/S。ISA 接口插槽,其颜色一般为黑色,比 PCI 接口插槽要长,位于主板的最下端。可插接显卡,声卡,网卡已及所谓的多功能接口卡等扩展插卡。缺点是 CPU 资源占用太高,数据传输带宽太小,是已经被淘汰的插槽接口。
**EISA(Extended Industry Standard Architecture,扩展工业标准结构)**是一种为 32 位 CPU 设计的总线扩展标准,兼容 ISA 总线,现也已被淘汰。
**VESA(Video Electronics Standard Association)**是一种局部总线(Local Bus),简称 VL(VESA Local Bus)总线。VESA 考虑到了 CPU 与主存储器和 Cache 的直接相连,通常把这部分总线称为 CPU 总线或主总线,其他设备通过 VL 总线与 CPU 总线相连,所以 VL 总线被称为局部总线。
局部总线:就是 CPU 总线的扩展,即将外部设备通过局部总线控制器,直接与 CPU 总线相连,使得总线时钟与 CPU 时钟相同,从而达到外设与 CPU 同步工作的目的,这样如果在 33MHz 时钟频率下,总线传输速率可达 132MB/s。但由于总线扩展插槽的电气性能的限制,提高工作频率只能为 40MHz,则数据传输率最高只能达到 160MB/s,而将低速的外部设备,仍然通过 ISA 总线控制器,以 8MHz/16MHz 的速率运行,这样一般构成的系统是 VESA 和 ISA 两种总线的结合,即在主板上同时存在两种扩展插槽。
PCI 和 PCI-E 总线
**PCI(Peripheral Component Interconnect,外设部件互连标准)**是一种同步且独立于 CPU 的 32 位或 64 位并行局部总线,工作频率为 33MHz,具有即插即用(Plug and Play,P&P)功能。PCI 总线由 ISA 总线发展而来并取代了 ISA,是目前微机中使用最为广泛的接口,几乎所有的主板产品上都带有 PCI 插槽。PCI 总线连接的高速 I/O 接口的设备,称为 PCI 设备,主要为显卡、网卡、声卡、SCSI 卡。
从结构上看,PCI 总线是在系统总线之间插入的一级总线,具体由一个桥接电路(e.g. 南桥)实现了对这一层级的管理,这个桥接电路作为 PCI 总线控制器,含有集中式的总线仲裁器,还实现了上下层级之间的接口来协调数据的传送。
**PCI-E(PCI-Express)**是一种通用的总线规格,最终的设计目的是为了取代现有电脑系统内部的总线传输接口,这不只包括显示接口,还囊括了 CPU、PCI、HDD、Network 等多种应用接口,继而解决系统内部数据传输的瓶颈问题。
PCI 总线属于共享并行互联结构,系统的各种设备共用一个带宽,,这极大影响了系统的整体性能,而且并行通信的串扰问题也严重制约了日后速度的进一步提升。而 PCI-E 总线则采用了串行互联的方式,以点对点的形式进行数据传输,也就是说每个设备都有自己的专用连接,可以独享带宽,而不必向共享总线请求带宽。一个标准的 PCI-E 连接可以包含多个信道(Lane),当需要增加数据传输带宽时,可以通过增加信道的数量来达到目的。单个信道的 PCI-E 可以提供单向 250MB/s 的带宽,PCI-E * 16 信道则可以提供 4GB/s 的带宽。PCI-E 相对于 PCI 大大的提高了传输速率,而且也为更高的频率提升创造了条件。
PCI-E 支持对 PCI 和 PCI-X 的软件兼容,但主板上得到接口插槽却不兼容,因为 PCI-E 是串行接口,针数会更少,插槽会更短,PCI-E 插槽的长度跟信道的数目有关。
主板接口插槽示意图
主板(Motherboard, Mainboard,Mobo),又称主机板、系统板、逻辑板(Logic Board)、母板、底板等,是构成复杂电子系统,例如:电子计算机的中心或者主电路板。
下图为较为古老的 LGA 1366 主板,包含了南桥和北桥,这是最后一代使用双晶片的主机板。之后所有 Intel 与 AMD 的主板均仅有南桥,北桥和内建显示核心已整合到 CPU。
- CPU 插槽(LGA 1366)
- 北桥(被散热片覆盖)
- 南桥(被散热片覆盖)
- 记忆体插座(三通道)
- PCI 扩充槽
- PCI Express 扩充槽
- 跳线
- 控制面板(开关掣、LED 等)
- 20+4pin 主机板电源
- 4+4pin 处理器电源
- 背板 I/O
- 前置 USB 针脚
- 前置面板音效针脚
- SATA 插座
- ATA 插座(大部分 Intel Sandy Bridge 以后的家用主板都已舍弃 IDE 介面)
- 软碟机插座(目前绝大多数主板已舍弃软碟机介面)
-
主板 CPU 插槽
-
主板内存插槽
-
PCI-E 插槽:可以作为显卡、固态硬盘、声卡、采集卡等外部设备的扩展接口。按照速率不同有 x1、x2、x4、x8、x16 几种类型。
-
主板 SATA 接口插槽
-
主板网卡适配器