PART 2—主存储器
2.7 提高访存速度的措施
2.7.1 单体多字系统
原理:在一个存取周期内,从同一地址取出四条指令(之前是一次一个的),再将这四条指令按顺序送至CPU执行——速度提高了
前提:指令和数据连续
2.7.2 多体并行系统
2.7.3 高性能存储芯片
(1)SDRAM
(2)RDRAM
(3)带Cache的RDRAM
PART 3—高速缓冲存储器
3.1 概述
3.1.1 问题的提出
①CPU等待I/O设备,浪费时间→在CPU与主存之间加一级缓存
②主存速度提高慢,跟不上CPU的速度了
## 重大发现:由于指令和数据在主存里是连续存放的,一些子程序、循环程序和常数会多次调用→CPU访存有相对的局限性→将CPU近期要用到的数据提前送到cache,提高速度
3.1.2 Cache的工作原理
缓存里的块数远小于主存的,所以缓存里的块数是根据CPU的需要不断变化的。好是好,只是缓存里的每个块都要做一个标记,(啊~这次来我这里待的小可爱是你呀~~),标记就是主存里的块的编号。那当CPU读信息时,先将两者的块地址进行比较。
命中率与容量(越大越好)、块长(过小过大都不好)有关
3.1.3 Cache的基本结构
写操作:使Cache与主存内容保持一致
法一:写直达法
写操作时,数据既写入Cache又写入主存→保证了数据一致,但增加了访存次数
法二:写回法
写操作时,只把数据写入Cache,而不写入主存,当Cache的数据被替换出去时才写回主存→数据会不一致;那如何判断呢?在Cache中的每一块要增设一个标志位,表示“清”(人家是清白的啦~就是未被修改过,和贮存是一致的)和“浊”(被污染了...被修改过,与主存不一致)。在为“清”时,Cache块不变化,和主存是一样的~,但“浊”的话,把Cache块的内容写到主存里,并把标志位变为清,进行新的一轮。
3.2 Cache—主存地址映射
3.2.1 直接映射
优点:简单。
3.2.2 全相联映射
3.2.3 组相联映射
来源:https://www.cnblogs.com/syzyaa/p/12633915.html