(57)【要約】  ネット更新メッセージを競合することによりバスブリッジのネット更新変動を回避するための方法は、（ａ）特定のポータルがそのローカルバスにおいてコーディネータであるかどうかを決定する段階であって、前記特定のポータルがコーディネータである場合、段階（ｂ）（ｉ）に進み、そうでない場合、段階（ｂ）（ｉｉ）に進む、段階と、（ｂ）（ｉ）前記特定のポータルがそのローカルバスにおいてネット更新衝突を見つけるかどうかを決定する段階であって、ネット更新衝突が見つけられる場合、段階（ｃ）に進む、段階と、（ｂ）（ｉｉ）特定のポータルがローカルバスにおけるコーディネータである他のポータルからＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージを受信するかどうかを決定する段階であって、ＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージが受信される場合、段階（ｃ）に進む、段階と、（ｃ）ロック手法によりグローバルネット更新ビットを１に設定する段階と、（ｄ）段階（ｃ）におけるロック手法が、ネット更新ビットが１に設定されたかどうかを決定することにより、成功裏に実行されたかどうかを確認する段階と、（ｅ）（ｉ）段階（ｃ）におけるロック手法が成功裏に実行されなかったことが段階（ｄ）において決定された場合、ネット更新は廃棄される段階と、（ｅ）（ｉｉ）段階（ｃ）におけるロック手法が成功裏に実行されたことが段階（ｄ）において決定された場合、ＩＥＥＥのブリッジの規格草案１３９４．１に従って、ネット更新が処理され、ネット更新ビットが０に設定される、段階と、を有する方法である。
2005513961.tif 000002
【特許請求の範囲】
【請求項１】
ネット更新メッセージを競合することによりバスブリッジのネット更新変動を回避する方法であって：
（ａ）第１バスにおける第１コーディネータから第１ネット更新メッセージをバスブリッジの第１ポータルにおいて受信する段階；
（ｂ）前記第１ネット更新メッセージが前記バスブリッジの前記第１ポータルにより処理される前に、第２バスにおける第２コーディネータから第２ネット更新メッセージを前記バスブリッジの第２ポータルにおいて受信する段階；
（ｃ）生き残ったネット更新メッセージとして前記第１ネット更新メッセージ及び前記第２ネット更新メッセージの１つの前記ブリッジにより選択し且つ処理する段階であって、前記第１ネット更新メッセージ及び前記第２ネット更新メッセージの他の１つを廃棄する、段階；並びに
（ｄ）前記第１ポータル及び前記第２ポータルの両方が前記生き残ったネット更新メッセージのクラン情報を有するように、クラン情報を更新する段階；
を有することを特徴とする方法である。
【請求項２】
請求項１に記載の方法であって、段階（ｃ）は、廃棄されたネット更新メッセージを有した前記第１バス及び前記第２バスの１つのリセットを開始する手順を有する、ことを特徴とする方法である。
【請求項３】
請求項２に記載の方法であって：
（ｅ）前記生き残ったネット更新メッセージは段階（ｃ）において選択された前記バスのリセットを開始する段階；
を有する、ことを特徴とする方法である。
【請求項４】
請求項１に記載の方法であって、適時に第１に受信される前記ネット更新メッセージが段階（ｃ）において選択される、ことを特徴とする方法である。
【請求項５】
請求項１に記載の方法であって、前記ブリッジは、１つの中央演算処理装置（ＣＰＵ）と、前記生き残ったネット更新メッセージとして段階（ｃ）において選択される前記ＣＰＵにより第１に見つけられる前記ネット更新メッセージとを有する、ことを特徴とする方法である。
【請求項６】
請求項１に記載の方法であって、前記ブリッジは、複数の中央演算処理装置（ＣＰＵ）と、前記生き残ったネット更新メッセージとして段階（ｃ）において選択される前記複数のＣＰＵの構成において１つのＣＰＵにより少なくとも１つの他のＣＰＵに第１に報告される前記ネット更新メッセージとを有する、ことを特徴とする方法である。
【請求項７】
請求項１に記載の方法であって、前記ブリッジの前記第１ポータル及び前記第２ポータルの構成は、前記生き残ったネット更新メッセージとして指定される段階（ｃ）においてそのネット更新メッセージを選択するために前記第１ポータル及び前記第２ポータルの１つを指定する、ことを特徴とする方法である。
【請求項８】
請求項１に記載の方法であって、前記生き残ったネット更新メッセージとして段階（ｃ）において選択された前記ネット更新メッセージは、前記ブリッジがいずれの更新メッセージを編集しないことを除いて、ＩＥＥＥの規格草案１３９４．１に従ったプライム選択基準により選択される、ことを特徴とする方法である。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ブリッジ状シリアルバスに関する。本発明は、特に、ＩＥＥＥの規格１３９４のようなシリアルバスブリッジにおけるネット更新変動問題に関する。
【背景技術】
【０００２】
ネットは、ブリッジにより相互接続されたバスのコレクションをいう。ＩＥＥＥの定義に従って、ブリッジは２つのポータルを確立し、非同期サブアクションを転送し、又、記憶されたルート情報に従ってアイソクロナスサブアクションを転送することが可能である。ネットの一部を形成する各々のバスは、ネットが安定で適切に構成されている場合に、一意である個別の識別子を有する。特に、ＩＥＥＥの規格１３９４においては、最大１０２３個の論理バスと各々のバスにおいて最大６３個のノードが存在することができる。ループ相互接続は、ネット内のバス間で物理的に可能である。しかしながら、必要に応じて、ループは、ＩＥＥＥのブリッジの規格草案１３９４に従って、ループ当たり少なくとも１つのブリッジを弱めることにより、削減される。２つ又はそれ以上のブリッジ状ネットが接続されるとき、ネット生成手法が必要となる。
【０００３】
ＩＥＥＥのブリッジの規格草案１３９４．１のバージョン１．００に従って、プライムポータルは相互接続されたバスのネット内の特異なポータルとして定義され、クランは同じポータルへの忠実性を示す関連ブリッジポータルの群として定義される。２つのネットが接続されるとき、同じバスにのけるブリッジポータルは異なるクランに属すことが可能である。しかしながら、これは、ネットの更新手法により解決される一時的な状態である。
【０００４】
バスにおけるコーディネータが異なるクランが属すポータルを見つけたとき、コーディネータは、１つのプライムポータルを選択し、ＩＥＥＥのブリッジの規格草案１３９４．１に従ってパケットルーティング情報を更新する。次いで、コーディネータは、各々のポータルのパケットルーティング情報とクランアフィニティ（ａｆｆｉｎｉｔｙ）を更新するために、ＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージをローカルバスにおける各々のポータルに送信する。
【０００５】
新しい更新プロセスが、他のネットの更新が処理されている間に開始される場合、これらのネットの更新プロセスは１つに統合される。そうでなければ、ネットを適切に構成することができない。ＩＥＥＥのブリッジの規格草案１３９４．１のバージョン１．００に従って、コーディネータのみがネット更新の衝突を検出することができ、存続プライムポータルを選択してパケットルーティング情報を更新した後に新しい更新プロセスを開始することができる。
【０００６】
しかしながら、ブリッジが、他のポータルに受信された他のネット更新を処理している間に、１つのポータルにおいてネット更新プロセスを観測する場合、２つの異なるネット更新に関連する２つの異なるＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージが、１つに統合されることなく、ブリッジを横断することができる。それ故、両方のブリッジポータルは、交換されたＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージを用いて更新され、次いで、それらのローカルバスにおいてバスリセットを開始する。
【０００７】
結果として、各々のバスにおける各々のコーディネータは、新しい異なったネット更新衝突を観測する。２つのコーディネータは、次いで、異なるネット更新衝突のために、それらのそれぞれのローカルバスにおける各々のポータルに異なるＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージを送信する。
【０００８】
例えば、図１は、２つのＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージが２つのローカルバスにおけるブリッジにより受信され、それら２つのＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージが他のバスのそばを通り、その他のバスに転送される例についてのタイムフロー図を示している。
【０００９】
ネット更新プロセスは、ブリッジがポータルからネット更新メッセージを受信するとき、開始する。通常、コーディネータ（即ち、ネット更新の責任を負っているブリッジポータル）がネット更新メッセージを受信した後、ブリッジクラン情報は更新され、そのプロセスは他のポータルのバスにおけるバス更新の情報を伴って終了する。
【００１０】
第１バスＡ（図示せず）におけるコーディネータ（図示せず）は、ポイント１２０においてバスＡにより受信されるネット更新メッセージを送信する。略同じ時間１３０において、バスＢにおけるコーディネータ（図示せず）は、バスＢにネット更新を送信する。従って、ネット更新期間（１３０から１４０までの期間）と呼ばれるタイムフレームにおいて、１つのバスからの開始と他のバスにおけるリセットとの間の更新メッセージの“交差点”が存在する。
【００１１】
バスＡが、バスＢからのリセット情報を有するクラン情報を受信するとき、バスＡはそのクラン情報を更新し、リセットが開始される。
【００１２】
従って、Ａ及びＢに対するそれぞれのコーディネータはブリッジクラン情報に関する“競合”を尚も検出し、それら両方は、再び、ネット更新を実行する。
【００１３】
その後、それら２つのコーディネータは、再び、異なる更新プロセスを開始する。ブリッジは、次いで、１５０において、交差点の近くの両方のポータルにおいて２つの異なるネット更新メッセージを再び受信することが可能である。結果的に無限のネット更新ループがもたらされる。換言すれば、ブリッジは、両方のポータルにおいて２つのネット更新メッセージを連続的に受信し、それらメッセージをバスに無限に転送する。そのような状況においては、ネット構成は終了されることがない。このループは、ネット更新変動と呼ばれる。
【発明の開示】
【発明が解決しようとする課題】
【００１４】
本発明の特徴に従ったネット更新変動を回避する方法は、ポータルがローカルバスにおけるコーディネータである場合には、各々のポータル自体により各々が生成される、２つのＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージのうち１つのみを選択し、そうでない場合には、ポータルのローカルコーディネータにより送られ、そのポータルにより受信される。それから、次いで、ブリッジは他のＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージを廃棄し、それ故、無限のネット更新変動は生じることがない。生き残ったＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージと呼ばれる、選択されたＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージは、ＩＥＥＥのブリッジの規格草案１３９４．１に従ったブリッジにより処理され、それ故、生き残ったＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージを受信したポータルは、ネットイベントの開始としてバスリセットを開始する一方、他のポータルはそれを行わない。次いで、そのバスリセットの後にコーディネータ（そのポータルであることが可能である）は、ネット更新プロセス衝突を見つけて、ＩＥＥＥのブリッジの規格草案１３９４．１に従ってその問題を解決する。
【００１５】
ブリッジにより観測されたネット更新イベントの１つは廃棄され、１つのネット更新イベントのみが処理されるため、両方のネット更新イベントがブリッジを通ることはできない。従って、上で説明したネット変動の問題を回避することができる。
【課題を解決するための手段】
【００１６】
本発明の第１の特徴において、ネット更新メッセージを競合することによりバスブリッジのネット更新変動を回避するための方法は：
（ａ）特定のポータルがそのローカルバスにおいてコーディネータであるかどうかを決定する段階であって、前記特定のポータルがコーディネータである場合、段階（ｂ）（ｉ）に進み、そうでない場合、段階（ｂ）（ｉｉ）に進む、段階；
（ｂ）（ｉ）前記特定のポータルがそのローカルバスにおいてネット更新衝突を見つけるかどうかを決定する段階であって、ネット更新衝突が見つけられる場合、段階（ｃ）に進む、段階；
（ｂ）（ｉｉ）特定のポータルがローカルバスにおけるコーディネータである他のポータルからＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージを受信するかどうかを決定する段階であって、ＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージが受信される場合、段階（ｃ）に進む、段階；
（ｃ）ロック手法によりグローバルネット更新ビットを１に設定する段階；
（ｄ）段階（ｃ）におけるロック手法が、ネット更新ビットが１に設定されたかどうかを決定することにより、成功裏に実行されたかどうかを確認する段階；
（ｅ）（ｉ）段階（ｃ）におけるロック手法が成功裏に実行されなかったことが段階（ｄ）において決定された場合、ネット更新は廃棄される段階；並びに、
（ｅ）（ｉｉ）段階（ｃ）におけるロック手法が成功裏に実行されたことが段階（ｄ）において決定された場合、ＩＥＥＥのブリッジの規格草案１３９４．１に従って、ネット更新が処理され、ネット更新ビットが０に設定される、段階；
の１つを実行する段階；
を有する方法である。
【００１７】
本発明の他の特徴において、ネット更新変動を回避するための方法は：
（ａ）第１バスにおける第１コーディネータから第１ネット更新メッセージをバスブリッジの第１ポータルにおいて受信する段階；
（ｂ）前記第１ネット更新メッセージが前記バスブリッジの前記第１ポータルにより処理される前に第２バスにおける第２コーディネータから第２ネット更新メッセージをバスブリッジの第２ポータルにおいて受信する段階；
（ｃ）第１及び第２ネット更新メッセージの１つのブリッジにより生き残ったネット更新メッセージとして選択し、処理する段階であって、第１及び第２ネット更新メッセージの
他の１つを廃棄する、段階；並びに
（ｄ）第１及び第２ポータルは生き残ったネット更新メッセージのクラン情報を有するように、クラン情報を更新する段階；
を有する方法である。
【発明を実施するための最良の形態】
【００１８】
どのように、１つのポータルにより受信された生き残ったＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージを選択し、受信された他の１つを廃棄するかに関して、次の例は説明目的のためのものであり、生き残ったメッセージを選択し且つ犠牲のメッセージを廃棄するための次の基準に請求する本発明を限定するものではない。
（１）第１の適時；ブリッジは１つのバスにおいて第１の受信されたネット更新メッセージを保ち、第２メッセージを廃棄する。
（２）ＣＰＵ優先順位、１つのＣＰＵ；ＣＰＵにより第１に見つけられたメッセージは保たれ、他のメッセージは廃棄される。
（３）ＣＰＵ優先順位、複数のＣＰＵ；他のＣＰＵにネット更新イベントの検出を報告する第１ＣＰＵはネット更新イベントを処理し、第１ネット更新イベントが終了する前にそれに続くネット更新イベントを検出する他のＣＰＵは、ネット更新イベントを無視する。
（４）ポータルの構成：ブリッジにおける１つのポータルは生き残ったものとして指定されることができ、他の１つは犠牲となる。ブリッジの各々のポータルがＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージを受信し又はネット更新イベントを見つけ、次いでコーディネータをしてＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージを生成する場合、犠牲のポータルからのＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージは廃棄され、生き残ったポータルからの他のＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージは処理される。又は、
（５）ＩＥＥＥのブリッジの規格草案１３９４．１により指定された同じプライム選択基準の使用；しかし、ブリッジはいずれの更新メッセージを編集することが可能でない場合。ブリッジは、ＩＥＥＥのブリッジの規格草案１３９４．１に従って選択された生き残ったプライムメッセージに対応するＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージを保持し、処理し、他のＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージを廃棄する。
【００１９】
図２は、少なくとも２つのポータルを有するブリッジに対して本発明を実施する方法の一例を提供するフローチャートを示している。図２のフローチャートにより示される手順を実施するブリッジは、ポータルにより共有されるグローバルビットを実施する。そのグローバルビットは、ソフトウェアか又はハードウェアのどちらかにおいて実施されることができ、説明目的のためにネット更新ビットと呼ぶことにする。周知のロック手法が、グローバルネット更新ビットを１に設定するために使用される。グローバルネット更新ビットは、１に設定されたポータルにより０にクリアされることができる。ネット更新ビットの初期値は０である。
【００２０】
段階２００において、ポータルがローカルバスにおけるコーディネータである場合、次いで、段階２１０が処理され、そうでなく、ポータルがローカルバスにおいてコーディネータでない場合、次いで、段階２２０が実行される。
【００２１】
段階２１０において、ポータルが、ＩＥＥＥのブリッジの規格草案１３９４．１に従って、ローカルバスにおいてネット更新変動を見つける場合、次いで、段階２３０が実行される。そうでない場合、次いで、段階２００が進められる。
【００２２】
段階２２０において、ポータルがローカルバスにおいてそのコーディネータからＵＰＤＡＴＥ＿ＲＯＵＴＥメッセージを受信する場合、次いで、段階２３０が実行される。そうでない場合、次いで、段階２００が進められる。
【００２３】
段階２３０において、グローバルネット更新ビットが、周知のロック手法により１に設定される。例えば、段階２３１において、ネット更新ビットが１を確認する場合、ロックは機能しない。そうではなく、ネット更新ビットが０である場合、段階２３２において、グローバルネット更新ビットは１に設定され、ロックは成功裏に機能する。段階２３０のロックが機能しない場合、次いで、段階２６０が処理される。そうでなく、段階２３０のロックが機能する場合、次いで、段階２４０が処理される。
【００２４】
段階２４０において、ネット更新は、ＩＥＥＥのブリッジの規格草案１３９４．１に従って、ポータルにより処理される。次いで、段階２５０が処理される。
【００２５】
段階２５０において、ポータルはネット更新ビットを０にクリアする。
【００２６】
段階２６０において、ポータルはネット更新イベントを廃棄する。この場合、他のポータルは他のネット更新を処理し、他のポータルのローカルバスにおいて見つけられる。
【００２７】
段階２６０の結果として、ブリッジにより見つけられる同時に生じるネット更新イベントの１つ以外は廃棄され、起こり得るネット更新変動の問題は回避されることができる。
【００２８】
前記のＩＥＥＥ規格１３９４のバス又は同等なものを使用することが可能である全てにおいて、本発明は、特別に、ＩＥＥＥ企画１３９４に限定されるものではなく、いずれかのシリアルバスブリッジにおいて使用されることができる。
【図面の簡単な説明】
【００２９】
【図１】先行技術において、無限のネット更新変動がどのようにして起こるかを示すタイムフロー図である。
【図２】ネット更新変動を回避するための本発明の方法のフロー図である。
【図１】
2005513961.tif 000003
【図２】
2005513961.tif 000004
【国際調査報告】
2005513961.tif 000005
2005513961.tif 000006