(57)【要約】【課題】本発明の目的は、大容量のATM交換機を制御する複数のプロッセサ  間通信の輻輳を抑制することである。  【解決手段】本発明では、それぞれ周期的なデータ送信が許容された第１のプロセッサ、第２のプロセッサを含むプロセッサ群と、該第１のプロセッサ、該第２のプロセッサから共通の伝送路を介してデータを受信する他のプロセッサとを備えたマルチプロッセッサシステムにおいて、該第１のプロセッサについてデータ送信が許容された周期の第１の位相と、該第２のプロセッサについてデータ送信が許容された周期の第２の位相との差を所定時間以上に制御する位相制御部を備えたことを特徴とするマルチプロッセッサシステムを用いる。 【選択図】  図４
2006270628.tif 000002
【特許請求の範囲】
【請求項１】
それぞれ周期的なデータ送信が許容された第１のプロセッサ、第２のプロセッサを含むプロセッサ群と、該第１のプロセッサ、該第２のプロセッサから共通の伝送路を介してデータを受信する他のプロセッサとを備えたマルチプロッセッサシステムにおいて、
該第１のプロセッサについてデータ送信が許容された周期の第１の位相と、該第２のプロセッサについてデータ送信が許容された周期の第２の位相との差を所定時間以上に制御する位相制御部を備えたことを特徴とするマルチプロッセッサシステム。
【請求項２】
前記所定時間は、前記周期を前記プロセッサ群に含まれるプロセッサの数で均等に分割して得られる時間に設定することを特徴とした請求項１記載のマルチプロセッサシステム。
【請求項３】
前記プロセッサー群に含まれるプロセッサ数に変更があった際に、前記所定時間を前記周期を該変更後のプロセッサ数で均等に分割して得られる時間として、前記制御を再び実行する、ことを特徴とした請求項１記載のマルチプロセッサシステム。
【請求項４】
プロセッサ間通信のトラフィック量を監視するトラッフィク監視部を備え、
前記位相制御部は、前記第１プロセッサと前記他のプロセッサとの間のトラフィック量が前記第２プロセッサと前記他のプロセッサとの間のトラフィック量より少ないほど前記所定時間が短かくなるように設定し、トラフィック量がより多いほど前記所定時間が長くなるように設定する
ことを特徴とした請求項１記載のマルチプロセッサシステム。
【請求項５】
前記プロセッサ群に含まれる少なくとも1つのプロセッサの、前記周期内におけるデータの送信時間長が、前記周期を前記プロセッサ群に含まれるプロセッサ数で等分した時間長より長くなった場合は、前記所定時間を前記周期を前記プロセッサ群に含まれるプロセッサの数で均等に分割して得られる時間に設定する第１の動作モードから、前記第１プロセッサと前記他のプロセッサとの間のトラフィック量が前記第２プロセッサと前記他のプロセッサとの間のトラフィック量より少ないほど前記所定時間が短かくなるように設定し、
トラフィック量がより多いほど前記所定時間が長くなるように設定する第2の動作モードに切り替える
ことを特徴とする、請求項１記載のマルチプロセッサシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プロセッサ間で通信を行うマルチプロセッサシステムに関し、特に、ATM交換機内の制御用に用いて好適なマルチプロセッサシステムに関する。
【背景技術】
【０００２】
電話通信における音声や、インターネットにおけるデータ、画像など、多様で高速なマルチメディア情報を、高速で多方面に伝送するため、ATMシステムが実用化された。このシステムではATM交換機が使われ、各端末からのATM信号の受付、パスおよびチャンネルのスイッチング、トラッフィク管理等を行う（非特許文献１参照）。これらATM交換機動作の制御は、交換機の一部であるプロセッサで行う。しかしながら、音声などの低速通信に比べ、動画像などの高速通信が増加してくると、１台のプロセッサの能力では処理できなくなり、複数の制御用プロセッサにより、作業負荷を分担して交換機制御を行うようになってきている。
【０００３】
第３世代の携帯電話におけるマルチメディア通信システムである、IMT-2000システムのマルチメディア交換機MMS（Mobile Multimedia Switching system)では、ATM交換機の制御を複数のプロセッサで行い、交換機制御の負荷を分担している（非特許文献２参照）。
【０００４】
また、これら複数のプロセッサ間では、主信号（ユーザ端末の通信データ）に対する交換や信号処理を行う為、互いの通信が必要である。このプロセッサー間通信の接続を効率よく行うため、プロセッサ間にＡＴＭスイッチ（制御系ＡＴＭスイッチ）を備える方法がとられている。多数の複数プロセッサ間の通信を限られた少数の線路で接続し、各プロセッサー間の通信データのルーティングを、上記制御用ATMスイッチで効率用良く行っている。
【０００５】
図１は、ATM交換機構成の一例を示すブロック図である。
図において、１０１はATM交換機全体を示し、１０２はATMスイッチを示し、端末からの信号をルーティングするので１０２を、主信号系SW(スイッチ)と呼ぶ事とする。
【０００６】
１０６、１０７、１０８は、主信号系SW１０２を制御するプロセッサを示し、それぞれ主信号系SW１０２と接続されている。
【０００７】
１０３、１０４、１０５は、プロセッサ間通信をルーチングするATMスイッチを示し、それぞれプロセッサ１０６、１０７、１０８と接続されており、制御系SWと呼ぶ事とする。
【０００８】
主信号系SW１０２は、主信号を目的の相手にルーティングするが、大量のユーザ信号のルーティングを効率よく制御するため、複数のプロセッサ１０６、１０７、１０８と接続されており、ルーティング作業の負荷を分担して動作する。図における合計９台のプロセッサは、必要なデータを交換しながら制御動作を行うため、互いにプロセッサ間通信を行う。このとき、９台のプロセッサを直接接続して通信すると、１台のプロセッサからは、残りのプロセッサー８台に対し、最低８本で接続する必要がある。また、各プロセッサ内で、行き先毎の信号を、対応する線にスイッチして接続する必要がある。この煩雑さを解決するため、プロセッサ間通信をルーティングする制御系SW（図１の例では、１０３、１０４、１０５の３台）を用いる。プロセッサ１０６１は、制御系SW１０３により他のプロセッサ１０６２、１０６３とスイッチ接続され、さらに制御系SW１０３、１０４および１０５により、他の制御系SW内のプロセッサ１０７１、１０７２、１０７３および、１０８１、１０８２、１０８３にルーティングされ、プロセッサ間の通信を行う。
【０００９】
以上の説明の様に、プロセッサ間通信は、制御系SWによりルーティングされるので、制御系SW間を接続する物理的線路数は、制御系のプロセッサ数より少なくて済み、プロセッサ間を直接接続するより、はるかに簡単な接続となる。
【００１０】
また、図１では、制御系SWの間を接続する線路数は１本であるが、これを複数本（例えば３本）にすることもある。この目的は、通信する相手プロセッサのグループを複数（例えば３グループ）に分けて、接続線路１本あたりのトラフック量を軽減し（接続線路１本に比べ、３本の場合は平均的に１/３になる）、同一時間に一本の線路にセルデータが輻輳すること抑制することにある。
【００１１】
このように、ATM交換機内における、複数の制御系プロセッサ間の通信は、制御系ATMスイッチを介して行われ、単純な接続により複数プロセサ間の通信が行われる。
【００１２】
ATM交換機内では、制御系SWの間を接続する物理的線路数は、プロセッサ数より少なくするので、プロセッサ間通信のトラフィック量が規定値を超えた場合、超えたセルデータは廃棄されるか、バッファに一時蓄積し、遅れた時間に挿入して送信される（特許文献１参照）。
【非特許文献１】富永英義、石川宏（監修）”標準ATM教科書“、株式会社アス                キー出版、pp.19-58、 1995年９月１１日.
【非特許文献２】“浅岡、高村、大崎：ネットワークノード、雑誌  富士通 2000-1  特集：IMT-2000”、pp.36-40、２０００年１月３１日発行
【特許文献１】特開平０４−３３６８３１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
例えばある地区で、大きなイベントが開催された時や、予期しなかった災害時などでは、トラフィックが大量となり、かつ集中するので、主信号系SWを制御するプロセッサ間の通信量も増大する。この時、制御系SW間に大量の制御系のセルデータが流れ、制御系ＡＴＭスイッチ間の規定されたトラフィック量を越えることが起きる。
【００１４】
この状況を、図２により説明する。
図２−１の、A1、A2はプロセッサ1061の送信セルデータ、B1はプロセッサ106２の送信セルデータ、C1はプロセッサ1061の送信セルデータを示し、それぞれのプロセッサが位相調整を行う前の位相である初期位相（０、τ２、τ３）により、送信するデータの例を示す。
【００１５】
図２−２のA1、A2、B1、C1は、上記(A)のセルデータを制御系SW103により共通の伝送路に配置した結果を示す。
【００１６】
図２−３は、図２(A)とは異なる状態の例（例えば先に説明したトラフィック量が増大した場合の例）であり、A1、A2、A3はプロセッサ１０６１の送信セルデータ、B1はプロセッサ１０６２の送信セルデータ、C1、C2はプロセッサ１０６３の送信セルデータを示し、それぞれのプロセッサが位相調整を行う前の位相（０、τ２、τ３）により、送信するデータの例を示す。
【００１７】
図２−４のA1、A2、A3、B1、C1、C2は、上記(C)のセルデータを制御系SW103により共通の伝送路に配置した結果を示す。
【００１８】
図２−１の場合は、各プロセッサのデータ量が少なく、且つまた、データの送信が始まる位相が、偶然、基本周期T内にほぼ均等に広がっており、制御系SW１０３により、各プロセッサからのデータを、到着順に並べ出力すると、１０３の出力は図２−２に示す様に、データ周期T内にほぼ均等に配置され、データの輻輳は起こらない。
【００１９】
しかしながら、図２−３の場合は、各プロセッサのデータ量が増加し、且つまた、各プロセッサー出力のデータの送信が始まる位相が、基本周期T内の一部に集中しており、制御系SW１０３は、プロセッサからのデータを、到着順に並べ出力すると、１０３の出力は、図２−４に示すデータ配置となり、データ周期T内でセルA2とセルB1、C1および、セルA3とセルC1、C2が輻輳する。
【００２０】
ＳＷ１０３の出力のデータの輻輳が許容規定値を超えてしまうと、セル破棄が発生し、ＡＴＭ交換機としての処理速度が遅くなってしまう。
【００２１】
また、プロセッサが出力するデータの周期Tは、ATM交換機内で、一つのマスタークロックオシレータにより制御されて、完全に同期しているが、プロセッサの電源投入のタイミングは一致していないので、図２−１、図２−３のように、プロセッサ１０６１の位相に対し、プロセッサ１０６２はτ2、プロセッサ１０６３はτ3の位相遅れが生じるが、これら各プロセッサの出力セルデータの位相遅れは、プロセッサの電源を入れて、動作を開始したタイミングで決まる事により、特定の値には設定できない。従って、電源投入のタイミングによっては、セルデータの輻輳が発生しやすくなり、図２−４の状態が多発することとなる。
【００２２】
従って、本発明の目的の１つは、プロセッサ間通信の共通の伝送路における輻輳の発生を抑制することである。
【００２３】
尚、上記目的に限らず、後述する発明を実施するための最良の形態に示す各構成により導かれる効果であって、従来の技術によっては得られない効果を奏することも本発明の他の目的の１つとして位置付けることができる。
【課題を解決するための手段】
【００２４】
（１）本発明では、それぞれ周期的なデータ送信が許容された第１のプロセッサ、第２のプロセッサを含むプロセッサ群と、該第１のプロセッサ、該第２のプロセッサから共通の伝送路を介してデータを受信する他のプロセッサとを備えたマルチプロッセッサシステムにおいて、該第１のプロセッサについてデータ送信が許容された周期の第１の位相と、該第２のプロセッサについてデータ送信が許容された周期の第２の位相との差を所定時間以上に制御する位相制御部を備えたことを特徴とするマルチプロッセッサシステムを用いる。
【００２５】
好ましくは、前記位相制御部は、前記第１のプロセッサに設けられ、かつ、前記第２のプロセッサからの信号に基づいて、前記第１の位相と前記第２の位相との位相差を検出する位相検出部と、検出した該位相差を前記所定時間以上にするのに必要とされる位相制御量を算出して前記第２のプロセッサに指示する位相指示信号を生成する位相指示部とを含む、ことを特徴とする請求項１記載のマルチプロセッサシステムを用いる。
【００２６】
好ましくは、前記所定時間は、前記周期以下としたことを特徴とする請求項１記載のマルチプロッセッサシステムを用いる。
【００２７】
好ましくは、前記第１および第２のプロセッサは、共通の一つの発振器からのクロック信号により、データ送信の周期を制御されることにより、データ送信の周期が同一であることを特徴とする請求項１記載のマルチプロセッサシステムを用いる。
（２）また、前記所定時間は、前記周期を前記プロセッサ群に含まれるプロセッサの数で均等に分割して得られる時間に設定することを特徴とした請求項１記載のマルチプロセッサシステムを用いる。
（３）また、前記プロセッサー群に含まれるプロセッサ数に変更があった際に、前記所定時間を前記周期を該変更後のプロセッサ数で均等に分割して得られる時間として、前記制御を再び実行する、ことを特徴とした請求項１記載のマルチプロセッサシステムを用いる。
（４）また、プロセッサ間通信のトラフィック量を監視するトラッフィク監視部を備え、前記位相制御部は、前記第１プロセッサと前記他のプロセッサとの間のトラフィック量が前記第２プロセッサと前記他のプロセッサとの間のトラフィック量より少ないほど前記所定時間が短かくなるように設定し、トラフィック量がより多いほど前記所定時間が長くなるように設定することを特徴とした請求項１記載のマルチプロセッサシステム。
（５）また、前記プロセッサ群に含まれる少なくとも1つのプロセッサの、前記周期内におけるデータの送信時間長が、前記周期を前記プロセッサ群に含まれるプロセッサ数で等分した時間長より長くなった場合は、前記所定時間を前記周期を前記プロセッサ群に含まれるプロセッサの数で均等に分割して得られる時間に設定する第１の動作モードから、前記第１プロセッサと前記他のプロセッサとの間のトラフィック量が前記第２プロセッサと前記他のプロセッサとの間のトラフィック量より少ないほど前記所定時間が短かくなるように設定し、トラフィック量がより多いほど前記所定時間が長くなるように設定する第2の動作モードに切り替えることを特徴とする、請求項１記載のマルチプロセッサシステムを用いる。
【００２８】
好ましくは、前記マルチプロッセッサは、ＡＴＭ交換機における主信号系スイッチの制御を分担して行う、ことを特徴とする請求項１記載のマルチプロセッサシステムを用いる。
【発明の効果】
【００２９】
本発明によれば、プロセッサー間通信における輻輳の発生を抑制することが出来る。  
【発明を実施するための最良の形態】
【００３０】
以下、図面を参照することにより、本発明の実施の形態について説明する。
【実施例１】
【００３１】
この実施例においては、各プロッセサの出力タイミングを調整する機能（位相制御部）を設けることとする。
【００３２】
即ち、それぞれ周期的なデータ送信が許容された第１のプロセッサ、第２のプロセッサを含むプロセッサ群と、第１のプロセッサ、第２のプロセッサから共通の伝送路を介してデータを受信する他のプロセッサとを備えたマルチプロセッサシステムにおいて、第１のプロセッサについてデータ送信が許容された周期の第１の位相と、第２のプロセッサについてデータ送信が許容された周期の第２の相との差を所定時間以上に制御する位相制御部を備えることで、共通の伝送路におけるデータの輻輳を抑制するのである。
【００３３】
図３を用いて、本第１実施形態による、マルチプロセッサシステムの構成及び動作について説明する。
・「マルチプロセッサシステムの構成」
尚、この実施例１では、ＡＴＭ交換機における主信号系スイッチの制御を行うためのマルチプロセッサッシステムをマルチプロセッサシステムの１例として示す。尚、図３は、図１における制御系の一部であるプロセッサ群（１０６１〜１０６３）と制御系スイッチ１０３の詳細な構成を示している。もちろん、他の装置におけるマルチプロセッサについても適用可能である。
【００３４】
図３において、図１と同じものは、同一の番号を付してある。
図において、２０１１〜２０１３は、主信号系ＳＷ１０２を制御するための主信号系ＳＷ制御部を示し、それぞれ主信号系ＳＷ１０２と接続されている。
【００３５】
２０５１〜２０５３は、他のプロセッサとの間で通信を行うためのプロセッサ間通信部を示し、それぞれ制御系ＳＷ１０３と接続されている。尚、各プロセッサは、ＳＷ１０３を介して他のプロセッサとの間でデータの送受信が可能である。
【００３６】
２０２、２０３、２０４は、それぞれ、位相検出部、位相決定部、位相指示部であり、各プロセッサのデータ出力位相を制御するための、位相制御部として機能する。
【００３７】
２０６は２０４からの指示を受信する指示位相受信部、２０７は受信した指示位相により自身のデータ位相を調整する位相調整部を示す。
【００３８】
図のように、制御系ＳＷ１０３に接続されたプロセッサ群（１０６１〜１０６３）のうち少なくとも１つのプロセッサ（この例では、１０６１）は、他のプロセッサの出力タイミングの位相を制御するための機能（２０２〜２０４）を有する主プロセッサとする。また、出力タイミングを制御されるプロセッサ（この例では、１０６２、１０６３）を従プロセッサと称することとする。
【００３９】
尚、位相を制御するための機能をプロセッサの外部に設けることもできる。
【００４０】
２０８は、マスタークロック発信器であり、ATM交換機内のすべてのプロセッサと制御用SWに接続され、各部に同期したデータ周期Tを与える。
【００４１】
次に、このマルチプロセッサシステムの動作について説明する
・「マルチプロセッサシステムの動作」
図３の各装置の電源が投入され、各装置がリセットされＯＮの状態となると、事前に制御系SW１０３および、主プロセッサ１０６１に設定したプロセッサ台数の情報を使い、主プロセッサ１０６１は、従プロセッサ１０６２、１０６３に対しデータ（初期セルデータとする）の送信を、順番に要求する。この要求信号を受信した１０６２、１０６３は、それぞれ、未だ位相調整していない位相（初期位相と称することとする）で、初期セルデータを１０６１に送信する。尚、要求信号を省略して、従プロセッサが電源投入後に自律的に初期セルデータを主プロセッサに送信してもよい。尚、その際、主プロセッサは後述する位相制御を初期セルデータを受信した順で行うことが望ましい。
【００４２】
１０６１自身の初期位相は、以降のセルデータの位相の基準とする。１０６１は、位相検出部２０２において、１０６１自身のセルデータの初期位相を基準として、プロセッサ１０６２の初期位相をτ2、プロセッサ１０６３の初期位相をτ3として検出する。各プロセッサの初期位相は、電源投入後、一度検出すれば、各プロセッサが完全に同期した周期で動作しているので、時間的に一定であり変化することは無い。  
【００４３】
上記各プロセッサの、初期セルデータの時間関係を、図２−１に示す。
図２−２は、プロセッサ１０６１、１０６２、１０６３の初期位相によるセルデータの時間配置を示し、１０６２および１０６３のセルデータは、１０６１のセルデータに対し
それぞれ、τ２、τ３遅れていることが示されている。
【００４４】
次に、該位相決定部２０３における位相変化値（位相制御量）の計算方法を、図４を用いて説明する。
【００４５】
主プロセッサは、各プロセッサからのデータの送信を許容する周期を所定時間以上とするが、所定時間として好ましくは、基本データの送信が許容された基本周期Ｔをプロセッサ数（この場合は３つ）で均等に分割された時間を採用する。尚、主プロセッサは、プロセッサ数を認識（記憶）しているものとする。
【００４６】
従って、主プロセッサは、周期Ｔをプロセッサ群に含まれるプロセッサ数で割って得られる時間Ｔ／３を求める。  
【００４７】
該位相決定部２０３において、プロセッサ１０６１のセルデータに対しては、１０６１のデータ周期０の位置に配置するため、１０６１の第１の位相に対する位相変化は０と計算し、プロセッサ１０６２に対しては、該プロセッサ１０６２の第１の位相τ2に対する位相変化値は（Ｔ／３−τ２）遅らせると計算し、プロセッサ１０６３に対しては、該プロセッサー１０６３の第１の位相に対する位相変化値は（２Ｔ／３−τ３）遅らせると計算する。該２０３で計算された位相変化値は、図３の位相指示部２０４により、各プロセッサに対し指示される。
【００４８】
各プロセッサに位相変化の指示が送られると、主プロセッサ１０６１自身は０であるので、位相調整部は初期位相に、出力データのタイミングを保持する。プロセッサ１０６２では、指示位相受信部２０６２で受信し、位相調整部２０７２ において、初期位相に対し、（Ｔ／３−τ２）遅らせたタイミングに自己の出力データの位相タイミングを調整する。またプロセッサー１０６３では、指示位相受信部２０６３で受信し、位相調整部2073 にて、初期位相に対し、（２Ｔ／３−τ３）遅らせたタイミングに自己の出力データの位相タイミングを調整する。
【００４９】
次に、図４に位相変化の調整結果の例を示す。
図４−１の、A1、A2、A3はプロセッサ１０６１の送信セルデータ、B1はプロセッサ１０６２の送信セルデータ、C1、C2はプロセッサ１０６３の送信セルデータを示し、それぞれのプロセッサが位相調整を行なった後の位相により、送信するデータの例を示す。
【００５０】
図４−２のA1、A2、A3、B1、C1、C2は、上記図４−１のセルデータを制御系SW103により共通の伝送路に配置した結果を示す。
【００５１】
図４−１に示したように、プロセッサ１０６１、１０６２、１０６３が他のプロセッサ（例えばプロセッサ１０７１）に向けてデータ送信が許容される周期内の位相は、それぞれ位相調整後の位相となり、送信のデータ周期Tの1/3だけ位相差（この実施例の場合、所定時間として周期をプロセッサ数で分割した時間を選択しているため１／３の位相差としている）が生じ、分散されることで輻輳されることとなる。
【００５２】
この位相変化の結果、制御系スイッチ１０３は、各プロセッサから送られてくるセルデータを、セルデータの到着順に配置するだけで、図４−２に示す様に、各プロセッサからの出力データ量が増えた場合でも、各プロセッサから同時にセルデータが出力される可能性が位相未調整の場合に対して低減され、共通の伝送路（SW１０３から１０４へのパス）における輻輳が抑制される。
【００５３】
以上は、制御用スイッチ１０３に属するプロセッサ数が３個の場合について説明したが、このプロセッサ数は、例えば１０個とか、他の任意の数Npが選ばれても、同様に動作し、１０個の場合は、図４に於いて、各プロセッサーに等間隔に配分される時間は、T/10になる。
【００５４】
より一般的には、Np個のプロセッサがある場合、n番目のプロセッサへの位相変化の指示量ΔTnは、下式（１）に示す。
【００５５】
【数１】
2006270628.tif 000003
【００５６】
【数２】
2006270628.tif 000004
【００５７】
τｎは、ｎ番目のプロセッサの初期位相を示す。
ここで、（１）式による位相変化の指示量ΔTnが、プロセッサが調整可能な最小ステップの整数倍でない場合は、（１）式に一番近い位相変化ステップ値を使うこともできる。
【００５８】
また、例えば、大きな災害や事故が発生して、トラフィックが通常時より増加したり、特定地区に集中した場合などでは、負荷を分担するため、上記のプロセッサ数を変えることがある。
・「プロセッサ数の変動の検出および位相調整方法」
例えば、上記の３台のプロセッサを、５台に増加させる場合のシーケンスは以下の２つの方法がある。
【００５９】
第１の方法は、主として手動により行う方法である。
まず５台のプロセッサの電源を入れ、各装置がリセットされONの状態になると、プロセッサを５台とするコマンド（好ましくは、従プロセッサの識別情報も入力して主プロセッサに通知する）を、主プロセッサ１０６１に手動で入力する。このコマンドにより、主プロセッサ１０６１は、（好ましくは識別情報に基づいて）従のプロセッサ４台に対しデータ（初期セルデータ）の送信を要求する。この要求信号を受信した４台の従のプロセッサは、それぞれ、未だ位相調整していない位相（初期位相）で、初期セルデータを１０６１に送信する。１０６１は位相検知部２０２において、４台のプロセッサの各々の第１の位相を検知し、位相決定部２０３にて、各プロセッサへの割り当て時間のステップを、T/3からT/5に変更し、５台のプロセッサへの位相変化値を再計算し、位相指示部２０４から新しい位相変化値を各プロセッサに指示し、各プロセッサは、位相変化値を指示位相受信部２０６で受信し、位相調整部２０７により、セルデータの出力のタイミング位相を調整する。
【００６０】
第２の方法は、動作時は主として自動的に行う方法である。
具体的には、まず事前に手動にて、接続するプロセッサの最大数を、主プロセッサおよび制御系SWに登録し、ATM交換機内に接続ポート等のハードを設定、仮想チャンネルや仮想パス等のソフトの設定をしておき、プロセッサ数変更の時は、新たなプロセッサ数の計測を含めた動作の実行を、自動的に行う方法である。
【００６１】
今、事前登録したプロセッサの最大収容数を１０台とし、動作中のプロセッサを３台とし、これに２台を追加して、合計５台で動作させる場合の例を説明する。
【００６２】
追加する２台のプロセッサの電源を入れ、リセットしてONの状態にすると、まず、プロセッサ数変更は、主プロセッサに対し、プロセッサ数変更（台数は不要）のコマンドを、手動で入力したトリガにより開始する。このコマンドを受けた主プロセッサは、新たなプロセッサ数計測のため、主プロセッサを除いた、残りのプロセッサ９台（接続されていないプロセッサも含む）に対し、定められたデータ周期のタイミング間隔で1個毎のプロセッサに順次、データ（初期セルデータ）の送信を要求する。この要求信号を受信した従プロセッサは、順次未だ位相調整していない位相（初期位相とする）で、初期セルデータを１０６１に送信する。この場合、１０６１では、従のプロセッサ９台のうち、実際に接続された４台のプロセッサからのみ初期セルデータを受信する。従プロセッサが初期セルデータを送信するタイミング位相は、主プロセッサからの要求信号を受信した後のデータ周期のタイミングで順次行うので、主プロプロセッサが受信する時の輻輳は起こさない。
【００６３】
１０６１では、受信したセルデータのヘッダ情報から、どのプロセッサから返事があったかが識別でき、プロセッサの総数を４と計測できる。この初期セルデータの返事があったプロセッサの総数に１を加えた値の５が、新たなプロセッサの総数となる。新たに加わった２台のプロセッサの初期位相は、主プロセッサ１０６１内の位相検出部２０２で検出し、該プロセッサの総数５の情報とを含めて、各プロセッサに指示する位相変化値が２０３で計算され、以下の動作は、前記第1の方法の場合と同様にして、各プロセッサの位相のタイミングが調整される。
【００６４】
上記による各プロセッサの位相調整の結果は、図４−２に示す様に、各プロセサからのセルデータが、T/5ごとに均等に配置され、セルデータの輻輳が抑制される。
【００６５】
また、図４では、T/5の時間内には、セルは数個しか入らない様に見えるが、これは説明を簡略化するための時間スケールであって、実際の時間スケールの例としては、基本周期T=8msecであり、１セルの時間長=53μsecであり、この場合データ周期T内に、最大150個のセルが収容でき、1個のプロセッサへの割り当て区間T/5内に、最大30個のセルが収容できる。
【００６６】
また、以上は図１の第１実施形態において、制御用スイッチ103とこれに属するプロセッサ１０６１、１０６２、１０６３について述べたが、他の制御系スイッチ１０４および、制御系スイッチ１０５と、それぞれに属するプロセッサー１０７１、１０７２、１０７３および、１０８１、１０８２、１０８３についても、上記と同様に動作する。
【実施例２】
【００６７】
この実施例においては、各プロセッサに許容されたセルデータの所定時間を、プロセッサが出力するトラフィック量に対応して、前記所定時間を調整することとする。
【００６８】
図５と、図６により、本発明を説明する。
図５は、本発明の実施例２であるATM交換機の主要部の構成例を示すブロック図である。
図５において、図３と同じものは同一の番号を付してある。図５の３０１１、３０１２、３０１３は、プロセッサ１０６１、１０６２、１０６３のそれぞれのトラフック量の監視部を示す。
【００６９】
図６−１の、A1、A2、A3、A4、A5は、プロセッサ１０６１が第１の位相にて出力したセルデータ、B1は、プロセッサ１０６２が第１の位相にて出力したセルデータ、C1、C2は、プロセッサ１０６３が第１の位相にて出力したセルデータを示す。
図６−１に示す様に、各プロセッサのセルデータの、始まりのタイミングの位相がずれていると同時に、基本周期T内のセル数が、プロセッサによりかなり異なっている。データ周期T内のセルデータは、プロセッサ１０６１は５個、プロセッサ１０６２は1個、プロセッサ１０６３は2個である。
【００７０】
図６−２は、図６−１に示した３台のプロセッサからのセルデータを、第１の実施形態の方法により、T/３ごとに等間隔で配置した状態を示す。
【００７１】
この時、図６−２に示す様に、プロセッサ１０６１のセルデータの一部であるA4、A5が、プロセッサ１０６２の割り当て時間内に入り込み、B1と輻輳する。一方、プロセッサ１０６２の割り当て時間には、セルデータは少なく空きの時間が多い。どれかのプロセッサのデータが通常より増加した時、この状態が起こる。本発明の第２実施形態は、このように、プロセッサ間でトラフィックがアンバランスの場合を考慮するものである。
【００７２】
図５に示した、各プロセッサのトラフィック監視部３０１１、３０１２、３０１３は、自己のプロセッサのセル数（例えば、複数周期内におけるセル数の平均値）を監視しており、その情報を、主とプロセッサ１０６１へ送信する。プロセッサ１０６１は、自己のセル数と他の全プロセッサからのセル数とを用いて、位相決定部２０３において、各プロセッサーへの時間割り当てとして、セル数（トラフィック）に比例した時間長を計算する。そして、位相検出部２０２により検出した、各プロセッサーの初期位相の情報を含めて、各プロセッサーへの位相変化値を、位相指示部２０４から従のプロセッサに指示する。
【００７３】
各プロセッサに位相変化の指示が送られると、各プロセッサは指示位相受信部２０６にて、変化位相値を受信し、位相調整部２０７にて、出力セルデータの位相タイミングを調整する。
【００７４】
図６−３に本発明の実施例２による、セルデータの配置結果を示す。
図６−３において、A1〜A5、B1、C1、C2は、各プロセッサが本第２の実施形態により位相調整した結果のセルデータを、ＳＷ１０３により並べた配置を示す。
【００７５】
図６−３に示す様に、プロセッサ１０６１のデータには、5T/8の時間長が割り当てられ、プロセッサ１０６２のデータには、T/8の時間長が割り当てられ、プロセッサ１０６３のデータには、2T/8の時間長が割り当てられている。
【００７６】
プロセッサー１０６２、 プロセッサー１０６３に対する位相変更の指示量は、図６−１と、図６−３における、各プロセッサのセルデータの開始タイミングの時間差であり、プロセッサー１０６２に対しては、(5T/8−τ2)であり、プロセッサ１０６３に対しては、(6T/8−τ3)である。
【００７７】
上記の位相変化の指示値を各プロセッサが受信し、位相調整を行うと、図６−３に示す様に、各プロセッサのトラフック量すなわち、データ周期T内のセルデータ数に比例して配分され、均等配分した結果の図６−１のような輻輳は、抑制されることが分かる。
【００７８】
なお、本説明では、制御用スイッチ１０３に属するプロセッサ数が３個の場合について説明したが、このプロセッサ数は、例えば１０個とか、他の任意の数Npが選ばれても、同様に割り当てでき、n番目のプロセッサに配分される時間Tnは、
【００７９】
【数３】
2006270628.tif 000005
【００８０】
（３）式でｎ＝１、２、３、…、Ｎｐ  となる。
【００８１】
また、Ｔｎは番目のプロセッサの割り当て時間長、Ｔは基本周期、ＮＴはプロセッサ全部のＴ内のセルの合計数、Ｎｎは注目するプロセッサのＴ内のセル数を示す。
【００８２】
図６の例の場合に当てはめると、プロセッサー１０６１  の割り当て時間長Ｔ１は、
【００８３】
【数４】
2006270628.tif 000006
【００８４】
プロセッサー１０６２  の割り当て時間長Ｔ２は、
【００８５】
【数５】
2006270628.tif 000007
【００８６】
プロセッサー１０６３  の割り当て時間長Ｔ３は、
【００８７】
【数６】
2006270628.tif 000008
【００８８】
となる。
また、n番目のプロセッサーに指示される、位相変化値ΔTnは、
【００８９】
【数７】
2006270628.tif 000009
【００９０】
となる。
ただし、τnはn番目のプロセッサの初期位相で、
主プロセッサのセルデータを基準とした値
式（７）の一般式を、図６の場合に当てはめると、
プロセッサー１０６２  に対する位相変化量ΔT2は、
ΔT2=T1-τ2となり、この T1に（４）式を代入すれば、
【００９１】
【数８】
2006270628.tif 000010
【００９２】
プロセッサー１０６３  に対する位相変化量ΔT3は、
ΔT3=T1 + T2 -τ3となり、この T1に（４）式、T2に（５）式を代入すれば、
【００９３】
【数９】
2006270628.tif 000011
【００９４】
となる。
ここで、（７）式による位相変化の指示量ΔTnが、プロセッサが調整可能な最小ステップの整数倍でない場合は、（１）式に一番近い位相変化ステップ値を使うことが望ましい。
【００９５】
また、例えば、大きな災害や事故が発生して、トラフィックが通常時より増加したり、特定地区に集中した場合などでは、負荷を分担するため、上記プロセッサ数を変えることがある。
・「プロセッサ数の変動の検出および位相調整方法」
例えば、上記の３台のプロセッサを、５台に増加させる場合のシーケンスは、実施例１と同様であるが、以下では、前記実施例1における第1の方法による、主として手動による方法を、本実施例２に適用した場合について説明する。
【００９６】
まず５台のプロセッサの電源を入れ、各装置がリセットされONの状態になると、プロセッサを５台とするコマンドを、主プロセッサ１０６１に手動で入力する。このコマンドにより、主プロセッサ１０６１は、従のプロセッサ４台に対しデータ（初期セルデータ）の送信を要求する。
【００９７】
この要求信号を受信した４台の従のプロセッサは、それぞれ、未だ位相調整していない位相（初期位相）で、初期セルデータを１０６１に送信する。１０６１は位相検知部２０２において、４台のプロセッサの各々の初期位相を検知し、位相決定部２０３にて、各プロセッサーへの位相変化量を、(７)式により計算し、位相指示部２０４から、新しい位相変化値を各プロセッサーに指示する。各プロセッサは指示位相受信部２０６にて、変化位相値を受信し、位相調整部２０７にて、出力セルデータの位相タイミングを調整する。
【００９８】
この時、共通の伝送路である制御系SWの出力は、図６−３に示す様に、各プロセッサのトラフィック量を反映して配置され、セルデータの輻輳は抑制される。
【００９９】
プロセッサ数変更に関する第２の方法は、前記実施例１と同様に、事前にプロセッサ数の登録と設定を行い、動作時は主として自動的に行う方法であって、該実施例１と同様にして行うことが出来る。
【０１００】
また以上は、図１の本発明によるATM交換機の実施例２において、制御用スイッチ１０３とこれに属するプロセッサーについて述べたが、他の制御用スイッチ１０４および、制御用スイッチ１０５と、それぞれに属するプロセッサ１０７１、１０７２、１０７３および、１０８１、１０８２、１０８３についても同様に動作する。
【０１０１】
本実施例２では、各プロセッサのトラフィック量に応じて、各プロセッサへ許容される所用時間が調整されるので、トラフィックの増減に効率的に対応することが出来る。
【実施例３】
【０１０２】
この実施例においては、各プロセッサのトラフィックの増減に対応して、実施例１による方法と、実施例２による方法を切り替えることとする。
【０１０３】
本実施例の装置構成例は、実施例２の図５と同じであり、動作のフローは異なるので、図７により説明する。
図７において、Ｓ０１は、主プロセッサが、各プロセッサから、それぞれのトラフィック量を受信するステップ、Ｓ０２は、主プロセッサにて、各プロセッサのトラフィック量が所定の値内か否かの判断のステップ、Ｓ０３は、周期Ｔをプロセッサ数で等分割するため各プロセッサへ位相変化の指示を行うステップ、Ｓ０４は、各プロセッサがＳ０３で指示された位相変化の調整を行うステップ、Ｓ０５は、周期Ｔを各プロセッサのトラフィックに対応した位相配置になる様に、各プロセッサへ位相変化の指示を行うステップ、Ｓ０６は、各プロセッサがＳ０５で指示された位相変化の調整を行うステップ、Ｓ０７は、次のトラフィックの測定への移行のステップを示す。
【０１０４】
各プロセッサーのトラフィック監視部３０１から送られて来たトラフィック量、即ちデータ周期T内のセル数は、主プロプロセッサ１０６１で受信され、装置立ち上げ後の最初に検知する各プロセッサの初期位相の情報とを合わせて、位相決定部２０３にて、各プロセッサに指示する位相変化値を、以下の手順により計算する。
【０１０５】
図７に示す動作のフローに従って、プロセッサー数がNp個ある一般的な関係式を示す。
図７の最初のステップS01で、Np個のプロセッサ１０６１、１０６２、１０６３・・
・  １０６Npから、データ周期内T内のセル数をNp個受け取る。次にステップS02において、合計Np個の各セルについて、（１０）式の判断を行う。
【０１０６】
【数１０】
2006270628.tif 000012
【０１０７】
ただし、Tcは１セルの固定時間長で、Nnはｎ番目のプロセッサのT内のセル数を示す。
（１０）式を、n=１，２，３  ・・・Npについて判断する。
（１０）式が、すべてのn番目のプロセッサに対し成立するときは、図７のステップＳ０３の、第１の動作モードが選択され、基本周期Tを全部プロセッサ数Npで割った等間隔の下記（１１）式の時間Ts内に、各プロセッサのセルが順番に配置され、（１）式に示されたΔTnの位相変化の指示を行う。
【０１０８】
【数１１】
2006270628.tif 000013
【０１０９】
ステップＳ０４で、各プロセッサは指示された位相変化量ΔTnの位相調整を行い、プロセッサ間通信に適用する。
一方、ステップＳ０２で、どれかn番目のプロセッサのT内のセル数Nnにおいて、
【０１１０】
【数１２】
2006270628.tif 000014
【０１１１】
ただし、ｎ＝１，２，３  ・・・Np  である。
（１２）式を満たした時は、図７のステップＳ０５の、第２の動作モードが選択され、n番目のプロセッサへは、基本周期Tを全体のセル数NTに対する、そのプロセッサのセル数の比で分割した前記、（３）式の時間長Tnが配分され、位相変化の指示量ΔTnは、前記（７）式の値が指示される。ステップＳ０６で、各プロセッサは指示された位相変化量ΔTnの位相調整を行い、プロセッサ間通信に適用する。
【０１１２】
ステップＳ０７において、適切な周期で、次のトラフィックの測定に入り、トラフィックの時間的変化に対応する。上記適切な周期とは好ましくは、データ周期Tの整数倍の周期とする。
【０１１３】
本実施例３では、比較的トラフィックが少ないときは、第１の動作モードが選択されるので、簡単な時間割り当てになり、高速な割り当て処理が出来る。また、トラフィックが多くなったり、特定プロセッサに偏った場合などは、第２の動作モードが選択されるので、トラフィックの増減に効率的に対応することが出来る。
【０１１４】
（付記１）
それぞれ周期的なデータ送信が許容された第１のプロセッサ、第２のプロセッサを含むプロセッサ群と、該第１のプロセッサ、該第２のプロセッサから共通の伝送路を介してデータを受信する他のプロセッサとを備えたマルチプロッセッサシステムにおいて、
該第１のプロセッサについてデータ送信が許容された周期の第１の位相と、該第２のプロセッサについてデータ送信が許容された周期の第２の位相との差を所定時間以上に制御する位相制御部
を備えたことを特徴とするマルチプロッセッサシステム。
【０１１５】
（付記２）
前記位相制御部は、
前記第１のプロセッサに設けられ、かつ、前記第２のプロセッサからの信号に基づいて、前記第１の位相と前記第２の位相との位相差を検出する位相検出部と、
検出した該位相差を前記所定時間以上にするのに必要とされる位相制御量を算出して前記第２のプロセッサに指示する位相指示信号を生成する位相指示部と
を含む、ことを特徴とする付記１記載のマルチプロセッサシステム。
【０１１６】
（付記３）
前記所定時間は、前記周期以下としたことを特徴とする付記１記載のマルチプロッセッサシステム。
【０１１７】
（付記４）
前記第１および第２のプロセッサは、共通の一つの発振器からのクロック信号により、データ送信の周期を制御されることにより、データ送信の周期が同一であることを特徴とする付記１記載のマルチプロセッサシステムを用いる。
【０１１８】
（付記５）
前記所定時間は、前記周期を前記プロセッサ群に含まれるプロセッサの数で均等に分割して得られる時間に設定することを特徴とした付記１記載のマルチプロセッサシステム。
【０１１９】
（付記６）
前記プロセッサー群に含まれるプロセッサ数に変更があった際に、前記所定時間を前記周期を該変更後のプロセッサ数で均等に分割して得られる時間として、前記制御を再び実行する、ことを特徴とした付記１記載のマルチプロセッサシステム。
【０１２０】
（付記７）
プロセッサ間通信のトラフィック量を監視するトラッフィク監視部を備え、
前記位相制御部は、前記第１プロセッサと前記他のプロセッサとの間のトラフィック量が前記第２プロセッサと前記他のプロセッサとの間のトラフィック量より少ないほど前記所定時間が短かくなるように設定し、トラフィック量がより多いほど前記所定時間が長くなるように設定する
ことを特徴とした付記１記載のマルチプロセッサシステム。
【０１２１】
（付記８）
前記プロセッサ群に含まれる少なくとも1つのプロセッサの、前記周期内におけるデータの送信時間長が、前記周期を前記プロセッサ群に含まれるプロセッサ数で等分した時間長より長くなった場合は、前記所定時間を前記周期を前記プロセッサ群に含まれるプロセッサの数で均等に分割して得られる時間に設定する第１の動作モードから、前記第１プロセッサと前記他のプロセッサとの間のトラフィック量が前記第２プロセッサと前記他のプロセッサとの間のトラフィック量より少ないほど前記所定時間が短かくなるように設定し、
トラフィック量がより多いほど前記所定時間が長くなるように設定する第2の動作モードに切り替える
ことを特徴とする、付記１記載のマルチプロセッサシステム。
【０１２２】
（付記９）
前記マルチプロッセッサは、ＡＴＭ交換機における主信号系スイッチの制御を分担して行う、ことを特徴とする付記１記載のマルチプロセッサシステム。
【図面の簡単な説明】
【０１２３】
【図１】ATM交換機の全体構成を示す図である。
【図２】本発明に係わる課題を説明するセルデータの配置例を示す図である。
【図３】本発明に係わる実施例１の主要部の詳細構成例を示す図である。
【図４】本発明に係わる実施例１の動作を説明するセルデータの配置例を示す図である。
【図５】本発明に係わる実施例２の主要部の詳細構成例を示す図である。
【図６】本発明に係わる実施例２を説明するセルデータの配置例を示す図である。
【図７】本発明に係わる実施例３におけるセル配置の処理フローを示す図である。
【符号の説明】
【０１２４】
１０１    ATM交換機
１０２    主信号系ATMスイッチ
１０３、１０４、１０５    制御系スイッチ
１０６、１０７、１０８  制御用プロセッサー
２０１    主信号系ATMスイッチの制御部
２０２    位相検出部
２０３    位相決定部
２０４    位相指示部
２０５    プロセッサー間通信機能部
２０６    位相受信部
２０７    位相調整部
２０８    マスタークロック発信器
３０１    トラフィック監視部
【図１】
2006270628.tif 000015
【図２】
2006270628.tif 000016
【図３】
2006270628.tif 000017
【図４】
2006270628.tif 000018
【図５】
2006270628.tif 000019
【図６】
2006270628.tif 000020
【図７】
2006270628.tif 000021