A set of local invalidation buses for a highly scalable shared cache memory
hierarchy is disclosed. A symmetric multiprocessor data processing system
includes multiple processing units. Each of the processing units is
associated with a level one cache memory. All the level one cache memories
are associated with an imprecisely inclusive level two cache memory. In
addition, a group of local invalidation buses is connected between all the
level one cache memories and the level two cache memory. The imprecisely
inclusive level two cache memory includes a tracking means for imprecisely
tracking cache line inclusivity of the level one cache memories. Thus, the
level two cache memory does not have dedicated inclusivity bits for
tracking the cache line inclusivity of each of the associated level one
cache memories. The tracking means includes a last_processor_to_store
field and a more_than_two_loads field per cache line. When the
more_than_two_loads field is asserted, except for a specific cache line in
the level one cache memory associated with the processor indicated in the
last_processor_to_store field, all cache lines within the level one cache
memories that shared identical information with that specific cache line
are invalidated via the local invalidation buses connected between all the
level one cache memories and the level two cache memory.
Un insieme dei bus locali di invalidation per una gerarchia comune altamente scalable di antememoria è rilevato. Un sistema dell'elaborazione dei dati del multiprocessore simmetrico include le unità di elaborazione multiple. Ciascuna delle unità di elaborazione è associata con un'antememoria del Livello uno. Tutte le antememorie un Livelle sono associate con un'antememoria impreciso compresa del Livello due. In più, un gruppo dei bus locali di invalidation è collegato fra tutte le antememorie un Livelle e l'antememoria Livella due. L'antememoria impreciso compresa del Livello due include i mezzi d'inseguimento per impreciso l'inseguimento della linea inclusivity del nascondiglio delle antememorie un Livelle. Quindi, l'antememoria Livella due non ha dedicato le punte di inclusivity per l'inseguimento della linea inclusivity del nascondiglio di ciascuna delle antememorie collegate del Livello uno. Il mezzo d'inseguimento include un campo del last_processor_to_store e un campo dei more_than_two_loads per la linea del nascondiglio. Quando il campo dei more_than_two_loads è asserito, tranne una linea specifica del nascondiglio nell'un'antememoria Livella connessa con il processor indicato nel campo del last_processor_to_store, tutte le linee del nascondiglio all'interno delle antememorie un Livelle che hanno ripartito le informazioni identiche con quella linea specifica del nascondiglio sono invalidate via i bus locali di invalidation collegati fra tutte le antememorie un Livelle e l'antememoria Livella due.