-
为什么要使用总线,总线又是什么?
冯﹒诺依曼计算机包含5个部件:运算器、控制器、输入设备、输出设备和存储器。
现代计算机将运算器和控制器集成在一起,称为中央处理器cpu;把输入和输出设备简称为I/O设备。所以现代计算机可认为由3打部分组成:cpu、 I/O设备和主存储器。cpu和主存合起来又称为主机,I/O设备又称为外部设备。
计算机五大部分之间的连接方式有2种:分散连接和总线连接。早期的计算机采用分散连接,即每2个部件之间相互连接,这种方式有2个缺点:内部连线复杂,所占的体积比较大;如果需要增加I/O设备,会非常的麻烦。所以出现了总线连接,它是连接各个部件的公共信息传输线。 -
总线上信息的传送
总线实际上是由许多传输线或通路组成,信息的传送分为串行和并行。串行是将需要传输的信息一位一位的放到总线上,接收方再一位一位的接收;并行是将需要传输的多位数据同时放到总线上,接收方同时接收多位二进制数,所以需要很多传输线,线与线之间会有干扰,当传输距离比较长,接收端信号会失真。串行一次能传输1个信号,并行一次能传输多个信号,这样一分析,好像并行优于串行,其实未必,具体可以参考这篇文章:并行传输VS串行传输。 -
总线的结构
首先看单总线结构,如果主存和i/o设备正在进行通信,cpu如果想访问总线,这是不可能实现的,所以会影响cpu的工作,但是cpu仍然可以处理不访问主存或i/o设备的操作。如果i/o设备很多,意味着系统总线很长,主存和远端i/o设备交换信息时会有延迟。
所以有改进后面向cpu的双总线结构,缺点是主存和i/o设备交换信息时,要经过cpu,所以会影响cpu的工作效率。
还有一种以存储器为中心的结构。与单总线结构相比,单独开辟cpu和主存间的通路,叫做存储总线,只供cpu和主存交换信息,提高了效率,又减轻了系统总线的负担,还保留了主存和i/o设备交换信息时不经过cpu的特点。但是注意,主存不能同时和cpu、i/o设备交换信息,也就是系统总线和存储总线不能同时工作,因为虽然有双口ram,但是给2个端口同时传送数据的的技术,还是用分时来实现的。
-
总线的分类
a、片内总线:芯片内部的总线
b、系统总线:cpu、主存和i/o设备之间的信息传输线, 分为以下几种:
数据总线:双向,与机器字长、存储字长有关
地址总线:单向,与存储地址、i/o地址有关
控制总线:有出(存储器读写、总线允许、中断确认),有入(中断请求、总线请求)
c、通信总线:用于计算机系统之间或计算机系统与其他系统之间的通信 -
其他总线结构
将单总线结构改动一下,可以得到双总线结构。将速度较低的i/o设备从单总线上分离出来,形成主存总线与i/o总线分开的结构。通道是一个具有特殊功能的处理器,专门由于输入输出工作。通道有自己的控制器,有自己的指令系统,能够执行一些简单的程序。由通道对i/o进行统一管理,通道程序通常情况下由操作系统编写,不是人工编写的。
再拓展一下,可以得到多总线结构。如果将速率不同的设备进行分类,然后将他们连接在不同的通道上。下面是三总线结构,高速设备通过dma总线与主存进行数据交换,低速设备要和主存交换信息的话需要经过i/o总线和cpu。
下面是三总线结构的另一形式,cpu的更新换代速度很快,性能提升速度也很快,而内存的性能提升速度相对较慢,但是cpu和内存交换数据的频率又很高,为了解决性能上的不匹配,因此引入cache,将cpu工作时需要用到的主存中的数据提前放到cache中。局部总线将cpu与cache或其他局部设备相连接,扩展总线支持各类i/o设备,但是低速和高速设备同时相连,会影响i/o的性能。
下面是四总线结构,在三总线结构的基础上,将低速和高速设备分开,提高数据传输效率。
总线
最新推荐文章于 2023-01-15 15:36:21 发布