当前位置: 首页 > news >正文

【计算机组成原理】第三章 存储系统

第三章 存储系统

  • 3.1 存储器概述
    • 3.1.1 存储器的层次化结构
    • 3.1.2 存储器的分类
    • 3.1.3 存储器的性能指标
  • 3.2 主存储器
    • 3.2.1主存储器的基本组成
    • 3.2.2 DRAM和SRAM
      • 3.2.2.1 DRAM和SRAM的区别
      • 3.2.2.2 DRAM刷新
    • 3.2.3 ROM(Read Only Memory)
  • 3.3 主存储器容量的扩展
    • (1)位扩展法
    • (2)字扩展法
    • (3)字位扩展法
  • 3.4 外部存储器
    • 3.4.1 磁盘存储器
      • (1)磁盘结构
      • (2)磁盘的性能指标
      • (3)磁盘的地址
    • 3.4.2 SSD
  • 3.5 高速缓冲存储器
    • 3.5.1 Cache的工作原理
    • 3.5.2 Cache与主存的映射方式
      • (1)全相联映射
      • (2)直接映射
      • (3)组相联映射
    • 3.5.3 Cache替换算法
      • (1)RAND算法
      • (2)FIFO先进先出算法
      • (3)LRU最近最少使用算法
      • (4)LFU最不经常使用算法
    • 3.5.4 Cache写策略
      • 3.5.4.1 写命中
        • (1)写回法
        • (2)全写法
      • 3.5.4.2 写不命中
        • (1)写分配法
        • (2)非写分配法
      • 3.5.4.3 多级Cache

3.1 存储器概述

3.1.1 存储器的层次化结构

在这里插入图片描述

  • 主存-辅存:实现虚拟存储系统,解决了主存容量不够的问题
  • Cache-主存解决了主存与CPU速度不匹配的问题

3.1.2 存储器的分类

在这里插入图片描述

3.1.3 存储器的性能指标

  1. 存储容量:存储字数*字长
  2. 单位成本:每位价格=总成本/总容量。
  3. 存储速度:数据传输率数据的宽度/存储周期。
    在这里插入图片描述
    ①存取时间(Ta):存取时间是指从启动一次存储器操作到完成该操作所经历的时间,分为读出时间和写入时间。
    ②存取周期(Tm):存取周期又称为读写周期或访问周期。它是指存储器进行一次完整的读写操作所需的全部时间,即连续两次独立地访问存储器操作(读或写操作)之间所需的最小时间间隔。

3.2 主存储器

3.2.1主存储器的基本组成

在这里插入图片描述

3.2.2 DRAM和SRAM

3.2.2.1 DRAM和SRAM的区别

类型特点SRAM(静态RAM)DRAM(动态RAM)
电子结构在这里插入图片描述在这里插入图片描述
存储信息触发器电容
破坏性读出
读出后需要重写?(再生)不用需要
运行速度慢 (算上重写时间)
集成度
发热量
存储成本
易失/非易失性存储器?易失(断电后信息消失)易失(断电后信息消失)
需要“刷新”?不需要需要
送行列地址同时送分两次送 在这里插入图片描述

3.2.2.2 DRAM刷新

  1. 多久需要刷新一次?
    刷新周期:一般为2ms

  2. 每次刷新多少存储单元?
    以行为单位,每次刷新一行存储单元

  3. 如何刷新?
    有硬件支持,读出一行的信息后重新写入,占用1个读/写周期

  4. 在什么时刻刷新?
    假设DRAM内部结构排列成128X128的形式,读/写周期0.5us(存取周期)
    2ms共2ms/0.5us=4000个周期
    在这里插入图片描述

3.2.3 ROM(Read Only Memory)

  1. MROM(掩模式只读存储器)

    • 由厂家在生产过程中直接写入信息,之后不可重写。
    • 可靠性高,但灵活性差,生产周期长,适合批量定制。
  2. PROM(可编程只读存储器)

    • 用户可使用专用设备写入信息,但只能写一次,之后不可更改。
  3. EPROM(可擦除可编程只读存储器)

    • 允许用户多次擦除和重写信息。
    • UVEPROM:通过紫外线照射擦除所有信息。
    • EEPROM:通过电擦除方式擦除特定字。
  4. Flash Memory(闪速存储器)

    • 在EEPROM基础上发展而来,断电后仍能保存信息,可多次快速擦除重写。
    • 每个存储元只需单个MOS管,集成度高。
    • 写速度比读速度慢,因为需要先擦除再写入。
  5. SSD(固态硬盘)

    • 由控制单元和存储单元(Flash芯片)构成。
    • 存储介质与闪存类似,可多次快速擦除重写。
    • 速度快、功耗低、价格高,逐渐取代传统机械硬盘。

3.3 主存储器容量的扩展

(1)位扩展法

在这里插入图片描述

(2)字扩展法

在这里插入图片描述

(3)字位扩展法

在这里插入图片描述

3.4 外部存储器

3.4.1 磁盘存储器

(1)磁盘结构

磁盘结构

(2)磁盘的性能指标

  • 磁盘的容量:一个磁盘所能存储的字节总数称为磁盘容量。磁盘容量有非格式化容量和格式化容量之分。
    • 非格式化容量是指磁记录表面可以利用的磁化单元总数。
    • 格式化容量是指按照某种特定的记录格式所能存储信息的总量。
  • 记录密度:记录密度是指盘片单位面积上记录的二进制的信息量,通常以道密度、位密度和面密度表示。
    • 道密度是沿磁盘半径方向单位长度上的磁道数;
    • 位密度是磁道单位长度上能记录的二进制代码位数;
    • 面密度是位密度和道密度的乘积。
      在这里插入图片描述
  • 平均存取时间=寻道时间(磁头移动到目的磁道)+旋转延迟时间(磁头定位到所在扇区)+传输时间(传输数据所花费的时间)
    寻道算法(磁盘调度算法)
    在这里插入图片描述

(3)磁盘的地址

在这里插入图片描述

3.4.2 SSD

在这里插入图片描述

3.5 高速缓冲存储器

3.5.1 Cache的工作原理

在这里插入图片描述
局部性原理

3.5.2 Cache与主存的映射方式

在这里插入图片描述

(1)全相联映射

在这里插入图片描述
CPU访问主存地址1…1101 001110
①主存地址的前22位,对比Cache中所有块的标记;
②若标记匹配且有效位=1,则Cache命中,访问块内地址为 001110 的单元。
③若未命中或有效位=0,则正常访问主存

(2)直接映射

直接映射,主存块在Cache中的位置=主存块号%Cache总块数
在这里插入图片描述
CPU访问主存地址0…01 000 001110:
①根据主存块号的后3位确定Cache行
②若主存块号的前19位与Cache标记匹配且有效位=1,则Cache命中,访问块内地址为001110 的单元。
③若未命中或有效位=0,则正常访问主存

(3)组相联映射

组相联映射,所属分组=主存块号%分组数
在这里插入图片描述

CPU访问主存地址1…11 01 001110:
①根据主存块号的后2位确定所属分组号
②若主存块号的前20位与分组内的某个标记匹配且有效位=1,则Cache命中,访问块内地址为001110的单元。
③若未命中或有效位=0,则正常访问主存

3.5.3 Cache替换算法

在这里插入图片描述

(1)RAND算法

随机算法(RAND,Random):若Cache已满,则随机选择一块替换。
在这里插入图片描述

(2)FIFO先进先出算法

先进先出算法(FIFO,First In First Out):若Cache已满,则替换最先被调入Cache 的块
在这里插入图片描述

抖动现象:频紧的换入换出现象(刚被替换的块很快又被调入)

(3)LRU最近最少使用算法

近期最少使用算法(LRU, Least Recently Used):为每一个Cache块设置一个**“计数器”**
用于记录每个Cache块已经有多久没被访问了,当Cache满后替换“计数器”最大的。
在这里插入图片描述

(4)LFU最不经常使用算法

最不经常使用算法(LFU, Least Frequently Used):为每一个Cache块设置一个“计数器”,
用于记录每个Cache块被访问过几次。当Cache满后替换“计数器”最小的
在这里插入图片描述

3.5.4 Cache写策略

3.5.4.1 写命中

(1)写回法

写回法(write-back):当CPU对Cache写命中时,只修改Cache的内容,而不立即写入主存,只有当此块被换出时才写回主存
在这里插入图片描述

(2)全写法

全写法(写直通法,write-through):当CPU对Cache写命中时,必须把数据同时写入Cache和主存,一般使用写缓冲(write buffer)

在这里插入图片描述

3.5.4.2 写不命中

(1)写分配法

写分配法(write-allocate):当CPU对Cache写不命中时,把主存中的块调入Cache,在Cache中修改。通常搭配写回法使用。
在这里插入图片描述

(2)非写分配法

非写分配法(not-write-allocate):当CPU对Cache写不命中时只写入主存,不调入Cache。搭配全写法使用。
在这里插入图片描述

3.5.4.3 多级Cache

在这里插入图片描述

相关文章:

  • 第八届蓝桥杯单片机省赛
  • 【08】单片机变量命名规范指南
  • AI编程工具-(七)
  • 【鸿蒙开发】入门篇:node与express
  • 优化 NFS 挂载参数以提升可靠性与容错性
  • Spring Boot 日志
  • LabVIEW基于双通道FFT共轭相乘的噪声抑制
  • 关于统计建模大赛的选题
  • 【鸿蒙开发】Hi3861学习笔记- 软件定时器示例
  • 【Linux】进程间通信
  • 批量创建BOM的RFC接口
  • 常见的设计模式和应用场景(一)
  • 文本转语音-音画适时推送rtsp并播放
  • 静态路由实验
  • Spring Boot/Spring Cloud 整合 ELK(Elasticsearch、Logstash、Kibana)详细避坑指南
  • 【CSS3】元婴篇
  • [数据结构]并查集
  • 【 <一> 炼丹初探:JavaWeb 的起源与基础】之 JavaWeb 项目的部署:从开发环境到生产环境
  • 智能焊机监测系统:打造工业安全的数字化盾牌
  • Git合并工具在开发中的使用指南
  • 马克思主义理论研究教学名师系列访谈|石书臣:思政课是落实立德树人的关键
  • 中年人多活动有助预防阿尔茨海默病
  • 杨德龙:取得长期投资胜利法宝,是像巴菲特一样践行价值投资
  • 让党的理论“飞入寻常百姓家”,他如何做到有新意?
  • 江南华南较强降雨扰返程,北方大部需防风沙
  • 包揽金银!王宗源、郑九源夺得跳水世界杯总决赛男子3米板冠亚军