首页 > 其他分享 >计算机系统结构之Cache

计算机系统结构之Cache

时间:2024-06-01 19:33:15浏览次数:13  
标签:计算机系统 主存 Cache 映像 访问 地址 相联 结构

一、全相联映像和变换

全相联映像的主存-Cache地址变换过程如图:

给出主存地址Nm访存时,将其主存块号Nmb与目录表(硬件)中所有各项的Mmb字段同时相联比较。若有相同的,就将对应行的Cache块号Ncb取出,拼接上块内地址Nmr形成Cache地址Nc,访Cache;若没有相同的,表示该主存块未装入Cache,发生Cache块失效,由硬件调块。

优点:块冲突概率最低,只有当Cache全部装满才可能出现块冲突,所以,Cache的空间利用率最高。缺点:构成容量为2^Ncb项的相联存储器,其代价太大,而且Cache容量很大时,其查表速度很难提高。

全相联地址变换:

二、直接映像及其变换

把主存空间按Cache大小等分成区,每区内的各块只能按位置一一对应到Cache的相应块位置上(主存第i块只能唯一映像到第imod2^Ncb块位置上)

直接映像的主存-Cache地址变换过程如下:

处理机给出主存地址Nm访主存时,截取与Nc对应的部分作为Cache地址访Cache,同时取Ncb部分作为地址访问区号标志表存储器,读出原来所存的区号标志与主存地址对应的区号部分比较。如果比较相等,表示Cache命中,让Cache的访问继续进行,并中止访主存;如果比较不等,表示Cache块失效,此时让Cache的访问中止,而让主存的访问继续进行,并由硬件自动将主存中该块调入Cache。

优点:节省硬件,只需容量较小的按地址访问的区号标志表存储器和少量外比较电路,成本很低。访问Cache与访问区号表、比较区号是否相符的操作是同时进行的,当Cache命中时意味着省去了地址变换的时间。缺点:Cache的块冲突概率很高。只要有两个或两个以上经常使用的块恰好被映像到Cache的同一块位置时,就会使Cache命中率急剧下降。Cache的空间利用率很低。

三、组相联映像及其变换

组相联映像指的是各组之间是直接映像,而组内各块之间是全相联映像。

Nd、q是1位,s是2位,主存的第0组只能进入Cache的0组,第1组只能进入Cache的1组。组内的各个快,如主存的0-3及8-11块可进入Cache的第0-3块中的任意一块,但不能进入Cache的4-7块。

当组相联映像的S值大到等于Cache的块数时,就成了全相联映像;当S值小到只有1块时,就变成了直接映像。

地址变换如下:

根据组号决定主存块号分到Cache哪组:Nm的q和Nc的q相等,主存块分为一组。

(1)如Cache4块分2组(主存8块):

4(100)、1(001)、3(011)、6(111)分组:4、1一组,3、6一组

(2)如Cache4块分2组(主存16块):

4(100)、1(001)、3(011)、6(111)分组:4、1一组,3、6一组

q(中间一位)用来index,Nd和s'用来match

为啥不用左边一位和右边以为index?

由上图可知(左边一位和右边一位冲突概率大)。

组内块号(路):主存的组内块号不参与计算

例1:Cache一主存存储层次中,主存有0-7共8块,Cache为4块,采用组相联映像,分2组。假设Cache已先后访问预取进了主存的第4、1、3、6块,现访存块地址流又为1、2、4、1、3、7、0、2、5、6时,请完成:

(1)画出LRU替换算法,Cache内各块的实际替换过程图,并标出命中时刻。

(2)求出在此期间的Cache命中率。

例2:有一个Cache存储器,主存有0-7共8块,Cache有4块,采用组相联映像,分2组。假设Cache已先后访问并预取进了主存的第5、1、3、7块,现访存块地址流又为1、2、4、1、3、7、0、1、2、5、4、6时:

(1)画出用LRU替换算法时,Cache内各块的实际替换过程图,并标出命中时刻。

(2)求出在此期间的Cache命中率。

例3:有一个由Cache和主存组成的两级存储系统,主存容量为100M,访问时间为200ns,主存每MB的价格为1元,Cache的容量为4MB,访问时间为10ns,Cache的每MB的价格为50元,该系统运行某程序,在一段时间内,访问Cache次数为1980次,访问主存的次数为20次

(1)计算该存储系统每MB的平均价格

(2)计算系统运行该程序时Cache命中率

(3)计算该存储系统的平均访问时间

(4)计算该存储系统的访问效率

例4:有一个采用组相联映像的Cache系统中,主存由0-15共16块组成,Cache分2组,每组2块,每块大小为16个存储字。在某个程序执行时,访存的主存块地址流为:6、2、4、1、4、6、6、3、0、4、5、7、3。

(1)写出主存块地址和Cache块地址的格式,并指出各字段的长度

(2)采用LRU替换算法时,画出Cache内各块实际替换过程图,并计算Cache命中率

标签:计算机系统,主存,Cache,映像,访问,地址,相联,结构
From: https://blog.csdn.net/Yangerlei/article/details/139377519

相关文章

  • Redis笔记——底层数据结构之压缩列表
    是什么?        本质上就是紧凑的列表。        压缩列表在Redis中有两种编码方式,分别是ZIPLIST与LISTTPACK。LISTPACK从Redis5.0引入,直至Redis7.0完全替换了ZIPLIST,可以看作是ZIPLIST的进阶版。有什么作用?        在List文章中,提......
  • 深入解析力扣170题:两数之和 III - 数据结构设计(哈希表与双指针法详解及模拟面试问答)
    在本篇文章中,我们将详细解读力扣第170题“两数之和III-数据结构设计”。通过学习本篇文章,读者将掌握如何设计一个数据结构来支持两种操作,并了解相关的复杂度分析和模拟面试问答。每种方法都将配以详细的解释和ASCII图解,以便于理解。问题描述力扣第170题“两数之和III......
  • 二叉树链式结构的前序、中序、后序、层序遍历
    文章目录一、二叉树创建二、前序遍历概念以及解释代码三、中序遍历概念及解释代码四、后序遍历概念及解释代码五、层序遍历概念及解释代码一、二叉树创建&mesp; 实现二叉树的遍历,我们要先手搓出一个二叉树,在次基础上实现二叉树的前序、中序、后序、层序遍历。......
  • 数据结构复习笔记4:队列,双端队列,循环队列
    1.队列概念和特点        队列是⼀种特殊的线性表,特殊之处就在于它只允许在表的前端进⾏删除操作,在表的后端进⾏插⼊操作。和栈⼀样,队列也是⼀种操作受到限制的线性表。进⾏插⼊操作的端称之为队尾,进⾏删除操作的端称之为队头。队列中没有队列的时候,称之为空队列。......
  • 【软件工程】结构化分析与设计——数据流图、SC图、流程图、N-S图
    目录一、数据流图(DFD图)和软件结构图(SC图)1、银行信用卡管理系统——DFD图2、航班信息查询系统——事务型SC图3、成绩管理系统——DFD图、变换型SC图二、流程图和N-S图1、程序N-S图2、判断三角形类型——流程图、N-S图一、数据流图(DFD图)和软件结构图(SC图)1、银行信用......
  • 4.HttpClient,微信小程序,SpringCache
    HttpClient,微信小程序,SpringCacheHttpClient:简介:HttpClient是ApacheJakartaCommon下的子项目,可以用来提供高效的、最新的、功能丰富的支持HTTP协议的客户端编程工具包,并且它支持HTTP协议最新的版本和建议;导入:在maven项目中的pom.xml文件直接导入<dependency> <group......
  • 文件的逻辑结构
    目录参考操作系统之文件管理:2、文件的逻辑结构(有结构文件、无结构文件、顺序文件、索引文件、索引顺序文件)......
  • 1940java swing零售库存管理系统myeclipse开发Mysql数据库CS结构java编程
    一、源码特点   javaswing零售库存管理系统是一套完善的窗体设计系统,对理解SWINGjava编程开发语言有帮助,系统具有完整的源代码和数据库,,系统主要采用C/S模式开发。应用技术:java+mysql开发工具:Myeclipse8.5、jdk。java零售商品库存管理系统二、功能介绍零售库......
  • 1882java密室逃脱管理系统 Myeclipse开发mysql数据库web结构java编程计算机网页项目
    一、源码特点java密室逃脱管理系统是一套完善的web设计系统,对理解JSPjava编程开发语言有帮助采用了java设计,系统具有完整的源代码和数据库,系统采用web模式,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql,使用java语言开发。二、功能介绍(1)......
  • RocketMQ Broker存储结构
    Broker------consumeQueue:消费队列------topic:topic------0------000000000000000000000------1------000000000000000000000------config:一个目录,保持了当前broker中全部的topic、订阅关系和消息进度。这些数据broker会定时从......