A method of extending a cache of a processing unit in a multi-processor computer system, by expanding the prior-art MESI cache-coherency protocol to include an additional cache-entry state corresponding to a most recently accessed state. A value is loaded from system memory into one or more caches of adjacent processing units, and when a requesting processing unit issues an inquiry onto the system bus to read the value, the value is sourced from the cache of the adjacent processing unit containing a copy of the value that was most recently accessed. Each cache has at least one cache line with a block for storing the value, and an indication is provided that a cache line having a block which contains an instruction or data is in a "recently read" state. Each cache entry has three bits to indicate the current state of the cache entry (one of five possible states). Any caches containing a valid copy of the value, other than the cache which contains a copy of the value that was most recently accessed, are assigned a state indicating that they hold the valid copy in a shared state. This protocol allows instructions and data which are shared among several caches to be sourced directly (intervened) by the cache having the most recently accessed copy, without retrieval from system memory (RAM), significantly improving the processing speed of the computer system.

Eine Methode des Verlängerns eines Pufferspeichers einer Verarbeitung Maßeinheit in einem Mehrprozessorsystemcomputersystem, durch die Erweiterung des Vorherigkunst MESI Pufferspeicher-Kohärenz Protokolls, um einen zusätzlichen Pufferspeicher-Eintragung Zustand einzuschließen, der einem vor kurzem erreichten Zustand entspricht. Ein Wert wird vom System Gedächtnis in einen oder mehr Pufferspeicher der angrenzenden Verarbeitung Maßeinheiten geladen, und wenn eine erbittene Verarbeitung Maßeinheit eine Anfrage auf den System Bus herausgibt, um den Wert zu lesen, ist der Wert sourced vom Pufferspeicher der angrenzenden Verarbeitung Maßeinheit, die eine Kopie des Wertes enthält, der vor kurzem erreicht wurde. Jeder Pufferspeicher hat mindestens eine Pufferspeicherlinie mit einem Block für die Speicherung des Wertes, und eine Anzeige ist, vorausgesetzt daß eine Pufferspeicherlinie, die einen Block hat, der eine Anweisung oder Daten enthält, in einem "vor kurzem gelesenen" Zustand ist. Jede Pufferspeichereintragung hat drei Bits, zum der gegenwärtigen Lage der Pufferspeichereintragung (einer von fünf möglichen Zuständen) anzuzeigen. Alle mögliche Pufferspeicher, die eine gültige Kopie des Wertes, anders als den Pufferspeicher enthalten, der eine Kopie des Wertes enthält, der vor kurzem erreicht wurde, einen Zustand werden zugewiesen, der anzeigt, daß sie die gültige Kopie in einem geteilten Zustand halten. Dieses Protokoll erlaubt Anweisungen und Daten, die unter einigen Pufferspeichern geteilt werden, um zu sein, sourced direkt (eingegriffen) durch den Pufferspeicher, der die vor kurzem erreichte Kopie, ohne Wiederherstellung vom System Gedächtnis (RAM) hat und erheblich verbesserten die verarbeitengeschwindigkeit des Computersystems.

 
Web www.patentalert.com

< Interrupt controller

< Application of automation and procedures to enable high-speed recovery and relocation of computer workloads

> Synthesizing the instruction stream executed by a microprocessor from its branch trace data

> Method and apparatus for advancing load operations

~ 00093