Multi-thread processor and its hardware thread scheduling method
First Claim
1. A multi-thread processor comprising:
- a plurality of hardware threads each of which generates an independent instruction flow;
a first thread scheduler that outputs a first thread selection signal, the first thread selection signal designating a hardware thread to be executed in a next execution cycle among the plurality of hardware threads according to a priority rank, the priority rank being established in advance for each of the plurality of hardware threads;
a first selector that selects one of the plurality of hardware threads according to the first thread selection signal and outputs an instruction generated by the selected hardware thread; and
an execution pipeline that executes an instruction output from the first selector,wherein whenever the hardware thread is executed in the execution pipeline, the first scheduler updates the priority rank for the executed hardware thread and outputs the first thread selection signal in accordance with the updated priority rank.
3 Assignments
0 Petitions
Accused Products
Abstract
A multi-thread processor in accordance with an exemplary aspect of the present invention includes a plurality of hardware threads each of which generates an independent instruction flow, a first thread scheduler that outputs a first thread selection signal designating a hardware thread to be executed in the next execution cycle, a first selector that outputs an instruction generated by the selected hardware thread according to the first thread selection signal, and an execution pipeline that executes an instruction output from the first selector, wherein whenever a hardware thread is executed in the execution pipeline, the first thread scheduler updates the priority rank of the executed hardware thread and outputs the first thread selection signal in accordance with the updated priority rank.
-
Citations
12 Claims
-
1. A multi-thread processor comprising:
-
a plurality of hardware threads each of which generates an independent instruction flow; a first thread scheduler that outputs a first thread selection signal, the first thread selection signal designating a hardware thread to be executed in a next execution cycle among the plurality of hardware threads according to a priority rank, the priority rank being established in advance for each of the plurality of hardware threads; a first selector that selects one of the plurality of hardware threads according to the first thread selection signal and outputs an instruction generated by the selected hardware thread; and an execution pipeline that executes an instruction output from the first selector, wherein whenever the hardware thread is executed in the execution pipeline, the first scheduler updates the priority rank for the executed hardware thread and outputs the first thread selection signal in accordance with the updated priority rank. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A hardware thread scheduling method in a multi-thread processor, the multi-thread processor comprising a plurality of hardware threads and being configured to execute an instruction flow generated by the hardware thread while switching the hardware thread in accordance with a predefined schedule, the hardware thread scheduling method comprising:
-
selecting a hardware thread having a highest priority rank among the plurality of hardware threads; executing an instruction generated by the selected hardware thread; updating the priority rank of the hardware thread that generated the executed instruction; and selecting the hardware thread having a highest priority rank among the updated priority ranks as the hardware thread that generates an instruction next. - View Dependent Claims (11, 12)
-
Specification