计组之存储系统

存储器概述

分类

1.按在计算机中的作用(层次)分类

  • 主存储器。CPU可以直接随机地对其进行访问,也可以和高速缓冲存储器(Cache)及辅助存储器交换数据。
  • 辅助存储器。辅存的内容需要调入主存后才能被CPU访问。
  • 高速缓冲存储器。位于主存和CPU之间,现代计算机通常将它们制作在CPU中。

|---------|--------------|---------------------------------|-----------------------------------|
| | 别名 | 用途 | 特点 |
| 主存储器 | 主存,内存储器(内存) | 用来存放计算机运行期间所需的程序和数据 | 容量较小、存取速度较快、每位的价格较高。 |
| 辅助存储器 | 辅存,外存储器 (外存) | 用来存放当前暂时不用的程序和数据,以及一些需要永久性保存的信息 | 容量大、存取速度较慢、单位成本低。 |
| 高速缓冲存储器 | Cache | 用来存放当前 CPU经常使用的指令和数据 | Cache的存取速度可与CPU的速度相匹配,但存储容量小、价格高。 |

2.按存储介质分类

  • 存储器可分为磁表面存储器(磁盘、磁带)
  • 磁芯存储器
  • 半导体存储器(MOS型存储器、双极型存储器)
  • 光存储器(光盘)。

3.按存取方式分类

  • 随机存储器(RAM)。 RAM又分为静态RAM和动态RAM
  • 只读存储器(ROM)。
  • 串行访问存储器。包括:顺序存取存储器(如磁带)与直接存取存储器(如磁盘、光盘)。
  • 顺序存取存储器 的内容只能按某种顺序存取,存取时间的长短与信息在存储体上的物理位置有关,其特点是存取速度慢。
  • 直接存取存储器 既不像RAM那样随机地访问任何一个存储单元,又不像顺序存取存储器那样完全按顺序存取,而是介于两者之间。存取信息时通常先寻找整个存储器中的某个小区域(如磁盘.上的磁道),再在小区域内顺序查找。

|------------|-------------------------------------------------|
| | 特点 |
| 随机存储器(RAM) | 随机存取,而且存取时间与存储单元的物理位置无关读写方便、使用灵活,主要用作主存或高速缓冲存储器 |
| 只读存储器(ROM) | 只能随机读出而不能写入,信息一旦写入存储器就固定不变,即使断电,内容也不会丢失 |
| 串行访问存储器 | 对存储单元进行读/写操作时, 需按其物理位置的先后顺序寻址 |

4.按信息的可保存性分类

  • 断电后,存储信息即消失的存储器,称为易失性存储器,如RAM。
  • 断电后信息仍然保持的存储器,称为非易失性存储器,如ROM、磁表面存储器和光存储器。
  • 若某个存储单元所存储的信息被读出时,原存储信息被破坏,则称为破坏性读出;
  • 若读出时,被读单元原存储信息不被破坏,则称为非破坏性读出。
  • 具有破坏性读出性能的存储器,每次读出操作后,必须紧接一个再生的操作,以便恢复被破坏的信息。

存储器的性能指标

存储器有3个主要性能指标,即存储容量、单位成本和存储速度。这3个指标相互制约,设

计存储器系统所追求的目标就是大容量、低成本和高速度。

  • 存储容量=存储字数x字长(如1Mx8位)。单位换算: 1B (Byte, 字节)=8b (bit, 位)。.
  • 单位成本:每位价格=总成本/总容量。
  • 存储速度:数据传输率=数据的宽度/存取周期(或称存储周期)。
  • ①存取时间(Tg):存取时间是指从启动一次存储器操作到完成该操作所经历的时间,分为读出时间和写入时间。
  • ②存取周期(Tm):存取周期又称读写周期或访问周期。它是指存储器进行- -次完整的读写操作所需的全部时间,即连续两次独立访问存储器操作(读或写操作)之间所需的最小时间间隔。
  • ③主存带宽(Bm):主存带宽又称数据传输率,表示每秒从主存进出信息的最大数量,单位为字/秒、字节/秒(B/s) 或位/秒(b/s)。
  • 存取时间不等于存取周期,通常存取周期大于存取时间。

多级层次的存储系统

相联存储器是按( 内容指定方式和地址指定方式相结合 )进行寻址的存储器。

设机器字长为64位,存储容量为128MB,若按字编址,它可寻址的单元个数是16M

主存储器

DRAM和SRAM

主存储器由DRAM实现,靠处理器的那一层(Cache) 则由SRAM实现

DRAM常用的刷新方式有3种:

  • 集中刷新:指在一个刷新周期内,利用一段固定的时间,依次对存储器的所有行进行逐一再生。
  • 分散刷新:把对每行的刷新分散到各个工作周期中。
  • 异步刷新:异步刷新是前两种方法的结合。

|------|--------|-------------------------------------------|
| | 是否有死时间 | 特点 |
| 集中刷新 | 有 | 优点是读写操作时不受刷新工作的影响;缺点是在集中刷新期间(死区)不能访问存储器 |
| 分散刷新 | 没有 | 优点是没有死区;缺点是加长了系统的存取周期,降低了整机的速度。 |
| 异步刷新 | 缩短死时间 | 既可缩短"死时间",又能充分利用最大刷 新间隔为2ms的特点,提高了整机的工作效率 |

SRAM例题 :某一SRAM芯片,其容量为1024x8位,除电源和接地端外,该芯片的引脚的最小数目为(A)。

A.21 B.22 C.23 D.24

芯片容量为1024x8位,说明芯片容量为1024B,且以字节为单位存取,即地址线数要10根

(1024B = 2^10B)。 8位说明数据线要8根,加上片选线和读/写控制线(读控制为RD、写控制为WE),因此引脚数最小为10 + 8 +1+2 = 21根

注意:读写控制线也可共用一根,但题中无20选项,做题时应随机应变。
DRAM例题 :某一DRAM芯片,采用地址复用技术,其容量为1024x8 位,除电源和接地端外,该芯

片的引脚数最少是( ) (读写控制线为两根)。

A.16.

B.17

C.19

D.21

1024x8位,因此可寻址范围是1024B = 210B,按字节寻址。采用地址复用技术时,通过行通

选和列通选分行、列两次传送地址信号,因此地址线减半为5根,数据线仍为8根;加上行通选和列通选及读/写控制线(片选线用行通选代替)4根,总共是17根

注意SRAM和DRAM的区别,DRAM采用地址复用技术,而SRAM不采用

只读存储器

ROM器件的优点:

  1. 结构简单,所以位密度比可读写存储器的高。

  2. 具有非易失性,所以可靠性高

ROM的类型

根据制造工艺的不同,ROM可分为

  • 掩模式只读存储器(MROM)
  • 一次可编程只读存储器(PROM)
  • 可擦除可编程只读存储器(EPROM)
  • Flash 存储器
  • 固态硬盘(SSD)。

|-------------------------------|---------------------------------|-------------------------------------------|
| | 写入限制 | 特点 |
| 掩模式只读存储器 | 半导体制造厂按用户提出的要求在芯片的生产过程中直接写入 | 优点是可靠性高,集成度高,价格便宜;缺点是灵活性差。 |
| 一次可编程只读存储器 | 允许用户利用专门的设备(编程器)写入自己的程序 | 允许用户利用专门的设备(编程器)写入自己 的程序,一旦写入,内容就无法改变。 |
| 可擦除可编程只读存储器 | 不仅可以由用户利用编程器写入信息,而且可以对其内容进行多次改写 | 由用户利用编程器写入信息,可以对其内容进行多次改写,编程次数有限,且写入时间过长。 |
| Flash存储器 | 在线进行快速擦除与重写 | 可在不加电的情况下长期保存信息,又能在线进行快速擦除与重写 |
| 固态硬盘(Solid State Drives, SSD) | 保留了 Flash存储器长期保存信息、快速擦除与重写的特性 | 读写速度快、低功耗的特性,缺点是价格较高 |

多模块存储器

多模块存储器是一种空间并行技术,利用多个结构完全相同的存储模块的并行工作来提高存储

器的吞吐率。常用的有单体多字存储器和多体低位交叉存储器

单体多字存储器

单体多字系统的特点是存储器中只有一个存储体,每个存储单元存储m个字,总线宽度也为m

物个字。一次并行读出m个字,地址必须顺序排列并处于同一存储单元。

多体并行存储器

器由多体模块组成。每个模块都有相同的容量和存取速度,各模块都有独立的读写控制电路、地址寄存器和数据寄存器。它们既能并行工作,又能交叉工作。

  • 高位交叉编址(顺序方式):填满一个模块,再填下一个
  • 低位交叉编址(交叉方式):讲究的是雨露均沾

高位交叉存储器在单个存储器中的字是连续存放的,不满足程序的局部性原理;

而低位交叉存储器是交叉存放,很好地满足了程序的局部性原理

主存器与CPU的连接

这部分啊,还得自己做题,自己算

主存容量的扩展

  • 位扩展法
  • 字扩展法
  • 字位同时扩展法

存储芯片的地址分配和片选

线选法

  • 线选法用除片内寻址外的高位地址线直接(或经反相器)分别接至各个存储芯片的片选端,当某地址线信息为"0"时,就选中与之对应的存储芯片。这些片选地址线每次寻址时只能有一位有效
  • 优点:不需要地址译码器,线路简单。
  • 缺点:地址空间不连续,选片的地址线必须分时为低电平(否则不能工作),不能充分利用系统的存储器空间,造成地址资源的浪费。

译码片选法

  • 译码片选法,即用一片74LS138作为地址译码器,则A15 A14 A13=000时选中第一片,
  • A15 A14 A13=001时选中第二片,以此类推(即3位二进制编码)。

存储器与CPU的连接

  1. 合理选择存储芯片
  2. 地址线的连接
  3. 数据线的连接
  4. 读/写命令线的连接
  5. 片选线的连接

外部存储器

磁盘存储器

最小读写单位是一个扇区

磁盘存储器的优点:

  • ①存储容量大,位价格低;
  • ②记录介质可重复使用;
  • ③记录信息可长期保存而不丢失,甚至可脱机存档;
  • ④非破坏性读出,读出时不需要再生。

缺点:存取速度慢,机械结构复杂,对工作环境要求较高。

1.磁盘存储器

(1)磁盘设备的组成

① 硬盘存储器的组成。

  • 硬盘存储器由磁盘驱动器、磁盘控制器和盘片组成。·、

②存储区域。

  • 磁头数(Heads)
  • 柱面数(Cylinders)
  • 扇区数(Sectors)

(3)磁盘的性能指标

①记录密度

  • 道密度(60道/cm)、位密度(100bit/cm)和面密度,面密度是位密度和道密度的乘积。

②磁盘的容量

  • 格式化后的容量比非格式化容量要小。

③平均存取时间。

  • 平均存取时间由寻道时间(磁头移动到目的磁道的时间)、旋转延迟时间(磁头定位到要读写扇区的时间)和传输时间(传输数据所花费的时间)三部分构成。由于寻道和找扇区的距离远近不一,故寻道时间和旋转延迟时间通常取平均值。

④数据传输率。

  • 磁盘存储器在单位时间内向主机传送数据的字节数,称为数据传输率。假设磁盘转数为r转/秒,每条磁道容量为N字节,则数据传输率为Dr=rN

(4)磁盘地址

若系统中有4个驱动器,每个驱动器带一个磁盘,每个磁盘256个磁道、16个盘面,每个盘面划分为16个扇区,则每个扇区地址要18位二进制代码,其格式如下图所示。

(5)硬盘的工作过程

  • 寻址、读盘、写盘 。每个操作都对应一个控制字 ,硬盘工作时,第一步是取控制字,第二步是执行控制字。硬盘属于机械式部件,其读写操作是串行的,不可能在同一时刻既读又写,也不可能在同一时刻读两组数据或写两组数据。

2.磁盘阵列

  • 越往下,可靠性越高
  • RAID0:无冗余和无校验的磁盘阵列。
  • RAID1:镜像磁盘阵列。
  • RAID2:采用纠错的海明码的磁盘阵列。
  • RAID3:位交叉奇偶校验的磁盘阵列。
  • RAID4:块交叉奇偶校验的磁盘阵列。
  • RAID5:无独立校验的奇偶校验磁盘阵列。

固态硬盘

  • 固态硬盘基于闪存技术,没有机械部件,随机读写不需要机械操作,因此速度明显高于磁盘
  • SSD的缺点是容易磨损 ,随机写很慢

【2015统考真题】若磁盘转速为7200转/分,平均寻道时间为8ms,每个磁道包含1000个扇区,则访问一个扇区的平均存取时间大约是()。

A.8.1msB. 12.2msC.16.3msD. 20.5ms

高速缓冲器

这个人写得好:计组------彻底搞懂cache主存映射以及cache容量的计算_cache总容量怎么算-CSDN博客

我这里就放两个例题:

|----|---------|------|
| 标记 | cache行号 | 块内地址 |
| 17 | 10 | 5 |

主存快大小32B,所以块内地址为5位,2^5=32

一共32KB的数据区除以一个主存快大小32B=1K=2^10,所以行号这部分就是10

最后求标记:32-10-5=17

回写策略(脏位)要一位

有效位占一个

共计:17+1+1+32*8=275
​​​​​​

|----|----|------|
| 标记 | 组号 | 块内地址 |
| 20 | 6 | 6 |

还是先从主存块抓起:

64B=2^6,所以块内地址占6位

求组号:

32KB除以64=2^9个行,2^9除以8=3^6,所以组号是6,(因为8路嘛,一组就有八个行,就得除以8)

标记:

32-6-6=20

比较器个数就是几路,8路所以就需要8个

比较器的位数是标记位:20

在组相联映射的Cache 中,"比较器"用于并行地比较分组中所有Cache行的Tag标记位与欲访问物理地址的Tag标记位,因此比较器的个数就是分组中的Cache行数8,比较器的位数就是Tag标记位数20。

相关推荐
cyt涛32 分钟前
MyBatis 学习总结
数据库·sql·学习·mysql·mybatis·jdbc·lombok
Rookie也要加油1 小时前
01_SQLite
数据库·sqlite
liuxin334455661 小时前
教育技术革新:SpringBoot在线教育系统开发
数据库·spring boot·后端
看山还是山,看水还是。2 小时前
MySQL 管理
数据库·笔记·mysql·adb
fishmemory7sec2 小时前
Koa2项目实战2(路由管理、项目结构优化)
数据库·mongodb·koa
momo小菜pa2 小时前
【MySQL 09】表的内外连接
数据库·mysql
Jasonakeke2 小时前
【重学 MySQL】四十九、阿里 MySQL 命名规范及 MySQL8 DDL 的原子化
数据库·mysql
程序猿小D2 小时前
第二百六十九节 JPA教程 - JPA查询OrderBy两个属性示例
java·开发语言·数据库·windows·jpa
小宇成长录3 小时前
Mysql:数据库和表增删查改基本语句
数据库·mysql·数据库备份
团儿.3 小时前
解锁MySQL高可用新境界:深入探索MHA架构的无限魅力与实战部署
数据库·mysql·架构·mysql之mha架构