- CPU connected to 2 caches (I cache and D cache) which are further connected to L2 cache and then Main Memory
- Referred-word-first read policy => no extra time to get the word from the fetched block
- In write-back policy ,a block is replaced if it is dirty (dirty bit 1) and is written back to main memory and in question dirty bit is 0 for all blocks so we do not care for writes.
- Direct mapped caches : Not relevant
T_avg = 60% x T_Instr + 40% x T_operand
T_Instr = Hit ratio I cache x Time taken to access I cache + Miss ratio of I cache x Hit ratio L2 x Time taken to access L2 + Miss ratio of I cache x Miss ratio of L2 x Time taken to access Main memory
= (0.8*0.2) + (1-0.8)(0.9)(2+8) + (1-.08)(1-0.9)(2+8+90) = 5.4ns
T_operand = Hit ratio D cache x Time taken to access D cache + Miss ratio of D cache x Hit ratio L2 cache x Time taken to access L2 cache+ Miss ratio of D cache x Miss ratio of L2 cache x Time taken to access Main memory
= (0.9*0.2) + (1-0.9)(0.9)(2+8) + (1-0.9)(1-0.9)(2+8+90) = 3.7 ns
T_avg = (0.6)(5.4) +(0.4)(3.7) => 4.72 ns