分类:
读写功能:ROM RAM
RAM:静态RAM (SRAM) 动态RAM(DRAM)
ROM:ROM/PROM/EPROM/EEPROM
按保存性分类:永久性 和 非永性
按存储系统中的作用分类: 主、辅、缓、控。
寄存器 > 缓存>主存>辅存>
字存储单元:存放一个机器字的存储单元,相应的单元地址叫字地址。
字节存储单元:存放一个字节的单元,相应的地址叫字节地址。
存储容量:指一个存储器可以容纳的存储单元的总数。存储容量越大,能存储的信息就越多。
存储器带宽:单位时间里存储器所存储的信息量,通常以位/秒 或 字节/秒 做度量单位。
存取时间又称为存储器访问时间: 指一次读操作命令发出到该操作完成,将数据读出到数据总线上经历的时间。通常取写操作时间等于读操作时间,故称为存储器存取时间。
存储周期:指连续启动两次读操作所需的最小时间间隔,通常存储周期略大于存取时间,时间单位为ns。
半导体随机存储器:RAM
静态读写存储器(SRAM):
动态读写存储器(DRAM):
存储器容量的扩充:
字存储器容量扩展:
1.位扩展:
给定的芯片字长位数较短,不满足哦设计要求的存储器字长,此时需要用多片给定芯片扩展字长位数,三组信号线中,地址线和控制线公用,数据线单独分开链接。
所需芯片数量d = 设计要求的存储器容量/选择芯片的存储器容量。
2.字存储容量扩充:
字扩展指的是增加存储器中字的数量,静态存储器字扩展时将各芯片的地址线、数据线,控制线相应并联,而由信号区分各芯片地址。
所需芯片数 d = 设计要求的存储器容量/选择芯片的存储器容量。
字位扩展:
实际存储器往往需要字向和位向同时扩展,一个存储器容量为:MxN为,若使用LxK位芯片,那么,共需要(M/L)x(N/k) 个芯片。
闪存存储器:
flash 存储器,翻译为闪存存储器。它是高密度不易失性的读/写存储器,高密度意味着它有巨大比特数目的存储容量,非易失性意味着存放的数据在没有电的情况下,可以长期保存。总之既有RAM的优点又有ROM的优点。
双端口存储器:是由两组相互独立的读写控制电路的存储器。由于进行并行的独立操作,因而是一种高速工作的存储器。
多模块交叉存储器:一个由若干个模块组成的主存储器是线性编址的,这些地址在各模块中如何安排,有两种方式:
顺序方式:
交叉方式:
相联存储器:
原理:按内容存取的存储器,可选择记录的一个字段作为地址。
主要用途:在虚拟存储器中存放段表、页表和块表。也可以作为cache 的行地址。
cache 存储器:
基本原理:
1)功能:解决CPU与主存之间的速度不匹配问题,
一般采用高速的SRAM 构成。
CPU和主存之间的速度差别很大,采用两级或多级Cache 系统。
早起的一级cache 在CPU上,二级在主板上,
现在CPU内带L1 Cache 和L2 Cache.
全由硬件调度,对用户透明。
Cache 设计依据:cpu访问过的数据,下次有很大的可能也是访问附近的数据。局部性原则
CPU与cache 之间的传送是以字位单位。
主存与Cache之间的数据传送是以块位单位。
CPU读主存时,把地址同时送给Cache和主存。Cache控制逻辑依据地址判断判断此字是否在Cache中,若在,此字立即传送给CPU,否则则用主存读周期把此字从主存送到CPU,与此同时,把还有这个字的挣个数据块,从主存读出送到CPU中。
Cache的命中率:CPU欲访问信息在Cache中 的比率。
命中率h= Nc/(Nc+Nm)
设tc 为命中时Cache 的访问时间,tm为未命中时主存的访问时间,则cache - 主存系统的平均访问时间为:
ta = tc*h +(1-h)tm
cache 映射方式:
全相联映射方式:
映射方法(多对多):主存块的内容可以拷贝到Cache 的任意行。
地址变换:标记实际上构成了一个目录表。
优点:冲突概率比较小,cache利用率高,
缺点:比较器难实现,需要一个访问速度很快的相联存储器。
适用于小容量的cache
直接映射方式(一对多):
1)i = j mod m (在存储器的位置决定了在cache中的位置)
2)主存第j快内容拷贝到cache的i行。
3)一般i和m都是2N级。
优点:比较电路少了m被线路,硬件实现简单,cache地址为主存地址的低几位,不需要变换。
缺点:冲突概率高(抖动)
应用场合: 适合大容量cache
组相联映射方式:
1)cache 分组,组间采用直接映射方式,组内采用全相联映射方式
2)Cache 分为U组,组内容量为V,
3)映射方法(一对多):
q=j mod u
主存第j快内容拷贝到cache 中,q组中的某行
Cache 替换策略:
LFU(最不经常使用的) :被访问的行计数器增加1,换值小的行,不能反映近期Cache的访问情况。
LRU(近期最少使用):被访问的行计数器置为0,其他计数器增加1,换值大的行,符号cache的工作原理。
随机替换:随机替换策略从特定的行位置中,随机的选取一行换出。
优点:硬件上容易实现,且速度别前两种快,缺点:随意换出的数据可能马上就要使用,从而降低命中率和cache工作效率,这个不足随着cache容量增大而减小,随机替换的功效,只是稍逊于前两种策略。
写操作策略:
由于cache内容只是对主存内容的拷贝,应当与主存内容保持一致,而cpu对cache的写入更改了cache内容,如何与主存保持一致:有三种策略:
写回法:换出时,对行的修改为进行判断,决定是写会,还是舍掉。
全写法:写命中时,cache和内存一起写。
写一次法:与写回法一致,但是第一次cache命中时写入主存。
虚拟存储器:
页式虚拟存储器:
在页式虚拟存储系统中,把虚拟空间分成页,称为虚页或逻辑页,主存空间也分成同样大小的页,称为实页或物理页。
把虚拟地址分为两个字段,高位字段位虚页好,低位字段为业内字地址。
虚拟地址到主存实地址的变换是由页表来实现的。
TLB(页表):
假设页表已调入主存储器中,在访问存储器时,先访问一次主存去查页表,再访问主存才能取得数据,这就相当于主存速度降低了一倍,因此,把页表的最活动部分,存放在快速存储器中,组成块表,这是较少时间开销的一种方法,快表由硬件组成,通常称为转换旁路缓冲器,它是慢表(页表)的小小副本。
段式虚拟存储器:
在段式虚拟存储器中,段是按照程序的逻辑结构划分的,各个段的长度因程序而异。
虚地址由段号和段内地址组成,段式虚拟存储器通过段表实现。
段页式虚拟存储器:
在段页式虚拟存储器中,把程序按逻辑结构分段以后,再把每段分成固定大小的页,程序对主存的调入调出,是按页面进行的,但它又可以按段实现共享和保护,因此它可以兼取页式和段式系统的优点,它的缺点是在地址映像过程中,需要多次查表,在这种系统中,虚拟地址转换成物理地址是通过一个段表和一组页表来进行定位的。