JPH0338764A - 情報処理装置 - Google Patents
情報処理装置Info
- Publication number
- JPH0338764A JPH0338764A JP17521989A JP17521989A JPH0338764A JP H0338764 A JPH0338764 A JP H0338764A JP 17521989 A JP17521989 A JP 17521989A JP 17521989 A JP17521989 A JP 17521989A JP H0338764 A JPH0338764 A JP H0338764A
- Authority
- JP
- Japan
- Prior art keywords
- register
- communication register
- contents
- processor
- communication
- 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.)
- Pending
Links
Landscapes
- Multi Processors (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はマルチプロセッサの通信に関し、特に排他制御
を行う情報処理装置に関したものである。
を行う情報処理装置に関したものである。
マルチプロセッサシステムの目的は、システムのスルー
プットを向上させることにある。各プロセッサは、互に
関係のないジョブを実行しているかも知れないし、また
同一ジョブ内の依存関係のあるタスクを実行しているか
も知れないし、あるタスクの一部をターンアランド短縮
の為に複数のプロセッサで実行させるケースもある。最
後のような場合においては、互にある共通のデータを参
照しながらタスクを実行していく事になる、が、ある−
時点においてはこの共通データを参照するプ□セッサは
1ケに制限する必要があるケースがある。
プットを向上させることにある。各プロセッサは、互に
関係のないジョブを実行しているかも知れないし、また
同一ジョブ内の依存関係のあるタスクを実行しているか
も知れないし、あるタスクの一部をターンアランド短縮
の為に複数のプロセッサで実行させるケースもある。最
後のような場合においては、互にある共通のデータを参
照しながらタスクを実行していく事になる、が、ある−
時点においてはこの共通データを参照するプ□セッサは
1ケに制限する必要があるケースがある。
この為、コックワードを足載しておきこのロックが取っ
たプロセッサのみが共通データをアクセスする事ができ
る。このロックワードは一般には主記憶上に置かれてい
た。
たプロセッサのみが共通データをアクセスする事ができ
る。このロックワードは一般には主記憶上に置かれてい
た。
上述した従来のマルチプロセッサでの排他制御用のロッ
クワードは主記憶上に置かれているため、一般に速度(
処理速度)が遅いという欠点がある。
クワードは主記憶上に置かれているため、一般に速度(
処理速度)が遅いという欠点がある。
本発明の情報処理装置は、複数のプロセッサと複数の該
プロセッサからアクセスされる複数のエントリから構成
される通信レジスタとを含む情報処理装置において、該
通信レジスタは該プロセッサからテスト及びセット命令
・アドレス情報・データを受信しアドレス情報で指定さ
れた該通信レジスタの内容を前記プロセッサに送出する
第一の手段と、該通信レジスタの内容が第一の状態にあ
る時、プロセッサからのデータを該通信レジスタに格納
すると共に第二の状態とする第二の手段と、該通信レジ
スタの内容が第二の状態にある時、該通信レジスタの内
容の一部を更新する第三の手段とを備えて構成される。
プロセッサからアクセスされる複数のエントリから構成
される通信レジスタとを含む情報処理装置において、該
通信レジスタは該プロセッサからテスト及びセット命令
・アドレス情報・データを受信しアドレス情報で指定さ
れた該通信レジスタの内容を前記プロセッサに送出する
第一の手段と、該通信レジスタの内容が第一の状態にあ
る時、プロセッサからのデータを該通信レジスタに格納
すると共に第二の状態とする第二の手段と、該通信レジ
スタの内容が第二の状態にある時、該通信レジスタの内
容の一部を更新する第三の手段とを備えて構成される。
次に、本発明について図面を参照して説明する。
第1図は本発明の一実施例のシステム構成を示すブロッ
ク図である。1〜3はプロセッサを示し、4は各プロセ
ッタからアクセスされる複数のエントリを含む通信レジ
スタである。
ク図である。1〜3はプロセッサを示し、4は各プロセ
ッタからアクセスされる複数のエントリを含む通信レジ
スタである。
プロセッサl〜3はおのおの通信レジスタ4に対しロー
ド、ストア、テスト及びセット命令の指示を行なう事が
できる。各命令の指示をプロセッサが与える時、通信レ
ジスタのエントリを示すアドレス情報2適信レジスタへ
のストアデータ(ストア命令あるいはテスト及びセット
時)を通信レジスタ4に送出する。
ド、ストア、テスト及びセット命令の指示を行なう事が
できる。各命令の指示をプロセッサが与える時、通信レ
ジスタのエントリを示すアドレス情報2適信レジスタへ
のストアデータ(ストア命令あるいはテスト及びセット
時)を通信レジスタ4に送出する。
第2図(a)および(b)は通信レジスタ内に保持する
データ形式を示す。第2図(a)はテスト及びセット命
令の時のデータ解釈、即ちロックワードとして使用する
際のデータ形式であり、第2図(b)はテスト及びセッ
ト命令以外の時すなわちロックワードとして使用せず、
プロセッサ間の情報交換用データとして使用されるデー
タ形式である。
データ形式を示す。第2図(a)はテスト及びセット命
令の時のデータ解釈、即ちロックワードとして使用する
際のデータ形式であり、第2図(b)はテスト及びセッ
ト命令以外の時すなわちロックワードとして使用せず、
プロセッサ間の情報交換用データとして使用されるデー
タ形式である。
第3図は通信レジスタ4のブロック図を示す、命令コー
ドレジスタ30.アドレスレジスタ31゜入力データレ
ジスタ32は、プロセッサより受信した情報である受信
した命令コードレジスタ30の内容をデコーダ33でデ
コードする。この結果、ロード命令であるとロード指示
34のラインが“1”となり、アドレスレジスタ31の
内容で示されたエントリの通信レジスタ35に入力デー
タレジスタ32の内容がセレクタ36で選択され格納さ
れる。
ドレジスタ30.アドレスレジスタ31゜入力データレ
ジスタ32は、プロセッサより受信した情報である受信
した命令コードレジスタ30の内容をデコーダ33でデ
コードする。この結果、ロード命令であるとロード指示
34のラインが“1”となり、アドレスレジスタ31の
内容で示されたエントリの通信レジスタ35に入力デー
タレジスタ32の内容がセレクタ36で選択され格納さ
れる。
受信した命令がストアであると(図示されてい)
一5゛■
ない)、アドレスレジスタ31で指定された通信レジス
タ35のエントリーの内容が続出データレジスタ37に
読出され、プロセッサに送出される。
タ35のエントリーの内容が続出データレジスタ37に
読出され、プロセッサに送出される。
受信した命令がテスト及びセット命令であるとテスト及
びセット指示38のラインが“′1”となり、アドレス
レジスタ31で指定された通信レジスタ35のエントリ
ーの内容が読出データレジスタ37に読出されブトセッ
サに送出される。読出されたデータは第2図(a)のロ
ックワード形式と解釈される。ビット0はロック表示ビ
ットで“0”であればアンロック状態を示しており、こ
の時はANDゲート39が“1”となり、アドレスレジ
スタ31で指定された通信レジスタ35のエントリーに
ビット0=“1”、ビット1〜63は入力データレジス
タ320ビツト1〜63がセレクタ36で選択され格納
される。即ち、指示された通信レジスタのエントリのロ
ックワードは、アンロック状態からロック状態に変更さ
れる。
びセット指示38のラインが“′1”となり、アドレス
レジスタ31で指定された通信レジスタ35のエントリ
ーの内容が読出データレジスタ37に読出されブトセッ
サに送出される。読出されたデータは第2図(a)のロ
ックワード形式と解釈される。ビット0はロック表示ビ
ットで“0”であればアンロック状態を示しており、こ
の時はANDゲート39が“1”となり、アドレスレジ
スタ31で指定された通信レジスタ35のエントリーに
ビット0=“1”、ビット1〜63は入力データレジス
タ320ビツト1〜63がセレクタ36で選択され格納
される。即ち、指示された通信レジスタのエントリのロ
ックワードは、アンロック状態からロック状態に変更さ
れる。
ロックワードのビット1〜31はカウント部と解釈され
、ロック状態にある□ツクワードに対して一 他のプロセッサがテスト及びセット命令を試みた時、カ
ウント部の内容は1減じられる。ビット32はデッドロ
ック報告をするかどうかを制御するビットである。ビッ
ト33〜63はテスト及びセット命令の実行の結果ロッ
クが取れた時のロック情報である。テスト及びセット命
令を受信し、アドレスレジスタ31で指定された通信レ
ジスタ35の内容を読出データレジスタ37に読出した
時、ビット“0”力tlであれば既に他のプロセッサに
よってロックが取られている事を示しており、この時は
ANDゲート40によりロックワードのカウント部の内
容が減算器41により−1されて通信レジスタの元のエ
ントリに戻される。
、ロック状態にある□ツクワードに対して一 他のプロセッサがテスト及びセット命令を試みた時、カ
ウント部の内容は1減じられる。ビット32はデッドロ
ック報告をするかどうかを制御するビットである。ビッ
ト33〜63はテスト及びセット命令の実行の結果ロッ
クが取れた時のロック情報である。テスト及びセット命
令を受信し、アドレスレジスタ31で指定された通信レ
ジスタ35の内容を読出データレジスタ37に読出した
時、ビット“0”力tlであれば既に他のプロセッサに
よってロックが取られている事を示しており、この時は
ANDゲート40によりロックワードのカウント部の内
容が減算器41により−1されて通信レジスタの元のエ
ントリに戻される。
テスト及びセット命令で読出データレジスタ37に読出
したデータビット0が1であり、カウント部の内容が零
検出器42で“0”である事が検出され、ビット32の
値が“0”であればANDゲート43の出力が“1”と
なり、デッドロック例外の報告をプロセッサに対して行
なう。即ち、ロック状態の解除のできない事態が発生し
ていることを通知する。ビット32の値が“0″の場合
はカウント部の内容がパ0”′であってもデッドロック
例外の報告は行なわない。
したデータビット0が1であり、カウント部の内容が零
検出器42で“0”である事が検出され、ビット32の
値が“0”であればANDゲート43の出力が“1”と
なり、デッドロック例外の報告をプロセッサに対して行
なう。即ち、ロック状態の解除のできない事態が発生し
ていることを通知する。ビット32の値が“0″の場合
はカウント部の内容がパ0”′であってもデッドロック
例外の報告は行なわない。
デッドロック例外の報告を行なわないケースは、例えば
ソフトデバッグ中の様なケースである。ソフトデバッグ
中にロックを取った状態でデバッグ条件(例えばアドレ
ス一致を満たした様なケース)ではデバッグに制御が渡
りデバッグでの処理に入る。従って、ロック状態が長く
続きデッドロック例外をひき起こす。これを防ぐためで
ある。
ソフトデバッグ中の様なケースである。ソフトデバッグ
中にロックを取った状態でデバッグ条件(例えばアドレ
ス一致を満たした様なケース)ではデバッグに制御が渡
りデバッグでの処理に入る。従って、ロック状態が長く
続きデッドロック例外をひき起こす。これを防ぐためで
ある。
また、ロックした値の解除は、ロード命令で先頭のビッ
トが0であるデータにより行なう場合もある。
トが0であるデータにより行なう場合もある。
以上説明したように本発明は、あるプロセッサの各プロ
セッサからアクセスされる通信レジスタ上にソフト的に
ロックワードとして使用可能な装置を提供することによ
り、プロセッサ間での排他制御を高速に実行できるとい
う効果がある。
セッサからアクセスされる通信レジスタ上にソフト的に
ロックワードとして使用可能な装置を提供することによ
り、プロセッサ間での排他制御を高速に実行できるとい
う効果がある。
また、ロックワードのカウント部はソフトウニ\
アで設定可能であるので、ロックする時間を考慮して値
を設定できる。設定した値以上の間口ツクぎ解除されな
い時は、デッドロック例外の報告を行なうかどうかの制
御もソフトウェアで行なえるという柔軟なシステムを提
供できるという効果がある。
を設定できる。設定した値以上の間口ツクぎ解除されな
い時は、デッドロック例外の報告を行なうかどうかの制
御もソフトウェアで行なえるという柔軟なシステムを提
供できるという効果がある。
第1図は本発明の一実施例のシステム構成を示すブロッ
ク図、第3図(a)および(b)は通信レジスタ内に保
持するデータ形式を示す説明図、第3図は通信レジスタ
の構造を示すブロック図。 30・・・・・・命令コードレジスタ、31・・・・・
・アドレスレジスタ、32・・・・・・入力データレジ
スタ、33・・・・・・デコーダ、34・・・・・・ロ
ード指示、35・・・・・・通信レジスタ、36・・・
・・・セレクタ、37・・・・・・読出データレジスタ
、38・・・・・・テスト及びセット指示、39・40
・43・・・・・・ANDゲート、41・・・・・・減
算器、42・・・・・・零検出器。
ク図、第3図(a)および(b)は通信レジスタ内に保
持するデータ形式を示す説明図、第3図は通信レジスタ
の構造を示すブロック図。 30・・・・・・命令コードレジスタ、31・・・・・
・アドレスレジスタ、32・・・・・・入力データレジ
スタ、33・・・・・・デコーダ、34・・・・・・ロ
ード指示、35・・・・・・通信レジスタ、36・・・
・・・セレクタ、37・・・・・・読出データレジスタ
、38・・・・・・テスト及びセット指示、39・40
・43・・・・・・ANDゲート、41・・・・・・減
算器、42・・・・・・零検出器。
Claims (1)
- 【特許請求の範囲】 1、複数のプロセッサと複数の該プロセッサからアクセ
スされる複数のエントリから構成される通信レジスタと
を含む情報処理装置において、該通信レジスタは該プロ
セッサからテスト及びセット命令・アドレス情報・デー
タを受信しアドレス情報で指定された該通信レジスタの
内容を前記プロセッサに送出する第一の手段と、該通信
レジスタの内容が第一の状態にある時、プロセッサから
のデータを該通信レジスタに格納すると共に第二の状態
とする第二の手段と、該通信レジスタの内容が第二の状
態にある時、該通信レジスタの内容の一部を更新する第
三の手段とを備えて成ることを特徴とする情報処理装置
。 2、該通信レジスタの内容が第二の状態にある時、該通
信レジスタのカウント部を更新する第三の手段と、該通
信レジスタの内容が第二の状態にある時、該通信レジス
タのカウント部の値と該通信レジスタの制御情報とによ
りデッドロック例外の報告を制御する第四の手段とを備
えて成ることを特徴とする特許請求の範囲第1項記載の
情報処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP17521989A JPH0338764A (ja) | 1989-07-05 | 1989-07-05 | 情報処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP17521989A JPH0338764A (ja) | 1989-07-05 | 1989-07-05 | 情報処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0338764A true JPH0338764A (ja) | 1991-02-19 |
Family
ID=15992373
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP17521989A Pending JPH0338764A (ja) | 1989-07-05 | 1989-07-05 | 情報処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0338764A (ja) |
-
1989
- 1989-07-05 JP JP17521989A patent/JPH0338764A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4777588A (en) | General-purpose register file optimized for intraprocedural register allocation, procedure calls, and multitasking performance | |
| EP0026589B1 (en) | Multi-programming data processing system process suspension | |
| US6601146B2 (en) | Technique for efficiently transferring moderate amounts of data across address space boundary | |
| US6754859B2 (en) | Computer processor read/alter/rewrite optimization cache invalidate signals | |
| EP0172522B1 (en) | Data processing machine suitable for high-speed processing | |
| JPH0324696B2 (ja) | ||
| US4351024A (en) | Switch system base mechanism | |
| US4794515A (en) | Protection of data in a multiprogramming data processing system | |
| US4991083A (en) | Method and system for extending address space for vector processing | |
| EP0614139A2 (en) | External procedure call for distributed processing environment | |
| US20020099922A1 (en) | Data processing apparatus including a plurality of pipeline processing mechanisms in which memory access instructions are carried out in a memory access pipeline | |
| US6886165B1 (en) | Method for the direct call of a function by a software module by means of a processor with a memory-management unit (MMU) | |
| JPH0338764A (ja) | 情報処理装置 | |
| US5900018A (en) | Processor-implemented method of controlling data access to shared resource via exclusive access control write-cache | |
| US6658525B1 (en) | Concurrent access of an unsegmented buffer by writers and readers of the buffer | |
| JPH05134930A (ja) | メモリ保護装置 | |
| EP0938047A1 (en) | Memory protection method and device therefor | |
| JPS62156756A (ja) | 浮動割込処理方法 | |
| JPH02116950A (ja) | 情報処理システム | |
| JP3428253B2 (ja) | シーケンサ | |
| JPH01280858A (ja) | 主記憶装置のロック制御方式 | |
| JPH02116952A (ja) | 情報処理システム | |
| JPS6149695B2 (ja) | ||
| JPH02116949A (ja) | 情報処理システム | |
| JPH02103653A (ja) | 高信頼・高速アップロード方式 |