(57)【特許請求の範囲】
【請求項１】
複数の入力ポートと出力ポートとを有するクロスバスイッチが多段構成されたシステムにおけるクロスバスイッチの調停制御方法において、
前記クロスバスイッチはトランザクション発行元のプロセッサ／ＩＯノード番号と前記トランザクション転送先のプロセッサ／ＩＯノード番号で索引すると出力ポート番号とクロスバスイッチ調停時の優先度を出力するルーティングテーブルを予め具備し、
前記入力ポートから前記トランザクションが入力されると、前記トランザクションの前記発行元のプロセッサ／ＩＯノード番号と前記転送先のプロセッサ／ＩＯノード番号に基づき前記ルーティングテーブルから前記出力ポート番号および前記出力ポートから出力される前記複数の入力ポートからの前記トランザクションの前段までの前記クロスバスイッチの前記調停回路における参加回数に基づく事前に設定された前記優先度を取り出し、取り出した前記出力ポート番号に対応した調停回路にて前記優先度に対応した調停獲得比率で前記複数の入力ポートからの前記トランザクションを選択し、前記複数の入力ポートからの前記トランザクションのスループットが均等になるように調停処理を行うことを特徴とするクロスバスイッチの調停制御方法。
【請求項２】
複数の入力ポート、出力ポート、および、調停回路を有するクロスバスイッチが多段構成されたシステムにおけるクロスバスイッチの調停制御方式において、
前記クロスバスイッチは、
トランザクション発行元のプロセッサ／ＩＯノード番号と前記トランザクション転送先のプロセッサ／ＩＯノード番号で索引すると出力ポート番号および前記出力ポートから出力される前記複数の入力ポートからの前記トランザクションの前段までの前記クロスバスイッチの前記調停回路における参加回数に基づく事前に設定された優先度を出力するルーティングテーブルと、
前記入力ポートから前記トランザクションが入力されると、前記トランザクションの前記発行元のプロセッサ／ＩＯノード番号と前記転送先のプロセッサ／ＩＯノード番号に基づき前記ルーティングテーブルから前記出力ポート番号および前記優先度を取り出すセレクタと、
前記出力ポート番号に対応し、前記セレクタからの前記優先度に対応した調停獲得比率で前記複数の入力ポートからの前記トランザクションを選択し、前記複数の入力ポートからの前記トランザクションのスループットが均等になるように調停処理を行う前記調停回路と、
を含んで構成されることを特徴とするクロスバスイッチの調停制御方式。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はクロスバスイッチの調停制御方法及びクロスバスイッチの調停制御方式に関し、特に全てのプロセッサ／ＩＯノードからのトランザクションを均等のスループットでルーティングすることを可能にするクロスバスイッチの調停制御方法及びクロスバスイッチの調停制御方式に関する。
【０００２】
【従来の技術】
クロスバスイッチを多段構成で使用する場合、トランザクションのスループットは、通過するクロスバスイッチの段数、ルーティングによって大きく異なってくる。
【０００３】
図５は４つのクロスバーＬＳＩ＃０（Ｌ５０）〜＃３（Ｌ５３）と８つのプロセッサ／ＩＯノード＃０（Ｎ５０）〜＃７（Ｎ５７）を使った構成のシステムを表しており、クロスバーＬＳＩの＃０，＃１，＃２を使って、プロセッサ／ＩＯノードの＃０，＃１，＃４から＃６に対してトランザクションが出力されている事を表している。この時、クロスバーＬＳＩの＃０，＃１，＃２内のクロスバスイッチが単に全てのトランザクションを均一に調停したとすると、プロセッサ／ＩＯノードの＃１から＃６へのパスの平均的なスループットは１／６４（注；下記）となるのに対して、プロセッサ／ＩＯノードの＃４から＃６へのパスの平均的なスループットは１／４であり、プロセッサ／ＩＯノード間でのトランザクションスループットに大きな差が生じる。
【０００４】
（注）プロセッサ／ＩＯノードの＃１のトランザクションがクロスバーＬＳＩの＃１からクロスバーＬＳＩの＃０へ出力する為には、クロスバーＬＳＩの＃１内のクロスバスイッチの調停を勝取る必要が有り、この時の確率は１／４である。同様にクロスバーＬＳＩ＃０からクロスバーＬＳＩ＃２へ出力する為には、クロスバーＬＳＩ＃０内のクロスバスイッチの調停を勝取る必要があり、この時の確率は１／４で、プロセッサ／ＩＯノード＃１からクロスバーＬＳＩ＃２へ到達する確率は１／１６である。最終的にプロセッサ／ＩＯノード＃１からプロセッサ／ＩＯノード＃６へ到達する確率は１／６４となる。
【０００５】
【発明が解決しようとする課題】
上述した従来の多段構成のクロスバスイッチにおける調停制御方法は、単に個々のクロスバスイッチでのトランザクションの調停を最適化（平等化）しているため、ノード間を通過するクロスバスイッチの段数、ルーティングによってトランザクションのスループットが大きく異なってくるという問題があった。
【０００６】
本発明の目的は、多段構成のクロスバスイッチにおいて、各ノード間でクロスバスイッチの通過回数が異なる場合でも、全てのノード間でトランザクションの転送能力を均一化する調停制御方法を提供することにある。
【０００７】
【課題を解決するための手段】
本発明のクロスバスイッチの調停制御方法は、複数の入力ポートと出力ポートとを有するクロスバスイッチが多段構成されたシステムにおけるクロスバスイッチの調停制御方法であって、
前記クロスバスイッチはトランザクション発行元のプロセッサ／ＩＯノード番号と前記トランザクション転送先のプロセッサ／ＩＯノード番号で索引すると出力ポート番号とクロスバスイッチ調停時の優先度を出力するルーティングテーブルを予め具備し、
前記入力ポートから前記トランザクションが入力されると、前記トランザクションの前記発行元のプロセッサ／ＩＯノード番号と前記転送先のプロセッサ／ＩＯノード番号に基づき前記ルーティングテーブルから前記出力ポート番号および前記出力ポートから出力される前記複数の入力ポートからの前記トランザクションの前段までの前記クロスバスイッチの前記調停回路における参加回数に基づく事前に設定された前記優先度を取り出し、取り出した前記出力ポート番号に対応した調停回路にて前記優先度に対応した調停獲得比率で前記複数の入力ポートからの前記トランザクションを選択し、前記複数の入力ポートからの前記トランザクションのスループットが均等になるように調停処理を行うことを特徴とする。
【００１０】
本発明のクロスバスイッチの調停制御方式は、複数の入力ポート、出力ポート、および、調停回路を有するクロスバスイッチが多段構成されたシステムにおけるクロスバスイッチの調停制御方式であって、
前記クロスバスイッチは、
トランザクション発行元のプロセッサ／ＩＯノード番号と前記トランザクション転送先のプロセッサ／ＩＯノード番号で索引すると出力ポート番号および前記出力ポートから出力される前記複数の入力ポートからの前記トランザクションの前段までの前記クロスバスイッチの前記調停回路における参加回数に基づく事前に設定された優先度を出力するルーティングテーブルと、
前記入力ポートから前記トランザクションが入力されると、前記トランザクションの前記発行元のプロセッサ／ＩＯノード番号と前記転送先のプロセッサ／ＩＯノード番号に基づき前記ルーティングテーブルから前記出力ポート番号および前記優先度を取り出すセレクタと、
前記出力ポート番号に対応し、前記セレクタからの前記優先度に対応した調停獲得比率で前記複数の入力ポートからの前記トランザクションを選択し、前記複数の入力ポートからの前記トランザクションのスループットが均等になるように調停処理を行う前記調停回路と、
を含んで構成されることを特徴とする。
【００１３】
「作用」
本発明のクロスバスイッチの調停制御方式は、クロスバスイッチを通過する際に、ルーティングテーブルを参照し、その情報に基づいてルーティングされる機能を有し、予めルーティングテーブル内に調停の優先度を設定しておく事で、クロスバスイッチの調停に際し、ルーティングテーブルを索引して得られた重みを考慮して調停を行う事により、クロスバスイッチを通過する回数の多い経路のトランザクションの、経路上の各クロスバスイッチでの調停優先度を上げる事で、クロスバスイッチを通過する回数の多い経路のトランザクションが、クロスバスイッチを通過する回数の少ない経路のトランザクションに対する相対的な、スループットの低下を防ぐ事が可能となる事を特徴とする。
【００１４】
【発明の実施の形態】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【００１５】
図１は本発明の多段クロスバの調停制御方式に係わるクロスバーＬＳＩを用いた多段クロスバシステムの一実施の形態を示すブロック図である。
【００１６】
図１を参照すると、多段クロスバシステムは、６つのクロスバーＬＳＩであるＬ０〜Ｌ５と６つのプロセッサ／ＩＯノードであるＮ０〜Ｎ５からなっている。
【００１７】
クロスバーＬＳＩには４組の入出力ポートであるポート＃０，ポート＃１，ポート＃２，ポート＃３を有し、入力ポートからトランザクションとして、トランザクション発行元のプロセッサ／ＩＯノード番号と、トランザクション転送先のプロセッサ／ＩＯノード番号と、転送データを入力し、クロスバーＬＳＩ内部に有しているルーティングテーブルの情報に従って、出力ポートへトランザクションを出力する機能を有し、システム規模によりクロスバーＬＳＩを複数接続することで、より大きなクロスバスイッチを構成する事が出来る。
【００１８】
図２は図１のクロスバーＬＳＩの内部構造を表しており、クロスバーＬＳＩには転送データを選択する為のデータセレクタ１１０〜１１３と、各ポートからのトランザクションを調停する調停回路１２０〜１２３と、トランザクションを転送する入力データ１４０〜１４３と、調停に使用される優先度（調停獲得比率）情報を保持するルーティングテーブル１３０〜１３３を有している。クロスバーＬＳＩは入力ポートからトランザクションを受付けた時、トランザクション発行元のプロセッサ／ＩＯノード番号と、トランザクション転送先のプロセッサ／ＩＯノード番号でルーティングテーブルを索引し、その結果から出力ポート番号を特定する。この時、ルーティングテーブルから出力ポート番号と共に、クロスバスイッチ調停時の優先度（Ｐｒｉｏｒｉｔｙ）も獲得し、出力ポート毎に対応した調停回路に対して調停要求を行う。複数の入力ポートから調停要求を受けた調停回路はルーティングテーブルから得た優先度に従って調停を行い、調停に勝ったトランザクションを選択し出力ポートへ出力する。
【００１９】
次に、本発明の実施の形態の動作について図面を参照して説明する。
【００２０】
図３は、図１の動作説明図であり、図４は、図３のクロスバーＬＳＩに保持されたルーティングテーブルの設定状態の一例を示す図である。
【００２１】
ここで全てのプロセッサ／ＩＯノードからプロセッサ／ＩＯノード＃４へトランザクションを転送する場合の動作を説明する。ルーティングテーブルの設定に従うと、プロセッサ／ＩＯノード＃０からのトランザクションは、クロスバーＬＳＩ＃０、＃１、＃４を経由してプロセッサ／ＩＯノード＃４へ転送される。プロセッサ／ＩＯノード＃１からのトランザクションは、クロスバーＬＳＩ＃１，＃４を経由してプロセッサ／ＩＯノード＃４へ転送される。プロセッサ／ＩＯノード＃２からのトランザクションは、クロスバーＬＳＩ＃２，＃１，＃４を経由してプロセッサ／ＩＯノード＃４へ転送される。プロセッサ／ＩＯノード＃３からのトランザクションは、クロスバーＬＳＩ＃３，＃４を経由してプロセッサ／ＩＯノード＃４へ転送される。プロセッサ／ＩＯノード＃４からのトランザクションは、自Ｎｏｄｅから自Ｎｏｄｅへの転送であり存在しない。プロセッサ／ＩＯノード＃５からのトランザクションは、クロスバーＬＳＩ＃５，＃４を経由してプロセッサ／ＩＯノード＃４へ転送される。この時、プロセッサ／ＩＯノード＃３，＃５からのトランザクションは、クロスバーＬＳＩ＃４で１回のみ調停へ参加し、プロセッサ／ＩＯノード＃０，＃１，＃２からのトランザクションは、クロスバーＬＳＩ＃１で１回、クロスバーＬＳＩ＃４で１回の計２回調停へ参加する事になる。クロスバーＬＳＩ＃０のポート＃１を使用するプロセッサ／ＩＯノードがプロセッサ／ＩＯノード＃０しか存在しないため、出力ポート競合による調停は無い。クロスバーＬＳＩ＃２，＃３，＃５でも同様である。プロセッサ／ＩＯノード＃０，＃１，＃２からのトランザクションは、クロスバーＬＳＩ＃１のルーティングテーブルの設定により同確立で調停される為、各々１／３の確立で調停を勝取る事になる。クロスバーＬＳＩ＃１で調停を勝取ったプロセッサ／ＩＯノード＃０，＃１，＃２からのトランザクションは、クロスバーＬＳＩ＃４でプロセッサ／ＩＯノード＃３，＃５と調停を行うが、この時、プロセッサ／ＩＯノード＃０，＃１，＃２からのトランザクションは既にクロスバーＬＳＩ＃１でスループットが１／３に落ちている為、同確立でプロセッサ／ＩＯノード＃３，＃５と調停を行うと、発行元プロセッサ／ＩＯノードによりトランザクション転送時のスループットに差が生じてしまう。その為、クロスバーＬＳＩ＃４での調停は、プロセッサ／ＩＯノード＃０，＃１，＃２からのトランザクションが、プロセッサ／ＩＯノード＃３，＃５からのトランザクションに対して３倍の確立で調停を勝取れるようにルーティングテーブル内のＰｒｉｏｒｉｔｙを設定し調停を行う。その結果、クロスバーＬＳＩ＃４からプロセッサ／ＩＯノード＃４への出力ポート＃２で見た場合、プロセッサ／ＩＯノード＃０，＃１，＃２，＃３，＃５からのトランザクションは均等に１／５の確立で調停を勝取る事になる。
【００２２】
本実施例より更に大きな構成で、クロスバ−ＬＳＩの通過個数に差がでる構成の場合も、あるクロスバ−ＬＳＩの出力ポートを通過する全プロセッサ／ＩＯノード発行のトランザクションが、クロスバ−ＬＳＩの出力ポートでの調停獲得確立が同じに成るようにルーティングテーブルのＰｒｉｏｒｉｔｙを設定する事で、最終的に転送先プロセッサ／ＩＯノードへ入力されるトランザクションは、全発行元プロセッサ／ＩＯノード間で均等の確立（スループット）になる。
【００２３】
各クロスバ−ＬＳＩの入出力ポートはＨＷ量の許す範囲内で増減可能であり、また、クロスバ−ＬＳＩの接続個数に制限は無い。
【００２４】
【発明の効果】
以上説明したように、本発明は、複数のクロスバスイッチを多段接続した構成のシステムにおいて、各ノード間でクロスバスイッチの通過回数が異なる場合でも、全てのノード間でトランザクションの転送能力を均一化する事が可能となり、スループットの偏りを解消することが可能となる効果がある。
【図面の簡単な説明】
【図１】本発明の多段クロスバの調停制御方式に係わるクロスバーＬＳＩを用いた多段クロスバシステムの一実施の形態を示すブロック図である。
【図２】図１のクロスバーＬＳＩの内部構造を示すブロック図である。
【図３】図１の動作説明図である。
【図４】図３のクロスバーＬＳＩに保持されたルーティングテーブルの設定状態の一例を示す図である。
【図５】多段構成のクロスバスイッチにおけるスループットを説明するための参考図である。
【符号の説明】
Ｌ０〜Ｌ５    クロスバーＬＳＩ
Ｎ０〜Ｎ５    プロセッサ／ＩＯノード
Ｌ３０〜Ｌ３５    クロスバーＬＳＩ
Ｎ３０〜Ｎ３５    プロセッサ／ＩＯノード
Ｌ５０〜Ｌ５３    クロスバーＬＳＩ
Ｎ５０〜Ｎ５７    プロセッサ／ＩＯノード
１１０〜１１３    データセレクタ
１２０〜１２３    調停回路
１３０〜１３３    ルーティングテーブル
１４０〜１４３    入力データ
【図１】
0003716238.tif 000002
【図２】
0003716238.tif 000003
【図３】
0003716238.tif 000004
【図４】
0003716238.tif 000005
【図５】
0003716238.tif 000006