A multiprocessor computer system in which snoop operations of the caches
are synchronized to allow the issuance of a cache operation during a cycle
which is selected based on the particular manner in which the caches have
been synchronized. Each cache controller is aware of when these
synchronized snoop tenures occur, and can target these cycles for certain
types of requests that are sensitive to snooper retries, such as kill-type
operations. The synchronization may set up a priority scheme for systems
with multiple interconnect buses, or may synchronize the refresh cycles of
the DRAM memory of the snooper's directory. In another aspect of the
invention, windows are created during which a directory will not receive
write operations (i.e., the directory is reserved for only read-type
operations). The invention may be implemented in a cache hierarchy which
provides memory arranged in banks, the banks being similarly synchronized.
The invention is not limited to any particular type of instruction, and
the synchronization functionality may be hardware or software
programmable.
Un système informatique de multiprocesseur dans lequel des opérations de snoop des cachettes sont synchronisées pour permettre le établissement d'une opération de cachette pendant un cycle qui est choisi a basé sur la façon particulière de laquelle les cachettes ont été synchronisées. Chaque contrôleur de cachette se rend compte de quand ces tenures synchronisées de snoop se produisent, et peut viser ces cycles pour certains types de demandes qui sont sensibles aux nouvelles tentatives de snooper, telles que le tuer-type opérations. La synchronisation peut installer un arrangement prioritaire pour des systèmes avec les autobus multiples d'interconnexion, ou peut synchroniser les cycles de régénération de la mémoire de DRACHME de l'annuaire des snooper. Dans un autre aspect de l'invention, on crée des fenêtres pendant lesquelles un annuaire ne recevra pas écrivent des opérations (c.-à-d., l'annuaire est réservé pour seulement le lire-type opérations). L'invention peut être mise en application dans une hiérarchie de cachette qui fournit la mémoire disposée aux banques, les banques étant pareillement synchronisées. L'invention n'est limitée à aucun type particulier d'instruction, et la fonctionnalité de synchronisation peut être matériel ou logiciel programmable.