所以我试图理解教师给出的家庭作业问题而且我老老实实地丢失了 - 我理解了直写/回写等概念,但我不能这样做弄清楚有效CPI所需的实际计算,有谁可以帮我一把? (问题如下:
下表提供了a的缓存统计信息 特别节目。众所周知,基础CPI(没有缓存 错过)是1.众所周知,内存总线带宽( 在缓存和内存之间传输数据的带宽是每个4个字节 循环,在数据之前发送地址需要一个周期 传递。存储器花费10个周期来存储来自总线或提取的数据 数据到公交车。内存和总线使用的时钟速率是四分之一 CPU时钟频率。
每1000条指令读取数据:100
每1000条指令写入数据:150
指令缓存未命中率:0.4%
数据缓存缺失率:3%
块大小(以字节为单位):32
答案 0 :(得分:1)
有效CPI是基本CPU加上缓存未命中的CPI贡献。
高速缓存未命中CPI是指令高速缓存CPI和数据高速缓存CPI的总和。
缓存未命中成本是读取或写入内存的成本,因此我们需要这样做。
总线周期的成本为1(对于地址)加10(存储器忙时)+ 8(32字节块大小除以4字节/周期)= 19个周期。将此乘以4可获得CPU周期。总计是76个CPU周期。
因此,I缓存未命中的成本是.004 * 76 = .304个周期。
D缓存未命中的成本是(.10 + .15)* .03 * 76 = .57周期
因此有效CPI为1 + .304 + .57 = 1.874个周期。