请问关于计算机组成原理cache计算的有关问题

请教关于计算机组成原理cache计算的问题
假设cache的一个字块的大小为32位,数据总线的宽度为32位,主存传送4个字节的数据用时30ns。cache的任一字块被换出前至少它已被写过一次。写策略可以回写式和写直达式。请问当一个cache字块被换出前被改写的平均次数超过多少次时,采用回写式比写直达式更有效。求大神指导解体方法。谢谢大侠啦,答后给分!
------解决思路----------------------
引用:
Quote: 引用:

按照楼主后来修改的题目,cache块大小32字节,包含8个字,最差的情况下,8次写每次写都其中一个字,这样回写到主存的时候要写全部8个字,确实需要30x8=240ns,所以cache块大于8次写就可以保证WB的效率高于WT。

谢谢您,我基本弄懂了这些原理了。
还有,我对这题问句那一句的理解,也有点不解,“请问当一个cache字块被换出前被改写的平均次数超过多少次时”
这里平均被改写的次数,是指每个字的平均次数,还是对整个块来讲?
如果对整个块来讲,那就是    8次修改的字/每个字块包含的8个字=1次?
另外,再请教一下,cache的里说的一行,就是这里的一个字吗?


按他的意思,应该是整个块,只要其中任意一个字被写一次,就算一次。如果只是其中一个特定字被改写,那WB的效率会更高。
cache的里说的一行,cache line,就是指一个cache块。

------解决思路----------------------
WT 一次一般按数据总线宽度来算,也就是写 4 个字节的时间(假设为单位时间), WB 数据赃要换出内存,是按 cache line 的长度来计算,也就是 32 个字节,每次传输 4 字节,需要 8 个单位时间,也就是,也就是如果要换出,就要消耗 8 个单位时间,那么结论很简单了,如果一个 cache 被换出前,被改写超过 8 次时,就会比 WT 的效率更高,这也是被一个 cache 被频繁访问,采用 WB 可以提高效率的原因。虽不严谨,但大致是这样的。