Multithreading instruction scheduler employing thread group priorities
AssigneeMIPS Technologies, Inc.
InventorsMichael Gottlieb Jensen, Ryan C. Kinter
Life of this patent
Estimating the term…
Loading patent…
AssigneeMIPS Technologies, Inc.
InventorsMichael Gottlieb Jensen, Ryan C. Kinter
Estimating the term…
An instruction dispatching apparatus in a multi threading microprocessor that concurrently executes N threads each in one of G groups each having one of P priorities. G round-robin vectors each have N bits corresponding to the threads, each being a 1-bit left-rotated and subsequently sign-extended version of an N-bit vector with a single bit true of the last thread selected for dispatching in the group. Each of N G-input muxes receive a corresponding one of the N bits of each of the round-robin vectors and selects for output one of the inputs specified by the corresponding thread's group. Selection logic selects for dispatching one of the N instructions corresponding to the thread whose dispatch value is greater than or equal to any of the N threads left thereof. Each dispatch value comprises a least-significant bit of the corresponding mux output, a most-significant dispatchable instruction bit, and middle thread group priority bits.
An apparatus for dispatching instructions to an execution pipeline in a multithreading microprocessor that concurrently executes N threads each being in one of G groups, each of the G groups having a priority, the priority being one of P priorities, the apparatus comprising:
A method for dispatching instructions to an execution pipeline in a multi threading microprocessor that concurrently executes N threads each being in one of G groups, each of the G groups having a priority, the priority being one of P priorities, the method comprising:
A multi threading microprocessor for concurrently executing N threads, each of the N threads being in one of G groups, each group having a priority, the priority being one of P priorities, wherein a subset of the N threads may have a dispatchable instruction in a selection cycle, the microprocessor configured to dispatch instructions of the N threads to an execution pipeline in a round-robin fashion within each of the G groups independent of the other G groups, comprising:
A method for generating a round-robin bit for use in selecting one of N threads for dispatching an instruction to an execution pipeline in a multi threading microprocessor, the N threads each being in one of G groups, each group having a priority, the priority being one of P priorities, wherein a subset of the N threads may have a dispatchable instruction in a selection cycle, the method comprising:
A computer program product for use with a computing device, the computer program product comprising:
Dependencies are inferred from the claim text.