(57)【特許請求の範囲】
【請求項１】
複数のＣＰＵで構成されたシステムにおいて、複数のＣＰＵそれぞれを搭載する複数のスロットを備えて、目的の処理をマルチＣＰＵで実行するために、搭載したＣＰＵ間の通信をＬＡＮインタフェースに基づいて行うスロット型ＣＰＵ装置であって、ＣＰＵ自身が、当該ＣＰＵが実装された実装スロット位置を検知し、検知した前記実装スロット位置に基づいて、当該ＣＰＵのＬＡＮインタフェース用に必要な通信パラメータを決定し、当該ＣＰＵの実装スロット位置と、当該ＣＰＵが通信を行いうる他のＣＰＵの実装スロット位置とに基づいて、当該ＣＰＵを送信元とし前記他のＣＰＵを送信先とする通信に用いるＩＰポート番号、及び、当該ＣＰＵを送信先とし前記他のＣＰＵを送信元とする通信に用いるＩＰポート番号の少なくとも一方を作成することを特徴とするスロット型ＣＰＵ装置。
【請求項２】
前記実装スロット位置に基づいて決定するＬＡＮインタフェース用に必要な前記通信パラメータとして、自ＣＰＵのＩＰアドレス、自ＣＰＵのＩＰポート番号を少なくとも含むことを特徴とする請求項１に記載のスロット型ＣＰＵ装置。
【請求項３】
前記実装スロット位置を検知する手段として、電源投入時の電源電圧または電源電流の立ち上がり速度を測定することにより、自ＣＰＵの前記実装スロット位置を検知することを特徴とする請求項１または２に記載のスロット型ＣＰＵ装置。
【請求項４】
前記実装スロット位置を検知する手段として、各スロット位置ごとに、それぞれのスロット位置を示すハードスイッチを備え、当該ハードスイッチを読み取ることにより、自ＣＰＵの前記実装スロット位置を検知することを特徴とする請求項１または２に記載のスロット型ＣＰＵ装置。
【請求項５】
ＬＡＮインタフェースに基づいてＣＰＵ間の通信を行うＬＡＮネットワークが、スイッチングハブを用いたメッシュ型ネットワークからなっていることを特徴とする請求項１ないし４のいずれかに記載のスロット型ＣＰＵ装置。
【請求項６】
複数のＣＰＵから共通にアクセスすることができる共通メモリを備え、ＣＰＵの前記スロット位置に基づいて、当該ＣＰＵのＬＡＮインタフェース用に必要な前記通信パラメータを決定した際に、決定した当該ＣＰＵのＬＡＮインタフェース用の前記通信パラメータを前記共通メモリに登録することを特徴とする請求項１ないし５のいずれかに記載のスロット型ＣＰＵ装置。
【請求項７】
複数のＣＰＵから共通にアクセスすることができる共通メモリを備え、ＣＰＵが前記スロット位置を検知した際に、検知した当該ＣＰＵの前記実装スロット位置を前記共通メモリに登録することを特徴とする請求項１ないし５のいずれかに記載のスロット型ＣＰＵ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スロット型ＣＰＵ装置に関し、特に、ＣＰＵ間の通信パラメータの設定を自動的に行うスロット型ＣＰＵ装置に関する。
【背景技術】
【０００２】
スロット型ＣＰＵ装置は、複数のＣＰＵを有するマルチＣＰＵとして構成するものであり、ＣＰＵ間の通信が必須である。しかし、特許文献１の特開２００４−３０２７３５号公報「機器構成管理装置」に記載のように、ＣＰＵ間の通信を行うためには、ユーザはＣＰＵ間の通信を行わせるためのネットワーク設計作業つまり通信パラメータの設計作業を行う必要がある。また、ネットワーク設計により決定したＩＰアドレス、ＩＰポート番号、サブネットマスクなどの通信パラメータを、設計した通りに、ＣＰＵそれぞれに初期設定することが必要であり、さらには、ＣＰＵに実装するＯＳ（Operating  System）の種類により、設定方法が異なることがあるため、正常に通信を行うことが可能になるまで、煩雑な処理が必要であった。
【０００３】
また、ユーザが手動で通信パラメータを設定する際には、設定ミスが発生する場合や、各ＣＰＵの形状が箱型ケースのスロットそれぞれに収納する同一の形状であるため、箱型ケースのスロット位置の誤認識などに伴う設定ミスが発生する場合がある。かくのごとき設定ミスが一箇所でも発生すると、ＣＰＵ間の通信は不可能になる。例えば、設定ミスの一つとして、ＩＰアドレスを同じ番号に設定した場合には、正常に通信できたり、通信ができなかったりするなど、不安定な状況を引き起こすことになるとともに、設定ミスの箇所を特定するためには、全部のＣＰＵの設定内容を見直すことが必要になるなど、設定作業が非効率な点が多数発生していた。
【特許文献１】特開２００４−３０２７３５号公報（第４−５頁）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は、前述のような問題に鑑みてなされたものであり、ＣＰＵ間通信用の通信パラメータの人手による設定を行うことなく、マルチＣＰＵ間の通信を実現することを可能とするスロット型ＣＰＵ装置を提供することを、その目的としている。
【課題を解決するための手段】
【０００５】
前述の課題を解決するため、本発明によるスロット型ＣＰＵ装置は、次のような特徴的な構成を採用している。
【０００６】
（１）複数のＣＰＵで構成されたシステムにおいて、複数のＣＰＵそれぞれを搭載する複数のスロットを備えて、目的の処理をマルチＣＰＵで実行するために、搭載したＣＰＵ間の通信をＬＡＮインタフェースに基づいて行うスロット型ＣＰＵ装置であって、ＣＰＵ自身が、当該ＣＰＵが実装された実装スロット位置を検知し、検知した前記実装スロット位置に基づいて、当該ＣＰＵのＬＡＮインタフェース用に必要な通信パラメータを決定するスロット型ＣＰＵ装置。
【発明の効果】
【０００７】
本発明のスロット型ＣＰＵ装置によれば、以下のような効果を得ることができる。
【０００８】
本発明に係るスロット型ＣＰＵ装置においては、ネットワークを介してＬＡＮ接続されたＣＰＵ間の通信に必要となる送信先ＩＰアドレス、送信先ＩＰポート番号、送信元ＩＰアドレス、送信元ＩＰポート番号が、すべて、ＣＰＵが実装された箱型ケースのスロット位置から自動的に算出されるので、ネットワーク設計およびＩＰアドレス、ＩＰポート番号の通信パラメータの初期設定が不要であり、ＣＰＵ間の通信パラメータの設定が容易で、設定作業の効率が良いネットワーク構築を行うことができる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明によるスロット型ＣＰＵ装置の好適な実施形態について添付図を参照して説明する。
【００１０】
(本発明の特徴)
本発明の実施形態の説明に先立って、本発明の特徴について、その概要をまず説明する。本発明は、スロット型ＣＰＵにおいて、ＣＰＵ間通信にＬＡＮ回線を使用する際のＩＰアドレス等の通信パラメータの設定を自動的で行うことにより、容易にＣＰＵ間通信を行うことを可能とする。なお、スロット型ＣＰＵとは、実装用のケースの各スロットにＣＰＵボードを複数枚並べて実装し、目的のシステムをマルチＣＰＵ構成で実現するものである。
【００１１】
つまり、本発明においては、自ＣＰＵが実装されている箱型ケース内のスロット位置を自動的に検索するスロット位置検索手段と、検索されたスロットの実装位置から、自ＣＰＵおよび通信相手のＣＰＵのＩＰアドレスを自動的にかつ一意に作成するＩＰアドレス作成手段および自ＣＰＵと通信相手のＣＰＵとの通信に用いるＩＰポート番号を自動的にかつ一意に作成するＩＰポート番号作成手段と、データ送信時に、決定した自ＣＰＵおよび通信相手のＣＰＵのＩＰアドレス、ＩＰポート番号を自動的に設定する送信先自動設定手段と、データ受信時に、自ＣＰＵ宛のデータか否かを自動的に判別する受信先検索手段と、ＣＰＵ間のネットワークをメッシュ型に構築するメッシュ型ネットワーク構築手段（例えばＳＷ−ＨＵＢ：スイッチングハブ）と、を少なくとも備えている。
【００１２】
かくのごとき手段を用いることにより、スロット型ＣＰＵにおいて、各ＣＰＵは、自ＣＰＵが実装されているスロット位置を検索し、自ＣＰＵに割り当てるべきＩＰアドレス、ＩＰポート番号を作成するとともに、通信相手先となる実装可能なＣＰＵ個数分のＩＰアドレス、ＩＰポート番号を作成することにより、自動的に、かつ、一意に定まるＩＰアドレス、ＩＰポート番号を設定して、ＣＰＵ間の正常な通信を行うことを可能とする。さらに、ＳＷ−ＨＵＢ（スイッチングハブ）を用いて、各ＣＰＵそれぞれとの間に、メッシュ型のネットワークを構築することにより、双方向通信経路を構築することを可能とする。
【００１３】
なお、本発明におけるＩＰアドレスの割り当て方法と、ＴＣＰ／ＩＰのＩＰアドレス、サブネットマスクなどの設定情報を動的に割り付けるＤＨＣＰ（Dynamic  Host  Configuration  Protocol）との違いは、ＤＨＣＰは、ＤＨＣＰサーバがＩＰアドレスを一意に設定することに対し、本発明においては、各ＣＰＵが自律的にＩＰアドレス、ＩＰポート番号を一意に設定することにある。さらには、何らかの外部装置を使用してＩＰアドレスを指定する方式との違いは、ＣＰＵの実装位置を自律的に検索し、ＩＰアドレスを設定することにある。
【００１４】
（実施形態の構成）
図１は、本発明によるスロット型ＣＰＵ装置の装置構成の一例を示す装置構成図である。図１に示すように、本実施形態のスロット型ＣＰＵ装置１００は、箱型ケース１０１と電源バス３０１と電源ユニット３００と最大ｎ台（ｎ：整数）のＣＰＵ１〜ＣＰＵ  ｎとネットワーク（ＳＷ−ＨＵＢ）２００とＬＡＮケーブル１１〜１ｎとネットワークコネクタ２１〜２ｎとを少なくとも含んで構成されている。
【００１５】
箱型ケース１０１には、電源ユニット３００が内蔵されるとともに、ＣＰＵ１〜ＣＰＵ  ｎを並列に搭載するｎ個のスロットが用意されており、各スロットには、電源ユニット３００からの電源を、各スロットに搭載された際のＣＰＵ１〜ＣＰＵ  ｎそれぞれに供給する電源バス３０１が接続されている。また、各スロットに搭載されたＣＰＵ１〜ＣＰＵ  ｎは、それぞれ、ＬＡＮケーブル１１〜１ｎを介して、ネットワーク（ＳＷ−ＨＵＢ）２００のネットワークコネクタ２１〜２ｎと接続されており、ＣＰＵ１〜ＣＰＵ  ｎは、ネットワーク（ＳＷ−ＨＵＢ）２００によりメッシュ型に双方向に接続されていて、相互に通信を行うことが可能である。
【００１６】
次に、図２を参照して、ＣＰＵ内の機能を説明する。図２は、図１のスロット型ＣＰＵ装置１００を構成する各ＣＰＵ内のブロック構成の一例を説明するブロック構成図である。スロット型ＣＰＵ装置において、各ＣＰＵは、図２に示すように、実装したスロットの位置を決定するスロット位置検索機能２０１、ＩＰアドレスを作成するＩＰアドレス作成機能２０２、ＣＰＵ番号を作成するＣＰＵ番号作成機能２０３、ＩＰポート番号を作成するＩＰポート番号作成機能２０４を少なくとも備えている。
【００１７】
また、スロット位置検索機能２０１により検索したスロット位置はスロット位置設定テーブル２５１に、ＩＰアドレス作成機能２０２により作成したＩＰアドレスはＩＰアドレス設定テーブル２５２に、ＣＰＵ番号作成機能２０３により作成したＣＰＵ番号はＣＰＵ番号設定テーブル２５３に、ＩＰポート番号作成機能２０４により作成したＩＰポート番号はＩＰポート番号設定テーブル２５４にそれぞれ保存される。
【００１８】
ここで、スロット位置設定テーブル２５１、ＩＰアドレス設定テーブル２５２、ＣＰＵ番号設定テーブル２５３、ＩＰポート番号設定テーブル２５４の各テーブルは、各ＣＰＵ内のメモリに設けられている。スロット位置設定テーブル２５１、ＩＰアドレス設定テーブル２５２、ＣＰＵ番号設定テーブル２５３は、自ＣＰＵ分のみならず、通信の相手先となる可能性を有する各ＣＰＵについても設定できるように、最大実装数分（ｎ個分）の容量を有している。また、ＩＰポート番号設定テーブル２５４は、通信の相手先となる可能性を有する各ＣＰＵとの通信を行う際の自ＣＰＵ側のＩＰポート番号および相手ＣＰＵ側のＩＰポート番号の双方を設定できるように、最大実装数分（ｎ個分）の２倍の容量を有している。
【００１９】
例えば、ＣＰＵをスロット位置Ａｐとして“ｐ”
（ｐ＝１〜ｎのいずれか）の位置に実装したＣＰＵの場合、スロット位置検索機能２０１により、自ＣＰＵのスロット位置Ａｐとして“ｐ”がスロット位置設定テーブル２５１に登録されるとともに、“ｐ”以外の他のＣＰＵのスロット位置についても、スロット位置設定テーブル２５１に登録される。ここで、Ａｐと異なるスロット位置例えば“１”に実装し直した場合、自ＣＰＵのスロット位置は、Ａｐではなく、スロット位置Ａ１の“１”がスロット位置設定テーブル２５１に登録される。
【００２０】
同様に、スロット位置設定テーブル２５１に自ＣＰＵのスロット位置Ａｐとして“ｐ”が登録されている自ＣＰＵの場合、ＩＰアドレス作成機能２０２により自ＣＰＵのＩＰアドレスのホストアドレスとして、スロット位置Ａｐと同一の“ｐ”が、ＩＰアドレス設定テーブル２５２に登録されるとともに、“ｐ”以外の他のＣＰＵのＩＰアドレスのホストアドレスについても、スロット位置に対応してＩＰアドレス設定テーブル２５２に登録される。Ａｐと異なるスロット位置例えば“１”に実装し直した場合、自ＣＰＵのスロット位置Ａ１として“１”がスロット位置設定テーブル２５１に登録されるとともに、自ＣＰＵのＩＰアドレスのホストアドレスも、“１”がＩＰアドレス設定テーブル２５２に登録される。ここで、ＩＰアドレスのネットワークアドレスについては、各ＣＰＵすべてについて同一のネットワーク内に存在するものとして、各ＣＰＵすべてについて共通で、例えば、“１０．１．１．０”であり、サブネットマスクは“２５５．２５５．２５５．０”である。したがって、最終的には、ＩＰアドレス設定テーブル２５２には、（ネットワークアドレス）＋（ホストアドレス）の合成が行われ、ＩＰアドレスとして登録される。
【００２１】
同様に、スロット位置設定テーブル２５１に自ＣＰＵのスロット位置Ａｐとして“ｐ”が登録されている自ＣＰＵの場合、ＣＰＵ番号作成機能２０３により自ＣＰＵのＣＰＵ番号として、スロット位置Ａｐと同一の“ｐ”が、ＣＰＵ番号設定テーブル２５３に登録されるとともに、“ｐ”以外の他のＣＰＵのＣＰＵ番号についても、ＣＰＵ番号設定テーブル２５３に登録される。Ａｐと異なるスロット位置例えば“１”に実装し直した場合、自ＣＰＵのスロット位置Ａ１として“１”がスロット位置設定テーブル２５１に登録されるとともに、自ＣＰＵのＣＰＵ番号も、“１”がＣＰＵ番号設定テーブル２５３に登録される。
【００２２】
また、スロット位置設定テーブル２５１に自ＣＰＵのスロット位置Ａｐとして“ｐ”が登録されている自ＣＰＵの場合、ＩＰポート番号作成機能２０４により、自ＣＰＵのＩＰポート番号は、（自ＣＰＵ番号＋通信先ＣＰＵ番号）の形式で生成され、自ＣＰＵ番号の“ｐ”を２桁の“０ｐ”、通信先の相手のＣＰＵ番号“ｋ”（ｋは１〜ｎ）も、２桁の“０ｋ”として、“０ｐ０ｋ”が、ＩＰポート番号設定テーブル２５４に登録される。ここで、ＩＰポート番号設定テーブル２５４に登録されるＩＰポート番号は、通信を行う際に必要とする、自ＣＰＵ  ｐとの相手となるすべてのＣＰＵ側のＩＰポート番号も含めて設定されるものであり、自ＣＰＵ  ｐがデータを送受信する自ＣＰＵ  ｐ側のＩＰポート番号“０ｐ０ｋ”のみならず自ＣＰＵ  ｐとの間でデータを送受信する相手側のＣＰＵで使用されるＩＰポート番号“０ｋ０ｐ”を含めて設定している例を示している。
【００２３】
さらに、各ＣＰＵは、送信データの送信時に、ＩＰアドレス設定テーブル２５２とＩＰポート番号設定テーブル２５４とから、送信先のＣＰＵのＩＰアドレス、ＩＰポート番号および送信元の自ＣＰＵ  ｐのＩＰアドレス、ＩＰポート番号を設定する送信先設定機能２０５と、該送信先設定機能２０５により設定した送信先に送信すべき送信データ２５６をＬＡＮケーブル、ネットワーク（ＳＷ−ＨＵＢ）２００を介して送信する送信機能２０６と、ＬＡＮケーブル、ネットワーク（ＳＷ−ＨＵＢ）２００を介して送信元から送信されてきた受信データ２５７を受信する受信機能２０７と、該受信機能２０７により受信した受信データ２５７から送信先を示すＩＰアドレスとＩＰポート番号とを取り出して、ＩＰアドレス設定テーブル２５２とＩＰポート番号設定テーブル２５４とを検索することにより、自ＣＰＵ向けのデータか否かを判別し、自ＣＰＵ向けのデータであれば、取り込む受信先検索機能２０８とを、備えている。
【００２４】
（実施形態の動作の説明）
次に、図１、図２のスロット型ＣＰＵ装置１００の動作の一例を、図３、図４、図５を用いて説明する。
【００２５】
まず、図２に示したＣＰＵ  ｐ（ｐ＝１〜ｎ）のスロット位置検索機能２０１が、自ＣＰＵ  ｐが箱型ケース１０１に実装されたスロット位置Ａｐを検知する動作について説明する。本実施形態においては、電源投入時に、電源ユニット３００とＣＰＵ  ｐの実装スロット位置ｐとの距離に応じて変化する電源バス３０１の反射時間を利用するものであり、電源電圧または電源電流の立ち上がり速度を算出することによって、実装されているスロット位置Ａ１〜スロット位置Ａｎの中からスロット位置Ａｐを検知する。あるいは、スロット位置Ａ１〜スロット位置Ａｎのそれぞれの位置を示すハードスイッチをそれぞれに用意して、スロット位置Ａｐに実装したＣＰＵ  ｐは、該ハードスイッチを読み取ることによって、スロット位置Ａｐを検知するようにしても良い。スロット位置検索機能２０１は、検知したスロット位置Ａｐをスロット位置設定テーブル２５１に登録する。
【００２６】
自ＣＰＵ  ｐの実装スロット位置Ａｐが決定すると、図３に示すように、自ＣＰＵ  ｐのＣＰＵ番号、ＩＰアドレスも自動的に決定される。図３は、本発明のスロットＣＰＵ装置のスロット位置、ＣＰＵ番号、ＩＰアドレスに対応関係を説明するための説明図である。つまり、図３に示すように、ＣＰＵ  ｐの実装スロット位置Ａｐが決定すると、自ＣＰＵ  ｐのＣＰＵ番号はスロット位置そのものの“ｐ”であり、また、ＩＰアドレスのホストアドレスも、スロット位置そのものの“ｐ”である。なお、ＩＰアドレスのネットワークアドレス“１０．１．１．０”、サブネットマスク“２５５．２５５．２５５．０”はすべてのＣＰＵに共通の値である。
【００２７】
例えば、スロット位置“１”に実装したＣＰＵのＣＰＵ番号は“１”であり、そのＩＰアドレスのホストアドレスも“１”であり、ＩＰアドレスは、ネットワークアドレス“１０．１．１．０”とホストアドレス“１”とを合成した符号Ｂ１で示す“１０．１．１．１”となる。また、スロット位置“２”に実装したＣＰＵのＣＰＵ番号は“２”であり、そのＩＰアドレスのホストアドレスも“２”であり、ＩＰアドレスは、ネットワークアドレス“１０．１．１．０”とホストアドレス“２”とを合成した符号Ｂ２で示す“１０．１．１．２”となる。同様に、スロット位置“ｎ”に実装したＣＰＵのＣＰＵ番号は“ｎ”であり、そのＩＰアドレスのホストアドレスも“ｎ”であり、ＩＰアドレスは、ネットワークアドレス“１０．１．１．０”とホストアドレス“ｎ”とを合成した符号Ｂｎで示す“１０．１．１．ｎ”となる。
【００２８】
すなわち、図２に示したＣＰＵ  ｐ（ｐ＝１〜ｎ）のＩＰアドレス作成機能２０２は、スロット位置Ａｐと同一の“ｐ”を、ホストアドレスとして、共通のネットワークアドレス“１０．１．１．０”と合成して、“１０．１．１．ｐ”（ＩＰアドレスＢｐ）のＩＰアドレスを生成して、ＩＰアドレス設定テーブル２５２に登録する。なお、ＣＰＵ  ｐ以外のＣＰＵのＩＰアドレスについても、実装可能なＣＰＵの個数分（ｎ個分）、送信先のＩＰアドレスとして登録しておく。
【００２９】
また、ＣＰＵ番号作成機能２０３は、スロット位置Ａｐと同一の“ｐ”を、ＣＰＵ  ｐのＣＰＵ番号として、ＣＰＵ番号設定テーブル２５３に登録する。箱型ケース１０１のスロットに実装したＣＰＵ番号  ｐと、スロット位置Ａｐとの対応関係を模式的に図４に示している。図４に示すように、「スロット位置（Ａ１〜Ａｎ）」＝「ＣＰＵ番号（１〜ｎ）」と同一の番号が付与されていることになる。なお、ＣＰＵ  ｐ以外のＣＰＵのＣＰＵ番号についても、実装可能なＣＰＵの個数分（ｎ個分）、登録しておく。
【００３０】
また、図２に示すＩＰポート番号作成機能２０４は、スロット位置ｐ（ｐ＝１〜ｎ）のＣＰＵ  ｐの場合、自ＣＰＵ  ｐとの通信相手となる他のＣＰＵ側に関する情報も必要となるため、スロット位置設定テーブル２５１からスロット位置Ａ１〜スロット位置Ａｎを取り出し、または、ＣＰＵ番号設定テーブル２５３からＣＰＵ１〜ＣＰＵ  ｎを取り出し、自ＣＰＵ  ｐにて送受信する場合のすべてのＣＰＵ  ｋ（ｋ＝１〜ｎ）の組み合わせ、および、通信の可能性がある通信相手先のＣＰＵ  ｋ（ｋ＝１〜ｎ）側で使用されるものについても、自ＣＰＵ  ｐを通信相手とする場合のすべての組み合わせを作成する。
【００３１】
ここで、ＩＰポート番号として、送信元のＣＰＵ  ｐから送信先の例えばＣＰＵ１に送信する場合、送信するＣＰＵ  ｐ側では、“０ｐ０１”（送信元ＣＰＵ番号＋送信先ＣＰＵ番号）を使って送信する。一方、送信元のＣＰＵ  ｐから受信するＣＰＵ１側では、“０１０ｐ”（送信先ＣＰＵ番号＋送信元ＣＰＵ番号）を使って受信する。逆に、ＣＰＵ  ｐが、他のＣＰＵ例えばＣＰＵ１からの送信先となって、ＣＰＵ１からの情報を受信する場合、送信するＣＰＵ１側では、“０１０ｐ”（送信元ＣＰＵ番号＋送信先ＣＰＵ番号）を使って送信する。一方、送信元のＣＰＵ１から受信するＣＰＵ  ｐ側では、“０ｐ０１”（送信先ＣＰＵ番号＋送信元ＣＰＵ番号）を使って受信する。
【００３２】
つまり、自ＣＰＵ  ｐを送信元としてデータを送信する場合には、送信先がＣＰＵ１の場合、ＩＰポート番号は“０ｐ０１”であり、送信先がＣＰＵ２の場合、ＩＰポート番号は“０ｐ０２”であり、…、送信先が自ＣＰＵ  ｐの場合、ＩＰポート番号は“０ｐ０ｐ”であり、…、送信先がＣＰＵ  ｎの場合、ＩＰポート番号は“０ｐ０ｎ”である。一方、自ＣＰＵ  ｐを送信先として他のＣＰＵから送られてくるデータを受信する場合も、送信元がＣＰＵ１の場合、ＩＰポート番号は“０ｐ０１”であり、送信元がＣＰＵ２の場合、ＩＰポート番号は“０ｐ０２”であり、…、送信元が自ＣＰＵ  ｐの場合、ＩＰポート番号は“０ｐ０ｐ”であり、…、送信元がＣＰＵ  ｎの場合、ＩＰポート番号は“０ｐ０ｎ”である。
【００３３】
また、自ＣＰＵ  ｐが通信を行う際に、通信相手側のＣＰＵのＩＰポート番号もデータ内にアドレス情報として設定する必要があるので、ＩＰポート番号作成機能２０４は、通信の可能性があるすべてのＣＰＵ  ｋ（ｋ＝１〜ｎ）側のＩＰポート番号も作成する。自ＣＰＵ  ｐを送信元としてデータを送信し、通信相手の送信先のＣＰＵに受信してもらう場合には、送信先がＣＰＵ１の場合、相手側のＩＰポート番号は“０１０ｐ”であり、送信先がＣＰＵ２の場合、相手側のＩＰポート番号は“０２０ｐ”であり、…、送信先が自ＣＰＵ  ｐの場合、相手側のＩＰポート番号は“０ｐ０ｐ”であり、…、送信先がＣＰＵ  ｎの場合、相手側のＩＰポート番号は“０ｎ０ｐ”である。一方、通信相手の送信元のＣＰＵから自ＣＰＵ  ｐを送信先とするデータを送信する場合も、送信元がＣＰＵ１の場合、相手側のＩＰポート番号は“０１０ｐ”であり、送信元がＣＰＵ２の場合、相手側のＩＰポート番号は“０２０ｐ”であり、…、送信元が自ＣＰＵ  ｐの場合、相手側のＩＰポート番号は“０ｐ０ｐ”であり、…、送信元がＣＰＵ  ｎの場合、相手側のＩＰポート番号は“０ｎ０ｐ”である。
【００３４】
ＣＰＩ  ｐのＩＰポート番号作成機能２０４は、自ＣＰＵ  ｐ側と、自ＣＰＵｐとの間で通信を行う可能性があるすべてのＣＰＵ側との双方に関して作成したＩＰポート番号を、ＩＰポート番号設定テーブル２５４に登録する。ただし、データ通信においては、自ＣＰＵ  ｐ同士つまり送信元、送信先がいずれもＣＰＵ  ｐとなるＩＰポート番号“０ｐ０ｐ”は、わざわざ、ＬＡＮケーブルを介した通信を行う必要がない場合であるので、ＩＰポート番号設定テーブル２５４には「無効」として登録される。
【００３５】
次に、スロット型ＣＰＵ装置１００のＣＰＵ間通信の仕組みつまりＣＰＵ１〜ＣＰＵ  ｎが相互に通信する仕組みについて図５を用いて説明する。図５は、スロット型ＣＰＵ装置１００のＣＰＵ間通信の仕組みを説明するための説明図であり、ＣＰＵ１からＣＰＵ２へ送信データ２５６を送信する場合について例示している。図５（Ａ）は、ＣＰＵの実装個数が４個の場合について、スロット位置Ａ１〜Ａ４に実装されたＣＰＵ１〜ＣＰＵ４それぞれが、図１に示すように、ＬＡＮケーブル１１〜１４およびネットワーク２００（ＳＷ−ＨＵＢ：スイッチングハブ）によりメッシュ型のネットワークを構成していて、いずれのＣＰＵとの間でも通信を行うことが可能である。また、図５（Ａ）には、ＣＰＵ１〜ＣＰＵ４それぞれに割り当てられているＣＰＵ番号、ＩＰアドレス、ＩＰポート番号についても示している。
【００３６】
図５（Ａ）に示すように、例えば、スロット位置Ａ１に実装されたＣＰＵ番号が“１”のＣＰＵの場合、自ＣＰＵ１のＩＰアドレスＢ１は、前述したように、“１０．１．１．１”、ＣＰＵ番号が“２”のＣＰＵの場合、自ＣＰＵ２のＩＰアドレスＢ２は、“１０．１．１．２”、ＣＰＵ番号が“３”のＣＰＵの場合、自ＣＰＵ３のＩＰアドレスＢ３は、“１０．１．１．３”、ＣＰＵ番号が“４”のＣＰＵの場合、自ＣＰＵ４のＩＰアドレスＢ４は、“１０．１．１．４”である。
【００３７】
また、例えば、スロット位置Ａ１に実装されたＣＰＵ番号が“１”のＣＰＵの場合、自ＣＰＵ１のＩＰポート番号は、前述したように、通信相手先のＣＰＵがＣＰＵ２の場合、“０１０２”であり、通信相手先のＣＰＵがＣＰＵ３の場合、“０１０３”であり、通信相手先のＣＰＵがＣＰＵ４の場合、“０１０４”である。同様に、スロット位置Ａ２に実装されたＣＰＵ番号が“２”のＣＰＵの場合、自ＣＰＵ２のＩＰポート番号は、通信相手先のＣＰＵがＣＰＵ１の場合、“０２０１”であり、通信相手先のＣＰＵがＣＰＵ３の場合、“０２０３”であり、通信相手先のＣＰＵがＣＰＵ４の場合、“０２０４”である。
【００３８】
また、図５（Ｂ）には、ＣＰＵ１からＣＰＵ２へ送信される送信データ２５６の先頭に設定すべきアドレス情報の一例を示している。図５（Ｂ）に示すように、送信データ２５６として送信するデータ本体の先頭には、送信先ＩＰアドレス５１１、送信元ＩＰアドレス５１２、送信先ＩＰポート番号５１３、送信元ＩＰポート番号５１４がアドレス情報として付与されるものであり、送信先設定機能２０５によって生成される。
【００３９】
例えば、ＣＰＵ１からＣＰＵ２へ送信する送信データ２５６については、送信先ＩＰアドレス５１１は、送信先であるＣＰＵ２のＩＰアドレスＢ２“１０．１．１．２”であり、送信元ＩＰアドレス５１２は、送信元であるＣＰＵ１のＩＰアドレスＢ１“１０．１．１．１”であり、送信先ＩＰポート番号５１３は、送信先のＣＰＵ２がＣＰＵ１から受信する場合であるので、“０２０１”であり、送信元ＩＰポート番号５１４は、ＣＰＵ１からＣＰＵ２に送信する場合であるので、“０１０２”である。
【００４０】
つまり、送信先設定機能２０５は、送信先のＣＰＵ番号（本実施例では、ＣＰＵ２）に基づいて、図２に示すＩＰアドレス設定テーブル２５２を検索して、ＣＰＵ２に対応する送信先ＩＰアドレス（本実施例では、ＣＰＵ２であるので、ＩＰアドレス＝ネットワークアドレス“１０．１．１．０”＋ホストアドレス“２”＝“１０．１．１．２”）を抽出する。また、送信元の自ＣＰＵ番号（本実施例では、ＣＰＵ１）に基づいて、図２に示すＩＰアドレス設定テーブル２５２を検索して、自ＣＰＵ１に対応する送信元ＩＰアドレス（本実施例では、ＣＰＵ１であるので、ＩＰアドレス＝ネットワークアドレス“１０．１．１．０”＋ホストアドレス“１”＝“１０．１．１．１”）を抽出する。
【００４１】
また、送信先のＣＰＵ番号（本実施例では、ＣＰＵ２）と送信元のＣＰＵ番号（本実施例では、ＣＰＵ１）とに基づいて、ＩＰポート番号設定テーブル２５４を検索して、送信先のＣＰＵ２が用いる送信先ＩＰポート番号（本実施例では、送信先のＣＰＵ２は、ＣＰＵ１から受信するので、（送信先ＣＰＵ番号＋送信元ＣＰＵ番号）＝“０２０１”）を抽出する。また、送信元のＣＰＵ番号（本実施例では、ＣＰＵ１）と送信先のＣＰＵ番号（本実施例では、ＣＰＵ２）とに基づいて、ＩＰポート番号設定テーブル２５４を検索して、送信元の自ＣＰＵ１が用いる送信元ＩＰポート番号（本実施例では、送信元のＣＰＵ１から送信先のＣＰＵ２へ送信するので、（送信元ＣＰＵ番号＋送信先ＣＰＵ番号）＝“０１０２”）を抽出する。
【００４２】
以上の送信先設定機能２０５の動作により、データ本体の先頭に前述のような送信先ＩＰアドレス５１１、送信元ＩＰアドレス５１２、送信先ＩＰポート番号５１３、送信元ＩＰポート番号５１４のアドレス情報を設定した送信データ２５６が作成され、送信機能２０６により、ＬＡＮケーブル１１を介してネットワーク２００へ送信される。
【００４３】
逆に、ＣＰＵ１から送信された送信データ２５６は、ネットワーク２００を経由して各ＣＰＵに配信されてくるが、送信先のＣＰＵ２において該送信データ２５６を受信データ２５７として受信機能２０７にて受信した場合、ＣＰＵ２は、受信先検索機能２０８により、該受信データ２５７のアドレス情報の中から送信先ＩＰアドレス５１１および送信先ＩＰポート番号５１３を抽出する。この結果、受信データ２５７の送信先ＩＰアドレス５１１は、“１０．１．１．２”という自ＣＰＵ２のＩＰアドレスであり、送信先ＩＰポート番号５１３は、送信先を示す自ＣＰＵ２へ送信元を示すＣＰＵ１からの受信用ＩＰポート番号であることを識別する。したがって、ＣＰＵ２の受信先検索機能２０８は、当該受信データ２５７は自ＣＰＵ２が受信すべきデータであるものとして、取り込んで、ＣＰＵ２内において、当該受信データ２５７の処理が適宜実施される。
【００４４】
（本実施形態の効果の説明）
以上に詳細に説明したように、本実施形態のスロット型ＣＰＵ装置１００においては、ネットワーク２００を介してＬＡＮ接続されたＣＰＵ間の通信に必要となる送信先ＩＰアドレス、送信先ＩＰポート番号、送信元ＩＰアドレス、送信元ＩＰポート番号が、すべて、ＣＰＵが実装された箱型ケース１０１のスロット位置Ａｐから自動的に算出されるので、ネットワーク設計およびＩＰアドレス、ＩＰポート番号の通信パラメータの初期設定が不要であり、ＣＰＵ間の通信パラメータの設定が容易で、設定作業の効率が良いネットワーク構築を行うことができる。
【００４５】
なお、前述の実施形態においては、スロット位置設定テーブル２５１、ＩＰアドレス設定テーブル２５２、ＣＰＵ番号設定テーブル２５３、ＩＰポート番号設定テーブル２５４の各テーブルに、自ＣＰＵのみならず他のＣＰＵに関する、スロット位置、ＩＰアドレス、ＣＰＵ番号、ＩＰポート番号もあらかじめ登録する場合について説明したが、場合によっては、スロット位置設定テーブル２５１、ＩＰアドレス設定テーブル２５２、ＣＰＵ番号設定テーブル２５３、ＩＰポート番号設定テーブル２５４の各テーブルには自ＣＰＵに関する情報のみを登録しておき、通信を行う場合に、通信先のＣＰＵに関するＩＰアドレス、ＣＰＵ番号、ＩＰポート番号を算出するようにしても良い。
【００４６】
また、前述の実施形態においては、スロット位置設定テーブル２５１、ＩＰアドレス設定テーブル２５２、ＣＰＵ番号設定テーブル２５３、ＩＰポート番号設定テーブル２５４の各テーブルを、それぞれのＣＰＵ内のメモリに設定する場合について説明したが、本発明はかかる場合のみに限るものではない。例えば、スロット型ＣＰＵ装置として、各ＣＰＵ１〜ＣＰＵ  ｎそれぞれが共通に読み書きを行うことができる共通メモリを備え、各ＣＰＵ１〜ＣＰＵ  ｎと共通メモリとの間をシステムバスを介して接続するように構成しても良い。かかる場合には、スロット位置設定テーブル２５１、ＩＰアドレス設定テーブル２５２、ＣＰＵ番号設定テーブル２５３、ＩＰポート番号設定テーブル２５４の各テーブルを、共通メモリ側に配置するようにし、各ＣＰＵは、自ＣＰＵに関する情報（つまり、自スロット位置Ａｐ、自ＩＰアドレスＢｐ、自ＣＰＵ番号ＣＰＵ  ｐ、自ＩＰポート番号（自ＣＰＵ側のＩＰポート番号）のみを、共通メモリの該当テーブルにそれぞれ登録するようにしても良い。
【００４７】
さらに、共通メモリを備えている場合、スロット位置にＣＰＵが実装されているか否かを示す情報（実装テーブル）を備え、他のＣＰＵへの通信に先立って、該実装テーブルを参照して、通信相手のＣＰＵが実装されているか否かを確認するようにしても良いし、さらには、それぞれのＣＰＵが扱う処理の種類を示す情報を登録するようにしても良い。
【００４８】
なお、実装したスロット位置に対応して、論理的なアドレスを付与する対象装置としては、本発明のスロット型ＣＰＵ装置のように、同じ形式のＣＰＵを対象とする場合のみに限らず、他の装置について適用することも可能であり、例えば、複数の通信装置を並列に備えているような場合に、各通信装置をスロット型の形式として実装し、各通信装置の論理的なアドレスをスロットの実装位置に対応付けて付与するような場合についても、拡張して適用することができる。
【００４９】
以上、本発明の好適実施例の構成を説明した。しかし、斯かる実施例は、本発明の単なる例示に過ぎず、何ら本発明を限定するものではないことに留意されたい。本発明の要旨を逸脱することなく、特定用途に応じて種々の変形変更が可能であることが、当業者には容易に理解できよう。例えば、本発明の実施態様は、課題を解決するための手段における構成（１）に加えて、次のような構成として表現できる。
【００５０】
（２）前記実装スロット位置に基づいて決定するＬＡＮインタフェース用に必要な前記通信パラメータとして、自ＣＰＵのＩＰアドレス、自ＣＰＵのＩＰポート番号を少なくとも含む上記（１）のスロット型ＣＰＵ装置。
（３）前記実装スロット位置を検知する手段として、電源投入時の電源電圧または電源電流の立ち上がり速度を測定することにより、自ＣＰＵの前記実装スロット位置を検知する上記（１）または（２）のスロット型ＣＰＵ装置。
（４）前記実装スロット位置を検知する手段として、各スロット位置ごとに、それぞれのスロット位置を示すハードスイッチを備え、当該ハードスイッチを読み取ることにより、自ＣＰＵの前記実装スロット位置を検知する上記（１）または（２）のスロット型ＣＰＵ装置。
（５）ＬＡＮインタフェースに基づいてＣＰＵ間の通信を行うＬＡＮネットワークが、スイッチングハブを用いたメッシュ型ネットワークからなっている上記（１）ないし（４）のいずれかのスロット型ＣＰＵ装置。
（６）複数のＣＰＵから共通にアクセスすることができる共通メモリを備え、ＣＰＵの前記スロット位置に基づいて、当該ＣＰＵのＬＡＮインタフェース用に必要な前記通信パラメータを決定した際に、決定した当該ＣＰＵのＬＡＮインタフェース用の前記通信パラメータを前記共通メモリに登録する上記（１）ないし（５）のいずれかのスロット型ＣＰＵ装置。
（７）複数のＣＰＵから共通にアクセスすることができる共通メモリを備え、ＣＰＵが前記スロット位置を検知した際に、検知した当該ＣＰＵの前記実装スロット位置を前記共通メモリに登録する上記（１）ないし（５）のいずれかのスロット型ＣＰＵ装置。
【図面の簡単な説明】
【００５１】
【図１】本発明によるスロット型ＣＰＵ装置の装置構成の一例を示す装置構成図である。
【図２】図１のスロット型ＣＰＵ装置を構成する各ＣＰＵ内のブロック構成の一例を説明するブロック構成図である。
【図３】本発明のスロットＣＰＵ装置のスロット位置、ＣＰＵ番号、ＩＰアドレスに対応関係を説明するための説明図である。
【図４】箱型ケースのスロットに実装したＣＰＵ番号とスロット位置との対応関係を模式的に示す模式図である。
【図５】スロット型ＣＰＵ装置のＣＰＵ間通信の仕組みを説明するための説明図である。
【符号の説明】
【００５２】
１〜ｎ            ＣＰＵ
１１〜１ｎ        ＬＡＮケーブル
２１〜２ｎ        ネットワークコネクタ
１００            スロット型ＣＰＵ装置
１０１            箱型ケース
２００            ネットワーク（ＳＷ−ＨＵＢ）
２０１            スロット位置検索機能
２０２            ＩＰアドレス作成機能
２０３            ＣＰＵ番号作成機能
２０４            ＩＰポート番号作成機能
２０５            送信先設定機能
２０６            送信機能
２０７            受信機能
２０８            受信先検索機能
２５１            スロット位置設定テーブル
２５２            ＩＰアドレス設定テーブル
２５３            ＣＰＵ番号設定テーブル
２５４            ＩＰポート番号設定テーブル
２５６            送信データ
２５７            受信データ
３００            電源ユニット
３０１            電源バス
５１１            送信先ＩＰアドレス
５１２            送信元ＩＰアドレス
５１３            送信先ＩＰポート番号
５１４            送信元ＩＰポート番号
【図１】
0005309688.tif 000002
【図２】
0005309688.tif 000003
【図３】
0005309688.tif 000004
【図４】
0005309688.tif 000005
【図５】
0005309688.tif 000006