408第二轮复习记录 计算机组成原理(第三章 存储系统)
存储器概述
存储器分类
按作用分类
主存储器、辅助存储器、Cache
存储介质
磁表面存储器、磁芯存储器、半导体存储器、光存储器
存取方式分类
- 随机存储器(SRAM,DRAM): 存储器的任何一个存储单元都可以随机存储,而且存取时间与存储单元的物理位置无关。
- 只读存储器(ROM),存储器的内容只能随机读出,而不能写入,广义的只读存储器也包含可反复重写的类型,ROM和RAM的存取方式均为随机存取
- 串行访问存储器:对存储单元进行读/写操作时,需按照物理位置的先后顺序寻址(磁带、磁盘、光盘)
顺序存储器只能按照某种顺序存取,直接存取器存取信息时通常先寻找整个区域的某个小区域,在小区域内顺序查找
按信息的可保存性
易失性存储器、非易失性存储器ROM
存储器的性能指标
- 存储容量 = 存储字数 * 存储字长
- 单位成本 = 总成本/总容量
- 存储速度:
- 存取时间:存取时间是指从启动一次存储器到完成该操作所经历的时间,分为存取时间和写入时间
- 存取周期:存取周期是指启动一次进行完整的读/写操作所需的所有时间。即连续两次独立访问存储操作之间的最小时间间隔
- 主存带宽:每秒从主存进信息的最大数量
主存储器
SRAM和DRAM芯片
- SRAM:存储元是用双稳态来记忆信息的,SRAM即使信息被读出后,仍保持原状态
- DRAM:利用存储元电路中栅极电荷来存储信息的,存取速度相对比SRAM要慢且要定时刷新和读后再生
DRAM的刷新方式
- 集中刷新: 一个刷新周期内固定时间对所有行进行刷新,停止对存储器的读写操作
- 分散刷新: 将一个存储器系统的工作周期分为两部分:前半部分用于正常周期,后半部分用于刷新
- 异步刷新:在一个刷新周期内每一行仅刷新一次,具体做法是将刷新周期除以行数。得到每行相邻的时间间隔t。
刷新对CPU是透明的,刷新的单位是行,刷新操作类是读操作,但不需要选片
DRAM行缓冲芯片容量的计算
SDRAM芯片在系统时钟的控制下进行读写和写入,它将CPU发出的地址和控制信号锁存起来,CPU在其读写完成之前可进行其他操作,SDRAM支持突发传输装置,第一次存取给出首地址,同一行都被送到行缓冲器中,行缓冲器的大小为列数*位平面
存储器芯片的模型
只读存储器(ROM)
- MROM:MROM只能写一次,程序由厂家写入
- PROM:PROM只能写一次,程序用用户写入
- EPROM:可擦除,但擦除有限
- FLASH存储器:写的速度比读的速度慢(U盘,SD卡)
- 固态硬盘:控制单元+存储单元(FLASH芯片)
主存储器的基本组成
存储体的构成
指令执行过程中需要访问主存时,先把数据放到MAR,然后通过地址线将主存地址送到主存的MAR将读写信号通过控制线写入被选中的单元。MDR的位数与数据线的位数相同,MAR的位数与地址的位数相同
** 多模块存储器**
- 高位交叉编址:高位地址为模块号,低位地址为模块内地址
- 低位交叉编址:低位地址为模块号,高位地址为模内块地址
错题回顾
- 8题 : 在同一个存储器中,每个存储器的宽度相同
- 15题:一次完整的刷新过程时将信息读出,通过一次刷新放大器后又重新存回存储单元,而刷新放大器时集成在RAM上,所以一次完整的刷新过程只要两周期
主存储器与CPU的连接
连接原理
- 主存储器通过数据总线、地址总线、控制总线与CPU连接
- 数据总线的位数与工作频率的乘积正比于数据传输速率
- 地址总线的位数决定了可寻址的最大内存空间
- 控制总线指出总线的类型和本次输入\输出完成的时刻
主存容量的扩展
位扩展法
位扩展指对字长进行扩展,当CPU的系统数据线多于存储芯片的数据位时,必须对存储芯片扩位,使其数据位数与CPU的数据位数相同
方式:各芯片的地址线、片选线、和读写控制线与系统总线相应并联;各芯片的数据线单独引出,分别连接系统数据线
字扩展法
字扩展时对存储字的数量进行扩展,而存储字的位数满足系统要求。系统数据位数等于芯片位数,系统地址线位数多于芯片地址线位数
字扩展的连接方式:各芯片的地址线与系统地址线的低位相连,高位由系统的高位译码器相连
字位同时扩展法
外部存储器
磁盘存储器
磁盘设备的组成
磁盘存储器的组成由磁盘驱动器、磁盘控制器和盘片组成
存储区域
- 磁头数:即记录面数,表示磁盘一共有多少磁头
- 柱面数:表示磁盘每个盘面有多少磁道
- 扇面数:表示每条磁道有多少扇区
磁盘高速缓存
在内存中开辟一部分区域,用于缓冲将被送到磁盘上的数据
磁盘的性能指标
- 记录密度:道密度、位密度、面密度。道密度是沿磁盘半径方向单位长度上的磁道数、位密度是磁道单位长度上能记录的二进制代码位数,面密度是两者相乘
- 磁盘容量:磁盘容量有格式化和非格式化容量之分。非格式化容量是指磁记录表面可利用的磁化单元总数,非格式化=记录面数柱面数每条磁道的磁化单元数,格式化 = 记录面数柱面数每个扇区的容量
- 存取时间:寻道时间、旋转延迟时间、传输时间三部分构成
- 数据传输速率:磁盘存储器在单位时间内向主机传送数据的字节数
磁盘阵列
- RAID0: 无冗余无校验
- RAID1: 镜像磁盘
- RAID2:海明码
- RAID3:位交叉奇偶校验
- RAID4: 块交叉奇偶校验
固态硬盘
闪存翻译层负责翻译逻辑块号,找到对应页
存储介质:多个闪存芯片,每个芯片包含多个块,每个块包含多个芯片
读写性能特性
- 以页为单位读/写——相当于扇区
- 以块为单位擦除,擦干净的块,其中每页都可以写一次,读无限次
- 支持随机访问
- 读块写慢,要写的页如果有数据不能写入,需要将块内其他页复制道有一个新的块中,再写入新的页
磨损均衡 - 思想:将擦除平均分布在各个块中,以提升使用寿命
- 动态磨损均衡:写入数据时,优先选择擦除少的
- 静态磨损均衡:SSD监控并进行数据分配、迁移
高速缓冲存储器(Cahce)
Cache和主存的映射方式
- 直接映射
- 全相联映射
- 组相联映射
Cache一致性问题
对于写操作命中有两种处理:全写法、回写法
- 全写法:当CPU对Cache写命中时,必须把数据同时写入Cache和主存,当某一块需要替换时,就不必把这一块写回主存了。写缓冲为减少全写法直接写入主存的时间损耗,在Cache和主存之间加一个写缓冲
- 写回法:当CPU对Cache,而不立即写入主存,只有当此块被替换时才写回主存
对于写操作不命中,也有两种处理方式:写分配和非写分配 - 写分配:更新主存单元,然后把这个主存块调入Cache
- 非写分配:只更新主存单元
随着指令流技术的发展,需要将指令和数据Cache分开设计,这就有了分离的Cahce结构,同时Cache通常设立多级Cache,多级Cache通常全写法和写回法合用