JPH02116949A - 情報処理システム - Google Patents

情報処理システム

Info

Publication number
JPH02116949A
JPH02116949A JP26957888A JP26957888A JPH02116949A JP H02116949 A JPH02116949 A JP H02116949A JP 26957888 A JP26957888 A JP 26957888A JP 26957888 A JP26957888 A JP 26957888A JP H02116949 A JPH02116949 A JP H02116949A
Authority
JP
Japan
Prior art keywords
register
processor
communication
communication register
bit
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
Application number
JP26957888A
Other languages
English (en)
Inventor
Hideo Hayashi
英男 林
Chiaki Kumamoto
熊本 千昭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
NEC Solution Innovators Ltd
Original Assignee
NEC Corp
NEC Solution Innovators Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp, NEC Solution Innovators Ltd filed Critical NEC Corp
Priority to JP26957888A priority Critical patent/JPH02116949A/ja
Priority to CA 2000245 priority patent/CA2000245C/en
Priority to DE1989625452 priority patent/DE68925452T2/de
Priority to EP19890118752 priority patent/EP0363882B1/en
Publication of JPH02116949A publication Critical patent/JPH02116949A/ja
Priority to US07/995,907 priority patent/US5261108A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はマルチプロセスサシステムのプロセッサ間で高
速に情報を伝達するだめの通信レジスタに関する。
〔従来の技術〕
マルチプロセッサでシステムを構成する目的には、シス
テムの総合スルーノットを高めることが一般的であるが
、場合によっては、あるジョブのターンアラウンドタイ
ムを短くすることも要求される。この場合、そのジョブ
のタスクの内、依存関係のないものは、複数のプロセッ
サで該タスクを並行して実行、あるいは、あるタスクの
一部を複数のプロセッサで並行して実行させることによ
り達成可能である。
あるタスクを並行して実行する場合、タスク間での同期
、あるいはタスク間で共通に参照するデータで、そのデ
ータの使用は排他的に使用するべきものである。この排
他的に使用すべきデータである時には、ロックワードを
決めておいて、そのワードがアンロック状態であれば、
そのワードにロックをかけ、ロックをかけたプロセッサ
のみが排他的に使用可能なデータを参照する。プロセッ
サがロックワードを参照した時、ロック状態にある時、
ロックロードがアンロックされるまで、排他的に使用す
べきデータへのアクセスは禁止される。また逆に、並行
して実行する場合、同じデータを参照してもよい場合も
あるこれらのデータは一般に主記憶に置かれている。
〔発明が解決しようとする課題〕
しかしながら、上述した従来の情報処理システムでは、
fロセッサ間で情報を伝達2通信するのに主記憶装置を
使用しているので、情報の伝達及び通信の速度が遅いと
いう欠点がある。
そこで2本発明の技術的課題は、上記欠点に鑑み、情報
の伝達及び通信を高速に行う情報処理システムを提供す
ることである。
〔課題を解決するための手段〕
本発明によれば、各々がプロセッサ番号を有する複数の
プロセッサと、該複数のプロセッサよりアクセスされ多
数のエントリより構成される通信レジスタとを含む情報
処理システムであって、前記通信レジスタは幾つかのグ
ループに分けられ。
当該グループへのアクセスをアクセスするプロセッサの
処理モードと前記プロセッサ番号とにより決定する手段
と、前記通信レジスタの読出、書込及びテスト&セット
命令を解釈し前記通信レジスタに指示する手段と、前記
プロセッサからの指示に従かい前記通信レジスタの読出
、書込及びテスト&セット動作を実行する手段とを有し
ていることを特徴とする情報処理システムが得られる。
〔実施例〕
次に本発明の実施例について図面を参照して説明する。
第1図は本発明の一実施例を示すシステム構成図である
プロセッサ+0(1)、プロセッサ≠1 (2) 。
プロセッサ≠2(3)、プロセッサ4’3(4)は通常
の処理装置であシ、全て同じものである。主記憶7はプ
ロセッサ+0〜3(1〜4)の間のデータの授受を行な
う。通信レジスタ6とプロセッサ+0〜3(1〜4)の
間でもデータの授受を行なう。
通信レジスタ6はプロセラサナ0〜3(1〜4)の間で
通信する情報の格納場所として使用される。
第2図は通信レジスタ6の一実施例を示す図である。通
信レジスタは256ワード(64ビツト/ワード)で構
成され2群AはワードO〜127゜群Bはワード128
〜1592群Cは、ワード160〜1912群りはワー
ド192〜223゜群Eはワード224〜255に分け
られている。
通信レジスタ6の群B−Eの各々に対し、各4ビツトの
通信レジスタディレクトリ8があシ、その各ビットは各
プロセッサに対応している。
例えば、第2図に示す如く最左端ビットよりプロセッサ
+0.1,2.3に対応する。あるプロセッサより通信
レジスタへのアクセス要求があった場合1通信レジスタ
ディレクトリ8を調べ、そのプロセッサ番号に対応する
ビット“1″の通信レジスタ群内の指定された通信レジ
スタへのアクセスが行なわれる。
第3図は通信レジスタ8へのアクセス例を示したもので
ある。プロセッサからのリクエストを受信した時、リク
エストしたプロセッサ番号をプロセッサ番号レジスタ1
4に、プロセッサの動作モードをモードレジスタ9に、
アドレス情報をアドレスレジスタ10に受信する。
動作モードレジスタ9が1#ならば特権モードを示して
おり、リクエストを送出したプロセッサはシステムプロ
グラムを実行している。動作モードレジスタ9がO”な
らば非特権モードを示しており、リクエスト送出プロセ
ッサはユーザーグログラムを実行している。
もし動作モードレジスタ9が“1”の時、アドレスレジ
スタ10のビット56〜63で示すエントリー即ち、2
56ワードの任意のものがアクセスされる。動作モード
レジスタ9が0”の時。
プロセッサ番号レジスタ8の内容はデコーダ11でデコ
ードされ、その出力結果と通信レジスタの群B−Eに対
応する通信レジスタデイレクトリフの各ビットとが比較
器12で比較される。各比較器12の出力はエンコーダ
13で2ビツトに変換される。この2ビツトの左にモー
ドレジスタ8が非特権モードであることによシ“1″を
、前記エンコードされた2ビツトの右側にアドレスレジ
スタ10のビット59−63を結合することにより目的
とする通信レジスタがアクセスされる。
第4図は256ワードの容量をもつ通信レジスタの各ワ
ードの使い方を示しだものである。第4図の(a)は情
報を格納するデータレジスタとして使う形式である。(
b)は排他制御を行うためのロックワードとして使う形
式である。通信レジスタのどのワードをデータレジスタ
として使うか、ロックワードとして使うかは、ソフトウ
ェアまかせである。
ロックワードとして使う場合、ビットOはロック表示部
であシ“1″はロック状態を“0#はアンロック状態を
示す。ビット8〜31はカウント部である。ピッ)32
−63はロックされた時。
プロセッサから送られて来ているデータのビット32−
63を格納している。
プロセッサから通信レジスタ6をアクセスする3種の命
令が準備されている。通信レジスタ6の内容をリードす
る通信レジスタセーブ命令2適信レジスタにプロセッサ
から送られて来たデータを格納する通信レジスタロード
命令、それと通信レジスタテスト&セット命令である。
第5図は通信レジスタ6に関する命令動作を示したブロ
ック図である。命令レジスタ20はプロセッサに命令コ
ードを、データレジスタ15にデータを、7″ロセツサ
より受信する。命令レジスタ14の内容をデコーダ19
でデコードする。デコード結果が通信レジスタへのロー
ド命令であると。
指定された通信レジスタにデータレジスタ15の内容を
書込む。命令レジスタ20のデコードの結果2通信レジ
スタのセーブ命令であると指定された通信レジスタの内
容は2通信レジスタリードレジスタ16に読出され、リ
クエストしたプロセッサに送られる。命令レジスタ20
のデコードの結果2通信レジスタのテスト&セット命令
であると指定された通信レジスタの内容は9通信リード
レジスタ16に読出されリクエストしたプロセッサに送
られる。通信リードレジスタ16のビット0の内容が調
べられ、ビットOが0”だとアンロック状態であるため
、ビット0を″1#、ピット8〜31にオール“1n、
ビット32〜63にデータレジスタ15のビット32〜
63を指定された通信レジスタに格納する。即ち、ロッ
クが成功した事を示し、第4図の(b)に示すカウンタ
部は最大値にセットされている。プロセッサはロックワ
ードを受信し、そのビットOをテスト&セット命令の後
続命令でテストすることでロックが成功した事を知るこ
とができる。通信レジスタのテスト&セット命令で通信
レジスタリードレジスタ16に読出されたデータのビッ
ト0が°゛1”の場合も。
データはリクエストしたプロセッサに送られる。
通信レジスタリードレジスタ16のビット0が01”で
あると、ビット8−31のカウント部の内容はデクリメ
ント回路17で1減じられ、その結果は2元の通信レジ
スタに戻される。ビット8−31のカウント部の内容よ
り、デクリメント回路17で1減じた結果が n Q 
#であることをデッドロック検出回路18が検出すると
、デッドロック検出信号をプロセッサに通知する。プロ
セッサはこの信号を受信すると、デッドロック例外処理
に入る。即ち、ロックワードに対して224回アクセス
される間、ロックが解除されない事となり。
異常状態であるため、その処理ルーチンに分岐する。
プロセッサがテスト&セット命令の実行の結果のデータ
を受取り、後続命令でそのピッ)Oを調べ、”1”であ
った事よシ、ロック不成功を知る。
この時は、再びテスト&セット命令を送出しロックが解
除されるまでこの動作をくシ返す。
第2図、第3図に示した通信レジスタディレクトリ8の
ビットをセットしたりリセットしたりするディレクトリ
制御命令がある。第6図はそのデータ形式を示している
。ビット55はディレクトリの制御を示しており、ビッ
ト60−63でマスタプロセッサを示している。ビット
60が1”であれば、マスタプロセッサはプロセラサナ
0(1)で、ビット61が1#であればマスタプロセッ
サはプロセッサ≠1(2)であることを示している。
ビット55のCビットが1であると、先ずリクエストし
たプロセッサ番号で通信レジスタディレクトリを調べ、
一致するディレクトリのプロセッサ番号に相当するビッ
トをリセットする。続いて。
ビット60−63のマスタープロセッサデータで通信レ
ジスタディレクトリを調べ、一致するディレクトリにプ
ロセッサ番号に相当するビットをセラ トする。
ビット55のCビットがOであると、先ず、ピッ)60
−63のマスタープロセッサ番号で通信レジスタディレ
クトリを調べ、一致するディレクトリよりリクエストし
たプロセッサ番号に相当するビットをリセットする。続
いて、空、即ち、いずれのビットもセットされていない
通信レジスタディレクトリを調べ、その1つのディレク
トリにリクエストしたプロセッサ番号に相当するビット
をセットする。
通信レジスタを利用して、マルチ(マイクロ)タスキン
グを実行する手順の例を以下に示す。各プロセッサは別
個の仕事をしているものとし1通信レジスタの群Bはプ
ロセッサ+0(X)に群Cはプロセラサナ1(2)、群
りはプロセッサ≠2(3)9群Eはプロセッサ+3(4
)に割当てられているものとする。
プロセッサ+1(2)で実行しているプログラムが、マ
ルチタスクを実行することを示していると、システムプ
ログラムは、現在、アイドル中のプロセッサ、あるいは
、現在動作しているが、レベル(ゾライオリティ)の低
いジョブを実行しているプロセッサを確保する。ここで
は、プロセッサ+2(3)がアイドルであっただめ、マ
ルチタスクを実行するため確保したとする。
確保されたプロセッサ÷2(3)は、Cビットが1であ
るディレクトリ制御命令を実行する。この時のマスター
プロセッサはプロセラサナ1(2)である。従って、デ
ィレクトリ制御命令の実行の結果1群りのブイレフ) 
IJは空となり1群Cのディレクトリにはプロセッサ+
1(2)とプロセッサ+2(3)のビットがセットされ
る。従って。
f o セッサ+1(2)とプロセラサナ2(3)は通
信レジスタの群Cをアクセスできることになる。
即ち9群Cの通信レジスタに格納される情報を参照しな
がら、プロセッサ+1(2)とプロセッサ$2(3)は
並行してタスクを実行する。
マルチタスクの必要性がなくなるとプロセッサ’!’2
(3)はCビットが0であるディレクトリ制御命令を実
行する。その結果9群Cのディレクトリのプロセッサ$
2 (3)のビットはリセットされ、空であった群りの
ディレクトリの!ロセッサ≠2(3)に相当するビット
はセットされる。
〔発明の効果〕
以上説明したように2本発明は、複数のプロセッサより
アクセス可能な通信レジスタを設けこの通信レジスタへ
のアクセス手段を有することによりプロセッサ間での情
報の伝達2通信を高速に実行できる効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例を示すシステム構成図、第2
図は通信レジスタの一実施例を示す構成図、第3図は通
信レジスタへのアクセス手順例を示した図、第4図は通
信レジスタのワードの使い方の形式を示した図、第5図
は通信レジスタに関する命令動作を示した図、第6図は
通信レジスタディレクトリ制御命令の制御データ形式を
示した図である。 1〜4・・・プロセッサ、5・・・記憶制御装置、6・
・・通信レジスタ(CR)、7・・・主記憶、8・・・
通信レジスタディレクトリ、9・・・モードレジスタ、
10・・・アドレスレジスタ、11・・・デコーダ、1
2・・・比較器、13・・・エンコーダ、14・・・プ
ロセッサ番号レジスタ、16・・・通信レジスタリード
レジスタ。 17・・・デクリメント回路、18・・・デッドロック
検出回路、19・・・デコーダ、20・・・命令レジス
タ。 第 図 第 2図 口/り表示部 第 図 第 図

Claims (1)

  1. 【特許請求の範囲】 1)各々がプロセッサ番号を有する複数のプロセッサと
    、該複数のプロセッサよりアクセスされ複数のエントリ
    より構成され、複数のグループに分けられた通信レジス
    タとを含む情報処理システムであって、 前記通信レジスタの各グループへのアクセスを、アクセ
    スするプロセッサの処理モードと前記プロセッサ番号と
    により決定する手段と、 前記通信レジスタの読出、書込、及びテスト&セット命
    令を解釈し、前記通信レジスタに指示する手段と、 前記、プロセッサからの指示に従がい、前記通信レジス
    タの読出、書込、及びテスト&セット動作を実行する手
    段とを有することを特徴とする情報処理システム。
JP26957888A 1988-10-08 1988-10-27 情報処理システム Pending JPH02116949A (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP26957888A JPH02116949A (ja) 1988-10-27 1988-10-27 情報処理システム
CA 2000245 CA2000245C (en) 1988-10-08 1989-10-06 Multiprocessor system using communication register having processor-associated storage locations
DE1989625452 DE68925452T2 (de) 1988-10-08 1989-10-09 Multiprozessorsystem mit Verwendung von einem Kommunikationsregister mit den Prozessoren zugeordneten Speicherstellen
EP19890118752 EP0363882B1 (en) 1988-10-08 1989-10-09 Multiprocessor system using communication register having processor-associated storage locations
US07/995,907 US5261108A (en) 1988-10-08 1992-12-22 Multiprocessor communications register providing complete access in a full access mode, and mapped access in a partial access mode

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP26957888A JPH02116949A (ja) 1988-10-27 1988-10-27 情報処理システム

Publications (1)

Publication Number Publication Date
JPH02116949A true JPH02116949A (ja) 1990-05-01

Family

ID=17474317

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26957888A Pending JPH02116949A (ja) 1988-10-08 1988-10-27 情報処理システム

Country Status (1)

Country Link
JP (1) JPH02116949A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08297647A (ja) * 1995-04-26 1996-11-12 Kofu Nippon Denki Kk 並列計算機
US6219777B1 (en) 1997-07-11 2001-04-17 Nec Corporation Register file having shared and local data word parts

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08297647A (ja) * 1995-04-26 1996-11-12 Kofu Nippon Denki Kk 並列計算機
US6219777B1 (en) 1997-07-11 2001-04-17 Nec Corporation Register file having shared and local data word parts

Similar Documents

Publication Publication Date Title
US5115499A (en) Shared computer resource allocation system having apparatus for informing a requesting computer of the identity and busy/idle status of shared resources by command code
US4399504A (en) Method and means for the sharing of data resources in a multiprocessing, multiprogramming environment
US4951193A (en) Parallel computer with distributed shared memories and distributed task activating circuits
US4486831A (en) Multi-programming data processing system process suspension
US5889983A (en) Compare and exchange operation in a processing system
JP2706602B2 (ja) 割込み再試行低減装置
GB2121218A (en) Shared resource locking apparatus
EP0519599A2 (en) Processing system with lock spaces
JP4874165B2 (ja) マルチプロセッサシステム及びマルチプロセッサシステムにおけるアクセス権設定方法
JP2539352B2 (ja) 階層型多重計算機システム
US11099790B2 (en) Parallel key value based multithread machine learning leveraging KV-SSDS
US4991083A (en) Method and system for extending address space for vector processing
JPH02116949A (ja) 情報処理システム
JP7346649B2 (ja) 同期制御システムおよび同期制御方法
JP2002157132A (ja) コンピュータ、その制御方法及びその制御方法を記録した記録媒体
KR0136111B1 (ko) 데이터요소의 수정장치 및 그 방법
JPH02116948A (ja) 情報処理システム
JPH0810450B2 (ja) 情報処理システム
JPH02116952A (ja) 情報処理システム
JPH0810449B2 (ja) 情報処理システム
JPH05158889A (ja) 情報処理システム
JPH02100755A (ja) 情報処理装置
EP0049423A2 (en) Multiprocessor system
US7627869B2 (en) Hardware register access via task tag ID
JPH02244252A (ja) マルチプロセッサシステム