计算机组成原理之机器:存储器之高速缓冲存储器

这篇具有很好参考价值的文章主要介绍了计算机组成原理之机器:存储器之高速缓冲存储器。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

计算机组成原理之机器:存储器之高速缓冲存储器

笔记来源:哈尔滨工业大学计算机组成原理(哈工大刘宏伟)
计算机组成原理之机器:存储器之高速缓冲存储器,# 计算机组成原理,计算机组成原理,高速缓冲存储器

Chapter3:存储器之高速缓冲存储器

3.1 概述

3.1.1 为什么用cache?

角度一:I/O设备向主存请求的级别高于CPU访存,这就出现了CPU等待I/O设备访存的现象,致使CPU空等一段时间,降低CPU工作效率。为避免CPU与I/O设备争抢访存,可在CPU与主存之间加一级缓存,这样主存可将CPU要取的信息提前送至缓存,一旦主存在与I/O设备交换时,CPU可直接从缓存中读取所需信息,不必空等而影响效率。—引自《计算机组成原理》唐朔飞

角度二:主存速度提高始终跟不上CPU的发展。希望由高速缓存cache来解决主存与CPU速度不匹配的问题—引自《计算机组成原理》唐朔飞

计算机组成原理之机器:存储器之高速缓冲存储器,# 计算机组成原理,计算机组成原理,高速缓冲存储器

局部性原理是指CPU访问存储器时,无论是存取指令还是存取数据,所访问的存储单元都趋于聚集在一个较小的连续区域中。

时间局部性:程序中的某条指令一旦执行,不久后该指令可能再次执行
空间局部性:一旦程序访问了某个存储单元,不久后其附近的存储单元也将被访问

3.1.2 cache的工作原理

主存和缓存的编址
为了与cache映射,将主存与缓存都分成若干块,每块内又包含若干个字,并使它们的块大小相同(即块内的字数相同)

计算机组成原理之机器:存储器之高速缓冲存储器,# 计算机组成原理,计算机组成原理,高速缓冲存储器
命中与未命中

任何时刻都有一些主存块处在缓存块中。
CPU欲读取主存某字时,有两种可能:
命中:一种是所需要的字已在缓存中,即可直接访问Cache(CPU与Cache之间通常一次传送一个字);
未命中:另一种是所需的字不在Cache内,此时需将该字所在的主存整个字块一次调入Cache中(Cache与
主存之间是字块传送)。如果主存块已调入缓存块,则称该主存块与缓存块建立了对应关系。
—引自《计算机组成原理》唐朔飞

计算机组成原理之机器:存储器之高速缓冲存储器,# 计算机组成原理,计算机组成原理,高速缓冲存储器
cache的命中率
我们都希望CPU对主存的访问尽可能都转化为对缓存的访问,也就是说我们希望命中率越高越好
计算机组成原理之机器:存储器之高速缓冲存储器,# 计算机组成原理,计算机组成原理,高速缓冲存储器
cache-主存系统的效率
计算机组成原理之机器:存储器之高速缓冲存储器,# 计算机组成原理,计算机组成原理,高速缓冲存储器

3.1.3 cache的基本结构

cache和主存之间是以块为单位进行数据传送的,cache和主存的块内地址一致,再看块号,根据映射规则,检查是否命中(CPU所访问的数据在cache中是否存在),如果命中,则形成cache的块号。如果未命中,则检查当前cache是否仍可装入块,若可装入,则将要访问的块装入cache,若没有空间装入,则将某一块与要访问的块进行替换,也就是将要访问的块从内存中调入,把cache中暂时不访问的块换下

主存与cache映射就是主存中的块应该放在cache的哪个位置
主存与cache变换就是主存的地址转换为cache的地址,在cache中找到相对应的主存块
主存与cache之间有直接通路,它完成了两者之间的信息交换
计算机组成原理之机器:存储器之高速缓冲存储器,# 计算机组成原理,计算机组成原理,高速缓冲存储器

3.1.4 cache的读写操作

计算机组成原理之机器:存储器之高速缓冲存储器,# 计算机组成原理,计算机组成原理,高速缓冲存储器
写操作可能会造成主存和cache数据的不一致,例如只对主存写而没有对cache写
计算机组成原理之机器:存储器之高速缓冲存储器,# 计算机组成原理,计算机组成原理,高速缓冲存储器

3.1.5 cache的改进

(1)增加cache级数
CPU内部装cache、CPU外部装cache
(2)统一缓存和分立缓存
统一缓存:把指令和数据统一放在一个cache中
分立缓存:将指令和数据分别放在不同cache中

3.2 cache-主存的地址映射

计算机组成原理之机器:存储器之高速缓冲存储器,# 计算机组成原理,计算机组成原理,高速缓冲存储器

3.2.1 直接映射(固定的映射关系)

主存当中任意一个给定的块只能装载到某一个指定的cache的块当中
计算机组成原理之机器:存储器之高速缓冲存储器,# 计算机组成原理,计算机组成原理,高速缓冲存储器

计算机组成原理之机器:存储器之高速缓冲存储器,# 计算机组成原理,计算机组成原理,高速缓冲存储器
计算机组成原理之机器:存储器之高速缓冲存储器,# 计算机组成原理,计算机组成原理,高速缓冲存储器
每个区的第0块放到cache中字块0中,每个区的第1块放到cache中字块1中以此类推
主存地址分为两部分:低c位指cache的字块地址、高t位指主存字块标记,它被记录在建立了对应关系的缓存的“标记”位中。
当缓存接到CPU送来的主存地址后,只需根据中间c位字段找到cache字块(如c位字段为00……01找到cache字块1),然后根据字块的“标记”是否与主存地址的高t位相符来判断。
计算机组成原理之机器:存储器之高速缓冲存储器,# 计算机组成原理,计算机组成原理,高速缓冲存储器
每个缓存块可以和若干个主存块对应
每个主存块只能和一个缓存块对应

3.2.2 全相联映射(灵活性大的映射关系)

主存的任何一个字块可放到任何一个cache字块中
计算机组成原理之机器:存储器之高速缓冲存储器,# 计算机组成原理,计算机组成原理,高速缓冲存储器

3.2.3 组相联映射(上述两种映射的折中)

主存中每个区的第0块可以放到cache中第0组两个字块的任意一个
计算机组成原理之机器:存储器之高速缓冲存储器,# 计算机组成原理,计算机组成原理,高速缓冲存储器

3.3 替换算法

当cache中已满且CPU要访问的数据不在其中,这时就需要将cache中某个块与主存中CPU要访问的块进行替换
计算机组成原理之机器:存储器之高速缓冲存储器,# 计算机组成原理,计算机组成原理,高速缓冲存储器
先进先出(FIFO)算法
最先被放入cache中的块被替换
近期最少使用(LRU)算法
在cache中选择最⻓时间没有被CPU访问的块进行置
换,也就是说,该算法假设已经很久没有使用的块很有可能在未来较长的⼀段时间内仍然不会被使⽤文章来源地址https://www.toymoban.com/news/detail-838090.html

到了这里,关于计算机组成原理之机器:存储器之高速缓冲存储器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 计算机组成原理实验 实验一 存储器实验

    目录 实验1  存储器实验 一、实验目的 二、实验原理 三、实验电路 四、实验步骤 五、实验数据分析 六、思考题 1.熟悉DVCC计算机组成原理实验机的结构,掌握其主要操作。 2.掌握静态随机存储器RAM工作特性。 3.掌握静态随机存储器RAM的数据读写方法。 4.能够运用静态随机存

    2023年04月18日
    浏览(65)
  • 实验2 存储器设计与实现【计算机组成原理】

    掌握单端口RAM和ROM原理和设计方法。 掌握32位数据的读出和写入方法。 掌握ModelSim和ISEVivado工具软件。 掌握基本的测试代码编写和FPGA开发板使用方法。 装有ModelSim和ISEVivado的计算机。 SwordBasys3EGo1实验系统。 片内存储器分为RAM和ROM两大类。RAM是随机存储器,存储单元的内

    2024年02月06日
    浏览(50)
  • 计算机组成原理4.2.3提高存储器访问速度的措施

    提高存储器访问层次大概有三种方法 采用高速器件 采用层次结构 Cache 主存 调整主存结构  利用程序局部性原理,访问一个块 相邻的若干块都会被拿出来,缺点可能会碰到跳转类指令 高位是体号,低位时地址因此,CPU给出一次存储访问总是对一块连续的存储单元进行的,在

    2024年02月02日
    浏览(49)
  • 《计算机组成原理》期末考试手写笔记——模块五: 并行主存系统(交叉存储器+顺序存储器“带宽”的计算方法)

    目录 (一)知识点总结   (二)经典考试例题 1.设主存储器容量为256字,字长为32位,模块数m=4,分别用顺序方式和交叉方式进行组织。主存储器的存储周期T=200ns,数据总线宽度为32位,总线传送周期τ=50ns。若按地址顺序连续读取4个字,问顺序存储器和交叉存储器的带宽各

    2024年02月08日
    浏览(51)
  • 计算机组成原理第五章----存储器容量的扩展与芯片连接

    目录 存储器芯片与CPU的连接 典例 典例二 主存储器容量的扩展与连接方法 位拓展  字拓展  例题 主存大小计算 总结: 1. 确定所需芯片的 数量 (可以通过计算得出) 2. 确定每个芯片的分配地址 (区分最大地址还是最小地址,容量) 3. 确定每个芯片 片选信号CS 的产生方式

    2024年02月11日
    浏览(57)
  • 计算机组成原理(期末或考研备考)- 存储器(RAM和ROM重点讲解)

    主存储器:也称内存,存放正在运行程序和数据,CPU可以直接访问,容量存储较小,价格较贵。 辅助存储器:也称外存(绝大多数是磁盘),存放电脑的应用程序等,如果想要运行某一程序,往往需要先将其从外存调入内存,存储空间大,访问速度较慢,价格较低。 高速缓

    2024年02月11日
    浏览(49)
  • 【计算机组成原理】高速缓冲存储器 Cache 的写策略(Writing Policy)

    缓存的写策略指的是确定何时将数据写入缓存或主存的策略。 在全写法策略中,每次发生写操作时都会将数据同时写入缓存和主存。这样可以保证数据的一致性,但会增加主存的写入操作,降低写入性能。需要设置写缓存(Write Buffer)。 在写回策略中,当缓存中的数据发生

    2024年02月02日
    浏览(53)
  • 【计算机组成原理】高速缓冲存储器 Cache 的三种映射方式(Cache Mapping)

    缓存是计算机系统中常见的一种高速存储器,用于临时存储常用数据,以便快速访问。在缓存中,有三种常见的映射方式,分别是直接映射、全相联映射和组相联映射。 在直接映射中,每个主存块只能映射到缓存中的一个特定位置。该位置是通过对主存块的某个地址的一部分

    2024年01月19日
    浏览(50)
  • 计算机组成与体系结构第二次试验:存储器实验

    为了帮助同学们完成痛苦的实验课程设计,本作者将其作出的实验结果及代码贴至CSDN中,供同学们学习参考。如有不足或描述不完善之处,敬请各位指出,欢迎各位的斧正! 本实验的主要内容是了解 RAM(Random Access Memory,静态随机存储器)和ROM(Read Only Memory,只读存储器)

    2024年02月08日
    浏览(51)
  • 【计算机三级嵌入式】考试自学笔记(三)——嵌入式系统硬件组成、嵌入式处理芯片以及存储器介绍

    常考知识点: 嵌入式最小硬件组成 嵌入式处理芯片 嵌入式系统的存储器 I/O接口及常用I/O设备 ARM内核典型嵌入式处理芯片 嵌入式系统外部通信接口 嵌入式最小硬件系统的组成如下: 嵌入式硬件系统≠嵌入式最小硬件系统 电源电路 :为整个嵌入式系统提供能量 时钟电路 :

    2023年04月12日
    浏览(88)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包