JP4388005B2 - コンテキスト切替え装置 - Google Patents
コンテキスト切替え装置 Download PDFInfo
- Publication number
- JP4388005B2 JP4388005B2 JP2005294190A JP2005294190A JP4388005B2 JP 4388005 B2 JP4388005 B2 JP 4388005B2 JP 2005294190 A JP2005294190 A JP 2005294190A JP 2005294190 A JP2005294190 A JP 2005294190A JP 4388005 B2 JP4388005 B2 JP 4388005B2
- Authority
- JP
- Japan
- Prior art keywords
- transfer
- context
- processor
- priority
- processors
- 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
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/46—Multiprogramming arrangements
- G06F9/461—Saving or restoring of program or task context
- G06F9/462—Saving or restoring of program or task context with multiple register sets
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System (AREA)
- Multi Processors (AREA)
Description
図17において、従来のコンテキスト切替え装置1001は、プロセッサ1002と、コンテキストを格納するメモリ1003とを備える。なお、ここではコンテキストを切替える動作の説明を簡単にするため、本図では説明に必要な機能ブロックのみを記載している。
まず、処理の前提を、図18(a)で説明する。
図1は本発明の実施の形態1に係るコンテキスト切替え装置を用いた、並列システムの全体構成を示す機能ブロック図である。
なお、データ転送制御部13のデータ経路切替え部134は、請求項における転送手段を構成し、転送モード格納部11、優先度判定部12およびデータ転送制御部13の転送中断制御部131、最大アクセス数格納部132、制御部133によって請求項における制御手段が構成される。
コンテキスト転送モードに関する情報は、上記したように、連続転送プロセッサ数111と、コンテキスト転送属性112と、選択情報113と、モード選択情報114との4つの情報で構成される。
優先度判定部12は、優先度格納部121と、実行時間比較部122と、割り込み情報生成部123と、転送待ち時間計数部124と、選択部125と、データ転送情報生成部126とを備える。
データ転送制御部13は、転送中断制御部131と、最大アクセス数格納部132と、制御部133と、データ経路切替え部134とを備える。
図8および図9は、N=3、M=2、S=6の場合で、コンテキスト転送属性112の設定はLP(1),LP(2),LP(4)が「連続転送する」、LP(3),LP(5),LP(6)が「連続転送しない」である場合のコンテキストデータ転送のタイミングチャートである。
モード選択情報114には、選択部125が実行時間比較部122の情報を選択してデータ転送情報生成部126へ出力することを指定する情報を設定する。
図12は、転送中断制御部131を使用した場合のタイミングチャートである。
本発明の実施の形態2について、図面を参照しながら詳細に説明する。
10 コンテキスト切替え装置
11 転送モード格納部
12 優先度判定部
13 データ転送制御部
15 カウンタ
20 プロセッサ
30 共有メモリ
110 転送モード情報
111 連続転送プロセッサ数
112 コンテキスト転送属性
113 選択情報
114 モード選択情報
121 優先度格納部
122 実行時間比較部
123 割り込み情報生成部
124 転送待ち時間計数部
125 選択部
126 データ転送情報生成部
127 連続転送するプロセッサ番号情報
128 連続転送しないプロセッサ番号情報
129 転送中断情報
131 転送中断制御部
132 最大アクセス数格納部
133 制御部
134 データ経路切替え部
400 割り込み信号
Claims (19)
- 複数のプログラムを切替えながら実行するN個のプロセッサと、M(M<N)個のアクセスポートを有し、前記N個のプロセッサから退避されたコンテキストデータを記憶する共有メモリとを含む並列システムに用いられ、各プロセッサと共有メモリとの間でコンテキストデータを並列に転送することによって各プロセッサのコンテキストを切替えるコンテキス切替え装置であって、
コンテキストデータの転送を連続サイクルで行う第1転送モード、およびコンテキストデータ転送をサイクル毎に対象とするプロセッサを切替えながら行う第2転送モードの少なくとも一方によりコンテキストデータを転送する転送手段と、
M個より多い数のプロセッサからのコンテキスト切替え要求が競合した場合に、第1転送モードの対象とすべきプロセッサと、第2転送モードの対象とすべきプロセッサとを決定し、決定に従って転送手段を制御する制御手段と
を備えることを特徴とするコンテキスト切替え装置。 - 前記制御手段は、
プロセッサの転送モードに関する転送モード情報を格納する転送モード格納手段と、
転送モード情報に基づいて前記競合に関わるプロセッサのうち第1転送モードの対象とすべきプロセッサを優先度を用いて判定し、判定結果に応じて第1および第2転送モードそれぞれの対象とすべきプロセッサを決定する優先度判定手段と
を備えることを特徴とする請求項1記載のコンテキスト切替え装置。 - 前記転送モード情報は、第1転送モードの対象とすべきプロセッサの数を示し、
前記優先度判定手段は、転送モード情報に示される数の範囲内で第1転送モードの対象とすべきプロセッサを判定する
ことを特徴とする請求項2記載のコンテキスト切替え装置。 - 前記転送モード情報は、プロセッサで実行されるプログラム毎に、第1転送モードの対象とすべきか否かを示す
ことを特徴とする請求項2記載のコンテキスト切替え装置。 - 前記優先度判定手段は、プロセッサで実行されるプログラム毎に定められた優先度を格納する優先度格納手段を備える
ことを特徴とする請求項2記載のコンテキスト切替え装置。 - 前記優先度判定手段は、各プロセッサで実行中のプログラムに割り当てられた時間の残り時間を比較することによって、プログラム毎に残り時間に依存する前記優先度を生成する実行時間比較手段を備える
ことを特徴とする請求項2記載のコンテキスト切替え装置。 - 前記残り時間が最も少ないプログラムの優先度は最も高い
ことを特徴とする請求項6記載のコンテキスト切替え装置。 - 前記実行時間比較手段は、さらに、転送手段において転送中の各コンテキストデータの転送完了待ち時間の最大値が最小になるように、第1転送モードの対象とすべきプロセッサ数を特定し、
前記転送手段は、特定された前記プロセッサ数に従ってコンテキストデータ転送を行う
ことを特徴とする請求項6記載のコンテキスト切替え装置。 - 前記転送モード情報はモード選択情報を含み、
前記優先度判定手段は、
各プロセッサで実行中のプログラムに割り当てられた時間の残り時間を比較することによって、残り時間に依存する第1の優先度をプログラム毎に生成する実行時間比較手段と、
プロセッサで実行されるプログラム毎に定められた第2の優先度を格納する優先度格納手段と、
前記モード選択情報に従って、前記第1の優先度と前記第2の優先度とのいずれかを前記優先度として選択する選択手段とを備える
ことを特徴とする請求項2記載のコンテキスト切替え装置。 - 前記優先度判定手段は、さらに、
前記選択手段によって選択された優先度と、前記転送モード情報とに従って、第1および第2転送モードそれぞれの対象とすべきプロセッサを示すデータ転送情報を生成するデータ転送情報生成手段を備える
ことを特徴とする請求項9記載のコンテキスト切替え装置。 - 前記データ転送情報は、第1転送モードの対象とするプロセッサのプロセッサ番号と、第2転送モードの対象とするプロセッサのプロセッサ番号とを示す
ことを特徴とする請求項10記載のコンテキスト切替え装置。 - 前記優先度判定手段は、さらに、
プログラムを実行させるための割り込み信号が入力されたとき、割り込み対象のプログラムを実行するプロセッサのコンテキストデータの転送を優先するための情報を前記転送手段に出力する割り込み情報生成手段を備える
ことを特徴とする請求項2記載のコンテキスト切替え装置。 - 前記優先度判定手段は、さらに、
前記割り込み対象のプログラムのコンテキストデータ転送の待ち時間を計数し、計数した待ち時間が所定数に達したことを要因として前記割り込み対象プログラムの優先度を高くする転送待ち時間計数手段を備える
ことを特徴とする請求項12記載のコンテキスト切替え装置。 - 前記待ち時間は、コンテキストデータの転送がスキップされた回数である
ことを特徴とする請求項13記載のコンテキスト切替え装置。 - 前記転送手段は、
第1のプログラムを実行するプロセッサのコンテキストデータの転送を一時的に中断し、中断中に第1のプログラムとは異なる第2のプログラムを実行するプロセッサのコンテキストデータを転送する転送中断制御手段を備える
ことを特徴とする請求項2記載のコンテキスト切替え装置。 - 前記共有メモリは複数のメモリで構成され、
前記転送手段は、インターリーブ方式によるアクセスにより複数の前記プロセッサの複数のコンテキストデータを同時に転送する
ことを特徴とする請求項1記載のコンテキスト切替え装置。 - 前記転送手段は、同時並列に転送するプロセッサの最大数を保持する最大アクセス数格納手段を備え、
前記転送手段は、1転送サイクルあたりに並列に入力または出力するデータ数を、最大アクセス数格納手段に設定された数の範囲内で行う
ことを特徴とする請求項1記載のコンテキスト切替え装置。 - 前記共有メモリは、M個のプロセッサが同時にアクセスすることが可能なマルチポートメモリで構成されている
ことを特徴とする請求項1記載のコンテキスト切替え装置。 - 複数のプログラムを切替えながら実行するN個のプロセッサと、M(M<N)個のアクセスポートを有し、前記N個のプロセッサから退避されたコンテキストデータを記憶する共有メモリとを含む並列システムに用いられ、各プロセッサと共有メモリとの間でコンテキストデータを並列に転送することによって各プロセッサのコンテキストを切替えるコンテキス切替え方法であって、
M個より多い数のプロセッサからのコンテキスト切替え要求が競合した場合に、コンテキストデータの転送を連続サイクルで行う第1転送モードの対象とすべきプロセッサと、コンテキストデータ転送をサイクル毎に対象とするプロセッサを切替えながら行う第2転送モードの対象とすべきプロセッサとを決定する決定ステップと、
決定に従って、第1転送モードおよび第2転送モードの少なくとも一方によりコンテキストデータを転送する転送ステップと
を含むことを特徴とするコンテキスト切替え方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005294190A JP4388005B2 (ja) | 2005-10-06 | 2005-10-06 | コンテキスト切替え装置 |
US11/538,542 US7822952B2 (en) | 2005-10-06 | 2006-10-04 | Context switching device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005294190A JP4388005B2 (ja) | 2005-10-06 | 2005-10-06 | コンテキスト切替え装置 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2007102646A JP2007102646A (ja) | 2007-04-19 |
JP2007102646A5 JP2007102646A5 (ja) | 2008-03-06 |
JP4388005B2 true JP4388005B2 (ja) | 2009-12-24 |
Family
ID=37912247
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005294190A Expired - Fee Related JP4388005B2 (ja) | 2005-10-06 | 2005-10-06 | コンテキスト切替え装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7822952B2 (ja) |
JP (1) | JP4388005B2 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010066785A (ja) * | 2006-12-08 | 2010-03-25 | Nec Corp | 半導体集積回路、半導体集積回路制御装置、負荷分散方法、負荷分散プログラムおよび電子装置 |
JP2008177900A (ja) * | 2007-01-19 | 2008-07-31 | Fujitsu Ltd | データ通信装置、設定情報更新方法および設定情報更新プログラム |
JP2009025866A (ja) * | 2007-07-17 | 2009-02-05 | Nec Electronics Corp | メモリコントローラ、バスシステム、集積回路、及び、集積回路の制御方法。 |
US8031496B2 (en) * | 2007-11-07 | 2011-10-04 | Panasonic Corporation | Driving circuit for power switching device, driving method thereof, and switching power supply apparatus |
JP5336423B2 (ja) * | 2010-05-14 | 2013-11-06 | パナソニック株式会社 | 計算機システム |
US10534743B2 (en) * | 2013-10-30 | 2020-01-14 | Advanced Micro Devices, Inc. | Method and apparatus for providing performance data over a debug bus |
US9678903B1 (en) * | 2014-10-15 | 2017-06-13 | Intel Corporation | Systems and methods for managing inter-CPU interrupts between multiple CPUs |
US10318356B2 (en) * | 2016-03-31 | 2019-06-11 | International Business Machines Corporation | Operation of a multi-slice processor implementing a hardware level transfer of an execution thread |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS643739A (en) | 1987-06-26 | 1989-01-09 | Toshiba Corp | Information processor |
JPH09288585A (ja) | 1996-04-19 | 1997-11-04 | Toshiba Chem Corp | 自動機械の動作順序制御方法 |
JP3999943B2 (ja) | 2001-03-13 | 2007-10-31 | 株式会社東芝 | マルチバンクアクセス制御装置及びマルチバンクアクセス制御方法 |
JP2002312302A (ja) | 2001-04-09 | 2002-10-25 | Denso Corp | 周辺装置 |
JP3813930B2 (ja) | 2002-01-09 | 2006-08-23 | 松下電器産業株式会社 | プロセッサ及びプログラム実行方法 |
US6981083B2 (en) * | 2002-12-05 | 2005-12-27 | International Business Machines Corporation | Processor virtualization mechanism via an enhanced restoration of hard architected states |
JP4546775B2 (ja) * | 2004-06-30 | 2010-09-15 | 富士通株式会社 | 時分割多重処理可能なリコンフィギュラブル回路 |
-
2005
- 2005-10-06 JP JP2005294190A patent/JP4388005B2/ja not_active Expired - Fee Related
-
2006
- 2006-10-04 US US11/538,542 patent/US7822952B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20070083865A1 (en) | 2007-04-12 |
JP2007102646A (ja) | 2007-04-19 |
US7822952B2 (en) | 2010-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4388005B2 (ja) | コンテキスト切替え装置 | |
KR100613923B1 (ko) | 다수의 파이프라인을 이용해 패킷을 다수의 프로그래밍 엔진에 할당하는 방법, 프로세서, 컴퓨터 판독 가능 저장 매체 및 멀티프로세싱 시스템 | |
JPWO2008087779A1 (ja) | アレイ型プロセッサおよびデータ処理システム | |
US20070186030A1 (en) | Fast random access DRAM management method | |
JPH06318178A (ja) | キャッシュタグメモリ用キャッシュタグ制御装置及び制御方法 | |
JP2006202271A (ja) | ストリームプロセッサ及び情報処理装置 | |
JP4536189B2 (ja) | Dma転送装置及びdma転送システム | |
JP4440181B2 (ja) | ストリーミングidメソッドによるdmac発行メカニズム | |
JPH06214875A (ja) | 記憶制御装置 | |
JP2009505178A (ja) | 少なくとも2つの命令実行部と少なくともデータ及び/または命令のための第1記憶装置または記憶領域とを備えたコンピュータシステムにおいて、データ及び/または命令を格納する装置及び方法 | |
JP2008102599A (ja) | プロセッサ | |
WO2018138975A1 (ja) | 演算処理装置および情報処理システム | |
JP2004118300A (ja) | Dmaコントローラ | |
JP2000227895A (ja) | 画像データ転送装置および画像データ転送方法 | |
JP3799451B2 (ja) | 電子計算機システム | |
JPH07230358A (ja) | 多重化ボリューム装置 | |
JP4624715B2 (ja) | システムlsi | |
JPH06348592A (ja) | ライトバッファ制御方式 | |
JP2000250852A (ja) | バス調停装置、バスシステムおよびバス調停方法 | |
JP2005063358A (ja) | 命令供給制御装置および半導体装置 | |
JPH07152650A (ja) | キャッシュ制御装置 | |
JP2003228546A (ja) | ダイレクト・メモリ・アクセス制御装置 | |
JPH1083373A (ja) | プログラマブルコントローラ | |
JP2000066946A (ja) | メモリコントローラ | |
JP2004102576A (ja) | メモリアクセス装置およびそれを用いた演算システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080116 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080116 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090819 |
|
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: 20090901 |
|
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: 20091001 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121009 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131009 Year of fee payment: 4 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |