(57)【要約】【課題】複数のノード間での通信方法を開示する。【解決手段】各ノードは、複数のプロセッサおよび相互接続チップセットを含み、第１のノード内のプロセッサからデータ要求を発行し、拡張ポート（またはスケーラビリティポート）を通してこのデータ要求を他のノードに渡す。また、データ要求に応答してメモリのアクセスを開始し、各ノード内の各プロセッサのプロセッサキャッシュをスヌープする。従って、該要求を発行するプロセッサを持つノード内の（あるいは別のノードの）プロセッサキャッシュまたはメモリ内のデータの格納場所を識別する。さらに、ルータシステムにて２つの直接結合されたノード間でデータを要求する方法と、相互接続システム内の３またはそれ以上のノード間でのデータ要求方法と、相互接続システム内のクロスケースの解消方法と、ノードを直接またはプロトコルエンジンを通して結合するための相互接続システムも開示する。【選択図】図１
2010250863.tif 000002
【特許請求の範囲】
【請求項１】
複数のプロセッサを各々が有する複数のノードを備える相互接続システムにおけるデータ要求方法において、
ローカルノードから前記データ要求を発行する段階と、
前記ローカルノード内のローカルメモリに対するアクセスを開始する段階と、
前記の要求されたデータが前記ローカルノード内のプロセッサのプロセッサキャッシュ内にあるか否かを決定すべく該ローカルノードの各プロセッサのプロセッサキャッシュをスヌープすると共に、該要求されたデータが該ローカルノード内のプロセッサのプロセッサキャッシュ内にあることに応答して該プロセッサキャッシュから前記データのコピーを得る段階と、
遠隔ノード内の各プロセッサのプロセッサキャッシュをスヌープすると共に、前記の要求されたデータが前記遠隔ノード内のプロセッサの前記プロセッサキャッシュ内にあることに応答して、該遠隔ノードのプロセッサキャッシュから、そのデータのコピーを得る段階と、
前記ローカルノードまたは遠隔ノードの前記プロセッサキャッシュ内にデータがないことに応答して、前記ローカルメモリからそのデータを検索する段階と、
を含むことを特徴とするデータ要求方法。
【請求項２】
複数のプロセッサを各々が有する少なくとも３つのノードを備える相互接続システムにおけるデータ要求方法において、
ローカルノードからデータの要求を発行する段階と、
前記データ要求に応答して、そのデータのアドレスが遠隔ノード内にあるか否かを決定すべくプロトコルエンジン内のディレクトリに対して探索を行うと共に、そのデータのアドレスが該ディレクトリ内にあることに応答して該遠隔ノードからそのデータを検索する段階と、
そのデータのアドレスが前記ディレクトリ内にないことに応答して前記ローカルノード内の各プロセッサのプロセッサキャッシュをスヌープすると共に、そのプロセッサキャッシュ内にそのデータがあることに応答して該ローカルノード内のプロセッサのプロセッサキャッシュからそのデータを検索する段階と、
を含むことを特徴とするデータ要求方法。
【請求項３】
前記データが前記遠隔ノード内にあることを決定したことに応答して、該遠隔ノードの遠隔メモリからそのデータを検索する段階をさらに含む請求項２に記載のデータ要求方法。
【請求項４】
前記データ要求に応答して前記ローカルノード内のメモリに対する思索的メモリアクセスを開始する段階をさらに含む請求項２に記載のデータ要求方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、共有メモリノード用ポート、より特定的には、２以上のノードを相互に接続するためのスケーラブルポートに関する。
【背景技術】
【０００２】
従来のスケーラブルマルチプロセッサは、相互接続システムを用いて相互に接続されたマルチノードで構成されている。各ノードは、プロセッサ、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）および入出力（Ｉ/Ｏ）デバイスからなる。プロセッサ、ＤＲＡＭおよびＩ/Ｏデバイスは、バスと結合している。単一チップセットもまた、バスと結合し、全ての構成要素間の相互動作を制御する。
【０００３】
単一チップセットはまた、従来の相互接続ポートとも結合する。従来の相互接続ポートは、相互接続システム内で各ノードを相互に物理的に接続することを可能にする外部インタフェースである。各マルチノードを相互に接続することによって、共有メモリシステムを構築することが可能となり得る。共有メモリシステムの一例としては、キャッシュコヒーレント（Ｃａｓｈｅ  Ｃｏｈｅｒｅｎｔ）、不均一メモリアクセス（Ｎｏｎ−Ｕｎｉｆｏｒｍ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）（ＣＣ−ＮＵＭＡ）アーキテクチャがある。
【０００４】
相互接続システムにおいて、１つのノードをもう１つのノードに接続するためには、相互接続ポートが必要である。２つのノードしか存在しない場合、相互接続ポートは、これら２つのノードのみの間の通信用として最適化される。２ノードシステム内の専用相互接続ポートが、３以上のノードをもつシステムよりも一般的であり広く使用されている。しかしながら、相互接続ポートはかかる２ノードシステムの専用ともなっていることから、該相互接続ポートは２ノードを超えてスケール（ｓｃａｌｅ）することはできない。
【０００５】
２以上のノードを相互接続するためには、相互接続ポートと付加的な各ノードとの間に、付加的なハードウエアを追加することが必要である。この付加的なハードウエアは、ポートをスケールするのに使用される。付加的ハードウエアはまた、システムの全体的コストをも増大させる。さらに付加的ハードウエアは、付加的なシステムスペースを必要とし、スペースが限定された環境およびアプリケーションのためにはさほど好適なものではない。付加的ハードウエアはまた、信号遅延点の数を増加させ、このことが今度は、全体的システム性能の減少をひき起こす。付加的なハードウエアとそれから生ずる問題とが、このような従来の相互接続ポートが、２つしかノードをもたないシステムにとって望ましくないものにしてしまうもう１つの理由となる。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
要約すると、従来の相互接続システムに伴ういくつかの問題点は、相互接続システムからノードを除去しまたはこれに追加する場合に、最高３つの異なるタイプの相互接続ポートが必要となる可能性がある、ということにある。ノードが１つしかない場合、いかなる相互接続ポートも必要とされない。２つのノードが存在する場合には、スケール不可の相互接続ポートが必要とされる。３以上のノードが存在する場合、スケーラブル相互接続ポートが必要とされる。しかしながらこのスケーラブル相互接続ポートは２ノードシステムには効率の悪いものである。
【０００７】
従って、（１）スケーラブルで、（２）２ノードシステムのときと同様に、３以上のノードをもつシステムにおいても高い性能を示し、（３）付加的なノードがシステムに追加されたときでもシステムコストを増大させない、といった相互接続ポートが要請される。
【課題を解決するための手段】
【０００８】
本発明の相互接続システムは、相互に結合され通信し合うノードを含む。該相互接続システムは、１つのノード，２つのノードまたはそれ以上のノードを含むことができる。１つのノードを有する相互接続システムにおいてはそのノードしか存在しないことから、相互接続は全く無い。２ノードシステムでは、両方のノードを互いに直接接続して相互接続システムを形成することができる。３以上のノードをもつシステムでは、各ノードは互いに直接接続しない。むしろ、各ノードはプロトコルエンジンを含み、そのプロトコルエンジンは全て結合して相互接続システムを形成する。一般に、各ノードはノード制御部、メモリシステム、入出力（「Ｉ/Ｏ」）システム、および中央処理ユニットといったような１またはそれ以上の処理ユニットを含む。各処理ユニットは、データを格納可能な連係するプロセッサキャッシュを含む。
【０００９】
２ノードおよび２ノード以上のケースの両方において、ノードは相互接続ポートを通して結合する。この相互接続ポートは、スケーラビリティまたは拡張ポートと呼ぶことができる。相互接続ポートは、物理層、信号プロトコル層、コマンドプロトコル層およびコヒーレンスプロトコル層を含む。物理層は信号を送信または受信する。信号プロトコル層は物理層を使用し、受信信号または送信信号のいずれかとの関係を規定する。コマンドプロトコル層は、信号プロトコル層に結合し、受信信号に応答したデータ要求または、送信信号を準備することに応答した回答を生成する。コヒーレンスプロトコル層はコマンドプロトコル層を使用し、データ要求または回答のいずれかに応答して、データのリーガル（ｌｅｇａｌ）トランザクションセットを提供する。
【００１０】
物理層、信号プロトコル層およびコマンドプロトコル層は対称層である。コヒーレンスプロトコル層は、非対称層である。相互接続ポートのこの有利な設計により、２ノードおよび３ノード以上の相互接続システムの両方に対する該ポートの汎用の応用が可能となる。対称的な設計およびポートの構造によって、相互接続システム内の各ノードは主従いずれにもなることができる。例えば、２ノード相互接続システムにおいては、ポートは２つのノードを直接接続することを可能にする。これにより、相互接続システムの動作効率が向上して両方のノードは主従いずれともなり得、従ってソース要求および／またはプロセス要求のいずれともなり得る。さらに、ポートが対称という性質をもつことから、付加的なシステム構成要素や資源を必要とすることなく、相互接続システム内で３以上のノードを接続することができる。
【００１１】
本発明はまた、パイプラインによるおよびそれによらないメモリアクセスをも含む。それは、より特定的には、デュアルおよびマルチノードシステムのためのリーガルトランザクションを可能にするローカルおよび遠隔コヒーレンスプロトコルを含む。パイプライン環境においては、本発明は、待ち時間が短縮されることから、データアクセスのためのシステム全体の速度を高める。例えば、本発明によれば、データに対するローカルメモリアクセスが生じている場合でさえ、思索的スヌープ（ｓｐｅｃｕｌａｔｉｖｅ  ｓｎｏｏｐ）および思索的メモリアクセスを生じさせることができる。さらに、ディレクトリが、データが遠隔に常駐すると決定した場合、このデータのアクセスを開始するためのフォローアップを待つ必要がない。こうして、システム全体の効率は向上し、待ち時間は減少する。
【００１２】
本発明はまた、クロスケース（ｃｒｏｓｓｉｎｇ  ｃａｓｅ）も取り扱っている。クロスケースでは、一方の側（またはノード）は、特定のアドレスについて、他方の側（またはノード）に要求を送り、その要求に対する回答を受信する前に、該他方の側からこのアドレスへの要求を受信する。本発明の場合のように、クロスケースを取り扱うことの利点は、引き続くプロセッサ要求を破棄（または消去）することなしに、かかるケースを解消できるということにある。むしろ、後続のデータ要求は、それに先行する要求の後に有利に処理される。その上、一部の例では、後続の要求は、例えば特定の要求をリトライできない場合などに、先行の要求より前に有利に処理される。
【００１３】
明細書に記載される特徴および利点は、全てを包括するものではなく、特に、当業者には図面、明細書および特許請求の範囲に鑑み、数多くの付加的な特徴および利点が明らかになることだろう。その上、本明細書で使用された用語は主として読み易さおよび教示を目的として選択されたものであり、本発明の主題を限定または制限するために選択されたものでない、ということを理解すべきである。
【図面の簡単な説明】
【００１４】
【図１】本発明によるスケーラブルノードの一実施形態のブロック図である。
【図２】本発明による第１および第２のノードを有する小型システム構成の一実施形態のブロック図である（その１）。
【図３】本発明による例えば５つのノードを含む大型システム構成の一実施形態のブロック図である（その２）。
【図４】本発明によるスケーラビリティポートのプロトコル階層化の一実施形態の図である。
【図５】本発明によるスケーラビリティポートを有するスケーラブルノードを使用した、パイプラインによらないローカルおよび遠隔メモリアクセスの一実施形態についてのプロセスタイミング図（その１）である。
【図６】本発明によるスケーラビリティポートを有するスケーラブルノードを使用した、パイプラインによらないローカルおよび遠隔メモリアクセスの一実施形態についてのプロセスタイミング図（その２）である。
【図７】本発明によるスケーラビリティポートを有するスケーラブルノードを使用した、パイプラインによるローカルおよび遠隔メモリアクセスの一実施形態についてのプロセスタイミング図（その１）である。
【図８】本発明によるスケーラビリティポートを有するスケーラブルノードを使用した、パイプラインによるローカルおよび遠隔メモリアクセスの一実施形態についてのプロセスタイミング図（その２）である。
【図９】本発明によるスケーラビリティポートを有するスケーラブルノードを使用した、パイプラインによるローカルおよび遠隔メモリアクセスの一実施形態についてのプロセスタイミング図（その３）である。
【図１０】本発明によるスケーラビリティポートを用いた融通性あるクロスケース解消の一実施形態についてのプロセス図（その１）である。
【図１１】クロスケースにおいてデータ要求を処理するためのグローバル順序を決定するためのプロセスの一実施形態を示す図（その２）である。
【発明を実施するための形態】
【００１５】
図は、例示のみを目的として本発明の好ましい実施形態を表している。当業者であれば、以下の説明から、本明細書に例示されている構造および方法の変形実施形態を、請求対象の発明の原理から逸脱することなく利用することができる、ということを容易に認識することだろう。
〔スケーラブルノード〕
本発明は、相互接続システム（例えば、ルーティングシステム）内で２以上のノードを接続することを可能にするスケーラブル相互接続ポートを含む。スケーラブル相互接続ポートは、有利には、２つのノードまたは３以上のノードと効率よく使用され得るよう、対称になっている。こうして有益なことに、相互接続システム内での付加的ハードウエアの量は減少する。
【００１６】
相互接続システムは、各スケーラブルノード間で、命令、データおよびその他の信号を受け渡しすることができるよう、２以上のスケーラブルノードを通信可能に結合する。各スケーラブルノードは、相互接続システム内にて、命令、データまたはその他の信号を処理する例えば中央処理ユニットといった処理ユニットを含む。
【００１７】
図１は、本発明によるスケーラブルノード１０５の一実施形態のブロック図である。スケーラブルノード１０５は、ノード制御部１１０，メモリシステム１１５，入出力（「Ｉ/Ｏ」）システム１２０および１またはそれ以上の処理ユニット、例えば中央処理ユニット１２５ａ〜１２５ｎ（一般に１２５）を含む。メモリシステム１１５は、例えばダイナミックランダムアクセスメモリシステム、スタティックランダムアクセスメモリシステムなどといった従来のメモリシステムである。Ｉ/Ｏシステム１２０は、例えば、記憶デバイス、入力デバイス、周辺デバイスなどといった従来のＩ/Ｏシステムである。中央処理ユニット１２５は、例えば、インテルまたはインテル互換Pentium（登録商標）TMクラスまたはそれ以上のプロセッサ、Ｓｕｎ  ＳＰＡＲＣTMクラスまたはそれ以上のプロセッサまたはＩＢＭ／Ｍｏｔｏｒｏｌａ  Ｐｏｗｅｒ  ＰＣTMクラスまたはそれ以上のプロセッサといったような従来の処理ユニットである。
【００１８】
ノード制御部１１０は、第１の信号ラインセット１３５ａを通してメモリシステム１１５と通信可能に結合し、第２の信号ラインセット１３５ｂを通してＩ/Ｏシステム１２０と通信可能に結合する。さらに、ノード制御機構１１０は、第３の信号ラインセット１３０を通して中央処理ユニット１２５ａ〜１２５ｎの各々と通信可能に結合する。第１の信号ラインセット１３５ａ，第２の信号ラインセット１３５ｂおよび第３の信号ラインセット１３０は、例えばデータバス、１またはそれ以上のデータワイヤなどのあらゆる信号通信媒体であり得る。
【００１９】
ノード制御部１１０はまた、他のスケーラブル（ｓｃａｌａｂｌｅ）ノードの他のノード制御部により形成されたスケーラビリティポートの他の部分とスケーラブル（またはスケーラビリティ）ポート（またはスケーラブル 相互接続ポート）を形成する。特定的には、ノード制御部１１０は、ノード信号ライン１４０を通して１またはそれ以上のその他のノードと通信可能に結合させる。ノード信号ライン１４０は、別のノードのノード制御部と直接結合することもできるし、また 相互接続システムと直接接合することもできる。以下でさらに記述するように、スケーラビリティポート１５０は、２つのスケーラブルノードを背面突合わせで結合できるようにし、また相互接続システム内で３つ以上のスケーラブルノードを合わせて結合することをも可能にする。スケーラビリティポートを拡張ポートとみなすこともできるということに留意されたい。
【００２０】
一般に、相互接続システムは、１つのノード、２つのノードまたはそれ以上のノードを含むことができる。ノード１つを伴う相互接続システムは、相互接続システム内に１つのノードしか存在しないことから、相互接続を必要としない。２ノードシステムにおいては、両方のノードは互いに直接接続されて相互接続システムを形成し得る。２ノード以上のシステムにおいては、各ノードは直接互いに接続しない。むしろ各ノードは、プロトコルエンジン例えば３４０を含んで、全てのプロトコルエンジンが、一緒に結合して相互接続システムを形成する。
【００２１】
図２は、本発明による２ノード相互接続システムの一実施形態のブロック図である。該２ノード相互接続システム構成は、第１のスケーラブルノード２１０ａおよび第２のスケーラブルノード２１０ｂを含む。各スケーラブルノード２１０ａ，２１０ｂは、図１において上述されたスケーラブルノード１０５と機能的に等価である。第１のスケーラブルノード２１０ａおよび第２のスケーラブルノード２１０ｂは、付加的なシステム構成要素を必要とすることなく、１またはそれ以上のノード信号ライン１４０を通して背面突合わせで通信可能に結合できる。より特定的には、２ノード相互接続システム構成内の各ノードは対称である。すなわち、各ノードは、主（例えば要求を発生する）としておよび従（例えば要求を処理する）として、機能し得る。
【００２２】
相互接続システムの動作中、第１のスケーラブルノード２１０ａおよび第２のスケーラブルノード２１０ｂは、ノード信号ライン１４０を通して相互間で直接、命令およびデータ信号を伝送できる。ここでもまた、スケーラブルノードは対称であることから、小型のシステム構成でいかなる付加的構成要素も必要としない。各スケーラブルノード２１０ａ，２１０ｂと連係した例えばスケーラビリティポート１５０といったスケーラビリティポートは、スケーラブルノード２１０ａ，２１０ｂ間に対称性が存在することを保証する。このことは、スケーラブルノードを背面突合わせ構成で結合し動作させるのに、プロトコルエンジンといったようないかなる付加的なハードウエア、ソフトウエアまたはファームウェアも必要としないことから、システム全体のコストを低減させる。
【００２３】
図３は、本発明によるマルチノード（３つ以上のノード）相互接続システム構成の一実施形態のブロック図である。マルチノード相互接続システム構成は、３またはそれ以上のスケーラブルノード３１０ａ〜３１０ｎ（総称して３１０），ノード制御ライン３２０ａ〜３２０ｎ（総称して３２０），プロトコルエンジン３４０ａ〜３４０ｎ（総称して３４０），および相互接続システム３３０を含む。各スケーラブルノード３１０ａ〜３１０ｎは、図１で上述したスケーラブルノード１０５と機能的に等価である。各スケーラブルノード３１０ａ〜３１０ｎは、そのそれぞれのノード制御ライン３２０ａ〜３２０ｎを通して相互接続システム３３０と結合する。プロトコルエンジン３４０ａ〜３４０ｎは、ノード３１０ａ〜３１０ｎ間の通信を可能にする。
【００２４】
各スケーラブルノード３１０は、ノード間の通信を達成させる、例えばスケーラビリティポート１５０といったようなスケーラビリティポートを含む。スケーラビリティポート１５０をスケーラブルノード３１０内に含むことの利点は、それにより、例えば２１０といった２つのスケーラブルノードの背面突合わせを可能とし、かつ相互接続システム３３０を通して３またはそれ以上のスケーラブルノード３１０を一緒に結合することを可能にする、という点にある。スケーラブルノード例えば１０５，２１０，３１０は、それが使用する通信結合の構成の如何にかかわらず、付加的な構成要素を必要としない。従って、スケーラブルノードが背面突合わせするかまたは相互接続システム３３０を通して結合するかにかかわらず、本発明のスケーラブルノードは、効率の良いかつ融通性ある通信プロトコルに対応できる。
【００２５】
図４は、本発明によるスケーラビリティポート１５０のプロトコル階層化の一実施形態を例示している。好ましい実施形態においては、スケーラビリティポート１５０は、積層構造に類似した構成の通信プロトコルを含んでなる。特定的には、スケーラビリティポート１５０は、物理層１５５，信号プロトコル層１６０，コマンド／データプロトコル層１６５およびコヒーレンスプロトコル層１７０を含む。物理層１５５は、信号プロトコル層１６０と通信可能に結合する。信号プロトコル層１６０は、コマンド／データプロトコル層１６５と通信可能に結合する。コマンド／データプロトコル層１６５は、コヒーレンスプロトコル層１７０と結合する。物理層１５５，信号プロトコル層１６０およびコマンド／データプロトコル層１６５は対称層である。かくしてこれらの層へおよびそこから移行する信号および応答は対称である。例えば、各要求は対応する回答を有し、逆も同様である。第４の層、コヒーレンスプロトコル層１７０は対称でなく、従って、相互接続システム内で生じ得るデッドロックを消滅させることができる。
【００２６】
物理層１５５は、集積回路チップまたはチップセット上に存在する、入出力接続あるいは「ピン」を規定する。信号プロトコル層１６０は、システム内の信号が何をするのか、およびそのタイミング、を規定する。信号プロトコル層１６０はまた、相互接続システム内でいつ有効なトランザクションが発生するかをも決める。コマンド／データプロトコル層１６５は、要求および応答タイプのモードで機能する。特に、コマンド／データプロトコル層１６５は、一方または他方に対する要求されるかまたは要求に応えて提供されるデータおよびコマンド（命令を含む）を発行または受け取るように機能する。
【００２７】
コヒーレンスプロトコル層１７０は、異なるノード上のプロセッサ間でグローバルコヒーレンスプロトコルを維持するためのリーガル（ｌｅｇａｌ）トランザクションを規定する。すなわち、コヒーレンスプロトコル層１７０は、スケーラビリティポート１５０が関与するある与えられたトランザクションに対するルール（ｒｕｌｅ）を規定する。このルールは、スケーラブルノードが直接もう１つのスケーラブルノード（リーガルトランザクション要素１７２）と結合する場合およびスケーラブルノードが相互接続システム（プロトコルエンジン要素１７４）と結合する場合の、許可（ｐｅｒｍｉｔｔｅｄ）トランザクションを規定する。
〔パイプラインによるおよびそれによらないメモリアクセス〕
図５および６は、本発明によるスケーラビリティポート１５０を有するスケーラブルノード１０５を用いた、パイプラインによらない遠隔およびローカルメモリアクセスを用いた実施形態のためのプロセスタイミング図である。特にこれらの図は、ローカルメモリアクセスおよび遠隔メモリアクセスを処理するときに起こるさまざまな動作の従属性およびタイミングを例示する。これらのタイミングおよび従属性は、スケーラブルノード１０５のスケーラビリティポート１５０が、パイプライン化コマンドセットではなくむしろ単純な要求／回答コマンドセットを使用する場合について示されている。
【００２８】
記述はメモリに対する要求に関するものであるが、当業者であれば、本明細書に記述された原理および概念を、例えば入出力要求、コマンド要求、資源要求などといったような、その他のプロセッサ要求にも応用できるということを理解することだろう。各プロセッサ要求は、例えばデータまたは入出力資源についての要求であり得るコンテンツを含んでいる。簡単のために、プロセッサ要求は、以下一般にデータ要求と称する。
【００２９】
さらに、当業者であれば、データ要求には、データが置かれているメモリシステムアドレスを提供することも含むことを理解することだろう。「ローカル」動作が関係する記述には、プロセッサがデータ要求を発行したノードにおける動作が含まれる。その他のノードにおける動作には、「遠隔」動作が関係する。例えば、プロセッサ１２５のローカルアクセス要求には、そのプロセッサ１２５が中に置かれているスケーラブルノード１０５内のメモリシステム１１５にアクセスすることが関係している。このスケーラブルノード１０５をこの場合、ローカルノードと呼ぶことができる。遠隔メモリアクセス要求には、別のスケーラブルノードのメモリシステムにアクセスすることが関係する。このスケーラブルノードはこの場合、遠隔ノードと呼ぶことができる。
【００３０】
図５は、データが遠隔ノードの中にあるような遠隔メモリアクセスを例示する。この場合、プロセッサ１２５は、データの場所を特定するため遠隔メモリに対してメモリアクセスを発行する（４１０）。このときノード制御部１１０は、データ要求を発行したプロセッサ１２５のローカルバス上のコヒーレンスを決定する（４１５）。コヒーレンスは、各プロセッサがそのキャッシュ内にデータ（またはライン）の修正済みコピーを有しているか否かを見るため、ローカルバス上で各プロセッサをチェックする。有する場合、データはそのプロセッサにより供給されることになる。一実施形態においては、ローカルバス上のコヒーレンスの決定（４１５）は、シリアル化されたプロセスである。スケーラビリティポート、例えば１５０は、あらゆるコヒーレンスプロトコルをサポートすることができる。当業者であれば、利用可能であるさまざまなコヒーレンスプロトコルを認識することであろう。
【００３１】
次にプロセスは、データのスケーラビリティポート要求を発行する（４２０）。この要求は、現在置かれている場所からデータを得る要求である。特定的には、この要求は、遠隔コヒーレンスの決定（４２５）および遠隔ノードでの遠隔メモリシステムのアクセス（４３０）を含む。一実施形態においては、決定（４２５）およびアクセス（４３０）は、概念上分離しているが、シリアルに機能する。
【００３２】
遠隔コヒーレンスの決定（４２５）は、２ノードシステムの場合とマルチノードシステムの場合では異なることがある。２ノードシステムにおいては、遠隔コヒーレンスを決定すること（４２５）には、遠隔バスのスヌープ（すなわちデータの問合せ）が関係する。マルチノードシステムにおいては、遠隔コヒーレンスを決定すること（４２５）には、ディレクトリ探索オペレーションを実施することが関係する。ディレクトリ探索オペレーションは、その他のノードにおいてメモリシステム内に記憶されたデータに関する情報を提供する。好ましい実施形態においては、ディレクトリは、プロトコルエンジン３４０およびノード１０５のその他の要素とは分離したメモリまたはレジスタ内にあるテーブルである。一変形実施形態においては、ディレクトリは、プロトコルエンジン３４０内のメモリまたはレジスタ内にある。遠隔メモリにアクセスすること（４３０）には、遠隔メモリにアクセスすることおよび、遠隔ノードにおいてそのデータについて遠隔プロセッサキャッシュをスヌープ（ｓｎｏｏｐ）することが含まれる。
【００３３】
遠隔コヒーレンスまたはメモリアクセスオペレーションを通してデータがひとたび発見されたならば、データプロセスはスケーラビリティポート回答メッセージを準備し発行する（４３５）。このメッセージは、プロセッサ１２５によって要求されたデータを含む。データはこのとき、プロセッサ１２５に送信される（４４０）。
【００３４】
図６は、データがローカルノードに置かれている場合のローカルメモリアクセスを例示している。この場合、プロセッサ１２５は、ローカルメモリシステム内でデータの場所を特定するためメモリアクセス（４６０）を発行する（４５０）。このデータは直接、そのデータを要求するプロセッサ１２５に送信することができる（４８０）。同時に、該プロセスは、データのメモリアクセスを発行したプロセッサ１２５のローカルバス上のコヒーレンスを決定する（４５５）。次に該プロセスは、コヒーレンスチェックのスケーラビリティポート要求を発行する（４６５）。この要求は、現在置かれている場所からデータを得る要求である。特定的には、この要求は、遠隔コヒーレンスの決定（４７０）を含む。上述のように、遠隔コヒーレンスの決定（４７０）には、そのデータがもう１つのノード内に置かれているか否かを決定するため、２ノードシステム内ではバススヌープまたマルチノードシステム内ではディレクトリ探索することが含まれている。データはローカルであるものの、遠隔プロセッサがその遠隔ノードにおいてデータをキャッシュしたか否かを決定するためには、ディレクトリ探索が必要である。
【００３５】
データが遠隔ノードにおいてキャッシュされた場合、データはその遠隔キャッシュから検索される。特定的には、データが遠隔ノードに置かれている場合、プロセスは、要求中のプロセッサへのデータを含むスケーラビリティポート回答を発行する（４７５）準備をする。このとき、データはプロセッサ１２５に送信される（４８０）。ここでもまた、ローカルバスコヒーレンスの決定（４５５）および遠隔コヒーレンスの決定（４７０）は共にシリアル化されたプロセスであるという点に留意されたい。データが正しく検索され得るようにするためには、ローカルノードは、遠隔キャッシュの場合のデータを返送する前に、スケーラビリティポートからの回答を待たなくてはならない。ローカルコヒーレンスは、遠隔コヒーレンスとシリアル化されているので、応答は遅いものとなり、かくして性能劣化を生じさせる。パイプライン化プロセスは、これを回避し、向上されたデータスループット性能を提供する。
【００３６】
図７，８および９は、本発明によるスケーラビリティポートを使用した、パイプラインによるローカルおよび遠隔メモリアクセスの一実施形態についてのプロセスタイミング図である。図７は、遠隔メモリへの、パイプラインによるメモリアクセスについてのプロセスタイミング図である。プロセスは、プロセッサが遠隔メモリにメモリアクセスを発行した（５１０）ときに開始する。次に、プロセスは、データのスケーラビリティポート要求を発行する（５１２）よう準備する。プロセスは次に、外に出てデータを得る。具体的には、プロセスは、遠隔メモリにアクセスし（５１６），ローカルバスでのコヒーレンスを決定し（５１８），遠隔コヒーレンスを決定する（５１４）。
【００３７】
遠隔メモリへのアクセス（５１６）は、データの場所を特定するため遠隔ノードのメモリシステムにアクセスすることを含む。ローカルバスコヒーレンスの決定（５１８）は、メモリアクセスを発行中のプロセッサ１２５が置かれているローカルバス上のデータのメモリスヌープを含む。このプロセスは、データがローカルノードにおいてプロセッサ内にキャッシュされているか否かを決定する。
【００３８】
マルチノードシステムにおいては、遠隔コヒーレンスの決定（５１４）には、そのデータが遠隔ノードに置かれているか否かを決定するためのローカルノードにおけるディレクトリ探索が含まれる。２ノードシステムでは、遠隔コヒーレンスの決定（５１４）は、遠隔ノードにおける思索的（ｓｐｅｃｕｌａｔｉｖｅ）スヌープオペレーションまたは思索的メモリアクセスオペレーションのいずれかを含んでいる。２ノードシステムにおいては、遠隔ノードにおける遠隔プロセッサの遠隔キャッシュのスヌープを含む思索的スヌープオペレーションがある。このオペレーションは、ローカルノードもまたデータについて問合されている一方で遠隔ノードがデータについて問合されることから、思索的と呼ばれる。これをスヌーピングと呼ぶこともできる。
【００３９】
コヒーレンス決定（５１８）が完了したときに、プロセスは、スケーラビリティポートフォローアップメッセージを発行する（５２０）。このメッセージは、データがローカルキャッシュ内に置かれているか否かについての情報を、プロセスに対して提供する。データがひとたびローカルにまたは遠隔に特定されたときに、プロセスは、場所が特定されたデータを含み得るスケーラビリティポート回答メッセージを発行する（５２２）準備をする。次に、データは、それを要求したプロセッサ１２５に送信される（５２４）。
【００４０】
図８は、ローカルメモリに対する、パイプラインによるメモリアクセスのプロセスタイミング図である。このプロセスは、プロセッサ１２５がメモリアクセスをローカルメモリシステム１１５に対して発行した（５３０）ときに開始する。プロセスは直ちに、思索的な形でローカルメモリシステム１１５にアクセスする（５３６）。次に、プロセスは、スケーラビリティポート要求を発行する（５３５）準備をする。プロセスは、ローカルバス上のコヒーレンスの決定（５３８）ならびに遠隔ノードにおけるコヒーレンスの決定（５３４）について続行する。ローカルバスコヒーレンスの決定（５３８）には、データがローカルプロセッサキャッシュのいずれかの中に常駐するか否かを見るために、これらのキャッシュのいずれかでのスヌープが含まれる。
【００４１】
遠隔コヒーレンスの決定（５３４）は、２つのやり方のうちの一方で機能する。マルチノードシステムについては、その決定には、データが遠隔ノードに置かれているか否かを決定するためのディレクトリ探索を含んでいる。これは、思索的（ｓｐｅｃｕｌａｔｉｖｅ）ディレクトリ探索と呼ぶことができる。２ノードシステムにおいては、遠隔ノードの思索的スヌープオペレーションか思索的メモリアクセスオペレーションかのいずれかが存在する。思索的スヌープオペレーションは、遠隔ノードにおける遠隔プロセッサの遠隔キャッシュのスヌープを含む。思索的メモリアクセスオペレーションは、ローカルメモリシステムにアクセスする。
【００４２】
次に、プロセスは、スケーラビリティポートフォローアップ（ｆｏｌｌｏｗ−ｕｐ）メッセージを発行する（５４０）。このメッセージはプロセスに、データがローカルキャッシュ内に置かれたか否かについての情報を提供する。フォローアップメッセージは、思索的スヌープを取消すことができる。ひとたびデータがローカルにまたは遠隔に特定されたならば、プロセスは、その場所の特定されたデータを含むスケーラビリティポート回答メッセージを発行する（５４２）準備をする。データは次に、そのデータを要求したプロセッサ１２５に送信される（５４４）。
【００４３】
図９は、ローカルメモリに対する、パイプラインによるメモリアクセスのプロセスタイミング図である。この場合、データは究極的に遠隔ノード内にあることが分かっており、データは「ダーティー」（ｄｉｒｔｙ）とみなされる。ダーティーデータというのは、そのデータが遠隔ノードにおいて変更されてしまった可能性があることを意味する。プロセスは、プロセッサ１２５がローカルメモリシステム１１５に対してメモリアクセスを発行した（５５０）ときに開始する。プロセスは、ローカルメモリシステム１１５に直ちにアクセスする（５５６）。次にプロセスは、スケーラビリティポート要求を発行する（５５２）準備をする。プロセスは、ローカルバス上のコヒーレンスの決定（５５８）ならびに遠隔ノードでのコヒーレンスの決定（５５４）について続行する。ローカルバスコヒーレンスの決定（５５８）には、データがローカルプロセッサキャッシュのいずれかに常駐しているか否かを見るために、これらのキャッシュ内でのスヌープを含んでいる。
【００４４】
遠隔コヒーレンスの決定（５５４）は、マルチノードシステムまたは２ノードシステムのいずれが存在するか、に基づいている。マルチノードシステムでは、ディレクトリ探索により、そのデータが遠隔ノードに置かれているか否かを決定する。より特定的には、ディレクトリ探索により、キャッシュディレクトリデータを検出し、次には究極的にそのデータを獲得する。２ノードシステムでは、遠隔ノードの思索的スヌープオペレーションまたは思索的メモリアクセスオペレーションのいずれかが存在する。思索的スヌープオペレーションは、遠隔ノードにおける遠隔プロセッサの遠隔キャッシュのスヌープを含む。思索的メモリアクセスオペレーションにより、遠隔ノードにおいて遠隔ノードシステムをアクセスする。
【００４５】
次に、プロセスは、フォローアップメッセージを発行し（５６０），ペンディングヒント（ｐｅｎｄｉｎｇ  ｈｉｎｔ）メッセージを受信する。ペンディングヒントは、ローカル側遠隔ディレクトリのためのものである。ペンディングヒントメッセージは、ローカルメモリシステムへのアクセスを取消すかまたは停止する（５６４）。データは遠隔ノード内、例えば該遠隔ノード内のプロセッサのキャッシュ内にあることが分かっていることから、プロセスは、ローカルメモリシステム１１５へのアクセスを停止する（５６４）。ひとたびデータが遠隔ノードから検索されると、プロセスは、場所が特定されたデータを含むスケーラビリティポート回答メッセージを発行する（５６６）。次に、そのデータを要求したプロセッサ１２５に該データが送信される（５６８）。
【００４６】
本発明の利点は、本発明が、デュアルおよびマルチノードシステムのためのリーガル（ｌｅｇａｌ）トランザクションを可能にする、ローカルおよび遠隔コヒーレンスプロトコルを含むという点にある。さらに、パイプライン環境においては、本発明は有益なことに、待ち時間が短縮されることから、データアクセスの全体としての性能が向上する。特に、データに対するローカルメモリアクセスが発生している場合でさえ、思索的スヌープおよび思索的メモリアクセスは発生する。さらに、データが遠隔に常駐していることをプロセスが直接決定したときは、該プロセスは、このデータのアクセスを開始するためのフォローアップを待つ必要がない。こうしてさらに、システム全体の効率が向上し、待ち時間が減少する。
〔クロスケース〕
一部のトランザクションにおいては、２以上のスケーラブルノードが、同時にかまたは比較的それに近い状態で同じデータを要求することがある。これらの場合は、クロス（ｃｒｏｓｓ）ケースと呼ばれる。クロスケースでは、一方の側が特定のアドレスについての要求を他方の側に送り、その要求に対する回答を受け取る前に他方の側からこのアドレスについての要求を受け取る。このクロスケースを解消するためには、各スケーラブルノードはこのクロスケースを検出しなければならず、次に各スケーラビリティポート側が同じ順序で要求を処理すべくデータの各要求（またはトランザクション）を処理する順序を決定する助けとなる一組の規則に、該各スケーラブルノードは従わなくてはならない。
【００４７】
図１０は、本発明によるスケーラビリティポートを使用した融通性あるクロスケース解消の一実施形態についてのプロセス図である。該プロセスが開始すると（６１０）、別のノードからデータの要求を受信する（６１５）。プロセスは、このデータ要求と未解決データ要求のリストとを一致（ｍａｔｃｈ）させる（６２０）。一実施形態においては、その未解決データ要求リストは、特定のスケーラブルノードとそのデータに対するコミットポイント（ｃｏｍｍｉｔ  ｐｏｉｎｔ）とによって要求されているアドレスリストを含む。コミットポイントは、スケーラブルノードによるデータ要求がリスト内に格納された時間のことである。
【００４８】
各スケーラビリティポート側は、要求のクロスに起因して異なる順序でリストされた各要求を有することがある、該スケーラビリティポート独自のコミットリストを保持している。システムは、スケーラビリティポートの両側が処理要求に関して同じ順序を用いるようにして、要求のクロスを解消するように、機能する。一実施形態においては、未解決データ要求リストはテーブルフォーマット内にあり、メモリシステム１１５または別のメモリ内に格納される。
【００４９】
現状のデータ要求と未解決データ要求リスト内のいずれかのデータとの間に一致（６２０）が全くない場合、プロセスはサービス要求（６３０）へ進む。一実施形態においては、プロセスは、図５〜図９において述べたパイプラインによらないまたはパイプラインによるプロセスのいずれかを用いて、その要求を処理する（６３０）。現状のデータ要求と未解決データ要求リスト内のデータとの間に一致が存在する場合（６２０），プロセスは、そのデータ要求を処理するためのグローバルな順序を決定する（６２５）。グローバルな順序プロセスは、データ要求の処理順序に対する再順序づけを生じさせることができる。要求を再順序づけする１つの方法は、第１の要求がリトライされる場合に、それが第２の要求の後にくるような形で該第１の要求をリトライする、というものである。
【００５０】
図１１は、データ要求を処理するためのグローバルな順序を決定する（６２５）ためのプロセスの一実施形態を例示している。グローバル順序プロセスが開始した（６３５）ときに、それは、そのデータ要求がリトライされ得ない要求であるか否かを決定する（６４０）。データ要求がリトライできないものである場合、グローバル順序プロセスは、クロスケース解消プロセスを現時点でのデータ要求の処理（６３０）とする。データ要求がリトライ可能である場合、グローバルプロセス順序は、その要求が優先コマンドであるか否かを決定する（６４５）。一実施形態においては、キャッシュコヒーレンスプロトコルは、スケーラビリティポートの一方の側のみが一度にリトライ不能要求を発行することができるようにする。
【００５１】
データ要求が優先的なものである場合、グローバル順序プロセスは、クロスケース解消プロセスが、現時点でのデータ要求を処理する（６３０）ことを可能にする。データ要求が優先的なものでない場合、グローバル順序プロセスは、クロスケース解消プロセスがそのデータ要求を処理（６３０）できるようにする前に、処理中のデータの回答があるか否かを決定する（６５０）。より特定的には、要求タイプによってまたは、誰が優先権をもつかについて各々の側が同意することによって、一方のノードが他方のノードに対する優先権を有する。優先順位の高いものは待ちが全く無く処理され、一方低いものはもう１つの回答が送信されるのを待つ。プロセスは、以上で図５〜９に記述されているパイプラインによらないまたはパイプラインによるプロセスのいずれかを用いて、要求を処理する（６３０）ことができる。
【００５２】
本発明のようにクロスケースを処理することの利点は、後続するプロセッサ要求を破棄（または消去）することなく、かかるケースを解消できるという点にある。むしろ、後続するデータ要求は有益にも、それに先行する要求の後に処理される。その上、一部のケースでは、後続する要求は、有利にも、例えば特定の要求がリトライされ得ない場合には、先行する要求の前に処理される。
【００５３】
本発明の特定の実施形態および適用が例示および記述されてきたが、本発明が本明細書中で開示された明確な構成およびコンポーネントに制限されず、当業者にとっては明白であるさまざまな修正、変更およびバリエーションを、特許請求の範囲で規定されている本発明の精神および範囲から逸脱することなく、本明細書に開示された本発明の方法および装置の配置、動作および詳細に関して加えることが可能である。
【００５４】
本発明による好適な実施形態は、以下のとおりである。
（付記１）  複数のプロセッサ、メモリシステムおよび相互接続チップセットを各々が含む複数のノードを結合するように構成された相互接続ポートにおいて、
電気信号を受信または送信するように構成された物理層と、
前記物理層に結合され、受信したまたは送信した前記電気信号のいずれかとの関係を規定するように構成された信号プロトコル層と、
前記信号プロトコル層に結合され、前記の受信電気信号に応答したデータ要求または前記の送信電気信号の準備に応答した回答のいずれかを生成するように構成されたコマンドプロトコル層と、
前記コマンドプロトコル層に結合され、前記データ要求または前記回答のいずれかに応答してデータに対するリーガルトランザクションセットを提供するように構成されたコヒーレンスプロトコル層と、を含んでなり、
ここに、前記物理層、前記信号プロトコル層および前記コマンドプロトコル層は対称であり、前記コヒーレンスプロトコル層は非対称であることを特徴とする相互接続ポート。
（付記２）  その関係は、前記の受信電気信号または送信電気信号のいずれかに対するタイミング要求条件である付記１に記載の相互接続ポート。
（付記３）  前記回答は、前記データ要求に応答して識別されたデータを含む付記１に記載の相互接続ポート。
（付記４）  前記リーガルトランザクションは、複数の処理システムのうちの少なくとも１つの処理システムによって許容可能なトランザクションを含む付記１に記載の相互接続ポート。
（付記５）  複数のプロセッサおよび相互接続チップセットを各々が有する複数のノード間で通信するための方法において、
前記複数のノードのうちの第１のノード内における前記複数のプロセッサのうちの１つのプロセッサから、プロセッサ要求を発行する段階と、
前記複数のノードのうちの他のノードの各々に対して前記プロセッサ要求を渡す段階と、
前記プロセッサ要求に応答してメモリのアクセスを開始する段階であって、ノード内の該メモリが該プロセッサ要求を発行するプロセッサを有している段階と、
前記要求を発行する前記プロセッサを有する前記ノード内の前記メモリかまたは複数の前記プロセッサの中の１つのプロセッサのプロセッサキャッシュのいずれかで、前記プロセッサ要求のコンテンツの位置を識別する段階と、
を含んでなる方法。
（付記６）  前記のデータの位置を識別する段階はさらに、前記コンテンツが複数の前記プロセッサ内のプロセッサの前記プロセッサキャッシュ内にあることに応答して、スヌープフォローアップを発行する段階を含む付記５に記載の通信方法。
（付記７）  スヌープフォローアップとは関係なく前記要求を発行する前記プロセッサを有する前記ノード内の前記メモリから、前記コンテンツを得る段階をさらに含む付記６に記載の通信方法。
（付記８）  スヌープフォローアップの受信に応答して、前記コンテンツの要求を取消す段階をさらに含む付記６に記載の通信方法。
（付記９）  複数のプロセッサを各々が有する複数のノードを備える相互接続システムにおけるデータ要求方法において、
ローカルノードから前記データ要求を発行する段階と、
前記ローカルノード内のローカルメモリに対するアクセスを開始する段階と、
前記の要求されたデータが前記ローカルノード内のプロセッサのプロセッサキャッシュ内にあるか否かを決定すべく該ローカルノードの各プロセッサのプロセッサキャッシュをスヌープすると共に、該要求されたデータが該ローカルノード内のプロセッサのプロセッサキャッシュ内にあることに応答して該プロセッサキャッシュから前記データのコピーを得る段階と、
遠隔ノード内の各プロセッサのプロセッサキャッシュをスヌープすると共に、前記の要求されたデータが前記遠隔ノード内のプロセッサの前記プロセッサキャッシュ内にあることに応答して、該遠隔ノードのプロセッサキャッシュから、そのデータのコピーを得る段階と、
前記ローカルノードまたは遠隔ノードの前記プロセッサキャッシュ内にデータがないことに応答して、前記ローカルメモリからそのデータを検索する段階と、
を含むことを特徴とするデータ要求方法。
（付記１０）  前記のデータを検索する段階はさらに、そのデータが排他的データであることに応答して、そのデータのコピーを得る段階を含む付記９に記載のデータ要求方法。
（付記１１）  複数のプロセッサを各々が有する少なくとも３つのノードを備える相互接続システムにおけるデータ要求方法において、
ローカルノードからデータの要求を発行する段階と、
前記データ要求に応答して、そのデータのアドレスが遠隔ノード内にあるか否かを決定すべくプロトコルエンジン内のディレクトリに対して探索を行うと共に、そのデータのアドレスが該ディレクトリ内にあることに応答して該遠隔ノードからそのデータを検索する段階と、
そのデータのアドレスが前記ディレクトリ内にないことに応答して前記ローカルノード内の各プロセッサのプロセッサキャッシュをスヌープすると共に、そのプロセッサキャッシュ内にそのデータがあることに応答して該ローカルノード内のプロセッサのプロセッサキャッシュからそのデータを検索する段階と、
を含むことを特徴とするデータ要求方法。
（付記１２）  前記データが前記遠隔ノード内にあることを決定したことに応答して、該遠隔ノードの遠隔メモリからそのデータを検索する段階をさらに含む付記１１に記載のデータ要求方法。
（付記１３）  前記データ要求に応答して前記ローカルノード内のメモリに対する思索的メモリアクセスを開始する段階をさらに含む付記１１に記載のデータ要求方法。
（付記１４）  前記データが置かれた前記複数のノードのうち遠隔ノードからペンディングヒントを受信したことに応答して、前記思索的メモリアクセスを停止する段階をさらに含む付記１３に記載のデータ要求方法。
（付記１５）  前記複数のノードの遠隔ノードからペンディングヒントを受信しないことに応答して、前記ローカルノード内でそのデータの場所を特定する段階をさらに含む付記１４に記載のデータ要求方法。
（付記１６）  第１のノードおよび第２のノードを含む相互接続システムにおけるクロスケースを解消する方法において、
前記第２のノードから前記第１のノードへの第２のノード要求とほぼ同時の、該第１のノードから該第２のノードへの第１のノード要求を検出する段階と、
前記第１のノード要求または前記第２のノード要求のうちの一方を正しい要求として選択する段階であって、他方のノード要求は非選択ノード要求とする段階と、
前記非選択ノード要求を処理する前に前記の正しい要求を処理する段階と、
を含むことを特徴とするクロスケース解消方法。
（付記１７）  前記の選択する段階はさらに、前記第１のノード要求または前記第２のノード要求がリトライ不能なコマンドであるか否かを決定する段階を含む付記１６に記載のクロスケース解消方法。
（付記１８）  前記の決定する段階はさらに、
前記第１のノード要求がリトライ不能なコマンドであることに応答して、前記第２のノード要求に先立ち前記第１のノード要求を処理する段階と、
前記第２のノード要求がリトライ不能なコマンドであることに応答して、前記第１のノード要求に先立ち前記第２のノード要求を処理する段階と、
を含む付記１７に記載のクロスケース解消方法。
（付記１９）  前記の決定する段階はさらに、
前記第１のノード要求が、リトライ不能なコマンドではなくかつ優先コマンドであることに応答して、前記第２のノード要求に先立ち前記第１のノード要求を処理する段階と、
前記第２のノード要求が、リトライ不能なコマンドでなくかつ優先コマンドであることに応答して、前記第１のノード要求に先立ち前記第２のノード要求を処理する段階と、
を含む付記１７に記載のクロスケース解消方法。
（付記２０）  前記の検出する段階はさらに、前記第１のノードと前記第２のノードにおいてコミットポイントを識別する段階を含む付記１６に記載のクロスケース解消方法。
【符号の説明】
【００５５】
１０５    スケーラブルノード
１１０    ノード制御部
１１５    メモリシステム
１２０    入出力（Ｉ／Ｏ）システム
１２５    中央処理ユニット
１３０    第３の信号ラインセット
１３５ａ    第１の信号ラインセット
１３５ｂ    第２の信号ラインセット
１４０    ノード信号ライン
１５０    スケーラビリティポート（スケーラブル相互接続ポート）
１５５    物理層
１６０    信号プロトコル層
１６５    コマンド／データプロトコル層
１７０    コヒーレンスプロトコル層
２１０ａ    第１のスケーラブルノード
２１０ｂ    第２のスケーラブルノード
３１０    スケーラブルノード
３２０    ノード制御ライン
３３０    相互接続システム
３４０    プロトコルエンジン
【図１】
2010250863.tif 000003
【図２】
2010250863.tif 000004
【図３】
2010250863.tif 000005
【図４】
2010250863.tif 000006
【図５】
2010250863.tif 000007
【図６】
2010250863.tif 000008
【図７】
2010250863.tif 000009
【図８】
2010250863.tif 000010
【図９】
2010250863.tif 000011
【図１０】
2010250863.tif 000012
【図１１】
2010250863.tif 000013