「精华」什么是CPU中的Cache及其结构介绍?


一、什么是CPU中的Cache及其结构介绍?

Cache是CPU中高速缓存的一种,用于存储最近经常访的数据和指令,以提高CPU的运行速度。


Cache通常由组成L1Cache、L2Cache和L3Cache。这缓存的容量逐步增大,访速度逐步下降,成本逐步增加。


1-L1CacheL1Cache是位于CPU核心内部的缓存,与CPU核心紧密结合。通常分为L1指令缓存和L1数据缓存。L1ICache存储指令,L1DCache存储数据。由于L1Cache与CPU核心紧密结合,访速度非常快,但容量有限,一般为几十到几百KB。


2-L2CacheL2Cache位于CPU核心外部,CPU核心与L2Cache通过高速总线连接。L2Cache的容量比较大,通常为几百KB到几MB。L2Cache也分为L2指令缓存和L2数据缓存,用于存储L1Cache遗漏的数据和指令。


3-L3CacheL3Cache位于多个CPU核心之间,多个CPU核心共享一个L3Cache。其容量较大,一般为几MB到几十MB。L3Cache又分为L3指令缓存和L3数据缓存,用于存储L2Cache遗漏的数据和指令。


Cache的结构通常由Cache存储单元、标记存储单元和替换策略单元组成。Cache存储单元用于存储数据和指令,Tag内存用于存储内存地址和标签信息,替换策略单元用于确定需要替换的Cache行。当CPU需要访数据或指令时,首先会查找高速缓存。如果撞到的话,可以直接取出来。如果未命中,则需要从主存或其他缓存中获取数据,然后将数据存储到缓存中以供下次访。


计算机的存储器由三部分组成随机存储器、只读存储器和高速缓存。内存是计算机的重要组成部分之一。它是与CPU通信的桥梁。计算机中的所有程序都在内存中运行,因此内存的性能对计算机的影响很大。内存也称为内部存储器。其作用是在CPU中暂时存储计算数据,并与硬盘等外部存储器交换数据。


只要计算机在运行,CPU就会将需要计算的数据传输到内存中进行计算。当计算完成后,CPU将结果发送出去。内存的运行也决定了电脑的稳定运行。内存由内存芯片、电路板、金手指等部分组成。


二、计算机(计算机)的外部存储器是什么?

计算机存储器可分为内部存储器和外部存储器。内存是CPU可以直接寻址的存储空间,由半导体器件构成。计算机存储器是一种存储使用半导体、磁性介质和其他技术制成的数据的电子设备。其电子电路中的数据以二进制格式存储,不同存储产品中基本单元的名称也不同。内存使用的特点存取速度快,使用计算程序时,运行软件会先加载到内存中运行计算机。流程Windows操作系统、打字软件、软件等一般都安装在硬盘等外部存储上,但必须调入内存运行才能真正使用其功能。我们通常输入一段文字或者玩。实际上是在内存中进行的。数据产生后,不断地从存储器写入到外部存储器。简单来说软件在使用时,首先会从硬盘转移到内存中使用,使用过程中产生的数据会保存到硬盘中。内部存储器和外部存储器统称为计算机存储器。它们由半导体器件制成,并根据与电源的关系进行分类。易失性存储器是指当电源中断时,存储器中存储的数据就会消失的存储器。又称随机存储器分为动态随机存储器和静态随机存储器。动态随机存储器,英文缩写为DRAM。一般来说,每个单元由晶体管和电容器组成。特点是单元占用资源和空间少,比SRAM慢,需要刷新。一般计算机内存由DRAM组成。在PC上,DRAM以记忆棒的形式出现。DRAM颗粒大多为4位或8位宽,而包含多个颗粒的单个记忆棒的位宽为64位。静态随机存储器,英文缩写为SRAM,一般由6个晶体管组成单元,但最近也出现了由8个晶体管组成的SRAM单元。它的特点是速度高,但单元占用的资源比DRAM多。一般CPU和GPU的缓存都是由SRAM组成。非易失性存储器是指即使电源中断,存储器中存储的数据也不会消失。恢复供电后,即可读取存储器中的数据。也称为只读存储器该存储器的内容在任何情况下都不会改变。计算机和用户只能读取这里存储的指令和使用ROM中存储的数据,但不能更改或存储数据。ROM存储在非易失性芯片上,也就是说即使关机后内存内容仍然可以保存,因此这种存储器多用于存储程序或特定功能的系统程序。例如闪存、磁盘、硬盘、软盘、磁带、3D-xpoint。我们经常谈论固态硬盘和机械硬盘。固态硬盘的读写速度比机械硬盘快很多,但价格也相对贵一些。但当使用固态硬盘作为系统盘时,你会感觉电脑启动和打开软件的速度一般在67秒左右。因为打开系统和打开软件的第一部分就是将硬盘中的系统和软件读取到内存中。读写速度快,体现在开机打开软件时的存储单元转换上。单位是Byte——字节,字之一。一个section等于8个bits——或者bit,1Byte=8bit。对于32位操作系统来说,最多可以使用232个地址,即4GiB。1个汉字占2个字节,1个英文字母占1个字节。十进制和二进制


三、缓存是由双极静态存储器组成的吗?

缓存主要由SRAM半导体芯片组成。


高速缓冲存储器(CacheMemory),也称为高速缓冲存储器,是一种位于CPU和主存DRAM之间的小型但高速的存储器。它通常由SRAM组成。


SRAM,全称静态随机存取存储器,是随机存取存储器的一种。所谓“静态”,是指只要存储器通电,其中存储的数据就可以不断保持。


当然是SRAM。不然怎么降低功耗。


Cache和TLB都是SRAM。只有主存是DRAM


四、缓存的物理位置和功能?

高速缓存是高速缓冲存储器的一种特殊存储子系统,其中复制经常使用的数据以方便快速访。高速缓存由两个基本部分组成标签存储器和数据存储器。标签存储器用于存储Cache的控制位和块地址标签。控制位用于管理Cache的读写操作,块地址标签记录Cache中每个块的地址。这个地址包含了映射到主存的块地址,都对应着Cache中的一条“数据”。该“数据”存储在高速缓存的数据存储器中。CPU读取数据时,首先通过地址总线将物理地址发送到Cache,并与Cache中的块地址标号进行比较。如果匹配,则说明该数据已经存在于Cache中。此时,Cache中相应的数据只需通过数据总线直接传输到CPU即可。但是,如果CPU发送的物理地址无法匹配Cache中的块地址标签,则说明该数据不在Cache中。这时,主存需要将CPU所需的数据地址复制到Cache中,然后将Cache数据传输给CPU。从这个过程我们可以看出,如果CPU读取“命中”,访速度确实可以提高很多,但如果出现“错误”,Cache的存在实际上会减慢CPU的读取速度。因此,采用何种技术和方法来提高读写命中率、降低错误率就成为Cache设计的关键。增加Cache的容量当然可以提高命中率。但由于成本题,Cache不能无限增加。然而,通过使用适当的映射方法和块替换方法可以提高命中率。知识拓展Cache中的映射数据如何与主存中的数据对应。通常有三种映射方法1-直接映射。如果主存上的一个块只能映射到Cache中的特定块,我们称这种映射方式为直接映射。直接映射的访速度最快,但错误率也最高。2-完全映射在这种映射方式中,主存中的块可以映射到Cache中的任意块。当CPU要读取某个块时,Cache会将CPU发送的地址与Cache中的所有地址进行匹配。用于比较的标签。因为是完全比较,访时间最长,但错误率也是最低的。3-组合映射这种映射方法将Cache分成若干页,每个页将具有相同数量的块。主存中的数据块可以映射到Cache中指定页中的任意块。这种映射方法可以看作是直接映射和完全映射之间的折衷,是最高效的映射方法。


五、什么是缓存?二级Cache的作用是什么?

CacheL1Cache-一级缓存,Cache-一级缓存,是CPU的一级缓存,分为数据缓存和指令缓存。


内置L1缓存的容量和结构对CPU的性能影响较大。然而,高速缓冲存储器由静态RAM组成并且结构复杂。当CPUdie面积不能太大时,L1缓存的容量就不够了。可能是做得太大了。一般服务器CPU的L1缓存容量通常为32-256KB。L2Cache-二级缓存,L2Cache-二级缓存,是CPU的二级缓存,分为芯片内部和外部。内部片上二级缓存以与主频相同的速度运行,而外部二级缓存仅以主频的一半运行。二级缓存容量也会影响CPU的性能。原则是越大越好。目前家用CPU最大容量为4MB,而服务器和工作站上CPU的二级缓存高达2MB-4MB,有的高达8MB或19MB。


除非特别注明,本站所有文字均为原创文章,作者:admin

No Comment

留言

电子邮件地址不会被公开。 必填项已用*标注

感谢你的留言。。。