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

System and method for performing multiway branches using a visual instruction set

Assignee: Oracle America Inc
•
Filing: 1997-06-30
•
Granted: 1999-02-16
•
Expires: 2017-06-30
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An innovative method and system of performing multiway branch operations on a microprocessor architecture which supports single instruction multiple data (SIMD) operations is provided. A computer processor includes a branch condition register, a graphic status register, a displacement register, a branch offset register, a program counter register and circuit logic responsive to a multiway branch opcode. Bitwise AND logic coupled to the branch condition register and the graphic status register performs a bitwise logical AND between a mask contained in the branch condition register and multiple comparison results contained in the graphic status register. An output port from bitwise logical AND is coupled to a constant array and selects a set of constant values based on the bitwise logical AND result value. A shifter logic coupled to the branch offset register and the displacement register bitwise left shifts the displacement value stored in the displacement register a predetermined amount based upon the value in the branch offset. The shifter logic is also coupled to receive a constant value from the constant array which is added to the shifted result by concantenating the constant value to the lower order bits shifted into the shifter logic. An adder circuit coupled to the shifter logic and a program counter register adds the results to the program counter value to generate a relative branch address. Finally, a branch logic coupled to the adder circuit responds to the multiway branch opcode and sets the program counter to the relative branch address provided by the adder circuit.

Inventors

  • 👤 Bruce Petrick

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-31 21:03
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/30003; G06F9/3005; G06F9/30054; G06F9/30058; G06F9/30061; G06F9/30094; G06F9/32; G06F9/322; G06F9/324

Claims Analysis

Total Claims: 4
Claim 1
Independent Claim 257 words
A processor for performing graphics and non-graphics operations comprising: a branch condition register; a program counter (PC) register; a graphic status register; a displacement register; a branch offset register; comparison logic having a first input operatively coupled to the branching condition register and a second input operatively coupled to graphic status register which responds to a multiway branch opcode and performs a bitwise logical AND logic between values provided over the first input and the second input in response to a multiway branch opcode; a constant array including a plurality of constant values having a first input coupled to the comparison logic which responds to a multiway branch opcode and selects one of the plurality of constant values based upon the comparison logic; shifter logic having a first input operatively coupled to the branch offset register, a second input operatively coupled to a displacement register, and a third input coupled to the constant array which responds to the multiway branch opcode, shifts the displacement register based upon the value contained in the branch offset register and concatenates a constant value provided over the shifter logic third input; an adder having a first input operatively coupled to the shifter logic and a second input the PC register which responds to the multiway branch opcode and adds the values provided over the adder first input and the second input together; and a branch logic operatively coupled to the adder which responds to the multiway branch opcode and sets the program counter to the resulting value provided by the adder.
Claim 2
Dependent Claim 257 words
A processor for performing graphics and non-graphics operations comprising: a branch condition register; a program counter (PC) register; a graphic status register; a displacement register; a branch offset register; comparison logic having a first input operatively coupled to the branching condition register and a second input operatively coupled to graphic status register which responds to a multiway branch opcode and performs a bitwise logical AND logic between values provided over the first input and the second input in response to a multiway branch opcode; a constant array including a plurality of constant values having a first input coupled to the comparison logic which responds to a multiway branch opcode and selects one of the plurality of constant values based upon the comparison logic; shifter logic having a first input operatively coupled to the branch offset register, a second input operatively coupled to a displacement register, and a third input coupled to the constant array which responds to the multiway branch opcode, shifts the displacement register based upon the value contained in the branch offset register and concatenates a constant value provided over the shifter logic third input; an adder having a first input operatively coupled to the shifter logic and a second input the PC register which responds to the multiway branch opcode and adds the values provided over the adder first input and the second input together; and a branch logic operatively coupled to the adder which responds to the multiway branch opcode and sets the program counter to the resulting value provided by the adder.
Claim 3
Dependent Claim 18 words
The processor of claim 1 wherein the processor performing graphics and non-graphics operations utilizes the Visual Instruction Set.
Claim 4
Dependent Claim 16 words
The processor of claim 1 wherein the processor performing graphics and non-graphics operations utilizes MMX instructions.

References Cited (Backward Citations)

US4907192A Cited
US5210833A Cited
US5794026A Cited
US5734874A Cited
US5815697A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-02-15 2002-08-17 2003-02-16 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-02-15 2006-08-17 2007-02-16 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-02-15 2010-08-17 2011-02-16 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag