littlecan2020

考纲(三)、存储器层次结构

(1)存储器的层次化结构

(2)主存储器与CPU的连接

(3)高速缓冲存储器(Cache)

  • Cache的基本工作原理

  • Cache和主存之间的映射方式

  • Cache中主存块的替换算法与写策略

  • 多层次Cache性能计算

(4)虚拟存储器

  • 虚拟存储器的基本概念
  • 页式虚拟存储器
  • TLB(快表)

3.1 存储器的层次化结构

3.1.1 存储器的分类与性能指标

image-20201015201705558

3.1.3 存储器的层次结构

  • Reg - Cache - MM - 2ndS - 3rdS

  • 二级存储系统:高速缓冲存储器(Cache)+ 主存储器

  • 三级存储系统:Cache + 主存储器 + 辅存储器(虚拟存储器)

3.2 主存储器与CPU的连接

3.2.1 主存储器的存储单元电路

  • *SRAM、DRAM、ROM存储器的工作原理

  • SRAM 与 DRAM 的对比

    image-20201015201941613

3.2.2 主存储器存储芯片的内部结构

(1) 芯片容量的基本描述

存储位元 = 字单元数 X 每个字单元的位数:$2^n×m$

  • 单位:$K=2{10}$,$M=2{20}$,$G=2{30}$,$T=2{40}$
  • 【例】容量标识为 1K×2 的存储芯片:
    • 意义任意时刻可以(且只能)访问1024个独立字单元中的任一个
    • 有多少个存储位元:2048个(每个存储位元可存储 1 位二进制代码);
    • 有多少条地址线:1024个(按字单元寻址地址线数 = 字单元数
    • 需要多少条数据线:2条(一次访问一个字单元,数据线数 = 每个字单元的位数​
(2) 存储芯片的基本结构

image-20201019172603784

(3) 存储芯片的地址结构
一维地址结构(线选法) 二维地址结构(重合法)
矩阵 $2^n×m$ ,选择线(W) $2^n$,数据线(D) $m$ 矩阵 $2{\frac{n}{2}}×(2{\frac{n}{2}}×m)$,选择线 $2{\frac{n}{2}}+2{\frac{n}{2}}$,数据线 $m$
image-20201015212252118 image-20201015213604899
(4) 存储芯片实例 —— SRAM

SRAM 2114(1K×4)芯片结构图

image-20201019170752233

(5) 存储芯片实例 —— DRAM

DRAM 4M×4 芯片结构图(内部包含刷新电路)

image-20201015214355835

3.2.3 存储器的扩展

单片存储芯片不能满足存储系统的需求时,需进行存储扩展

(1) 位扩展 2$^n$×m
  • 原因:存储字单元数量够(地址空间满足),但每个字的位数不够。

  • 方法:多个存储器芯片的数据位空间拼在一起。

  • 实例:1K×4的SRAM芯片构成1K×8的存储器

    image-20201019175733478

(2) 字扩展 2$^n$×m
  • 原因:每个字的位数够,存储字单元数量不够(地址空间不满足)。

  • 方法:多个存储器芯片的字空间(地址空间)拼在一起。

  • 实例:1K×8的SRAM芯片构成4K×8的存储器

    image-20201019180403492

(3) 混合扩展 2$^n$×m
  • 实例:4K×4的SRAM芯片构成16K×8的存储器

    image-20201019181736930

(4) 扩展方法总结与示例
  • 基本思路

    1. 确定每个芯片的地址管脚数、数据管脚数。
    2. 确定整个存储空间所需的地址总线和数据总线的数量。
    3. 计算所需芯片的数量,确定每个芯片在整个存储空间中的地址空间范围、位空间范围。
    4. 所有芯片的地址管脚全部连接到地址总线对应的地址线上。
    5. 同一字空间的芯片CS信号连在一起。
    6. 同一位空间的数据线连在一起,并连接到对应的数据总线上。
    7. 根据每个芯片的地址空间范围,设计芯片所需的片选信号逻辑,CS逻辑电路的输入一定是地址总线中,没有连接到芯片地址管脚上的那部分地址线。
    8. 统一读写控制。
  • 示例 1:用3片16K×4的SRAM芯片和若干8K×4的SRAM芯片组成一个64K×8的按字节编址的存储器。

    点击显示详细步骤

  • 示例 2

3.2.4 DRAM的刷新

(1) 为什么需要刷新?
  • DRAM存储单元电路采用电容结构存储状态,在保护状态下,两级间存在漏电流,导致电容上的电荷出现变化,故必须在一个时间内重写数据,这个时间称为单元电路的刷新时间。(一般为4ms、8ms等。)
  • 同时,由于读出操作是一种破坏性操作,读1时,Cs放电;读0时,Cs充电;所以读出操作后,原保存在Cs上的数据(电荷)被破坏,应该立即进行恢复(重写或刷新)
(2) 刷新的原理是什么?
  • 刷新由传感放大器在读出过程中同时完成,即读过程实际上就是一次刷新过程
  • DRAM的刷新,就是通过这样的读操作来实现的。
  • 特点:①按行刷新,所有芯片同时进行;②刷新操作与CPU访问内存分开进行。
(3) 刷新的方式是什么?
集中刷新方式 分散刷新方式 分布式 (异步) 刷新方式
原理 将刷新周期分成两部分:在一个时间段内,刷新存储器所有行,此时CPU停止访问内存;另一个时间段内,CPU可以访问内存,刷新电路不工作。 CPU与刷新电路交替访问内存,一个存储周期刷新1行,下一个存储周期刷新另一行,直至最后1行后,又开始刷新第1行。 保证在一个刷新周期内将存储芯片内的所有行刷新一遍,可能等时间间距,也可能不等。
刷新间隔 刷新周期 刷新行数 × 存储周期
≤ 刷新周期
刷新周期
示意图 image-20201020164113737 image-20201020164148160 image-20201020164204574
特点 存在不能进行读写操作的死区时间 ①不存在停止读写操作的死时间;
②但使得系统速度降低
①前两种方式的结合;
②可减少死时间,同时保证性能

3.3 高速缓冲存储器(Cache)

分类:

技术点:

相关文章:

  • 2022-12-23
  • 2021-04-26
  • 2021-08-17
  • 2022-12-23
  • 2021-12-31
  • 2021-10-13
  • 2021-07-11
  • 2022-01-03
猜你喜欢
  • 2021-12-31
  • 2021-06-11
  • 2021-12-21
  • 2021-06-14
  • 2021-10-19
相关资源
相似解决方案