一、存储器概述
【总结】:
1. 存储器的分类
1)按在计算机中的作用(层次)分类
Cache 和主存可以直接被 CPU 读写。
-
主存储器。简称主存,又称内存储器(内存),用来存放计算机运行期间所需的程序和数据,CPU 可以直接随机地对其进行访问,也可以和高速缓冲存储器(Cache)及辅助存储器交换数据。
其特点是容量较小、存取速度较快、每位的价格较高。 -
辅助存储器。简称辅存,又称外存储器(外存),用来存放当前暂时不用的程序和数据,以及一些需要永久性保存的信息。辅存的内容需要调入主存后才能被 CPU 访问。
其特点是容量大、存取速度较慢、单位成本低。 -
高速缓冲存储器。简称 Cache ,位于主存和 CPU 之间,用来存放当前 CPU 经常使用的指令和数据,以便 CPU 能高速地访问它们。Cache 的存取速度可与 CPU 的速度相匹配,但存储容量小、价格高。现代计算机通常将它们制作在 CPU 中。
2)按存储介质分类
按存储介质,存储器可分为磁表面存储器(磁盘、磁带)、磁芯存储器、半导体存储器(MOS 型存储器、双极型存储器)和光存储器(光盘)。
3)按存取方式分类
① 随机存储器(RAM):
存储器的任何一个存储单元都可以随机存取,而且存取时间与存储单元的物理位置无关。其优点是读写方便、使用灵活,主要用作主存或高速缓冲存储器。RAM 又分为静态 RAM 和动态 RAM 。
② 只读存储器(ROM):
存储器的内容只能随机读出而不能写入。信息一旦写入存储器就固定不变,即使断电,内容也不会丢失。因此,通常用它存放固定不变的程序、常数和汉字字库等。它与随机存储器可共同作为主存的一部分,统一构成主存的地址域。
③ 串行访问存储器:
对存储单元进行读/写操作时,需按其物理位置的先后顺序寻址,包括顺序存取存储器(如磁带)与直接存取存储器(如磁盘、光盘)。
-
顺序存取存储器的内容只能按某种顺序存取,存取时间的长短与信息在存储体上的物理位置有关,其特点是存取速度慢。
-
直接存取存储器既不像 RAM 那样随机地访问任何一个存储单元,又不像顺序存取存储器那样完全按顺序存取,而是介于两者之间。存取信息时通常先寻找整个存储器中的某个小区域(如磁盘上的磁道),再在小区域内顺序查找。
【拓展】:相联存储器的基本原理是把存储单元所存内容的某一部分作为检索项(即关键字项)去检索该存储器,并将存储器中与该检索项符合的存储单元内容进行读出或写入。所以它是按内容或地址进行寻址的,价格较为昂贵。一般用来制作 TLB 、相联 Cache 等。
4)按信息的可保存性分类
-
断电后,存储信息即消失的存储器,称为易失性存储器,如 RAM 。
-
断电后信息仍然保持的存储器,称为非易失性存储器,如 ROM、磁表面存储器和光存储器。
-
若某个存储单元所存储的信息被读出时,原存储信息被破坏,则称为破坏性读出。
-
若读出时,被读单元原存储信息不被破坏,则称为非破坏性读出。
注意:具有破坏性读出性能的存储器,每次读出操作后,必须紧接一个再生的操作,以便恢复被破坏的信息。
2. 存储器的性能指标
存储器有 3 个主要性能指标,即:存储容量、单位成本和存储速度。这 3 个指标相互制约,设计存储器系统所追求的目标就是大容量、低成本和高速度。
3. 多级层次的存储系统
存储系统层次结构主要体现在 Cache - 主存层和主存-辅存层。前者主要解决 CPU 和主存速度不匹配的问题,后者主要解决存储系统的容量问题。在存储体系中,Cache、主存能 CPU 直接交换信息,辅存则要通过主存与 CPU 交换信息;主存与 CPU 、Cache、辅存都能交换信息。
存储器层次结构的主要思想是:上一层的存储器作为低一层存储器的高速缓存。
① 从 CPU 的角度看,Cache-主存层速度接近于 Cache ,容量和位价却接近于主存。
② 从主存 - 辅存层分析,其速度接近于主存,容量和位价却接近于辅存。
这就解决了速度、容量、成本这三者之间的矛盾,现代计算机系统几乎都采用这种三级存储系统。需要注意的是,主存和 Cache 之间的数据调动是由硬件自动完成的,对所有程序员均是透明的;而主存和辅存之间的数据调动则是由硬件和操作系统共同完成的,对应用程序员是透明的。
在主存-辅存层的不断发展中,逐渐形成了虚拟存储系统,在这个系统中程序员编程的地址范围与虚拟存储器的地址空间相对应。对具有虚拟存储器的计算机系统而言,编程时可用的地址空间远大于主存空间。
注意:在 Cache-主存层和主存-辅存层中,上一层中的内容都只是下一层中的内容的副本,也即 Cache(或主存)中的内容只是主存(或辅存)中的内容的一部分。
二、主存储器
1. 主存储器的基本组成
【总结】:
1)基本的半导体元件及原理
通常把存放一个二进制位的物理器件称为存储元,它是存储器的最基本的构件。地址码相同的多个存储元构成一个存储单元。若干存储单元的集合构成存储体。
由一个个存储 0 或 1 的记忆单元(也称存储元件)构成的存储矩阵(也称存储体)是存储器的核心部分。记忆单元是具有两种稳态的能表示二进制 0 和 1 的物理器件。
同一个存储器中,每个存储单元的宽度必须相同,即每个存储单元存储的比特位数必须相同。
2)存储器芯片的基本原理
指令执行过程中需要访问主存时, CPU 首先把被访问单元的地址送到 MAR 中,然后通过地址线将主存地址送到主存中的地址寄存器,以便地址译码器进行译码选中相应单元,同时 CPU 将读写信号通过控制线送到主存的读写控制电路。
-
如果是写操作,那么 CPU 同时将要写的信息送到 MDR 中,在读写控制电路的控制下,经数据线将信号写入选中的单元;
-
如果是读操作,那么主存读出选中单元的内容送到数据线,然后送到 MDR 中。
数据线的宽度与 MDR 的宽度相同,地址线的宽度与 MAR 的宽度相同。