cache的工作原理是什么?
cpu工作速度很高,但内存访问速度相对较低,导致cpu等待,降低了处理速度,浪费了cpu的能力。cache用于缓存cpu和内存。cache的工作原理是基于程序访问的局部性。对大量典型程序的分析结果表明,在较短的时间间隔内,程序生成的地址往往集中在内存逻辑地址空间的一小部分。指令地址的分布是连续的,循环程序段和子程序段需要重复执行。因此,对这些地址的访问自然倾向于在时间上集中。数据分布的集中化趋势不如指令的集中化趋势明显,但阵列的存储和存取以及工作单元的选择可以使存储地址相对集中。这种频繁访问本地范围内的内存地址而很少访问本地范围外的地址的现象称为程序访问的局部性。根据程序局部性原理,可以在主存储器和cpu的通用寄存器之间设置一个容量相对较小的高速存储器,将主存储器中执行的指令地址附近的一些指令或数据传送到存储器中,供cpu使用一段时间。这对提高程序的运行速度有很大的作用。这种在主存和cpu之间的高速小容量内存称为高速缓存。基于这一原理,系统不断地将与当前指令集相关联的一个小指令集从内存中读取到高速缓存中,然后高速传输到cpu,从而实现速度匹配。当cpu从内存中请求数据时,它通常首先访问缓存。由于局部性原则不能保证请求的数据在缓存中是100%,因此存在命中率。也就是说,cpu能够在任何时候从高速缓存可靠地获取数据的概率。命中率越高,正确获取数据就越可靠。一般来说,cache的存储容量要比主存小得多,但不能太小。太小会导致太低的命中率,没有必要太大。过大不仅会增加成本,而且当容量超过一定值时,命中率也不会随着容量的增加而显著增加。只要缓存空间和主存空间在一定范围内保持适当比例的映射关系,缓存命中率还是相当高的。一般来说,缓存与内存的空间比是4:1000,即128kbcache可以映射32mb内存;256kbcache可以映射64mb内存。在这种情况下,命中率超过90%。至于丢失的数据,cpu必须直接从内存中获取。同时,它也被复制到缓存中,以便下次访问。
高速缓存的工作原理是什么?
根据程序局部性原理,高速缓存可以在主存和cpu通用寄存器之间设置一个容量相对较小的高速存储器,并将正在执行的指令地址附近的一些指令或数据从主存传输到该存储器中,供cpu在一段时间内使用,可以相对提高cpu的运行速度。它介于主存储器和cpu之间,这种高速小容量存储器称为高速缓存。随着cpu的速度越来越快,缓存变得越来越重要。有一级,二级和三级。此外,硬盘中还有缓存。工作原理相同。我希望它能帮助你。
原文标题:高速缓存的工作原理 Cache的工作原理是什么?,如若转载,请注明出处:https://www.saibowen.com/wenda/23875.html
免责声明:此资讯系转载自合作媒体或互联网其它网站,「赛伯温」登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,文章内容仅供参考。