(1)块的放置,在较高层中,一个块能够被放置在哪里?(该层表示存储结构层次)
(2)块的标志,如果一个块在较高层中,如何找到它?
(3)块的替换,如果块发生缺失,哪个块被替换?
(4)写时策略.写操作时会发生什么?
一个块可以被放置到cache的什么地方?
直接映射:(块地址)MOD(cache中的块数),每个块只能出现在唯一位置上
全相连映射:一个块可以放置在cache中的任意位置上
组相连:(块地址)MOD(cache的组数), 一个块首先被映射到一个组中,然后它可以被放置在组中的任何一个块中
直接映射,全相连与组相连的关系:
直接映射是一个简单的1路组相联
一个有m块的全相联cache可以称为m路组相联
大多数处理器的cache采用直接映射,2路组相联或是4路组相联.
如果一个块在cache中,如何找到它?
块地址:块结构中有一个地址标志给出块地址,对每一个块标志进行检查,看其是否与来自处理器的块地址相匹配.考虑到速率,采用并行检查.
有效位:确定块中是否包含有效信息.
cache地址:块地址与块偏移
块地址:标志字段和索引字段
块内偏移是从块中选取数据,索引字段用来选择组,再通过比较标志字段来判断是否命中,标志字段是检查所有的块,全相联没有索引字段.
(i)没有必要对于偏移地址进行比较
(ii)索引字段的比较也是多余的,索引字段标识被检查的组
如果cache缺失,哪个块将被替换?
直接映射:直接替换不命中的块
在组相联与全相联中需要在多块中进行选择
三种基本块替换策略:
(1) 随机替换,产生伪随机数块号
(2) LRU,记录块的访问次数,替换长时间没有被访问的
(3)FIFO,最早进入cache的块被替换
4写操作时会发生什么?
读操作在 cache的访问占大多数.所有的指令都是 通过读操作来获得的,而且大部分的指令是不需要进行存储器写操作的。
块可以在标志位读和比较的同时被读出,读块操作与获得块地址的同时就开始了.如果读命中,块中所需要的信息立刻被传送到处理器
如果发生读取失,只需要将读到的信息丢失即可.
而对于写操作来说,这样做并不适合,只有在标志位有效而且地址命中时,块才能修改。检查标志位不能与写操作同时进行
写操作比读操作花费时间更长.
处理器必须给出写数据的大小,通常在1~8个字节之间,块中只有这个部分的数据能被更改.但是读数据可以读取比所需字节数更多的信息.
cache写策略:
写直达:信息被同时写到cache块和更低一层存储器中
写回法:信息只被写到cache块,只有cache中的该块被替换出去时,信息才会被写回主存中.
重写脏位:
一个块是脏的(在cache中被修改过)
干净的(在cache中没有被修改),如果是干净的,则在下层存储器中与cache包含的信息相同,因此不必被写回.
优点:
写回法:写操作与cache存储器的速度是一致的,而且对于同一块的多次操作仅需要对下一层存储器进行一次操作。
写回法需要较小的存储器带宽,对于其他层次的存储器与存储总线的使用较少,节省了功耗,适用于嵌入式应用程序.
写直达法:cache总是干净的,当发生读缺失的时候,无需对下一层存储器进行写操作(相对于写回法)
下一级存储有最新的当前数据副本,简化了数据一致性,数据一致性对于处理器和IO均很重要.
我们需要利用写回法来减少访问存储器的通信量,有希望通过写直达法来保证存储器层次结构中cache和低层存储器的数据一致性.
在写直达法中:
处理器的操作必须等待写操作完成,此时处理器称为写停顿,减少写停顿的策略是写缓存技术,允许处理器把数据写入到缓冲区之后立即继续工作.
写缺失策略:
写分配:写缺失发生时,内存的块被读到cache中,然后执行上个写命中时的操作
不按写分配:写缺失发生时,仅修改低层存储器的该块,而不将该块取到cache中
相关推荐
存储器层次结构是优化计算机性能的关键设计,通过构建一个多层次的存储体系,平衡速度、容量和成本,以满足高效计算的需求。 一、基本概念和主存储器 1. 记忆单元(Cell):存储的基本单位,能够存储0或1,通常由...
计算机组成原理中的存储器层次机构是指计算机系统中的存储器按照不同的层次结构组织和管理的过程。该结构主要包括寄存器、高速缓冲存储器(Cache)、主存储器、辅助存储器等多个层次,每个层次都有其特点和功能。 ...
存储器概述、存储器分类、存储器层次结构、存储系统、虚拟存储系统、主存储器、存储器芯片结构、译码驱动、RAM、ROM、PROM、EPROM、EEPROM、存储器与CPU连接、存储器带宽、汉明码、访存提速措施、多存储体的存储器...
在“多思计算机组成原理实验三 存储器实验.docx”这个实验中,我们将深入探讨计算机系统中的存储器层次结构及其工作原理。实验旨在帮助学生理解存储器在计算机系统中的核心地位,以及如何通过不同类型的存储器来优化...
* 存储器层次结构:CUDA 的存储器层次结构可以分为寄存器、共享存储器、全局存储器和常量存储器四个级别。 * 主机和设备:CUDA 的主机和设备部分负责管理和执行 CUDA 程序。主机是指执行 CUDA 程序的 CPU,而设备是...
存储器组织成一个多级层次结构,从CPU寄存器(高速、小容量)到Cache(次高速、中等容量),再到主存(中速、较大容量),最后是辅助存储器(低速、大容量)。这种层次结构有效地平衡了速度和容量的需求,优化了系统...
存储层次结构面临四个关键问题:映象规则、查找算法、替换算法和写策略。映象规则决定如何将低层存储的数据映射到高层;查找算法用于在高层存储中定位所需数据;替换算法在失效时选择要替换的块;写策略则涉及数据...
4. **多级缓存**:L1、L2、L3缓存的层次结构及其特点。 5. **伪命中和真实命中的区别**:了解何时会发生伪命中(由于块大小引起的数据不完整读取)和真实命中。 6. **并发和多线程下的缓存一致性**:在多处理器...
1. **层次式存储器配置**:层次式存储器是为了平衡速度、容量和成本之间的矛盾,通过构建不同速度和容量的存储设备(如CPU缓存、主存、硬盘等)形成的层次结构。高速缓存靠近CPU,快速但容量小;主存次之,容量较大...
4. **缓存实验**:学习缓存的工作机制,包括高速缓存(L1, L2, L3)的层次结构,缓存命中率,以及如何优化数据访问速度。可能需要学生分析缓存的性能并设计简单的缓存策略。 5. **内存扩展实验**:介绍如何增加系统...
它的布局结构通常包括四个或六个晶体管,形成一个稳定的存储节点,无需刷新即可保持数据。SRAM适用于需要快速存取且对功耗不敏感的应用,如CPU缓存。 非易失性存储器如闪存,其布局结构采用了浮栅晶体管技术。在浮...
"王道计组第四章错题.pdf" 根据提供的文件信息,我们可以从中...王道计组第四章错题.pdf 主要讲解计算机组成的基本概念、指令系统、存储器层次结构、输入/输出系统等方面的内容,为读者提供了计算机组成的基础知识。
存储器层次化结构旨在解决存储容量、存取速度与成本之间的平衡问题。通过将不同类型的存储器组合起来,形成一个多级存储系统,以满足不同的性能需求。 - **高速缓存(Cache)**:位于CPU和主存之间,用于存储频繁...
存储器的结构层次主要包括缓存-主存层次和主存-辅存层次。缓存-主存层次主要解决的是CPU和主存的速度不匹配的问题。缓存的速度比主存快,因此可以快速地从缓存获取数据,从而提高访问速度。但是因为缓存的容量较小,...
从CPU寄存器到主存,再到硬盘,构成了一种金字塔式的存储器层次结构。数据在层次间流动遵循“局部性原理”,即程序倾向于短时间内重复访问同一区域的数据。 总结,半导体存储器是微机系统中的核心组成部分,其性能...
【微机基本原理第四章存储器】主要涵盖了存储器的多个关键知识点,包括存储器的主要性能指标、存储器的分类、内存的基本组成、存储系统的层次结构、SRAM和DRAM的区别、存储器的接口设计、Cache的工作原理以及虚拟...
1. **内存层次结构**:现代计算机通常采用多级存储体系,包括寄存器、高速缓存(Cache)、主存(RAM)和辅助存储器(硬盘等)。理解各级存储器的速度、容量和成本差异,以及它们如何协同工作以优化访问效率,是学习...
存储单元通常由四个晶体管(MOSFET)和两个交叉耦合的反相器(cross-coupled inverters)组成,形成一个稳定的双稳态电路。这种设计使得数据在电源供电的情况下无需刷新就能保持,因此称为静态存储器。 **二、SRAM...
存储层次中有四个问题需要解决:映像规则、查找算法、替换算法和写策略。映像规则是指把一个块调入高一层存储器时,可以放到哪些位置上。查找算法是指当所要访问的块在高一层存储器中时,如何找到该块。替换算法是指...