计算机组成原理(2)总线

本文介绍了总线相关知识。总线是连接多个部件的共享传输介质,分数据、地址和控制三种,物理上可能复用。其实现架构有单总线、双总线、三总线和多总线,各有特点。总线控制由专门部件负责,设备通过请求线路争抢资源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

2.1.概述

2.2.实现

2.2.1.单总线

2.2.2.双总线

 2.2.3.三总线

2.2.4多总线

2.3.控制


2.1.概述

总线,连接多个部件的信息传输线,是各个部件共享的传输介质。当多个部件与总线相连时,在某一时刻,只允许有一个部件向总线发送消息,而多个部件可以同时从总线上接收相同的信息。

总线一共有三种:

  • 数据总线

    传输数据信息

  • 地址总线

    传输数据总线上传输的数据在内存中的地址

  • 控制总线

    传输控制信号,如中断信号、复位信号、就绪信号等。

总线分布在主板上,各个部件通过各自的接口插入总线。理论上总线是有三种,但是物理上可能存在着复用,比如三条总线可以时分复用一条物理线路,以节约硬件资源。

2.2.实现

总线的落地实现有几种架构:

  • 单总线
  • 双总线
  • 三总线
  • 多总线

2.2.1.单总线

单总线并不是说数据总线、地址总线、控制总线复用一条线路,而是说将系统总线抽象成一个整体来看待后,所有设备其实都接在系统总线的一个实体上。

由于总线在同一时间只允许一个部件发送消息,所以单总线存在一个明显的问题。执行IO操作时,IO设备占用总线后,主存与IO设备之间进行数据交互,IO向总线上写入数据,主存去总线上读取数据,(由计算机的存储体系决定,CPU不会直接去和IO进行交互,由内存读入IO的数据,再将数据通过总线交给CPU),整个期间CPU会空转,严重浪费CPU资源。

2.2.2.双总线

双总线系统就是为了解决单总线系统中CPU空转的问题。双总线系统即在CPU和主存之间加上一条总线,专门用于CPU和主存之间进行数据的交互。双总线中目前还存在一定的技术瓶颈,即主存无法同时向两条总线中写数据,目前还是采用分时的方式进行写入。

 2.2.3.三总线

有些高速外设,其速率是可以和主存匹配的,走总线的话会耽搁时间,三总线系统就是为了解决这个问题出现的一种架构,即在逻辑上将高速设备和低速设备分离(分开对待),在主存和IO之间给一条专门的总线用于IO设备与主存的直接交互。高速设备走这条专用的总线,低速设备走老总线。 

2.2.4多总线

 多总线系统是指将系统总线拆成几个实体(几段),实体之间通过通道来连接,例如拆成下图这种,一条总线管内设,一条总线管外设,中间通过通道来连同:

总线是为部件之间提供信息传输能力,因此想要进行部件间的通信,都可架起总线,所以多总线系统可以很复杂,可以每个设备都单独接入总线,架构图可以远比上图更复杂。

2.3.控制

总线的控制由专门的总线控制部件来负责,各个设备争抢总线时都通过专门的请求线路去向控制部件请求,总线控制器面对设备的总线资源请求时,会发信号询问总线上的所有设备,如果此时有设备正在占用总线,该设备会1返回信号告知控制部件——“总线忙”。

(具体的控制方式有很多种,下图只是其中的一种,不过各种实现的原理都相似)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_BugMan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值