预备知识

1.cache的产生背景

在多体并行存储器中讲过,外部设备的优先级最高,这样就会导致CPU等待外部设备访存的现象,致使CPU空等一段时间,甚至可能等待几个主存周期,从而降低了CPU的工作效率。

为了避免CPU与I/O设备争抢访存,可在 CPU与主存之间加一个Cache。

这样一来,如果外部设备正在和主存交换信息,CPU就可以不用等待,直接从Cache中取所需信息。当然,考生会提出质疑,Cache那么小,每次访问 CPU的数据都有吗?解释:

2.局部性原理

通过大量典型程序的分析,发现 CPU从主存取指令或取数据,在一定时间内,只是对主存局部地址区域的访问(如循环程序、一些常数)。

于是人们就想到一个办法,将CPU近期需要的程序提前存放到Cache中。

这样CPU只需访问Cache就可以得到所需要的数据了。

一般Cache采用高速的SRAM制作(主存一般使用DRAM),其价格比主存高,容量远比主存小。

补充:局部性原理一般有两种,即时间局部性原理和空间局部性原理。

  • 1)  时间局部性原理。如果某个数据或指令被使用,那么不久将可能再被使用。
  • 2)空间局部性原理。如果某个数据或指令被使用,那么附近数据也可能被使用。

3.主存与Cache的编址

前提:如果主存要和Cache

计组 | 【Cache】主存映射cache容量及cache写策略相关推荐

  1. 计组——彻底搞懂cache主存映射以及cache容量的计算

    cache主存映射以及cache容量 一.三种映射方式 1. 全相联映射 2. 直接映射 3. 组相联映射 二.cache容量计算 1. 先计算cache行标记项位数 2. 再计算cache块位数 3 ...

  2. 计组期末复习---个人版

    (一)计算机系统概论 1.1计算机分类与发展历史 分类:电子模拟计算机和电子数字计算机 电子模拟计算机:数值由连续量来表示,运算过程是连续的 电子数字计算机:按位运算,并且不是连续地跳动运算 专用计算 ...

  3. 计组—缓存Cache

    缓存 通过大量统计发现了一个访问规律:程序对存储空间90%的访问局限于存储空间的10%的区域中,另外10%的访问则分布在存储空间的90%区域中.(即:存储器10%的存储空间是高频访问区,90%的存储空 ...

  4. 计组之存储系统:5、cache(cache功能、cache工作原理、cache性能分析)

    5.cache 思维导图 为什么要cache? Cache的工作原理 局部性原理 性能分析(加入cache) 空间局部性中的"附近"怎么定义? 待解决的问题? 思维导图 为什么要c ...

  5. 【王道计组笔记】Cache高速缓存基本工作原理

    缓存器 的引入: [王道计组笔记]高速缓存器:局部性原理及性能分析_muse_age的博客-CSDN博客 1.主存的块放到Cache中哪个位置?CPU向缓存中读取一个数据过程? (1)空位随意放:全相 ...

  6. 计组学习笔记(四):高速缓冲存储器Cache

    一.为什么要有Cache 我们知道存储器的层次结构为,CPU-->寄存器--Cache--主存--磁盘--磁带.光盘,假设没有Cache这一层,那就相当于我CPU要想找东西直接去主存找,CPU速 ...

  7. 【计组】Cache 全相连 组相联 直联

    文章目录 基础知识 全相联映射 组相联映射 直接映射 主存与Cache的地址映射 例题 基础知识 按照字节编址:1B对应一个地址,16B对应4个地址,(16B/1B=2^4)2的20次方是1MB对应2 ...

  8. 计组复习(四):cache,虚拟内存,页表与TLB

    目录 前言 cache高速缓存 直接映射 全相连映射 组相连映射 多级 cache 的 CPI 计算 指令缓存与数据缓存 虚拟内存(重要⚠) 页表 缺页 替换 TLB 例题(重要⚠) FastMath ...

  9. 计组复习-cache

    Cache的复习 Cache,又名高速缓存器,是为了协调CPU和主存的速度而出现的一种高速的,小的存储器. Cache主要由两部分组成,一部分是一个存储器,另一部分是一个地址变换与映射表,这个映射表完 ...

最新文章

  1. 如何自定义制表符到空格的转换因子?
  2. 27.Silverlight二维旋转+平面渐变+动画,模拟雷达扫描图之基本框架
  3. Java多线程-线程的调度(合并)
  4. ImportError: No module named _tkinter, please install the python-tk package ubuntu运行tkinter错误
  5. 重装mysql遇到的问题
  6. PLSQL连接远程Oracle出现ORA-12541: 无监听程序
  7. 基于JAVA+SpringMVC+Mybatis+MYSQL的二手电动车交易系统
  8. 在线黑客帝国文字效果生成工具
  9. Python基于Snap7与PLC建立连接并读写数据
  10. 计算机显卡怎样安装方法,电脑显卡怎么安装?轻松安装电脑显卡的方法
  11. 前后端请求设置签名验证,提升接口安全
  12. 快速理解三角函数:积化和差、和差化积
  13. 贝恩分类法(行业集中度)
  14. 基于蓝牙与Android设备的控制系统设计
  15. Selective Search(选择性搜索)算法学习
  16. 流利地回答出面试官提出的八股问题,面试官却突然说“背得不错”,该怎么回答?
  17. 导出带Exchange 邮箱的用户和没带邮箱的用户
  18. The 2022 ICPC Asia Regionals Online Contest (II) 2022ICPC第二场网络赛 ABEFGJKL题解
  19. 以太坊学习之Java开发框架web3j的使用---部署合约
  20. 【南京大学】考研初试复试资料分享

热门文章

  1. linux clock
  2. 【OCM】Oracle 11g OCM 考试大纲
  3. fwrite函数的简介
  4. 自己做笔记用的Emacs插件
  5. 数据结构和算法三十六
  6. AndroidStudio图像随键盘按动在屏幕移动(按键事件)
  7. JS中作用域以及变量范围
  8. errorexception php,PHP错误与异常处理
  9. 计算机英语(个人整理)(计算机专业)(全称缩写)
  10. 单纯形法解下列线性规划问题_用单纯形法求解下列线性规划问题 线性规划单纯形法教学策略探求...