JP4574493B2 - プロセッサシステム及びマルチスレッドプロセッサ - Google Patents
プロセッサシステム及びマルチスレッドプロセッサ Download PDFInfo
- Publication number
- JP4574493B2 JP4574493B2 JP2005240195A JP2005240195A JP4574493B2 JP 4574493 B2 JP4574493 B2 JP 4574493B2 JP 2005240195 A JP2005240195 A JP 2005240195A JP 2005240195 A JP2005240195 A JP 2005240195A JP 4574493 B2 JP4574493 B2 JP 4574493B2
- Authority
- JP
- Japan
- Prior art keywords
- thread
- output
- processor
- frequency
- control signal
- 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.)
- Expired - Fee Related
Links
- 230000006870 function Effects 0.000 description 10
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 9
- 238000000034 method Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3851—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
Description
まず、動作周波数が200MHzに固定されている、即ち周波数制御信号121が常に「1」の場合に、スレッドスケジューラ110が実行するスレッドスケジュールの方法について説明する。この場合は、従来のリアルタイム性を保証できるマルチスレッドプロセッサと同じ動作である。即ち、周波数制御信号121が常に「1」であるので、マルチプレクサ147、148でハードリアルタイムスレッドテーブル220bのみが参照され、ハードリアルタイムスレッドテーブル220aは参照されない。従って、リアルタイム性を保証できるマルチスレッドプロセッサでは、ハードリアルタイムスレッドテーブル220a、マルチプレクサ147、148を省略することができる。
次に、プロセッサの動作周波数が1/2(100MHz)に変化した場合に、マルチスレッドプロセッサ101におけるスレッドスケジューラ110が実行するスレッドスケジュールの方法について説明する。
次に、図面を参照しながら本発明に係る他の実施形態について詳細に説明する。
101 マルチスレッドプロセッサ
110 スレッドスケジューラ(SCHED)
115 制御回路(CTRL)
116 データパス
120 プロセッサクロック(CLK)
121 周波数制御信号(FREQCTRL)
220 ハードリアルタイムスレッドテーブル
221 ノンリアルタイムスレッドテーブル
222 ハードリアルタイムスレッドテーブル
223 スレッド
224 スレッドスケジュール情報
Claims (8)
- クロック生成回路と、マルチスレッドプロセッサとで構成されるプロセッサシステムであって、
前記クロック生成回路は、前記マルチスレッドプロセッサの動作周波数を変化させるための周波数制御信号に基づいて、前記マルチスレッドプロセッサのプロセッサクロックを生成するクロック生成手段を有し、
前記マルチスレッドプロセッサは、当該マルチスレッドプロセッサの動作周波数を変化させるための周波数制御信号を出力する制御手段と、前記制御手段が出力する周波数制御信号に基づいて実行させるスレッドのスレッド番号を選択して出力するスケジュール手段と、前記スケジュール手段が出力するスレッド番号のスレッドを前記プロセッサクロックに同期して実行する実行手段と、を有し、
前記スケジュール手段は、
前記周波数制御信号が、前記動作周波数が所定の周波数であることを示す場合に、前記スレッド番号を一定周期で出力するように当該スレッド番号をテーブルの要素として保持している第1のスレッドスケジュールテーブルと、
前記周波数制御信号が、前記動作周波数を前記所定の周波数から変化させたことを示す場合に、前記スレッド番号を前記一定周期と同じ周期で出力するように当該スレッド番号をテーブルの要素として保持している第2のスレッドスケジュールテーブルと、
前記第1のスレッドスケジュールテーブルと前記第2のスレッドスケジュールテーブルとにそれぞれ保持されている各要素をテーブルから順に繰り返し読み出す読み出し手段と、
前記周波数制御信号により前記動作周波数が所定の周波数の場合、前記読み出し手段により前記第1のスレッドスケジュールテーブルから読み出された要素を選択して出力し、前記周波数制御信号により前記動作周波数を前記所定の周波数から変化させた場合、前記読み出し手段により前記第2のスレッドスケジュールテーブルから読み出された要素を選択して出力する出力手段と、を含むことを特徴とするプロセッサシステム。 - 前記第1及び第2のスレッドスケジュールテーブルは、前記スレッド番号を前記一定周期又は前記一定周期と同じ周期で出力する必要があるか否かを示す情報を更に保持し、
前記スケジュール手段は、前記スレッド番号を一定周期で出力又は前記一定周期と同じ周期で出力する必要がないスレッド番号を保持する第3のスレッドスケジュールテーブルと、前記第3のスレッドスケジュールテーブルに保持された前記スレッド番号をテーブルから順に繰り返し読み出す手段とを更に有し、
前記情報が前記スレッド番号を前記一定周期又は前記一定周期と同じ周期で出力する必要がないことを示す場合に、前記出力手段は、前記第3のスレッドスケジュールテーブルから読み出されたスレッド番号を出力することを特徴とする請求項1に記載のプロセッサシステム。 - クロック生成回路と、マルチスレッドプロセッサとで構成されるプロセッサシステムであって、
前記クロック生成回路は、前記マルチスレッドプロセッサの動作周波数を変化させるための周波数制御信号に基づいて、前記マルチスレッドプロセッサのプロセッサクロックを生成するクロック生成手段を有し、
前記マルチスレッドプロセッサは、当該マルチスレッドプロセッサの動作周波数を変化させるための周波数制御信号を出力する制御手段と、前記制御手段が出力する周波数制御信号に基づいて実行させるスレッドのスレッド番号を選択して出力するスケジュール手段と、前記スケジュール手段が出力するスレッド番号のスレッドを前記プロセッサクロックに同期して実行する実行手段と、を有し、
前記スケジュール手段は、
前記動作周波数によらず一定周期で出力されるべきスレッドのスレッド番号をテーブルの要素として保持しているスレッドスケジュールテーブルと、
前記スレッドスケジュールテーブルに保持されている各要素をテーブルから順に繰り返し読み出す読み出し手段と、
前記周波数制御信号が、前記動作周波数が基準の周波数であることを示す場合、前記読み出し手段により前記スレッドスケジュールテーブルから読み出された要素を出力し、前記周波数制御信号が、前記動作周波数が前記基準の周波数のn倍であることを示す場合、前記読み出し手段により前記スレッドスケジュールテーブルから読み出された要素をn周期のうち1周期は出力し、n−1周期は出力しないようにする出力手段と、を含むことを特徴とするプロセッサシステム。 - 前記スレッドスケジュールテーブルは、前記スレッド番号を一定周期で出力する必要があるか否かを示す情報を更に保持し、
前記スケジュール手段は、前記スレッド番号を一定周期で出力する必要がないスレッド番号を保持する第2のスレッドスケジュールテーブルと、前記第2のスレッドスケジュールテーブルに保持された前記スレッド番号をテーブルから順に繰り返し読み出す手段とを更に有し、
前記情報が前記スレッド番号を一定周期で出力する必要がないことを示す場合に、前記出力手段は、前記第2のスレッドスケジュールテーブルから読み出されたスレッド番号を出力することを特徴とする請求項3に記載のプロセッサシステム。 - マルチスレッドプロセッサの動作周波数を変化させるための周波数制御信号をクロック生成回路へ出力し、該周波数制御信号に基づいて前記クロック生成回路で生成された前記マルチスレッドプロセッサのプロセッサクロックを入力するマルチスレッドプロセッサであって、
前記動作周波数を変化させるための周波数制御信号を出力する制御手段と、
前記制御手段が出力する周波数制御信号に基づいて実行させるスレッドのスレッド番号を選択して出力するスケジュール手段と、
前記スケジュール手段が出力するスレッド番号のスレッドを前記プロセッサクロックに同期して実行する実行手段と、を有し、
前記スケジュール手段は、
前記周波数制御信号が、前記動作周波数が所定の周波数であることを示す場合に、前記スレッド番号を一定周期で出力するように当該スレッド番号をテーブルの要素として保持している第1のスレッドスケジュールテーブルと、
前記周波数制御信号が、前記動作周波数を前記所定の周波数から変化させたことを示す場合に、前記スレッド番号を前記一定周期と同じ周期で出力するように当該スレッド番号をテーブルの要素として保持している第2のスレッドスケジュールテーブルと、
前記第1のスレッドスケジュールテーブルと前記第2のスレッドスケジュールテーブルとにそれぞれ保持されている各要素をテーブルから順に繰り返し読み出す読み出し手段と、
前記周波数制御信号により前記動作周波数が所定の周波数の場合、前記読み出し手段により前記第1のスレッドスケジュールテーブルから読み出された要素を選択して出力し、前記周波数制御信号により前記動作周波数を前記所定の周波数から変化させた場合、前記読み出し手段により前記第2のスレッドスケジュールテーブルから読み出された要素を選択して出力する出力手段と、を含むことを特徴とするマルチスレッドプロセッサ。 - 前記第1及び第2のスレッドスケジュールテーブルは、前記スレッド番号を前記一定周期又は前記一定周期と同じ周期で出力する必要があるか否かを示す情報を更に保持し、
前記スケジュール手段は、前記スレッド番号を一定周期で出力又は前記一定周期と同じ周期で出力する必要がないスレッド番号を保持する第3のスレッドスケジュールテーブルと、前記第3のスレッドスケジュールテーブルに保持された前記スレッド番号をテーブルから順に繰り返し読み出す手段とを更に有し、
前記情報が前記スレッド番号を前記一定周期又は前記一定周期と同じ周期で出力する必要がないことを示す場合に、前記出力手段は、前記第3のスレッドスケジュールテーブルから読み出されたスレッド番号を出力することを特徴とする請求項5に記載のマルチスレッドプロセッサ。 - マルチスレッドプロセッサの動作周波数を変化させるための周波数制御信号をクロック生成回路へ出力し、該周波数制御信号に基づいて前記クロック生成回路で生成された前記マルチスレッドプロセッサのプロセッサクロックを入力するマルチスレッドプロセッサであって、
前記動作周波数を変化させるための周波数制御信号を出力する制御手段と、
前記制御手段が出力する周波数制御信号に基づいて実行させるスレッドのスレッド番号を選択して出力するスケジュール手段と、
前記スケジュール手段が出力するスレッド番号のスレッドを前記プロセッサクロックに同期して実行する実行手段と、を有し、
前記スケジュール手段は、
前記動作周波数によらず一定周期で出力されるべきスレッドのスレッド番号をテーブルの要素として保持しているスレッドスケジュールテーブルと、
前記スレッドスケジュールテーブルに保持されている各要素をテーブルから順に繰り返し読み出す読み出し手段と、
前記周波数制御信号が、前記動作周波数が基準の周波数であることを示す場合、前記読み出し手段により前記スレッドスケジュールテーブルから読み出された要素を出力し、前記周波数制御信号が、前記動作周波数が前記基準の周波数のn倍であることを示す場合、前記読み出し手段により前記スレッドスケジュールテーブルから読み出された要素をn周期のうち1周期は出力し、n−1周期は出力しないようにする出力手段と、を含むことを特徴とするマルチスレッドプロセッサ。 - 前記スレッドスケジュールテーブルは、前記スレッド番号を一定周期で出力する必要があるか否かを示す情報を更に保持し、
前記スケジュール手段は、前記スレッド番号を一定周期で出力する必要がないスレッド番号を保持する第2のスレッドスケジュールテーブルと、前記第2のスレッドスケジュールテーブルに保持された前記スレッド番号をテーブルから順に繰り返し読み出す手段とを更に有し、
前記情報が前記スレッド番号を一定周期で出力する必要がないことを示す場合に、前記出力手段は、前記第2のスレッドスケジュールテーブルから読み出されたスレッド番号を出力することを特徴とする請求項7に記載のマルチスレッドプロセッサ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005240195A JP4574493B2 (ja) | 2005-08-22 | 2005-08-22 | プロセッサシステム及びマルチスレッドプロセッサ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005240195A JP4574493B2 (ja) | 2005-08-22 | 2005-08-22 | プロセッサシステム及びマルチスレッドプロセッサ |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2007058331A JP2007058331A (ja) | 2007-03-08 |
JP2007058331A5 JP2007058331A5 (ja) | 2008-09-04 |
JP4574493B2 true JP4574493B2 (ja) | 2010-11-04 |
Family
ID=37921815
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005240195A Expired - Fee Related JP4574493B2 (ja) | 2005-08-22 | 2005-08-22 | プロセッサシステム及びマルチスレッドプロセッサ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4574493B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009110404A (ja) | 2007-10-31 | 2009-05-21 | Toshiba Corp | 仮想計算機システム及び同システムにおけるゲストosスケジューリング方法 |
JP5173712B2 (ja) | 2008-09-30 | 2013-04-03 | ルネサスエレクトロニクス株式会社 | マルチスレッドプロセッサ |
JP5173711B2 (ja) | 2008-09-30 | 2013-04-03 | ルネサスエレクトロニクス株式会社 | マルチスレッドプロセッサ及びそのハードウェアスレッドのスケジュール方法 |
JP5173713B2 (ja) | 2008-09-30 | 2013-04-03 | ルネサスエレクトロニクス株式会社 | マルチスレッドプロセッサ及びそのハードウェアスレッドのスケジュール方法 |
JP5838237B2 (ja) * | 2014-04-24 | 2016-01-06 | ルネサスエレクトロニクス株式会社 | マルチスレッドプロセッサ |
US11288072B2 (en) * | 2019-09-11 | 2022-03-29 | Ceremorphic, Inc. | Multi-threaded processor with thread granularity |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002183110A (ja) * | 2000-12-18 | 2002-06-28 | Sony Corp | マイクロコンピュータ及びカウント処理方法 |
JP2004252987A (ja) * | 2003-02-20 | 2004-09-09 | Samsung Electronics Co Ltd | 同時多重スレッディングプロセッサ回路、動作するスレッドの数に基づいて相異なる性能レベルで動作するように構成されるコンピュータプログラム製品及びこれらを動作させる方法 |
JP2004326765A (ja) * | 2003-04-25 | 2004-11-18 | Internatl Business Mach Corp <Ibm> | マルチスレッド・プロセッサにおいて処理する命令スレッドを選択するための方法および装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05158899A (ja) * | 1991-12-02 | 1993-06-25 | Nippon Telegr & Teleph Corp <Ntt> | 周期処理方法 |
JPH08249082A (ja) * | 1995-03-08 | 1996-09-27 | Canon Inc | マイクロプロセッサ周辺回路およびマイクロプロセッサ周辺回路の動作クロックモード設定方法 |
-
2005
- 2005-08-22 JP JP2005240195A patent/JP4574493B2/ja not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002183110A (ja) * | 2000-12-18 | 2002-06-28 | Sony Corp | マイクロコンピュータ及びカウント処理方法 |
JP2004252987A (ja) * | 2003-02-20 | 2004-09-09 | Samsung Electronics Co Ltd | 同時多重スレッディングプロセッサ回路、動作するスレッドの数に基づいて相異なる性能レベルで動作するように構成されるコンピュータプログラム製品及びこれらを動作させる方法 |
JP2004326765A (ja) * | 2003-04-25 | 2004-11-18 | Internatl Business Mach Corp <Ibm> | マルチスレッド・プロセッサにおいて処理する命令スレッドを選択するための方法および装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2007058331A (ja) | 2007-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6775766B2 (en) | Methods and apparatus to dynamically reconfigure the instruction pipeline of an indirect very long instruction word scalable processor | |
JP4574493B2 (ja) | プロセッサシステム及びマルチスレッドプロセッサ | |
JP2748822B2 (ja) | 情報処理装置 | |
KR100983135B1 (ko) | 패킷의 의존성 명령을 그룹핑하여 실행하는 프로세서 및 방법 | |
US20050257027A1 (en) | Processing apparatus, processing method and compiler | |
WO2002008893A1 (en) | A microprocessor having an instruction format containing explicit timing information | |
US20090249037A1 (en) | Pipeline processors | |
JP4412905B2 (ja) | 低電力動作制御装置、およびプログラム最適化装置 | |
KR100483463B1 (ko) | 사전-스케쥴링 명령어 캐시를 구성하기 위한 방법 및 장치 | |
CN116662255A (zh) | 结合超越函数硬件加速器的risc-v处理器实现方法及系统 | |
KR20030051380A (ko) | 마이크로프로세서 | |
EP0223150A2 (en) | Information processing apparatus | |
JP3958239B2 (ja) | マイクロコントローラ | |
JPH1091430A (ja) | 命令解読装置 | |
RU2816094C1 (ru) | Vliw-процессор с дополнительным подготовительным конвейером и предсказателем перехода | |
EP1384145B1 (en) | Expanded functionality of processor operations within a fixed width instruction encoding | |
JP5149115B2 (ja) | 半導体試験装置 | |
JPH0524537B2 (ja) | ||
JP3512707B2 (ja) | マイクロコンピュータ | |
KR100284288B1 (ko) | 프로세서의 전력 절감 장치 및 방법 | |
US20100174885A1 (en) | Reconfigurable processor and operating method of the same | |
JP3435252B2 (ja) | 情報処理装置 | |
JPH09223010A (ja) | マイクロプロセッサおよびその処理方法 | |
JP2003248670A (ja) | プロセッサ | |
JP2003122628A (ja) | デジタル信号処理装置、プログラム変換装置、及びデジタル信号処理装置を有する通信システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080723 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080723 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100201 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100219 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100420 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100517 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100716 |
|
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: 20100806 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100818 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4574493 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130827 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |