计算机组成原理(五)
一、链式查询方式
接口的优先级固定不变
在链式查询的情况下,设备的优先级通常与其在链中的位置有关。具体来说,越靠近查询链的起始位置的设备通常具有较高的优先级,而越靠近链的末尾位置的设备优先级较低。
优点:
- 简单实现:链式查询可以通过简单的硬件逻辑或软件控制实现,无需复杂的总线仲裁机制。
- 低成本:相比于其他总线访问方式,链式查询的硬件成本较低,适用于成本敏感型应用。
- 适用于少量设备:对于少量设备的系统,链式查询是一种有效的管理方式,可以简化系统设计和管理。
缺点:
-
响应时间不稳定:由于设备的查询顺序是固定的,靠近链起始位置的设备响应时间较短,而靠近链末尾位置的设备响应时间较长,导致整体响应时间不稳定。
-
单点故障影响大:如果链中的某个设备发生故障,可能会影响整个链式查询系统的正常工作。
-
不适用于大规模系统:对于大规模设备的系统,链式查询可能会导致查询时间过长,降低系统性能。
适用场景:
- 小型系统:链式查询适用于设备数量较少的小型系统,例如家庭电器控制系统、嵌入式系统等。
- 低成本应用:由于链式查询的硬件成本低,适用于成本敏感型应用,例如消费类电子产品、嵌入式控制器等。
二、计数器定时查询方式
可以通过软件修改计数器的初始值,改变调用接口的优先级
地址线:
通过地址线,CPU可以确定要访问的内存或 I/O 设备的地址范围。例如,如果一个系统有 16 条地址线,那么它可以访问的地址范围为 2^16,即 0 到 65535。地址线不直接指向特定的设备,而是用于选择地址范围。
设备地址:
设备地址是特定的 I/O 设备在系统中的地址位置。这个地址通常是由设备的控制器或系统配置确定的,不同的设备有不同的地址。当 CPU 决定要访问某个 I/O 设备时,它会发送相应的地址信号,选择要与之通信的设备地址。
地址线用于选择要访问的地址范围,而设备地址用于选择具体的 I/O 设备。CPU可以通过地址线确定要访问的地址范围,然后通过发送设备地址来选择特定的 I/O 设备进行通信。
不过上面这两种都是按顺序进行查找的,这个速度依然慢
三、独立请求方式
可以通过修改排队器,改变调用接口的优先级
缺点:使用的线太多了
—————————————————————————————————————————————————————————————
数据传输的每个阶段都严格按照定宽、定距的时钟信号进行同步,确保数据的采样和传输在预定的时刻进行。
固定的时刻进行固定的操作。
-
T1上升沿:
CPU给出地址信号,指定要访问的设备或内存位置。 -
T2上升沿:
在此期间,数据的读取准备工作在进行。CPU向外设发送读信号,指示其准备好接受数据。 -
T3上升沿:
外设将数据通过数据总线发送给CPU,CPU准备接收数据。 -
T4上升沿:
在T4上升沿时,CPU撤销控制(读)信号和数据信号,表示数据传输过程的结束。 -
T4结束时:
CPU撤销地址信号,表示数据输入过程的结束。
-
T1上升沿:
CPU给出地址信号,指定要从中读取数据的设备或内存位置。 -
T1下降沿:
外设在T1下降沿时,准备好数据并开始将数据发送到数据总线上。 -
T2上升沿:
CPU给出写命令,指示外设进行数据写入。 -
T2至T3上升沿之间:
外设进行写入操作,将数据写入到指定的设备或内存位置。 -
T4上升沿:
CPU撤销数据信号和写命令信号,表示数据写入过程的结束。 -
T4结束时:
CPU撤销地址信号,表示数据输出过程的结束。
异步通信是一种数据传输方式,其中发送方和接收方的时钟信号不同步。在异步通信中,数据的传输不依赖于定时的时钟信号,而是通过特定的起始位和停止位来标识数据的开始和结束。
不互锁(Non-Handshaking):
在不互锁的异步通信中,发送方和接收方之间没有任何确认或应答信号。发送方发送数据后,不等待接收方的确认,而是直接继续发送下一个数据。
这种方式简单直接,但可能会存在数据丢失或传输错误的风险。
半互锁(Half-Duplex Handshaking):
在半互锁的异步通信中,发送方在发送数据后会等待接收方发送确认信号。一旦接收方接收到数据并进行处理,就会发送一个确认信号给发送方。
这种方式可以确保数据的可靠传输,但仍存在一定的风险,如接收方无法及时发送确认信号导致数据丢失。
全互锁(Full-Duplex Handshaking):
在全互锁的异步通信中,发送方和接收方之间进行完全的双向确认。发送方在发送数据后会等待接收方发送确认信号,同时接收方在接收到数据后会发送一个确认信号给发送方。
这种方式提供了最高级别的数据传输可靠性和稳定性,确保了数据的完整性和准确性。
-
T1上升沿:
CPU给出地址信号,指定要访问的设备或内存位置。 -
T2上升沿:
CPU给出读信号 -
在T3开始之前:
从设备如果不能把数据准备好
通过wait信号给出一个低电平,告诉CPU进行等待
CPU检测wait信号是低电平,就会在T3到来之前,插入Tw
在下一个时钟周期开始之前,继续检测wait信号是否是高电平,否则重复上述操作
高电平则是,数据已经在数据总线上了,CPU可以进行数据接收 -
T3周期:
CPU开始接收数据 -
T4周期开始时:
CPU撤销读命令信号和数据信号,表示数据传输过程的结束 -
T4周期结束时:
CPU撤销地址信号,表示数据输入过程的结束。
上诉三种的缺点如下图,总线会空闲,导致资源浪费
相关文章:

计算机组成原理(五)
一、链式查询方式 接口的优先级固定不变 在链式查询的情况下,设备的优先级通常与其在链中的位置有关。具体来说,越靠近查询链的起始位置的设备通常具有较高的优先级,而越靠近链的末尾位置的设备优先级较低。 优点: 简单实现&am…...

后端项目实战--瑞吉外卖项目软件说明书
瑞吉外卖项目软件说明书 一、项目概述 瑞吉外卖项目是一个外卖服务平台,用户可以通过该平台浏览餐厅菜单、下单、支付以及追踪订单状态。产品原型就是一款产品成型之前的一个简单的框架,就是将页面的排版布局展现出来,使产品得初步构思有一…...

LeetCode | 27.移除元素
这道题的思路和26题一模一样,由于要在元素组中修改,我们可以设置一个index表示目前要修改原数组的第几位,由于遍历,访问原数组永远会在我们修改数组之前,所以不用担心数据丢失的问题,一次遍历数组ÿ…...
为什么要选择AWS?AWS的优势有哪些?
亚马逊云服务器(Amazon Web Services,AWS)是全球领先的云计算服务提供商之一,其提供的云服务器是在全球范围内可用的弹性计算服务。对于很多用户来说,他们可能会担心亚马逊云服务器是否会对服务器的使用进行限制。以下…...

【Intel CVPR 2024】通过图像扩散模型生成高质量360度场景,只需要一个语言模型
在当前人工智能取得突破性进展的时代,从单一输入图像生成全景场景仍是一项关键挑战。大多数现有方法都使用基于扩散的迭代或同步多视角内绘。然而,由于缺乏全局场景布局先验,导致输出结果存在重复对象(如卧室中的多张床࿰…...

postman教程-21-Newman运行集合生成测试报告
上一小节我们Postman Newman的安装方法,本小节我们讲解一下Postman Newman的具体使用方法。 使用Newman运行集合 1、导出Postman集合: 在Postman中,选择你想要运行的集合,然后点击“导出”按钮,选择导出为“Collect…...

基于条件谱矩的时间序列分析(以轴承故障诊断为例,MATLAB)
谱矩方法可以对数据的表面形貌做较为细致的描述.它以随机过程为理论基础,用各阶谱矩及统计不变量等具体的参数表征表面的几何形态,算术平均顶点曲率是一种基于四阶谱矩的统计不变量。 鉴于此,采用条件谱矩方法对滚动轴承进行故障诊…...

ArcGIS Pro 3.0加载在线高德地图
1、打开ArcGIS Online官网,登录自己的账号,登录后效果如下图所示 官网地址:https://www.arcgis.com/home/webmap/viewer.html 2、点击Add,选择Add Layer from Web,如下图所示 3、在显示的Add Layer from Web页面内&am…...

服务器防漏扫,主机加固方案来解决
什么是漏扫? 漏扫是漏洞扫描的简称。漏洞扫描是一种安全测试方法,用于发现计算机系统、网络或应用程序中的潜在漏洞和安全弱点。通过使用自动化工具或软件,漏洞扫描可以检测系统中存在的已知漏洞,并提供相关的报告和建议…...

Linux2(基本命令2)
目录 一、文件类型分类 二、基本命令 1. find 帮助查询 2. stat 查看文件的信息 3. wc 统计文本 4. 查看文本内容 4.1 cat 4.2 more 4.3 less 4.4 head 4.5 tail 5. cal 显示日历 6. date 显示时间 7. du 文件大小 8. ln 链接 软链接 硬链接 区别 9. history…...

拼团+秒杀+优惠折扣+个人免签双端商城源码
源码说明 可用拼团秒杀优惠折扣个人免签双端商城源码,全功能完美双端,对接个人免签支付。 这款商城源码非常完整,整体也非常简洁,功能全面,没有那么多冗杂的多余页面和无用代码,拿到后优化了下整体代码&a…...

【数据结构】双向链表(C语言)
哈喽铁子们,这里是博主鳄鱼皮坡。这篇文章将分享交流双向链表的相关知识,下面正式开始。 1. 双向链表的结构 注意:这里的“带头”跟前面我们说的“头节点”是两个概念,实际前面的在单链表阶段称呼不严 谨,但是为了老…...
【TensorFlow深度学习】WGAN与DCGAN在图像生成中的应用实例
WGAN与DCGAN在图像生成中的应用实例 WGAN与DCGAN在图像生成中的应用实例:一场深度学习的视觉盛宴DCGAN简介WGAN简介应用实例:基于DCGAN的图像生成应用实例:WGAN的图像生成实践结语 WGAN与DCGAN在图像生成中的应用实例:一场深度学习…...

垫付商贩任务补单平台补单系统网站源码提供
垫付商贩任务补单平台补单系统网站源码提供...

vue富文本wangeditor加@人功能(vue2 vue3都可以)
依赖 "wangeditor/editor": "^5.1.23", "wangeditor/editor-for-vue": "^5.1.12", "wangeditor/plugin-mention": "^1.0.0",RichEditor.vue <template><div style"border: 1px solid #ccc; posit…...
######## redis各章节终篇索引(更新中) ############
其他 父子关系(ctx、协程)#### golang存在的父子关系 ####_子goroutine panic会导致父goroutine挂掉吗-CSDN博客 参数传递(slice、map)#### go中参数传递(涉及:切片slice、map、channel等) ###…...
一个基于MySQL的数据库课程设计的基本框架
数据库课程设计(MySQL)通常涉及多个步骤,以确保数据库的有效设计、实现和维护。以下是一个基于MySQL的数据库课程设计的基本框架,结合参考文章中的相关信息进行整理: ### 一、引言 * **背景**:简要介绍为…...
架构设计基本原则
开闭原则 开闭原则(Open Closed Principle,OCP)是面向对象编程(OOP)中的一个核心原则,主要强调的是软件实体(类、模块、函数等)应该对扩展开放,对修改封闭。 解释&…...

云原生应用开发培训,开启云计算时代的新征程
在云计算时代,云原生应用开发技术已经成为IT领域的热门话题。如果您想要转型至云原生领域,我们的云原生应用开发培训将帮助您开启新征程。 我们的课程内容涵盖了云原生技术的基础概念、容器技术、微服务架构、持续集成与持续发布(CI/CD&#…...

【数据库设计】宠物商店管理系统
目录 🌊1 问题的提出 🌊2 需求分析 🌍2.1 系统目的 🌍2.2 用户需求 🌻2.2.1 我国宠物行业作为新兴市场,潜力巨大 🌻2.2.2 我国宠物产品消费规模逐年增大 🌻2.2.3 我国宠物主选…...

Chapter03-Authentication vulnerabilities
文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...
React 第五十五节 Router 中 useAsyncError的使用详解
前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...
java_网络服务相关_gateway_nacos_feign区别联系
1. spring-cloud-starter-gateway 作用:作为微服务架构的网关,统一入口,处理所有外部请求。 核心能力: 路由转发(基于路径、服务名等)过滤器(鉴权、限流、日志、Header 处理)支持负…...

JavaScript 中的 ES|QL:利用 Apache Arrow 工具
作者:来自 Elastic Jeffrey Rengifo 学习如何将 ES|QL 与 JavaScript 的 Apache Arrow 客户端工具一起使用。 想获得 Elastic 认证吗?了解下一期 Elasticsearch Engineer 培训的时间吧! Elasticsearch 拥有众多新功能,助你为自己…...
Cesium1.95中高性能加载1500个点
一、基本方式: 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...

新能源汽车智慧充电桩管理方案:新能源充电桩散热问题及消防安全监管方案
随着新能源汽车的快速普及,充电桩作为核心配套设施,其安全性与可靠性备受关注。然而,在高温、高负荷运行环境下,充电桩的散热问题与消防安全隐患日益凸显,成为制约行业发展的关键瓶颈。 如何通过智慧化管理手段优化散…...
Android Bitmap治理全解析:从加载优化到泄漏防控的全生命周期管理
引言 Bitmap(位图)是Android应用内存占用的“头号杀手”。一张1080P(1920x1080)的图片以ARGB_8888格式加载时,内存占用高达8MB(192010804字节)。据统计,超过60%的应用OOM崩溃与Bitm…...

AI书签管理工具开发全记录(十九):嵌入资源处理
1.前言 📝 在上一篇文章中,我们完成了书签的导入导出功能。本篇文章我们研究如何处理嵌入资源,方便后续将资源打包到一个可执行文件中。 2.embed介绍 🎯 Go 1.16 引入了革命性的 embed 包,彻底改变了静态资源管理的…...
rnn判断string中第一次出现a的下标
# coding:utf8 import torch import torch.nn as nn import numpy as np import random import json""" 基于pytorch的网络编写 实现一个RNN网络完成多分类任务 判断字符 a 第一次出现在字符串中的位置 """class TorchModel(nn.Module):def __in…...
LOOI机器人的技术实现解析:从手势识别到边缘检测
LOOI机器人作为一款创新的AI硬件产品,通过将智能手机转变为具有情感交互能力的桌面机器人,展示了前沿AI技术与传统硬件设计的完美结合。作为AI与玩具领域的专家,我将全面解析LOOI的技术实现架构,特别是其手势识别、物体识别和环境…...