Patent US1361834A successfully refreshed from Google Patents.
Patent EP0709770A2 successfully refreshed from Google Patents.
← Back to Patent Explorer
EP0709770A2 Expired / Lapsed EP ⏱️ 0.0 years remaining

Apparatus to control load/store instructions

Assignee: International Business Machines Corp
•
Filing: 1995-09-22
•
Granted: —
•
Expires: 2015-09-22
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An apparatus to dynamically controls the out-of-order execution of load/store instructions by detecting a store violation condition and avoiding the penalty of a pipeline recovery process. The apparatus permits a load and store instruction to issue and execute out of order and incorporates a unique store barrier cache which is used to dynamically predict whether or not a store violation condition is likely to occur and, if so, to restrict the issue of instructions to the load/store unit until the store instruction has been executed and it is once again safe to proceed with out-of-order execution. The method implemented by the apparatus delivers performance within one percent of theoretically possible with apriori knowledge of load and store addresses.

Inventors

  • 👤 James Henry Hesson
  • 👤 Jay Leblanc
  • 👤 Stephan J. Ciavaglia

Bibliographic Details

Application Number —
Jurisdiction EP
Data Source google_patents
Last Synchronized 2026-10-29 15:22
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/38; G06F9/3824; G06F9/383; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0875; G06F9/3834; G06F9/3836; G06F9/3838; G06F9/384; G06F9/3854; G06F9/3858

Claims Analysis

Total Claims: 7
Claim 1
Independent Claim 97 words
A pipelined processor capable of issuing and executing multiple instructions out-of-order every machine clock cycle comprising: control means for issuing and dispatching a load and store instruction out of order; execution means for executing a load and store instruction dispatched by the control means; and a store barrier cache accessed by the control means to dynamically predict whether or not a store violation condition is likely to occur and, if so, said control means restricting the issue of instructions until the store instruction has been executed and it is once again safe to proceed with out-of-order execution.
Claim 2
Dependent Claim 87 words
The pipelined processor according to claim 1 wherein said control means comprises a rename unit controlling dispatch of instructions, issuing instructions to execution units, and writeback of instructions, said rename unit performing source operand dependency analysis, providing instruction scheduling wherein oldest instructions are executed first, enabling any execution or memory access instruction to execute out-of-order, and rapid pipeline recovery due to a mispredicted branch or a store load conflict, the store barrier cache being accessed by the rename unit as instructions are fetched from an instruction cache.
Claim 3
Dependent Claim 57 words
The pipelined processor according to claim 2 wherein the store barrier cache contains history bits that are used to predict a store load conflict, the rename unit marking a store instruction during a dispatch pipeline stage so that no loads in program order are permitted to execute ahead of the store that is predicted to be violated.
Claim 4
Dependent Claim 253 words
A pipelined processor capable of dispatching, issuing and executing multiple instructions in a single processor cycle comprising: a plurality of function units, including a load/store function unit, for executing pipelined instructions; an instruction cache for storing instructions to be executed by said function units; an instruction fetch and dispatch unit connected to said instruction cache for accessing said instructions and dispatching the instructions to the function units for execution; a data cache for storing data to be operated on by said function units when executing said instructions, said data cache being connected to said load/store function unit to supply data to said function units for the execution of said instructions; a completion buffer connected to said function units for storing results from the execution of said instructions; a rename unit connected to said instruction fetch and dispatch unit for maintaining a stack order of most recently dispatched to least recently dispatched instruction and controlling the dispatch of instructions in order; and apparatus to dynamically control the out-of-order execution of load/store instructions in the processor, said apparatus including a store barrier cache storing data used to predict whether or not a store violation is likely to occur and, if so, said apparatus setting a control bit in the rename unit to indicate that a store violation condition has been predicted so as to restrict the issue of instructions to the load/store function unit to program order until the store instruction has been executed and it is once again safe to proceed with out-of-order execution.
Claim 5
Dependent Claim 32 words
The pipelined processor recited in claim 4 wherein said store barrier cache stores history bits for virtual addresses to record a state of a persistence condition for each cache store barrier entry.
Claim 6
Independent Claim 85 words
A method of issuing and executing instructions out-of-order in a pipelined microprocessor in a single processor cycle comprising the steps of: issuing and dispatching a load and store instruction out of order; executing a dispatched load and store instruction; and accessing a store barrier cache to dynamically predict whether or not a store violation condition is likely to occur and, if so, restricting the issue of instructions until the store instruction has been executed and it is once again safe to proceed with out-of-order execution.
Claim 7
Dependent Claim 56 words
The method according to claim 6 further comprising the steps of: storing history bits in the store barrier cache to predict a store load conflict; and marking a store instruction during a dispatch pipeline stage so that no loads in program order are permitted to execute ahead of the store that is predicted to be violated.

References Cited (Backward Citations)

No citation records indexed.

USPTO Annuity & Maintenance Windows

Maintenance schedule is calculated for granted US utility patents.

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag