第二章 系统总线
2.1 总线的基本概念
1、总线概念:
连接各个部件的信息传输线,是各个部件共享的传输介质
2、串行、并行、并发、分布式概念及图示
(1)串行
A和B两个任务运行在一个CPU线程上,在A任务执行完之前不可以执行B。即,在整个程序的运行过程中,仅存在一个运行上下文,即一个调用栈一个堆。程序会按顺序执行每个指令。
(2)并行
并行性指两个或两个以上事件或活动在同一时刻发生。在多道程序环境下,并行性使多个程序同一时刻可在不同CPU上同时执行。比如,A和B两个任务可以同时运行在不同的CPU线程上,效率较高,但受限于CPU线程数,如果任务数量超过了CPU线程数,那么每个线程上的任务仍然是顺序执行的。
(3)并发
并发指多个线程在宏观(相对于较长的时间区间而言)上表现为同时执行,而实际上是轮流穿插着执行,并发的实质是一个物理CPU在若干道程序之间多路复用,其目的是提高有限物理资源的运行效率。 并发与并行串行并不是互斥的概念,如果是在一个CPU线程上启用并发,那么自然就还是串行的,而如果在多个线程上启用并发,那么程序的执行就可以是既并发又并行的。
(4)分布式
分布式在并行处理的基础上,强调任务正在执行的物理设备,如处理器、内存等等硬件,在物理上是分开的。而并行计算是指在一台计算机上的计算,在物理上不分开。
注:上文转自:https://www.jianshu.com/p/deae44fcc6b3 感谢作者!
3、总线的计算机举例
(1)面向CPU的双线总线结构(了解)
(2)单总线结构
注:CPU先访问主存后访问外设
(3)以存储器为中心的双总线结构
2.2 总线的分类
1、片内总线:芯片内部的总线
2、系统总线:计算机各部件之间的信息传输线
(1)数据总线:双向与机器字长、存储字长有关(MDR)
(2)地址总线:与存储地址、I/O地址有关(MAR)
(3)控制总线:有入(中断请求、总线请求);有出(存储器读写,总线允许、中断确认)
3、通信总线:用于计算机系统之间或计算机系统与其他系统(如控制仪表、移动通信等)--外部总线
根据传输方式分为:
-
串行通信总线
-
并行通信总线
2.3 总线特性及性能指标
1、总线的物理实现
2、总线的特性(408不考,自主不一定)
(1)机械特性:尺寸、形状、管脚数及排列顺序
(2)电气特性:传输方向和有效的电平范围
(3)功能特性:每根传输线的功能----->地址、数据、控制
(4)时间特性:信号的时序关系
3、总线的性能指标
(1)总线宽度:数据线的根数(单位bit)
(2)总线宽带:每秒传输的最大字节数(MBps)
(3)时钟同步/异步:同步、不同步
(4)总线复用:地址线与数据线复用----->目的减少显得总数
(5)信号线数:地址线、数据线和控制线总和
(6)总线控制方式:突发(传一个地址把剩下数据读取出来)、自动、仲裁、逻辑、计数
(7)其他指标:负载能力
总线带宽 = 总线频率 * 总线宽度 / 8 (MBps)
4、总线标准
总线标准:PCI、USB、PCI-E------->经常考
(1)PCI---集中式
(2)USB:串行接口,共四根线----->2根电源,2根传数据
2.4 总线结构
1、单总线结构--->见3.1
2、多总线结构
(1)双总线结构
通道:I/O设备的处理器(数的一个中转)------>408不考,自主看看
(2)三总线结构
(3)三总线结构的又一形式
(4)四总线结构
3、PCI总线
4、多层PCI-E总线结构
2.5 总线控制
1、总线的判优控制(总线仲裁)
1.1 基本概念
(1)主设备(模板):对总线有控制权
(2)从设备(模块):响应从主设备发来的总线命令
(3)总线判优控制:
-
集中式:链式查询(菊花链)、计数器定时查询、独立请求方式
- 分布式
1.2 链式查询方式-----2根线
注:有一个优先级的问题,优先级高的排在首处;对电路极其敏感
1.3 计数器定时查询------log2N根总线
注:相对于链式总线少了BG,增加了设备地址,比链式查询方式公平
1.4 独立请求方式------2N根总线
2、总线通信的控制---总线定时(时序)
目的:解决通信双方协调配合的问题
2.1 总线传输周期---一次总线操作的时间
(1)申请分配阶段:主模板申请,总线仲裁决定
(2)寻址阶段:主模板向从模板给出地址和命令
(3)传数阶段:主模板和从模板交换数据
(4)结束阶段:主模板撤销有关消息
2.2 总线通信的四种方式
(1)同步通信:由统一时标控制数据传送----考虑设备的影响
(2)异步通信:采用应答方式,没有公共时钟标准
(3)半同步通信:同步、异步结合
(4)半离式通信:充分挖掘系统总线每个瞬间的潜力
2.2.1 同步数据输入--读入CPU
2.2.2 同步式数据输出--写入存储器
注:总的来说,读的操作比写的操作更容易一些
2.2.3 异步通信机制(握手机制)
(1)不互锁:可靠性比较差,但效率比较高;在单机环境可靠性较高。
(2)半互锁:提高可靠性
(3)全互锁:效率降低,可靠性很好;(与计算机网络中TCP类似)
2.2.4 半同步通信(异步、同步结合)
(1)同步:
发送方用系统时钟前沿发信号
接收方用系统时钟后沿判断、识别
(2)异步:
允许不同速度的模块和谐工作
增加一条“等待”响应信号----->
上述三种通信的共同点:一个总线传输周期(以输入数据为例)
-
主模板发地址、命令--------占用总线
-
从模板准备数据--------------不占用总线,总线空闲
-
从模板向主模板发数据-----占用总线
2.2.5 分离式通信
在一个总线传输周期,充分挖掘纵总线每个瞬间的潜力
(1)子周期1 :主模块申请占用总线,使用完后即放弃总线的使用权
(2)子周期2 :从模块准备好数据申请占用总线,将各种信息送至总线上
分离式通信特点:
-
各模块有权申请占用总线
-
采用同步方式通信,不等对方回答
-
各模块准备数据时,不占用总线
-
总线被占用时,无空闲,充分提高总线的有限占用