Method and apparatus for releasing functional units in a multithreaded VLIW processor
AssigneeAgere Systems Inc.
InventorsAlan David Berenbaum, Nevin Heintze, Tor E. Jeremiassen, Stefanos Kaxiras
Life of this patent
Estimating the term…
Loading patent…
AssigneeAgere Systems Inc.
InventorsAlan David Berenbaum, Nevin Heintze, Tor E. Jeremiassen, Stefanos Kaxiras
Estimating the term…
A method and apparatus are disclosed for releasing functional units in a multithreaded very large instruction word (VLIW) processor. The functional unit release mechanism can retrieve the capacity lost due to multiple cycle instructions. The functional unit release mechanism of the present invention permits idle functional units to be reallocated to other threads, thereby improving workload efficiency. Instruction packets are assigned to functional units, which can maintain their state, independent of the issue logic. Each functional unit has an associated state machine (SM) that keeps track of the number of cycles that the functional unit will be occupied by a multiple-cycle instruction. Functional units do not reassign themselves as long as the functional unit is busy. When the instruction is complete, the functional unit can participate in functional unit allocation, even if other functional units assigned to the same thread are still busy. The functional unit release approach of the present invention allows the functional units that are not associated with a multiple-cycle instruction to be allocated to other threads while the blocked thread is waiting, thereby improving throughput of the multithreaded VLIW processor. Since the state is associated with each functional unit separately from the instruction issue unit, the functional units can be assigned to threads independently of the state of any one thread and its constituent instructions.
A multi threaded very large instruction word processor, comprising:
A multithreaded very large instruction word processor, comprising:
A method of processing instructions from a multithreaded instruction stream in a multithreaded very large instruction word processor, comprising the steps of:
A method of processing instructions from a multithreaded instruction stream in a multithreaded very large instruction word processor, comprising the steps of:
An article of manufacture for processing instructions from an instruction stream having a plurality of threads in a multithreaded very large instruction word processor, comprising:
An article of manufacture for processing instructions from an instruction stream having a plurality of threads in a multithreaded very large instruction word processor, comprising:
Dependencies are inferred from the claim text.