核心考点
直接映射、全相联映射、组相联映射的基本思想、地址划分及优缺点,重点掌握“冲突程度与硬件成本之间的折中”。
参考答案(答题要点)
1.直接映射:主存中每一块只能映射到 Cache 中唯一的一行,映射关系为 Cache行号=主存块号 mod Cache行数。地址通常划分为标记、Cache行号、块内地址。优点是硬件简单、成本低、查找速度快;缺点是冲突概率高,Cache利用率较低。
2.全相联映射:主存中任一块可以映射到 Cache 中任意一行。地址通常划分为标记和块内地址。优点是映射灵活、冲突少、命中率较高;缺点是需要比较所有Cache行的标记,比较器多、硬件成本高,适合容量较小的Cache。
3.组相联映射:将Cache分成若干组,组间采用直接映射,组内采用全相联映射。主存块先映射到唯一的一组,再可放入该组内任意一行。地址通常划分为标记、组号、块内地址。优点是兼顾直接映射的简单和全相联映射的灵活,冲突较少、成本适中,是常用折中方案。
4.三者比较:直接映射冲突最多但硬件最简单;全相联映射冲突最少但硬件最复杂;组相联映射介于两者之间。组相联中每组包含r行时称为r路组相联。
5.总结:判断映射方式看“主存块能放到哪里”:只能放唯一行是直接映射,可放任意行是全相联,先定组再组内任意是组相联。地址划分要抓住“标记、行号或组号、块内地址”。
易错提醒
直接映射不是“主存块号等于Cache行号”,而是取模映射。全相联映射地址中没有Cache行号或组号,只有标记和块内地址。组相联映射是“组间直接、组内全相联”,不要说反。冲突概率与硬件成本通常成反比,组相联是折中方案。
今日小测
某Cache采用4路组相联映射,其含义是什么?
答案:Cache分成若干组,每组有4行;主存块映射到唯一一组后,可放入该组内4行中的任意一行。
【28考研辅导课程推荐】:28考研集训课程,VIP领学计划,28考研VIP全科定制套餐(公共课VIP+专业课1对1) , 这些课程中都会配有内部讲义以及辅导书和资料,同时会有教研教辅双师模式对大家进行教学以及督学,并配有24小时答疑和模拟测试等,可直接咨询在线客服老师领取大额优惠券。
热门下载
资料下载
院校解析
真题解析
考研数学
考研英语
考研政治
考研备考