当前位置:文档之家› 存储层次

存储层次

计算机系统结构课件
三峡大学计算机与信息学院
第三章 存储层次
3.1 存储系统的层次结构 3.1.1 存储系统的层次结构
存储系统的性能直接影响到整个计算机系统的性能。用 户希望“容量大、速度快、价格低”与现实的存储器的容量、 速度和位价的关系(如下图所示)是矛盾的。因此如何以合 理的价格,设计容量和速度都能满足系统要求的存储器系统, 始终是计算机系统结构设计中的关键问题之一。方法:采用 多种存储器技术,构成多级存储层次结构。
组号 块号 Cache
0
0 1
1
2 3
主存 块号
0 1 2 3 4 5 6 7
计算机系统结构课件
三峡大学计算机与信息学院
第三章 存储层次
3.2 Cache基本知识 3.2.3 查找方法
Cache中设有一个目录表,每一个Cache块在该表都有唯 一的一项,用于指出当前该块存放的信息是哪个主存块的。 它实际上记录了该主存块块地址的高位部分,称为标识 (tag),所以存放目录表的存储器又叫标识存储器。
缺点:速度慢。在进行写操作时CPU必须等待,直到写操作 结束,称为CPU写停顿。减少写停顿的常用方法是采用写缓 冲器。
计算机系统结构课件
三峡大学计算机与信息学院
第三章 存储层次
3.2 Cache基本知识 3.2.5 写策略
2、写回法
方法:只把数据写入Cache中相应的块,并设置“修改位” 标志,当该块被替换时才根据“修改位”标志决定是否写回 下一级存储器。
主存地址:
标识
索引
块地址
块内位移
计算机系统结构课件
第三章
3.2 Cache基本知识 3.2.3 查找方法
1、用相联存储器现实
h位 标识
三峡大学计算机与信息学院
存储层次
g位 索引
从2g组中 选择一组
标识存储器
… 相联比较 ●

总容量:2g×n项
组内块地址(log2n位)
计算机系统结构课件
三峡大学计算机与信息学院
10%
256K 64K 16K 4K
不 命 5% 中 率
0 16
32
64
128
256
块大小(字节)
三峡大学计算机与信息学院
第三章 存储层次
3.2 Cache基本知识 3.2.4 替换算法
1、随机法
方法:随机地选择被替换的块。
优点:简单、易于硬件实现。
缺点:命中率低。
计算机系统结构课件
三峡大学计算机与信息学院
第三章 存储层次
3.2 Cache基本知识 3.2.4 替换算法2、先进先出法 NhomakorabeaFIFO)
高快小
寄存器 缓存 主存 磁盘 磁带
位速容 价度量
低慢大
计算机系统结构课件
三峡大学计算机与信息学院
第三章 存储层次
3.1 存储系统的层次结构 3.1.1 存储系统的层次结构
1.程序访问的局部性原理
程序访问的局部性原理是指:程序访问的指令和数据在 地址上并不是均匀分布的,而是相对族聚的。它包含两个方 面:时间局部性和空间局部性。
3、CPU与M1之间传送信息一般以字为单位,而与M2及以 下的存储器之间一般以块或页面为单位传送信息。
计算机系统结构课件
三峡大学计算机与信息学院
第三章 存储层次
3.1 存储系统的层次结构 3.1.2 存储系统的性能参数
以两级存储层次结构为例:
1.存储容量S:S=S2
2.平均位价C:C=(C1S1+C2S2)/(S1+S2)
时间局部性是指程序将要用到的信息很可能就是现在正 在使用的信息,典型例子是循环程序;空间局部性是指程序 将要用到的信息很可能与现在正在使用的信息在存储空间上 是相邻的。
程序访问的局部性原理是使多级存储层次成为可能的一 个重要特征。
计算机系统结构课件
三峡大学计算机与信息学院
第三章 存储层次
3.1 存储系统的层次结构 3.1.1 存储系统的层次结构
主存 块号
0 1 2 3 4 5 6 7
计算机系统结构课件
三峡大学计算机与信息学院
第三章 存储层次
3.2 Cache基本知识 3.2.2 映像规则
3、组相联映像
在组相联映像中,Cache被分为若干组,每组若干块组成。 主存中的每一块可以被放置在Cache中唯一一个组中的任意 一个位置上。显然它是全相联映像和直接映像的一个折中。
第三章 存储层次
3.2 Cache基本知识 3.2.3 查找方法
2、用单体多字的按地址访问的存储器和比较器现实
以下是4路组相联并行标识比较的实现原理图:
h位
g位
主存块地址 标识
索引
h位 g位
第1组 h位
第2组 h位
第3组 h位
第4组 h位




否 是否 是否 是否 是
=?
=?
=?
=?
h位比较器
计算机系统结构课件
优点:速度快。
缺点:不能很好地保证Cache和主存内容的一致性。
计算机系统结构课件
三峡大学计算机与信息学院
第三章 存储层次
3.3 降低Cache不命中率 1、增加Cache块大小
如下图所示为不同Cache容量的情况下,不命中率和块的 大小的关系。Cache容量越大,不命中率达到最低的块大小 就越大。但要注意增加块大小同时也增加不命中开销。
3.1 存储系统的层次结构 3.1.3 三级存储系统
目前,大多数计算机都采用了由Cache、主存储器和磁盘 存储器(辅存)构成的三级存储系统,它也可以看成是由 “Cache-主存”层次和“主存-辅存”层次构成。
Cache
主存
辅存
计算机系统结构课件
三峡大学计算机与信息学院
第三章 存储层次
3.1 存储系统的层次结构 3.1.3 三级存储系统
优点:能正确反应程序的局部性,命中率较高。
缺点:实现比较复杂。
计算机系统结构课件
三峡大学计算机与信息学院
第三章 存储层次
3.2 Cache基本知识 3.2.5 写策略
1、写直达法
方法:在执行“写”操作时,不仅把数据写入Cache中相应 的块,而且也写入下一级存储器。
优点:易于实现且能很好地保证Cache和主存内容的一致性。
方法:选择最早调入的块作为被替换的块。
优点:简单、易于硬件实现。
缺点:不能正确反应程序的局部性。
计算机系统结构课件
三峡大学计算机与信息学院
第三章 存储层次
3.2 Cache基本知识 3.2.4 替换算法
3、近期最少使用法(Least Recently Used,LRU)
方法:选择近期使用次数最少的块作为被替换的块。也经常 使用选择最久没有被访问过的块作为被替换的块(LFU)的 算法来替代。
3.命中率H:H=N1/(N1+N2);其中N1和N2分别为访问M1和M2的 次数。显然1-H为不命中率。
4.平均访存时间TA:TA=T1+(1-H)TM;其中T1为命中时间,TM 为不命中开销。
CPU
M1 (T1,S1,C1)
M2 (T2,S2,C2)
计算机系统结构课件
三峡大学计算机与信息学院
第三章 存储层次
Cache 存储体
计算机系统结构课件
三峡大学计算机与信息学院
第三章 存储层次
3.2 Cache基本知识 3.2.2 映像规则
1、全相联映像
全相联映像是指主存中的任意一块可以被放置在Cache中 的任意一个位置。
块号 Cache
0 1 2 3
主存 块号
0 1 2 3 4 5 6 7
计算机系统结构课件
切换到其他进程
计算机系统结构课件
三峡大学计算机与信息学院
第三章 存储层次
3.1 存储系统的层次结构 3.1.4 存储层次的四个研究问题
(1)当把一个块(页)调入高一层存储器时,可以放在哪 些位置上?(映像规则)
(2)当所要访问的块(页)在高一层存储器时,如何找到 该块(页)?(查找算法)
(3)当发生不命中而且高一层存储器已经满时,应替换哪 一块(页)?(替换算法)
2.存储系统的多级层次结构
如下图所示是存储系统的多级层次结构,其中T表示存储
器的访问时间,S表示容量,C表示位价。整个存储器要实现
的目标是:从CPU来看,该存储系统的速度接近于M1,而容 量和位价接近于Mn。
CPU
M1 (T1,S1,C1)
M2 (T2,S2,C2)
存储层次
……
Mn (Tn,Sn,Cn)
“Cache-主存”层次和的区别如下表:
比较项目
“Cache-主存”层次
目的
为弥补主存速度的不足
存储管理的实现
全部由专用硬件实现
访问速度的比值
几比一
典型的块或页大小
几十字节
CPU对第二级的访问方式
可直接访问
不命中时CPU是否切换
不切换
“主存-辅存”层次 为弥补主存容量的不足
主要由软件实现 几万比一
几百到几千字节 均通过第一级
(4)当进行写访问时,应进行哪些操作?(写策略)
计算机系统结构课件
三峡大学计算机与信息学院
第三章 存储层次
3.2 Cache基本知识 3.2.1 基本结构和原理
来自CPU
主存地址
主存地址 块地址 块内地址
不命中 主存→Cache
地址转换
访问主存 调入一块
命中
Cache地址 块地址 块内地址
主存
Cache 至CPU
三峡大学计算机与信息学院
第三章 存储层次
相关主题