408计算机组成原理学习笔记——总线

简介: 408计算机组成原理学习笔记——总线

1.总线基本概念

1.1.总线的特点

1.共享:总线可以连接多个部件

2.分时:同一时刻只允许一个部件向总线发送信息(但可以有多个部件接收信息)

69437adff8d945cabc610ef778b4fe0a.png

1.2.总线的特性

传输方向指的是数据流动的方向(CPU通过地址总线单向将地址传输到主存/硬盘,通过数据总线双向传输数据)

有效的电平范围:高低电平有效范围(例:低电平为0 - 0.5V,高电平为4 - 5V,其他电压无效)97cde7b08f9a43e4a7a3f535236207cb.png

1.3.总线的分类00baabad36714727be8146df3dc40758.png

1.按数据传输格式:串行(每次只能传输1个bit)/并行(每次可以传输多个bit)

2.按总线功能:

①片内总线:CPU内部的数据通路

②系统总线:计算机内部(CPU、内存和I/O间)的数据通路

A.数据总线(Data Bus):传输指令和操作数。位数与机器字长(相等时,一次传输的数据刚好是一个字)存储字长(相等时,每次读/写只需进行一次传输)有关。双向

B.地址总线(Address Bus):传输地址。位数与存储空间大小设备数量有关。单向

C.控制总线(Control Bus):传输控制信息。一根控制线传输一个信号。对于单根控制线来说,是单向传输;对于单个部件来说,单向/双向

③通信总线:计算机之间(主机A和主机B)的数据通路

1.4.系统总线的结构

越靠近CPU的总线速度越快

1.单总线结构:需要向上兼容速度快的部件(CPU),也要向下兼容速度慢的I/O设备

00153db1e2a14c189e4826203b067a91.png

2.双总线结构:通道通过I/O总线连接I/O设备,解决CPU和I/O设备速度差异大的问题

1780c0be3e4945f1a1bac877d5143726.png

3.三总线结构:将CPU所需要的数据通过DMA总线读入主存,再从主存中读取。但是,同一时刻只能有一条总线工作,效率也因此降低

b4f45d47e4224a49ab89e3eca8577017.png

1.5.总线的性能指标

1.总线的传输周期/总线周期:一次总线操作所需的时间(传输一组数据的时间)

设一组数据总线宽度为32bit,一个总线周期可通过该数据总线传输32bit数据

①申请阶段:总线仲裁,是否将总线分配给某个设备使用

②寻址阶段:主设备通过地址总线将想要进行读/写的地址传输给从设备

③传输阶段:主设备通过数据总线将从设备的指定地址中读/写数据

④结束阶段:释放总线使用权

2.总线的时钟周期:即机器的时钟周期

3.总线的工作频率:总线周期的倒数(一秒传输几次数据)

4.总线的时钟频率:时钟周期的倒数

5.总线宽度/总线位宽:总线上同时能传输的数据位数(通常指数据总线的根数)

6.总线带宽:单位时间总线上传输数据的位数(总线工作频率 * 总线宽度)(总线宽度/总线周期)

7.总线复用:同一种信号线可以在不同时间传输不同信息

8.信号线数:数据总线 + 地址总线 + 控制总线 = 信号线数

2.总线的事务和定时image.png

1.同步定时方式

①当主设备和从设备速度差异较大,从设备可能无法跟上在特定时间内完成读/取操作→所接部件存取时间接近

②可靠性差:可能没有多余时间进行数据检验→适用总线长度短(出错概率低)

image.png2.异步定时方式image.png

①主设备请求信号:地址信息、读命令;从设备发出回答信号:数据

②三种异步定时方式:

A.不互锁:信号的撤销不受到对方的制约

B.半互锁:请求的撤销受到回答的制约(回答了才撤销);回答的撤销不受到请求的制约

C.全互锁:请求和回答都受到对方的制约image.png

3.半同步通信:根据Wait信号动态调节统一时钟节拍(同步和异步思想结合)image.png

4.分离式通信:利用从设备准备数据(总线空闲)的时间将总线分配给其他设备5dafa4c2da464dae96b56eb837fe1011.png











相关文章
|
Ubuntu 网络协议 Linux
使用云服务器第一次实现了我的泰拉瑞亚服务器
使用云服务器实现泰拉瑞亚游戏的联机功能
使用云服务器第一次实现了我的泰拉瑞亚服务器
|
11月前
|
缓存 前端开发 JavaScript
优化CSS和JavaScript加载
优化CSS和JavaScript加载
200 1
|
11月前
|
UED 开发者
鸿蒙next版开发:ArkTS组件通用属性(禁用控制)
在HarmonyOS 5.0中,ArkTS引入了禁用控制属性,允许开发者控制组件的可用状态,提升用户界面的交互性和响应性。本文详细解读了ArkTS中组件的禁用控制属性,并提供了示例代码,展示了如何使用`disabled`属性来禁用按钮等可交互组件,从而防止用户误操作、引导用户流程和提升用户体验。
355 4
|
存储
【计算机组成原理】指令系统
【计算机组成原理】指令系统
880 0
【计算机组成原理】指令系统
|
Java 应用服务中间件 Linux
centos7安装weblogic
centos7安装weblogic
267 1
|
Java
JAVA 端口被占用 报错解决方案:java.net.BindException: Address already in use: bind
JAVA 端口被占用 报错解决方案:java.net.BindException: Address already in use: bind
815 0
|
算法
412数据结构学习强化——常见数据结构定义和算法总结(五)
412数据结构学习强化——常见数据结构定义和算法总结
187 1
412数据结构学习强化——常见数据结构定义和算法总结(五)
|
存储 关系型数据库 MySQL
Spring Boot 2.x基础教程:使用PostgreSQL数据库
Spring Boot 2.x基础教程:使用PostgreSQL数据库
2459 0
Spring Boot 2.x基础教程:使用PostgreSQL数据库
|
API
搞懂 Vue3 中的各种 ref:toRef,toRefs,isRef,unref...
Vue3 中,有许多与响应式相关的函数,例如 toRef、toRefs、isRef、unref 等等。合理地使用这些函数可以在实际开发中大大提高效率。本文将详细介绍这些函数的用法,让我们在实际开发中知道应该使用哪些 API 并能够熟练地回答面试官的相关问题。
498 0
如何解决Qt工程在其他电脑上无法运行的问题!(error: cannot open C:\Users???\AppData\Local\Temp\main.obj.5136.0.jom)
如何解决Qt工程在其他电脑上无法运行的问题!(error: cannot open C:\Users???\AppData\Local\Temp\main.obj.5136.0.jom)