精讲cache高速缓存处理器

精讲cache高速缓存处理器

ID:44136421

大小:735.50 KB

页数:21页

时间:2019-10-19

精讲cache高速缓存处理器_第1页
精讲cache高速缓存处理器_第2页
精讲cache高速缓存处理器_第3页
精讲cache高速缓存处理器_第4页
精讲cache高速缓存处理器_第5页
资源描述:

《精讲cache高速缓存处理器》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、2007.7.2计算机组成原理14.4高速缓冲存储器Cache4.4.1Cache基本原理1.设置Cache的必要性计算机有两个核心器件,一个内存,另外一个则是CPU。二者是否能较好配合,将直接影响计算机性能。早期的CPU跟内存的速度相差不多,但是随着计算机硬件技术的发展,CPU的速度提高的比内存快,现在内存和CPU的读写速度相差2~3个数量级。如果仅仅依靠内存给CPU传输数据,那么CPU可能会长时间等待,降低资源利用率。所以,必须对二者速度进行匹配。2007.7.2计算机组成原理2匹配内存和CPU的速度有以下三个方法:(1)降低CPU速度;(2)采用高速

2、的SRAM作为内存的存储器;(3)根据程序执行的局部性原理,在二者之间设置一定的缓冲器。显然,第一个方法降低了计算机性能,不可能采用;第二个方法需要用价格昂贵的SRAM来制作容量高达几百兆的内存,成本过高。因此第三个方法则呈了现代计算机的首选方法。2007.7.2计算机组成原理3实际的计算机系统中,常常在CPU和内存间设置一个容量不大(常常为几十至几百K)但是速度跟CPU速度相同的Cache作为缓冲器,把正在执行的指令代码单元附近的一部分指令代码或数据存入Cache中,CPU需要数据时,直接从Cache中读取,这种方法解决了速度不匹配的问题,又不会大幅度增

3、加成本。2007.7.2计算机组成原理42.基本原理Cache又叫高速缓存,是高速缓冲存储器(CacheMemory)的简称。作为一种存储器,Cache有一定的存储空间,但Cache的主要作用不是进行数据存储,所以其存储空间较小。根据Cache所处位置的不同,可以将Cache分为一级Cache和二级Cache。与CPU集成在同一块芯片中的是一级Cache(简称L1Cache),其容量常常为几十KB~几百KB;不与CPU集成在同一块芯片中的是二级Cache(简称L2Cache),其容量常常为几百KB~2MB。目前市场上比较高档的CPU常常配有512KB、1M

4、B或者2MB的Cache。配置了Cache的CPU和内存之间的存储结构如图4-13所示。2007.7.2计算机组成原理52007.7.2计算机组成原理6在Cache控制器的作用下,CPU首先访问Cache,如其需要的数据在Cache中,则直接访问Cache即可,否则再访问内存。如果设置了L2Cache,则系统将按照L1Cache、L2Cache、内存的顺序访问。值得注意的是:Cache不能被用户直接访问,用户不能使用Cache地址进行编程。2007.7.2计算机组成原理7Cache一般由SRAM、TRAM和控制器组成。其中,SRAM提供存储空间,它的容量即

5、为Cache的容量;TRAM保存Cache中的数据在主存中的地址;控制器则是实现比较和控制Cache的读写操作等功能。当CPU需要内存中某一地址的数据时,控制器首先将该地址信号与TRAM中的地址进行比较,如果找到相同的地址,说明内存中的数据在Cache中,则CPU直接访问Cache,否则CPU将访问内存。当CPU所需要的数据没有在Cache中时,控制器还要完成对Cache的修改,将内存中的数据读取到Cache中,以保证Cache命中率尽可能高,提高数据访问速度。2007.7.2计算机组成原理84.4.2地址映像Cache作为CPU和内存间的缓冲存储器,理想

6、情况下,应该保证CPU每次需要访问的数据都在Cache中。但是,用户程序却是按照内存地址编写的,Cache所做的工作是在CPU访问内存前,根据程序执行的局部性原理,先将内存中的数据读出,当CPU需要时再提供给它。所以,“Cache所保存的数据到底是内存中的哪些数据,地址是什么?”就成了关键性问题。这一问题实际上也是Cache的存储空间与内存之间的地址映像问题。2007.7.2计算机组成原理9常用的地址映像方式有三种:全相联映像、直接映像和组相联映像。1.全相联映像所谓全相联映像是指将内存和Cache按找固定的相同的大小进行分块。内存的块和Cache的块可以

7、任意对应,即内存的任何一块都可以映像到Cache的任何一块,在Cache的存储空间被占满的情况下,也允许确实已被占满的Cache存储器中替换出任何一个旧块。2007.7.2计算机组成原理10这种映像方式的优点是映像过程灵活,块冲突率低,只有在Cache中的块全部装满后才会出现冲突,Cache利用率高。缺点是块表查找的速度慢,由于Cache的速度要求高,全部比较和替换策略都要用硬件实现,控制复杂,实现起来也比较困难,成本高。全相联映像方式下内存与Cache对应的对应关系如图4-14所示:2007.7.2计算机组成原理112007.7.2计算机组成原理122.

8、直接映像跟全相联映像一样,直接映像先将Cache分成若干块,每个块

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。