打印

cache way 和set的概念不理解

[复制链接]
340|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
第十代火影|  楼主 | 2018-9-10 20:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
way & set
这里将Way解释为一组line的集合,这个说法常见的解释是用于set的。
通常说N-Way组相连,理解为一个set由N个line组成。Way是line的单位名称。

这里将Set解释为每一路的同一line,这个概念没有get到,能不能深入解释下。网上查到的图片
网上也看到一篇跟这里解释类似的更详细的描述:
两路组相连缓存(Two-way set associative cache)
我们依然假设64 Bytes cache size,cache line size是8 Bytes。什么是路(way)的概念。我们将cache平均分成多份,每一份就是一路。因此,两路组相连缓存就是将cache平均分成2份,每份32 Bytes。cache被分成2路,每路包含4行cache line。我们将所有索引一样的cache line组合在一起称之为组。
这里的解释跟我们视频中是一样的。那么这里哪一种解释是正确的呢?
路(way)到底是line的单位名称,还是指一组line呢?
组(set)到底是index相同的lines集合,还是说在cache划分的时候,自然会用中位作为index,所以同一组自然就有了相同的index。
其实,最疑惑的还是,路的概念如果是平分而已,有什么意义呢。拿到一个地址,从Index获取到set,然后用tag找到line。这就结束了,那么way 的概念意义是什么呢??

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

363

主题

363

帖子

0

粉丝