程序控制”的基础。在计算机系统中,规模较大的存储器往往分成若干级,称为存储器系统。
传统的存储器系统一般分为高速缓冲存储器(Cache)、主存、辅存三级。主存可由 CPU
直接访问,存取速度快,但容量较小,一般用来存放当前正在执行的程序和数据。辅存设置
在主机外部,它的存储容量大,价格较低,但存取速度较慢,一般用来存放暂时不参与运行
的程序和数据,CPU 不可以直接访问辅存,辅存中的程序和数据在需要时才传送到主存,
因此它是主存的补充和后援。当 CPU 速度很高时,为了使访问存储器的速度能与 CPU 的
速度相匹配,又在主存和 CPU 间增设了一级 Cache。Cache 的存取速度比主存更快,但容
量更小,用来存放当前最急需处理的程序和数据,以便快速地向 CPU 提供指令和数据。因
此,计算机采用多级存储器体系,确保能够获得尽可能高的存取速率,同时保持较低的成本。
多层级的存储体系之所以能用低投入换来较高的存取速率,得益于局部性原理。局部性
原理是指程序在执行时呈现出局部性规律,即在一较短的时间内,程序的执行仅局限于某个
部分。相应地,它所访问的存储空间也仅局限于某个区域。程序局部性包括时间局部性和空
间局部性,时间局部性是指程序中的某条指令一旦执行,不久以后该指令可能再次执行。产
生时间局部性的典型原因是由于程序中存在着大量的循环操作;空间局部性是指一旦程序访
问了某个存储单元,不久以后,其附近的存储单元也将被访问,即程序在一段时间内所访问
的地址可能集中在一定的范围内,其典型情况是程序顺序执行。
存储器中数据常用的存取方式有顺序存取、直接存取、随机存取和相联存取四种。
(1)顺序存取:存储器的数据以记录的形式进行组织。对数据的访问必须按特定的线
性顺序进行。磁带存储器采用顺序存取的方式。
(2)直接存取:与顺序存取相似,直接存取也使用一个共享的读写装置对所有的数据
进行访问。但是,每个数据块都拥有唯一的地址标识,读写装置可以直接移动到目的数据块
所在位置进行访问。存取时间也是可变的。磁盘存储器采用直接存取的方式。
(3)随机存取:存储器的每一个可寻址单元都具有自己唯一的地址和读写装置,系统
可以在相同的时间内对任意一个存储单元的数据进行访问,而与先前的访问序列无关。主存
储器采用随机存取的方式。
(4)相联存取:相联存取也是一种随机存取的形式,但是选择某一单元进行读写是取
决于其内容而不是其地址。与普通的随机存取方式一样,每个单元都有自己的读写装置,读
写时间也是一个常数。使用相联存取方式,可以对所有的存储单元的特定位进行比较,选择
符合条件的单元进行访问。为了提高地址映射的速度,Cache 采取相联存取的方式。
1.2.1 主存储器
主存用来存放计算机运行期间所需要的程序和数据,CPU 可直接随机地进行读/写。主
存具有一定容量,存取速度较高。由于 CPU 要频繁地访问主存,所以主存的性能在很大程
度上影响了整个计算机系统的性能。根据工艺和技术不同,主存可分为随机存取存储器和只
读存储器。
1.随机存取存储器
随机存取存储器(Random Access Memory,RAM)既可以写入也可以读出,但断电后信
息无法保存,因此只能用于暂存数据。RAM 又可分为 DRAM(Dynamic RAM,动态 RAM)
和 SRAM(Static RAM,静态 RAM)两种,DRAM 的信息会随时间逐渐消失,因此需要定时
对其进行刷新维持信息不丢失;SRAM 在不断电的情况下信息能够一直保持而不会丢失。
DRAM 的密度大于 SRAM 且更加便宜,但 SRAM 速度快,电路简单(不需要刷新电路),
然而容量小,价格高。
2.只读存储器
只读存储器(Read Only Memory,ROM)可以看作 RAM 的一种特殊形式,其特点是:
存储器的内容只能随机读出而不能写入。这类存储器常用来存放那些不需要改变的信息。由
评论0
最新资源