Problem 3 Solution
Problem 3 Solution
Figure 2: (H&P Fig. 5.5, page 384) The cache coherence mechanism receives requests from both
the core’s processor and the shared bus and responds to these based on the type of request,
whether it hits or misses in the local cache, and the state of the local cache block specified in
the request.
8
EE282: Computer Systems Architecture Problem Set
Stanford University Spring 2025 SOLUTION
Solution Core 0 read miss, places read miss on bus. Upon receiving message, Core 3 sends
copy of cache block to Core 0. Core 0 writes data to cache and changes AC20’s state to
9
EE282: Computer Systems Architecture Problem Set
Stanford University Spring 2025 SOLUTION
Shared.
C0.B0: (S, AC20, 0020)
Solution Core 0 read miss, address conflict miss, write-back block, places read miss on bus.
Upon receiving bus message, memory updates. Core 0 changes AC30’s state to Shared.
C0.B2: (S, AC30, 0030)
M: AC10 → 0030
Solution Core 3 write hit, place invalidate on bus, and change state to Modified. Upon
receiving bus message, Core 0 invalidates its copy of AC08.
C3.B1: (M, AC08, 0080)
C0.B1: (I, ..., ...)
Solution Core 1 write miss, place write miss on bus. Upon receiving bus message, Core 0
places cache block 2 on bus, write back block to memory, changes from Modified to Invalid.
Now Core 1 receives data and changes block 2 to Modified.
C0.B2: (I, ..., ...)
C1.B2: (M, AC10, 0042)
M: AC10 → 0030
10