Patent USRE28064E successfully refreshed from Google Patents.
← Back to Patent Explorer
US5151981A Expired / Lapsed US ⏱️ 0.0 years remaining

Instruction sampling instrumentation

Assignee: International Business Machines Corp
•
Filing: 1990-07-13
•
Granted: 1992-09-29
•
Expires: 2010-07-13
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system and method for instrumenting the execution of instructions in an out-of-sequence execution machine. Instructions tagged with a preselected instruction identification number (IID) are identified. When an instruction having the preselected IID is encountered, information associated with that instruction is saved as the out-of-sequence execution proceeds. If the instruction completes, the information is stored as a single instrumentation entry in a memory array. If the instruction does not complete, the information is disposed of. The process id repeated for each instruction having the preselected IID until the memory array is full. The storage of instruction information in the memory can be further conditioned on the occurrence of a cache miss or other system conditions.

Inventors

  • 👤 Douglas W. Westcott
  • 👤 Valerie White

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-25 14:28
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/30; G06F11/34; G06F11/3466; G06F11/348

Claims Analysis

Total Claims: 11
Claim 1
Independent Claim 178 words
An apparatus for monitoring execution of instructions in an out-of-sequence execution machine of a type that tags each instruction in an execution pipeline with an instruction identification number, comprising: a memory; first detection means for detection processing by said machine, of an instruction having a preselected instruction identification number; temporary storage for capturing data associated with the processing of said instruction having said preselected instruction identification number, said temporary storage means being in communication with and responsive to said first detection means; second detecting means for detecting a signal from said machine indicating that said machine has completed execution of said instruction having said preselected instruction identification number; and trigger means, in communication with said second detecting means, said temporary storage means and said memory, for causing said data captured in said temporary storage means to be stored in said memory responsive to completion of execution of said instruction having said preselected instruction identification number, wherein, only data associated with processing of completed ones of said instructions having said preselected instruction identification number is captured in said memory.
Claim 2
Independent Claim 178 words
An apparatus for monitoring execution of instructions in an out-of-sequence execution machine of a type that tags each instruction in an execution pipeline with an instruction identification number, comprising: a memory; first detection means for detection processing by said machine, of an instruction having a preselected instruction identification number; temporary storage for capturing data associated with the processing of said instruction having said preselected instruction identification number, said temporary storage means being in communication with and responsive to said first detection means; second detecting means for detecting a signal from said machine indicating that said machine has completed execution of said instruction having said preselected instruction identification number; and trigger means, in communication with said second detecting means, said temporary storage means and said memory, for causing said data captured in said temporary storage means to be stored in said memory responsive to completion of execution of said instruction having said preselected instruction identification number, wherein, only data associated with processing of completed ones of said instructions having said preselected instruction identification number is captured in said memory.
Claim 3
Dependent Claim 113 words
The apparatus of claim 1 wherein said memory comprises two independently addressable sections, and further comprising: a command decoder; first address generator means for generating a write address for said memory; first address generator means for generating a read address for said memory in response to a decoded command; and multiplexor means, responsive to said decoded command for reading a selected portion of a data entry at said read address; said multiplexor means being in communication with said memory and said command decoder; said first and second address generator means being in communication with said memory through a command data path; said second address generator means being in communication with said command decoder.
Claim 4
Independent Claim 229 words
An apparatus for monitoring execution of instructions in and out-of sequence execution central processor, comprising: a memory; a plurality of registers coupled to said memory and disposed to receive machine signals from the central processor, each of said registers being clocked by a validity signal indicating that said machine signals received by said register having occurred during processing of an instruction having a preselected instruction identity number; sampling pulse trigger logic in communication with said central processor and disposed to receive a completion signal from the central processor indicating that said central processor has completed execution of said instruction having said preselected instruction identity number, said sampling pulse trigger logic comprising, (a) means for receiving data indicating an occurrence of a plurality of events in said central processor; (b) means for selecting any of said events; (c) means for generating a sampling pulse when said completion signal has been received and said selected event has occurred; memory control means in communication with said memory and said sampling pulse trigger logic, for causing said contents of said registers to be written to said memory responsive to a sampling pulse from said sampling pulse trigger logic, wherein aid machine signals received by said registers are transferred to said memory only in condition that said instruction having said preselected instruction identity number has completed execution and that said selected event has occurred.
Claim 5
Independent Claim 229 words
An apparatus for monitoring execution of instructions in and out-of sequence execution central processor, comprising: a memory; a plurality of registers coupled to said memory and disposed to receive machine signals from the central processor, each of said registers being clocked by a validity signal indicating that said machine signals received by said register having occurred during processing of an instruction having a preselected instruction identity number; sampling pulse trigger logic in communication with said central processor and disposed to receive a completion signal from the central processor indicating that said central processor has completed execution of said instruction having said preselected instruction identity number, said sampling pulse trigger logic comprising, (a) means for receiving data indicating an occurrence of a plurality of events in said central processor; (b) means for selecting any of said events; (c) means for generating a sampling pulse when said completion signal has been received and said selected event has occurred; memory control means in communication with said memory and said sampling pulse trigger logic, for causing said contents of said registers to be written to said memory responsive to a sampling pulse from said sampling pulse trigger logic, wherein aid machine signals received by said registers are transferred to said memory only in condition that said instruction having said preselected instruction identity number has completed execution and that said selected event has occurred.
Claim 6
Independent Claim 144 words
A method for monitoring execution of instructions in an out-of-sequence execution machine of a type that tags each instruction in an execution pipeline with an instruction identification number, comprising the steps of: (a) detecting means for detecting processing by said machine, of an instruction tagged with a preselected one of said instruction identification numbers; (b) capturing data associated with the processing of said instruction having said preselected one of said instruction identification numbers detected instep (a); (c) detecting a signal from sad machine indicating that said machine has completed execution of said instruction having said preselected one of said instruction identification numbers detected in step (a); and (d) storing said data captured in step (b) in a table, on condition that said completion of execution of said instruction having said preselected one of said instruction identification numbers is detected is detected in step (c).
Claim 7
Independent Claim 144 words
A method for monitoring execution of instructions in an out-of-sequence execution machine of a type that tags each instruction in an execution pipeline with an instruction identification number, comprising the steps of: (a) detecting means for detecting processing by said machine, of an instruction tagged with a preselected one of said instruction identification numbers; (b) capturing data associated with the processing of said instruction having said preselected one of said instruction identification numbers detected instep (a); (c) detecting a signal from sad machine indicating that said machine has completed execution of said instruction having said preselected one of said instruction identification numbers detected in step (a); and (d) storing said data captured in step (b) in a table, on condition that said completion of execution of said instruction having said preselected one of said instruction identification numbers is detected is detected in step (c).
Claim 8
Dependent Claim 41 words
The method of claim 4 further comprising the step of: (e) detecting an occurrence of a preselected event in said machine, wherein said storing of step (d) is further conditioned on the occurrence of said preselected event detected by step (e).
Claim 9
Independent Claim 178 words
A method for monitoring execution of instructions in an out-of-sequence execution machine of a type in which each instruction in an execution pipeline is tagged with a sequentially assigned instruction identification number, comprising the steps of: (a) detecting means for detecting processing by said machine, of an instruction tagged with a preselected one of said instruction identification numbers; (b) capturing data associated with the processing of said instruction having said preselected one of said instruction identification numbers detected in step (a); (c) detecting a signal from said machine indicating that said machine has completed execution of said instruction having said preselected one of said instruction identification numbers detected in step (a); (d) discarding said data captured in step (b) if completion of execution of said instruction having said preselected one of said instruction identification numbers is not detected in step (c); and, (e) storing said data captured in step (b) in a table, on condition that said completion of execution of said instruction having said said preselected one of said instruction identification numbers is detected in step (c).
Claim 10
Independent Claim 178 words
A method for monitoring execution of instructions in an out-of-sequence execution machine of a type in which each instruction in an execution pipeline is tagged with a sequentially assigned instruction identification number, comprising the steps of: (a) detecting means for detecting processing by said machine, of an instruction tagged with a preselected one of said instruction identification numbers; (b) capturing data associated with the processing of said instruction having said preselected one of said instruction identification numbers detected in step (a); (c) detecting a signal from said machine indicating that said machine has completed execution of said instruction having said preselected one of said instruction identification numbers detected in step (a); (d) discarding said data captured in step (b) if completion of execution of said instruction having said preselected one of said instruction identification numbers is not detected in step (c); and, (e) storing said data captured in step (b) in a table, on condition that said completion of execution of said instruction having said said preselected one of said instruction identification numbers is detected in step (c).
Claim 11
Dependent Claim 43 words
The method of claim 6 further comprising the step of: (f) detecting an occurrence of a preselected system condition in said machine, wherein said storing of step (e) is further conditioned on the occurrence of said preselected system event detected by step (f).

References Cited (Backward Citations)

US3736566A Cited
US3771138A Cited
US4590550A Cited
US4598364A Cited
US4707834A Cited
US4722049A Cited
US4879646A Cited
US4821178A Cited
US4991090A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1995-09-29 1996-03-30 1996-09-29 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1999-09-29 2000-03-30 2000-09-29 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2003-09-29 2004-03-30 2004-09-29 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag