第三章 系统总线
分散连接
以运算器为中心,严重影响CPU的工作效率–>以存储器为中心,IO和主存之间交换信息可以不通过运算器,采用中断、DMA技术提高CPU效率
总线连接
某一时刻,只允许有一个部件向总线发送信息,而多个部件可以同时从总线上接收相同的信息
面向CPU的双总线结构
连接CPU和主存的叫存储总线(M总线) 建立CPU和各IO之间交换信息的通道叫输入输出总线(I/O总线) 这种结构IO设备与主存交换信息时还要占用CPU,影响效率
单总线结构
只有一组总线,出现争夺现象
以存储器为中心的双总线结构
在单总线基础上,单独开辟一条CPU与主存之间的通路,叫存储总线,速度高,只供主存和CPU之间传输信息
现在计算机大多采用该结构
1、片内总线
2、系统总线
按系统传输信息的不同,分为三类
数据总线
双向传输,数据总线的条数成为数据总线宽度,用以衡量系统性能
e.g如果数据总线宽度8位,指令字长16位,取指时,必须两次访问主存
地址总线
指出数据总线上源或目的数据的地址
单向传输
地址线的位数与存储单元的个数有关
e.g地址总线20根,对应的存储单元个数是2^20
控制总线
控制各部件在不同时刻占有总线使用权
对任一控制而言,传输是单向的,但对于控制总线总体来说,可认为是双向的
3、通信总线
串行通信总线
并行通信总线
机械特性、电气特性、功能特性、时间特性 总线性能指标
总线结构
单总线结构
多总线结构
双总线结构的特点是将速度较低的IO设备从单总线上分离出来,形成主存总线与IO总线分开的结构
其中通道是一个具有特殊功能的处理器,CPU将一部分功能下放给通道,用于管理IO设备
三总线结构
主存总线用于CPU与主存之间的传输
IO总线供CPU与各类IO之间传递信息
DMA总线用于高速外设(磁盘、磁带等)与主存之间交换信息
注:任一时刻只能使用一种总线,主存总线和DMA总线不能同时对主存进行存取,IO总线只有在CPU执行IO指令时才用到
三总线的又一形式
CPU和Cache之间有一条局部总线,它将CPU与Cache或与更多的局部设备连接
Cache的控制机构不仅将Cache连到局部总线上,而且还直接连到系统总线上,这样Cache就可通过系统总线与主存传输信息
总线控制
总线判优控制
集中控制
分布控制
常见的集中控制有三种优先权仲裁方式
链式查询
BS总线忙、BR总线请求、BG总线同意
BG是串行传递的,如果BG到达的接口有BR,BG就不往下传了,意味着该接口获得了总线使用权,并建立BS信号表示占用
特点:
查询链中,离总线控制部件最近的设备具有最高的优先级
只需要两根线,容易扩充设备、但对故障敏感
计数器定时查询
与链式查询相比,多了一组设备地址线,少了一根总线同意线BG
控制部件接收到BR后,在总线未被占用的情况下(BS=0),计数器开始计数,向各设备发出一组地址信号,当某个有总线请求的设备地址与计数值一致时,获得总线使用权,终止计数查询
特点:
计数可以从0开始,此时设备的优先次序是固定的
计数也可以从终点开始,循环方法,所有设备优先级相等
计数初始值可以修改设置,故优先级次序可以改变
对电路故障不敏感,增加了主控制线,控制复杂
大致用log2n根线
独立请求方式
每个设备都有一对BR和BG,总线控制部件中有一排队电路,可根据优先次序确定响应哪一个设备
特点:
响应速度快,优先次序控制灵活
控制线数量多,总线控制更复杂
需要2n根线
总线通信控制
总线在完成一次传输周期时,可分为四个阶段:
申请分配阶段
寻址阶段
传数阶段
结束阶段
通信双方如何协调如何配合
同步通信
通信双方由统一时标控制数据传送,时标通常是CPU总线控制部件发出的,保持同步
一般用于总线长度较短,各部件存取时间比较一致的场合
异步通信
采用应答模式
可以分为不互锁、半互锁、全互锁
不互锁
通信双方无依赖关系
半互锁
主模块发出请求等待从模块回答后,再撤销请求,而从模块发出应答后,不等待主模块,一段时间后撤销回答信号
全互锁
主模块发出请求,待从模块回答后撤销请求;从模块应答后,待主模块获知后,再撤销应答
半同步通信
保留了同步通信的基本特点,发出时间严格按照系统时钟的某个前沿开始,接收方都采用系统时钟后沿时刻进行判断识别
又像异步通信那样,允许不通速度的模块和谐工作,为此增设了WAIT响应信号线
一般用于系统工作速度不高,但各设备之间速度差异大的简单系统
分离式通信
讲一个总线周期分解成两个子周期,在第一个子周期中,主模块A获得总线使用权后将信息和该主模块的编号发到系统总线上,发完就放弃总线使用权
B模块从总线上接收到了A发来的命令,读取等一系列操作后准备好A需要的数据,B就申请总线使用权,一旦获准,B就把A的编号、B的地址、A需要的数据发到总线上,供A接收
上述两个周期只有单方向的信息流,每个模块都变成了主模块
特点:
1234