你可能会想存储器中的数据是通过什么途径传输到CPU中的呢?这里就涉及到总线的相关知识。
总线是连接多个部件的信息传输线,是各个部件共享的传输介质。
总线的演化
以运算器为中心的分散连接方式

这种总线连接方式存在很大的弊端,存储器与IO设置传输数据都需要经过运算器处理,很大程度上会影响CPU完成其他逻辑的处理,从而影响CPU性能
以存储器为中心的分散连接方式

后续经过改进为以存储器为核心的分散连接方式,可以解决以运算器为核心的弊端,但是仍然存在很大的不方便行,如果后续扩从输入,输出设备变的相当麻烦,因此在分散的连接方式中衍生出了总线连接方式。
面向CPU的双总线结构

M总线:用于CPU与主存交换数据,也称为存储总线
I/O总线:IO设备通过I/O接口挂载到IO总线上
但是以上的总线结构,主存于I/O设备进行数据交换时仍然需要CPU参与,仍然存在性能问题,但是以上总线连接方式方便了I/O设备的增减。
单总线结构(系统总线)

以上总线连接方式实现了,I/O设备与主存交换数据不通过CPU处理,并且实现了I/O设备方便的增添,但是仍然存在一个问题,当同一时刻多个部件都要占用总线传输数据时,就会产生冲突,因此需要设置总线判优逻辑,让各个部件按照优先级高低占用总线,也会稍微影响整机的工作速度。
面向存储器的双总线结构(系统总线)

针对于单总线架构存在的问题,出现了以上面向存储器的双总线结构,在CPU和主存之间搭建一个存储总线,这组总线只负责主存和CPU之间传输信息,这种方式大大的减轻了系统总线的负担,实现了I/O设备的方便增减以及I/O设备与存储器之间数据传输不经过CPU。
现代计算机大部分都是采用面向存储器的总线架构。
总线分类
指CPU与主存,I/O设备之间的信息传输线
按照传输数据不同分为:
用来传输各个部件之间的数据信息,双线传输总线
数据总线
地址总线
主要用来指出数据中线中的数据在主存单元中的地址或者I/O设备的地址
控制总线
数据总线/地址总线由于被挂载在上面的部件共享,因此需要控制总线决定在某一时刻由谁占用,对于任一控制线而言,他的传输是单向的,例如存储器读写命令,IO读写命令都是由CPU发出,到那时对于控制总线总体而言又认为其是双向的,例如当某一个IO设备数据准备就绪就会向CPU发送中断请求。
芯片内部的总线,例如在CPU内部,寄存器与寄存器之间,计算逻辑单元ALU与寄存器之间都是通过片内总线。
片内总线
系统总线
你点的每一个在看,我都认真当成了喜欢




