【计算机组成原理·笔记】总线控制

总线控制

总线上连接多个部件,为了解决:

  • 什么时候由哪个部件发送信息
  • 如何给信息传送定时
  • 如何防止信息丢失
  • 如何避免多个部件同时发送
  • 如何规定接受信息的部件

等一些列问题,需要总线控制线进行统一管理,这就是总线控制,包括两个方面:

  • 判优控制
  • 通信控制

判优控制

总线判优控制,又称总线仲裁,可以再分为两类:

  • 集中式控制
  • 分布式控制

总线上连接的设备,可以分为主设备(模块)和从设备(模块),主设备对总线享有控制权,从设备只能响应来自主设备的总线命令

集中式控制

  1. 链式查询

控制总线上其中3根用于总线控制,分别是:BS(总线忙)、BR(总线请求)和BG(总线统一):

总线控制-链式查询

BG信号串行,若某接口由BR请求,则该接口连接的设备获取总线使用权,并建立BS,表示它已经占用了总线。因此离控制部件越近的设备,优先级越高
仅需 2 根线即可确定总线使用者

优点:

  • 简单
  • 易扩展

缺点:

  • 对电路故障敏感
    如果第i个设备的接口故障,i之后的设备都无法使用
  • 优先次序固定
  • 优先级低的设备可能饥饿
  1. 计数器定时查询

相比链式查询,去掉了BG总线,添加了设备地址线:

总线控制-计数器定时查询

扫描二维码关注公众号,回复: 15168615 查看本文章

当产生BR请求时,如果BS=0时,计数器开始计数,当计数值与其中一个请求使用总线的设备的地址一致时,技术终止,该设备或者总线使用权
需要 log ⁡ 2 n \log_2 n log2n 根线确定使用设备,n 是允许接纳的最大设备数

优点:

  • 优先次序可变
  • 对电路故障不敏感

缺点:

  • 增加了一组设备线,设备需要对设备线的信号译码,控制变复杂
  1. 独立请求方式

每台设备都拥有一对BR线和BG线,总线控制部件内有一个排队器:

总线控制-独立请求

当设备请求总线时,发出BR信号,如果总线忙(BS=1),就进入排队,排队电路根据一定的规则指定排队中的设备的优先次序
需要 2n 根线确定使用设备,n 是允许接纳的最大设备数

优点:

  • 次序灵活可变(可通过程序指定)
  • 响应快
  • 可以屏蔽某设备的请求

缺点:

  • 控制线数量众多,总线控制最为复杂

★ 当代总线控制标准普通采用独立请求方式

通信控制

总线周期:完成依次总线操作的时间

  1. 申请分配:主设备请求
  2. 寻址阶段:主设备找需要的从设备
  3. 传数阶段:主从设备数据交换
  4. 结束阶段:主设备让出总线

总线通信控制解决通信双方如何获知传输开始和传输结束,以及通信双方如何协调配合的问题。常用的四种通信方式:同步通信、异步通信、半同步通信和分离式通信。

  • 同步通信
    统一时标 控制数据传输

优点:

  • 规定明确统一,配合简单
  • 适合总线短,部件存取时间一致的场景

缺点:

  • 主从时间配合强制同步,不得不按最低速设备的速度设计公共时钟
  • 异步通信
    采用 应答方式,可分为 不互锁、半互锁 和 全互锁 三种

优点:

  • 解决了同步通信的缺点
  • 半同步通信
    同步、异步结合:

    • 同步:
      • 发送方 用 时钟前沿 发信号
      • 接收方 用 时钟后沿 判断识别
    • 异步:
      • 不同速度设备协调工作
      • 增加 WAIT(等待响应信号)线
        优点:
    • 兼容了同步和异步的优点
  • 分离式通信
    充分挖掘系统总线每个瞬间的潜力:

    • 各模块有权占用总线
    • 同步通信
    • 各模块准备数据时,不占用总线
    • 总线被占用时,无空闲

提高了总线的有效占用率

猜你喜欢

转载自blog.csdn.net/m0_51810668/article/details/131022707