Advanced Computer Architecture, Imperial College 2001
22
The job of the cache controller - snooping
•The protocol state transitions are implemented by the cache controller – which “snoops” all the bus traffic
•Transitions are triggered either by
–the bus (Bus invalidate, Bus write miss, Bus read miss)
–The CPU (Read hit, Read miss, Write hit, Write miss)
•
•For every bus transaction, it looks up the directory (cache line state) information for the specified address
–If this processor holds the only valid data (DIRTY), it responds to a “Bus read miss” by providing the data to the requesting CPU
–If the memory copy is out of date, one of the CPUs will have the cache line in the SHARED-DIRTY state (because it updated it last) – so must provide data to requesting CPU
–State transition diagram doesn’t show what happens when a cache line is displaced…
•
•