总线:特性、分类、性能指标、系统总线的结构、总线仲裁、总线定时、总线标准

总线(Bus),是一组为各功能部件之间进行信息传送的公共线路。

总线的特性:

  • 机械特性(物理特性):尺寸、形状、引脚数、排列顺序。
  • 电气特性:每根信号线上的信号传输方向、表示信号有效的电平范围。
  • 功能特性:每根信号线的功能。例如:地址总线表示地址码,数据总线表示传输的数据,控制总线表示总线上操作的命令和状态等。
  • 时间特性(逻辑特性):每根信号线上的信号什么时候有效,信号的时序关系。

总线的分类:

系统总线是通常意义上所说的总线。系统总线包括地址总线、数据总线、控制总线。

有些系统,地址总线和数据总线是复用的,即总线上的信号某一时刻表示地址另一时刻表示数据。

总线的性能指标:

总线宽度:又称总线位宽。总线上能同时传输的数据位数。通常与数据总线的根数相同。

总线周期:又称总线的传输周期。一次总线操作所需的时间。也就是通过总线传输 一组数据所需的时间。

        通常总线周期由若干个总线时钟周期构成。有时1个总线周期是1个总线时钟周期,有时1个总线时钟周期包含多个总线周期。

总线周期包括申请阶段(请求和仲裁)、寻址阶段、传输阶段、结束阶段。

  1. 申请阶段(请求和仲裁):设备发出申请信号,经总线仲裁机构决定哪个设备获得总线使用权。
  2. 寻址阶段:主设备通过总线发出从设备的地址和相应的命令,启动从设备。
  3. 传输阶段:主设备和从设备之间进行数据传送。
  4. 结束阶段:主设备的有关信息全部从总线上撤销,让出总线使用权。

主设备:获得总线控制权的设备。

从设备:被主设备访问的设备。只能响应主设备发来的总线命令。

总线时钟周期:机器的时钟周期。即CPU的时钟部件发出节拍信号,1个节拍信号就是1个时钟周期。现在的计算机,总线时钟周期可能由桥接器提供。

总线工作频率:单位时间的传输率(一秒传送多少次数据)。是总线周期的倒数。

总线时钟频率:一秒有多少时钟周期。是总线时钟周期的倒数。

总线带宽:又称总线的数据传输率。即单位时间总线传输的数据位数(每秒总线上传输多少字节)。单位:字节/秒(B/s)

        总线带宽 = 总线工作频率 * 总线宽度 = 总线宽度 / 总线周期

信号线数:地址总线、数据总线、控制总线这3种线 数量的和。

系统总线的结构:

系统总线的结构
单总线结构双总线结构三总线结构四总线结构
一组总线两组总线三组总线四组总线
系统总线主存总线,I/O总线主存总线,I/O总线,DMA总线(Direct Memory Access)

CPU总线、系统总线、高速总线,扩充总线

需要硬件:通道需要设备:桥接器
CPU、主存、I/O设备都通过一组系统总线交换数据。

通道对I/O设备统一管理,通道程序存放在内存中。

支持突发(猝发)传送即送出一个地址,收到多个地址连续的数据。

高速外设通过DMA总线直接与主存交换数据。

桥接器用于连接不同的总线,具有数据缓冲、转换、控制功能。

结构简单,成本低。但带宽低,负载重,不支持并行传送。缓和CPU和I/O设备之间的速度矛盾。但需增加通道等硬件设备。缓和CPU和高速外设(磁盘)之间的速度矛盾。I/O设备对CPU的响应更快,提高系统吞吐量。但系统工作效率低(因同一时刻只有一个总线工作)

现代计算机更常使用。

越靠近CPU的总线速度越快。

总线仲裁:

总线仲裁:同一时间只能一组设备(2个)之间使用总线进行数据传送,多个设备同时需要使用总线,通过某种方式选择某一个主设备获得总线控制权,从而进行数据传送。

总线总裁的方式:集中仲裁方式(链式查询方式、计数器查询方式、独立请求方式),分布仲裁方式。

总线定时:

总线定时:是一种协议或规则,通过总线完成两个设备之间的数据传送需要时间上的配合。

(1)同步通信(同步定时方式):由统一的时钟信号控制数据传送。固定的时间间隔,总线周期的时间相同。

(2)异步通信(异步定时方式):没有统一的时钟控制,主设备和从设备之间采用应答方式。

  •  不互锁:主设备发出“请求”信号,不必等到从设备的“回答”信号,过段时间自动撤销“请求”信号。从设备接收“请求”信号后,发出“回答”信号,过段时间自动撤销“回答”信号。
  • 半互锁:主设备发出“请求”信号,必须等到从设备的“回答”信号,再撤销“请求”信号。从设备接收“请求”信号后,发出“回答”信号,过段时间自动撤销“回答”信号。
  • 全互锁:主设备发出“请求”信号,必须等到从设备的“回答”信号,再撤销“请求”信号。从设备接收“请求”信号后,发出“回答”信号,必须等到主设备已经撤销“请求”信号,才撤销“回答”信号。

(3)半同步通信:同步、异步结合。统一时钟的基础上,增加“等待”信号。

(4)分离式通信:主设备申请使用总线,使用完让出总线使用权。从设备申请使用总线,将数据传送到总线。从设备准备数据的时候不需要使用总线,让给其他设备使用总线。提高总线利用率。

总线标准:

总线标准是国际上公布或推荐的互连各个模块的标准,是把不同模块组成计算机系统时必须遵守的规范。保证计算机系统的可维护性和可扩充性。按照总线标准设计的接口可以视为通用接口。

总线标准
ISAIndustry Standard Architecture1984年系统总线并行不支持总线仲裁
EISAExtended ISA1988年系统总线并行在ISA基础上增加位宽
FSB,QPI

Front Side Bus,

QuickPath Interconnect(multi-FSB)

系统总线串行

FSB连接CPU与北桥芯片。

QPI用来芯片之间的直接互联,矛头直指AMD的HT总线。

VESAVideo Electronics Standard Architecture1991年局部总线并行

用于传输图像。连接高速网卡、显卡等。

受CPU的控制。

PCIPeripheral Component Interconnect1992年局部总线并行

连接显卡、声卡、网卡等。

支持即插即用,支持突发传送。

不依附于某个独立处理器,独立于CPU主频。

AGPAccelerated Graphics Port1996年局部总线并行

基于PCI 2.1版。

连接主存、显卡。

PCI-EPCI-Express2001年局部总线串行不支持总线仲裁。支持双向传送,可运行全双工模式,支持热拔插。
RS-232CRecommended Standard1970年通信总线串行连接极慢速的电传打印机。
SCSISmall Computer System Interface1986年通信总线并行连接硬盘、打印机、扫描仪等。
PCMCIPersonal Computer Memory Card International Association1991年通信总线并行连接便携设备。连接外部存储卡,增强个人电脑的信息交换。
USBUniversal Serial Bus1996年通信总线串行

设备和设备控制器之间的接口。支持热拔插、即插即用。USB集线器可链式连接127个外设。

采用“差模信号”传送1/0。每次只能传送1bit数据。

IDE(ATA)

Integrated Drive Electronics

(PATA:Parallel ATA)

1986年通信总线并行连接硬盘、光驱等。
SATASerial ATA2001年通信总线串行连接硬盘、光驱等。

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

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

相关文章

Go实现LogAgent:海量日志收集系统【上篇——LogAgent实现】

Go实现LogAgent 项目架构图: 0 项目背景与方案选择 背景 当公司发展的越来越大,业务越来越复杂时,每个业务系统都有自己的日志。此时我们就应该将不同业务线的日志进行实时收集,存储到一个日志收集中心,最后再通过…

RecyclerView的局部刷新居然这么简单

RecyclerView的局部刷新 面试时经常被问到Android列表控件RecyclerView,无非就是深入源码与ListView进行对比,四层缓存和局部刷新。而今天的重点就是局部刷新 使用场景 我们在使用RecyclerView的局部刷新时,往往使用notify相关方法&#xff…

Android studio 软件git使用

在 test 分支添加的方法 , 现在切换到 master分支 总共 2 个分支 , 当前的分支是 test 出现了 先试一下 force checkout , 尝试之后发现 , 你更改没有带过来 , 以为哪个类在master分支没有 , 所以这边也没有 , 切回分支 test 发现之前的跟改没有 , 这样即可以找回 继续切换…

MySQL—MySQL主从如何保证强一致性

一、前言 涉及到的东西:两阶段提交,binlog三种格式 1、两阶段提交 在持久化 redo log 和 binlog 这两份日志的时候,如果出现半成功的状态,就会造成主从环境的数据不一致性。这是因为 redo log 影响主库的数据,binlog…

python爬虫—requests

一、安装 pip install requests 二、基本使用 1、基本使用 类型 : models.Response r.text : 获取网站源码 r.encoding :访问或定制编码方式 r.url :获取请求的 url r.content :响应的字节类型 r.status_code :响应…

界面控件DevExpress WinForms(v23.2)下半年发展路线图

本文主要概述了官方在下半年(v23.2)中一些与DevExpress WinForms相关的开发计划,重点关注的领域将是可访问性支持和支持.NET 8。 DevExpress WinForms有180组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。同时能…

数据库访问性能优化

目录 IO性能分析数据库性能优化漏斗法则1、减少数据访问(减少磁盘访问)(1) 正确的创建并使用索引索引生效场景索引失效场景判断索引是否生效--执行计划 2、返回更少数据(减少网络传输或磁盘访问)(1) 数据分页处理(减少行数)客户端…

字符和字符串的库函数模拟与实现

前言: 相信大家平常在写代码的时候,用代码解决实际问题时苦于某种功能的实现,而望而止步,这个时候库函数的好处就体现出来了,当然个人代码编写能力强的可以自己创建一个函数,不过相当于库函数来说却是浪费了…

Redis进阶 - JVM进程缓存

原文首更地址,阅读效果更佳! Redis进阶 - JVM进程缓存 | CoderMast编程桅杆https://www.codermast.com/database/redis/redis-advance-jvm-process-cache.html 传统缓存的问题 传统的缓存策略一般是请求到达 Tomcat 后,先查询 Redis &…

Java文件操作

目录 一、File类概述 1.1 使用案例 二、文件内容的读写 2.1 字符流 2.1.1 读取文件 2.1.2 写入文件 2.2 字节流 2.2.1 读取文件 2.2.2 写入文件 对于Java操作文件,具体详情可以参考Java api文档 中的Java.io.File类 一、File类概述 首先先了解一下File类中常见的属…

Unity 从2018升级为2021之后 IAP(内购插件)报错解决

从老项目升级为2021高版本之后报了个错 大概就是… the type iwindowsiap exists in both unityengine.purchasing.winrtcore, version0.0.0.0, 这种 具体的我也没粘贴全部过来 原因貌似是 PackManger里面的IPA包和项目自带的冲突了 解决方法: 删除项目文件夹下面…

leetcode3. 无重复字符的最长子串(滑动窗口 - java)

滑动窗口 无重复字符的最长子串滑动窗口 上期经典 无重复字符的最长子串 难度 - 中等 3. 无重复字符的最长子串 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: s “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc…

代码随想录算法训练营第五十二天 | 300.最长递增子序列,674. 最长连续递增序列,718. 最长重复子数组

代码随想录算法训练营第五十二天 | 300.最长递增子序列,674. 最长连续递增序列,718. 最长重复子数组 300.最长递增子序列674. 最长连续递增序列718. 最长重复子数组 300.最长递增子序列 题目链接 视频讲解 给你一个整数数组 nums ,找到其中最…

JDK源码解析-LinkedList

1. LinkedList类 1.1 LinkedList类定义&数据结构 定义 LinkedList是一种可以在任何位置进行高效地插入和移除操作的有序序列,它是基于双向链表实现的。 数据结构 基础知识补充 单向链表: element:用来存放元素 next:用来…

SpringBoot项目(jar)部署,启动脚本

需求 SpringBoot项目(jar)部署,需要先关闭原来启动的项目,再启动新的项目。直接输入命令,费时费力,还容易出错。所以,使用脚本启动。 脚本 脚本名:start.sh 此脚本需要放置在jar包…

AI文本标注的概念,类型和方法

我们每天都在与不同的媒介(例如文本、音频、图像和视频)交互,我们的大脑对收集到的信息进行处理和加工,从而指导我们的行为。在我们日常接触到的信息中,文本是最常见的媒体类型之一,由我们交流使用的语言构…

——滑动窗口

滑动窗口 所谓滑动窗口,就是不断的调节子序列的起始位置和终止位置,从而得出我们要想的结果。也可以理解为一种双指针的做法。 leetcode76 class Solution {public String minWindow(String s, String t) {char[] schars s.toCharArray();char[] tc…

【Linux】root和子用户都能执行的命令,sudo无法执行(已解决)

全流程帖子 https://ask.oceanbase.com/t/topic/35604437/7 1.问题 如题,在编译miniob的时候遇到如下错误 [muvm-cnt8:~/code/miniob]$ sudo bash build.sh init build.sh init HEAD is now at 5df3037d Merge branch release-2.1.12-stable-pull into patches-2.…

【2D/3D RRT* 算法】使用快速探索随机树进行最佳路径规划(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

哪些情况需要用到云渲染?原来云渲染有这么多好处!

当前,CG行业发展迅猛,云渲染已成为越来越多的设计师必不可少的工具。在许多情况下,云渲染都能发挥重要的作用。 情况1:项目时间紧急 在当今繁忙的设计行业中,许多设计师需要通宵加班才能完成繁琐的工作。然而&#xf…