← Back to Patent Explorer
US5280593A Expired / Lapsed US ⏱️ 0.0 years remaining

Computer system permitting switching between architected and interpretation instructions in a pipeline by enabling pipeline drain

Assignee: International Business Machines Corp
•
Filing: 1993-07-28
•
Granted: 1994-01-18
•
Expires: 2013-07-28
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A hardware controlled pipelined processor having an interpretive storage and multiple execution units employs interpretive storage "milli-instructions" and an interpretive execution "milli-mode". Additional hardware controlled instructions that are exclusively used in milli-mode may be added to provide additional controls or to improve performance (they augment the architected instruction set). Milli-mode routines intermingle milli-mode only instructions with architected instructions to implement complex functions. One milli-instruction called the DRAIN INSTRUCTION PIPELINE (DIP) causes the pipeline to drain selectively so the milli-programmer determines when and and what type of pipeline drain to perform. A DRAIN INSTRUCTION PIPELINE causes suspension of decoding until a selected event occurs. This DIP instruction includes options for suspending decoding until one of the following events have occurred: 1. all conceptually previous macro-instructions have completed; 2. all conceptually previous instructions have completed; 3. all store requests have reached the point where no exceptions would occur, but the actual store may not have completed; 4. all conceptually previous stores from all conceptually previous units-of-operation have competed (serialize); or 5. invalidate instruction buffers and fetch the next sequential macro-instructions.

Inventors

  • 👤 Robert J. Bullions, III
  • 👤 Ronald F. Hill
  • 👤 Stephen J. Nadas
  • 👤 Raymond J. Pedersen

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-27 09:47
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/30098; G06F9/30101; G06F9/3012; G06F9/30123; G06F9/3013; G06F9/3017; G06F9/38; G06F9/3836; G06F9/3838; G06F9/384; G06F9/3861; G06F9/3863

Claims Analysis

Total Claims: 4
Claim 1
Independent Claim 266 words
A computer system, comprising: a system storage for storing instructions that the the system is normally architected to execute as architected instructions which may be used by a user of the computer system, and interpretation instructions for implementation of the architected instructions and other functions for the computer system and an instruction pipeline comprising a fetch buffer section, a decoder section, and an execution section for executing instructions; first memory means coupled to said instruction pipeline, said system storage, and said execution section for storing those architected instructions that the system is executing as well as the data that these architected instructions are manipulating; said architected instructions being normally fetched to said fetch buffer section, for decoding by said decoder section, and for execution by said execution section; second memory means, also coupled to said instruction pipeline, for storing interpretation instructions used to interpretively execute said architected instructions and, in a millicode mode nor normally available to the user, to alternatively execute interpretation instructions to provide functions different from normal execution of said architected instructions; said interpretation instructions, in response to said decoding section, being fetched to said fetch buffer section when the system recognizes an instruction or event that is predetermined to utilize the interpretation instructions; and wherein said decoder section comprises: recognition means for recognizing a drain pipeline instruction from among said interpretation instructions and for decoding a programmable event field in said drain pipeline instruction; and, suspension means, coupled to said recognition means for suspending decoding of further instructions until an event specified by said event field in said interpretation instruction has occurred.
Claim 2
Dependent Claim 266 words
A computer system, comprising: a system storage for storing instructions that the the system is normally architected to execute as architected instructions which may be used by a user of the computer system, and interpretation instructions for implementation of the architected instructions and other functions for the computer system and an instruction pipeline comprising a fetch buffer section, a decoder section, and an execution section for executing instructions; first memory means coupled to said instruction pipeline, said system storage, and said execution section for storing those architected instructions that the system is executing as well as the data that these architected instructions are manipulating; said architected instructions being normally fetched to said fetch buffer section, for decoding by said decoder section, and for execution by said execution section; second memory means, also coupled to said instruction pipeline, for storing interpretation instructions used to interpretively execute said architected instructions and, in a millicode mode nor normally available to the user, to alternatively execute interpretation instructions to provide functions different from normal execution of said architected instructions; said interpretation instructions, in response to said decoding section, being fetched to said fetch buffer section when the system recognizes an instruction or event that is predetermined to utilize the interpretation instructions; and wherein said decoder section comprises: recognition means for recognizing a drain pipeline instruction from among said interpretation instructions and for decoding a programmable event field in said drain pipeline instruction; and, suspension means, coupled to said recognition means for suspending decoding of further instructions until an event specified by said event field in said interpretation instruction has occurred.
Claim 3
Dependent Claim 51 words
The computer system of claim 1, further comprising: detection means, coupled to said decoder section, said execution section, and said suspension means for detecting completion of ones of said interpretation instructions and/or of said architected instructions which are conceptually previous to said drain pipeline instruction so that decoding can be restarted.
Claim 4
Dependent Claim 137 words
The computer system of claim 1, further comprising: buffer means, coupled to said first memory means, said second memory means and said decoder section, for buffering said architected instructions said interpretation instructions; before they enter the pipeline; and wherein said decoder further comprises: mode detection means, coupled to said first memory means, said second memory means, said recognition means and said suspension means for commencing decoding of said interpretation instructions upon recognition of at least one of said architected instructions and for recommending decoding of said architected instructions upon recognition of a predetermined interpretation instruction; and, signal means, coupled to said buffer means, and to said suspension means, for suspending said decoding upon recognition of said predetermined interpretation instruction and for invalidating said buffer means holding said architected instructions responsive to completion of said drain pipeline instruction.

References Cited (Backward Citations)

US4179736A Cited
US4748559A Cited
US4794517A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1997-01-17 1997-07-19 1998-01-18 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2001-01-17 2001-07-19 2002-01-18 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2005-01-17 2005-07-19 2006-01-18 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag