Claims Analysis
Total Claims: 17
Claim 1
Independent Claim
114 words
A register renaming circuit responsive to a thread ID register, comprising: a plurality of physical registers shared between multiple threads; a plurality of architectural registers; a rename logic circuit where every write to an architectural register of said plurality of architectural registers is assigned a new physical register of said plurality of physical registers; and a register map circuit comprising a plurality of maps corresponding to different thread IDs, said plurality of maps containing a corresponding entry for each of said plurality of architectural registers, said register map circuit is responsive to the thread ID register such that a subset of said plurality of physical registers is mapped to architectural registers of each thread.
Claim 2
Dependent Claim
114 words
A register renaming circuit responsive to a thread ID register, comprising: a plurality of physical registers shared between multiple threads; a plurality of architectural registers; a rename logic circuit where every write to an architectural register of said plurality of architectural registers is assigned a new physical register of said plurality of physical registers; and a register map circuit comprising a plurality of maps corresponding to different thread IDs, said plurality of maps containing a corresponding entry for each of said plurality of architectural registers, said register map circuit is responsive to the thread ID register such that a subset of said plurality of physical registers is mapped to architectural registers of each thread.
Claim 3
Dependent Claim
23 words
The circuit as recited in claim 1 wherein each of said plurality of physical registers has a free state and a mapped state.
Claim 4
Dependent Claim
29 words
The circuit as recited in claim 1 wherein said plurality of physical registers comprises a pool of physical registers wherein said physical registers being shared among said architectural registers.
Claim 5
Dependent Claim
50 words
The circuit as recited in claim 1 wherein said corresponding entry for each of said plurality of architectural registers is indicative of an invalid state or a valid state, said entry of said valid state containing an index of a physical register to which a corresponding architectural register is mapped.
Claim 6
Dependent Claim
51 words
The circuit as recited in claim 1 further comprising a register dependency comparator circuit for comparing architectural register destinations to prevent conflicting writes when multiple instructions write to a same architectural register, wherein only a last instruction to store in a particular architectural register is allocated a corresponding register map entry.
Claim 7
Dependent Claim
147 words
A register renaming circuit responsive to a thread ID register, comprising: a plurality of physical registers shared between multiple threads; a plurality of architectural registers; a rename logic circuit where every write to an architectural register of said plurality of architectural registers is assigned a new physical register of said plurality of physical registers; a register map circuit comprising a plurality of maps corresponding to different thread IDs, said plurality of maps containing a corresponding entry for each of said plurality of architectural registers, wherein said entry is indicative of an invalid state or a valid state, said entry of said valid state containing an index of a physical register to which a corresponding architectural register is mapped, said register map circuit is responsive to the thread ID register such that a subset of said plurality of physical registers is mapped to architectural registers of each thread.
Claim 8
Dependent Claim
147 words
A register renaming circuit responsive to a thread ID register, comprising: a plurality of physical registers shared between multiple threads; a plurality of architectural registers; a rename logic circuit where every write to an architectural register of said plurality of architectural registers is assigned a new physical register of said plurality of physical registers; a register map circuit comprising a plurality of maps corresponding to different thread IDs, said plurality of maps containing a corresponding entry for each of said plurality of architectural registers, wherein said entry is indicative of an invalid state or a valid state, said entry of said valid state containing an index of a physical register to which a corresponding architectural register is mapped, said register map circuit is responsive to the thread ID register such that a subset of said plurality of physical registers is mapped to architectural registers of each thread.
Claim 9
Dependent Claim
23 words
The circuit as recited in claim 6 wherein each of said plurality of physical registers has a free state and a mapped state.
Claim 10
Dependent Claim
19 words
The circuit as recited in claim 6 wherein said plurality of physical registers comprises a pool of physical registers.
Claim 11
Dependent Claim
51 words
The circuit as recited in claim 6 further comprising a register dependency comparator circuit for comparing architectural register destinations to prevent conflicting writes when multiple instructions write to a same architectural register, wherein only a last instruction to store in a particular architectural register is allocated a corresponding register map entry.
Claim 12
Independent Claim
108 words
A method of register renaming responsive to a thread ID register, comprising the steps of: assigning to an architectural register of a plurality of architectural registers on every write to said architectural register a new physical register from a plurality of physical registers shared between multiple threads; selecting a map corresponding to a thread ID from a register map circuit comprising a plurality of maps corresponding to different thread IDs mapping a subset of said plurality of physical registers to architectural registers of a thread corresponding to said selected map; and associating a corresponding entry for each of said plurality of architectural registers with a register map entry.
Claim 13
Independent Claim
108 words
A method of register renaming responsive to a thread ID register, comprising the steps of: assigning to an architectural register of a plurality of architectural registers on every write to said architectural register a new physical register from a plurality of physical registers shared between multiple threads; selecting a map corresponding to a thread ID from a register map circuit comprising a plurality of maps corresponding to different thread IDs mapping a subset of said plurality of physical registers to architectural registers of a thread corresponding to said selected map; and associating a corresponding entry for each of said plurality of architectural registers with a register map entry.
Claim 14
Dependent Claim
25 words
The method as recited in claim 10 further comprising the step of indexing said register map entry in a valid state to a physical register.
Claim 15
Dependent Claim
25 words
The method as recited in claim 10 wherein each of said plurality of physical registers is assigned either a free state or a mapped state.
Claim 16
Dependent Claim
19 words
The circuit as recited in claim 10 wherein said plurality of physical registers comprises a pool of physical registers.
Claim 17
Dependent Claim
48 words
The method as recited in claim 10 further comprising the step of comparing architectural register destinations to prevent conflicting writes when multiple instructions write to a same architectural register, wherein only a last instruction to store in a particular architectural register is allocated a particular register map entry.