当前位置: 首页 > news >正文

计算机组成原理-总线概述

文章目录

  • 总线简图
  • 总线的物理实现
  • 总览
  • 总线定义
  • 总线的特性
  • 总线的分类
    • 按数据格式分类
      • 串行总线
      • 并行总线
    • 按总线功能分类
      • 注意系统总线的进一步分类
  • 总线的结构
    • 单总线的机构
    • 双总线的结构
    • 三总线的结构
    • 四总线的结构
  • 小结

总线简图

在这里插入图片描述

总线的物理实现

如果该为数据总线,那么当CPU向四根线分别传递高低电平信号时,信号会随着各个线的传输到其他部件中,从而实现数据的传输
但若果同时往总线上各根线都传送数据,可能会冲突,如一个为0一个为1
在这里插入图片描述

总览

在这里插入图片描述

总线定义

一开始是根据功能,然后使各个部件连接,这样分散连接的方式,如果增减外部设备,那么对电路的连接操作比较麻烦
在这里插入图片描述

总线的特性

传送方向即总线上的数字信号往哪个方向走
有效的电平范围是指电平落在某个范围时才是有效,即为1
传输线的功能是指传输地址或数据或控制信号的
时间特性:各类信号发出的试卷安排
在这里插入图片描述

总线的分类

在这里插入图片描述

按数据格式分类

串行总线

每次只能传一位
抗干扰能力强,估计只有一个电信号,没有其他电信号干扰它吧,感觉可以参考一下物理里面的电生磁,磁生电,电干扰电
拆卸和装配是由于数据大部分不是1bit的,所以导致当需要一比特一比特传输的时候,需要将多bit的数据拆分成一个一个比特的。并且接受时也需要将这一个一个比特装配为原来的多比特数据
在这里插入图片描述

并行总线

一次可以传多位置
频率越高,干扰其他线的数字信号能力越强
在这里插入图片描述

按总线功能分类

片内总线,系统总线,通信总线层层递增
在这里插入图片描述

注意系统总线的进一步分类

数据总线:根数和机器字长一样时,读取的内容长度正好是CPU一次可以处理的最大长度,如果和存储字长一样,那么此时只需要取一次就能取到相应的内容。双向是由于既数据是需要双向传输的

地址总线:同一编址时需要考虑设备数量,如主存是0~n,那么一个设备的地址是n+1,一个设备的地址是n+2。此时就需。要地址总线的位数的最大二进制数就需要满足能够取到n+2。单向是由于传输方向只能是从CPU到主存所。以一定是单向的

控制总线:不同控制总线对应不同控制信号,有些控制线是用来发出到其他部件的,而有些控制线是用来接受其他部件发给CPU的
在这里插入图片描述

总线的结构

单总线的机构

因为同一时刻如果不同设备都发送信号到总线上可能会冲突,所以不支持并发传送
带宽低即传输慢,因为不一定能立即传输,要等其他部件对总线不占用了才行,否则冲突
由于只有一个总线,考虑没那么复杂,所以接入比较容易。
另外由于系统总线传输速度快,而IO设备传输的数据在总线速度是慢的,所以可能导致总线浪费部分性能
在这里插入图片描述

双总线的结构

突发:就是送出一个需要的数据的地址,但得到的是这个需要的数据和与这个数据地址邻接连续的存储的数据
CPU与通道通过主存总线传输,速度没有浪费,然后各IO设备与通道通过I/O总线传输,速度也没有浪费。
在这里插入图片描述

三总线的结构

DMA总线传输快,用于连接高速的外设,I/O总线传输慢,用于连接低速的外设
CPU通过I/O总线访问低速外设通过I/O总线,这样重分利用I/O总线
如果需要访问硬盘,可以通过DMA先将磁盘的内容传到主存,再传到CPU
效率低是因为三个总线只能有一个在工作
在这里插入图片描述

四总线的结构

不同总线速度不同,通过桥来转换
数据缓存和转换:即可通过桥将得到的串行数据转换为并行数据再传出
控制:把总线的使用权给哪个设备
在这里插入图片描述

小结

在这里插入图片描述

相关文章:

  • 【数据结构——二叉树】二叉树及其应用2023(头歌习题)【合集】
  • 解决基于VectorGrid的矢量瓦片Y轴偏移的问题
  • 软件有效找不到dll文件,五种可靠的解决dll方法分享
  • Zookeeprt实战(待完善)
  • java虚拟机内存管理
  • 最新版本Vue3的学习笔记-第五章
  • java 内部错误2753_内部错误 2753.regutils.dll
  • LLM之RAG实战(九)| 高级RAG 03:多文档RAG体系结构
  • webrtc turn服务器搭建
  • leetcode 75. 颜色分类(medium)(优质解法)
  • 每日一练:LeeCode-347. 前 K 个高频元素(中) - 【优先级队列】
  • docker-compose Install TeamCity
  • git教程——日常工作git使用流程
  • Android Matrix画布Canvas旋转Rotate,Kotlin
  • Xcode 编译速度慢是什么原因?如何提高编译速度?
  • [ JavaScript ] 数据结构与算法 —— 链表
  • AHK 中 = 和 == 等比较运算符的用法
  • Docker下部署自己的LNMP工作环境
  • download使用浅析
  • Git同步原始仓库到Fork仓库中
  • Java程序员幽默爆笑锦集
  • JSDuck 与 AngularJS 融合技巧
  • php面试题 汇集2
  • SpiderData 2019年2月13日 DApp数据排行榜
  • WinRAR存在严重的安全漏洞影响5亿用户
  • 案例分享〡三拾众筹持续交付开发流程支撑创新业务
  • 创建一个Struts2项目maven 方式
  • 后端_ThinkPHP5
  • 记一次用 NodeJs 实现模拟登录的思路
  • 学习ES6 变量的解构赋值
  • Semaphore
  • UI设计初学者应该如何入门?
  • 组复制官方翻译九、Group Replication Technical Details
  • ​二进制运算符:(与运算)、|(或运算)、~(取反运算)、^(异或运算)、位移运算符​
  • # 透过事物看本质的能力怎么培养?
  • #include
  • $.ajax()方法详解
  • (13):Silverlight 2 数据与通信之WebRequest
  • (9)STL算法之逆转旋转
  • (附源码)spring boot网络空间安全实验教学示范中心网站 毕业设计 111454
  • (三)Kafka 监控之 Streams 监控(Streams Monitoring)和其他
  • (一)Docker基本介绍
  • (一)Mocha源码阅读: 项目结构及命令行启动
  • (转)es进行聚合操作时提示Fielddata is disabled on text fields by default
  • (转)nsfocus-绿盟科技笔试题目
  • (转)winform之ListView
  • (转)清华学霸演讲稿:永远不要说你已经尽力了
  • (转)自己动手搭建Nginx+memcache+xdebug+php运行环境绿色版 For windows版
  • .NET Framework Client Profile - a Subset of the .NET Framework Redistribution
  • .NET 实现 NTFS 文件系统的硬链接 mklink /J(Junction)
  • .net 托管代码与非托管代码
  • .NET版Word处理控件Aspose.words功能演示:在ASP.NET MVC中创建MS Word编辑器
  • .NET编程——利用C#调用海康机器人工业相机SDK实现回调取图与软触发取图【含免费源码】
  • .net遍历html中全部的中文,ASP.NET中遍历页面的所有button控件
  • .net下简单快捷的数值高低位切换