Advanced Computer
Architecture, Imperial College 2001
The Berkeley"
Protocol
Four cache line states:
Broadcast invalidations on bus unless cache line is exclusively owned (DIRTY)
Write hit:
No action if line is DIRTY
If VALID or SHARED-DIRTY,
an invalidation is sent, and
the local state set to DIRTY
Write miss:
Line comes from owner (as with read miss).
All other copies set to INVALID, and line in requesting cache is set to DIRTY
Read miss:
If another cache has the line in SHARED-DIRTY or DIRTY,
it is supplied
changing state to SHARED-DIRTY
Otherwise
the line comes from memory. The state of the
line is set to VALID
INVALID
VALID : clean, potentially shared,
unowned
SHARED-DIRTY : modified, possibly shared, owned
DIRTY : modified, only copy, owned