您当前位置:首页-技术内幕-详情

为什么CPU缓存这么小?

编辑:网友投稿来源:互联网整理更新时间:2022-06-23 10:24:52

缓存和RAM(随机访问存储器)在概念上基本上是相同的,它们存储二进制数据。不同之处在于,缓存是一种非常高速的内存,专门用于使较慢的主存RAM(实际上是大多数计算机中的DRAM)运行得几乎与缓存内存一样快。

但现在让我们接受它确实使主存运行得更快,并关注为什么我们不能使它像主存一样大。

为什么CPU缓存这么小

为了最大程度地提高速度,CPU的缓存必须位于CPU芯片内部。

一旦缓存是CPU外部的,它就必须通过I/O连接与CPU进行通信。I/O连接需要内部(包括cpu在内的任何芯片)的I/O缓冲区来连接外部连接,它们的运行速度比内部的要慢得多。虽然外部缓存可能会提高一些速度,但在CPU芯片中,它会运行得非常快。(在80486DX和奔腾时代早期,大约在20世纪90年代早期到2000年,有一些外部缓存,而没有内部缓存)

高速缓存是由静态RAM (SRAM)制成的。SRAM大约是6倍大,通常使用6个MOSFET晶体管为每个存储位,而使用完全相同大小的内存使用动态RAM (DRAM),使用单个MOSFET晶体管和一个小电容为每个存储位。除了SRAM占用更多空间之外,它还消耗了更多的能量。功耗的增加是因为它使用了更多的晶体管,并且与外部存储器相比运行速度非常快。mosfet开关越快,消耗的能量就越多。巨大的力量来自…不,不是很大的责任,而是更多的压力!

CPU在芯片尺寸上有制造限制。带有CPU电路的芯片的尺寸比它的封装小得多,有很多空间专门用于连接的电线。您可以将模具做大(对于相同的连接,封装仍然需要更大),但收益率(工作的百分比)会下降很多。

而且,CPU芯片的大小大约是内存棒上4(或8)个部件中的1个的大小。想象一下,你想把内存棒的每个部件都塞进CPU里,你可能有2或4个内存棒。没有足够的空间!

我们有一个缓存,我们想要更大,但空间有限。我们拥有的缓存越多,CPU就会从高速缓存中获得越高的温度。CPU的散热速度不够快,所以CPU会过热而死。所以我们必须谨慎地保持平衡。

当你增加更多的缓存内存时,你不能让所有的内存都接近使用缓存的CPU部分。

因此,额外的距离转化为额外的时间,让信号传播到需要它的地方。在真空中,光速为1英尺/纳秒。硅芯片上的电流速度约为光速的1/3,即每纳秒4英寸。如果你的运行频率是4 Ghz,那么每个时钟大约是1英寸。1英寸并不是很长,因为在集成电路(IC)上信号不一定是直线的。想象一下从纽约市的一个地方到另一个地方,到处都是路障。

当你以这样高的速度跑步时,这个时间就变得至关重要。这也是限制cpu和缓存内存超过5 Ghz速度的原因。此外,随着我们变得越来越小,我们正在接近电子的量子尺寸世界,在10纳米的制造尺寸下,可能无法在3纳米下工作,这需要大量的调整或全新的技术。

对于那些认为我们可以通过在CPU上面建立垂直层来获得更多的缓存内存的人来说,答案是肯定的,这是可以做到的(在各种各样的闪存和ssd中完成)。然而,每一层都是内部其他层的绝缘层,同样,你无法摆脱热量,CPU会过热而死!这也是一个非常谨慎的平衡。

因此,为了获得所有主存的最佳有效速度,我们使用多级缓存方案。最小的缓存(称为第1级)是离处理器的重要部分最近的,每增加一级会变得更大一些,但更远一些(因此速度会慢一些)。最后一个内部缓存到CPU外部访问主存。因此,如果我们正确地使用最佳大小和层数进行设计,主存的有效速度将接近最小和最快的缓存的速度,并且我们不会使CPU过热(使用适当的冷却)。RAM使用一个程序,作为ssd和hdd的缓存,它们也有自己的缓存。
D相关下载
Z最新攻略更多+
热门文章更多+
近期大作更多+