专题-主存储器与Cache的地址映射方式
2019/05/02 10:23
首先,我们注意到地址映射有三种:分别是直接地址映射、全相联映射、组相联映射。
首先我们搞清楚主存地址还有Cache地址的关系,还有组内地址的关系,常见我们的块内地址,是用b(b表示有几位的数2^b)表示的。
对于直接映射:主存地址分为,标记 | 字块地址 | 块内地址
对于全相联映射:主存地址分为,标记 | 块内地址
对于组相联地址:主存地址分为,标记 | 组地址 | 块内地址
我们在题中或者遇到问题是:
首先看CPU的地址总线有多少位,然后字长(1个字节是8位,字长看所给要求有多少个字节,一般是16位,也就是两个字节)有多少。
然后我们看Cache,一般给出2K * 16位的Cache,16就是字长,然后关注块(这里关系到块内地址的位数如果是8B,可以化成4 * 16bit,就可以明白块内地址占2位)有多大,如果是组相联映射,还会有个几路组相联,如果是2路的话,也就说明占1位Cache地址,如果是4路,那么就是占2位Cache地址。这样的话,Cache剩下的位数,表示分成了这么多组,在主存地址中也要中这么多位的地址来找到相应的地址(也就是组相联映射中的组地址的位数)。
最后题目中往往会说要你求如果主存地址为462EH,则该地址可以映射到哪一组,就是把组地址取出来,然后换算成十进制看是映射到哪一组。如果所给主存地址没有达到CPU地址总线的长度,在前面补最高位同符号的即可。
专题-主存储器与Cache的地址映射方式的更多相关文章
- [转帖]CPU Cache 机制以及 Cache miss
CPU Cache 机制以及 Cache miss https://www.cnblogs.com/jokerjason/p/10711022.html CPU体系结构之cache小结 1.What ...
- CPU Cache 机制以及 Cache miss
CPU体系结构之cache小结 1.What is cache? Cache是用来对内存数据的缓存. CPU要访问的数据在Cache中有缓存,称为“命中” (Hit),反之则称为“缺失” (Miss) ...
- 主存和cache的地址映射
cache是一种高速缓冲寄存器,是为解决CPU和主存之间速度不匹配而采用的一项重要技术. 主存与cache的地址映射方式有全相联方式.直接方式和组相联方式三种. 直接映射(directmapping) ...
- Cache地址映射
原理:程序访问局部性 在较短时间内由程序产生的地址往往集中在存储器逻辑地址空间的很小范围内 时间:在一小段时间内,最近被访问过的程序和数据很可能再次被访问 ...
- 主存到Cache直接映射、全相联映射和组相联映射
转自:https://blog.csdn.net/dongyanxia1000/article/details/53392315 ---- Cache的容量很小,它保存的内容只是主存内容的一个子集,且 ...
- 2016-05-I
2016 年上半年软件设计师上午真题 1. VLIW 是( )的简称.A.复杂指令系统计算机 B.超大规模集成电路C.单指令流多数据流 D.超长指令字 2.主存与 Cache 的地址映射方式中,( ) ...
- 【基础知识】Intel CPU体系结构|x86是什么意思
看了<计算机系统结构>.<深入理解计算机系统>.<大话处理器>等经典书籍,也在google上搜了一大堆资料,前前后后.断断续续的折腾了一个多月,终于想通了,现在把自 ...
- Cache与主存地址映像计算例题
一.全相连映像 主存中任何一个块均可以映像装入到Cache中的任何一个块的位置上.主存地址分为块号和块内地址两部分,Cache地址也分为块号和块内地址.Cache的块内地址部分直接取自主存地址的块内地 ...
- [ZZ] Cache
http://blog.sina.com.cn/s/blog_6472c4cc0102duzr.html 处理器微架构访问Cache的方法与访问主存储器有类似之处.主存储器使用地址编码方式,微架构可以 ...
随机推荐
- 【开源监控】Prometheus+Node Exporter+Grafana监控linux服务器
Prometheus Prometheus介绍 Prometheus新一代开源监控解决方案.github地址 Prometheus主要功能 多维 数据模型(时序由 metric 名字和 k/v 的 l ...
- 自定义httpservletrequest解析参数
3.添加参数解析器 4.注册
- KVM学习
获取镜像目前大小 # qemu-img info debian.img 添加额外的10G空间到镜像中 # qemu-img resize -f raw debian.img +10GB 注意:并不是所 ...
- 关于宝塔面板windows版6.2的一些使用心得
关于宝塔面板windows版6.2的一些使用心得 第一次使用windows版本的 给客户搭建 asp+mssql的需求 心得1 安装 server2012 基于python开发的,所以安装的 ...
- C++初探
//string1.cpp #include <iostream> int main() { using namespace std; ]={'d','o','g'}//这是char数组, ...
- Newtonsoft.Json使用技巧
本篇将为大家介绍Newtonsoft.Json的一些高级用法,可以修改很少的代码解决上述问题. 阅读目录 Newtonsoft.Json介绍 基本用法 高级用法 总结 回到顶部 Newtonsoft. ...
- 给定制的vuejs组件添加v-model双向绑定支持
用过vuejs的前端工程师,对于v-model一定印象深刻.它向类似textarea,input等原生html原生添加双向数据绑定的能力非常方便.但是对于你的定制vue组件并不是能够直接应用v-mod ...
- java中的%取模
在java中的 % 实际上是取余. 下面为数学概念上的取余和取模: 对于整型数a,b来说,取模运算或者求余运算的方法都是: 1.求 整数商: c = a/b; 2.计算模或者余数: r = a - ...
- ASP.NET Core IIS发布
ASP.NET Core应用发布到IIS 官网教程地址:https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/publish-to-iis?vi ...
- 将MySQL升级到8.0.x后的遇到到错误及解决
一,安装的时遇到的坑 我下的是Mysql 8.0.13 地址:https://dev.mysql.com/downloads/mysql/ 下的是解压版(个人能不用安装就不想用安装版的强迫症(/▽\) ...