一、Cache(高速缓冲存储器)

1.1.基本概念

  • 高速缓冲存储器是位于主存与CPU之间的一级存储器,由静态存储芯片(SRAM)组成,容量比较小,速度比主存高得多,接近于CPU的速度,单位成本比内存高。Cache存储了频繁访问内存的数据

1.2.Cache原理、命中率、失效率

  • 使用Cache改善系统性能的主要依据是程序的局部性原理

  • 命中率、失效率

    • Cache的访问命中率为h(通常1-h就是Cache的失效率),Cache的访问周期时间是t1,主存储器的访问周期时间是t2,则整个系统的平均访存时间就是:t3=h x t1 + (1-h) x t2

1.3.Cache存储器的映射机制

  • 分配给Cache的地址存放在一个相联存储器(CAM)中,CPU发生访存请求时,会先让CAM判断所要访问的数据是否在Cache中,如果命中就直接使用。这个判断的过程就是Cache地址映射,这个速度应该尽可能快

  • 常见的映射方法有:

    • 直接映射
    • 全相联映射
    • 组相联映射
  • 直接映射

    • 是一种多对一的映射关系,但是一个主存块只能够复制到Cache的一个特定位置上去
    • Cache的行号i和主存的块号j有函数关系:i = j % m(其中m为Cache总行数)
  • 全相联映射

    • 将主存中任一主存块能映射到Cache中任意行(主存块的容量等于Cache行容量)
    • 根据主存地址不能直接提取Cache页号,而是需要将主存块标记与Cache各页的标记逐个比较,直接找到标记符合的页(访问Cache命中),或者全部比较完后仍无符合的标记(访问Cache失败)
    • 主存块标记与Cache各页的标记逐个比较,所以这种映射方式速度很慢,失掉了高速缓存的作用,这时全相联映射方式的最大缺点。如果让主页标记与各Cache标记同时比较,则成本太高
  • 组相联映射

    • 是前两种方式的折中方案,它将Cache中的块再分组,各组之间是直接映像,而组内各块之间则是全相联映像
    • 主存地址=区号+组号+组内块号+块内地址号

1.4.Cache淘汰算法

  • 当Cache数据已满,并且出现未命中情况时,就要淘汰一些老的数据,更新一些新的数据进入Cache。选择淘汰哪些数据的方法就是淘汰算法。常见的方法有三种:

    • 随机淘汰算法
    • 先进先出淘汰算法(FIFO)
    • 最近最少使用淘汰算法(LRU)
  • 其中平均命中率最高的是LRU算法

1.5.Cache存储器的写操作

  • 在使用Cache时,需要保证其数据与主存一致,因此在写Cache时就要考虑与主存间的同步问题,通常使用以下三种方法:

    • 写直达:当Cache写命中时,Cache与主存同时发生写修改
    • 写回:当CPU对Cache写命中时,只修改Cache的内容而不立即写入主存,当此行被换出才写回主存
    • 标记法:数据进入Cache后,有效位置1;当CPU对该数据修改时,数据只写入主存并将该有效位置0.当要从Cache中读取数据时,要测试其有效位,若为1则直接从Cache中取数,否则从主存中取数。

原文参考:https://juejin.cn/post/6870128002378760206

cache--存储器系统相关推荐

  1. 微型计算机存储器系统中的cache是(),微型计算机存储器系统中的Cache是

    大家好,我是时间财富网智能客服时间君,上述问题将由我为大家进行解答. 微型计算机存储器系统中的Cache是高速缓存的意思.Cache存储器,电脑中为高速缓冲存储器,是位于CPU和主存储器DRAM之间. ...

  2. 计算机硬件存储器,个人计算机的存储器系统 说说内核与计算机硬件结构(5)

    之所以依然叫做ROM,归纳一下,大概有几个原因: ①不能像RAM那样快速的写: ②可能需要特殊的擦写电压: ③可能需要特殊的擦写时序: ④可能需要在写之前进行擦除操作: ⑤擦写次数有限,不像RAM那样 ...

  3. ****** 三十三 ******、软设笔记【存储器系统】-主存储器、辅存储器

    存储器系统 主存储器 存储器是计算机系统中的记忆设备,用来存放程序和数据. 计算机中全部的信息,包括输入的原始数据.计算机程序.中间运行结果和最终运行结果都保存在存储器中. 存储器分为: *寄存器 * ...

  4. 【沧海拾昧】微机原理:存储器系统

    #C0302 沧海茫茫千钟粟,且拾吾昧一微尘 --<沧海拾昧集>@CuPhoenix [阅前敬告] 沧海拾昧集仅做个人学习笔记之用,所述内容不专业不严谨不成体系 如有问题定为本集记录有谬, ...

  5. 微机原理与接口技术 第五章 存储器系统(河北专升本计算机)

    一.存储器的层次.类型及特点 1. 存储器 {Cache速度快,容量小内存(主存)外存速度慢,容量大\begin{cases}Cache\qquad\qquad\qquad 速度快,容量小\\ 内存( ...

  6. 计算机组成原理 学习总结3.6  Cache存储器

    3.6 Cache存储器 3.6.1 Cache基本原理 使用Cache的原因 CPU速度越来越快,主存储器与CPU的速度差距越来越大,影响CPU的工作效率. Cache的作用 在CPU和主存之间加一 ...

  7. Cortex-M3存储器系统

     一.存储器系统的功能概览 1.Cortex-CM3存储器系统功能 1).存储器映射是预定义的,并且还规定好了那个位置使用那条总线. 2).Cortex-CM3的存储器系统支持"位带&q ...

  8. Cortex-M3的存储器系统

    Cortex-M3 的存储系统架构与传统的 ARM 处理器有很大的区别. Cortex-M3 处理器采用哈佛( Harvard)结构,拥有独立的指令总线( I-Code)与数据总线( D-Code). ...

  9. ARM Cortex-M0(6)--- 存储器系统

    ARM Cortex-M0 存储器系统 1. Cortex-M0 的两种总线协议:  1)AHB_Lite 系统总线协议:32位地址线,高速高性能访问(Flash, SRAM,总线桥,外部存储器接口) ...

  10. 《Cortex-M0权威指南》之体系结构---存储器系统

    <Cortex-M0权威指南>之体系结构---存储器系统 转载请注明来源:cuixiaolei的技术博客 Cortex-M0处理器为32位处理器,所以具有最大4G的寻址空间.在体系结构上, ...

最新文章

  1. 高效管理 Elasticsearch 中基于时间的索引——本质是在利用滚动模式做数据的冷热分离,热索引可以用ssd...
  2. ai ci ba logon use infomation
  3. 数据结构实验之链表一:顺序建立链表(SDUT 2116)
  4. 干货 | 深入仓储管理系统你需要了解的15件事
  5. 2020 操作系统第零天复习(知识点总结)
  6. Configutation读取properties文件信息
  7. 《Python程序设计基础》在亚马逊当当京东互动出版网淘宝等各大书店上架
  8. 计算机领域中所谓课机是指,1.计算机基础知识题及答案
  9. dubbo日志关闭_不可忽视的Dubbo线程池避坑指南
  10. fig, ax = plt.subplots(figsize = (a, b))解析 与 plt.subplot()函数解析
  11. 如何让你的Android SDK下载或者升级快如闪电
  12. 软考项目管理师考试随笔
  13. error: ‘nullptr’ was not declared in this scope
  14. 计算机网络攻防技术的分析与研究
  15. LeetCode系列之【12/13.罗马字符转整数(或相反)】C++ 经验总结
  16. 基于Qt的嵌入式监控系统
  17. 科目二:倒车入库考试技巧详细图解
  18. Hough变换直线检测
  19. oracle 与赛门铁克,Oracle与赛门铁克认证Veritas数据中心解决方案
  20. maven conf

热门文章

  1. 机器学习流程——监督学习篇
  2. 微服务商城系统 实战记录 用户、商家、后台管理员注册与登录功能实现
  3. HTML中引入在线图片
  4. 移动智能网期末考知识点整理
  5. 一个小小的C++游戏引擎
  6. unity-概念与实操入门
  7. android调试日志不输出:AEE some logs have been lost
  8. katalon android 测试,脚本模式创建测试用例 - Katalon Studio
  9. c需要九九乘法口诀表语言,C/C++知识点之输出九九乘法口诀表
  10. mysql wb bbu_全面优化MySQL