408计算机组成原理学习:存储器的基础知识
存储器的层次化结构
辅存中的数据要调入主存后才能被CPU访问
主存—辅存:实现虚拟存储系统,解决了主存容量不够的问题
Cache—主存:解决了主存与CPU速度不匹配的问题
寄存器:ACC,MQ等
存储器的分类 —— 层次
存储器的分类 —— 存储介质
1.半导体存储器(主存、Cache)
以半导体器件存储信息
2.磁表面存储器:磁盘、磁带
以磁性材料存储信息
3.光存储器
以光介质存储信息
存储器的分类 —— 存取方式
1.相联存储器(Associative Memory),即可以按内容访问的存储器(ContentAddressed Memory,CAM)可以按照内容检索到存储位置进行读写,“快表”就是一种相联存储器
随机存取存储器(RandomAccess Memory, RAM):读写任何一个存储单元所需时间都相同,与存储单元所在的物理位置无关
顺序存取存储器(SequentialAccess Memory, SAM):读写一个存储单元所需时间取决于存储单元所在的物理位置
直接存取存储器(Direct AccessMemory,DAM):既有随机存取特性,也有顺序存取特性。先直接选取信息所在区域,然后按顺序方式存取。
串行访问存储器:读写某个存储单元所需时间与存储单元的物理位置有关
串行访问存储器:
1.顺序存取存储器
2.直接存取存储器
存储器的分类 —— 信息的可更改性
读写存储器(Read/Write Memory)——即可读、也可写(如:磁盘、内存、Cache)
只读存储器(Read Only Memory)——只能读,不能写(如:实体音乐专辑通常采用 CD-ROM,实体电影采用蓝光光碟,BIOS通常写在ROM中)
存储器的分类 —— 信息的可保存性
断电后,存储信息消失的存储器——易失性存储器(主存、Cache)
断电后,存储信息依然保持的存储器——非易失性存储器(磁盘、光盘)
信息读出后,原存储信息被破坏——破坏性读出(如DRAM芯片,读出数据后要进行重写)
信息读出后,原存储信息不被破坏——非破坏性读出(如SRAM芯片、磁盘、光盘)
存储器的性能指标
- 存储容量:存储字数×字长(如1M×8位)。
MDR位数反映存储字长 - 单位成本:每位价格=总成本/总容量。
- 存储速度:数据传输率=数据的宽度/存储周期
数据的宽度即存储字长
① 存取时间(Ta ):存取时间是指从启动一次存储器操作到完成该操作所经历的时间,分为读出时间和写入时间。
② 存取周期(Tm ):存取周期又称为读写周期或访问周期。它是指存储器进行一次完整的读写操作所需的全部时间,即连续两次独立地访问存储器操作(读或写操作)之间所需的最小时间间隔。
主存带宽(Bm ):主存带宽又称数据传输率,表示每秒从主存进出信息的最大数量,单位为字/秒、字节/秒(B/s)或位/秒(b/s)。
主存储器的基本组成
基本的半导体元件及原理
主存储器
MOS管可理解为一种电控开关,输入电压达到某个阈值时,MOS管就可以接通,达不到指定电压的话可以视为绝缘体
红色为字选线,绿色为数据线
存储字长:8bit
每根线都会对应一个金属引脚(另外,还有供电引脚、接地引脚)
DRAM Dynamic Random Access Memory,即动态RAM
SRAM Static Random Access Memory,即静态RAM
DRAM用于主存、SRAM用于Cache
DRAM芯片:使用栅极电容存储信息
SRAM芯片:使用双稳态触发器存储信息
栅极电容 V.S 双稳态触发器
栅极电容:
每个存储元制造成本更低,集成度高,功耗低
读出1:MOS管接通,电容放电,数据线上产生电流
读出0:MOS管接通后,数据线上无电流
电容放电信息被破坏,是破坏性读出。读出后应有重写操作,也称“再生”,读写速度更慢
1:电容内存储了电荷
0:电容内未存储电荷
电容内的电荷只能维持2ms。即便不断电,2ms后信息也会消失
2ms之内必须“刷新”一次(给电容充电)
双稳态触发器
双稳态
1:A高B低
0:A低B高
读出数据,触发器状态保持稳定,是非破坏性读出,无需重写,读写速度更快
每个存储元制造成本更高,集成度低,功耗大
地址线复用技术:行、列地址分两次送,可使地址线更少,芯片引脚更少,导致地址线、地址引脚减半
DRAM 的刷新
“刷新”由存储器独立完成,不需要CPU控制
- 多久需要刷新一次?
刷新周期:一般为2ms - 每次刷新多少存储单元?
以行为单位,每次刷新一行存储单元
为什么要用行列地址?
存储单元排列成2^n ×2^n 的矩阵
拆分为行列地址(DRAM行、列地址等长) - 如何刷新?
有硬件支持,读出一行的信息后重新写入,占用1个读/写周期 - 在什么时刻刷新?
假设DRAM内部结构排列成128×128的形式,读/写周期(存取周期)0.5us
2ms共 2ms/0.5us = 4000 个周期
思路一:分散刷新
每次读写完都刷新一行
->系统的存取周期变为1us
前0.5us时间用于正常读写
后0.5us时间用于刷新某行
(读写一行刷新一行)
思路二:集中刷新
2ms内集中安排时间全部刷新
->系统的存取周期还是0.5us
有一段时间专门用于刷新,
无法访问存储器,称为访存“死区”
(读写完后一起刷新)
思路三:异步刷新
2ms内每行刷新1次即可
->2ms内需要产生128次刷新请求
每隔2ms/128 = 15.6us 一次
每15.6us内有0.5us的“死时间”
(每隔一段时间刷新一行,可在译码阶段刷新)
只读存储器ROM
RAM芯片——易失性,断电后数据消失
ROM芯片——非易失性,断电后数据不会丢失
MROM(Mask Read-Only Memory)——掩模式只读存储器
厂家按照客户需求,在芯片生产过程中直接写入信息,之后任何人不可重写(只能读出)
可靠性高、灵活性差、生产周期长、只适合批量定制
PROM(Programmable Read-Only Memory)——可编程只读存储器
用户可用专门的PROM写入器写入信息,写一次之后就不可更改
EPROM(Erasable Programmable Read-Only Memory)——可擦除可编程只读存储器
允许用户写入信息,之后用某种方法擦除数据,可进行多次重写
UVEPROM(ultraviolet rays)——用紫外线照射8~20分钟,擦除所有信息
EEPROM(也常记为E^2 PROM,第一个E是Electrically)——可用“电擦除”的方式,擦除特定的字
Flash Memory ——闪速存储器(注:U盘、SD卡就是闪存)
每个存储元只需单个MOS管,位密度比RAM高
在EEPROM 基础上发展而来,断电后也能保存信息,且可进行多次快速擦除重写
注意:由于闪存需要先擦除在写入,因此闪存的“写”速度要比“读”速度更慢。
SSD(Solid State Drives)—— 固态硬盘
由控制单元+存储单元(Flash 芯片)构成,与闪速存储器的核心区别在于控制单元不一样,但存储介质都类似,可进行多次快速擦除重写。SSD速度快、功耗低、价格高。目前个人电脑上常用SSD取代传统的机械硬盘
手机辅存也使用Flash 芯片,但相比SSD使用的芯片集成度高、功耗低、价格贵
操作系统安装在辅存
主存由RAM+ROM组成,且二者常统一编址
主板上的BIOS芯片(ROM),存储了“自举装入程序”,负责引导装入操作系统(开机)