导图社区 计算机存储系统
计算机存储系统知识梳理,包括存储器的层次结构、半导体随机存储器、主存储器与CPU的连接、双端口RAM和多模块存储器、高速缓冲存储器等内容。
编辑于2022-09-14 16:35:51 山西输入输出系统是计算机系统中的主机与外部进行通信的系统。它由外围设备和输入输出控制系统两部分组成,是计算机系统的重要组成部分。外围设备包括输入设备、输出设备和磁盘存储器、磁带存储器、光盘存储器等。从某种意义上也可以把磁盘、磁带和光盘等设备看成一种输入输出设备,所以输入输出设备与外围设备这两个名词经常是通用的。在计算机系统中,通常把处理机和主存储器之外的部分称为输入输出系统,输入输出系统的特点是异步性、实时性和设备无关性。
这是一个关于408 计算机组成原理 第六章总线的思维导图
微程序控制器:组成及工作过程,若指令系统中具有n条机器指令,则控制存储器中的微程序段数至少是n+1(1为取指指令)。
社区模板帮助中心,点此进入>>
输入输出系统是计算机系统中的主机与外部进行通信的系统。它由外围设备和输入输出控制系统两部分组成,是计算机系统的重要组成部分。外围设备包括输入设备、输出设备和磁盘存储器、磁带存储器、光盘存储器等。从某种意义上也可以把磁盘、磁带和光盘等设备看成一种输入输出设备,所以输入输出设备与外围设备这两个名词经常是通用的。在计算机系统中,通常把处理机和主存储器之外的部分称为输入输出系统,输入输出系统的特点是异步性、实时性和设备无关性。
这是一个关于408 计算机组成原理 第六章总线的思维导图
微程序控制器:组成及工作过程,若指令系统中具有n条机器指令,则控制存储器中的微程序段数至少是n+1(1为取指指令)。
存储系统
I. 存储器的层次结构
存储器的分类
按在计算机中的作用分类
主存储器(主存/内存储器/内存)
存放计算机运行期间所需的大量程序和数据 CPU直接对其随机访问,可与Cache和辅存交换数据
容量较小、存取速度快、价格高
高速缓冲存储器(Cache)
位于主存和CPU之间,存放正在执行的程序段和数据,便于CPU高速使用 存取速度与CPU的速度相匹配
容量小、价格高
辅助存储器(辅存/外存储器/外存)
存放当前暂时不用的程序和数据以及一些需要永久性保存的信息 不能与CPU直接交换信息
容量极大、存取速度慢、成本低
按存储介质分类
磁表面存储器(磁盘、磁带)
磁心存储器半导体存储器(MOS型存储器、双极型存储器)
光存储器(光盘)
按存取方式分类
随机存储器(RAM)
任何一个存储单元都可以随机存取,存取时间与存储单元的物理位置无关
分为
静态RAM
触发器原理寄存信息
动态RAM
电容充电原理寄存信息
优点
读写方便,使用灵活,主要用于主存或高速缓重存储器
只读存储器(ROM)
特点
ROM和RAM都是支持随机存取的存储器,均为易失性存储器
ROM一旦有了信息则不能轻易改变,即使断电也不会丢失
ROM优点
结构简单,位密度比可读写存储器高
具有非易失性,可靠性高
类型
串行访问存储器
按物理位置先后顺序寻址
包括
顺序存取寄存器(SAM) 磁带
直接存取寄存器(DAM) 磁盘
按信息的可保持性分类
易失性存储器
RAM
非易失性存储器
ROM、磁表面存储器、光存储器
破坏性读出
非破坏性读出
存储器的性能指标
存储容量=存储字数✖字长
存储字数表示存储器的地址空间大小
字长表示一次存取操作的数据量
单位成本
每位价格=总成本/总容量
存储速度
数据传输率=数据的宽度/存储周期
存取时间(Ta)
从启动一次存储器操作到完成该操作经历的时间,分为读出时间和写入时间
存取周期(Tm)/读写周期/访问周期
存储器进行一次完整的读写操作所需的全部时间 连续两次独立访问存储器操作(读或写操作)之间所需的最小时间间隔
主存带宽(Bm)/数据传输率
每秒从主存进入信息的最大数量
存取时间不等于存储周期,通常存取周期大于存取时间
存储器的层次化结构
cache与主存层由硬件自动完成,主存与辅存之间由操作系统和硬件共同完成
多级存储器结构
II. 半导体随机存储器
半导体存储芯片
半导体存储芯片的基本结构
例如:地址线10根,数据线8根,则芯片容量为 2^10 ✖ 8 = 8K 位
74138译码器
静态随机存储器【SRAM】与动态随机存储器【DRAM】
SRAM工作原理
存储元是用双稳态触发器(六管 MOS)来记忆信息的 即使信息被读出,它仍保持其原状态而不需要再生(非破坏性读出) 只要电源被切断, 原来的保存信息便会丢失,它是易失性半导体存储器。 一般用来组成高速缓冲存储器Cache。
DRAM工作原理
是利用存储元电路中栅极电容 上的电荷来存储信息的 常见的 DRAM 的基本存储电路通常分为三管式和单管式。 采用地址复用技术,地址线是原来的1/2,且地址信号分行、列两次传送。 一般用来组成大容量主存系统
DRAM的刷新
刷新周期
电容上的电荷只能停留1~2ms,所以刷新周期一般为2ms
每次刷新多少存储单元
以行为单位,每次刷新一行
如何刷新
硬件支持,读出一行信息后重新写入,占用1个读/写周期
分散刷新
集中刷新
异步刷新
DRAM采用地址复用技术,地址线减半
引脚数目
SRAM
未采取地址复用技术
引脚数=地址线数+数据位数+片选线(1位)+读写控制线(按题意,一般是一根或两根)
DRAM
采用地址复用技术
引脚数=地址位数/2+行列选通线(1位)+数据位数+片选线+读写控制线
存储器的读写周期(稍作了解)
RAM的读周期
RAM的写周期
只读存储器【ROM】
特点
ROM和RAM都是支持随机存取的存储器
ROM一旦有了信息则不能轻易改变,即使断电也不会丢失
ROM优点
结构简单,位密度比可读写存储器高
具有非易失性,可靠性高
类型
III. 主存储器与CPU的连接
位扩展
用多个存储器件对字长进行扩充,增加存储字长 使其数据位数与 CPU 的数据线数相等。
连接方式
将多个存储芯片的地址端、片选端和读写控制端相应并联,数据端分别引出。
字扩展
增加存储器中字的数量,而位数不变。
连接方式
将芯片的地址线、数据线、读写控制线相应并联,而由片选信号来区分各芯片的地址范围。
IV. 双端口RAM和多模块存储器
双端口RAM
同一个存储器有两个独立端口,分别具有两组相互独立的地址线、数据线和读写控制线 允许两个独立的控制器同时异步地访问存储单元
两个端口同时存取存储器的同一地址时,会因数据冲突造成数据存储或读取错误
多模块存储器
单体多字存储器
存储器只有一个存储体,每个存储单元存m个字,总线宽度也为m个字,一次并行读出m个字,地址必须顺序排列并处于同一存储单元
多体并行存储器
高位交叉编址
高地址体号、低地址为体内地址
地位交叉编址
低位地址为体号,高位地址为体内地址 程序连续存放在相邻体中
每个模块都有相同的容量和存取速度,各模块都有独立的读写控制电路、地址寄存器和数据寄存器,既能并行工作也能交叉工作
设模块字长等于数据总线宽度 模块存取一个字的存取周期为 T 总线传送周期为 r m 称为交叉存取度。
为实现流水线方式存取,存储器交叉模块数应大于等于:m=T/r
每经 r 时间延迟后启动下一个模块,交叉存储器要求其模块数必须大于或等于m 以保证启动某模块后经过 m×r 的时间后再次启动该模块时,其上次存取操作已经完成(即流水线不间断)
这样连续存取 m 个字所需的时间为
顺序方式连续读取 m 个字所需时间为 t2=mT
V. 高速缓冲存储器
工作原理
Cache位于存储器层次结构的顶层,通常由 SRAM 构成
Cache和主存的映射方式
直接映射 [对号入座]
主存数据块只能装入 Cache 中的唯一位置。若这个位置已有内容,则产生块冲突,原来的块将无条件地被替换出去(无需使用替换算法)。
地址结构
全相联映射 [随便坐]
可以把主存数据块装入 Cache 中的任何位置
地址结构
组相联映射 [按号分组,组内随便坐]
将 Cache 空间分成大小相同的组,主存的一个数据块可以装入到一组内的任何一个位置, 即 组间采取直接映射,而组内采取全相联映射
地址结构
Cache中主存块的替换算法
随机算法
先进先出算法
近期最少使用
LRU 算法对每行设置一个计数器, Cache 每命中一次,命中行计数器清 0,而其他各行计数器均加1, 需要替换时比较各特定行的计数值,将计数值最大的行换出 。
最不经常使用
新行建立后从 0 开始计数,每访问一次,被访问的行计数器加 1, 需要替换时比较各特定行的计数值,将计数值最小的行换出。
cache具体位见咸鱼哥骚图和具体笔记
写策略
Cache写命中
全写法(写直通法)
当 CPU 对 Cache 写命中时,必须把数据同时写入 Cache 和主存。当某一块需要替换时,不 必把这一块写回主存,将新调入的块直接覆盖即可。
设置写缓冲来缓存速度不匹配
写回法
当 CPU 对 Cache 写命中时,只修改 Cache 的内容,而不立即写入主存,只有当此块被换出 时才写回主存。
每个 Cache 行必须设直一个标志位(脏位),以反映此块是否被 CPU 修改过。
Cache写不命中
写分配法
加载主存中的块到 Cache 中,然后更新这个 Cache 块。
非写分配法
只写入主存,不进行调块。
非写分配法通常与全写法合用。写分配法通常和写回法合用。
各级cache之间采用“全写法和非写分配法”
cache和主存之间采用写分配法和写回法
cache与主存之间速度相差较大
VI. 虚拟存储器见操作系统