计算机总线作用及分类详解

简介: 计算机总线作用及分类详解

最常见的USB(Universal Serial Bus),提供了对外连接的接口,不同设备可通过USB接口进行连接,连接的标准也统一了外围设备接口。

还有 PCI、ISA、Thunderbolt 等总线,都是为解决不同设备间的通信问题。


试想没有总线,新加个输入设备后,为了维持与各个设备的通信又得加一堆线路。而有了 I/O 总线后就像下图达到解耦而统一。

1.png

分类

片内总线

芯片内部的总线,寄存器与寄存器之间,寄存器与控制器、运算器之间。

高集成度芯片内部的信息传输线。

image.png

系统总线

image.png

数据总线

双向传输各个部件的数据信息,数据总线的位数(总线宽度)一般与CPU位数相同(32位、 64位)

地址总线

指定源数据或目的数据在内存中的地址,地址总线的位数与存储单元有关。

地址总线位数=n
寻址范围: 0~2^n

控制总线

发出各种控制信号的传输线,控制信号经由控制总线从一个组件发给另外一个组件,控制总线可监视不同组件之间的状态(就绪/未就绪)。

CPU、主内存、I0设备、各组件之间的信息传输线。

仲裁

总线上可能挂接多个设备,为了解决总线控制权的竞争问题,必须有总线仲裁部件,以某种规则裁决、分配总线的控制权。


多个主设备提出总线控制请求时,一般采用优先级或公平策略进行仲裁。


按照总线仲裁电路的位置不同,仲裁方式分为:

  • 集中式仲裁;
  • 分布(散)式仲裁;

方式

链式查询

image.png

总线授权信号被依次串行地传送到所连接的外围设

备上进行比较。

离总线控制器的逻辑距离决定,越近优先级越高。


优点:

  • 电路复杂度低,仲裁方式简单


缺点:

  • 优先级低的设备难以获得总线使用权
  • 对电路故障敏感

计时器定时查询

image.png

仲裁控制器对设备编号并使用计数器累计计数,接收到仲裁信号后,往所有设备发出计数值,当查询计数器计数值与发出请求的设备编号一致时,中止查询,该设备获总线控制权。

优先级灵活:计数器初值、设备编号可通过程序设定,优先次序可用程序控制。

独立请求

image.png

各设备均通过专用请求信号线与仲裁器连接,且通过

独立的授权信号线接收总线批准信号。


优点

  • 响应速度快,优先顺序可动态改变


缺点

  • 设备连线多,总线控制复杂
目录
相关文章
|
Rust JavaScript Unix
Nodejs 常见版本管理工具(nvm、n、fnm、nvs、nodenv)
Nodejs 常见版本管理工具(nvm、n、fnm、nvs、nodenv)
12531 0
|
机器学习/深度学习 人工智能 算法
基于YOLOv8的人员跌倒实时检测系统【训练和系统源码+Pyside6+数据集+包运行】
本文介绍了基于YOLOv8算法的人员跌倒实时检测系统,通过4978张图片训练出有效模型,并开发了带GUI界面的系统,支持图片、视频和摄像头实时检测,具备更换背景、标题,调节检测置信度等功能。
2552 0
基于YOLOv8的人员跌倒实时检测系统【训练和系统源码+Pyside6+数据集+包运行】
|
安全 Go 调度
探索Go语言的并发之美:goroutine与channel的实践指南
在本文中,我们将深入探讨Go语言的并发机制,特别是goroutine和channel的使用。通过实际的代码示例,我们将展示如何利用这些工具来构建高效、可扩展的并发程序。我们将讨论goroutine的轻量级特性,channel的同步通信能力,以及它们如何共同简化并发编程的复杂性。
|
jenkins Java 持续交付
Jenkins - 默认用户名和密码及启动方法
Jenkins - 默认用户名和密码及启动方法
8015 0
|
关系型数据库 MySQL Linux
Docker 安装 MySQL8.0
Docker 安装 MySQL8.0
6125 0
|
SQL 存储 JSON
Hive 建表语句解析
Hive 建表语句
831 0
|
设计模式 Kubernetes 安全
Dapr的云计算设计模式(1)
Dapr实际上是把分布式系统 与微服务架构实践的挑战以及k8s 这三个主题的全方位的设计组合,特别是《Kubernetes设计模式》一书作者Bilgin Ibryam提出的Multi-Runtime Microservices Architecture这一概念。分布式系统 和微服务架构实践的核心问题就是要解决系统复杂性这个难题,降低复杂性的通常做法就是分而治之。
305 0
Dapr的云计算设计模式(1)
|
数据采集 SQL 分布式计算
大数据数据采集的数据迁移(同步/传输)的Sqoop之基本命令和使用的查询库/表
在大数据领域中,Sqoop是一款非常流行的数据迁移工具。它可以将关系型数据库中的数据快速地移动到Hadoop生态系统中,方便我们进行更深入的分析和处理。本文将介绍Sqoop的基本命令及如何使用Sqoop来查询库表,希望能够为大家提供一些参考和帮助。
364 0
|
存储 Kubernetes 负载均衡
Kubernetes选择CNI插件的11个注意事项
Kubernetes选择CNI插件的11个注意事项
Kubernetes选择CNI插件的11个注意事项
天猫精灵开放平台入门使用
天猫精灵开放平台入门使用记录
967 0
天猫精灵开放平台入门使用