Claims
- 1. A method for accessing a register file associated with a multithreaded processor, the method comprising the steps of:
determining a thread identifier associated with a particular thread of the multithreaded processor; and utilizing at least a portion of the thread identifier to select a particular portion of the register file to be accessed by the corresponding processor thread.
- 2. The method of claim 1 wherein the utilizing step further comprises the step of utilizing a portion of the thread identifier to select one of an even portion and an odd portion of the register file for access by the corresponding processor thread.
- 3. The method of claim 2 wherein the portion of the thread identifier comprises one or more least significant bits of the thread identifier.
- 4. The method of claim 2 wherein the register file comprises a plurality of even sets of registers and a plurality of odd sets of registers, and the utilizing step further comprises enabling either the plurality of even sets of registers or the plurality of odd sets of registers for access by the corresponding processor thread.
- 5. The method of claim 1 wherein the portion of the thread identifier is applied to selection circuitry which generates enable signals for particular portions of the register file.
- 6. The method of claim 1 wherein the register file comprises 2″ distinct portions, and n least significant bits of the thread identifier are utilized to select one of the 2″ distinct portions of the register file for access by the corresponding processor thread.
- 7. The method of claim 1 wherein the register file comprises a general-purpose register file.
- 8. The method of claim 1 wherein the multithreaded processor comprises a thread identifier register for storing the thread identifier.
- 9. The method of claim 8 wherein the thread identifier register is associated with a thread cache corresponding to the particular thread of the multithreaded processor.
- 10. The method of claim 1 wherein the multithreaded processor is configured to utilize token triggered threading.
- 11. The method of claim 10 wherein the token triggered threading utilizes a token to identify in association with a current processor clock cycle a particular context that will be permitted to issue an instruction for a subsequent clock cycle.
- 12. The method of claim 10 wherein the token triggered threading assigns different tokens to each of a plurality of threads of the multithreaded processor.
- 13. The method of claim 1 wherein the multithreaded processor is configured for pipelined instruction processing.
- 14. The method of claim 13 wherein the multithreaded processor utilizes an instruction pipeline in which each thread issues a single instruction per processor clock cycle.
- 15. The method of claim 13 wherein the multithreaded processor utilizes an instruction pipeline in which each thread issues multiple instructions per processor clock cycle.
- 16. The method of claim 15 wherein each of a plurality of the threads issues both a load instruction and a vector multiply instruction in each of a corresponding plurality of processor clock cycles without stalling of any of the plurality of threads.
- 17. The method of claim 1 wherein the register file comprises a single register.
- 18. The method of claim 1 wherein the register file comprises a plurality of registers.
- 19. A multithreaded processor having an associated register file comprising at least first and second portions, the multithreaded processor being operative to determine a thread identifier associated with a particular thread of the multithreaded processor, and to utilize at least a portion of the thread identifier to select a particular one of the portions of the register file to be accessed by the corresponding processor thread.
- 20. An article of manufacture comprising a machine-readable storage medium having embodied thereon program code for use in accessing a register file associated with a multithreaded processor, wherein the program code when executed by the processor implements the steps of:
determining a thread identifier associated with a particular thread of the multithreaded processor; and utilizing at least a portion of the thread identifier to select a particular portion of the register file to be accessed by the corresponding processor thread.
RELATED APPLICATION(S)
[0001] The present invention is related to the inventions described in U.S. Patent Applications Attorney Docket No. 1007-5, entitled “Method and Apparatus for Thread-Based Memory Access in a Multithreaded Processor,” Attorney Docket No. 1007-6, entitled “Multithreaded Processor With Efficient Processing For Convergence Device Applications,” and Attorney Docket No. 1007-8, entitled “Method and Apparatus for Token Triggered Multithreading,” all of which are filed concurrently herewith and incorporated by reference herein.