【组成原理】存储系统

总结

【组成原理】存储系统_第1张图片
 

存储器分类

分类

层次: 主存储器,辅存储器,Cache。
存取方式: 随机存储器RAM(允许随机存储),只读存储器ROM(只能读,存放固定的程序) ,串行访问存储器(光盘,磁带)。
 

性能指标

目标: 大容量,低成本,高速度
存储容量: 存储字数(地址空间大小) * 存储字长(存取一次的数据量);1Byte = 8bit
单位成本: 总成本 / 总容量
存储速度: 数据传输率(主存带宽) = 数据宽度 / 存储周期(又称存取周期 = 存取时间+恢复时间,两次读写之间的最小值)
 
 

CPU/存储器连接

1.主存容量扩展

时刻牢记: 存储容量 = 存储字数(地址空间大小) * 存储字长(存取一次的数据量)
位扩展: 扩展MDR位的存储字长。
字扩展: 扩展MAR位的字长,将地址的最高位作为片选信号,利用译码器来转换出片选信号。2位地址可以控制4块芯片。
字位扩展: 同时扩展,扩展的时候是分开计算。
 

2.片选&分配

线选法: 一对一,每次只能有一个地址码有效。
译码法: 利用译码器转换信号,将4位二进制的地址转换成十进制的片的编号。
 

3.连接方式

选择芯片: RAM(用户),ROM(系统程序,子程序,常数)
地址连接: 地位地址连接,高位地址片选。
数据连接: CPU和存储芯片的数据位要一致,否则需要扩展。
读/写: 高读低写。
片选开关: 片选不要接错了,否则选不到;访存控制信号MREQ(低电平有效,可进行读写;若访问I/O,则MREQ为高电平)。
 
 

提速方案

1.双端口RAM

同时有两个CPU共用一个双端口RAM,只要两个CPU不同时访问一个RAM存储单元即可,用BUSY信号来执行“原子操作”。
 

2.多模块存储器

单体多字模拟器

单体(设置一个存储单元)多字(一个单元里存放m个字,一个字存放一条指令)存储器可以在一个周期中直接读出单体里面的所有字,然后依次执行。
 

多体并行存储器

多个存储器可以并行工作,也可以交叉工作。
高位交叉编址(顺序方式): 高位体号,地位体内地址。
低位交叉编址(交叉方式): 低位体号,高位体内地址,流水线,每个里面各拿一个。
低位两公式: T = m / r;t = T + (m - 1)/r【组成原理】存储系统_第2张图片

存储体系

1.存储体

ROM

只能读出,掉电不丢失。
MROM: 厂家生产写入不能改。
PROM: 用户写入不能改。
EPROM: 可读可写可擦除,但是不能替代RAM。(紫外线,电擦除)
Flash Memory: 可擦除重写。
SSD: Flash芯片组成。
 

RAM
特点 SRAM DRAM
存储信息 触发器 电容
破坏性读入
刷新 不需要 需要
详细的列地址 同时发送 两次传送
运行速度
集成度
功耗
成本
用途 Cache 内存

刷新问题: 刷新不依赖外部结构,且按行刷新,整个存储器同时都在刷新,不需要分片;集中刷新(统一刷一下,死区),分散刷新(平摊在每个存取周期内),异步刷新(一行刷一次)。
读周期: 读周期包含读出时间,读周期是两次读操作时间之差,时间知识一少部分。
写周期: Twc = Taw(滞后时间) + Tw(写入时间) + Twr(写恢复时间)。
 

2.Cache

原理:

1.局部性,CPU与Cache以字为单位,Cache与主存以块为单位。
2.命中率:命中/(没有命中的 + 命中的)
3.平均访问时间:命中访问时间 x 命中概率 + 未命中访问时间 x 未命中概率。
 

映射方式

直接映射:
主存0,2,4,8装第0块;1,3,4,9装第二块。

主存字块标记 Cache字块地址 字块内地址

全相连映射:
主存随便装。

主存字块标记 字块内地址

组相连映射:
Cache分等块,组间直接,组内全相连。

主存字块标记 组地址 字块内地址

 

3.替换算法

RAND: 随机替换。
FIFO: 最早进来的先替换掉。
LRU: 最近时间内没有访问过的替换。(堆栈)命中清0,其他+1,最高替换。
LFU: 最近时间内访问次数最少的替换。命中+1,其他不变,最小替换。
 

4.写策略

写命中

CPU往Cache里面写,找到了这个。
write-through: 同时写Cache和主存内的东西,往主存中写的时候可以加入一个写缓冲。
write-back: 当Cache需要换出来的时候再写回内存。
 

写不命中

往里面写的时候发现不在Cache中。
write-allocate: 每次修改的时候,先调到Cache中,在Cache中修改,然后再调回去。
not-write-allocate: 直接再主存中改,不调入Cache。

 

5.虚拟存储器

逻辑地址,CPU直接和主存访问,有就用,没有就调入再用,满了就换;硬件软件同时实现。
 
页式虚拟存储: 物理划分,从页表基质寄存器中读取起始地址拼接虚页号地址,在页表中找出实业号,在和页内地址拼接得到地址。(访问一次主存,页内碎片)
段式虚拟存储: 逻辑结构划分,从页表基质寄存器中读取起始地址拼接段号,在段表查询真实地址,拼接段内地址。(一次主存,段间碎片)
段页式虚拟存储: 结合以上两者,根据段表找到页表的起始地址,然后再在对应的页表中找到对应页号,拼接页内地址形成真正地址。(两次访存,短间碎片)
TLB: 将常用的页表项放在高速缓冲存储器的TLB中,提高效率,只是慢表的一个副本。
整体逻辑:

快捷方式
找地址
找地址
快捷方式
访问内容
访问内容
CPU
TLB
Page
Cache
主存

你可能感兴趣的:(408笔记目录指南)