计算机组成原理——主存与cache的映射关系

全相联映像:

特点:指主存的一个字块可以映像到整个Cache的任何一个字块中。这种映射方法比较灵活,cache的利用率高,但地址转换速度慢,且需要采用某种置换算法将cache中的内容调入调出,实现起来系统开销大。

直接相联映像:

特点:指主存的一个字块只能映像到Cache的一个准确确定的字块中,主存的字块只可以和固定的Cache字块对应,方式直接,利用率低。成本低,命中率低,效率较低。

组相联映像:

对全相联和直接映像的一种折中的处理方案。既不在主存和Cache之间实现字块的完全随意对应,也不在主存和Cache之间实现字块的多对一的硬性对应,而是实现一种有限度的随意对应。

特点:折中方案。组间全相联,组内直接映像。集中了两个方式的优点。成本也不太高。最常见的Cache映像方式。

总结:

三种映射规则可以简单认为是对取模运算和取商运算的组合;

假设:内存=30块,cache=5块,1块=10个字,所以内存=300个字,cache=50个字;内存包含的字数为memsize,块包含的字数为blocksize,cache包含的字数为cachesize,每个区包含的块数为regionblocknum,每个组包含的块数为groupblocknum,区内块号(区内偏移量)为regionblockoffset;

直接映射:memsize MOD blocksize获得的是字在块内的偏移量,memsize / blocksize获得的是块的标号作为标记。

全相联映射:regionblocknum取cache中的块的数量,所以cahce总是与内存中的一个区大小相同。(memsize / blocksize)获得所有的块数,然后再对块进行分区,分区操作是(memsize / blocksize)/regionblocknum获得所有的区数,

(memsize / blocksize)MOD
 regionblocknum获得区内块号(区内偏移量)。区内偏移量做索引,区号做标记。

组相联映射:regionblockoffset=(memsize / blocksize)MOD
 regionblocknum,regionblockoffset
/ groupblocknum获得组内偏移量,regionblockoffset
MOD  groupblocknum获得组号。

计算机组成原理——主存与cache的映射关系,布布扣,bubuko.com

时间: 2024-08-03 20:02:20

计算机组成原理——主存与cache的映射关系的相关文章

计算机组成原理_第四版课后习题答案(完整版)

计算机组成原理_第四版课后习题答案(完整版) ?第一章 1.?比较数字计算机和模拟计算机的特点. 解:模拟计算机的特点:数值由连续量来表示,运算过程是连续的: 数字计算机的特点:数值由数字量(离散量)来表示,运算按位进行. 两者主要区别见P1?表1.1. 2.?数字计算机如何分类?分类的依据是什么? 解:分类: 数字计算机分为专用计算机和通用计算机.通用计算机又分为巨型机.大型机. 中型机.小型机.微型机和单片机六类. 分类依据:专用和通用是根据计算机的效率.速度.价格.运行的经济性和适应性来划

计算机组成原理——部分速成总结存档

这篇用来存档 基本并不能帮助大家速成 只是博主突击时用来巩固时用的(假装大家都看不见) 教材:<计算机组成原理>唐朔飞版 内容:第四章到第八章不完全总结 chapter 4 存储器 存储器的层次结构:缓存-主存 提高速度 主存地址 实地址 物理地址                              主存-辅存 提高容量 虚拟存储器 虚地址 逻辑地址   2^地址线 * 数据线 =存储容量 半导体存储器芯片的译码驱动方式:线选法 重合法 动态RAM刷新: 1.       集中刷新 在规

主存与Cache的地址映射

最近在复习计算机体系结构,选用的教材是名闻遐迩的<计算机体系结构 量化研究方法 第五版>(Computer Architecture A Quantitative Approach), 关于cache部分,书中着重讲的是如何优化cache,提高cache性能,提出了10种优化策略,但是关于cache与内存(一般称主存)之间的读写过程,cache与主存的地址映射书中讲的比较少,所以本文参考了coursera上 北京大学陆俊林的< 计算机组成>以及上海交通大学邓倩妮老师的<计算机

计算机组成原理基本概念汇总

计算机组成原理是计算机科目中偏向于硬件的,我真的没学好,唯一做的好的笔记还是比较完整的.哈哈.这门课真的是博大精深.现在把组成原理的基本知识点与大家分享,希望大家在这门课的学习中少走弯路. 计算机系统概论 把以软件为主实现的机器称为虚拟机器:把由硬件和固件实现的机器称为实际机器. 高级语言的翻译程序有编译程序和解释程序两种. 计算机系统的层次结构从低到高: (1)微程序机器(第0级). (2)传统机器(第1级). (3)操作系统机器(第2级). (4)汇编语言机器(第3级). (5)高级语言机器

计算机组成原理复习提纲

一.本课程学习要求: 了解数据信息的表示.运算方法与各类半导体存储器.辅助存储器.打印设备与显示装置设备:掌握计算机组成与系统结构的基本概念.基本原理.基本算法.基本结构和分析方法:掌握运算器.控制器.存储器的构成与原理:掌握指令流程.组合逻辑控制.微程序控制等内容:能对计算机的工作原理有清楚的认识并能够分析计算机的性能. 二.先行课程.:计算机导论  数字电路 第一章 计算机系统概论(1) 第二章   计算机的逻辑部件(补充) 第三章   计算机的运算方法(重点)(2) 第四章   系统总线(

计算机组成原理-第二版-唐朔飞著-课后习题详解

第1章 计算机系统概论 1. 什么是计算机系统.计算机硬件和计算机软件?硬件和软件哪个更重要?解:P3计算机系统:由计算机硬件系统和软件系统组成的综合体.计算机硬件:指计算机中的电子线路和物理装置.计算机软件:计算机运行所需的程序及相关资料.硬件和软件在计算机系统中相互依存,缺一不可,因此同样重要. 2. 如何理解计算机的层次结构?答:计算机硬件.系统软件和应用软件构成了计算机系统的三个层次结构.(1)硬件系统是最内层的,它是整个计算机系统的基础和核心.(2)系统软件在硬件之外,为用户提供一个基

计算机组成原理和体系结构—自查

计算机组成原理与体系结构 内容提要 数据的表示 计算机结构 Flynn分类法 CISC与RISC 流水线技术 存储系统 总线系统 可靠性 校验码 数据的表示 数据的表示 R进制转十进制使用按权展开法,其具体操作方式为:将R进制数的每一位数值用Rk形式表示,即幂的底数是R ,指数为k , k与该位和小数点之间的距离有关.当该位位于小数点左边, k值是该位和小数点之间数码的个数,而当该位位于小数点右边, k值是负值,其绝对值是该位和小数点之间数码的个数加1. 十进制转R进制使用短除法. 例如将94转

【计算机组成原理】总结

计算机的组成 运算器:用来完成算术运算和逻辑运算,并将中间结果暂存在运算内. 存储器:用来放数据和程序. 控制器:用来控制.指挥程序和数据的输入.运行以及处理运算结果. 输入设备:用来将人们熟悉的信息形式转换为机器能识别的信息形式. 常见的键盘.鼠标等. 输出设备:用来将机器运算的结果转换为人们熟悉的信息形式. 如打印机输出.显示器输出等. 计算机的结构 冯·诺依曼结构:指令和数据存放在同一个存储器 计算机由运算器.存储器.控制器.输入设备和输出设备五大部件组成. 指令和数据以同等地位存放于存储

《计算机组成原理》知识点复习

                                                                             <计算机组成原理>知识点复习 <一>计算题 1. [x]原=0.11001110           [-x]原=(1.11001110) [-x]反=(1.00110001)      [-x]补=(1.00110010) 2. x=-0.1011=11011,x补=10101 y=-0.0101=10101,y补=11011,