计算机组成原理 —— 第四章 存储器

第四章 存储器

4.1 概述

存储器分类

  • 按存储介质分类
  • 按存取方式分类
  • 按在计算机中的作用分类
    在这里插入图片描述

存储器的层次结构

  1. 存储器三个主要特性的关系
  2. 缓存 —— 主存层次和主存 —— 辅存层次

在这里插入图片描述

在这里插入图片描述

4.2 主存储器

概述

  • 主存的基本组成
    在这里插入图片描述

  • 主存和CPU的联系
    在这里插入图片描述

图中的驱动器、译码器、读写电路都制作在内部存储芯片。
而MAR、MDR制作在CPU芯片内,存储芯片和CPU芯片通过总线相连。

  • 主存中存储单元地址的分配
    大端法、小端法
    尤其是小端法要加以区分。
    在这里插入图片描述

  • 主存的技术指标
    容量、速度、带宽

半导体存储芯片简介

  1. 半导体存储芯片的基本结构

在这里插入图片描述
注:尤其是掌握片选线的作用

  1. 半导体存储芯片的译码驱动方式
    • 线选法(单重译码)
      只适用于芯片容量不大。在这里插入图片描述

    • 重合法(双重译码)
      在这里插入图片描述

随机存取存储器 ( RAM )

静态RAM、动态RAM的基本单元电路

  • 动态 RAM 和静态 RAM 的比较
    在这里插入图片描述
  • 动态RAM的刷新
    • 为何刷新
      电容极板漏抗导致电荷泄漏
    • 如何刷新
      先将原存信息读出,再由刷新放大器形成原信息,并重新写入。(该过程也叫数据再生),刷新过程是逐行刷新的。
    • 刷新周期
      在一定的时间内,对动态RAM的全部存储单元必须做一次刷新,否则造成信息丢失。这个最大间隔时间称为刷新周期
    • 刷新的方式
      集中刷新、分散刷新、异步刷新

只读存储器(ROM)

略。

存储器与CPU的连接

存储器容量的拓展
  • 位拓展(增加存储字长)
    地址线并联
    在这里插入图片描述

  • 字拓展(增加存储字的数量
    分清地址线片内地址管脚两个概念
    在这里插入图片描述

  • 字、位扩展

在这里插入图片描述
思路:
片选译码器一次性选中多片通过位拓展并联起来的芯片。
也就是说,大方面上是自拓展,片选线一次性选中几片芯片的时候,那几片是位拓展的关系。
注:还要考虑不规整的情况

连接要点(重点)
  • 地址线的连接
    1)CPU的地址线往往比存储芯片的地址管脚多;
    2)CPU地址线的低位与存储芯片的地址管脚相连;
    3)CPU地址线的高位通常用于提供片选信号
  • 数据线连接
    1)CPU的数据线同样比存储芯片的数据管脚多
    2)需把存储芯片的数据管脚分别连接在CPU的数据线上,完成位扩展
  • 读/写命令线的连接
    CPU的读/写命令线一般可直接与存储芯片的读/写控制端相连。
    并联方式。
  • 片选线的连接(低电平有效)
    1)片选信号与CPU的访存控制信号 MREQ-低电平有效 有关
    2)未与存储芯片连接的CPU高位地址需与共同产生存储芯片的片选信号(不能就不用了,否则会出现访问错误的内存的情况)
  • 芯片的选择
    根据存储区域综合选择芯片类型和数量。
    系统程序区:ROM;
    用户程序区:RAM
    系统程序工作区:RAM

具体步骤

  1. 根据地址范围(16进制转2进制)计算出芯片容量
    (地址范围可能是16进制、也可能是文字描述)
  2. 再根据存储区域选择芯片;
  3. 根据要用到的地址线分配地址线
  4. 区分不同芯片的地址线用作片选线
  5. 从未用到的地址线和MREQ用作译码器的使能端
    注意:不规整的情况——也就是说有一根线在一方面是一个(或多个)的地址线,另一方面也是另一片(或多个)芯片未用到的线,此时要将它和译码器的输出再通过与(与非)门电路。
    其次,存储芯片的地址线、数据线、片选线、读写线、接地线。不能少。

存储器的校验

提高访存速度的措施(了解即可)

  • 采用高速器件(从硬件本身)
  • 采用cache-主存层次(4,2介绍)
调整主存结构

下面主要介绍调整主存结构的方式

  • 单体多字系统
    一次性从同一地址读出多个字,增加存储器的带宽
  • 多体并行
    • 高位交叉编址(顺序存放)
    • 低位交叉(模M编址,M为模块数,一般取2的方幂,取质数是为了减少存储器冲突)

4.2 高速缓冲存储器(Cache)

概述

  • 问题引入
    1)在多体并行存储系统中,I/O设备访存优先于CPU,造成 CPU “空等” 现象;
    2)CPU 和主存(DRAM)的速度差异

  • *理论依据
    程序(或数据)访问的局部性原理。在一个较短的时间间隔内,CPU对局部范围的存储器空间频繁访问,而对此地址范围之外的存储空间访问很少。

Cache的工作原理

几个基本概念
字节: 8位
字:2-8个字节
字块(页):4-8个字

  • 主存和缓存的编址
    按块存储,块的大小相同
    毫无疑问,**
    **。

块长为一个存取周期内从主存调出的信息长度。
在这里插入图片描述

  • 命中与未命中

    • 命中,即主存块 调入 缓存,主存块与缓存块 建立 了对应关系,用 额外的标记记录与某缓存块建立了对应关系的主存块号
    • 未命中,主存块 未调入 缓存,主存块与缓存块 未建立 对应关系。
  • Cache 的命中率
    h = N c / ( N c + N m ) h = N_c/(N_c+N_m) h=Nc/(Nc+Nm)
    其中:Nc为访问Cache的总命中次数Nm为访问主存的总次数

  • Cache –主存系统的效率
    e = 访 问 C a c h e 的 时 间 平 均 访 问 时 间 e = \frac{访问Cache的时间}{平均访问时间} e=访访Cache
    设 Cache 命中率 为 h,访问 Cache 的时间为 tc
    访问 主存 的时间为 tm

    e = t c h ∗ t c + ( 1 − h ) ∗ t m ∗ 100 % e = \frac{t_c}{h*t_c+(1-h)*t_m} *100\% e=htc+(1h)tmtc100%

Cache的基本结构

在这里插入图片描述

Cache的读写操作
  • 读操作
    在这里插入图片描述
  • 写操作
    • 写直达法
      写操作时数据既写入Cache又写入主存,随时保证主存与Cache的数据始终一致
      但增加了访存的次数,降低了CPU的效率
    • 写回法
      写操作时只把数据写入 Cache 而不写入主存
      当 Cache 数据被替换出去时才写回主存 ,读操作 Cache 失效发生数据替换时,
      被替换的块需写回主存,增加了 Cache 的复杂性
Cache 的改进
  1. 增加 Cache 的级数
    片载(片内)L1 Cache,片外 L2 Cache
  2. 统一缓存和分立缓存
    指令 I-Cache,数据 D-Cache

Cache-主存的地址映射(重点)

替换算法

4.4 辅助存储器

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值