The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.

The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.

Date of Patent:
Feb. 16, 2010

Filed:

Feb. 04, 2005
Applicants:

Michael Gottlieb Jensen, Sunnyvale, CA (US);

Darren M. Jones, Los Altos, CA (US);

Ryan C. Kinter, Sammamish, WA (US);

Sanjay Vishin, Sunnyvale, CA (US);

Inventors:

Michael Gottlieb Jensen, Sunnyvale, CA (US);

Darren M. Jones, Los Altos, CA (US);

Ryan C. Kinter, Sammamish, WA (US);

Sanjay Vishin, Sunnyvale, CA (US);

Assignee:

MIPS Technologies, Inc., Sunnyvale, CA (US);

Attorney:
Primary Examiner:
Int. Cl.
CPC ...
G06F 9/50 (2006.01);
U.S. Cl.
CPC ...
Abstract

An apparatus for scheduling dispatch of instructions among a plurality of threads being concurrently executed in a multithreading processor is provided. The apparatus includes an instruction decoder that generate register usage information for an instruction from each of the threads, a priority generator that generates a priority for each instruction based on the register usage information and state information of instructions currently executing in an execution pipeline, and selection logic that dispatches at least one instruction from at least one thread based on the priority of the instructions. The priority indicates the likelihood the instruction will execute in the execution pipeline without stalling. For example, an instruction may have a high priority if it has little or no register dependencies or its data is known to be available; or may have a low priority if it has strong register dependencies or is an uncacheable or synchronized storage space load instruction.


Find Patent Forward Citations

Loading…