存储器概述

存储器层次系统

程序运行的局部性:

  • 空间局部性 - 短时间内程序所访问的存储器地址在很大比例上集中在存储器地址空间的很小范围内

  • 时间局部性 - 在一小段时间内最近被访问过的程序和数据很可能再次被访问

越接近CPU,速度越快,容量越小,成本越高

存储器编址方式

存放一个机器字的存储单元,通常称为字存储单元,相应的单元地址叫字地址。而存放一个字节的单元,称为字节存储单元,相应的地址称为字节地址。如果计算机中可编址的最小单位是字存储单元,则该计算机称为按字寻址的计算机。

  • 按字节编址

  • 按字编址

  • 按半字编址等

物理存储器中低字节存放在前面,高字节存放在后面,成为LE|Little Endian反之成为BE|Big Endian

处理器与主存储器的连接

  • 存储体: 存储体由许多存储单元组成,每个存储单元又包含若干个存储元件,每个存储元件可以寄存一位二进制代码0/1。

对于上述概念我们可以这样来记忆: 存储体呢,相当于一栋大楼,大楼内有很多房间(存储单元),每个房间内又有很多床位(存储元件),那么0代表床上无人,1代表床上有人。

  • 存储单元: 以8位二进制作为一个存储单元,也就是一个字节。一个存储单元可以存储一串二进制代码,称这串二进制代码为一个存储字,代码位数位存储字长。存储单元有编号,这些编号称为存储单元的地址号。存储单元按地址寻访。这些地址都是二进制的形式。

  • MAR 存储器地址寄存器。保存了存储单元的地址(编号)。其位数反映存储单元的个数。

比如有16个存储单元,而存储单元的地址是用二进制表示的,那么用4位二进制数就可以表示。MAR的位数就是4位。那么相反,如果我们知道MAR有4位,那么存储单元就有24个,16个存储单元。所以MAR反映存储单元的个数。

  • MDR 存储器数据寄存器,其位数反映存储字长。存放的是:存储器中从存储某单元读出、或要写入某存储单元的数据(代码)。如果MDR=8,每个存储单元进行访问时,数据是8位,存储字长8位。

  • 地址总线n位的话可寻址最大主存空间为2n

  • 数据总线宽度为一个地址内的比特数,通常为8的倍数

  • 控制总线确定总线周期的类型和本次操作完成的时刻

存储器的分类

按存储介质分

半导体存储器

磁存储器

激光存储器

按存取方式分

随机存储器

顺序存储器

按读写功能分

  • 只读存储器 (ROM)

    存储器内容是预置的,固定的,无法改写

  • 读/写存储器

    既能读出也能写入的存储器

    随机存储器RAM

按信息的可保存性分

  • 易失性存储器 Volatile Memories

    断电后信息消失

    SRAM

    DRAM

  • 非易失性存储器 Non-Volatile Memories

    断电后仍能保存信息

    磁存储器、激光存储器、NVRAM

按在计算机系统中的作用分

主存储器

辅助存储器

高速缓冲存储器 Cache

控制存储器

存储器的分级结构

存储器读写过程

  • 读过程

    • 给出目标地址

    • 给出片选信号与读命令

    • 外部保存读出内容

  • 写过程

    • 给出目标地址

    • 给出片选信号与待写入数据

    • 给出写命令

存储器的性能指标

  • 存储容量: 主存 存放二进制代码的总位数

  • 存取时间: 存储器的访问时间,读出时间和写入时间

  • 存储周期: 连续两次独立的存储器操作(读/写)所需的最小间隔时间,读周期和写周期

  • 存储器带宽: 单位时间内存储器存取的信息量 | Byte/s

1Byte = 8Bit (bit是最小的存储单位即1个二进制位)

1MB = 8Mbit

Mbps是速度单位 | 1MB/s = 8Mbps

Last updated

Was this helpful?