计组第3章-2缓存-071014.ppt_第1页
计组第3章-2缓存-071014.ppt_第2页
计组第3章-2缓存-071014.ppt_第3页
计组第3章-2缓存-071014.ppt_第4页
计组第3章-2缓存-071014.ppt_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2019/9/19,1,计算机(组成)原理,第3章 计算机的存储系统,2019/9/19,2,第3章 计算机的存储系统,3.1 计算机存储系统 3.2 计算机的主存储器 3.3 高速缓冲存储系统 3.4 虚拟存储系统,2019/9/19,3,3.3 高速缓冲存储系统,3.3.1 Cache存储系统工作原理 3.3.2 Cache存储系统的组织与映像 3.3.3 Cache存储系统结构 本节教学目标: 本节重点内容:,2019/9/19,4,3.3 高速缓冲存储系统,3.3.1 Cache存储系统工作原理 1. 局部性原理 计算机顺序执行程序,地址是连续的,并有很多循环和子程序调用,使得CPU访问存储器的地址集中在存储器的某一区域内;程序所用数据,如尽量采用数组方式,也有同样的效果。 结论:计算机运行时,CPU访存地址相对集中。这种对局部范围的存储器地址访问频繁的现象,称为“计算机访存的局部性原理”。 计算机存储系统中,采用Cache存储方式,就是根据局部性原理设计的,对提高计算机工作速度有明显的效果。,2019/9/19,5,3.3 高速缓冲存储系统,2. 分块(Block)使用 在Cache存储系统中 因为Cache存储器速度快,所以由Cache存储器向CPU提供程序和数据。 因为Cache存储器价格高,容量较主存容量小得多,为了能够灵活地存放主存当前运行的内容,所以Cache存储器采取了分块使用的方式。 与之相适应,主存也采取了分块使用的方式。,2019/9/19,6,3.3 高速缓冲存储系统,(1) 块长 计算机工作时,将当前运行的程序和数据分块从主存映像到Cache存储器中。 块长的设置与主存的结构有关,一般为一个主存周期所能调出的信息长度。 例:若主存结构为模8交叉存储器,每个存储体的信息宽度为1字节,则块长为8字节。 例:若主存结构为模16交叉存储器,每个存储体的信息宽度为1个字(4字节),则块长为64字节。,2019/9/19,7,3.3 高速缓冲存储系统,(2) Cache存储器分块 Cache共分为2c 块,块地址编码为c位。 Cache块长2b 个单元时,块内单元地址需要b位编码 (3) 主存分块 主存为配合Cache存储器的工作,采取了同样的分块方式,即主存的块长与Cache的块长相等。 主存共分为2m 块,块地址编码为m位。 主存块长2b 个单元,块内单元地址编码为b位。 主存容量2n ,主存的地址编码为n位,则mbn,2019/9/19,8,3.3 高速缓冲存储系统,3. Cache的基本结构(P234图7-2) 下页图,分析点: Cache和主存的块结构 Cache和主存的块之间的对应关系 块的地址 块内单元地址,2019/9/19,9,3.3 高速缓冲存储系统,2019/9/19,10,3.3 高速缓冲存储系统,4. 替换算法和替换部件(P238) 当CPU从主存中读出新内容时,主存中该内容所在字块同时被调入Cache存储器。 如果Cache存储器的空间已经被占满,就需要替换掉其中一个旧的字块。 在众多的旧字块中,选择哪一个字块进行替换,这是由Cache存储系统通过决策选定的。 替换的决策所遵循的规则称为替换算法(或替换策略),实现决策和替换的电路称为替换部件。 先进先出(FIFO)算法 近期最少用(LRU)算法 随机替换(RAND)算法,2019/9/19,11,3.3 高速缓冲存储系统,5. 数据修改(P234,P242) Cache存储系统的主要存储空间是主存,Cache存储器中存放的只是内容的副本(映像)。 程序执行过程中,如果对某个单元进行了写操作,内容是写入Cache存储器的。 将修改过的内容副本送回主存保存,保持Cache存储器与主存内容一致。 将Cache存储器内容送回主存保存的方式有以下方法: 写回法 写直达法 主存直接写,2019/9/19,12,3.3 高速缓冲存储系统,(1) 写回法 将所有修改都在Cache存储器中完成,并用标志将修改过的块进行注明。当Cache存储器中做过标注的块被从Cache存储器中替换出来的时候,将整块内容一次全部写入主存。 该方式中,是否将内容送回主存保存,取决于标志的情况,所以称为“标志交换方式”。又由于该方式中,将内容送回主存保存是在最后一次性写入主存的,所以又称为“写回法”。 优点:操作速度快。 缺点:回写之前,主存中未被修改的数据如果再被使用,就会失效。,2019/9/19,13,3.3 高速缓冲存储系统,(2) 写直达法 将每次写入Cache存储器中的内容同时写入主存,使Cache存储器与主存始终保持一致。 该方式中,因为写操作直达主存,所以称为“写直达法”。 优点:随时保持主存数据的正确性。 缺点:若一个块中有多个数据被修改,就需要多次对主存进行写操作,这将大大影响计算机的运行速度。,2019/9/19,14,3.3 高速缓冲存储系统,(3) 主存直接写 若程序写入的数据位置根本不在Cache存储器中(如某一操作数),此时的写操作将把内容直接写入主存,不需要再经过Cache存储器。,2019/9/19,15,3.3 高速缓冲存储系统,6. Cache存储系统的工作速度 (1) 命中率和失效率 命中率-是指CPU所要访问的信息在Cache中的比率 命中率的高低取决于Cache的容量和块长的设置。 失效率-CPU所要访问的信息不在Cache中的比率 (2) 命中标记(P236图7.3) 访存地址值 相联存储器 (3) Cache存储系统的平均存取时间 若Cache的存取时间为tc,命中率为h,主存的存取时间为tM ,则 平均存取时间htc(1h)(tctM ),2019/9/19,16,3.3 高速缓冲存储系统,3.3.2 Cache存储系统的组织与映像 1. Cache存储器与主存的组织关系(建立结构关系) 将主存和Cache存储器分为同样大小的块,CPU访问主存的哪一块,便由Cache存储器建立该块的副本,供CPU下次快速访问。 “由Cache存储器建立该块的副本”的过程可采用多种工作方式,称为不同的“映像方式”。 Cache存储器与主存的组织关系是建立在映像方式基础上的。不同映像方式下,组织结构不同。 下面按不同映像方式,介绍组织结构,并归纳出映像特点。,2019/9/19,17,3.3 高速缓冲存储系统,(1) 全相联方式 主存任意块的副本可以建立(映像)在Cache存储器的任意块中。 优点:Cache存储器的块可以充分利用,使用效率高,命中率高。 缺点:访存操作时,首先要检测访问对象是否存在于Cache存储器中。该检测需要将Cache存储器中所有的块都检测一遍,浪费了时间,速度低。其次,存放块标志的相联存储器(Tag Cache、标记寄存器)的位数过长(共t+c位),使得电路成本过高。 图示,2019/9/19,18,3.3 高速缓冲存储系统,(1) 全相联方式,2019/9/19,19,3.3 高速缓冲存储系统,(2) 直接相联方式 将主存按Cache存储器容量进行分区,主存各区内的同号块只能映像到Cache存储器中的同一编号的块中。 优点:访存操作时,根据访问地址,只进行一次检测既可确认是否命中,速度快。其次,存放块标志的相联存储器(Tag Cache、标记寄存器)的位数少(只有t位),降低了电路成本和复杂性。 缺点:因为规定了主存中的某些块只能映像到Cache存储器的一块中,因此产生冲突的可能性很大,命中率很低。此外还会因为频繁的替换和回写,严重的影响访存速度。 图示,2019/9/19,20,3.3 高速缓冲存储系统,(2) 直接相联方式,2019/9/19,21,3.3 高速缓冲存储系统,(3) 组相联方式 此方式是以上两种方式的结合。 首先将Cache存储器的存储空间分为若干路(区),再将主存“按Cache存储器路的容量”进行分区,主存各区内的同号块只能映像到Cache存储器各路中的同一编号的块中。即:主存各区内的同号各块可以映像到Cache存储器的若干块中,提高了映像的灵活性。 此方式中,主存各区的同号块与Cache存储器各路的同号块构成一组,并以组为单位建立相联关系,故称作组相联方式。 组内实行全相联方式,组间实行直接相联方式。,2019/9/19,22,3.3 高速缓冲存储系统,(3) 组相联方式,2019/9/19,23,3.3 高速缓冲存储系统,2. Cache存储器与主存的地址映像关系 地址映像Cache存储系统按规则将主存的地址转换成Cache存储器的地址,以实现CPU从Cache存储器访问数据。 设:Cache存储器有2c块,每个块中都有2b个单元 Cache存储器地址有cb位 主存分成同样的块,有2t+c块。 主存地址有tcb位 Cache存储系统在不同映像方式下的地址映像关系如下:,2019/9/19,24,3.3 高速缓冲存储系统,(1)全相联方式的地址映像关系图,2019/9/19,25,3.3 高速缓冲存储系统,(2)直接相联方式的地址映像关系图,2019/9/19,26,3.3 高速缓冲存储系统,(3)组相联方式的地址映像关系图,2019/9/19,27,3.3 高速缓冲存储系统,(4)各方式的地址映像的关系函数 图中的地址映像关系也可以用函数关系式进行表示,以此确定主存中的某号块映像到Cache存储器后,所在位置的块号。该函数关系称为映像函数。 设:主存中的第i号块映像到Cache存储器后位于第j号块。 则:关系函数如下,2019/9/19,28,3.3 高速缓冲存储系统,2019/9/19,29,3.3 高速缓冲存储系统,3. Cache存储器与主存的映像和工作过程 Cache存储系统的工作过程:从CPU发送访存地址开始,分为命中和未命中两种情况。 工作过程由Cache控制器控制完成。 在Cache存储系统的不同组织与映像方式下,它们的映像和工作过程是不同的。 1) 全相联方式的映像过程 2) 直接相联方式的映像过程 3) 组相联方式的映像过程,2019/9/19,30,3.3 高速缓冲存储系统,2019/9/19,31,3.3 高速缓冲存储系统,2019/9/19,32,3.3 高速缓冲存储系统,2019/9/19,33,3.3 高速缓冲存储系统,例:设有一简化Cache存储系统,采取直接相联方式映像,按4个32位的字分块,主存有8块,Cache存储器有4块。问: (1)主存的7号块映像到Cache存储器的哪一字块中? (2)CPU读主存地址1001001单元中的内容时,可在Cache存储器的什么地址中找到其信息?,2019/9/19,34,3.3 高速缓冲存储系统,2019/9/19,35,3.3 高速缓冲存储系统,2019/9/19,36,3.3 高速缓冲存储系统,例:,2019/9/19,37,3.3 高速缓冲存储系统,例:设有一简化Cache存储系统,采取组相联方式映像,Cache共有8个块,分为2个组。某次工作时,CPU访存读操作的块地址序列为 10110,11010,11011,10000 问:若Cache存储器原始为空,每次CPU访存后,Cache中的内容是如何变化的? 解:(下页),2019/9/19,38,3.3 高速缓冲存储系统,例:续,法1-系统映像图分析法,2019/9/19,39,3.3 高速缓冲存储系统,例:续,法2-系统映像函数分析法,2019/9/19,40,3.3 高速缓冲存储系统,例:续,法3-系统映像关系表分析法,2019/9/19,41,3.3 高速缓冲存储系统,思考题:主存贮器和CPU之间增加cache的目的是_.A A 解决CPU和主存之间的速度匹配问题 B 扩大主存贮器容量 C 扩大CPU中通用寄存器的数量 D 既扩大主存贮器容量,又扩大CPU中通用寄存器的数量 思考题:以知cache 命中率 H=0.98,主存比cache 慢四倍,以知主存存取周期为200ns,求cache/主存的效率和平均访问时间。 解:R=TmTc=4;Tc=Tm4=50 ns E=1R+(1-R)H=14+(1-4)0.98=0.94 Ta=TcE=Tc4-30.98 =501.06 =53 ns。,2019/9/19,42,3.3 高速缓冲存储系统,思考题:已知cache / 主存系统效率为85% ,平均访问时间为60ns,cache 比主存快4倍,求主存储器周期是多少?cache命中率是多少? 解:ta = tce tc = tae =600.85 =510ns(cache存取周期) tm = tcr =5104 =204ns(主存存取周期) e = 1 r(1r )H H = 2.42.55 = 0.94,2019/9/19,43,3.3 高速缓冲存储系统,思考题:CPU执行一段程序时,cache完成存取的次数为5000次,主存完成存取的次数为200次。已知cache存取周期为40ns,主存存取周期为160ns。求: 1Cache 命中率H, 2Cache/主存系统的访问效率e, 3平均访问时间Ta。 解: 命中率 HNc(Nc+Nm)5000(5000+2000)500052000.96 主存慢于cache的倍率 RTmTc160ns40ns4 访问效率: 1 r(1r)H 4(14)0.9689.3 平均访问时间 TaTce400.89345ns,2019/9/19,44,3.3 高速缓冲存储系统,3.3.3 Cache存储系统结构 1. Cache存储器的控制器(P238) 1) 构建Cache系统 Cache存储体是由SRAM构成的,它与主存构成Cache存储系统。 该系统需配备控制电路,选择一个映像方式,建立主存与Cache的组织关系。 系统工作完成数据的存取,替换,回写等一系列操作。 2) 典型控制电路Intel82385-Cache控制器,2019/9/19,45,3.3 高速缓冲存储系统,(1)Intel82385-Cache控制器的设置规定 Intel82385-Cache控制器是为80386微处理器配备的一款高性能控制器,其功能和设置的规定主要有以下几项。 映像方式 CPU寻址范围 Cache存储体设计 Cache空间 主存空间 相联存储器(Tag Cache),2019/9/19,46,3.3 高速缓冲存储系统,a. 映像方式 82385-Cache控制器可以提供两种映像方式,即直接相联方式和2路组相联方式。 b. Cache存储器结构设置 82385-Cache控制器是针对80386CPU设计的 80386CPU使用32位数据总线(DB=字长=4B) Cache存储体使用SRAM 根据CPU和SRAM的工作速度比,设计Cache为8体交叉存储器,且数据通道为32位(1字) 82385规定,设置Cache块长(或称组,称行)为8个字(32字节) 82385-Cache控制器映像传输单元的是字长(4B),基本单位是块(32B),2019/9/19,47,3.3 高速缓冲存储系统,c. Cache空间 82385-Cache控制器允许Cache存储体空间为1024个块(210),即32KB215B,Cache存储器地址用15位(A14A0)编码。 d. 主存空间 82385-Cache控制器允许主存空间,与80386CPU的一致,为4GB,主存地址用32位(A31A0)编码。 主存空间4GB1G字(230)227块 e. 相联存储器(Tag Cache) 82385-Cache控制器中提供了1024个(每块1个)26位的相联存储器(Tag Cache,标记寄存器)。这1024个Tag也被称为Cache目录表。,2019/9/19,48,3.3 高速缓冲存储系统,(2) 82385-Cache控制器的直接相联方式 主要掌握:存储体分块与Cache块标记的设置 在直接相联方式下,主存(227个块)按Cache空间(1024个块)可以分为217个区(或称页)。控制器提供的26位相联存储器中,17位作块标记,1位作块命中标记,8位作字选中标记。 在块标记中存放的是区地址(页号),相当于主存地址的t位(t17),是来自地址线的高17位(A31A15)。主存地址的c位(A14A5共10位)经译码器译码,选中某块的Tag ,电路会将17位的块标记送比较器进行比较。,2019/9/19,49,3.3 高速缓冲存储系统,经比较器判断命中时,将Tag中1位的块命中标记置1,并以此选中该Tag所连接的Cache存储体块。 主存地址的b位(A4A2共3位)经3:8译码器译码,输出字选择信号,该信号将Tag中的8位字选中标记中的对应位置1(行有效),该标记负责向选中单元发出字选信号。 经比较器判断未命中时,CPU将直接访问主存取得数据,并将其装入Cache存储器。同时,Cache控制器则用上述主存地址的高17位修改块标记。,2019/9/19,50,3.3 高速缓冲存储系统,(3) 82385-Cache控制器的2路组相联方式(P240) 主要掌握:在2路组相联方式下,与直接相联方式下的情况有何不同。 Cache存储体分为2路,构成2体交叉存储器 26位的Tag Cache中,有18位存放块标记。 进行替换时,可在2路中进行选择,具备了替换选择余地。 替换时采用最近最少使用策略,即LRU算法,并为此启用了一个附加位,用来专门存放最近使用情况标记。,2019/9/19,51,3.3 高速缓冲存储系统,2. Cache存储器的多层次结构 因为技术条件的限制,也为Cache存储系统的工作性能和灵活性,Cache存储器在设置和使用时,分出了不同层次。 指令Cache与数据Cache 二级Cache结构 1) 指令Cache与数据Cache Cache存储器可以按使用对象进行设置,分出指令Cache与数据Cache两个层次。,2019/9/19,52,3.3 高速缓冲存储系统,(1) 本身的特点 结构:指令Cache只读不写,控制方法和电路简单;数据Cache有读有写,控制方法和电路相对比较复杂。 通道:Pentium微处理器芯片内设计有Cache存储器,分别构成8KB指令Cache和8KB数据Cache。其中的数据Cache采用了双端口结构,每个端口传输32位数据,可以实现分别与两个ALU交换数据,也可组合实现64位数据的传输,比如传送双精度浮点数。 修改:数据Cache在进行内容修改时,采用的是“写回法”的策略,即程序对数据的修改只在Cache中进行,只有当被修改的数据块被从Cache存储器中替换出来的时候,将整块内容一次全部写回主存。,2019/9/19,53,3.3 高速缓冲存储系统,控制:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论