总线的基本概念

为什么要用总线

计算机系统的五大部件之间有两种互联方式:分散连接、总线连接。

分散连接:各部件之间使用单独的连线。(分散连接会使系统难以扩展,所以引入总线结构。)

总线连接:将各部件连接到一组公共信息传输线上。

什么是总线

总线是连接各个部件的信息传输线,是各个部件共享的传输介质

总线上信息的传输

串行:信息在总线上按位传输。常用与计算机与计算机之间。

并行:信息在总线上多位传输。需要多条数据线平行传输,所以,若传输距离过长,数据线之间容易发生干扰。常用于单个计算机内部。

总线结构的计算机举例

  1. 单总线结构框图

    单总线结构框图

    缺点:设备的利用率低。在同一时刻,只有一对设备能使用总线。

  2. 面向CPU的双总线结构框图

    面向CPU的双总线结构框图

    缺点:主存和外部设备之间无直接通路。若两者之间需要通信,会打断CPU的运行。

  3. 以存储器为中心的总线结构框图

    以存储器为中心的总线结构框图

总线的分类

  1. 按连接部件不同:

    (1) 片内总线:芯片内部的总线。

    (2) 系统总线:计算机各部件之间的信息传输线。

    ① 数据总线:双向,与机器字长、存储字长有关。
    
    ② 地址总线:单向,与存储地址、I/O地址有关。
    
    ③ 控制总线:有出(存储器读、写,总线许可,中断确认)有入(中断请求、总线请求)。

    (3) 通信总线:用于计算机系统之间计算机系统与其他系统(如控制仪表、移动通信等)之间的通信。

  2. 按传输方式:并行传输总线、串行传输总线。

总线特性及性能指标

总线物理实现

总线物理实现
总线物理实现

总线特性

  1. 机械特性:尺寸、形状、管脚数排列顺序

  2. 电气特性:传输方向和有效的电平范围。

  3. 功能特性:每根传输线的功能(地址、数据或控制)。

  4. 时间特性:信号的时序关系。

总线的性能指标

  1. 总线宽度:数据线的根数。

  2. 标准传输率:每秒传输的最大字节数(MBps)。

  3. 时钟同步/异步:同步不同步(不等同于异步)。

  4. 总线复用:地址线数据线复用。

  5. 信号线数:地址线、数据线和控制线的总和

  6. 总线控制方式:突发、自动、仲裁、逻辑、计数。

  7. 其他指标:负载能力

总线标准

总线标准
总线标准

总线结构

单总线结构

单总线结构
单总线结构

多总线结构

  1. 双总线结构
双总线结构
双总线结构
  1. 三总线结构
三总线结构1
三总线结构1
三总线结构2
三总线结构2
  1. 四总线结构
四总线结构
四总线结构

总线结构举例

  1. 传统微型机总线结构

    传统微型机总线结构

  2. VL-BUS局部总线结构

    VL-BUS局部总线结构

  3. PCI总线结构

    PCI总线结构

  4. 多层PCI总线结构

    多层PCI总线结构

总线控制

总线判优

  1. 基本概念

    • 主设备(模块):对总线有控制权

    • 从设备(模块):响应从主设备发来的总线命令。

    • 总线判优控制:决定由哪个主设备占用总线。分为集中式、分布式两种。

  2. 总线判优控制(集中式)

    (1) 链式查询方式

    I/0接口n获得总线使用权的过程I/0接口n发出BR(总线请求),然后总线控制部件发出BG(总线统一)I/0接口n再发送BS(总线忙)

    链式查询方式

    (2) 计数器定时查询方式

    I/0接口n获得总线使用权的过程:I/0接口n发出BR总线控制部件,若可以给出总线使用权,则启用计数器,并初始化为0。总线控制部件通过设备地址(线)访问设备0,检查其是否发出了BR;若否,计数器+1,再访问设备1……若检查至设备n,且设备n发出了BR,则设备n发送BS

    优点:设备(接口)的优先级设置非常灵活。

    计数器定时查询方式

    (3) 独立请求方式

    I/O接口n获得总线使用权的过程:直接向总线控制部件发送BR,比对排队器里的序列,向对应I/O接口发送BG信号即可。

    优点:每个I/O接口都有独立的BR和BG。优先级的设置更加灵活,只需要管理总线控制部件的排队器即可。

    独立请求方式

总线通信控制

  1. 目的

    解决通信双方协调配合问题。

  2. 总线传输周期

    (1) 申请分配阶段:主模块申请,总线仲裁决定。

    (2) 寻址阶段:主模块向从模块给出地址命令

    (3) 传数阶段:主模块和从模块交换数据

    (4) 结束阶段:主模块撤销有关信息

  3. 总线通信的四种方式

    (1) 同步通信:由统一时标控制数据传送。

    ① 同步式数据输入

    T1 - 主模块发地址
    
    T2 - 主模块发读命令。
    
    T3 - 从模块提供数据。
    
    T4 - 主模块撤销读命令,从模块撤销数据。

    同步式数据输入

    ② 同步数据输出

    T1 - 主模块发地址。
    
    T1.5 - 主模块提供数据。
    
    T2 - 从模块发出写命令,从模块接收到命令后,必须在规定时间内将数据总线上的数据写到    地址总线所知名的单元中。
    
    T4 - 主模块撤销写命令和数据等信号。

    同步式数据输出

    (2) 异步通信:采用应答方式,没有公共时钟标准。

    ① 不互锁方式:请求和回答互不相关。无法保证通信的可靠性。

    ② 半互锁方式:主模块接到从模块发送的回答信号,才撤销请求信号。可能会造成请求信号一直保持高电平状态

    ③ 全互锁方式:主模块的请求信号撤销以后,从模块才撤销其回答信号。

    异步通信

    (3) 半同步通信:同步、异步结合

    同步:发送方用系统时钟前沿发信号;接收方用系统时钟后沿判断、识别。

    异步:允许不同速度的模块和谐工作。增加一条“等待”响应信号。($\overline{WAIT}$)

    以输入数据为例:

    T1 - 主模块发出地址信号。

    T2 - 主模块发出命令。

    Tw - 当$\overline{WAIT}$为低电平时,进入等待,Tw的宽度与T的宽度一致。

    . . .

    T3 - 从模块提供数据。

    T4 - 主模块撤销读命令,从模块撤销数据。

    半同步式数据输入

    上述三种通信(同步、异步、半同步)的共同点:

    • 一个总线传输周期(以输入数据为例)

      • 主模块发地址、命令(占用总线

      • 从模块准备数据(不占用总线总线空闲

      • 从模块向主模块发数据(占用总线

    (4) 分离式通信:充分挖掘系统总线每个瞬间的潜力。

    原因:上述三种通信从模块准备数据时,总线处于空闲状态!

    一个总线传输周期:

    • 子周期1:主模块申请占用总线,使用完后即放弃总线的使用权。

    • 子周期2:从模块申请占用总线,将各种信号送至总线上。

    特点:

    ① 各模块有权申请占用总线。
    
    ② 采用同步方式通信,不等对方回答。
    
    ③  各个模块准备数据时,不占用总线。
    
    ④ 总线被占用时,无空闲。