[总线仲裁]

news2024/11/15 10:59:39

目录

  • 一. 集中仲裁方式
    • 1.1 链式查询方式
    • 1.2 计数器查询方式
    • 1.3 独立请求方式
  • 二. 分布式仲裁方式

总线仲裁是为了解决多个设备争用总线这个问题
\quad

一. 集中仲裁方式

\quad

在这里插入图片描述
集中仲裁方式: 就像是霸道总裁来决定谁先获得总线控制权
分布仲裁方式: 商量着谁先获得总线控制权

工作流程:
1.主设备发出请求信号;
2.若多个主设备同时要使用总线,则由总线控制器(一般集成在CPU)的判优、仲裁逻辑按一定的优先等级顺序确定哪个主设备能使用总线;
3.获得总线使用权的主设备开始传送数据。

\quad

1.1 链式查询方式

\quad

在这里插入图片描述
在这里插入图片描述
首先一个或多个设备接口通过BR向总线控制部件请求使用总线, 这时BG就会传输一个高电平, 设备接口0并不使用总线,接下来就传到设备接口1, 它想要使用总线, 那么设备接口1就会通过BS传递信号表示总线现在被我占用了

在这里插入图片描述
而后总线控制部件就撤回BG的高电平
\quad

在这里插入图片描述
优点:链式查询方式优先级固定。(可以把重要的设备排在前面)
只需很少几根控制线就能按一定优先次序实现总线控制,结构简单,扩充容易。

\quad

缺点:对硬件电路的故障敏感,并且优先级不能改变。(比如设备0坏了, 设备1之后的就不能获得总线控制权了)
当优先级高的部件频繁请求使用总线时,会使优先级较低的部件长期不能使用总线。

\quad

1.2 计数器查询方式

\quad

在这里插入图片描述
设备地址线是多根的, 比如有8个接口就需要3根设备地址线

首先一个或多个设备接口通过BR向总线控制部件请求使用总线, 这时计数器开始计数, 计数器为0的时候,设备地址就去询问接口0要不要使用总线, 接口0不使用总线, 这时计数器变为1, 设备地址询问到接口1, 接口1是要使用总线的

在这里插入图片描述

这时接口1就会通过BS向总线控制部件传递总线忙, 而计数器就会中止计数

优点:
1.计数初始值可以改变优先次序
-计数每次从“0”开始,设备的优先级就按顺序排列,固定不变;
-计数从上一次的终点开始,此时设备使用总线的优先级相等;(形成闭环, 就是从0-n, 在从n-0, 所以优先级相等)
-计数器的初值还可以由程序设置
2.对电路的故障没有链式敏感(因为是通过设备地址来访问的)

缺点:
1。增加了控制线数
-若设备有N个,则需 l o g 2 N log_2N log2N+2条控制线(这里的2就是BS和BR)
2。控制相对比链式查询相对复杂

\quad

1.3 独立请求方式

\quad

在这里插入图片描述
每个设备接口都有独立的总线请求BR和总线允许BG, 比如设备接口1和设备接口n同时向总线控制部件发送总线请求, 这时总线控制里的排队器就会给这两个设备排队, 比如设备接口n排在前面, 那么总线控制部件就会向设备接口n发送总线允许, 接口n也会通过BS发送设备忙

优点:
1.响应速度快,总线允许信号BG直接从控制器发送到有关设备,不必在设备间传递或者查询。
2.对优先次序的控制相当灵活。

缺点:
1.控制线数量多
-若设备有n个,则需要2n+1条控制线。
其中+1为BS线,用于设备向总线控制部件反馈已经是否正在使用总线。
2.总线的控制逻辑更加复杂

\quad
\quad
在这里插入图片描述

\quad

二. 分布式仲裁方式

\quad
在这里插入图片描述
\quad

王道考研计算机组成原理

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1324816.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SQL学习笔记+MySQL+SQLyog工具教程

文章目录 1、前言2、SQL基本语言及其操作2.1、CREATE TABLE – 创建表2.2、DROP TABLE – 删除表2.3、INSERT – 插入数据2.4、SELECT – 查询数据2.5、SELECTDISTINCT – 去除重复值后查询数据2.6、SELECTWHERE – 条件过滤2.7、AND & OR – 运算符2.8、ORDER BY – 排序2…

Linux:终端定时自动注销

这样防止了,当我们临时离开电脑这个空隙,被坏蛋给趁虚而入 定几十秒或者分钟,如果这个时间段没有输入东西那么就会自动退出 全局生效 这个系统中的所有用户生效 vim /etc/profile在末尾加入TMOUT10 TMOUT10 这个就是10 秒,按…

Panoply查看nc文件的时间维

打开的是全球灌溉农田灌溉用水量遥感估算数据集(2011-2018),该文件以nc格式储存。nc格式文件就是一个多维的数据库。经纬度占了两维,可能还有时间维度,就是时空谱。 双击打开刚打开时只能看到2018年1月的灌溉数据 打…

用23种设计模式打造一个cocos creator的游戏框架----(二十二)原型模式

1、模式标准 模式名称:原型模式 模式分类:创建型 模式意图:用原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象 结构图: 适用于: 1、当一个系统应该独立于它的产品创建、构成和表示时 2、…

Kubernetes 架构原则和对象设计

什么是 Kubernetes Kubernetes 是谷歌开源的容器集群管理系统 • 基于容器的应用部署、维护和滚动升级; • 负载均衡和服务发现; • 跨机器和跨地区的集群调度; • 自动伸缩; • 无状态服务和有状态服务; • 插件机制…

实验:使用ADC读取烟雾传感器的值

CubeMX 配置 3.3/4096 * smoke_value 这个表达式的含义是将ADC的原始数值 smoke_valuesmoke_value 转换成相应的电压值,假设ADC的范围是0到4095,电源电压是3.3V。这是一个将ADC的数字值映射到实际电压值的线性转换。 具体来说: 3.33.3 是电…

广东建筑模板价格一览表

在建筑行业,合适的建筑模板是确保工程顺利进行的关键材料之一。在选择建筑模板时,除了质量、材质等因素外,价格也是一个重要的考虑因素。本文将提供一个广东建筑模板的价格一览表,以供业内人士参考。需要注意的是,以下…

C++ Qt开发:QItemDelegate自定义代理组件

Qt 是一个跨平台C图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍QStyledItemDelegate自定义代理组件的常用方法…

MyBatis-Plus如何 关闭SQL日志打印

前段时间公司的同事都过来问我,hua哥公司的项目出问题了,关闭不了打印sql日记,项目用宝塔自己部署的,磁盘满了才发现大量的打印sql日记,他们百度过都按照网上的配置修改过不起作用,而且在调试时候也及为不方…

【计算机四级(网络工程师)笔记】操作系统概论

目录 一、OS的概念 1.1OS的定义 1.2OS的特征 1.2.1并发性 1.2.2共享性 1.2.3随机性 1.3研究OS的观点 1.3.1软件的观点 1.3.2资源管理器的观点 1.3.3进程的观点 1.3.4虚拟机的观点 1.3.5服务提供者的观点 二、OS的分类 2.1批处理操作系统 2.2分时操作系统 2.3实时操作系统 2.4嵌…

watermark-dom 水印不显示

引入watermark-dom 之后,代码也按照文档写好了,也有水印的元素了,但是就是不显示水印 查看元素,发现shadow-root 里面啥也没有 查看源代码发现 shadowRoot 添加水印的这行代码根本没执行 接着往上查,发现没有进入这个…

Java发起SOAP请求代码参考

目录 Java发起SOAP请求代码参考 代码1.组装参数2.加密参数3.发起连接4.解析返回数据 参考 文章所属专区 超链接 代码 1.组装参数 <?xml version"1.0" encoding"UTF-8"?> <beans xmlns"http://www.springframework.org/schema/beans&qu…

Java集合转int数组

集合通过toArray()方法进行转换为数组&#xff0c;可以转换成为指定类型的数组&#xff0c; 【但是】这些类型都必须是object类型的子类&#xff0c;基本类型不可以。 可以通过stream流处理&#xff1a; Set<Integer> set new HashSet<>(); int[] result interSet…

【电路笔记】-电容器颜色代码与电容值

电容器颜色代码与电容值 文章目录 电容器颜色代码与电容值1、概述 电容器颜色代码是识别电容器电容值的一种简单有效的视觉方式。 1、概述 有两种常见的方法可以了解电容器的电容值&#xff0c;即使用数字万用表进行测量&#xff0c;或读取印刷在其上的电容器颜色代码。 这些彩…

10、Qt:对数据进行加密、解密

一、说明 在Qt项目中简单的对数据进行加密解密&#xff0c;有如下两种方式 1、QCryptographicHash Qt提供了用于加密的类QCryptographicHash&#xff0c;但是QCryptographicHash类只有加密功能&#xff0c;没有解密功能 2、Qt-AES 使用第三方AES库&#xff0c;对数据进行加密解…

车载蓝牙物联网解决方案

车载蓝牙物联网解决方案是一种基于蓝牙技术&#xff0c;结合物联网技术的智能车载系统。它利用蓝牙技术将智能手机、智能手表、智能车载设备等连接起来&#xff0c;实现设备之间的无缝通信和数据共享&#xff0c;为驾驶者提供更加便捷、安全和智能的驾驶体验。 车载蓝牙物联网解…

6.6k star!推荐一款轻松创建隔离环境的命令行及容器工具!

本文小编向大家推荐一款可轻松创建隔离的 shell 和容器的开源工具。这款工具叫做 Devbox, 中文名译为 开发者沙箱&#xff0c;GitHub Star 已经有6.6k。 下面给大家介绍这款工具的功能和使用。 项目介绍 Devbox 是一个可以让我们轻松创建隔离环境的 shell 与 容器 的命令行工…

Spring MVC控制层框架

三、Spring MVC控制层框架 目录 一、SpringMVC简介和体验 1. 介绍2. 主要作用3. 核心组件和调用流程理解4. 快速体验 二、SpringMVC接收数据 1. 访问路径设置2. 接收参数&#xff08;重点&#xff09; 2.1 param 和 json参数比较2.2 param参数接收2.3 路径 参数接收2.4 json参…

vue 学习笔记

生命周期 1&#xff09;定义&#xff1a;vue实例从创建到销毁的过程 2&#xff09;钩子函数 2.1&#xff09;beforeCreate&#xff1a;vue实例初始化之前调用&#xff0c;这个阶段vue实例刚刚在内存中创建&#xff0c;此时data和methods这些都没初始化好。 2.2&#xff09;Cre…

新时代体育场馆的未来之路——气膜体育馆

近年来&#xff0c;我国正全面贯彻实施全民健身国家战略&#xff0c;秉持“发展群众体育&#xff0c;服务健康中国”的理念&#xff0c;深入推动群众参与的体育活动&#xff0c;努力实现全民健身与全民健康的深度融合发展。在这一大潮中&#xff0c;体育场馆建设成为业内的一项…