计算机组成原理学习3笔记1
第三章 系统总线
总线(bus)的概念:总该你是连接 各个部件的信息传输线,是各个部件共享的传输介质,在任何时候都只能有一个 部件在使用
信息的传输方式:串行(距离较长)、并行(距离较短,常机器内)
总线结构的计算机举例
问题:总线是系统的瓶颈;IO运行时,主存、CPU会停止在运行(同一时刻只有一个设备使用总线)
问题:主存与IO无法直连,当发生外设与主存之间进行交流时,CPU执行的任务会被打断
问题:也不能满足很高要求
总线分类
分类标准:
位置:片内总线(芯片内部的总线)、系统总线(计算机个部件之间的信息传输线{数据总线(双向;与机器字长、存储字长有关)、地址总线(单向;与存储地址、IO地址有关;通常情况下,地址总线条数与地址单元个数相关;地址总线宽度与MAR寄存器的宽度一样)、控制总线(有出 有入)})、通信总线(用于计算机系统之间或计算机系统和其他系统之间的通信)
总线的特性及性能指标
总线的物理实现
总线特性:机械特性(尺寸形状管脚数、排列顺序)、电气特性(传输防线和有效的电平范围)、功能特性(没跟传输线的功能)、时间特性(信号的时序关系)
总线性能指标:总线宽度(数据线的根数)、标准传输率(每秒传输的最大字节数)、时钟同步/异步、总线复用(地址线与数据线共用/复用,eg,8086地址线和数据线进行复用,20个地址线中有16条也作为数据线,复用目的是减少芯片管脚数)、信号线数(各线路的总和)、总线控制方式(突发、自动、仲裁、逻辑、计数)、其他(eg,负载能力)
注:总线时钟是挂在总线上的器件之间进行通信所参照的时序,与总线位数无关,总线上的每一位在通信时都要以此时钟为参考。以8086为例,总线接口部件通过总线访问存储器,访问一次需要4个时钟周期,这4个时钟周期成为1个总线周期。
总线上只有在通信时才会出现时钟。
总线标准:
总线结构:单总线结构、多总线结构
双总线结构:常把存储总线和IO总线分离,两者之间通过通道(具有特殊功能的处理器,由通道对IO同意管理,通常由操作系统非人工编写)连接
三总线结构:1.外部设备可直接访问主存
2.另一种(因为CPU运行速度太快,主存跟不上)
四总线结构(高速、低速设备分离)
PCI总线
总线控制(重难点)
1.总线判优控制
分类依据:能否提出总线占用申请
主设备(模块),对总线有控制权,可以提出占用请求
从设备(模块),只能 响应 从主设备发来的总线命令,无法提出占用请求
总线判优控制方法:
集中式:链式查询,计数器定时查询,独立请求
分布式
链式查询(最简单)
电路结构
数据总线,用于信息交换中数据的传输
地址总线,查找从设备地址
BR:总线请求
BS:总线满
BG:总线同意
挂在总线上的IO接口有总线占用请求,就用BR来向总线控制部件提出占用请求;
通过BG逐个向下查询是哪个部件提出了总线占用请求,直到碰到第一个提出占用请求的部件,然后该部件通过BS线设置总线忙;
这个过程中的各设备优先级与BG相关;
缺点,对电路故障特别敏感,尤其是BG这条线
优点,结构简单,增删设备容易,优先级设计容易实现,进行可靠性设计容易实现(将BS/BG换成两条线)
计数器定时查询
电路结构
设备地址线,地址由计数器给出,通过这个地址来查询哪个设备是否发出了总线占用请求
总线控制部件里有一个计数器,初值为0;
当一个设备发出总线占用请求,当可以让出总线使用权时,启动计数器(通过设备地址线向外传输),设计数器初值为0,然后检测IO0,若IO0没有请求,则计数器+1,然后接着查找IO1……
可以通过计数器的初值设定,可以灵活调整优先级顺序
那么需要多少线呢?设备地址线宽度和设备数有关,假设有 n个设备,进行二进制编码,那么至少需要ceil(log2(n)),那么设备地址也至少需要ceil(log2(n))+BR+BS,即ceil(log2(n))+2
独立请求方式
对比,前两种查询方式都是按顺序进行查找,速度慢;独立请求速度更快
结构
任何一个 IO接口都增加了两线:BR、BG
优先级排队是在总线控制部件内部的排队器决定,非常灵活,也可以和其他方式一起混合使用
哪个BG得到应答那么哪个设备得到占用权
缺点:线数多
2.总线通信控制
目的 解决主设备和从设备之间的 协调配合 问题
总线传输周期
申请分配阶段(主模块申请,总线仲裁决定)、寻址阶段(主模块向从模块给出地址和命令)、传数阶段(主从模块 交换数据)、结束阶段(主模块 撤销有关信息)
总线通信方式:同步通信(由同意时标控制数据传送),异步通信(采用应答方式,没有公共时标),半同步通信(同步、异步结合 ),分离式通信(充分挖掘系统总该你每一瞬间的潜力,让系统总线发挥最大的效力)
同步数据输入——定宽定距的时标来控制整个过程;在固定时间点上,要给出固定操作
同步数据输出
对于同步方式:所有从模块都用同一个时标进行控制,在同一个时限内完成规定操作;主从模块是强制同步;对多个不同模块,选择速度最慢的模块进行时标设计 用于速度一致、总线长度较短的情况
异步通信
没有定宽定距的要求,但多了两条线,请求线和应答线
1.不互锁
通信可靠性不足
改进
2.半互锁
如果主设备没有收到从设备的应答信号,那么主设备不撤销请求,反之撤销
半互锁可能引起请求无法撤销
改进,全互锁
主设备只有撤销请求信号,从设备才会撤销应答信号
异步通信:请求、回答
半同步通信(同、异结合)
半同步,允许不同速度的主从设备之间进行信息交流
此时还有一段时间总线空闲,没有充分 利用
改进:分离式通信
分离式通信:充分挖掘系统总线每个瞬间的潜力