欢迎来到天天文库
浏览记录
ID:44063810
大小:1.91 MB
页数:71页
时间:2019-10-18
《清华计算机组成原理课件07存储系统》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第七章存储系统7.6存储保护7.1存储系统的层次结构7.2高速缓冲存储器Cache7.3虚拟存储器7.5双端口存储器7.4相联存储器2021/8/311计算机组成原理7.1存储系统的层次结构CPUCACHE主存(内存)辅存(外存)根据各种存储器的存储容量、存取速度和价格比的不同,将它们按照一定的体系结构组织起来,使所放的程序和数据按照一定的层次分布在各种存储器中。2021/8/312计算机组成原理1、主存和高速缓存之间的关系Cache引入:为解决CPU和主存之间的速度差距,提高整机的运算速度,在CPU和主存之间插入的由
2、高速电子器件组成的容量不大,但速度很快的存储器。Cache特点存取速度最快,容量小,价格贵,存储控制和管理由硬件实现。Cache工作原理——程序访问的局部性在较短时间内由程序产生的地址往往集中在存储器逻辑地址空间的很小范围内。这种对局部的存储器地址频繁访问,而对此范围以外的地址范围甚少的现象就称为程序访问的局部性。CPU与Cache之间的数据交换是以字为单位,而Cache与主存之间的数据交换是以块(页)为单位,一个块(页)是由若干字组成,是定长度的。演示2021/8/313计算机组成原理Cache功能演示2021/8/
3、314计算机组成原理2、主存与辅存之间的关系主存:(半导体存储器组成)优:速度快缺:容量居中,单位成本较高,价格居中。辅存:(光盘,磁盘)优:容量大,信息长久保存,单位成本低.缺:存取速度慢CPU将要运行的程序和数据存放在主存中,而暂时不用的程序和数据存放在辅存中。辅存只与主存进行数据交换,不能直接运行,需靠辅助的软、硬件来实现之。演示2021/8/315计算机组成原理7.2高速缓冲存储器Cache组成:由高速小容量的SRAM和高速缓存控制器组成。功能:将CPU当前快要用到的部分数据块由主存复制到容量小、速度快的Cac
4、he中,再由Cache向CPU直接提供它所需要的数据。它内部存放的是部分主存内容的副本。Cache存储器介于CPU和主存之间,它的工作速度数倍于主存,全部功能由硬件实现。由于转换速度快,软件人员丝毫未感到Cache的存在,这种特性称为Cache的透明性。Cache内部是用同主存内部同样大小的块组成,故由于Cache存储容量小,所以块的数目少在Cache中,每一块外加有一个标记,指明它是主存的哪一块的副本,所以该标记的内容相当于主存中块的编号,块内字节数与主存相同。2021/8/316计算机组成原理7.2.1Cache的
5、组成和工作原理标志块号块内地址主存地址主存块号块内地址Cache标记Cache地址比较器替换算法Cache数据去CPU来自CPU不命中命中Cache满访数据修改标记访标记NO2021/8/317计算机组成原理数据总线Cache替换机构可装进?命中?主存Cache地址映象变换机构主存访问主存替换CacheCache存储体块号块内地址直接通路访问主存装入CacheNNYY块号块内地址CPU主存地址地址总线Cache地址Cache的基本结构Cache替换机构由CPU完成Cache存储体主存Cache地址映象变换机构2021/
6、8/318计算机组成原理Cache的工作原理主存和缓存的编址主存和缓存按块存储块的大小相同B为块长~~~~……主存块号主存储器012m-1字块0字块1字块M-1主存块号块内地址m位b位n位M块B个字缓存块号块内地址c位b位C块B个字~~~~……字块0字块1字块C-1012c-1标记Cache缓存块号2021/8/319计算机组成原理Cache工作原理演示2021/8/3110计算机组成原理7.2.2Cache的组织和管理1.地址映像为了把信息放到Cache存储器中,必须应用某种方法把主存地址定位到Cache中,称作地址
7、映像。在信息按照这种映像关系(采用硬件方法实现)装入Cache后,执行程序时应将主存地址变换成Cache地址,这个变换过程叫做地址变换。地址的映像和变换是密切相关的。例如主存容量1MB,Cache容量8KB,其地址结构如图:主存地址Cache地址Cache块号下面介绍几种基本地址映像方式,它们是全相联映像、直接映像和组相联映像等。A19主存块号A10A9块内地址A0A12A11A10A9块内地址A02021/8/3111计算机组成原理(1)全相联映像全相联映像方式是最灵活,但成本最高的一种方式。实际中较少使用。它允许主
8、存中的每一个字块映像到Cache存储器的任何一个字块位置上,也允许从确实已被占满的Cache存储器中替换出任何一个旧字块。它的标记位数要多,为主存总位数减去块内的位数,这样会使Cache标记容量加大。主要问题是在访问Cache时,需要和Cache的全部标记进行比较,这样才能判断出所访主存地址的内容是否已在Cache中。由于Cach
此文档下载收益归作者所有