← Back to Patent Explorer
EP0279953A2 Expired / Lapsed EP ⏱️ 0.0 years remaining

Computer system having mixed macrocode and microcode instruction execution

Assignee: Texas Instruments Inc
•
Filing: 1987-12-30
•
Granted: —
•
Expires: 2007-12-30
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A computer system uses microcode subroutines to execute complex macroinstruction. Each macroinstruction is used to index a table (18). Simple macroinstructions have a single microinstruction counterpart in the table (18), and such microinstruction is performed directly in order to execute that macroinstruction. The table entry corresponding to more complex macroinstructions is a jump microinstruction, with the target of the microcode jump being an appropriate subroutine in microcode memory (16).

Inventors

  • 👤 Patrick W. Bosshart

Bibliographic Details

Application Number —
Jurisdiction EP
Data Source google_patents
Last Synchronized 2026-11-02 00:49
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/22; G06F9/28; G06F9/26; G06F9/30; G06F9/3017; G06F9/30181; G06F9/30189

Claims Analysis

Total Claims: 15
Claim 1
Independent Claim 120 words
A digital computer system, comprising: a central processor for executing machine instructions; a microcode memory for storing machine instructions; a macro-instruction decode table located in said microcode memory for decoding macro instructions presented to the central processor, wherein said decode table con­tains machine instructions of two classes, wherein instructions of the first class are directly decodable and executable by the central processor, and wherein instructions of the second class point to microcode routines in said microcode memory; and a decoder coupled to said central processor and to said microcode memory for decoding instructions of the first class and causing their direct execution by the cen­tral processor, and for initiating execution of microcode routines corresponding to instructions of the second class.
Claim 2
Dependent Claim 120 words
A digital computer system, comprising: a central processor for executing machine instructions; a microcode memory for storing machine instructions; a macro-instruction decode table located in said microcode memory for decoding macro instructions presented to the central processor, wherein said decode table con­tains machine instructions of two classes, wherein instructions of the first class are directly decodable and executable by the central processor, and wherein instructions of the second class point to microcode routines in said microcode memory; and a decoder coupled to said central processor and to said microcode memory for decoding instructions of the first class and causing their direct execution by the cen­tral processor, and for initiating execution of microcode routines corresponding to instructions of the second class.
Claim 3
Dependent Claim 242 words
A digital computer system, comprising: a central processor for executing machine instructions; a main memory coupled to said central processor and containing machine instruc­tions to be executed by said central processor; a microcode memory coupled to said central processor and containing microcode routines corresponding to machine instructions; a macro-decode table coupled to said central processor and having a plurality of entries, wherein each entry corresponds to a machine instruction, wherein each entry is classified as belonging to one of a first or second set, and wherein machine instructions to be executed by said central processor index an entry in said macro-decode table; and a decoder coupled to said central processor, said microcode memory, and said macro-decode table, wherein entries in said macro-decode table which are contained in the first set define directly executable machine instructions which are decoded by said decoder when such entries are indexed by a current machine instruction, and wherein entries in said macro-decode table which are contained in the second set identify microcode routines corresponding to machine instructions, and said decoder causes the corresponding microcode routine to be executed when such entries are indexed by a current machine instruction; wherein machine instructions from said main memory are accessed by said central processor and used to index entries in said macro-decode table, whereby machine instructions corresponding to first set table entries are executed directly and machine instructions corresponding to second set table entries cause execution of a microcode routine.
Claim 4
Dependent Claim 242 words
A digital computer system, comprising: a central processor for executing machine instructions; a main memory coupled to said central processor and containing machine instruc­tions to be executed by said central processor; a microcode memory coupled to said central processor and containing microcode routines corresponding to machine instructions; a macro-decode table coupled to said central processor and having a plurality of entries, wherein each entry corresponds to a machine instruction, wherein each entry is classified as belonging to one of a first or second set, and wherein machine instructions to be executed by said central processor index an entry in said macro-decode table; and a decoder coupled to said central processor, said microcode memory, and said macro-decode table, wherein entries in said macro-decode table which are contained in the first set define directly executable machine instructions which are decoded by said decoder when such entries are indexed by a current machine instruction, and wherein entries in said macro-decode table which are contained in the second set identify microcode routines corresponding to machine instructions, and said decoder causes the corresponding microcode routine to be executed when such entries are indexed by a current machine instruction; wherein machine instructions from said main memory are accessed by said central processor and used to index entries in said macro-decode table, whereby machine instructions corresponding to first set table entries are executed directly and machine instructions corresponding to second set table entries cause execution of a microcode routine.
Claim 5
Independent Claim 45 words
A method for executing machine instructions in a digital computer system, comprising the steps of: (a) for machine instructions classified within a first set, executing such instructions directly; and (b) for machine instructions classified within a second set, executing microcode routines which implements such instructions.
Claim 6
Independent Claim 45 words
A method for executing machine instructions in a digital computer system, comprising the steps of: (a) for machine instructions classified within a first set, executing such instructions directly; and (b) for machine instructions classified within a second set, executing microcode routines which implements such instructions.
Claim 7
Independent Claim 74 words
A method for executing machine instructions in a digital computer system, comprising the steps of: (a) fetching a next machine instruction into a central processor; (b) determining whether the next machine instruction is directly executable; (c) if the next instruction is directly executable, executing such instruction directly and returing to step (a); (d) if the next instruction is not directly executable, executing a microcode routine which implements the instruction, and returning to step (a).
Claim 8
Independent Claim 74 words
A method for executing machine instructions in a digital computer system, comprising the steps of: (a) fetching a next machine instruction into a central processor; (b) determining whether the next machine instruction is directly executable; (c) if the next instruction is directly executable, executing such instruction directly and returing to step (a); (d) if the next instruction is not directly executable, executing a microcode routine which implements the instruction, and returning to step (a).
Claim 9
Dependent Claim 44 words
The method of Claim 4, wherein step (b) comprises the steps of: (b.1) using the machine instruction to index a decode table having class bits which indicate whether the machine instruction is directly executable; and (b.2) reading the class bits for the machine instruction.
Claim 10
Dependent Claim 97 words
In a computer system having pipelined execution of instructions, the method for executing instructions comprising the steps of: (a) fetching a next machine instruction; (b) if the next machine instruction is directly executable, executing such instruc­tion and returning to step (a); (c) if the next machine instruction is not directly executable, (c.1) saving the current state of the instruction pipeline, (c.2) jumping to a microcode routine corresonding to the next machine instruc­tion, and executing such microcode routine, (c.3) restoring the state of the instruction pipeline which was saved in step (c.1), and (c.4) returning to step (a).
Claim 11
Dependent Claim 97 words
In a computer system having pipelined execution of instructions, the method for executing instructions comprising the steps of: (a) fetching a next machine instruction; (b) if the next machine instruction is directly executable, executing such instruc­tion and returning to step (a); (c) if the next machine instruction is not directly executable, (c.1) saving the current state of the instruction pipeline, (c.2) jumping to a microcode routine corresonding to the next machine instruc­tion, and executing such microcode routine, (c.3) restoring the state of the instruction pipeline which was saved in step (c.1), and (c.4) returning to step (a).
Claim 12
Dependent Claim 105 words
An instruction prefetch queue for a computer system, comprising: an instruction queue of length n for holding macroinstructions to be performed; a program counter queue of length n for holding program counters corresonding to the macroinstructions in said instruction queue; a pipeline controller coupled to said instruction queue for selecting an instruction from the queue and using it to generate a microistruction address, wherein instruc­tions are removed from the queue only when a microcode instruction corresponding to that instruction is returned to a processor for execution, whereby the instruction selected for generating a microinstruction address may not be at the head of said instruction queue.
Claim 13
Dependent Claim 105 words
An instruction prefetch queue for a computer system, comprising: an instruction queue of length n for holding macroinstructions to be performed; a program counter queue of length n for holding program counters corresonding to the macroinstructions in said instruction queue; a pipeline controller coupled to said instruction queue for selecting an instruction from the queue and using it to generate a microistruction address, wherein instruc­tions are removed from the queue only when a microcode instruction corresponding to that instruction is returned to a processor for execution, whereby the instruction selected for generating a microinstruction address may not be at the head of said instruction queue.
Claim 14
Dependent Claim 20 words
The queue of Claim 7, wherein said pipieline controller can access any of the first 3 instructions in the queue.
Claim 15
Dependent Claim 49 words
The queue of Claim 7, further comprising: a multiplexer coupled to said instruction queue and to said pipeline controller, wherein instructions in said queue are connected to the data inputs of said multiplexer, and wherein said pipeline controller accesses the instructions by controlling the control inputs to said multiplexer.

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