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

news/2024/4/19 0:10:11

总线控制

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

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

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

  • 判优控制
  • 通信控制

判优控制

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

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

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

集中式控制

  1. 链式查询

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

总线控制-链式查询

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

优点:

  • 简单
  • 易扩展

缺点:

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

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

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

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

优点:

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

缺点:

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

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

总线控制-独立请求

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

优点:

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

缺点:

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

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

通信控制

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

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

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

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

优点:

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

缺点:

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

优点:

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

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

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

提高了总线的有效占用率


https://dhexx.cn/news/show-4626192.html

相关文章

angular环境安装 (含nodejs详细安装步骤)

在安装本次环境之前,需要先把本机上的nodejs环境卸载,环境变量手动删除!安装过程种环境才不会产生副作用!实际项目安装的一次记录,踩了太多坑,记录一下,旨在记录!项目需要两个不用版…

网络重置后无法上网,以太网和无线网全部丢失,网络适配器出现“56”错误码

文章目录 一、问题描述电脑系统:电脑问题:解决方案 二、问题过程1. IP问题2.网络重置问题3.电脑无法启动问题 三、解决方案1.卸载2.安全模式检查修复3.软件下载1.CCleaner2.驱动精灵万能网卡版 四、参考链接 一、问题描述 电脑系统: Window…

一次诡异405 METHOD_NOT_ALLOWED “Request method ‘POST‘ not supported“问题排查记录

概述 任何稍微只要有一点经验的开发者都知道HTTP 405,表示方法不支持。如,本来是定义为POST接口,前端使用GET请求,就会报错。 但是我还真遇上一次405 METHOD_NOT_ALLOWED "Request method POST not supported"问题&am…

【考研·数据结构】408真题 (2012年42题) 寻找第一个公共后缀的位置】

代码思路: 代码思路如下: 定义两个指针 p 和 q 分别指向链表 str1 和 str2 的第一个节点(即头结点的下一个节点),并进行循环。对于每个节点 p,都将指针 q 重新指向链表 str2 的第一个节点,然后…

红黑树的 概念性质 和 详解实现(插入旋转等)

文章目录 概念满足的条件性质实现红黑树的定义红黑树节点插入操作情况一情况二情况三Insert()总代码 其余操作左右单旋RotateL 左单旋RotateR 右单旋prevCheck 红黑树性质检测isBalance 红黑树平衡判断InOrder 中序遍历 完整代码 概念 红黑树,是一种二叉搜索树&…

插入排序,选择算法与快速排序(c语言,Java语言)

插入排序 原理:从数组的第二个元素开始,将数组中的每一个元素按照(升序或者降序)规则插入到已排好序的数组中以达到排序的目的。 插入排序并不是将元素取出来,插入到合适位置,之后的元素的位置依次加一,而…

职场恶霸00后,看完这篇你就知道了

在程序员职场上,什么样的人最让人反感呢? 是技术不好的人吗?并不是。技术不好的同事,我们可以帮他。 是技术太强的人吗?也不是。技术很强的同事,可遇不可求,向他学习还来不及呢。 真正让人反感的,是技术平平&#x…

小白如何快速入门?

入门 Web 安全、安卓安全、二进制安全、工控安全还是智能硬件安全等等,每个不同的领域要掌握的技能也不同。当然入门 Web 安全相对难度较低,也是很多人的首选。主要还是看自己的兴趣方向吧。 本文就以下几个问题来说明网络安全大致学习过程&#x1f447…

【求 一个人去给多个人拜年 的最短路径】【枚举所有 拜访顺序】新年好

专注 效率 记忆 预习 笔记 复习 做题 欢迎观看我的博客,如有问题交流,欢迎评论区留言,一定尽快回复!(大家可以去看我的专栏,是所有文章的目录)   文章字体风格: 红色文字表示&#…

由于找不到msvcr90.dll无法继续执行代码的5个修复方法

msvcr90.dll是Microsoft Visual C 2008 Redistributable软件包中的一个库文件,它是用于在Windows操作系统上运行C应用程序的重要文件之一。当我们电脑系统中的msvcr90.dll丢失或者损坏了,就会导致很多软件跟游戏无法打开运行,会提示“由于找不…