PHYSICALLY-INDEXED LOGICAL MAP TABLE
First Claim
1. An apparatus, comprising:
- a processor, comprising;
a set of physical registers available to the processor as rename registers; and
a mapping unit having a plurality of entries, each of which is dedicated to a respective one of the set of physical registers and is configured to store rename information indicative of a mapping between a) a register within a set of logical registers that are specified by instructions being executed by the processor and b) the respective one of the set of physical registers that is dedicated to that entry.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques and systems are described herein to maintain a mapping of logical to physical registers—for example, in the context of a multithreaded processor that supports renaming. A mapping unit may have a plurality of entries, each of which stores rename information for a dedicated one of a set of physical registers available to the processor for renaming. This physically-indexed mapping unit may support multiple threads, and may comprise a content-addressable memory (CAM) in certain embodiments. The mapping unit may support various combinations of read operations (to determine if a logical register is mapped to a physical register), write operations (to create or modify one or more entries containing mapping information), thread flush operations, and commit operations. More than one of such operations may be performed substantially simultaneously in certain embodiments.
88 Citations
20 Claims
-
1. An apparatus, comprising:
a processor, comprising; a set of physical registers available to the processor as rename registers; and a mapping unit having a plurality of entries, each of which is dedicated to a respective one of the set of physical registers and is configured to store rename information indicative of a mapping between a) a register within a set of logical registers that are specified by instructions being executed by the processor and b) the respective one of the set of physical registers that is dedicated to that entry. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
11. A method, comprising:
-
a multithreaded computer processor performing a read operation from a mapping unit to determine whether a source of an instruction within a first thread of the processor has been renamed, wherein the computer processor includes a set of physical registers that constitutes the set of available rename registers; wherein the mapping unit includes a plurality of entries that are configured to store rename information, wherein each entry is dedicated to a respective one of the set of physical registers and the rename information in each entry is indicative of a mapping between a) a logical register specified by an instruction being executed by the processor and b) the respective one of the set of physical registers dedicated to that entry. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A method, comprising:
upon a determination that a destination of a first instruction in a first thread of a multithreaded computer processor is to be renamed, the computer processor performing a write operation to a mapping unit, wherein the computer processor includes a set of physical registers that constitutes the set of available rename registers, and wherein the mapping unit includes a plurality of entries configured to store rename information, wherein each of the plurality of entries is dedicated to a respective one of the set of physical registers and the rename information in each entry is indicative of a mapping between a) a logical register specified by an instruction within the instruction stream of the processor and b) the respective one of the set of physical registers that is dedicated to that entry. - View Dependent Claims (17, 18, 19, 20)
Specification