JP3599381B2 - Information processing system and method - Google Patents
Information processing system and method Download PDFInfo
- Publication number
- JP3599381B2 JP3599381B2 JP21715594A JP21715594A JP3599381B2 JP 3599381 B2 JP3599381 B2 JP 3599381B2 JP 21715594 A JP21715594 A JP 21715594A JP 21715594 A JP21715594 A JP 21715594A JP 3599381 B2 JP3599381 B2 JP 3599381B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- data
- arbitration
- cache memory
- nodes
- 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
Landscapes
- Multi Processors (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
【0001】
【産業上の利用分野】
本発明は、主に一つ以上のプロセッサとメモリ及びキヤッシュメモリを持つ情報処理装置の一群と、それら一群の情報処理装置を接続する接続経路により構成された並列計算システムに関するものである。
【0002】
【従来の技術】
一つ以上のプロセッサとメモリを持つ情報処理装置の一群(以下これをノードと呼ぶ)を、ノード間のデータの交換を目的として複数個接続する場合、各種LANを用いて接続する方法や、LANに依らずノード同士をメモリのアドレスレベルでつなぐ方法がある。後者の例としては、本願出願人が特願平5−286876号として、光波長多重化方式を用いた情報処理装置を出願している。この方式によれば、識別可能な複数の波長を用いることにより、複数のノード間で同時に異なるデータ転送を実現することができる。
【0003】
更に、そのシステムの改良例として、本願出願人が特願平5−288271号として出願した、各ノードはデータ転送に先立つ接続経路要求時にデータ転送に係わる付加情報を同時にアービタに送付し、アービタが接続経路設定時にそれらの情報をアービトレーション用信号線を通じて接続先のノードに送付し、接続要求を受けたノードは経路のセットアップとノード間で送受するデータの準備とをオーバーラップして実現することにより、接続経路設定後のデータ転送の効率を向上させる情報処理装置が考案されている。
【0004】
【発明が解決しようとしている課題】
更に、この光波長多重化方式を用いた情報処理装置に対して、キャッシュメモリを用いてノードの計算効率の向上を図るために、アービタ及びアービトレーション用信号経路を利用して、キャッシュメモリのデータの一貫性を保持するためのデータを各ノードに分配することで、ノード間の情報のキャッシングを実現することが考えられる。
【0005】
しかしながら、上述のように、アービタ及びアービトレーション用信号経路を利用して、キャッシュメモリのデータの一貫性を保持するためのデータを各ノードに分配する方式では、アービタ内部で各ノードに順番にパケットを送り出していくため、ノードの数が増加した場合には、処理の遅れを生じ、性能の低下を招く可能性があった。
【0006】
更に、アービトレーション用信号経路が本来の光接続経路使用要求に利用されている場合、それによる使用が終了するまでは、キャッシュメンテナンスのためにアービトレーション用信号経路を使用できず、そのための処理の遅れに伴い、性能低下を生ずる可能性があった。
【0007】
そこで本願発明は、ノード間での情報のキャッシングを高速に実現することを目的とする。
【0008】
【課題を解決するための手段】
上記課題を解決するために、本発明によれば、複数のノードを有し、各ノードに、1つ以上のプロセッサと、キャッシュメモリと、ノード内部のバス上の信号を監視する監視手段と、該監視手段の監視結果に基づいて前記キャッシュメモリの内部状態を更新する更新手段とを備えた情報処理システムに、複数の波長の光を光波長多重化して用いて接続することで、前記複数のノード間を同時に複数組接続可能な接続経路と、該接続経路上に配され、当該接続経路を通じてデータを各ノードに分配するデータ分配手段と、前記接続経路の利用要求を調停するための調停手段と、該調停手段と各ノードとの間をそれぞれ接続する調停用信号経路と、ノード内及びノード間でのデータ転送に必要な情報の一部又は全部を、当該ノードから前記調停手段へ、前記調停用信号経路を用いて伝送する伝送手段と、該伝送手段により伝送された情報の一部又は全部を、前記調停手段から、前記データ分配手段及び前記接続経路を通じて各ノードに分配させるように制御する分配制御手段とを具え、前記各ノードに、前記分配手段により分配された前記情報を、当該ノード内部のキャッシュメモリに反映させる反映手段を設ける。
【0009】
また、本発明の他の態様によれば、複数のノードを有し、各ノードに、1つ以上のプロセッサと、キャッシュメモリと、ノード内部のバス上の信号を監視する監視手段と、該監視手段の監視結果に基づいて前記キャッシュメモリの内部状態を更新する更新手段とを備えた情報処理システムにおける情報処理方法に、前記複数のノード間を複数の波長の光を光波長多重化して用いて接続することで同時に複数組接続可能な接続経路の利用要求を調停部により調停する調停工程と、該調停部と各ノードとの間をそれぞれ接続する調停用信号経路を用いて、ノード内及びノード間でのデータ転送に必要な情報の一部又は全部を、当該ノードから前記調停部へ、前記調停用信号経路を用いて伝送する伝送工程と、該伝送工程により伝送された情報の一部又は全部を、前記調停部から、前記接続経路上に配され、データを各ノードに分配するデータ分配器及び当該接続経路を通じて各ノードに分配する分配工程と、該分配工程により各ノードに分配された前記情報を、ノード内部のキャッシュメモリに反映させる反映工程とを備える。
【0011】
【実施例】
図1は本発明を実現するためのシステムの一実施例の構成図である。
【0012】
100、200、300、400はノードであり、各ノードはコンセントレータ30まで一対の光ファイバ31、32、33、34によって構成される接続経路により接続されている。コンセントレータ30は光ファイバ31、32、33、34によって構成される接続経路からもたらされる信号を再分配するためのスターカプラ50を内蔵する。
【0013】
各ノードは、その中にCPU101、201、301、401、メモリ102、202、302、402、光ファイバ31、32、33、34によって構成される接続経路と各ノードの内部とを接続するためのインタフェース回路103、203、303、403、光ファイバ31、32、33、34によって構成される接続経路の利用を要求するためのアービトレーション用インタフェース回路104、204、304、404、及びそれらをノード内部で相互接続するための内部バス105、205、305、405、キャッシュメンテナンスインタフェース回路107、207、307、407、波長多重化装置108、208、308、408を含んでいる。ここで、各ノード内のキャッシュメモリ106、206、306、406はそれぞれプロセッサ101、201、301、401に内蔵されている。しかし、この構成に制限されるものではない。
【0014】
20は、光ファイバ31、32、33、34によって構成される接続経路の利用を調停するためのアービタであり、アービタ20は、各ノードとそれぞれアービトレーション用信号経路110、210、310、410によって接続されている。
【0015】
また、アービタ内部には、各ノードから送られてくるパケットを管理するパケット情報管理装置21の他に、パケットに含まれる情報のうち経路要求情報を管理する経路選択情報管理装置22、それらの情報に続いて送られてくるアドレスなどのデータ転送に伴う付加情報を一時的に蓄える付加情報管理装置23、及びパケット中のキャッシュメモリの一貫性を保持するために必要な情報を一時的に蓄えるとともに、各ノードへプロトコル情報を再分配するための制御を行うキャッシュ情報管理装置24が設置されている。キャッシュ情報管理装置24からはキャッシュメンテナンス用光信号経路35がコンセントレータ30内部のスターカプラ50へ接続される。
【0016】
本実施例では、図1に示すような構成のシステムにおいて、ライトスルー型キャッシュメモリの無効化型プロトコルを用いて、キャッシュメモリの一貫性が保証される例を示す。
【0017】
具体的には、ノード100がノード200上のデータをキャッシングしているときに、そのデータの変更、及びそれにともなうキャッシュメモリの一貫性の保持動作がどのようにして実施されるかを示す。
【0018】
図2は、システム全体のアドレスマップである。本実施例では、システム全体のアドレス空間4ギガバイトを、ノード4つ分に振り分けて利用している。いま、ノード100は、ノード200のRAM上の41000000h番地のデータ(4バイト)をキャッシングしており、それを変更しようとしているとする。
【0019】
なお、ノード100内のプロセッサ101内部のキャッシュメモリ106へノード200内部のRAM41000000h番地のデータがキャッシングされる過程は、特願平5−288271号に示すごとく、ノード間でのデータのリードが行われ、そのデータをキャッシュメモリに格納することによって行われる。このデータをキャッシュメモリに格納する過程については、キャッシュメモリシステムとしては公知のものであるので、詳細は省略する。
【0020】
図3はアービタインタフェース104のブロック図である。
【0021】
アービタインタフェース104の内部に存在するアドレスデコーダ140は、ノード101の内部バス105(データ信号線151、コントロール信号線152、アドレス信号線153により構成される)を常に監視しており、キャッシングしていたデータのライトスルー動作に伴う外部ノード(この場合ノード200)へのアクセス(アドレス41000000hへのライト動作)がバス上に発生したことを認識した場合、外部アクセス検出信号144及びライト要求検出信号150によって、ノードアービトレーション制御プロセッサ141上で動作するプログラムに制御を渡す。
【0022】
同時に、アドレスラッチレジスタ142にそのときアドレス信号線153上に出ているアドレスをラッチし、コントロール信号ラッチレジスタ143にリードライト要求種別(ライト)・転送バイト数(4バイト)、キャッシング可能領域であることなどのコントロール情報をラッチする。ノードアービトレーション制御プロセッサ141として、本実施例では1チップマイクロコントローラを用いたが、この構成に制限されるものではなく、ハードウェアロジックなどにより構成しても良い。
【0023】
ノードアービトレーション制御プロセッサ141は、アドレスラッチ142及びコントロール信号ラッチ143より、ラッチされた信号を読み出し、接続先を判別し、図4に示すようなアービトレーションリクエストパケットを作成し、パラレル/シリアル変換器161に書き込む。図4に示すパケットは経路要求信号であるとともに、データ転送に係わる付加情報もその内部のデータフォーマットとして含むものである。
【0024】
パラレル/シリアル変換器161では、書き込まれた情報をシリアルデータに変換し、発光素子163へ出力する。発光素子163は、入力された信号を光電変換し、波長λ1の光信号として、光ファイバによって構成された通信路110を通してアービタ20へ出力する。この構成は全てのノードにおいて共通である。なお、ここでいう発光素子は、LEDもしくはレーザーなどの素子であり、受光素子はフォトダイオードに代表される素子を指す。
【0025】
図5に、アービタ20のブロック図を示す。601、603、605、607は受光素子である。それぞれノードにより発光されたλ1の波長の光信号、つまり上記アービトレーションリクエスト信号を受信し電気信号に変換する、今ノード100よりリクエスト信号が到着し、シリアル/パラレル変換器611に入力される。シリアル/パラレル変換器611では、入力されたシリアル電気信号をパラレル信号に変換し、同時にデータ受信検出信号622によりパケット情報管理装置21に通知する。
【0026】
本実施例では、パケット情報管理装置21は、プログラムを格納したROMおよび処理に用いるRAMを内蔵したマイクロコントローラ621により構成した。また、このマイクロコントローラは同時に、経路選択情報管理装置22、付加情報管理装置23、キャッシュ情報管理装置24の役割を果たす部分を含むものとする。しかし、本構成に制限されるものではない。
【0027】
パケット情報管理装置21は、データ受信検出信号(1)622を受信すると、デバイスセレクト信号619により、シリアル/パラレル変換器611を選択し、内部のレジスタよりデータバス620を通じて、ノード100より送出されたリクエストパケットを読み出す。
【0028】
リクエストパケットに含まれる情報のうち、要求元ノード番号、接続先ノード番号等の情報は、経路選択情報管理装置22に受け渡され、データ転送にかかわる付加情報の部分は、このマイクロコントローラの中の付加情報管理装置23としての役割を果たす部分に格納される。更に、このパケットがライト動作に伴うものと判断されると、各ノードでのキャッシュの一貫性保持動作が必要であるため、リクエストパケット内のアドレス及び転送バイト数、要求元ノード番号、接続先ノード番号等の情報が、マイクロコントローラの中のキャッシュメモリ管理装置24としての役割を果たす部分に格納される。
【0029】
経路選択情報管理装置22は、受け取ったデータを解析し、この伝送路の使用要求が、ノード100よりノード200への接続要求であることを認識するとともに、経路選択情報管理装置22内に設けられた伝送路使用状態フラグ、及び使用中である波長をチェックし、使用可能状態の場合はフラグを使用中状態に設定し、図6に示す接続準備要求パケットを作成し、パラレル/シリアル変換器612および614に書き込む。
【0030】
この接続準備パケットには、マイクロコントローラの中の付加情報管理装置23の役割を果たす部分からもたらされた情報、および波長情報も一緒に含まれる。これら2つの接続準備要求パケットは光アービタインターフェースの場合と同様にλ1の光信号を用い、ノード100およびノード200へ出力される。なお、ここで4つのノードは、データ通信用にそれぞれ異なる波長λ2、λ3を用いることによって、同時に二系統の通信を一対一のノード間で行うことが可能になっている。
【0031】
これに続いて、キャッシュ情報管理装置24は、自分にもたらされた情報をもとに、各ノード間のキャッシュメモリの一貫性を保持するために、ノード300及び400に対して、アドレス41000000hのデータをキャッシュメモリに保持していた場合はそれを無効化するように指示するため、図7に示すようなキャッシュメモリ無効化パケットを作成し、パラレル/シリアル変換器616、618に書き込む。
【0032】
書き込まれたパケットは、発光素子610を通じてキャッシュメンテナンス用光信号経路35上に波長λcを用いて送出され、コンセントレータ30内部のスターカプラ50に入力される。このとき、λcはデータ伝送用に用いられている波長λ2、λ3とは混信を防ぐために異なるものとする。スターカプラ50に入力されたキャッシュメモリ無効化パケットは、各ノードに均等に分波され、光ファイバ31、32、33、34を通じて各ノードへ出力される。
【0033】
この後のノード100からノード200へのデータ転送の様子は省略し、ノード300、400におけるキャッシュメモリの一貫性保持動作についてノード300での動作を例に説明する。
【0034】
図8にキャッシュメンテナンスインタフェース307及び、光多重化装置308構成図を示す。
【0035】
ファイバー33により入力された光信号は、光分波器176によって、接続経路インタフェース303に向かう光(λ2又はλ3)とキャッシュメンテナンスインタフェース307へ向かう光(λc)とに分離される。キャッシュメンテナンスインタフェース307に入力された波長λcの光は、受光素子169により電気信号に変換され、更にシリアル/パラレル変換器170によりパラレル信号に変換されると同時に、キャッシュメンテナンスパケット受信信号171により、キャッシュ制御マイクロコントローラ172に通知される。
【0036】
この通知が検出されると、ノード300のキャッシュ制御マイクロコントローラ172は、シリアル/パラレル変換器170よりデバイスセレクト信号173、データバス175を使用し、図7に示した上記キャッシュメモリ無効化パケットを読み出し、ノード内に向けて内部バス305の使用許可を要求する。キャッシュ制御マイクロコントローラ172は、内部バスの使用許可が与えられると、キャッシュメンテナンス要求信号群174を用いて、接続経路インターフェース303に対し、図7のパケットの内容に基づきアドレス41000000hの4バイトのデータをキャッシングしているキャッシュメモリに対して、そのブロックを無効化することを指示する。
【0037】
図9に接続経路インターフェース部303の一例を示す。ここではキャッシュ制御マイクロコントローラ172より送られるキャッシュメンテナンス要求信号群174により、アドレスドライバ130にはアドレス(41000000h)が、データ転送シーケンサ131にはキャッシュメモリブロック無効化の要求が指示される。この場合、具体的には内部バス305上へのアドレス41000000hのダミーデータのライトが指示される。
【0038】
シーケンサ131は、信号134により、アドレスドライバ130に対しアドレス41000000hのドライブを指示し、続いてコントロールドライバ132に対し、転送サイズ(4バイト)、リードライト信号(ライト)のコントロール信号のバスへのドライブを信号線136を通して指示する。更に、信号線137を通して、ダミーデータのバス上へのドライブをデータバッファ133に対して指示する。
【0039】
このダミーデータのライト処理をスヌープしたノード内プロセッサ301は、内蔵キャッシュメモリ307のキャッシュメモリのアドレスタグを検査し、該当するブロックが存在した場合には、そのブロックを無効化する。
【0040】
一方、メモリ302には、該当するアドレスが存在しないので、このライト処理は無視される。データ転送シーケンサ131は、バスがタイムアウトすることを防ぐために、一定のディレイ後のコントロールドライバ132に対して、アクノリッジ信号をドライブするように指示する。
【0041】
ノード400においても同様の動作が実施される。
【0042】
これによりノード100のデータのライト動作に伴うキャッシュ一貫性保持動作が実現される。
【0043】
他のノード間での転送においても、まったく同様に処理が行われる。
【0044】
但し、発信元のノード100、及び転送されるデータの受信先であるノード200においては、図7に示すキャッシュ無効化要求パケットを受信し、その中身を解釈し、自ノード番号が、そのパケット内部の要求元、もしくは接続先フィールドにあることを発見した段階で、そのパケットによって行われるはずのその後の処理は無視されることになる。
【0045】
なお、本実施例では図1におけるアービトレーション用信号経路110、210、310、410の上の光信号には波長λ1の光を使用し、接続経路31、32、33、34上の光信号には波長λ2、λ3(λ2、λ3は別波長)を使用しているが、λ1=λ2、λ1=λ3の場合があっても構成上差し支えはない。
【0046】
次に、自ノード内部でのキャッシュ可能領域へのデータの変更の場合、具体的には、ノード100が他のノードでもキャッシング可能な自ノード内RAM上の01000000h番地のデータ(4バイト)をキャッシングしており、それを変更しようとした場合、それにともなうキャッシュメモリの一貫性の保持動作がどのようにして実施されるかを示す。
【0047】
図3において、今度は外部アクセス検出信号144は反応せず、ライト要求検出信号150のみによってノードアービトレーション制御プロセッサ141上で動作するプログラムに制御を渡す。同時にアドレスラッチレジスタ142に、そのときアドレス信号線153上に出ているアドレスをラッチし、コントロール信号ラッチレジスタ143に転送バイト数(4バイト)などのコントロール情報をラッチする。
【0048】
ノードアービトレーション制御プロセッサ141は、アドレスラッチ142、及びコントロール信号ラッチ143よりラッチされたアドレス及びコントロール情報を読み出し、図10に示すようなキャッシュメンテナンスリクエストパケットを作成し、パラレル/シリアル変換器161に書き込む。パラレル/シリアル変換器161では書き込まれた情報をシリアルデータに変換し発光素子163へ出力する。発光素子163は、入力された信号を光電変換し、波長λ1の光信号として、光ファイバによって構成された通信路110を通してアービタ20へ出力する。
【0049】
図5において、ノード100よりキャッシュメンテナンスリクエストパケットが到着し、シリアル/パラレル変換器611に入力されると、シリアル/パラレル変換器611では、入力されたシリアル電気信号をパラレル信号に変換し、同時に622のデータ受信検出信号により、パケット情報管理装置21に通知する。
【0050】
パケット情報管理装置21は、データ受信検出信号(1)622を受信すると、デバイスセレクト信号619によりシリアル/パラレル変換器611を選択し、内部のレジスタよりデータバス620を通じて、ノード100より送出されたキャッシュメンテナンスリクエストパケットを読みだす。そしてパケット内のアドレス及び転送バイト数、要求元ノード番号等の情報を、マイクロコントローラの中のキャッシュメモリ管理装置24としての役割を果たす部分に格納する。
【0051】
キャッシュ情報管理装置24は、自分にもたらされた情報をもとに、キャッシュメモリの一貫性を保持するために、各ノードに対して、アドレス01000000hのデータをキャッシュメモリに保持していた場合はそれを無効化するように指示するため、図7に示すようなキャッシュメモリ無効化パケットを作成し、パラレル/シリアル変換器627に書き込む。但し、この場合は、パケットの接続先ノードフィールドには、実際には存在しないノード番号が含まれている。書き込まれたパケットは628によって光信号に変換されスターカプラ50を通して全ノードに配信される。
【0052】
これ以後の動作は、先の例と同じであるので省略する。
【0053】
なお、ここまでに示した実施例では、図1におけるアービトレーション用信号経路110と31、210と32、310と33、410と34とで、物理的に別の信号経路を仮定していたが、論理的にこれらの回線が分離可能であれば、物理上は同一信号経路(即ち同一光ファイバ)を通る場合があってもよい。但し、その場合は、波長多重する際に混信を防ぐ関係上、λ1、λ2、λ3、λcはそれぞれが異なる波長であることが必要となる。
【0054】
【発明の効果】
以上説明したように、本発明によれば、複数の波長の光を光波長多重化して用いて接続する接続経路により、複数のノード間を同時に複数組接続可能としながら、ノード内及びノード間でのデータ転送に必要な情報の一部又は全部を、ノードから調停部へ調停用信号経路を用いて伝送し、その伝送された情報の一部又は全部を、前記接続経路上に配され、データを各ノードに分配するデータ分配器及び当該接続経路を通じて分配し、各ノードにおいて、分配された情報をノード内部のキャッシュメモリに反映させることにより、ノード間でキャッシュメモリにおけるデータの一貫性を保持し、ノードにおける計算効率、及び接続経路の利用効率を上げることを可能とし、より高性能な情報処理システムを実現できる。
【図面の簡単な説明】
【図1】本発明の1実施例の情報処理システムの機能構成を示すブロック図である。
【図2】実施例のシステムのアドレスマップを示す図である。
【図3】実施例のノードのアービタインタフェースを示す図である。
【図4】アービトレーションリクエストパケットの構成を示した図である。
【図5】実施例のアービタの構成を示した図である。
【図6】接続準備要求パケットの構成を示した図である。
【図7】キャッシュメモリ無効化パケットの構成を示した図である。
【図8】キャッシュメンテナンスインタフェース部の構成を表わした図である。
【図9】接続経路インタフェース部の構成を表わした図である。
【図10】キャッシュメンテナンスリクエストパケットの構成を示した図である。
【符号の説明】
20 アービタ
21 パケット情報管理装置
22 経路選択情報管理装置
23 付加情報管理装置
24 キャッシュ情報管理装置
30 コンセントレータ
31、32、33、34 光ファイバ
35 キャッシュメンテナンス用光信号経路
50 スターカプラ
100、200、300、400 ノード
101、201、301、401 CPU(プロセッサ)
102、202、302、402 メモリ
103、203、303、403 接続経路インタフェース回路
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 アクノリッジ信号
136 コントロールドライバ制御信号
137 データバッファ制御信号
138 データ受信信号
139 パラレル/シリアル変換器制御信号
140 アドレスデコーダ
141 ノードアービトレーション制御プロセッサ
142 アドレスラッチレジスタ
143 コントロール信号ラッチレジスタ
144 外部アクセス検出信号
145 データ信号線
146 レジスタセレクト信号線
147 デバイスセレクト信号線
148 データ受信信号
149 データ送受信要求信号群
150 ライト要求検出信号
151 内部バスのデータ信号線
152 内部バスのコントロール信号線
153 内部バスのアドレス信号線
161、165、612、614、616、618、627 パラレル/シリアル変換器
162、166、170、611、613、615、617 シリアル/パラレル変換器
163、167、602、604、606、608、628 発光素子
164、168、169、601、603、605、607 受光素子
171 キャッシュメンテナンスパケット受信信号
172 キャッシュ制御マイクロコントローラ
173 デバイスセレクト信号
174 キャッシュメンテナンス要求信号群
175 データ信号線
619 デバイスセレクト信号
620 データバス
621 マイクロコントローラ
622、623、624、625 データ検出信号1、2、3、4
626 制御信号[0001]
[Industrial applications]
The present invention generally relates to a group of information processing apparatuses having at least one processor, a memory, and a cache memory, and a parallel computing system including a connection path connecting the group of information processing apparatuses.
[0002]
[Prior art]
When connecting a plurality of information processing apparatuses each having one or more processors and a memory (hereinafter, referred to as nodes) for the purpose of exchanging data between nodes, a method of connecting using various LANs, There is a method of connecting the nodes at the address level of the memory regardless of the type. As an example of the latter, the present applicant has filed an application for an information processing apparatus using an optical wavelength multiplexing system as Japanese Patent Application No. 5-286876. According to this method, by using a plurality of identifiable wavelengths, different data transfer can be simultaneously realized between a plurality of nodes.
[0003]
Further, as an improved example of the system, each node, which was filed by the applicant of the present invention as Japanese Patent Application No. 5-288271, simultaneously sends additional information related to data transfer to the arbiter at the time of connection path request prior to data transfer. When setting the connection route, the information is sent to the connection destination node via the arbitration signal line, and the node receiving the connection request realizes the setup of the route and the preparation of the data to be sent and received between the nodes by overlapping. Information processing apparatuses that improve the efficiency of data transfer after setting a connection path have been devised.
[0004]
[Problems to be solved by the invention]
Further, in order to improve the computational efficiency of the node using the cache memory for the information processing apparatus using the optical wavelength multiplexing method, the data of the cache memory is utilized by using the arbiter and the arbitration signal path. By distributing data for maintaining consistency to each node, it is conceivable to realize information caching between nodes.
[0005]
However, as described above, in the method of using the arbiter and the signal path for arbitration to distribute data for maintaining data consistency of the cache memory to each node, packets are sequentially transmitted to each node inside the arbiter. If the number of nodes increases due to the transmission, the processing may be delayed, and the performance may be degraded.
[0006]
Further, when the arbitration signal path is used for the original optical connection path use request, the arbitration signal path cannot be used for cache maintenance until the use of the arbitration signal path is completed, which causes a delay in processing for that purpose. As a result, there is a possibility that the performance may be reduced.
[0007]
Therefore, an object of the present invention is to realize high-speed information caching between nodes.
[0008]
[Means for Solving the Problems]
In order to solve the above problems, according to the present invention, there are provided a plurality of nodes, each node having at least one processor, a cache memory, and monitoring means for monitoring a signal on a bus inside the node, The information processing system includes an updating unit that updates the internal state of the cache memory based on the monitoring result of the monitoring unit. A connection path capable of simultaneously connecting a plurality of sets of nodes, a data distribution means arranged on the connection path and distributing data to each node through the connection path, and an arbitration means for arbitrating a use request of the connection path And an arbitration signal path connecting the arbitration unit and each node, and a part or all of information necessary for data transfer within the node and between nodes, and Transmission means for transmitting using the arbitration signal path, and distributing a part or all of the information transmitted by the transmission means to each node from the arbitration means through the data distribution means and the connection path. And a distribution control unit for performing the control as described above, and a reflection unit for reflecting the information distributed by the distribution unit in a cache memory inside the node.
[0009]
According to another aspect of the present invention, there are provided a plurality of nodes, each of which has at least one processor, a cache memory, and a monitoring means for monitoring a signal on a bus inside the node; An information processing method in an information processing system comprising: an updating unit that updates an internal state of the cache memory based on a monitoring result of the unit. An arbitration step of arbitrating, by an arbitration unit, a use request for a connection path that can simultaneously connect a plurality of sets by connecting the arbitration unit, and an arbitration signal path for connecting the arbitration unit and each of the nodes; Transmitting a part or all of the information necessary for data transfer between the nodes to the arbitration unit using the arbitration signal path; and transmitting one or more pieces of information transmitted in the transmission step. Or all of the data is distributed from the arbitration unit to the nodes via the connection path and distributes the data to the nodes through the data distributor and the connection path, and the data distributor distributes the data to the nodes through the connection path. Reflecting the information to a cache memory inside the node.
[0011]
【Example】
FIG. 1 is a configuration diagram of an embodiment of a system for realizing the present invention.
[0012]
[0013]
Each node is used to connect a connection path constituted by
[0014]
Reference numeral 20 denotes an arbiter for arbitrating the use of a connection path constituted by the optical fibers 31, 32, 33, and 34. The arbiter 20 is connected to each node by
[0015]
In the arbiter, in addition to the packet
[0016]
In the present embodiment, an example will be described in which the consistency of the cache memory is guaranteed using the invalidation protocol of the write-through cache memory in the system configured as shown in FIG.
[0017]
Specifically, it shows how, when the
[0018]
FIG. 2 is an address map of the entire system. In this embodiment, the address space of 4 gigabytes of the entire system is allocated to four nodes and used. Now, it is assumed that the
[0019]
As described in Japanese Patent Application No. 5-288271, data is read between nodes during the process of caching the data at the address 410000h of the RAM inside the
[0020]
FIG. 3 is a block diagram of the arbiter interface 104.
[0021]
The
[0022]
At the same time, the address latched at that time on the
[0023]
The node
[0024]
The parallel / serial converter 161 converts the written information into serial data and outputs the serial data to the
[0025]
FIG. 5 shows a block diagram of the arbiter 20. Reference numerals 601, 603, 605, and 607 are light receiving elements. A request signal arrives from the
[0026]
In the present embodiment, the packet
[0027]
Upon receiving the data reception detection signal (1) 622, the packet
[0028]
Among the information included in the request packet, information such as the request source node number and the connection destination node number is passed to the route selection
[0029]
The route selection
[0030]
This connection preparation packet also includes information provided from a part of the microcontroller that plays the role of the additional
[0031]
Subsequently, the cache
[0032]
The written packet is transmitted through the light emitting element 610 onto the cache maintenance optical signal path 35 using the wavelength λc, and is input to the
[0033]
The subsequent data transfer from the
[0034]
FIG. 8 shows a configuration diagram of the
[0035]
The optical signal input by the fiber 33 is separated by the
[0036]
When this notification is detected, the
[0037]
FIG. 9 shows an example of the connection path interface unit 303. Here, the address (4100000h) is instructed to the
[0038]
The
[0039]
The in-
[0040]
On the other hand, since there is no corresponding address in the
[0041]
A similar operation is performed in
[0042]
As a result, a cache coherency maintaining operation accompanying the data write operation of the
[0043]
The same processing is performed in the transfer between other nodes.
[0044]
However, the
[0045]
In this embodiment, light having a wavelength of λ1 is used for the optical signals on the
[0046]
Next, in the case of changing the data to the cacheable area inside the own node, specifically, the
[0047]
In FIG. 3, the external access detection signal 144 does not respond this time, and the control is passed to the program operating on the node
[0048]
The node
[0049]
In FIG. 5, when a cache maintenance request packet arrives from the
[0050]
Upon receiving the data reception detection signal (1) 622, the packet
[0051]
If the cache
[0052]
Subsequent operations are the same as in the previous example, and will not be described.
[0053]
In the embodiment described so far, the
[0054]
【The invention's effect】
As described above, according to the present invention, a plurality of sets of nodes can be simultaneously connected between a plurality of nodes, and a plurality of sets of nodes can be connected at the same time by a connection path that connects the lights of a plurality of wavelengths by optical wavelength multiplexing. Part or all of the information necessary for data transfer is transmitted from the node to the arbitration unit using the arbitration signal path, and part or all of the transmitted information is arranged on the connection path, Is distributed to each node through the data distributor and the connection path, and in each node, the distributed information is reflected in the cache memory inside the node, thereby maintaining the data consistency in the cache memory between the nodes. , It is possible to increase the computation efficiency of the node and the utilization efficiency of the connection path, thereby realizing a higher performance information processing system.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a functional configuration of an information processing system according to an embodiment of the present invention.
FIG. 2 is a diagram illustrating an address map of the system according to the embodiment.
FIG. 3 is a diagram illustrating an arbiter interface of a node according to the embodiment;
FIG. 4 is a diagram showing a configuration of an arbitration request packet.
FIG. 5 is a diagram showing a configuration of an arbiter of the embodiment.
FIG. 6 is a diagram showing a configuration of a connection preparation request packet.
FIG. 7 is a diagram showing a configuration of a cache memory invalidation packet.
FIG. 8 is a diagram illustrating a configuration of a cache maintenance interface unit.
FIG. 9 is a diagram illustrating a configuration of a connection path interface unit.
FIG. 10 is a diagram showing a configuration of a cache maintenance request packet.
[Explanation of symbols]
Reference Signs List 20
102, 202, 302, 402 Memory 103, 203, 303, 403 Connection path interface circuit 104, 204, 304, 404 Arbiter interface circuit 105, 205, 305, 405 Node internal bus 106, 206, 306, 406 Cache memory 107, 207, 307, 407 Cache memory maintenance interface circuit 108, 208, 308, 408 Wavelength multiplexing device 110, 210, 310, 410 Arbitration signal path 130 Address driver 131 Data transfer sequencer 132 Control driver 133 Data buffer 134 Address drive signal 135 Acknowledge signal 136 control driver control signal 137 data buffer control signal 138 data reception signal 139 parallel Serial converter control signal 140 Address decoder 141 Node arbitration control processor 142 Address latch register 143 Control signal latch register 144 External access detection signal 145 Data signal line 146 Register select signal line 147 Device select signal line 148 Data reception signal 149 Data transmission / reception request signal Group 150 Write request detection signal 151 Internal bus data signal line 152 Internal bus control signal line 153 Internal bus address signal line 161, 165, 612, 614, 616, 618, 627 Parallel / serial converters 162, 166, 170 , 611, 613, 615, 617 Serial / parallel converters 163, 167, 602, 604, 606, 608, 628 Light emitting elements 164, 168, 16 9, 601, 603, 605, 607 Light receiving element 171 Cache maintenance packet reception signal 172 Cache control microcontroller 173 Device select signal 174 Cache maintenance request signal group 175 Data signal line 619 Device select signal 620 Data bus 621 Microcontroller 622, 623, 624, 625 Data detection signals 1, 2, 3, 4
626 control signal
Claims (8)
複数の波長の光を光波長多重化して用いて接続することで、前記複数のノード間を同時に複数組接続可能な接続経路と、
該接続経路上に配され、当該接続経路を通じてデータを各ノードに分配するデータ分配手段と、
前記接続経路の利用要求を調停するための調停手段と、
該調停手段と各ノードとの間をそれぞれ接続する調停用信号経路と、
ノード内及びノード間でのデータ転送に必要な情報の一部又は全部を、当該ノードから前記調停手段へ、前記調停用信号経路を用いて伝送する伝送手段と、
該伝送手段により伝送された情報の一部又は全部を、前記調停手段から、前記データ分配手段及び前記接続経路を通じて各ノードに分配させるように制御する分配制御手段とを具え、
前記各ノードに、前記分配制御手段により分配された前記情報を、当該ノード内部のキャッシュメモリに反映させる反映手段を設けたことを特徴とする情報処理システム。A plurality of nodes, each node having at least one processor, a cache memory, monitoring means for monitoring a signal on a bus inside the node, and an inside of the cache memory based on a monitoring result of the monitoring means. An information processing system comprising: an updating unit that updates a state,
By connecting by using light of a plurality of wavelengths and optical wavelength multiplexing, a plurality of connection paths can be simultaneously connected between the plurality of nodes,
Data distribution means arranged on the connection path and distributing data to each node through the connection path ;
Arbitration means for arbitrating the use request of the connection path;
An arbitration signal path for connecting between the arbitration means and each node;
Transmission means for transmitting a part or all of the information necessary for data transfer between nodes and between nodes, from the node to the arbitration means, using the arbitration signal path,
Distribution control means for controlling a part or all of the information transmitted by the transmission means to be distributed to each node through the data distribution means and the connection path from the arbitration means,
An information processing system, wherein each node is provided with reflection means for reflecting the information distributed by the distribution control means in a cache memory inside the node.
前記複数のノード間を複数の波長の光を光波長多重化して用いて接続することで同時に複数組接続可能な接続経路の利用要求を調停部により調停する調停工程と、
該調停部と各ノードとの間をそれぞれ接続する調停用信号経路を用いて、ノード内及びノード間でのデータ転送に必要な情報の一部又は全部を、当該ノードから前記調停部へ、前記調停用信号経路を用いて伝送する伝送工程と、
該伝送工程により伝送された情報の一部又は全部を、前記調停部から、前記接続経路上に配され、データを各ノードに分配するデータ分配器及び当該接続経路を通じて各ノードに分配する分配工程と、
該分配工程により各ノードに分配された前記情報を、ノード内部のキャッシュメモリに反映させる反映工程とを備えたことを特徴とする情報処理方法。A plurality of nodes, each node having at least one processor, a cache memory, monitoring means for monitoring a signal on a bus inside the node, and an inside of the cache memory based on a monitoring result of the monitoring means. An information processing system comprising: an updating unit that updates a state.
An arbitration step of arbitrating a request for use of a plurality of simultaneously connectable connection paths by an arbitration unit by connecting the plurality of nodes by using light of a plurality of wavelengths by optical wavelength multiplexing ,
Using an arbitration signal path that connects between the arbitration unit and each node, a part or all of information necessary for data transfer within a node and between nodes is transferred from the node to the arbitration unit, A transmission step of transmitting using an arbitration signal path;
A data distributor that distributes part or all of the information transmitted in the transmission step from the arbitration unit on the connection path and distributes data to each node, and a distribution step of distributing the data to each node through the connection path; When,
A reflection step of reflecting the information distributed to each node in the distribution step in a cache memory inside the node.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21715594A JP3599381B2 (en) | 1994-09-12 | 1994-09-12 | Information processing system and method |
US08/526,328 US6078337A (en) | 1994-09-12 | 1995-09-11 | Maintaining consistency of cache memory data by arbitrating use of a connection route by plural nodes |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21715594A JP3599381B2 (en) | 1994-09-12 | 1994-09-12 | Information processing system and method |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0883258A JPH0883258A (en) | 1996-03-26 |
JP3599381B2 true JP3599381B2 (en) | 2004-12-08 |
Family
ID=16699721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP21715594A Expired - Fee Related JP3599381B2 (en) | 1994-09-12 | 1994-09-12 | Information processing system and method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3599381B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5930822A (en) * | 1996-09-27 | 1999-07-27 | Hewlett-Packard Co. | Method and system for maintaining strong ordering in a coherent memory system |
US6973544B2 (en) * | 2002-01-09 | 2005-12-06 | International Business Machines Corporation | Method and apparatus of using global snooping to provide cache coherence to distributed computer nodes in a single coherent system |
-
1994
- 1994-09-12 JP JP21715594A patent/JP3599381B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH0883258A (en) | 1996-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100812225B1 (en) | Crossbar switch architecture for multi-processor SoC platform | |
JPH11134312A (en) | Decentralized shared memory multiprocessor system | |
US6078337A (en) | Maintaining consistency of cache memory data by arbitrating use of a connection route by plural nodes | |
US5602663A (en) | Information processing apparatus for multiplex transmission of signal for arbitration and signal for data transfer | |
JPH0776942B2 (en) | Multiprocessor system and data transmission device thereof | |
US8046516B2 (en) | Cache coherent switch device | |
US20130111141A1 (en) | Multi-core interconnect in a network processor | |
JP3647055B2 (en) | Information processing system, management method, and management apparatus | |
JP2011517003A (en) | Multi-core processing system | |
US20020083254A1 (en) | System and method of implementing interrupts in a computer processing system having a communication fabric comprising a plurality of point-to-point links | |
US8346080B2 (en) | Optical network system and memory access method | |
JPH07225745A (en) | Information processor and arbitration method | |
JP3599381B2 (en) | Information processing system and 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 | |
JP3086261B2 (en) | Bus structure for multiprocessor system | |
US5933261A (en) | Information processing method and system | |
JP3599380B2 (en) | Information processing system and method | |
US6826643B2 (en) | Method of synchronizing arbiters within a hierarchical computer system | |
JP3466728B2 (en) | Information processing system and method | |
JP4225160B2 (en) | Optical bus system | |
JP3466727B2 (en) | Information processing system and method | |
JP2001222517A (en) | Distributed shared memory multiplex processor system having direction-separated duplex ring structure | |
US6735654B2 (en) | Method and apparatus for efficiently broadcasting transactions between an address repeater and a client | |
JP3661249B2 (en) | Multiprocessor system | |
KR100581196B1 (en) | System on chip bus architecture providing multiple channel |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040615 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040816 |
|
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: 20040907 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040914 |
|
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: 20070924 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080924 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090924 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090924 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100924 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100924 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110924 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110924 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120924 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120924 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130924 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |