前言

上次咱们介绍了在执行一段程序中CPU如何与主存交互,以及CPU与主存的根本形成。

主存次要由MAR,MDR,主存储体形成,而主存储体只有存储的是01数据。读数据的时候,咱们向MAR传入想要获取的数据的地址,就能够从MDR获取想要的数据,写数据的时候,CPU将想要把数据想要写入的地址放入MAR中,并把想要写入的数据放入MDR中,主存就会往存储体写入地址。

存储体里的数据是一串一串数据存储,每一串数据领有一个地址,咱们取数据时也是一串一串的存取。咱们称这个串的长度为存储单元。

上面让咱们看看主存是如何实现数据存储的性能的。

存储单元


一个存储元存储一个0或者1数据,次要为存储在电容上,MOS管管制输出或输入。如果电容上极板为5v,给MOS管1信号时,存储元接通,输入5v信号,也就代表输入1,输入0同理。当写入数据时,也要给MOS管1信号,同时给进口一个5v电压,电容下级板就会放弃5v。

咱们将多个存储元串联,形成一个存储单元,存储单元贮存一串二进制数据。
咱们给上边的红线一个高电平,代表读取上边的存储单元数据,上边的存储单元里每一个存储元存储的数据就会通过绿线输入进去。实现一次数据的读取。
读个存储单元形成一个存储体。

咱们将管制每一个存储单元的线接通到译码器上,译码器输出存储单元序号(地址),通过译码器变为某根输入为1,使得数据读出,这就实现了依据地址读数据。

为了管制主存读还是写,咱们在加上读控制线与写控制线,同时退出片选线,代表这块芯片被选入。

咱们将方才的电路封装,就是这个样子。

一个内存条领有很多个芯片,如上图一个内存条由8个芯片形成,咱们想要的数据只存储在某一块芯片上,所以咱们须要通过一个信号使得某个芯片工作,而其余芯片不工作,这就是片选线的作用。

减少主存的存储字长-—位扩大

减少主存的存储字数--字扩大

如果我有8片8k1位的存储芯片,想组成一块8k8位的主存,就须要用到位扩大。

如果我有两片8k8位的存储芯片,想组成一块16K8位的主存,就须要用到字扩大。抉择哪片芯片的线路叫做译码器。

如果咱们须要接4片芯片,就须要一个2—4译码器。

字位扩大


将二者组合