admin 管理员组

文章数量: 1103806


大家好,我是数字小熊饼干,一个练习时长两年半的ic打工人。我在两年前通过自学跨行社招加入了IC行业。现在我打算将这两年的工作经验和当初面试时最常问的一些问题进行总结,并通过汇总成文章的形式进行输出,相信无论你是在职的还是已经还准备入行,看过之后都会有有一些收获,如果看完后喜欢的话就请关注我吧~谢谢~

在之前的文章里,我们聊到了cache是cpu和主存之间的一道桥梁,用于对数据和指令进行缓存,提升存储器访问速度。本篇文章我们更加深入的聊聊cache的读写机制。

为了提升速度,在soc系统中的cache通常采用多层组织,比如1级、2级和3级cache(可称L1 cache、L2 cache和L3 cache),其中L1 cache读写速度最快,L3 cache读写速度最慢,对于多核处理器而言,其中L1 cache为每个核独享,L2和L3 cache为多个核共享,如下图所示:

一、cache的命中与缺失

cache和主存以块(block)作为它们之间交换数据的最小单位(一个cache块的大小通常为4-128bytes),块里面有若干字(word),cpu进行读写访问是以字为基本单位。

当 CPU 需要访问数据的时候,将数据的地址发送到 cache 和主存,cache 控制逻辑会根据地址判断该数据是否在当前的 cache 中,如果该数据在cache的某一个块中有缓存,则称之为命中(hit),就从 cache 块中对该数据进行相应的读或写操作;如果该数据不存在cache的缓存中,则称之为缺失(miss), cache 也会进行相应的操作,例如如果是读缺失,那么cache控制器会从主存中一次性读取一个cac

本文标签: 存储器 机制 基础 IC Write