Method and apparatus for using a non-committing data cache to facilitate speculative execution

   
   

One embodiment of the present invention provides a system that facilitates speculative execution of instructions within a computer system. Upon encountering a stall during execution of an instruction stream, the system synchronizes a cache containing data that is being operated on by the instruction stream. Next, the system configures the cache so that the cache operates as before except that changes to cache lines are not propagated to lower levels of the memory system. The system then speculatively executes a subsequent portion of the instruction stream without waiting for the event that caused the stall to be resolved. In this way, the speculative execution can only change data within the cache, and these changes are not propagated to lower levels of the memory system unless a subsequent commit operation takes place.

Eine Verkörperung der anwesenden Erfindung liefert ein System, das spekulative Durchführung von Anweisungen innerhalb eines Computersystems erleichtert. Nach dem Antreffen eines Stalls während der Durchführung eines Anweisung Stromes, synchronisiert das System einen Pufferspeicher, der Daten enthält, die an durch den Anweisung Strom bearbeitet wird. Zunächst baut das System den Pufferspeicher zusammen, damit der Pufferspeicher wie funktioniert, bevor außer daß Änderungen an den Pufferspeicherlinien nicht an den untereren Niveaus des Gedächtnissystems fortgepflanzt werden. Das System dann führt spekulativ einen folgenden Teil des Anweisung Stromes durch, ohne den Fall zu warten, der den Stall veranließ behoben zu werden. Auf diese Art kann die spekulative Durchführung Daten innerhalb des Pufferspeichers nur ändern, und diese Änderungen werden nicht an den untereren Niveaus des Gedächtnissystems fortgepflanzt, es sei denn ein folgendes Betrieb stattfindet festlegen.

 
Web www.patentalert.com

< Apparatus and method for providing simultaneous local and global addressing with hardware address translation

< Semiconductor device manufacturing line

> Method and apparatus for optimizing load memory accesses

> System and method for monitoring unaligned memory accesses

~ 00123