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

Performance enhancement scheme for a RISC type VLSI processor using dual execution units for parallel instruction processing

Assignee: International Business Machines Corp
•
Filing: 1986-08-18
•
Granted: 1988-08-23
•
Expires: 2006-08-18
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Performance of a VLSI processor of the reduced instruction set computer (RISC) type is enhanced by executing two instructions simultaneously in the two execution units of the processor. There is very little increase in the cost of hardware. Three embodiments are presented with different cost and performance capabilities. The first embodiment has an instruction input to an instruction buffer (10) and two sets of control ROSs (40 and 42) and control registers (64 and 65). The control ROS and control register which is chosen depends on which instruction execution unit is to execute the instruction. Data inputs to the execution units is from a register file (48) which has an additional pair of outputs (51) and (53) that provide the data paths for simultaneous execution of instructions by the execution units. Execution unit I has an arithmetic and logic unit (ALU) (24), while execution unit II has a rotate (26) and mask generator (31). Load balancing between the two execution units can be performed by adding a multiplier (60) and divider (62) to execution unit II. In the second embodiment, additionally, load balancing is achieved by incorporating an adder (78) into execution unit II. The adder (78) is used to perform address calculations to speed up the load, store and branch instructions. In the third embodiment, an additional ALU (90) is added to execution unit II to allow the instruction processing to be further balanced between the two execution units.

Inventors

  • 👤 Chiao-Mei Chuang

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-23 11:59
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/38; G06F9/3885

Claims Analysis

Total Claims: 21
Claim 1
Independent Claim 316 words
In a reduced instruction set computer processing system having instruction handling apparatus comprising an instruction buffer, control read only storage and control registers and instruction execution apparatus comprising a register file having inputs and outputs, one of said inputs being connected to receive data from memory, staging registers connected to said register file outputs, and first and second execution units, said first execution unit comprising an arithmetic logic unit having inputs connected to two of said staging registers, said second execution unit comprising a rotator and mask generator means having inputs connected to three of said staging registers, said arithmetic logic unit and said rotator and mask generator means having outputs, a first output register for receiving the outputs of said arithmetic logic unit or said rotator and mask generator means and supplying an input to said register file wherein the system performs sequential data manipulations under the control of instructions, said instructions being executed by one of said first and second execution units, the improvement which increases the throughput of the computer comprising: said control read only storage comprising first and second segments for respectively storing instruction sets for said first and second execution units; said instruction handling apparatus further including means for routing instructions from said first segment of said control read only storage to said first execution unit and means for routing instructions from said second segment of said control read only storage to said second execution unit; a second output register, the outputs from said arithmetic logic unit and said rotate and mask generator means being separately connected to a respective one of said first and second output registers, outputs from each of said output registers being connected to inputs of said register file; and said first execution unit and said second execution unit simultaneously receiving outputs from said staging registers connected to outputs of said register file and executing in parallel.
Claim 2
Dependent Claim 316 words
In a reduced instruction set computer processing system having instruction handling apparatus comprising an instruction buffer, control read only storage and control registers and instruction execution apparatus comprising a register file having inputs and outputs, one of said inputs being connected to receive data from memory, staging registers connected to said register file outputs, and first and second execution units, said first execution unit comprising an arithmetic logic unit having inputs connected to two of said staging registers, said second execution unit comprising a rotator and mask generator means having inputs connected to three of said staging registers, said arithmetic logic unit and said rotator and mask generator means having outputs, a first output register for receiving the outputs of said arithmetic logic unit or said rotator and mask generator means and supplying an input to said register file wherein the system performs sequential data manipulations under the control of instructions, said instructions being executed by one of said first and second execution units, the improvement which increases the throughput of the computer comprising: said control read only storage comprising first and second segments for respectively storing instruction sets for said first and second execution units; said instruction handling apparatus further including means for routing instructions from said first segment of said control read only storage to said first execution unit and means for routing instructions from said second segment of said control read only storage to said second execution unit; a second output register, the outputs from said arithmetic logic unit and said rotate and mask generator means being separately connected to a respective one of said first and second output registers, outputs from each of said output registers being connected to inputs of said register file; and said first execution unit and said second execution unit simultaneously receiving outputs from said staging registers connected to outputs of said register file and executing in parallel.
Claim 3
Dependent Claim 75 words
A reduced instruction set computer as recited in claim 1 further comprising: at least one arithmetic function unit in said second execution unit, said arithmetic function unit having inputs connected to two of said three staging registers and providing an output; and a multiplexer connected to receive the outputs of said rotate and mask generator means and said at least one arithmetic function unit and supplying one of said outputs to said second output register.
Claim 4
Dependent Claim 24 words
A reduced instruction set computer as recited in claim 2 wherein said at least one arithmetic function unit comprises a multiplier and a divider.
Claim 5
Dependent Claim 39 words
A reduced instruction set computer as recited in claim 2 wherein said at least one arithmetic function unit comprises an adder, said adder being used to compute the addresses of instructions to speed up load, store and branch instructions.
Claim 6
Dependent Claim 24 words
A reduced instruction set computer as recited in claim 4 wherein said at least one arithmetic function unit further comprises a multiplier and divider.
Claim 7
Dependent Claim 44 words
A reduced instruction set computer as recited in claim 2 wherein said at least one arithmetic function unit comprises a second arithmetic logic unit whereby code scheduling and load balancing of the instruction load may be performed between said first and second execution units.
Claim 8
Dependent Claim 76 words
A reduced instruction set computer as recited in claim 1 further comprising two latches connected to two outputs of said register file, said two latches having outputs connected to said two of said staging registers, said three of said staging registers being directly connected to three outputs of said register file including the two outputs connected to said two latches whereby said register file makes two accesses to memory for each clock cycle of said computer.
Claim 9
Dependent Claim 67 words
A reduced instruction set computer as recited in claim 1 wherein said register file has at least five outputs and wherein there are at least five staging registers, one staging register of each of said outputs, and wherein said two of said staging registers are connected exclusively to said first execution unit and said three of said staging registers are connected exclusively to said second execution unit.
Claim 10
Dependent Claim 358 words
In a reduced instruction set computer processing system having instruction handling apparatus comprising an instruction buffer, control read only storage and control registers, an adder for calculating an instruction address and instruction execution apparatus comprising a register file having inputs and outputs, one of said inputs being connected to receive data from memory, staging registers connected to said outputs, and first and second execution units, said first execution unit comprising an arithmetic logic unit having inputs connected to two of said staging registers, said second execution unit comprising a rotator and mask generator means having inputs connected to three of said staging registers, said arithmetic logic unit and said rotator and mask generator means having outputs, a first output register for receiving the outputs of said arithmetic logic unit or said rotator and mask generator means and supplying an input to said register file wherein the system performs sequential data manipulations under the control of instructions, said instructions being executed by one of said first and second execution units, the improvement which increases the throughput of the computer comprising: said control read only storage comprising first and second segments for respectively storing instruction sets for said first and second execution units; said instruction handling apparatus further including means for routing instructions from said first segment of said control read only storage to said first execution unit and means for routing instructions from said second segment of said control read only storage to said second execution unit; said adder being in said second execution unit and having inputs connected to two of said three of said staging registers; a multiplexer in said second execution unit connected to receive outputs from said adder and said rotate and mask generator means; a second output register, the outputs from said arithmetic logic unit and said multiplexer being separately connected to a respective one of said output registers, outputs from each of said first and second output registers being connected to inputs of said register file; and said first execution unit and said second execution unit simultaneously receiving outputs from staging registers connected to outputs of said register file and executing in parallel.
Claim 11
Dependent Claim 358 words
In a reduced instruction set computer processing system having instruction handling apparatus comprising an instruction buffer, control read only storage and control registers, an adder for calculating an instruction address and instruction execution apparatus comprising a register file having inputs and outputs, one of said inputs being connected to receive data from memory, staging registers connected to said outputs, and first and second execution units, said first execution unit comprising an arithmetic logic unit having inputs connected to two of said staging registers, said second execution unit comprising a rotator and mask generator means having inputs connected to three of said staging registers, said arithmetic logic unit and said rotator and mask generator means having outputs, a first output register for receiving the outputs of said arithmetic logic unit or said rotator and mask generator means and supplying an input to said register file wherein the system performs sequential data manipulations under the control of instructions, said instructions being executed by one of said first and second execution units, the improvement which increases the throughput of the computer comprising: said control read only storage comprising first and second segments for respectively storing instruction sets for said first and second execution units; said instruction handling apparatus further including means for routing instructions from said first segment of said control read only storage to said first execution unit and means for routing instructions from said second segment of said control read only storage to said second execution unit; said adder being in said second execution unit and having inputs connected to two of said three of said staging registers; a multiplexer in said second execution unit connected to receive outputs from said adder and said rotate and mask generator means; a second output register, the outputs from said arithmetic logic unit and said multiplexer being separately connected to a respective one of said output registers, outputs from each of said first and second output registers being connected to inputs of said register file; and said first execution unit and said second execution unit simultaneously receiving outputs from staging registers connected to outputs of said register file and executing in parallel.
Claim 12
Dependent Claim 45 words
A reduced instruction set computer as recited in claim 9 further comprising at least one arithmetic function unit in said second execution unit, said arithmetic function unit having inputs connected to two of said three staging registers and providing an output connected to said multiplexer.
Claim 13
Dependent Claim 24 words
A reduced instruction set computer as recited in claim 10 wherein said at least one arithmetic function unit comprises a multiplier and a divider.
Claim 14
Dependent Claim 76 words
A reduced instruction set computer as recited in claim 9 further comprising two latches connected to two outputs of said register file, said two latches having outputs connected to said two of said staging registers, said three of said staging registers being directly connected to three outputs of said register file including the two outputs connected to said two latches whereby said register file makes two accesses to memory for each clock cycle of said computer.
Claim 15
Dependent Claim 67 words
A reduced instruction set computer as recited in claim 9 wherein said register file has at least five outputs and wherein there are at least five staging registers, one staging register of each of said outputs, and wherein said two of said staging registers are connected exclusively to said first execution unit and said three of said staging registers are connected exclusively to said second execution unit.
Claim 16
Dependent Claim 365 words
In a reduced instruction set computer processing system having instruction handling apparatus comprising an instruction buffer, control read only storage and control registers and instruction execution apparatus comprising a register file having inputs and outputs, one of said inputs being connected to receive data from memory, staging registers connected to said register file outputs, and first and second execution units, said first execution unit comprising a first arithmetic logic unit having inputs connected to two of said staging registers, said second execution unit comprising a rotator and mask generator means having inputs connected to three of said staging registers, said first arithmetic logic unit and said rotator and mask generator means having outputs, a first output register for receiving the outputs of said arithmetic logic unit or said rotator and mask generator means and supplying an input to said register file wherein the system performs sequential data manipulations under the control of instructions, said instructions being executed by one of said first and second execution units, the improvement which increases the throughput of the computer comprising: said control read only storage comprising first and second segments for respectively storing instruction sets for said first and second execution units; said instruction handling apparatus further including means for routing instructions from said first segment of said control read only storage to said first execution unit and means for routing instructions from said second segment of said control read only storage to said second execution unit; a second arithmetic logic unit in said second execution unit and having inputs connected to two of said three of said output staging registers; a multiplexer in said second execution unit connected to receive outputs from said second arithmetic logic unit and said rotate and mask means; a second output register, the outputs from said first arithmetic logic unit and said multiplexer being separately connected to a respective one of said first and second output registers, outputs from each of said first and second output registers being connected to inputs of said register file; and said first execution unit and said second execution unit simultaneously receiving outputs from said staging registers connected to outputs of said register file and executing in parallel.
Claim 17
Dependent Claim 365 words
In a reduced instruction set computer processing system having instruction handling apparatus comprising an instruction buffer, control read only storage and control registers and instruction execution apparatus comprising a register file having inputs and outputs, one of said inputs being connected to receive data from memory, staging registers connected to said register file outputs, and first and second execution units, said first execution unit comprising a first arithmetic logic unit having inputs connected to two of said staging registers, said second execution unit comprising a rotator and mask generator means having inputs connected to three of said staging registers, said first arithmetic logic unit and said rotator and mask generator means having outputs, a first output register for receiving the outputs of said arithmetic logic unit or said rotator and mask generator means and supplying an input to said register file wherein the system performs sequential data manipulations under the control of instructions, said instructions being executed by one of said first and second execution units, the improvement which increases the throughput of the computer comprising: said control read only storage comprising first and second segments for respectively storing instruction sets for said first and second execution units; said instruction handling apparatus further including means for routing instructions from said first segment of said control read only storage to said first execution unit and means for routing instructions from said second segment of said control read only storage to said second execution unit; a second arithmetic logic unit in said second execution unit and having inputs connected to two of said three of said output staging registers; a multiplexer in said second execution unit connected to receive outputs from said second arithmetic logic unit and said rotate and mask means; a second output register, the outputs from said first arithmetic logic unit and said multiplexer being separately connected to a respective one of said first and second output registers, outputs from each of said first and second output registers being connected to inputs of said register file; and said first execution unit and said second execution unit simultaneously receiving outputs from said staging registers connected to outputs of said register file and executing in parallel.
Claim 18
Dependent Claim 44 words
A reduced instruction set computer as recited in claim 14 further comprising at least one arithmetic function unit in said second execution unit, said arithmetic function unit having inputs connected to two of said three staging registers and an output connected to said multiplexor.
Claim 19
Dependent Claim 24 words
A reduced instruction set computer as recited in claim 15 wherein said at least one arithmetic function unit comprises a multiplier and a divider.
Claim 20
Dependent Claim 76 words
A reduced instruction set computer as recited in claim 14 further comprising two latches connected to two outputs of said register file, said two latches having outputs connected to said two of said staging registers, said three of said staging registers being directly connected to three outputs of said register file including the two outputs connected to said two latches whereby said register file makes two accesses to memory for each clock cycle of said computer.
Claim 21
Dependent Claim 67 words
A reduced instruction set computer as recited in claim 14 wherein said register file has at least five outputs and wherein there are at least five staging registers, one staging register of each of said outputs, and wherein said two of said staging registers are connected exclusively to said first execution unit and said three of said staging registers are connected exclusively to said second execution unit.

References Cited (Backward Citations)

US3886523A Cited
US4476525A Cited
US4393468A Cited
US4569016A Cited
US4589065A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1991-08-23 1992-02-22 1992-08-23 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1995-08-23 1996-02-22 1996-08-23 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 1999-08-23 2000-02-22 2000-08-23 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag