JP5536863B2 - マルチスレッドプロセッサ - Google Patents
マルチスレッドプロセッサ Download PDFInfo
- Publication number
- JP5536863B2 JP5536863B2 JP2012284004A JP2012284004A JP5536863B2 JP 5536863 B2 JP5536863 B2 JP 5536863B2 JP 2012284004 A JP2012284004 A JP 2012284004A JP 2012284004 A JP2012284004 A JP 2012284004A JP 5536863 B2 JP5536863 B2 JP 5536863B2
- Authority
- JP
- Japan
- Prior art keywords
- thread
- hardware
- slot
- selector
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Advance Control (AREA)
Description
以下、図面を参照して本発明の実施の形態について説明する。図1に本実施の形態にかかるマルチスレッドプロセッサ1を含むプロセッサシステムのブロック図を示す。本実施の形態にかかるプロセッサシステムでは、システムバスを介してマルチスレッドプロセッサ1とメモリ2が接続される。なお、図示はしていないが、システムバスには、入出力インタフェースなどの他の回路も接続されるものとする。
2 メモリ
10 演算回路
11 割り込みコントローラ
12 PC生成回路
13、18、30、37 セレクタ
14 命令メモリ
15 命令バッファ
16 パイプライン制御回路
17 命令フェッチコントローラ
19 スレッドスケジューラ
21 命令デコーダ
22 実行ユニット
23 データレジスタ
31 第1のスケジューラ
32 第2のスケジューラ
33 スレッド制御レジスタ
34 カウンタ
35 カウント最大値格納部
36 一致比較回路
a、b データ
BUF0〜BUF0 命令バッファ領域
IMadd 命令フェッチアドレス
Radd データレジスタアドレス
SC 演算制御信号
TSEL スレッド選択信号
CNT カウント値
CNTM カウント最大値
RST リセット信号
SLT0〜SLT7 スロット
TPC0〜TCP3 スレッドプログラムカウンタ
Claims (4)
- それぞれが独立した命令流を生成する複数のハードウェアスレッドと、
スケジュールに従って、前記複数のハードウェアスレッドのうち次実行サイクルにおいて使用するハードウェアスレッドを選択するスレッド選択信号を出力するスレッドスケジューラと、
前記スレッド選択信号に応じて前記複数のハードウェアスレッドのいずれか1つを選択して、選択したハードウェアスレッドにより生成された命令を出力するセレクタと、
前記セレクタから出力される命令を実行する演算回路と、を有し、
前記スレッドスケジューラは、
あるアルゴリズムに従ってハードウェアスレッドを決定するスケジューラと、
各スロットが前記複数のハードウェアスレッドのうち1つを指定する第1の情報、又は、前記スケジューラを指定する第2の情報、を保持する複数のスロットを含むスレッド制御レジスタと、
前記複数のスロットのうち1つを指定する第3の情報を格納する格納部と、を有し、
前記スレッド制御レジスタの前記複数のスロットの第1のスロットからスロットを順々に選択し、前記格納部により指定されたスロットを選択したときには、前記第1のスロットに戻ってスロットを再び順次選択し、
選択されたスロットが前記第1の情報を保持しているときは当該第1の情報の指定するハードウェアスレッドを前記セレクタに選択させ、選択されたスロットが前記第2の情報を保持しているときは前記スケジューラにより決定されるハードウェアスレッドを前記セレクタに選択させ、
前記第1の情報、前記第2の情報及び前記第3の情報は、前記演算回路で実行される管理プログラムにより前記スレッド制御レジスタ及び前記格納部に設定されるマルチスレッドプロセッサ。 - 前記スレッドスケジューラは、前記スロットの番号を示すカウント値を所定の周期でカウントアップし、前記カウント値が前記第3の情報で示される値に達したことに応じて前記カウント値がリセットされるカウンタを有する請求項1に記載のマルチスレッドプロセッサ。
- 前記第1の情報を保持する前記スロットには、ハードウェアスレッド番号、及び、自スロットに保持されている前記ハードウェアスレッド番号を前記セレクタに選択させることを示す第1の期間属性設定フラグが保持され、
前記第2の情報を保持する前記スロットには、前記スケジューラを前記セレクタに選択させることを示す第2の期間属性設定フラグが保持される請求項1又は2に記載のマルチスレッドプロセッサ。 - 前記管理プログラムは、前記マルチスレッドプロセッサの起動後に実行される請求項1乃至3のいずれか1項に記載のマルチスレッドプロセッサ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012284004A JP5536863B2 (ja) | 2012-12-27 | 2012-12-27 | マルチスレッドプロセッサ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012284004A JP5536863B2 (ja) | 2012-12-27 | 2012-12-27 | マルチスレッドプロセッサ |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008252232A Division JP5173711B2 (ja) | 2008-09-30 | 2008-09-30 | マルチスレッドプロセッサ及びそのハードウェアスレッドのスケジュール方法 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014090595A Division JP5770333B2 (ja) | 2014-04-24 | 2014-04-24 | マルチスレッドプロセッサ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013080510A JP2013080510A (ja) | 2013-05-02 |
JP5536863B2 true JP5536863B2 (ja) | 2014-07-02 |
Family
ID=48526777
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012284004A Active JP5536863B2 (ja) | 2012-12-27 | 2012-12-27 | マルチスレッドプロセッサ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5536863B2 (ja) |
-
2012
- 2012-12-27 JP JP2012284004A patent/JP5536863B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2013080510A (ja) | 2013-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5173711B2 (ja) | マルチスレッドプロセッサ及びそのハードウェアスレッドのスケジュール方法 | |
JP5173712B2 (ja) | マルチスレッドプロセッサ | |
JP5173713B2 (ja) | マルチスレッドプロセッサ及びそのハードウェアスレッドのスケジュール方法 | |
JP6017260B2 (ja) | マルチスレッドプロセッサ | |
JP5173714B2 (ja) | マルチスレッドプロセッサ及びその割り込み処理方法 | |
JP5946566B2 (ja) | マルチスレッドプロセッサにおけるハードウェアスレッドのスケジュール方法 | |
JP5536863B2 (ja) | マルチスレッドプロセッサ | |
JP5770333B2 (ja) | マルチスレッドプロセッサ | |
JP5536862B2 (ja) | マルチスレッドプロセッサ | |
JP5838237B2 (ja) | マルチスレッドプロセッサ | |
JP5536864B2 (ja) | マルチスレッドプロセッサ | |
JP5770334B2 (ja) | マルチスレッドプロセッサ | |
JP2014067248A (ja) | プロセッサ、割り込み処理方法及び割り込み制御装置 | |
JP2012059195A (ja) | マルチスレッドプロセッサ | |
JP2015064861A (ja) | マルチスレッドプロセッサ | |
JP2014211890A (ja) | マルチスレッドプロセッサ及びその割り込み処理方法 | |
JP2013058265A (ja) | マルチスレッドプロセッサ及びその割り込み処理方法 | |
JP2006146641A (ja) | マルチスレッドプロセッサ及びマルチスレッドプロセッサの割込み方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131127 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20131203 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140203 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20140325 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140424 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5536863 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |