清华计算机组成原理课件存储系统.ppt

上传人(卖家):三亚风情 文档编号:2214306 上传时间:2022-03-21 格式:PPT 页数:71 大小:1.84MB
下载 相关 举报
清华计算机组成原理课件存储系统.ppt_第1页
第1页 / 共71页
清华计算机组成原理课件存储系统.ppt_第2页
第2页 / 共71页
清华计算机组成原理课件存储系统.ppt_第3页
第3页 / 共71页
清华计算机组成原理课件存储系统.ppt_第4页
第4页 / 共71页
清华计算机组成原理课件存储系统.ppt_第5页
第5页 / 共71页
点击查看更多>>
资源描述

1、2022-3-20计算机组成原理1章存储系统章存储系统7 7.6 .6 存储保护存储保护7.1 7.1 存储系统的层次结构存储系统的层次结构7.2 7.2 高速缓冲存储器高速缓冲存储器CacheCache 7.3 7.3 虚拟存储器虚拟存储器 7.5 7.5 双端口存储器双端口存储器 7.4 7.4 相联存储器相联存储器2022-3-20计算机组成原理27.1 7.1 存储系统的层次结构存储系统的层次结构CPUCACHE主存(内存)主存(内存)辅存(外存)辅存(外存)l根据各种存储器的存储根据各种存储器的存储容量、存取速度和价格容量、存取速度和价格比的不同,将它们按照比的不同,将它们按照一定的

2、体系结构组织起一定的体系结构组织起来,使所放的程序和数来,使所放的程序和数据按照一定的层次分布据按照一定的层次分布在各种存储器中。在各种存储器中。2022-3-20计算机组成原理31、主存和高速缓存之间的关系、主存和高速缓存之间的关系lCacheCache引入引入: :为解决为解决CPUCPU和主存之间的速度差距和主存之间的速度差距, ,提高整机的运算速度提高整机的运算速度, ,在在CPUCPU和主存之间插入的由高速电子器件组成的容量不大和主存之间插入的由高速电子器件组成的容量不大, ,但速但速度很快的存储器。度很快的存储器。lCacheCache特点特点存取速度最快,容量小,价格贵,存取速度

3、最快,容量小,价格贵,存储控制和管理由硬件实存储控制和管理由硬件实现。现。lCacheCache工作原理工作原理程序访问的局部性程序访问的局部性 在较短时间内由程序产生的地址往往集中在存储器逻辑地在较短时间内由程序产生的地址往往集中在存储器逻辑地址空间的很小范围内。这种对局部的存储器地址频繁访问,址空间的很小范围内。这种对局部的存储器地址频繁访问,而对此范围以外的地址范围甚少的现象就称为程序访问的局而对此范围以外的地址范围甚少的现象就称为程序访问的局部性。部性。 CPU CPU与与CacheCache之间的数据交换是以字为单位,而之间的数据交换是以字为单位,而CacheCache与主与主存之间

4、的数据交换是以块存之间的数据交换是以块( (页)为单位,一个块(页)是由若页)为单位,一个块(页)是由若干字组成,是定长度的。干字组成,是定长度的。演示演示2022-3-20计算机组成原理4Cache功能演示功能演示2022-3-20计算机组成原理52、主存与辅存之间的关系、主存与辅存之间的关系l主存主存:(半导体存储器组成半导体存储器组成)优优:速度快速度快缺缺:容量居中容量居中,单位成本较高单位成本较高, 价格居中。价格居中。l辅存辅存:(光盘光盘,磁盘磁盘)优优:容量大容量大,信息长久保存信息长久保存,单位成本低单位成本低.缺缺:存取速度慢存取速度慢l CPU将要运行的程序和数据存放在主

5、存中,而将要运行的程序和数据存放在主存中,而暂时不用的程序和数据存放在辅存中。暂时不用的程序和数据存放在辅存中。l 辅存只与主存进行数据交换,不能直接运行辅存只与主存进行数据交换,不能直接运行,需需靠辅助的软、硬件来实现之。靠辅助的软、硬件来实现之。演示演示2022-3-20计算机组成原理67.2 7.2 高速缓冲存储器高速缓冲存储器CacheCache 组成组成: 由高速小容量的由高速小容量的SRAM和高速缓存控制器组和高速缓存控制器组成。成。l 功能功能: 将将CPU当前快要用到的部分数据块由主存复当前快要用到的部分数据块由主存复制到容量小、速度快的制到容量小、速度快的Cache 中中,再

6、由再由Cache 向向CPU直直接提供它所需要的数据。它内部存放的是部分主存内容接提供它所需要的数据。它内部存放的是部分主存内容的副本。的副本。l Cache存储器介于存储器介于 CPU和主存之间,它的工作速度和主存之间,它的工作速度数倍于主存,全部功能由硬件实现。由于转换速度快,数倍于主存,全部功能由硬件实现。由于转换速度快,软件人员丝毫未感到软件人员丝毫未感到Cache的存在,这种特性称为的存在,这种特性称为Cache的透明性。的透明性。Cache内部是用同主存内部同样大小内部是用同主存内部同样大小的块组成,故由于的块组成,故由于Cache存储容量小,所以块的数目少存储容量小,所以块的数目

7、少l 在在Cache中,每一块外加有一个标记,指明它是主中,每一块外加有一个标记,指明它是主存的哪一块的副本,所以该标记的内容相当于主存中块存的哪一块的副本,所以该标记的内容相当于主存中块的编号,块内字节数与主存相同。的编号,块内字节数与主存相同。2022-3-20计算机组成原理77.2.7.2.1 1 CacheCache的组成和工作原理的组成和工作原理标志标志 块号块号 块内地址块内地址主存地址主存地址主主存存块号块号 块内地址块内地址Cache标记标记Cache地址地址比较器比较器替替换换算算法法Cache数据数据去去CPU来自来自CPU不命中不命中命中命中Cache满满访数据访数据修改

8、标记修改标记访标记访标记NO2022-3-20计算机组成原理8数据总线数据总线Cache替换机构替换机构可装进?可装进? 命中?命中?主存主存Cache 地址映象地址映象 变换机构变换机构 主主 存存访问主访问主存替换存替换Cache Cache 存储体存储体块号块号块内地址块内地址直接通路直接通路访问主存装入访问主存装入CacheNNYY块号块号块内地址块内地址CPU主存地址主存地址地址总线地址总线Cache地址地址Cache 的基本结构的基本结构Cache替换机构替换机构由由 CPU 完成完成 Cache 存储体存储体主存主存Cache 地址映象地址映象 变换机构变换机构 2022-3-2

9、0计算机组成原理9Cache 的工作原理的工作原理主存和缓存的编址主存和缓存的编址主存和缓存按块存储主存和缓存按块存储 块的大小相同块的大小相同B 为块长为块长 主存块号主存块号主存储器主存储器012m1字块字块 0字块字块 1字块字块 M1主存块号主存块号块内地址块内地址m位位b位位n位位M块块B个字个字缓存块号缓存块号块内地址块内地址c位位b位位C块块B个字个字 字块字块 0字块字块 1字块字块 C1012c1标记标记Cache缓存块号缓存块号2022-3-20计算机组成原理10Cache工作原理演示工作原理演示2022-3-20计算机组成原理117.2.2 7.2.2 CacheCach

10、e的的组织和管理组织和管理l1.地址映像地址映像l为了把信息放到为了把信息放到Cache存储器中,必须应用某种方法把存储器中,必须应用某种方法把主存地址定位到主存地址定位到Cache中,称作中,称作地址映像地址映像。在信息按照。在信息按照这种映像关系(采用硬件方法实现)装入这种映像关系(采用硬件方法实现)装入Cache后,执后,执行程序时应将主存地址变换成行程序时应将主存地址变换成Cache地址地址,这个变换过这个变换过程叫做程叫做地址变换地址变换。地址的映像和变换是密切相关的。例。地址的映像和变换是密切相关的。例如主存容量如主存容量1MB, Cache 容量容量8KB,其地址结构如图:其地址

11、结构如图:l 主存地址主存地址lCache地址地址 Cache块号块号 l下面介绍几种基本地址映像方式,它们是全相联映像、下面介绍几种基本地址映像方式,它们是全相联映像、直接映像和组相联映像等。直接映像和组相联映像等。A19 主存块号 A10A9 块内地址 A0A12 A11 A10 A9 块内地址 A02022-3-20计算机组成原理12 (1)全相联映像)全相联映像l 全相联映像方式是最灵活,但成本最高的一种方式全相联映像方式是最灵活,但成本最高的一种方式。实际中较少使用。它允许主存中的每一个字块映像到实际中较少使用。它允许主存中的每一个字块映像到Cache存储器的任何一个字块位置上存储器

12、的任何一个字块位置上,也允许从确实已也允许从确实已被占满的被占满的Cache存储器中替换出任何一个旧字块。它的存储器中替换出任何一个旧字块。它的标记位数要多,为主存总位数减去块内的位数,这样会标记位数要多,为主存总位数减去块内的位数,这样会使使Cache标记容量加大。主要问题是在访问标记容量加大。主要问题是在访问Cache时,时,需要和需要和Cache的全部标记进行比较,这样才能判断出所的全部标记进行比较,这样才能判断出所访主存地址的内容是否已在访主存地址的内容是否已在 Cache中。由于中。由于Cache速速度要求高,所以全部度要求高,所以全部比较比较操作都要用硬件实现,通操作都要用硬件实现

13、,通常由常由“按内容寻址的按内容寻址的”相联存储器完成(见相联存储器完成(见7.4 章节)。章节)。 在具体操作时需要设立一个块号对照表,凡已装入在具体操作时需要设立一个块号对照表,凡已装入Cache 中的主存块号其标识位都要置中的主存块号其标识位都要置1,以便快速使用。,以便快速使用。2022-3-20计算机组成原理13图图7.4全相联映像全相联映像主存字块总位数减去b 字块 0 字块 1 字块 i 字块2m-1 字块 0 字块 1 字块 2c-1 标记 标记 标记 主存字 字块内 地址 块标记 主存储器 m = b 位 m= 主存地址 cache 存储器 2022-3-20计算机组成原理1

14、4全相联映象全相联映象主存主存 中的中的 任一块任一块 可以映象到可以映象到 缓存缓存 中的中的 任一块任一块字块字块2m1字块字块2c1字块字块1 字块字块0字块字块2c1字块字块1字块字块0标记标记标记标记标记标记主存字块标记主存字块标记 字块内地址字块内地址主存地址主存地址m = t + c 位位b位位m = t+cCache 存储器存储器主存储器主存储器 字块字块02022-3-20计算机组成原理15全相联映象演示全相联映象演示2022-3-20计算机组成原理16例如某机主存为例如某机主存为1MB(20位位),要求每页要求每页512B(9位位 ),要划分,要划分2048页页(占占11位

15、位);Cache为为8KB(13位位),每页每页512B(9位位),要划分,要划分16页页(占占4) 11位位 Cache 主存主存 主存地址主存地址l 11位位 9位位l 主存页号主存页号l由于每个由于每个Cache页可以映射页可以映射2048个主存页中的任一页,因此每页个主存页中的任一页,因此每页的的Cache标记也需要标记也需要11位,已表明它现在所映象的主存页号。位,已表明它现在所映象的主存页号。 标记标记0页页标记标记1页页 . . . . . .标记标记15页页0页页1页页15页页2047页页主存页标号主存页标号 页内地址页内地址注:这里的页相当注:这里的页相当于以上所介绍的字于以

16、上所介绍的字块。块。2022-3-20计算机组成原理17 (2)直接映像直接映像l 在直接映像方式中,主存和在直接映像方式中,主存和Cache中字块的对应关系中字块的对应关系,如图如图 7. 3所示。直接映像函数可定义为:所示。直接映像函数可定义为: j= i mod 2c l 其中其中j 是是Cache 的字块号,的字块号,i 是主存的字块号,主存是主存的字块号,主存中有中有2m 个块个块,字块大小为字块大小为2b 字,字,Cache中有同样大小的中有同样大小的2c 个块个块 。C是是Cache高位地址位数高位地址位数,b是是Cache低位地址低位地址位数位数 。其做法是先将主存分成与其做法

17、是先将主存分成与Cache同样大小的若同样大小的若干个区(组),每个区中的某个块只能固定调入干个区(组),每个区中的某个块只能固定调入Cache 中的对应块,如第中的对应块,如第0 块,第块,第2c 块,第块,第2c+1块,块, ,只,只能映像到能映像到cache 的第的第0 块,而主存的第块,而主存的第1 块,第块,第2c1块第块第2c+1十十1块,块, ,只能映像到只能映像到 Cache的第的第 1块等等。块等等。在这种映像方式中,其对应关系是固定的并有一定限制在这种映像方式中,其对应关系是固定的并有一定限制的。的。2022-3-20计算机组成原理18图图7.3 字块0 字块1 字块2c-

18、1 字块 2c 字块2c+1 字块2c+1-1 字块2c+1 字块2m-1 字块 0 字块 1 字块 2c-1 标记 标记 标记 主存字 cache 字块内 块标记 字块地址 地址 主存储器 t 位 c 位 b 位 m 位 t 位 0 1 2c-1 比较器(t 位) = 主存 地址 有效位=1? 命中 不命中 cache 存储器 * *假设 cache 字块地址字段内容为0001 2022-3-20计算机组成原理19 字块字块2m1 字块字块2c+1 字块字块2c+11 字块字块2c +1 字块字块2c 字块字块2c1 字块字块1 字块字块0主存储体主存储体 字块字块 1 标记标记 字块字块

19、0 标记标记字块字块 2c1标记标记Cache存储体存储体t位位01C1 字块字块字块地址字块地址 主存字主存字 块标记块标记t 位位c 位位b 位位主存地址主存地址 比较器(比较器(t位)位)= 不命中不命中有效位有效位=1?*m位位 Cache内地址内地址否否是是命中命中直接映象直接映象每个缓存块每个缓存块 i 可以和可以和 若干若干 个个 主存块主存块 对应对应每个主存块每个主存块 j 只能和只能和 一一 个个 缓存块缓存块 对应对应i = j mod C 字块字块2c+1 字块字块2c 字块字块0 字块字块 02022-3-20计算机组成原理20直接映象演示直接映象演示2022-3-2

20、0计算机组成原理21l例如例如 某机主存为某机主存为1MB,每页每页512B ,这样划分这样划分2048页,共分页,共分0127组,每组组,每组16页页;Cache为为8KB,每页每页512B ,划分,划分16页。页。l 7位位 Cache 主存主存 主存地址主存地址l 7位位 4位位 9位位l 0组组l 1组组 主存页号主存页号l l Cache地址地址 l标记为组号标记为组号 l在访存时,只需比较在访存时,只需比较 两者标记,如相同则命中两者标记,如相同则命中 127组组 标记标记0页页标记标记1页页 . . . . . . 标记标记15页页0页页1页页 15页页16页页17页页 31页页

21、 2032页页2033页页 2047页页主存主存标记标记Cache页号页号页内页内地址地址页相当于字块2022-3-20计算机组成原理22l优点优点是实现简单,只需利用主存地址是实现简单,只需利用主存地址,按某些字按某些字段直接判断,即可确定所需字块是否已在段直接判断,即可确定所需字块是否已在 Cache存储器中。存储器中。l缺点缺点是不够灵活,即主存的是不够灵活,即主存的2t个字块只能对应唯个字块只能对应唯一的一的Cache存储器字块。因此存储器字块。因此,即使即使Cache存储存储器别的许多地址空着也不能占用。这使得器别的许多地址空着也不能占用。这使得Cache存储空间得不到充分利用,并降

22、低了命中率。存储空间得不到充分利用,并降低了命中率。2022-3-20计算机组成原理23l(3)组相联映像)组相联映像l 组相联映像方式是直接映像和全相联映像方式的一组相联映像方式是直接映像和全相联映像方式的一种折衷方案。组相联映像种折衷方案。组相联映像Cache组织如图组织如图7.5所示。即所示。即在高速缓冲区内将其容量先分成以组为单位,然后每组在高速缓冲区内将其容量先分成以组为单位,然后每组内在包含若干页。内在包含若干页。l 组相联映像方式的性能与复杂性介于直接映像与全组相联映像方式的性能与复杂性介于直接映像与全相联映像两种方式之间。设相联映像两种方式之间。设r 为为Cache中每组中包含

23、中每组中包含2r个字块数,这样当个字块数,这样当r = 0 时,它就成为直接映像方式时,它就成为直接映像方式,当当r = c 时,就是全相联映像方式。也就是各组是直接映像时,就是全相联映像方式。也就是各组是直接映像方式,组内的页执行的是全相连映像方式。方式,组内的页执行的是全相连映像方式。l Cache的命中率除了与地址映像的方式有关外,还与的命中率除了与地址映像的方式有关外,还与Cache的容量有关。的容量有关。Cache容量大容量大,则命中率就高,但则命中率就高,但达到一定容量后,命中率的提高就不明显了。达到一定容量后,命中率的提高就不明显了。l 到到80486才引进一个才引进一个8KB的

24、片上的片上Cache,一个用作指,一个用作指令缓存,另一个用作数据缓存。它们的块大小都为令缓存,另一个用作数据缓存。它们的块大小都为32KB,采用两路组相连的组织方式。,采用两路组相连的组织方式。2022-3-20计算机组成原理24图图7.5组相联映像组相联映像每组两个子块 字块 0 字块 1 字块 2c-r-1 字块 2c-r 字块 2c-r+1 字块 2c-r+1-1 字块 2c-r+1 字块 2m-1 主存储器 标记 字块 0 标记 字块 1 标记 字块 0 标记 字块 1 标记 字块 0 标记 字块 1 cache (r = 1) 组 0 1 2c-r-1 主存字块标记 组地址 块内地

25、址 t+r 位 c=c -rb 位 主存地址 2022-3-20计算机组成原理25字块字块2m1字块字块2c-r+1 字块字块2c-r + 1 字块字块2c-r字块字块2c-r 字块字块1 字块字块0 字块字块 3标记标记 字块字块 1标记标记字块字块 2c1标记标记 字块字块 2标记标记 字块字块 0标记标记字块字块 2c2标记标记 字块内地址字块内地址组地址组地址主存字块标记主存字块标记s = t + r 位位q = cr 位位b 位位组组012c-r1主存地址主存地址Cache主存储器主存储器m 位位共共 Q 组组,每组内两块(,每组内两块(r = 1)1某一主存块某一主存块 j 按模按

26、模 Q 映射到映射到 缓存缓存 的第的第 i 组组中的中的 任一块任一块i = j mod Q直接映象直接映象全相联映象全相联映象组相联映象组相联映象 字块字块0 字块字块 1 字块字块 0 字块字块2c-r 字块字块2c-r+12022-3-20计算机组成原理26组相联映象演示组相联映象演示2022-3-20计算机组成原理27例如某机主存为例如某机主存为1MB(2048页),共分页),共分0255组,每组组,每组8页,每页页,每页512B;Cache为为8KB,(16页),共为页),共为8组,每组组,每组2页,每页页,每页512Bl 8位位 Cache 主存主存 主存页标记主存页标记0组组

27、7位位 3位位 1位位 9位位 1组组 0组组 Cache地址地址 1组组 7组组 255组组访存时根据主存地址的中间访存时根据主存地址的中间4位,找到位,找到Cache页,将其标记与主存页,将其标记与主存页标记进行比较,判断是否是主存中的副本,即访问是否命中。页标记进行比较,判断是否是主存中的副本,即访问是否命中。 标记标记标记标记0页页1页页标记标记标记标记2页页3页页标记标记标记标记14页页15页页0页页1页页7页页8页页9页页15页页2047页页主存组号主存组号Cache组组号号组内页号组内页号页内地址页内地址2022-3-20计算机组成原理282. Cache的写入操作的写入操作l

28、写贯穿(全写法)(写贯穿(全写法)(Write through): 同时写入同时写入 Cache和和主存。主存。保证主存和保证主存和Cache内容相同内容相同,方法简单可靠。方法简单可靠。对对Cache的更新同时要写主存的更新同时要写主存,速度会受影响。速度会受影响。l写回法写回法(Copy back):先将更新内容写入先将更新内容写入Cache,并做并做标记,在特定时间将标记,在特定时间将Cache内容写入主存。内容写入主存。省去不必要的立即回写操作;回写式系统机构比较复省去不必要的立即回写操作;回写式系统机构比较复杂。杂。写一次法:写命中与未命中的处理方法与写回法基本相写一次法:写命中与未

29、命中的处理方法与写回法基本相同,只是第一次写命中是要同时写入主存。同,只是第一次写命中是要同时写入主存。Pentium机的机的L2级级Cache采用的是写回法,采用的是写回法,L1级数据级数据Cache采用的是写一次法。采用的是写一次法。2022-3-20计算机组成原理29l 3. 替换算法替换算法l 当新的主存字块需要调入当新的主存字块需要调入Cache存储器,而它的可存储器,而它的可用位置又已被占满时,就产生替换算法问题。先介绍两用位置又已被占满时,就产生替换算法问题。先介绍两种替换算法先进先出(种替换算法先进先出(FIFO)算法和近期最少使用算法和近期最少使用(LRU)算法。算法。l F

30、IFO算法:算法:在地址变换表中设置一个历史位,当替在地址变换表中设置一个历史位,当替换时,总是把一组中最先调入换时,总是把一组中最先调入 Cache存储器的字块替存储器的字块替换出去,它不需要随时记录各个字块的使用情况,所以换出去,它不需要随时记录各个字块的使用情况,所以实现容易且开销小。实现容易且开销小。 l LRU算法算法是把一组中近期最少使用的字块替换出去。是把一组中近期最少使用的字块替换出去。这种替换算法需随时记录这种替换算法需随时记录ache存储器中各个字块的使存储器中各个字块的使用情况,用情况, 即页表为在物理存储取中的每一页保留了一即页表为在物理存储取中的每一页保留了一个时间或

31、年龄域,以便确定哪个字块是近期最少使用的个时间或年龄域,以便确定哪个字块是近期最少使用的字块字块。LRU替换算法的平均命中率比替换算法的平均命中率比FIFO要高,并且要高,并且当分组容量加大时,能提高当分组容量加大时,能提高LRU替换算法的命中率,能替换算法的命中率,能较好地反映出程序的局部性的特点。较好地反映出程序的局部性的特点。 2022-3-20计算机组成原理30l LRU是最常使用的一种算法。其设计思想是是最常使用的一种算法。其设计思想是把组中各块的使用情况记录在一张表上(如图把组中各块的使用情况记录在一张表上(如图7.6所示)。并把最近使用过的块放在表的最上所示)。并把最近使用过的块

32、放在表的最上面。这种算法用硬件实现比较麻烦,经常采用修面。这种算法用硬件实现比较麻烦,经常采用修改型改型LRU算法,如图算法,如图7.6所示。所示。l 另外还有一种随机替换法(另外还有一种随机替换法(RAND),这种算这种算法不考虑使用情况,在组内随机选择一块来替换,法不考虑使用情况,在组内随机选择一块来替换,其性能要差些。其性能要差些。2022-3-20计算机组成原理31原始状态 替换 7 访问 5 访问 1 替换 6 0 7 5 1 6 1 0 7 5 1 2 1 0 75 3 2 1 0 7 4 3 2 2 0 5 4 3 3 2 6 5 4 4 3 7 6 6 6 4 图 7.6 LR

33、U算法替换登记表 2022-3-20计算机组成原理327.2.3 7.2.3 CacheCache的命中率的命中率l 设设NC表示表示Cache完成存取的总次数,完成存取的总次数, Nm表示主存表示主存完成存取的总次数,完成存取的总次数,h定义为命中率,则有定义为命中率,则有 h= NC/(NC+ Nm) l若若tc 表示命中时的表示命中时的Cache存储周期,存储周期,tm表示未命中时表示未命中时的主存的存储周期,的主存的存储周期,1h表示未命中率,则表示未命中率,则Cache、主存系统的平均访问时间主存系统的平均访问时间ta为:为: l ta=htc+(1-h)(tm+tc) htc+(1

34、-h)tml即没有命中时,到主存中去取,然后放入到即没有命中时,到主存中去取,然后放入到Cache中中再执行。再执行。l 设设r=tm/tc表示主存慢于表示主存慢于Cache的倍率,的倍率,e 表示访表示访问效率则有问效率则有 e=tc/ta=tc/htc+(1-h)tm=1/h+(1-h)r=1/r+(1-r)hl为提高访问效率,为提高访问效率,h 接近接近 1 好。好。 2022-3-20计算机组成原理33l 例题:例题:CPU执行一段程序时,执行一段程序时,Cache完完成存取的次数为成存取的次数为1900次,主存完成存取的次,主存完成存取的次数为次数为100次,已知次,已知Cache存

35、取周期存取周期tc为为50ns,主存存取周期主存存取周期tm为为250ns,求求Cache/主主存系统的效率存系统的效率e和平均访问时间和平均访问时间 ta 。l 解:命中率解:命中率h的计算的计算l h=NC/(NC+ Nm)=1900/(1900+100)=0.95l 平均访问时间平均访问时间ta的计算的计算 lta htc+(1h)tm=0.9550ns+0.05250ns =47.5ns+12.5ns=60nsl 效率的计算效率的计算 e=tc/ta=50ns/60ns=83.3%2022-3-20计算机组成原理347.2.4 7.2.4 多层次多层次CacheCache存储器存储器l

36、 1.指令指令Cache和数据和数据Cachel开始实现开始实现Cache时,是将指令和数据存放在同一时,是将指令和数据存放在同一Cache中的。后来随着计算机技术的发展和处理速度的加快中的。后来随着计算机技术的发展和处理速度的加快,存取数据的操作经常会与取指令的操作发生冲突,从而存取数据的操作经常会与取指令的操作发生冲突,从而延迟了指令的读取。发展的趋势是将指令延迟了指令的读取。发展的趋势是将指令Cache和数据和数据 Cache分开而成为两个相互独立的分开而成为两个相互独立的Cache。 l 2. 多层次多层次Cache结构结构l当芯片集成度提高后,可以将更多的电路集成在一个微当芯片集成度

37、提高后,可以将更多的电路集成在一个微处理器芯片中处理器芯片中,于是近年来新设计的快速微处理芯片都于是近年来新设计的快速微处理芯片都将将Cache集成在片内,片内集成在片内,片内cache的读取速度要比片外的读取速度要比片外Cache快得多。快得多。 Pentium微处理器的片内包含有微处理器的片内包含有8KB数据数据 Cache和和 8KB指令指令Cache。Cache行的长度为行的长度为32b,采取两路组相联组织。,采取两路组相联组织。2022-3-20计算机组成原理35l 片内片内Cache的容量受芯片集成度的限制,的容量受芯片集成度的限制,一般在几十一般在几十KB以内。因此命中率比大容量

38、以内。因此命中率比大容量Cache低,于是推出了二级低,于是推出了二级Cache方案。方案。其中第一级其中第一级Cache(L1)在处理器芯片内在处理器芯片内部;第二级部;第二级Cache(L2)在片外,其容量在片外,其容量可从几十可从几十KB到几百到几百KB,采用采用SRAM存储存储器,两级器,两级Cache之间一般有专用总线相连。之间一般有专用总线相连。 l Pentium微处理器支持片外的第二级微处理器支持片外的第二级Cache。其容量为其容量为256KB或或512KB。也是也是采用两路组相连方案。采用两路组相连方案。2022-3-20计算机组成原理36奔腾奔腾2级级cache工作环境演

39、示工作环境演示2022-3-20计算机组成原理377.3 7.3 虚拟存储器虚拟存储器l 虚拟存储器只是一个容量非常大的存储器的虚拟存储器只是一个容量非常大的存储器的逻辑模型,不是任何实际的物理存储器。它是借逻辑模型,不是任何实际的物理存储器。它是借助磁盘等辅助存储器来扩大主存容量,使之为更助磁盘等辅助存储器来扩大主存容量,使之为更大或更多的程序所使用。在虚拟存储器中不仅有大或更多的程序所使用。在虚拟存储器中不仅有主存和辅存两级存储器,还必须有辅助软、硬件主存和辅存两级存储器,还必须有辅助软、硬件来对它们之间的数据实现控制。有了虚拟存储器,来对它们之间的数据实现控制。有了虚拟存储器,用户无需考

40、虑所编程序在主存中是否放得下或放用户无需考虑所编程序在主存中是否放得下或放在什么位置等问题。特点在什么位置等问题。特点: 1)允许用户访问比实际存储空间大得多的地址)允许用户访问比实际存储空间大得多的地址空间,虚存空间取决于机器所能提供的虚存地空间,虚存空间取决于机器所能提供的虚存地址码的长度。将当前和常用到的内容放在主存址码的长度。将当前和常用到的内容放在主存中,其他还未用到的放在外存中。中,其他还未用到的放在外存中。 2)每次访存都要自动的进行虚实地址的转换)每次访存都要自动的进行虚实地址的转换2022-3-20计算机组成原理38l 虚拟存储系统所采取的映像方式同样有全相联映像、虚拟存储系

41、统所采取的映像方式同样有全相联映像、组相联映像和直接映像等。替换算法也多采用组相联映像和直接映像等。替换算法也多采用 LRULRU算法。算法。虚拟主存的实现方法有分页、分段和段页式。在分页式虚拟主存的实现方法有分页、分段和段页式。在分页式虚拟主存中,地址空间被分成大小相对的虚拟页。其中虚拟主存中,地址空间被分成大小相对的虚拟页。其中的某些页被映像到物理页面,其他的页面则不映像到物的某些页被映像到物理页面,其他的页面则不映像到物理页面。对映像页面的访问将由理页面。对映像页面的访问将由MMUMMU转换到正确的物理转换到正确的物理地址。引用一个没有映像的页面将产生一个缺页。主存地址。引用一个没有映像

42、的页面将产生一个缺页。主存一辅存层次的信息传送可采用几种不同的管理方案,如一辅存层次的信息传送可采用几种不同的管理方案,如段、页或段页式。段、页或段页式。7.3.1 7.3.1 段式管理方案段式管理方案 段式管理方案是将程序按其逻辑结构分成许多大小段式管理方案是将程序按其逻辑结构分成许多大小不同的、相对独立的程序段。在采用段式管理的系统中,不同的、相对独立的程序段。在采用段式管理的系统中,为了进行地址变换需要为各用户建立一个段表。段表内为了进行地址变换需要为各用户建立一个段表。段表内包括段号、段起点、段长、装入位和访问权等内容。任包括段号、段起点、段长、装入位和访问权等内容。任何一个段可从何一

43、个段可从0 0地址开始编址。访问权是指该段所允许地址开始编址。访问权是指该段所允许的访问形式,便于以段为单位实现存储保护。如程序段的访问形式,便于以段为单位实现存储保护。如程序段只允许执行不许写,数据段只许读写不能执行,常数段只允许执行不许写,数据段只许读写不能执行,常数段只许读不许写等。只许读不许写等。2022-3-20计算机组成原理39段式管理方案段式管理方案 段号段号 起始位置起始位置 有效位有效位 段长段长 访问方式访问方式以程序的逻辑结构所形成的段作为以程序的逻辑结构所形成的段作为主存分配单位的存储器管理方式主存分配单位的存储器管理方式.段大小可以不相等段大小可以不相等.每个程序有一

44、个段表每个程序有一个段表 (E表示执行)表示执行)段段1(1KB)段段2(2KB)段段3(3KB)段段4(1KB)段段5(3KB)地址地址 主存空间主存空间段段1段段5段段301K4K6063段表段表逻辑程序空间逻辑程序空间1 0 1 1KB23 60K 1 3KB45 1K 1 3KBER,WE,R2022-3-20计算机组成原理40段式存储器地址变换演示段式存储器地址变换演示2022-3-20计算机组成原理41l 段式管理系统的优点段式管理系统的优点是段的分界与程序的自然分界是段的分界与程序的自然分界相对应。段的逻辑独立性,使它易于编译、管理、修改相对应。段的逻辑独立性,使它易于编译、管理

45、、修改和保护和保护, ,也便于多道程序共享。也便于多道程序共享。其缺点其缺点是容易在段间留是容易在段间留下许多空余的零碎存储空间造成浪费。另外段的起点和下许多空余的零碎存储空间造成浪费。另外段的起点和终点不定。终点不定。7.3.2 7.3.2 页式管理方案页式管理方案l 信息传送单位是定长的页(如信息传送单位是定长的页(如4 4 KB)KB),所以虚存和主所以虚存和主存的存储空间都被划分为等长的固定页。而把前者称为存的存储空间都被划分为等长的固定页。而把前者称为虚页或逻辑页,而把后者称为实页或物理页。它比段式虚页或逻辑页,而把后者称为实页或物理页。它比段式管理系统的空间浪费要小得多。由于页不是

46、逻辑上独立管理系统的空间浪费要小得多。由于页不是逻辑上独立的实体,所以处理保护和共享都没有段式管理方式容易的实体,所以处理保护和共享都没有段式管理方式容易实现。实现。l 图图 7.13 7.13表示某个程序有表示某个程序有 5 5页(逻辑页号页(逻辑页号 0 04 4)各)各页分别装入主存不连续的页面位置,用页表记录逻辑页页分别装入主存不连续的页面位置,用页表记录逻辑页号及其所对应的实主存页号,页表是由操作系统建立的。号及其所对应的实主存页号,页表是由操作系统建立的。图图 7.13 7.13中逻辑页号中逻辑页号0 0、1 1、3 3已分配实主存空间,所以装已分配实主存空间,所以装入位为入位为1

47、 1。2022-3-20计算机组成原理42页式管理方案页式管理方案程序空间程序空间实存空间实存空间逻辑逻辑页号页号物理物理页号页号0123401234560 2 11 1 12 3 4 14 页表页表逻辑页号逻辑页号 物理页号物理页号 有效位有效位将虚拟空间和主存空间划分成将虚拟空间和主存空间划分成大小固定的页大小固定的页,以页为分配单位以页为分配单位的存储管理方式的存储管理方式.页的大小随机器而异,如页的大小随机器而异,如4KB。每道程序拥有一个页表每道程序拥有一个页表页表自动生成页表自动生成,对程序员透明对程序员透明.演示演示2022-3-20计算机组成原理43l 虚拟地址到主存实地址的变

48、换是由页表来实虚拟地址到主存实地址的变换是由页表来实现的。在页表中,对应每一个虚存页号有一个表现的。在页表中,对应每一个虚存页号有一个表目,表目内容至少要包含该虚页所在的主存页面目,表目内容至少要包含该虚页所在的主存页面地址(页面号),用它作为实(主)存地址的高地址(页面号),用它作为实(主)存地址的高字段;与虚拟地址的字地址字段相拼接就产生完字段;与虚拟地址的字地址字段相拼接就产生完整的实主存地址,据此访问主存、页式管理的地整的实主存地址,据此访问主存、页式管理的地址变换如图址变换如图7. 14所示。所示。l 通常,在页表的表项中还包括装入位通常,在页表的表项中还包括装入位(有效位有效位)修

49、改位、替换控制位及其他保护项等组成的控制修改位、替换控制位及其他保护项等组成的控制字。如装入位为字。如装入位为“1,表示该虚页已从辅存调,表示该虚页已从辅存调入主存。如装入位为入主存。如装入位为0,则表示对应的虚页尚未则表示对应的虚页尚未调入主存,如访问该页就要产生页面失效中断。调入主存,如访问该页就要产生页面失效中断。启动输入输出子系统,根据外页表启动输入输出子系统,根据外页表项目中查得的项目中查得的辅存地址,由磁盘等辅存中读出新的页到主存中来。辅存地址,由磁盘等辅存中读出新的页到主存中来。 2022-3-20计算机组成原理44l 修改位指出主存页面中的内容是否被修改过,修改位指出主存页面中

50、的内容是否被修改过,替换时是否要写回辅存;替换控制位指出需替换替换时是否要写回辅存;替换控制位指出需替换的页等。的页等。l 值得注意的问题是在页式管理中,假设页表值得注意的问题是在页式管理中,假设页表是保存在主存储器中,那么在访问存储器时首先是保存在主存储器中,那么在访问存储器时首先要查页表,即使页面命中,也得先访问一次主存要查页表,即使页面命中,也得先访问一次主存去查页表,再访问主存才能取得数据,这就相当去查页表,再访问主存才能取得数据,这就相当于主存速度降低了一倍。如果页面失效,要进行于主存速度降低了一倍。如果页面失效,要进行页面替换,页面修改,访问主存次数就更多了。页面替换,页面修改,访

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(清华计算机组成原理课件存储系统.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|