type
status
date
slug
summary
tags
category
icon
password
Property
总线的基本概念
- 为什么要总线:计算机各个部件之间需要通信,但是不能简单的使用两两连接的方式
- 什么是总线:
- 是连接各个部件的信息传输线
- 是各个部件之间共享的传输介质
- 总线上信息的传输:
- 串行,一位一位传输
- 并行,多位共同传输,不能远距离传输,防止互相之间的干扰
总线结构
- 单总线:
每次只能一对设备传输信息,总线成为瓶颈
- 双总线,以CPU为中心:
主存和CPU之间的交流繁忙,使用专用的总线。但是CPU为中心导致了CPU的过于繁忙
- 双总线,以主存为中心:
但是不能同时对主存进行读写操作,主存同时只能对一条总线做数据传输
总线的分类
- 片内总线:芯片内部的总线
- 系统总线:计算机各个部件之间传输信息的总线
- 数据总线:双向,与机器字长,存储字长有关
- 地址总线:单向,与存储地址,I/O地址有关
- 控制总线:双向,用于传输信号,例如:中断信号,存储信号等等
- 通信总线:用于计算机系统之间或计算机系统与其他系统(如控制仪表、移动通信等)之间的通信,按传输方式分为串行总线和并行总线
总线的特性和性能指标
总线物理实现
在主板上将设备插入对应的插槽就完成了总线的连接
总线特性
- 机械特性:尺寸,形状,管脚数,排列顺序
- 电器特性:传输方向和有效电阻范围
- 功能特性:每根传输线的具体功能(地址,数据,控制)
- 时间特性:信号的时序关系
性能指标
- 总线宽度:数据线的根数
- 标准传输率:每秒传输的最大字节数
- 时钟同步/异步
- 总线复用:地址线与数据线复用
- 信号线数:地址线,数据线和控制线的总和
- 总线控制方式:突发,自动,仲裁,逻辑,计数
- 其他指标:负载能力,能为多少IO提供服务
总线标准
总线结构
单总线结构
多总线结构
双总线结构
通道相当于一个简单的CPU,用于IO的管理
三总线结构
三总线结构的又一形式
cache用于对于主存部分内容进行缓存,原因是主存的速度原因跟不上CPU
四总线结构
拓展总线接口:用于连接低速设备
总线结构举例
传统微型机总线结构
VL-BUS局部总线结构
PCI总线结构
多层PCI总线结构
总线控制
总线同一时间只能有一对设备使用,当多个设备同时发出信号如何处理
总线判优控制
基本概念:
- 主设备:对总线有控制权
- 从设备:响应从主设备发来的总线命令
- 判优控制方式:
- 集中式:集中到一个设备判断
- 链式查询
- 计算机定时查询
- 独立请求方式
- 分布式
BR:总线请求,所有设备都通过这条线发出总线占用请求
BS:总线忙,当某个设备占用了总线控制权,通过总线忙告诉控制部件
BG:总线授权
当某个设备发出BR,总线控制部件得知,通过BG线判断哪个设备的优先级高,从而得到使用权。优先级和I/O设备的被查询位置有关。对电路故障敏感,尤其是BG信号。
设备地址线:用于标记IO设备,用来询问某个设备是否发出了控制请求
某个设备发出BR信号,总线控制部件从某设备开始查询(根据计数器决定)当询问到某设备需要总线就发出一个BS信号。获得总线使用权
优先级确定灵活,可以通过软件方式
需要对设备进行编码
每个I/O都对总线控制部件有独立的总线连接,总线控制部件内部存在一个排队器进行判优
总线通信控制
目的:解决通信双方协调配合问题
总线传输周期:完成一次传输需要的时间
- 申请分配阶段: 主模块申请,总线仲裁决定
- 寻址阶段:主模块向从模块 给出地址 和 命令
- 传输阶段:主模块和从模块交换数据
- 结束阶段:主模块撤消有关信息
总线通信的四种方式:
- 同步通信:由统一时标控制数据传输
- 异步通信:采用应答方式,没有公共时钟标准
- 半同步通信:同步、异步结合
- 分离式通信:充分挖掘系统总线每个瞬间的潜力
同步式数据输入
假设一次数据传输使用了四个时钟周期,其中在第一个时钟周期的上升沿,主设备发出地址信号并持续,第二个时钟周期发出读信号,第三个时钟周期从设备需要将需要数据发送到数据线上,第四个时钟周期主设备取消地址的传送和命令的传送。
同步式数据输出
先给出数据,保证数据存在,再给出写命令,保证当写命令到达从设备,可以立即将数据写入从设备相应地址中
异步通信
需要增加两条线路,请求线和应答线
- 不互锁:主设备发出请求,从设备接收数据,都到了一段时间断开
- 半互锁:主设备收到从设备的对应自己的请求的回答后再断开
Tips:当回答未接收到,但是从设备中断了,会发生主设备的请求持续,这有点类似与TCP/IP协议的四次挥手,当客户端回应了对于服务器的断开连接的请求,这时候客户端进入了time_wait状态持续时间为最大报文生存时间,这就是防止出现,当客户端发送了ACK包,但是服务器没有接收到导致了服务器一直处于连接状态。
- 全互锁:主设备收到对方的回应后再断开
这种方式可以做到当一段时间后主设备没有收到从设备的中断回复再发出一次询问,TCP的四次挥手也是作用超时重发FIN包的方式。
半同步通信(同步、异步结合)
以输入数据为例的半同步通信时序
当主设备接收到wait信号表示从设备没有准备好数据
总结上述三种通信的共同点
一个总线传输周期(以输入数据为例):
- 主模块发送地址和命令 占用总线
- 从模块准备数据 不占用总线,总线空闲
- 从模块向主模块发数据 占用总线找到一个合适的方式利用此模块的准备数据的时间,以此来节约时间
分离式通信
分离式通信特点
- 各模块有权申请占用总线
- 采用同步方式通信,不等对方回答
- 各模块准备数据时,不占用总线
- 总线被占用时,无空闲
充分提高了总线的有效占用