请问一级缓存和二级缓存,那个更“贴近”CPU呢?哪个成本更高呢?

来源:百度知道 编辑:UC知道 时间:2024/05/30 00:15:46
请问一级缓存和二级缓存,那个更“贴近”CPU呢?哪个成本更高呢?

谢谢各位。

楼上说的指令发出过程有问题——
指令是直接送出的,无需通过缓存,
缓存只用来读指令、读数据、写数据。

L1 缓存更靠近 CPU 运算核心:
所有的指令都要先经过排序以后送入 L1 指令缓存,组成指令队列等待执行;
所有 正在 或者 将要 使用的数据都尽可能的放在 L1 数据缓存中,
运算核心的数据读写都首先在 L1 数据缓存中完成,
除非 L1 缓存中没有相应的位置,那么才会与 L2 缓存打交道。

L2 缓存不分指令缓存、数据缓存,因为本质上它更接近内存,
是内存的一个小而快的转发区,数据和指令(也是0-1代码)都能放在这里。
以前 L2 缓存和CPU是分开的,现在为了速度才做在 CPU 芯片内部。

L2 缓存与 L1 缓存在基本结构上没有很大区别,都是 SRAM 集成电路,
所以从单位字节的成本上来看差别不大,L1 略贵,主要是控制电路多一些,
但是你要考虑到现在 L1 缓存总共也不过 64KB 或 128KB,
而 L2 缓存都是几MB的,总价格当然是 L2 缓存贵。

一级更贴近CPU
CPU的指令是先通过各个核心传到L1上再在L2 上组合的然后通过前端总线发出的。
接受时翻过来就可以了
没有什么成本高不高是一样的
由于构架的位子不同而不同的 所以无所谓成本高低的
呵呵