高速缓冲存储器.ppt
《高速缓冲存储器.ppt》由会员分享,可在线阅读,更多相关《高速缓冲存储器.ppt(55页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、3 高速缓冲存储器(Cache)n工作原理和基本结构 n地址映象与变换 nCache存储器的LRU替换算法的硬件实现 nCache存储器的透明性及性能分析 为什么要使用Cache?n用以弥补主存速度的不足。nCPU速度与主存速度相差很大(例如,一般的DRAM的工作速度比CPU慢100倍以上。nCache工作速度很高,可以将其集成到CPU内。高性能CPU通常用两级Cache,一级在CPU内,其容量比较小,速度很快,第二级在主板上,容量比较大,速度比第一级低5倍左右。nCache全部用硬件调度对所有程序员都是透明的。nCache与主存储器之间以块为单位进行数据交换。块的大小通常以在主存储器的一个存
2、储周期内可以访问到的数据长度为限。存储系统两级存储器速度比Cache虚拟存储器要达到的目标提高速度扩大容量实现方法全部硬件软件为主硬件为辅310倍105倍页(块)大小116字1KB16KB等效存储容量主存储器虚拟存储器透明性对系统和应用程序员仅对应用程序员不命中时处理方式 等待主存储器任务切换Cache存储系统与虚拟存储系统比较块号块内地址主存-Cache地址映象变换机构块号块内地址Cache主存Cache替换策略来自处理机主存地址Cache地址访主存替换Cache访主存装入Cache去处理机直接通路单字宽多字宽单字宽已装不进还可装入不命中命中高速缓冲存储器Cache基本结构 n把主存和Cac
3、he机械等分成相同大小的块(行),块比页小得多;n访问Cache的时间时访问主存时间的1/4到1/10;nCache和CPU是同类型的半导体器件;nCache-主存间的地址映像和变换,以及替换、调度算法用硬件实现,对应用程序员透明,也对系统程序员透明;基本结构(续)nCache在物理位置上靠近CPU,不在主存,减少传输延迟;n除Cache到处理机的通路外,还设有主存到处理机的通路,因此,Cache既是Cache-主存存储层次中的一级,又是处理机和主存的一个旁视存储器;n有Cache的主存系统都采用多体交叉存储器;n应尽量提高Cache的访主存的优先级;地址映象与变换 n地址映象:是将每个主存块
4、按某种规则(算法)装入(定位于)Cache,并建立主存地址与Cache地址之间的对应关系。n地址变换:是主存块按照这种映象关系装入Cache后,每次访Cache,如何将主存地址变换成Cache地址。n在选取地址映象方法要考虑的主要因素:n地址变换的硬件容易实现;n地址变换的速度要快;n主存空间利用率要高;n发生块冲突的概率要小四种方式n全相联映象与变换 n直接映象与变换 n组相联映像与变换 n段相联映象 全相联映象与变换n定义及规则n映象规则:主存中的任意一块都可以映象到Cache中的任意一块。n如果Cache的块数为Cb,主存的块数为Mb,映象关系共有:CbMb种。n用硬件实现非常复杂n在虚
5、拟存储器中,全部用软件实现n相联目录表法n变换过程,如下图。n特点:n冲突概率低n空间利用率高n地址变换复杂块0Cache块1块Cb-1块0块1块i块Mb-1主存储器全相联映象方式有效位块号B块内地址主存地址目录表(由相联存储器组成,共Cb个字)主存块号BB块号b块内地址wCache块号bb相联比较命中Cache地址直接映象与变换n定义及规则n映象规则:主存中一块只能映象到Cache的一个特定的块中。n计算公式:bB mod Cb,其中:b为Cache的块号,B是主存的块号,Cb是Cache的块数。n整个Cache地址与主存地址的低位部分完全相同。n变换过程,如下图。n特点:n硬件简单n冲突概
6、率高n出现大量空闲块n很少使用。块0Cache块1块Cb-1块0块Cb-1主存储器直接相联映象方式块Cb块2Cb-1块Mb-Cb块Mb-1区0区1区Me-1n地址变换过程n用主存地址中的块号B去访问区号存储器n把读出来的区号与主存地址中的区号E进行比较n比较结果相等,且有效位为1,则Cache命中n比较结果相等,有效位为0,表示Cache中的这一块已经作废n比较结果不相等,有效位为0,表示Cache中的这一块是空的n比较结果不相等,有效位为1,表示原来在Cache中的这一块是有用的有效位区号E块内地址w1主存地址区表存储器区号E(按地址访问)E块号b块内地址w命中Cache地址块号B相等比较块
7、失效比较相等且有效位为1,访问Cachen提高Cache速度的一种方法:n把区号存储器与Cache合并成一个存储器n直接映象方法的主要优点:n硬件实现很简单,不需要相联访问存储器访问速度也比较快,实际上不做地址变换n直接映象方式的主要缺点:n块的冲突率较高有效位区号E块内地址w1按地址访问的Cache区号E块号b块内地址w相等块号B相等比较访主存数据0D0数据1D1数据w-1Dw-11/w送CPU组相联映像与变换n定义及规则:各组之间是直接映象,组内各块间是全相联映象。n变换过程,如下图。n讨论:nS=nv时,全相联映像;nS=0时,直接映像;n当主存空间和Cache空间确定时,q+s已确定;
8、ns值大,组内页数多,冲突概率小,变换复杂;ns值小,组内页数少,冲突概率大,变换简单;组内块号s区号nd块内地址W主存地址块表nd区号,组内块号s相联比较(s个块)块内地址w相等Cache地址组内块号s相联比较不等组号q组内块号s组号qn组相联映象方式的优点:n块的冲突概率比较低n块的利用率大幅度提高n块失效率明显降低n组相联映象方式的缺点:实现难度和造价要比直接映象方式高n地址变换过程:用主存地址的组号G按地址访问块表存储器n把读出来的一组区号和块号与主存地址中的区号和块号进行相联比较如果有相等的,表示Cache命中如果没有相等的,表示Cache没有命中段相联映象 n减少相联目录表的容量,
9、降低成本,提高地址变换速度。n组间全相联,组内直接映象。替换算法的实现n常采用LRU算法,LRU算法是堆栈型算法n由于Cache的调块时间是微秒级,不能采用程序换道n替换算法全部采用硬件途径实现堆栈法(块号)(块号)(块号)(块号)(块号)近期最近访问过的块号近期最久没有访问的块号需重新排序的块号都下推一行被访问的块号(经相联比较找到)比较对法n让各个块成对组合,用一个触发器的状态表示该比较对内两块访问的远近次序,再经门电路就可找到LRU块。n适用于组内块数较少的组相联映像Cache。&TABTACTBC访问B访问C访问A000111替换算法的设计要考虑的问题n如何对每次访问进行纪录(适用位法
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高速 缓冲存储器
限制150内