讨论计算机体系结构中的集合关联映射?


集合关联映射通过将高速缓存的行排列成集合,结合了直接映射和全关联映射。使用直接映射方案保持集合的持久性。但是,每个集合内的行被视为一个小的全关联高速缓存,任何可以保存在集合中的块都可以存储到集合内的任何行。

该图使用一个每组包含四行的示例高速缓存表示此排列。

包含k行/组的集合关联高速缓存被称为k路集合关联高速缓存。由于映射方法只使用内存地址(就像直接映射一样),因此集合中包含的行数应类似于2的整数次幂,例如2、4、8、16等。

示例 - 考虑一个具有29 = 512行的高速缓存,一个内存块包含23 = 8个字,并且完整的内存空间包含230 = 1G个字。在直接映射方案中,这可以为标记留下30 – 9 – 3 = 18位。

通过从直接映射转换为每组两行的集合关联映射,获得的集合数量等于行数的一半。如果高速缓存有512行,我们可以得到256个每组两行的集合,这需要8位内存地址来识别集合。

这可以为标记留下30 – 8 – 3 = 19位。通过转换为每组四行,集合数量减少到128个,需要7位来识别集合,20位用于标记。

更新于:2021年7月27日

13K+ 次查看

启动你的职业生涯

通过完成课程获得认证

开始学习
广告