JP3466727B2 - 情報処理システム及びその方法 - Google Patents

情報処理システム及びその方法

Info

Publication number
JP3466727B2
JP3466727B2 JP21705494A JP21705494A JP3466727B2 JP 3466727 B2 JP3466727 B2 JP 3466727B2 JP 21705494 A JP21705494 A JP 21705494A JP 21705494 A JP21705494 A JP 21705494A JP 3466727 B2 JP3466727 B2 JP 3466727B2
Authority
JP
Japan
Prior art keywords
node
information
nodes
connection path
information processing
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
Application number
JP21705494A
Other languages
English (en)
Other versions
JPH0883251A (ja
Inventor
俊之 福井
一正 濱口
朋彦 下山
真人 小杉
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP21705494A priority Critical patent/JP3466727B2/ja
Priority to US08/525,196 priority patent/US5802295A/en
Publication of JPH0883251A publication Critical patent/JPH0883251A/ja
Application granted granted Critical
Publication of JP3466727B2 publication Critical patent/JP3466727B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、複数のノードのCPU
間でフラグを参照して同期を取って動作する情報処理シ
ステム及び該システムにおける情報処理方法に関するも
のである。
【0002】
【従来の技術】マルチプロセッサシステムにおいて、C
PU間の同期を取る方式としては以下に示すようなもの
がある。
【0003】(1)CPU同士が接続されている共有バス
を、ある瞬間において単独のCPUに専有させるように
して、それらCPU間で同期を取る方式。 (2)ロード命令に伴ってリザーブフラグを立てる命令
(以下、LR命令)と、条件付きストア命令の1つで、
ストア命令を実行する前にリザーブフラグを検査し、そ
のフラグが有効であればストア命令を実行し、その後に
そのリザーブフラグをオフにする命令(以下、SC命
令)と、バスをスヌープすることによって、他のCPU
が自分がLR命令を実行したアドレスと同一のアドレス
と同一のアドレスにストア命令を実行したことを検出す
ると、そのリザーブフラグをオフにする機能(以下、S
S機能)を備え、これらLR命令、SC命令、SS機能
を用いることによって、各CPU間で同期を取る方式が
ある。
【0004】後者(2)は前者(1)に比べてバスの専有を利
用しない点で、よりマルチCPUシステムにおける性能
向上を期待できる。
【0005】
【発明が解決しようとする課題】しかしながら、従来の
ノード間に跨ったCPU間での同期制御を実現する、ア
ービタより各ノードに順番にパケットデータを送り出し
ているため、ノードの数が増加した場合等には、アービ
タ内部での処理に遅れが生じ、ネットワーク全体の性能
の低下を招く虞れがあった。さらに、アービトレーショ
ン用信号の経路が、他の使用要求信号などに利用されて
いる場合は、それによる経路の使用が終了するまで、同
期処理を実現するためにアービトレーション用信号経路
を使用できなくなり、そのことも処理の遅れに伴う性能
低下を生ずる一因ともなっていた。
【0006】本発明は上記従来例に鑑みてなされたもの
で、CPU間の同期保持動作を実行する時、ノード間に
跨ったCPUによる同期動作を高速に実現できる情報処
理システムとその方法を提供することを目的とする。
【0007】
【課題を解決するための手段】上記目的を達成するため
に本発明の情報処理方法は以下のような工程を備える。
即ち、バスをスヌープすることを利用するCPUをそれ
ぞれ1つ以上備えた複数のノードを備え、前記複数のノ
ードはそれぞれのCPUが他のノード内部のバスをスヌ
ープできない個別の接続経路によりコンセントレータに
接続された情報処理システムにおける情報処理方法であ
って、前記接続経路とは異なる伝送経路を介してノー
ド間での同期動作を実行するために必要な情報を前記接
続経路の利用要求と共に、前記接続経路の利用を調停す
るアービタに伝送する工程と、前記アービタより前記コ
ンセントレータを介して、前記情報の一部又は全てを前
個別の接続経路を用いて各ノードに分配する工程と、
各ノードにおいて分配された情報を自ノード内に反映さ
せる工程とを有することを特徴とする。
【0008】上記目的を達成するために本発明の情報処
理システムは以下のような構成を備える。即ち、バスを
スヌープすることを利用するCPUをそれぞれ1つ以上
備えた複数のノードを備え、前記複数のノードはそれぞ
れのCPUが他のノード内部のバスをスヌープできない
個別の接続経路によりコンセントレータに接続された情
報処理システムであって、前記接続経路の利用を調停す
る調停手段と、前記調停手段と前記複数のノードとを互
いに接続する、前記接続経路とは異なる伝送経路と、ノ
ード間での同期動作を実行するために必要な情報を前記
接続経路の利用要求と共に前記伝送経路を介して前記調
停手段に伝送する伝送手段と、前記伝送手段により伝送
された情報に基づいて、その情報の一部又は全てを前記
調停手段から前記コンセントレータを介して各ノードに
前記個別の接続経路を用いて分配する分配手段と、前記
分配手段により各ノードに分配された情報を各ノードに
反映させる手段とを備えることにより、ノード間に跨っ
たCPU間同期動作を実現したことを特徴とする。
【0009】
【作用】以上の構成において、ノード間での同期動作を
実行するために必要な情報を、接続経路の利用要求と共
接続経路とは異なる伝送路を介して調停手段に伝送
し、その調停手段より、その情報の一部又は全てをコン
セントレータを介して各ノードに、個別の接続経路を用
いて分配する。こうして分配された情報に基づいて、そ
の情報の一部又は全てを自ノード内に反映させるように
動作する。
【0010】
【実施例】以下、添付図面を参照して本発明の好適な実
施例を詳細に説明する。
【0011】図1は本発明の一実施例のシステムの構成
を示すブロック図である。
【0012】図1において、100,200,300,
400のそれぞれはノードを示し、各ノードはコンセン
トレータ30と接続する一対の光ファイバケーブル3
1,32,33,34によって互いに接続されている。
コンセントレータ30は、更に光ファイバ31,32,
33,34によって構成される接続経路から入力される
信号を再分配するためのスターカプラ50を内蔵してい
る。
【0013】各ノードは、その中にCPU101,20
1,301、401、メモリ102,202,302、
402、光ファイバ31,32,33,34によって構
成される接続経路と、各ノードの内部とを接続するため
の接続経路インターフェース(I/F)回路103,2
03,303,403、光ファイバ31,32,33,
34によって構成される接続経路の利用を要求するため
のアービトレーション用インターフェース(I/F)回
路104,204,304,404、及びそれらをノー
ド内部で相互接続するための内部バス105,205,
305,405、同期情報受信回路107,207,3
07,408、波長多重化装置108,208,30
8,408のそれぞれを含んでいる。更に、アービトレ
ーション用インターフェース回路104,204,30
4,404のそれぞれには、同期要求を検出して通知す
るための同期要求検出装置106,206,306,4
06のそれぞれが含まれている。
【0014】光ファイバ31,32,33,34によっ
て構成される接続経路の利用を調停するのがアービタ2
0で、このアービタ20は、各アービトレーション用信
号経路110,210,310,410によって各ノー
ドと接続されている。
【0015】又、アービタ20の内部には、各ノードか
ら送られてくるパケットデータを管理するパケット情報
管理装置21の他に、パケットデータに含まれる経路要
求情報を管理する経路選択情報管理装置22、それらの
情報に続いて送られてくるアドレス等のデータ転送に伴
う付加情報を一次的に蓄える付加情報管理装置23、及
びパケット中のCPU間同期機構を実現するために必要
な情報を一時的に蓄えると共に、各ノードへ同期制御情
報を再分配するための制御を行う同期情報管理装置24
が設けられている。同期情報管理装置24は、同期情報
通知用光信号経路35を介してコンセントレータ30の
スターカプラ50に接続されている。
【0016】本実施例では、図1に示すような構成のシ
ステムにおいて、アービタ20により同期情報を集中管
理し、その情報をアービタ20から各ノードへブロード
キャストすることにより、互いにバススヌープが出来な
いような状況の下であっても、ノード間にまたがったC
PU間同士の同期制御を行う例を示す。
【0017】具体的には、ノード100のCPU101
と、ノード300のCPU301とがノード200のメ
モリ202のデータに関して同期を取ろうとしたとき
に、それに伴うCPU間での同期保持動作がどのように
して実現されるかを以下に説明する。
【0018】図2は、本実施例のシステム全体のメモリ
アドレス空間を示す図である。本実施例では、システム
全体のアドレス空間(4ギガバイト)を4つのノード分
に振り分けて利用している。
【0019】図2に示すように、ノード100のメモリ
空間は“00000000h”番地より“3fffff
ffh”番地までであり、ノード200のメモリ空間は
アドレス“40000000h”番地より“7ffff
fffh”番地まで、以下同様に各ノードにメモリ空間
が割り当てられている。
【0020】いま、ノード100のCPU101が、ノ
ード200のメモリ202の“41000000h(h
は16進数を示す)”番地のデータ(4バイト)をLR
命令を利用してロードすると、CPU101内部のリザ
ーブフラグがオンとなる。そこで、SC命令を発行し
て、そのリザーブフラグをオフする場合で考える。尚、
このLR命令により、ノード200のメモリのアドレス
“41000000h”番地のデータがノード100の
CPU101にロードされる過程は、ノード間でのデー
タのリードが行われることによって実現される。
【0021】また、ノード300のCPU301も、ノ
ード200のメモリ202のアドレス“4100000
0h”番地のデータ(4バイト)をLR命令を利用して
ロードした後であり、CPU301内部のリザーブフラ
グがオンになっているとする。
【0022】図3は、ノード100のアービタ・インタ
ーフェース(I/F)104の構成を示すブロック図
で、他のノードのアービタインターフェースの構成も同
様である。
【0023】図3において、アドレスデコーダ140
は、ノード100の内部バス105(105はデータ信
号線151、コントロール信号線152、アドレス信号
線153を含む)を常に監視しており、外部ノード(こ
の場合ノード200)へのアクセス(アドレス“410
00000h”よりのライト動作)がバス105に発生
したことを認識した場合、外部アクセス検出信号144
及びライト要求検出信号150によって、ノードアービ
トレーション制御プロセッサ141上で動作するプログ
ラムに制御を渡す。これと同時に、アドレスラッチレジ
スタ142に、その時アドレス信号線153に出力され
ているアドレスをラッチし、コントロール信号ラッチレ
ジスタ143にリード/ライト要求種別(書込み(ライ
ト))をラッチし、更に転送バイト数(4バイト)等の
コントロール情報をコントロール信号ラッチレジスタ1
43にラッチする。
【0024】ノードアービトレーション制御プロセッサ
141は、本実施例では1チップ・マイクロコントロー
ラを用いたが、その構成は本実施例に限定されるもので
なく、例えばハードウェア・ロジック等により構成して
も良い。
【0025】このとき同時に、アービタインターフェー
ス104の同期要求検出装置106の内部に存在するコ
ントロール信号デコーダ180は、内部バス105のコ
ントロール信号線152を常に監視しており、ストア命
令(この場合はノード200のアドレス“410000
00h”)へのSC命令)がバス105上に発生したこ
とを認識すると、ストア要求検出信号181によって、
ノードアービトレーション制御プロセッサ141上で動
作する制御プログラムに同期制御が必要なことを通知す
る。
【0026】外部アクセス検出信号144、ライト要求
検出信号150、ストア要求検出信号181の3つを入
力されたノードアービトレーション制御プロセッサ14
1は、アドレスラッチ・レジスタ142及びコントロー
ル信号ラッチレジスタ143にラッチされている信号を
読み出して、接続先を判別し、例えば図4に示すような
アービトレーション・リクエストパケットデータを作成
する。そして、このパケットデータをパラレル/シリア
ル変換器161に書き込む。
【0027】図4に示すパケットデータは、経路要求信
号であると共に同期制御要求をアービタ20に通知する
情報も含んでいる。
【0028】図4において、411はヘッダ識別子で、
ここでは経路要求かつ同期要求であることを示してい
る。412は要求元のノード番号(ここでは“10
0”)、413は接続先のノード番号(ここでは“20
0”)を示している。414はアクセス要求を出力する
アドレス(ここでは“41000000h”)、415
は転送種別情報を示し、ここでは書込み(write)がセッ
トされている。416は、転送バイト数(ここでは
“4”)を示している。
【0029】このパケットデータがセットされたパラレ
ル/シリアル変換器161では、書き込まれた情報をシ
リアルデータに変換して発光素子163へ出力する。発
光素子163は、この入力された信号を光電変換し、波
長λ1の光信号で光ファイバによって構成された通信路
110を通してアービタ20へ出力している。なお、こ
の構成は全てのノードにおいて共通である。尚、発光素
子163は、例えばLEDもしくは半導体レーザ等の素
子であり、受光素子164はフォトダイオード等に代表
される光電変換素子である。
【0030】図5は、本実施例のアービタ20の構成を
示すブロック図である。
【0031】図5において、601,603,605,
607のそれぞれは受光素子を示し、それぞれのノード
より発光された波長λ1の光信号、つまりアービトレー
ション・リクエスト信号を受信して電気信号に変換す
る、いま、ノード100よりのリクエスト信号が到着す
ると、シリアル/パラレルレス変換器611に入力され
る。シリアル/パラレル変換器611では、入力された
シリアル電気信号をパラレル信号に変換し、これと同時
にデータ受信検出信号622によりパケット情報管理装
置21に通知する。本実施例では、パケット情報管理装
置21は、プログラムを格納したROM及び処理に用い
るRAM等を内蔵したマイクロコントローラ621によ
り構成した。また、このマイクロコントローラ621
は、同時に経路選択情報管理装置22、付加情報管理装
置23、同期制御情報管理装置24の役割を果たす部分
を含むものとする。
【0032】パケット情報管理装置21は、データ受信
検出信号622を受信すると、デバイスセレクト信号6
19によりシリアル/パラレル変換器611を選択し、
内部のレジスタよりデータバス620を通じて、ノード
100より送出されたリクエストパケットを読み出す。
このリクエストパケットに含まれる情報のうち、要求元
ノード番号の情報412及び接続先ノード番号の情報4
13等(図4)は、経路選択情報管理装置22に受け渡
され、データ転送にかかわる付加情報の部分は、このマ
イクロコントローラ621の付加情報管理装置23とし
ての役割を果たす部分に格納される。さらに、このパケ
ットがCPU間の同期保持動作に伴うものと判断される
と、各ノードにおけるCPU間での同期保持動作が必要
であるため、リクエストパケットのアドレス414及
び、要求元ノード番号の情報412等が、マイクロコン
トローラ621の同期制御情報管理装置24としての役
割を果たす部分に格納される。
【0033】経路選択情報管理装置22は、受け取った
データを解析し、この伝送路の使用要求がノード100
よりノード200への接続要求であることを認識すると
共に、経路選択情報管理装置22に設けられた伝送路使
用状態フラグ、及び使用中である波長をチェックし、使
用可能状態の場合は、フラグを使用中の状態に設定す
る。そして図6に示す接続準備要求パケットを作成し、
パラレル/シリアル変換器612(ノード100用)及
び614(ノード200用)に書き込む。この接続準備
パケットには、マイクロコントローラ621の付加情報
管理装置23の役割を果たす部分からもたらされた情
報、及び波長情報も一緒に含まれる。
【0034】図6において、501は接続準備要求パケ
ットを示すヘッダ識別子、502は要求元ノード番号
(ここでは“100”)、503は接続先ノード番号
(ここでは“200”)、504はアドレス(ここでは
“41000000h”)、505は転送種別(ここで
は書込み(write))、506は転送バイト数(ここでは
“4”)、507は使用許可された光信号の波長(ここ
ではλ2)を示している。
【0035】これら2つのパラレル/シリアル変換器に
セットされた接続準備要求パケットは、光アービタイン
ターフェースの場合と同様に、波長λ1の光信号を用
い、ノード100及びノード200へ出力される。尚、
ここで4つのノードは、データ通信用にそれぞれ異なる
波長λ2、λ3を用いることによって、同時に2系統の通
信を1対1のノード間で行うことが可能になっている。
【0036】これに続いて、同期情報管理装置24は、
自分に送られた情報を基に、各ノードにおけるCPU間
の同期を保持するために、ノード300及び400に対
して、アドレス“41000000h”のアドレスに対
応して、リザーブフラグを立てていた場合は、それをオ
フにするように指示する。このために、図7に示すよう
な同期フラグ無効化パケットを作成し、パラレル/シリ
アル変換器627に書き込む。
【0037】図7において、701はヘッダ識別子で、
ここでは同期化フラグを無効にする識別子がセットさ
れ、702は要求元のノード番号(ここでは“10
0”)、703は要求アドレス(ここでは、“4100
0000h”)、704は転送バイト数(ここでは
“4”)がセットされている。
【0038】こうしてパラレル/シリアル変換器627
に書き込まれたパケットデータは、発光素子628を通
して同期情報通知用光信号経路35に波長λcの光信号
で送出され、コンセントレータ30内部のスターカプラ
50に入力される。このとき、波長λcの光信号は、デ
ータ伝送用に用いられている波長λ2、λ3との混信を防
ぐために異なるものにしている。スターカプラ50に入
力された同期フラグ無効化パケット(図7)は、各ノー
ドに均等に分波され、光ファイバ31,32,33,3
4を通して各ノードへ出力される。
【0039】ノード300、400におけるCPU間の
同期保持のためのリザーブフラグをオフにする(無効
化)動作について、ノード300での動作を例に説明す
る。
【0040】図8は、ノード300の同期情報受信回路
307及び波長多重化装置308の構成を示すブロック
図である。
【0041】光ファイバ33よりノード300に入力さ
れた光信号は、光分波器176によって、接続経路イン
ターフェース303に向かう光(λ2又はλ3)と同期情
報受信回路307へ向かう光(λc)とに分離される。
同期情報受信回路307に入力された波長λcの光は、
受光素子169により電気信号に変換され、更にシリア
ル/パラレル変換器170によりパラレル信号に変換さ
れる。これと同時に、同期メンテナンスパケット受信信
号171により同期制御マイクロコントローラ172に
通知される。この通知が検出されると、ノード300の
同期制御マイクロコントローラ172は、シリアル/パ
ラレル変換器170に対してデバイスセレクト信号17
3、データバス175を使用し、図7に示した同期フラ
グ無効化パケットを読出し、ノード300のCPU30
1に対して内部バス305の使用許可を要求する。
【0042】同期制御マイクロコントローラ172は、
内部バス305の使用許可が与えられると、同期メンテ
ナンス要求信号群174を用いて接続経路インターフェ
ース303に対し、図7のパケットの内容に基づいて、
アドレス“41000000h”のアドレスに関連して
リザーブフラグを立てているCPUに対して、そのフラ
グを無効にするためのバスアクセスを、内部バス305
上に出すように指示する。
【0043】図9はノード300の接続経路インターフ
ェース部303の一例を示すブロック図である。ここで
は同期制御マイクロコントローラ172より送られる同
期メンテナンス要求信号群174により、アドレスドラ
イバ130にはアドレス“41000000h”が、デ
ータ転送シーケンサ131には同期フラグ無効化の要求
が指示される。この場合、具体的には内部バス305へ
の、アドレス“41000000h”のダミーデータの
ストア命令が指示される。
【0044】シーケンサ131は、アドレスドライブ信
号134により、アドレスドライバ130に対しアドレ
ス“41000000h”のドライブを指示し、続いて
コントロールドライバ132に対して、転送サイズ、ス
トア命令を実行させるためのコントロール信号のバスド
ライブを、信号線136を通して指示する。更に、信号
線137を通して、ダミーデータをバス305上にドラ
イブするようにデータバッファ133に対して指示す
る。
【0045】このダミーデータのストア処理を、SS機
能を用いてスヌープしたノード300のCPU301
は、自分が保持しているリザーブフラグ、および、その
フラグを立てるに至ったアドレスを保持しているレジス
タを検査する。本実施例の場合、アドレスが一致するの
で、そのリザーブフラグはオフ(無効化)される。
【0046】一方、メモリ302には、アドレス“41
000000h”に該当するアドレスが存在しないの
で、このストア処理は無視される。また、データ転送シ
ーケンサ131は、バスがタイムアウトすることを防ぐ
ために、一定のディレイ後、コントロールドライバ13
2に対して、アクノリッジ信号をドライブするように指
示する。尚、ノード400においても同様の動作が実施
される。
【0047】また、このノード300、400におけ
る、これら一連の動作はアドレスバスとデータバスの制
御が独立しているようなCPUを用いているシステムに
おいては、アドレスオンリー・トランザクションとして
定義することも考えられる。その場合は、これらリザー
ブフラグをオフにする処理は、アドレスフェイズだけで
処理を完了し、ダミーデータのバス上のドライブを伴わ
ない形で実現が可能である。
【0048】一方、正しいデータの転送先であるノード
200においては、データのストアが実行され、その
際、ノード300での動作と同様にSS機能が実行さ
れ、CPUの同期フラグの検査が行われ同期動作が保証
される。
【0049】これによりノード100のSC命令の実行
に伴うCPU間の同期保持動作が実現される。
【0050】他のノード間での転送においても全く同様
に処理が行われる。
【0051】但し、要求元のノード100においては、
図7に示す同期フラグ無効化要求パケットを受信し、そ
の中身を解釈し、自ノード番号が、そのパケット内部の
要求元フィールドにあることを発見した段階で、そのパ
ケットによって行われるはずの、その後の処理は中止さ
れる。
【0052】なお、本実施例では、図1のアービトレー
ション用信号経路100,210,310,410の上
の光信号には波長λ1の光を使用し、接続経路31,3
2,33,34上の光信号には波長λ2、λ3(λ2、λ3
は別波長)を使用しているが、λ1=λ2、λ1=λ3の場
合があっても、構成上差し支えはない。
【0053】次に、自ノード内部のメモリ上のデータへ
の同期命令の場合、具体的には、ノード100のCPU
101が同期命令に利用可能な自ノード内メモリのアド
レス“01000000h”番地のデータ(4バイト)
をLR命令を利用してロードしており、それをSC命令
を発行して変更しようとした場合、それに伴う同期の保
持動作がどのようにして実施されるかを示す。
【0054】図3において、今度は外部アクセス検出信
号144は反応せず、ライト要求検出信号150、及び
ストア要求検出信号181によってノードアービトレー
ション制御プロセッサ141で動作するプログラムに制
御を渡す。これと同時に、アドレスラッチレジスタ14
2に、その時、アドレス信号線153に出力されている
アドレスデータをラッチし、コントロール信号ラッチレ
ジスタ143に転送バイト数(4バイト)等のコントロ
ール情報をラッチする。
【0055】ノードアービトレーション制御プロセッサ
141は、アドレスラッチレジスタ142及びコントロ
ール信号ラッチレジスタ143よりラッチされた信号を
読出し、図10に示すような同期メンテナンスリクエス
トパケットを作成し、パラレル/シリアル変換器161
に書き込む。
【0056】図10は、同期メンテナンス要求パケット
データの一例を示す図で、711は同期フラグの無効化
要求であることを示すヘッダ識別子、712は要求元ノ
ード番号(ここでは“100”)、713は要求先アド
レス(ここでは“01000000h”番地)、714
は転送バイト数(ここでは“4”)を示している。
【0057】パラレル/シリアル変換器161では、書
き込まれた情報をシリアルデータに変換して発光素子1
63へ出力する。発光素子163は、入力された信号を
光電変換し、波長λ1の光信号として光ファイバによっ
て構成された通信路110を通してアービタ20へ出力
する。
【0058】図5において、ノード100より同期メン
テナンス・リクエストパケットが到着し、シリアル/パ
ラレル変換器611に入力される。シリアル/パラレル
変換器611では、入力されたシリアル電気信号をパラ
レル信号に変換し、これと同時に、データ受信検出信号
622によりマイクロコントローラ621のパケット情
報管理装置21に通知する。
【0059】パケット情報管理装置21は、データ受信
検出信号622を受信すると、デバイスセレクト信号6
19によりシリアル/パラレル変換器611を選択し、
内部のレジスタよりデータバス620を通して、ノード
100より送出された同期メンテナンスリクエストパケ
ットを読み出す。そしてパケット内のアドレス及び転送
バイト数、要求元ノード番号等の情報を、マイクロコン
トローラ621の同期情報管理装置24としての役割を
果たす部分に格納する。
【0060】同期情報管理装置24は、自分にもたらさ
れた情報を基に、各ノードにおけるCPU間同期を保持
するために、各ノードに対して、アドレス“01000
000h”のデータを対象にリザーブフラグを立ててい
た場合は、それを無効にするように指示するため、図7
に示すような同期フラグ無効化パケットデータを作成し
てパラレル/シリアル変換器627に順次書き込む。こ
うして書き込まれたパケットは、発光素子628により
光信号に変換され、スターカプラ50を通して全ノード
に配信される。
【0061】これ以後の動作は、先の例と同じであるの
で説明を省略する。
【0062】尚、先に示した実施例では、図1における
アービトレーション用信号経路110と31,210と
32,310と33,410と34では物理的に別の信
号経路を仮定していた。しかし、論理的にこれらの回線
が分離可能であれば、物理上は同一信号経路を通る構成
にすることも可能である。そのような例を図11〜図1
3を用いて示す。ここの構成要素の番号については、今
までに使ったものと同じ物を表わす場合にはそれを流用
する。
【0063】図11は本実施例のシステムの構成図であ
る。先の実施例の図1と対比した場合、アービタインタ
ーフェース回路104,204,304,404が波長
多重化装置108,208,308,408に接続さ
れ、各ノードから出る物理的な信号線は光ファイバ3
1,32,33,34のそれぞれ1対ずつになってい
る。又、コンセントレータ30と、アービタ20が物理
的に見掛け上同じ位置におかれ、そこに入ってくる光フ
ァイバは図1の時に比べて、物理的本数では半分になっ
ている。
【0064】図12は、各ノードの内部において、光信
号がどのように多重化されるかを示した図である。アー
ビタインターフェース104から出力された波長λ1の
光と接続経路インターフェース103から出力された波
長λ2(又はλ3)の光は、波長多重化装置108の2波
光合波器177によって合波され、1対の光ファイバ3
1のノード送信側に出力される。一方、光ファイバ31
の受信回線を通してノードに送られてきた光信号は、波
長多重化装置108の3波分波器178によって、3つ
の波長(λ1、λ2(又はλ3)、λc)に分離されて、各
回路(103,104,107)に入力される。
【0065】但し、この場合、波長多重する際に混信を
防ぐために、波長λ1、λ2、λ3、λcは、それぞれが異
なる波長であるとする。
【0066】図13はコンセントレータ30の内部にお
いて、光信号がどのように多重化されるかを示した図で
ある。光ファイバ31,32,33,34のそれぞれに
対応してアービタ20と接続される光信号と、スターカ
プラ50に接続される信号とを分波及び合波するための
2波分波器631,632,633,634、2波合波
器641,642,643,644が配されている。
【0067】この様に構成することにより、光信号通信
に利用する物理信号線の数を減らした上で、CPU間同
期を実現するための回路を構成することが可能になる。
【0068】尚、本発明は、複数の機器から構成される
システムに適用しても、1つの機器から成る装置に適用
しても良い。また、本発明はシステム或は装置に本発明
を実施するプログラムを供給することによって達成され
る場合にも適用できる。
【0069】以上説明したように本実施例によれば、
アービタに伝えられた情報をスターカプラ等を利用して
分配することにより、CPU間の同期保持動作を実行
し、ノード間に跨ったCPUによる同期動作を高速に実
現することを可能とし、より高度な情報処理装置を実現
できる。
【0070】
【発明の効果】
【0071】以上説明したように本発明によれば、ノー
ド間に跨ったCPU間の同期動作を高速に実現できると
いう効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例のシステムの構成を示すブロ
ック図である。
【図2】本実施例のシステムにおけるアドレスマップを
説明する図である。
【図3】本実施例のノードのアービタ・インターフェー
ス回路の構成を示すブロック図である。
【図4】本実施例で用いられているアービトレーション
・リクエストパケットのデータ構成を示す図である。
【図5】本実施例のアービタの構成を示すブロック図で
ある。
【図6】本実施例で用いられている接続準備要求パケッ
トのデータ構成を示した図である。
【図7】本発明の他の実施例で用いられている同期フラ
グ無効化パケットのデータ構成を示す図である。
【図8】本実施例の同期情報受信回路及び光多重化総理
の構成を示すブロック図である。
【図9】本実施例の接続経路インターフェース回路の構
成を示すブロック図である。
【図10】本実施例で用いられている同期メンテナンス
・リクエストパケットのデータ構成を示す図である。
【図11】本発明の他の実施例のネットワークシステム
の構成を示すブロック図である。
【図12】本発明の他の実施例のノードの光波長多重部
の構成を示スブロック図である。
【図13】本発明の他の実施例のコンセントレータの光
波長多重部の構成を示すブロック図である。
【符号の説明】
20 アービタ 21 パケット情報管理装置 22 経路選択情報管理装置 23 付加情報管理装置 24 同期情報管理装置 30 コンセントレータ 31〜34 光ファイバ 35 同期情報通知用光信号経路 100,200,300 ノード 101,201,301,401 CPU(プロセッ
サ) 102,202,302,402 メモリ 103,203,303,403 接続経路インターフ
ェース(I/F)回路 104,204,304,404 アービタインターフ
ェース回路 105,205,305,405 ノード内部バス 106,206,306,406 同期要求検出装置 107,207,307,407 同期情報受信回路 108,208,308,408 波長多重化装置 110,210,310,410 アービトレーション
用信号経路 130 アドレスドライバ 131 データ転送シーケンサ 132 コントロールドライバ 133 データバッファ 134 アドレスドライブ信号 135 アクノリッジ信号 138 データ受信信号 140 アドレスデコーダ 141 ノードアービトレーション制御プロセッサ 142 アドレスラッチレジスタ 143 コントロール信号ラッチレジスタ 144 外部アクセス検出信号 147 デバイスセレクト信号線 148 データ受信信号 149 データ送受信要求信号群 150 ライト要求検出信号 161,165,612,614,616,618,6
27 パラレル/シリアル変換器 162,166,170,611,613,615,6
17 シリアル/パラレル変換器 163,167,602,604,606,608,6
28 発光素子 164,168,169,601,603,605,6
07 受光素子
フロントページの続き (72)発明者 小杉 真人 東京都大田区下丸子3丁目30番2号 キ ヤノン株式会社内 (56)参考文献 特開 昭62−204362(JP,A) 特開 昭54−63644(JP,A) 特開 平4−245350(JP,A) 特開 昭54−136235(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 15/16 - 15/177 G06F 13/28 - 13/42 H04L

Claims (7)

    (57)【特許請求の範囲】
  1. 【請求項1】バスをスヌープすることを利用するCPU
    をそれぞれ1つ以上備えた複数のノードを備え、前記複
    数のノードはそれぞれのCPUが他のノード内部のバス
    をスヌープできない個別の接続経路によりコンセントレ
    ータに接続された情報処理システムであって、 前記接続経路の利用を調停する調停手段と、 前記調停手段と前記複数のノードとを互いに接続する、
    前記接続経路とは異なる伝送経路と、 ノード間での同期動作を実行するために必要な情報を
    記接続経路の利用要求と共に前記伝送経路を介して前記
    調停手段に伝送する伝送手段と、 前記伝送手段により伝送された情報に基づいて、その情
    報の一部又は全てを前記調停手段から前記コンセントレ
    ータを介して各ノードに前記個別の接続経路を用いて分
    配する分配手段と、 前記分配手段により各ノードに分配された情報を各ノー
    ドに反映させる手段とを備えることにより、 ノード間に跨ったCPU間同期動作を実現したことを特
    徴とする情報処理システム。
  2. 【請求項2】前記各ノードが、ロード命令に伴って対応
    するアドレスにリザーブフラグを立てるLR命令を実行
    する手段と、ストア命令を実行する前にリザーブフラグ
    を検査し、そのフラグが有効であればストア命令を実行
    し、その後、前記フラグを無効にするSC命令を実行す
    る手段と、バスをスヌープすることによって、前記LR
    命令を実行したアドレスに他のCPUがストア命令を実
    行したことを検知するとリザーブフラグを無効にするS
    S機能を実行する手段とを備えることを特徴とする請求
    項1に記載の情報処理システム。
  3. 【請求項3】前記情報は、各ノードにおいて実行される
    ストア命令に伴うアドレス及びコントロール情報である
    ことを特徴とする請求項2に記載の情報処理システム。
  4. 【請求項4】前記反映させる手段は、外部ノードから伝
    送され、前記分配手段により分配された情報に基づき、
    自ノード内部のCPUがスヌープ可能なバス上にストア
    命令を発生させる手段を備え、前記SS機能を実行する
    手段を用いて、当該ストア命令の対象アドレスに対する
    リザーブフラグを無効にすることを特徴とする請求項2
    又は3に記載の情報処理システム。
  5. 【請求項5】前記接続経路はスターカプラを介して接続
    される光伝送経路であることを特徴とする請求項1に記
    載の情報処理システム。
  6. 【請求項6】前記接続経路は、複数の波長の光信号を光
    波長多重化した光信号を送受信することを特徴とする請
    求項1乃至5のいずれか1項に記載の情報処理システ
    ム。
  7. 【請求項7】バスをスヌープすることを利用するCPU
    をそれぞれ1つ以上備えた複数のノードを備え、前記複
    数のノードはそれぞれのCPUが他のノード内部のバス
    をスヌープできない個別の接続経路によりコンセントレ
    ータに接続された情報処理システムにおける情報処理方
    法であって、 前記接続経路とは異なる伝送経路を介してノード間で
    の同期動作を実行するために必要な情報を前記接続経路
    の利用要求と共に、前記接続経路の利用を調停するアー
    ビタに伝送する工程と、 前記アービタより前記コンセントレータを介して、前記
    情報の一部又は全てを前記個別の接続経路を用いて各ノ
    ードに分配する工程と、 各ノードにおいて分配された情報を自ノード内に反映さ
    せる工程と、 を有することを特徴とする情報処理方法。
JP21705494A 1994-09-12 1994-09-12 情報処理システム及びその方法 Expired - Fee Related JP3466727B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP21705494A JP3466727B2 (ja) 1994-09-12 1994-09-12 情報処理システム及びその方法
US08/525,196 US5802295A (en) 1994-09-12 1995-09-08 Information processing method and system therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP21705494A JP3466727B2 (ja) 1994-09-12 1994-09-12 情報処理システム及びその方法

Publications (2)

Publication Number Publication Date
JPH0883251A JPH0883251A (ja) 1996-03-26
JP3466727B2 true JP3466727B2 (ja) 2003-11-17

Family

ID=16698112

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21705494A Expired - Fee Related JP3466727B2 (ja) 1994-09-12 1994-09-12 情報処理システム及びその方法

Country Status (1)

Country Link
JP (1) JP3466727B2 (ja)

Also Published As

Publication number Publication date
JPH0883251A (ja) 1996-03-26

Similar Documents

Publication Publication Date Title
US8285912B2 (en) Communication infrastructure for a data processing apparatus and a method of operation of such a communication infrastructure
US6094532A (en) Multiprocessor distributed memory system and board and methods therefor
US5602663A (en) Information processing apparatus for multiplex transmission of signal for arbitration and signal for data transfer
JP4182801B2 (ja) マルチプロセサシステム
JPH1078934A (ja) パケット切替えコンピュータ・システムのマルチサイズ・バス結合システム
JP3647055B2 (ja) 情報処理システム、管理方法および管理装置
JPH10222458A (ja) 接続装置
US6078337A (en) Maintaining consistency of cache memory data by arbitrating use of a connection route by plural nodes
US6694385B1 (en) Configuration bus reconfigurable/reprogrammable interface for expanded direct memory access processor
US5604748A (en) Information processing apparatus for transmitting information among a plurality of nodes and arbitration method in such information processing apparatus
US8346080B2 (en) Optical network system and memory access method
US7206889B2 (en) Systems and methods for enabling communications among devices in a multi-cache line size environment and disabling communications among devices of incompatible cache line sizes
JP3466727B2 (ja) 情報処理システム及びその方法
JP3086261B2 (ja) マルチプロセッサ・システム用バス構造
JP3466728B2 (ja) 情報処理システム及びその方法
JP3599381B2 (ja) 情報処理システム及びその方法
JP3639651B2 (ja) 少なくとも2台のプロセッサからなる情報処理装置
JPH0916529A (ja) 情報処理方法及びシステム
JPH0883227A (ja) 情報処理システム及びその方法
JPH09120388A (ja) 情報処理方法及びシステム
JPH10116225A (ja) アドレス変換回路及びマルチプロセッサシステム
JPH08137807A (ja) 情報処理システム及びその方法
JPH064401A (ja) メモリアクセス回路
JPH10105528A (ja) マルチプロセッサシステム
Vermeulen Data-acquisition and triggering with transputers

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20030811

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070829

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080829

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080829

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090829

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090829

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100829

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110829

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120829

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120829

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130829

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees