全相联映射、直接映射、组相连映射

2023-11-18

1、主存中的块放到cache(高速缓冲存储器)中哪个位置?

全相联映射:主存中的块在cache中随意放(就是想放cache中的哪一行就放哪一行)

直接映射:主存块号%cache有多少行,通过这样计算出来的结果,就是主存块在cache中存放的位置。

组相连映射:主存块号%cache中有多少组,通过这样计算出来的结果,就是主存块在cache中存放的组,至于在组中可以随意放。

2、标记位、有效位、命中是什么?

2.1 标记位

标记位=主存块号,当主存块中的东西放到cache中后,会将相应的主存块号设置为标记位。这样做的话,下次CPU要访问这个位置的主存时,就不用直接去访问主存了,只要在cache中就可以找到。

比如:CPU要访问主存中地址A,首先会去看看cache中有没有A,由于这里A地址放到了cache中,那么就直接找cache就行,就不用专门跑去主存中了。
而这期间具体是这样子的,CPU先找到cache中的标记位,找到标记位后,也就是找到了相应的cache行,再通过块内地址在相应的cache行中找到相应的位置。
(主存地址A = 主存块号+块内地址)

2.2 有效位

cache中没有放东西的行会默认置0,这时候可能就会出现很多个0的情况,而且如果主存块号0放入cache中还会与之混淆,所以就引入了有效位这个概念。在放入后,有效位就设置为1,没有放入就设置为0,这样就算放入的是主存块号0,也不会混淆了。

2.3 命中

命中是什么意思呢?我个人理解是:CPU在cache中找到了它想要在主存中找到的东西。如果在cache中没有找到,就是未命中。未命中的话,CPU就需要去访问主存,虽然这样会慢一点,但是没办法,毕竟cache中没有,就只能去主存找了。

3、全相联映射

请添加图片描述

这是王道考研中的一个截图,感兴趣的可以看看王道的讲解。
链接: https://pan.baidu.com/s/1dkDtZxbSP0OHvJDaoKR5rg 提取码: ngc1

这里需要注意:1MB = 210 KB = 220 B
所以256MB = 228 B
又因为每行长64B = 26B
所以cache的块内地址为26
因为cache块的大小是和主存块的大小是相等的,也就是cache和主存的每一行大小相等,所以主存的块内地址是6位

228/26 = 222

所以主存块号为22位

4、直接映射

请添加图片描述
直接映射有一个很大的缺点就是,只能放在固定位置,灵活性差,会使大片内存无法得到充分利用。
比如图中所示一样,主存块号8的那个要放到cache中,对应的是0的那一行,但是其他地方明显空了很多,却不用,而且放到0的那里,还会覆盖掉原来的


4.1优化标记位

请添加图片描述

主存块号的后三位与cache中行数的二进制数相对应


请添加图片描述

这里通过优化后,标记位的位数可以少3位,其实就是将主存块号进行细分,细分出了标记位和行号。

5、组相连映射

请添加图片描述

请添加图片描述

6、课后习题

设某计算机主存容量位4MB,Cache容量为16KB,每块包含8个字,每字32位,设计一个4路组相连映像(即Cache每组内共有4个块)的Cache组织,要求:
(1)画出主存地址字段中各字段的位数
(2)设Cache的初态为空,CPU依次从主存第0,1,2,……,99号单元读出100个字(主存依次读出一个字),并重复按此次序读8次,问命中率是多少?
(3)若Cache的速度是主存的6倍,试问有Cache和无Cache相比,速度提高多少倍?

关于主存地址的例题
关于主存地址的详细讲解
这两篇文章看了之后,来做第一小问应该会比较轻松。

(1)主存地址 = 区号+组号+组内块号+块内地址号

因为Cache容量位16KB,即214 B,每个B(字节)里面有8位
Cache的容量 = 16KB/(8*32)位 =( 214*8)/28 = 29
又因为每4块一组,所以共有29/4 = 27组,通过二进制来表示27 组,所以需要7位,故组号是7。(21组的话,就是需要1位二进制数,0和1;22组=4组,就需要2位二进制数,00 = 0,01 = 1,10 = 3,11 = 4)

组内块号就是指有多少块一组,这里是4块一组,是22 组,所以转换成二进制需要两位,所以组内块号 = 2

如果没有明确指明的话,默认是按字节编址,那么每个字就是32位/8 = 4字节,又因为每块包含8个字,所以一个块有8*4 = 32字节 = 25 字节
故块内地址号 = 5

因为主存容量是4MB = 222 B,所以主存地址共有22位
最后,区号 = 22 - 7 - 2 - 5 = 8

主存地址格式如下:

区号 组号 组内块号 块内地址
8位 7位 2位 5位

(2)由于每个字块有8个字,所以主存第0,1,2,……,99号单元分别在0~12中,采用四路组相连分别映像到第0组至12组中,但由于Cache起始为空,所以第一次读取的时候,读每一块的第一个单元都是为空,都没命中,但后7次每个单元都能命中。

命中率 = (100-13 + 7x100) / 8x100 = 98.4%

(3)设Cache的存取周期为T,则主存的存取周期为6T。
有Cache的访存时间 = H × Tc + (1 - H) × (Tm + Tc)= Tc + (1 - H) × Tm = T + (1 - 98.4%) × 6T= 1.096T

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

全相联映射、直接映射、组相连映射 的相关文章

  • [最强期末复习]计算机组成原理:指令系统之指令概念解析

    不知不觉就到期末啦 xff0c 在计组的复习道路上越走越发艰难 xff0c 最近都会发和计组或者机器学习 web有关的文章 xff0c 重温和复习准备期末考试 xff0c 也就临近期末才比较有自己的时间了 xff0c 有任何问题评论区见啦
  • Quartus II 13.0波形仿真

    先放结论 Quartus II 13 0有自带的仿真工具 能实现波形仿真 之前一直找不到关于Quartus II 13 0的波形仿真 然后百度的都是说quartus ii 9 0之后的版本就没有这个功能了 只能再下一个modelsim之类的
  • 【计算机组成原理笔记】1.2计算机的基本组成

    1 2计算机的基本组成 冯 诺依曼计算机 冯诺依曼计算机的六个特点 冯 诺依曼计算机硬件框图 各部分功能 缺点 计算机硬件框图 以存储器为中心的计算机硬件框图 现代计算机硬件框图 系统复杂性管理方法 计算机的工作步骤 指令格式举例 存储器的
  • 5.6.1_浮点数的表示

    文章目录 一 引子 二 定点数的局限性 三 从科学计数法理解浮点数 1 十进制 2 二进制 1 定点数 2 浮点数 浮点数的表示 补充 练习 四 浮点数尾数的规格化 1 左规 1 十进制 2 二进制 2 右规 1 规则 2 例子 五 规格化
  • 计算机组成原理实验三-----系统总线和具有基本输入输出功能的总线接口实验

    总线是计算机中连接各个功能部件的纽带 是计算机各部件之间进行信息传输的公共通路 总线不只是一组简单的信号传输线 它还是一组协议 他有两大特征 分时 同一总线在同一时刻 只能有一个部件占领总线发送信息 其他部件要发送信息得在该 部件发送完释放
  • 计算机组成原理期末总结

    文章目录 写在前面 1 计算机系统概论 知识点 习题 2 运算方法和运算器 知识点 习题 3 多层次的存储器 知识点 习题 4 指令系统 知识点 习题 5 中央处理器 知识点 习题 6 总线系统 知识点 习题 7 外存与IO设备 知识点 习
  • 计算机组成原理学习笔记——六、总线

    文章目录 计算机组成原理学习笔记 六 CPU总线 6 1 总线概述 6 2 总线仲裁 6 3 总线操作和定时 6 4 总线标准 小结 计算机组成原理学习笔记 六 CPU总线 6 1 总线概述 总线的猝发传送方式 一个总线周期内传输存储地址连
  • 计算机组成原理题库(2)

    计算机网络题库 目录 计算机网络题库 1 选择题 2 填空题 3 分析判断题 可能会有重复 大家跳着看 4 计算题 5 简述题 1 选择题 1 总线通信中 若发送方和接收方设备的速度有差异 但不是特别大 则最适合选择 时序控制方式 A 同步
  • 计算机指令——从纸带说起

    前言 其实很多时候我都会感叹计算机的伟大 通过一个个电路就完成了如今各种系统 通过各种各样的语言就能够指挥设备完成不同的动作 当写下第一个hellow world的时候我就在想他什么怎么出现 今天搞明白其中的原理 我在这和大家分享 打孔卡
  • 【计算机组成原理】——原码,反码,补码,移码怎样计算

    机器数与真值 把符号 数字化 的数称为机器数 而把带 或 的数称为真值 正负号用二进制的0 1表示 0 1 x 001 机器数 第一位表示符号 x 1 x 101 真值 直接用 表示 x 5 原码 反码 补码 移码的计算 正数的原码 反码
  • [计算机组成原理] 以低字节地址为字地址

    以低字节地址为字地址 就是小端存储模式 数据低位 或者说低字节 存储在内存低地址 以高字节地址为字地址 就是大端存储模式 数据低位 或者说高字节 存储在内存高地址 现在看一个例题 这个题目有一个需要明确的地方 什么是第一 第二 第三字节 对
  • 8.4-中断系统小结(cpu中断七个问题)

    README 本文转自bilibili 计算机组成原理 哈工大刘宏伟 的视频讲解 非常棒 墙裂推荐 1 中断介绍 1 作用 用中断系统实现了外设数据的输入输出 还可以用于程序调试 计算机系统的异常事件 都可以用中断系统来处理 2 中断因素
  • 计算机组成原理--基于Logisim的8位可控加减法器实验的应用(超详细/设计/实验/作业/练习)

    目录 课程名 计算机组成原理 内容 作用 设计 实验 作业 练习 学习 基于Logisim的8位可控加减法器实验 一 前言 二 环境与设备 三 内容 四 结果与分析 课程名 计算机组成原理 内容 作用 设计 实验 作业 练习 学习 基于Lo
  • 计算机组成原理--基于Logisim的4位并行加法器实验的应用(超详细/设计/实验/作业/练习)

    目录 课程名 计算机组成原理 内容 作用 设计 实验 作业 练习 学习 基于Logisim的4位并行加法器实验 一 前言 二 环境与设备 三 内容 四 结果与分析 课程名 计算机组成原理 内容 作用 设计 实验 作业 练习 学习 基于Log
  • 计算机组成原理——单周期CPU

    单周期CPU 项目代码 实验原理 MIPS指令 rom coe文件 代码 顶层模块SingleCycleCPU display外围模块 PC instructionMemory Alu模块 DataMemory ControlUnit 旧的
  • 【计组笔记-5】详细测试c++中类型转换的溢出截断处理

    计组笔记 5 详细测试c 中类型转换的溢出截断处理 1 将小数赋值给float 2 将整数赋值给float 3 将整数赋值给int 3 1 算术溢出 3 2 非算术溢出 等于32位 3 3 非算术溢出 大于32位 4 将小数赋值给int 5
  • 03

    03 通过你的CPU主频 我们来谈谈 性能 究竟是什么 性能 这个词 不管是在日常生活还是写程序的时候 都经常被提到 比方说 买新电脑的时候 我们会说 原来的电脑性能跟不上了 写程序的时候 我们会说 这个程序性能需要优化一下 那么 你有没有
  • 面向对象编程是什么意思呢?汇总

    https blog csdn net qq 32381815 article details 79119996 面向对象思想 谈谈你对面向对象的理解 https blog csdn net qsbbl article details 71
  • 【计算机组成原理】2、二进制原码反码补码、左移右移、进制转换,进制相减、内存地址偏移计算与容量计算

    文章目录 一 二进制的原码 反码 补码 1 1 二进制计算 1 2 左移 右移 1 3 异或 二 进制转换 2 1 二进制 八进制 十六进制转为十进制 2 2 十进制转为二进制 八进制 十六进制 2 3 二进制转为八进制 十进制 十六进制
  • 【408】计算机学科专业基础 - 计算机组成原理

    一 计算机系统概述 复习提示 本章是组成原理的概述 考查时易针对有关概念或性能指标出选择题 也可能综合后续章节的内容出有关性能分析的综合题 掌握本章的基本概念 是学好后续章节的基础 部分知识点在初学时理解不深刻也无须担忧 相信随着后续章节的

随机推荐

  • 2、Java入门教程【IDEA】

    1 下载 IDEA社区版 下载地址 IDEA管理JAVA程序的结构 project 项目 工程 module 模块 package 包 class 类 2 创建工程 创建 project 点击 create 后 项目结构如下 创建 pack
  • 计蒜客T1113——整理药名

    先看题干 这道题并不难 如果你对编程语言的基础有很好的掌握 很容易理清整个逻辑 实际上 不涉及到算法的题目都是简单题 笔者带领大家理一下这道题的考察点 1 输入多个不定长字符串 2 将字符串的首字母一律变为大写 分本来就是大写和本来是小写两
  • 【GAN】基础原理讲解及代码实践

    首先什么是 的模型结构 设计 模型的关键 GAN的算法原理 这里输入噪声的随机性就可以带来生成图像的多样性 GAN公式讲解 D 表示判别器对真实图片的判别 取对数函数后我们希望其值趋于 也就是D 趋于 也就是放大损失
  • 【踩坑专栏】idea中的target缺失

    target文件夹缺失 但是在文件中能找到 这个是idea禁止了 我想起来之前我是因为在提交代码时有一些文件显示在commit里 所以禁止了一些文件 应该是那时候把target误禁了 解决办法 1 Ctrl Alt S 找到target 删
  • OpenCV之摄像头捕捉图像

    代码 数据类型 运行效果 代码 之前我找过directshow CameraDS VedioCaptureFromCam之类的东西 发现都不可以用 directshow是因为版本太老了 会出现 http www opencv org cn
  • Ajax简介和实例

    目录 什么是 AJAX AJAX实例 ajax get无参 ajax get有参 对象和查询字符串的互转 ajax post ajax post 表单 AJAX 是一种在无需重新加载整个网页的情况下 能够更新部分网页的技术 什么是 AJAX
  • 基于OpenHarmony开发的健康生活应用(ArkTS)

    健康生活应用 ArkTS 介绍 本篇Codelab介绍了如何实现一个简单的健康生活应用 主要功能包括 用户可以创建最多6个健康生活任务 早起 喝水 吃苹果 每日微笑 刷牙 早睡 并设置任务目标 是否开启提醒 提醒时间 每周任务频率 用户可以
  • ChatGPT报错:Sorry, you have been blocked解决方法

    今天打开ChatGPT 发现再一次报错了 又一次出问题了 无语 原因分析 1 内容过滤 某些平台或网站可能使用内容过滤系统 该系统可能将AlI语言模型视为潜在的风险 从而对其进行封锁或限制 这是为了防止不当内容的传播或滥用 2 隐私和安全考
  • 转载:NVIDIA GPU结构

    http blog itpub net 23057064 viewspace 629236 目前市场上的NVIDIA显卡都是基于Tesla架构的 分为G80 G92 GT200三个系列 Tesla体系架构是一块具有可扩展处器数量的处理器阵列
  • Node.js知识点大全 最全笔记 知识点合集

    第一章 绪论 第一讲 命令行窗口 命令行窗口也叫 小黑屏 cmd窗口 终端 shell win r cmd 回车 常用指令 dir 列出当前目录下的所有文件 cd 目录名 进入文件夹 md 目录名 创建一个文件夹 rd 目录名 删除一个文件
  • The Cherno——OpenGL

    The Cherno OpenGL 1 欢迎来到OpenGL OpenGL是一种跨平台的图形接口 API 就是一大堆我们能够调用的函数去做一些与图像相关的事情 特殊的是 OpenGL允许我们访问GPU Graphics Processing
  • html位置发生变化监听,用JS实现监听URL地址变化的教程

    最近一直在写单页模版 需要使用 js 来监听浏览器地址栏中 url 地址的变化 并做出相应的改变 而这篇文章就来说一说 使用用 JS 代码来监听浏览器地址栏URL地址的变化的方法 js onhashchange 事件 当前的url地址发生改
  • 微软中文站点资源列表 & 程序员网站资源宝库

    WEB开发 http www microsoft com china msdn Archives catalog web MSDN 微软开发技巧系列网络讲座 http www microsoft com china msdn events
  • 反汇编-objdump

    windows下完成objdump需要用到 反汇编的目标镜像 镜像生成的本地编译器 exe 相关指令如下 反汇编命令 编译器路径 例 D ACOINFO RealEvo compiler x86 64 sylixos toolchain b
  • 北大教授上课讲解,Python零基础入门总结

    一 输入输出 输出 print 100 200 100 200 print The quick brown fox jumps over the lazy dog The quick brown fox jumps over the laz
  • springWEB搭建

    概述 SpringWEB就是spring框架里得一个模块 SpringWeb的前身是SpringMVC springMVC介绍 在之前的后端三大架构 Controller 控制层 包含了servlet 对数据的接收 处理 响应 Model
  • 【华为OD机试真题2023B卷 JAVA&JS】找出两个整数数组中同时出现的整数

    华为OD2023 B卷 机试题库全覆盖 刷题指南点这里 找出两个整数数组中同时出现的整数 知识点数组哈希表排序 时间限制 1s 空间限制 256MB 限定语言 不限 题目描述 现有两个整数数组 需要你找出两个数组中同时出现的整数 并按照如下
  • PR/AE 超级变速插件Twixtor Pro 7.5.4汉化版WIN版中文使用教程

    插件介绍 Twixtor Pro汉化版 hereitis cn articleDetails 897 可以直观的调整动画祯速率 加快或减慢 调整帧顺序 为了实现 的图像品质 Twixtor通过对原始连续的帧进行变形和插入来合成它独有的新帧
  • 【CVPR 2023】FasterNet论文详解

    论文名称 Run Don t Walk Chasing Higher FLOPS for Faster Neural Networks 论文地址 https arxiv org abs 2303 03667 作者发现由于效率低下的每秒浮点运
  • 全相联映射、直接映射、组相连映射

    目录 1 主存中的块放到cache 高速缓冲存储器 中哪个位置 2 标记位 有效位 命中是什么 2 1 标记位 2 2 有效位 2 3 命中 3 全相联映射 4 直接映射 4 1优化标记位 5 组相连映射 6 课后习题 1 主存中的块放到c