计算机系统结构作业2:Cache映像与性能比较

需积分: 0 1 下载量 23 浏览量 更新于2024-08-05 收藏 482KB PDF 举报
本题主要涉及计算机系统结构中的缓存(Cache)设计与性能分析,包括不同映像方式下的Cache组织、命中率计算以及分离Cache与混合Cache的比较。 首先,关于"Cache-主存"层次的设计,题目给出了三种不同的映像方式: 1. **全相联**:全相联Cache意味着每个主存块都有自己的直接映射到Cache块,由于全相联无索引映射,所以当访存地址为5时,因为无需索引计算,直接访问对应的Cache块,但无图示示例。 2. **组相联**:组相联中,主存块被分为若干组,每组有两个Cache块。对于地址5,需要通过模运算找到对应的组号,即Index = (5)10 mod (2)10 = (1)2。这表示第1组,组内有2个块,但具体到哪个块则依赖于更高的地址位。 3. **直接映像**:直接映像下,每个主存块对应唯一的Cache块。同样以地址5为例,Index = (5)10 mod (4)10 = (1)2,表明访问第1个Cache块。 接下来,题目假设指令Cache的命中率为75%,数据Cache的命中率为25%,并给出了各自的失效率和访问开销。指令Cache的32KB容量在分离Cache中的失效率为0.39%,数据Cache为4.82%,混合Cache的总失效率为1.35%。采用写直达策略和写缓冲器后,分离Cache的平均访存时间为75% * (命中时间 + 0.39% * 50) + 25% * (命中时间 + 4.82% * 50),混合Cache的平均访存时间为75% * (命中时间 + 1.35% * 50) + 25% * (1 + 1 + 1.35% * 50)。 在计算混合Cache的平均访存时间时,关键在于是否所有指令都考虑了额外的命中时间增加。根据题目描述,应该是只有数据Cache部分的25%指令访问会增加1个时钟周期,而指令Cache的访问不会受到影响。因此,混合Cache的平均访存时间较低,为1.35%。 知识点包括:Cache映像方式(全相联、组相联、直接映像)、命中率与失效率计算、分离Cache和混合Cache的失效率对比以及平均访存时间的计算。理解这些概念对于优化计算机系统性能至关重要,尤其是在设计和评估现代计算机架构时。