(57)【要約】  マルチチップモジュール（５００）の実施形態が開示される。マルチチップモジュール（５００）のこの実施形態の場合、トランシーバダイ（５０１）は、トランシーバ（５１１）を有する。クロスバースイッチダイ（５０３）は、少なくとも１つのクロスバースイッチ（５１３）を有する。プロトコルロジックブロックダイ（５０２）は、プロトコルロジックブロック（５１２）を有する。トランシーバダイ（５０１）、クロスバースイッチダイ（５０３）、およびプロトコルロジックブロックダイ（５０２）とは、すべて、インターポーザ（５１０）に結合される。インターポーザ（５１０）は、トランシーバ（５１１）とプロトコルロジックブロック（５１２）とを互いに接続するとともに、プロトコルロジックブロック（５１２）と、少なくとも１つのクロスバースイッチ（５１３）とを相互に接続する。
2013546275.tif 000002
【特許請求の範囲】
【請求項１】
マルチチップモジュールであって、
第１のトランシーバを有する第１のトランシーバダイと、
少なくとも１つのクロスバースイッチを有するクロスバースイッチダイと、
第１のプロトコルロジックブロックを有する第１のプロトコルロジックブロックダイと、
前記第１のトランシーバダイと、前記クロスバースイッチダイと、前記第１のプロトコルロジックブロックダイとが結合されるインターポーザとを備え、
前記インターポーザは、前記第１のトランシーバと前記第１のプロトコルロジックブロックとを相互に接続し、さらに、前記第１のプロトコルロジックブロックと、前記少なくとも１つのクロスバースイッチとを相互に接続する、マルチチップモジュール。
【請求項２】
第２のトランシーバを有する第２のトランシーバダイと、
第２のプロトコルロジックブロックを有する第２のプロトコルロジックブロックダイとをさらに備え、
前記第２のトランシーバダイと、前記第２のプロトコルロジックブロックダイとは、前記インターポーザに結合され、
前記インターポーザは、前記第２のトランシーバと前記第２のプロトコルロジックブロックとを相互に接続し、さらに、前記第２のプロトコルロジックブロックと、前記少なくとも１つのクロスバースイッチとを相互に接続する、請求項１に記載のマルチチップモジュール。
【請求項３】
前記第１のトランシーバダイと、前記第１のプロトコルロジックブロックダイと、前記第２のトランシーバダイと、前記第２のプロトコルロジックブロックダイとは、すべて第１の方向で前記インターポーザに実装される長方形のダイであり、
前記第１のトランシーバダイと、前記第１のプロトコルロジックブロックダイとは、前記クロスバースイッチダイの左側に位置し、
前記第２のトランシーバダイと、前記第２のプロトコルロジックブロックダイとは、前記クロスバースイッチダイの右側に位置し、
前記第１のトランシーバダイは最も左側の外側のダイであり、
前記第２のトランシーバダイは最も右側の外側のダイである、請求項２に記載のマルチチップモジュール。
【請求項４】
第３のトランシーバを有する第３のトランシーバダイと、
第３のプロトコルロジックブロックを有する第３のプロトコルロジックブロックダイとをさらに備え、
前記第３のトランシーバダイと、前記第３のプロトコルロジックブロックダイとは、前記インターポーザに結合され、
前記インターポーザは、前記第３のトランシーバと前記第３のプロトコルロジックブロックとを相互接続し、さらに前記第３のプロトコルロジックブロックと前記少なくとも１つのクロスバースイッチとを相互接続する、請求項３に記載のマルチチップモジュール。
【請求項５】
第４のトランシーバを有する第４のトランシーバダイと、
第４のプロトコルロジックブロックを有する第４のプロトコルロジックブロックダイとをさらに備え、
前記第４のトランシーバダイと、前記第４のプロトコルロジックブロックダイとは、前記インターポーザに結合され、
前記インターポーザは、前記第４のトランシーバと前記第４のプロトコルロジックブロックとを相互接続し、さらに、前記第４のプロトコルロジックブロックと前記少なくとも１つのクロスバースイッチとを相互接続する、請求項４に記載のマルチチップモジュール。
【請求項６】
前記第１のプロトコルロジックブロックと、前記第２のプロトコルロジックブロックと、前記３のプロトコルロジックブロックと、前記第４のプロトコルロジックブロックとは、すべてフィールドプログラマブルである、請求項５に記載のマルチチップモジュール。
【請求項７】
前記第３のトランシーバダイと、前記第４のトランシーバダイと、前記第３のプロトコルロジックブロックダイと、前記第４のプロトコルロジックブロックダイとは、第２の方向で前記インターポーザに実装される長方形のダイであり、
前記第２の方向は、少なくとも実質的に前記第１の方向に対して垂直であり、
前記第３のトランシーバダイと、前記第３のプロトコルロジックブロックダイとは、前記クロスバースイッチダイの上側に位置し、
前記第４のトランシーバダイと、前記第４のプロトコルロジックブロックダイとは、前記クロスバースイッチダイの下側に位置し、
前記第３のトランシーバダイは、最も上側の外側のダイであり、
前記第４のトランシーバダイは、最も下側の外側のダイである、請求項６に記載のマルチチップモジュール。
【請求項８】
前記第１のトランシーバダイと、前記第２のトランシーバダイと、前記第３のトランシーバダイと、前記第４のトランシーバダイとは、それぞれ、前記第１のプロトコルロジックブロックダイと、前記第２のプロトコルロジックブロックダイと、前記第３のプロトコルロジックブロックダイと、前記第４のプロトコルロジックブロックダイとよりも実質的に長い、請求項７に記載のマルチチップモジュール。
【請求項９】
請求項１から８のいずれか１項に記載の前記マルチチップモジュールを含むシステムであって、
前記システムは、バックプレーンと、ラインカードと、スイッチカードとを有するネットワークスイッチを含み、
前記マルチチップモジュールは、前記ラインカードと前記スイッチカードとのいずれかに実装される、システム。
【請求項１０】
通信方法であって、
マルチチップモジュールの第１のトランシーバダイによってパケットを受信するステップと、
前記第１のトランシーバダイからの前記パケットを、インターポーザを介して前記マルチチップモジュールの第１のプロトコルロジックブロックダイへと与えるステップとを備え、
前記インターポーザは、前記第１のトランシーバダイと、前記第１のプロトコルロジックブロックダイとを相互に接続し、
前記第１のプロトコルロジックブロックダイからの前記パケットを、前記インターポーザを介して前記マルチチップモジュールのクロスバースイッチダイへと与えるステップをさらに備え、
前記インターポーザは、前記第１のプロトコルロジックブロックダイと前記クロスバースイッチダイとを相互に接続する、通信方法。
【請求項１１】
前記クロスバースイッチダイからの前記パケットを、前記インターポーザを介して前記マルチチップモジュールの第２のプロトコルロジックブロックダイへと与えるステップをさらに備え、
前記インターポーザは、前記第２のプロトコルロジックブロックダイと、前記クロスバースイッチダイとを相互に接続し、
前記第２のプロトコルロジックブロックダイから前記パケットを、前記インターポーザを介して前記マルチチップモジュールの第２のトランシーバダイへと与えるステップをさらに備え、
前記インターポーザは、前記第２のプロトコルロジックブロックダイと前記第２のトランシーバダイとを相互に接続し、
前記第２のトランシーバダイから前記パケットを前記マルチチップモジュールに送信するステップをさらに備える、請求項１０に記載の方法。
【請求項１２】
第１のプロトコルに従って、前記第１のプロトコルロジックブロックダイにおいて、第１の入力処理ブロックをインスタンス化して、前記パケットに入力処理を実行するステップと、
前記第１のプロトコルに従って、前記第２のプロトコルロジックブロックダイにおいて、第１の出力処理ブロックをインスタンス化して、前記パケットに出力処理を実行するステップとをさらに備える、請求項１１に記載の方法。
【請求項１３】
第２のプロトコルに従って、前記第１のプロトコルロジックブロックダイにおいて第２の入力処理ブロックをインスタンス化して、別のパケットに入力処理を実行するステップと、
前記第２のプロトコルに従って、前記第２のプロトコルロジックブロックダイにおいて、第２の出力処理ブロックをインスタンス化して、前記別のパケットに出力処理を実行するステップとをさらに備え、
前記第１のプロトコルと前記第２のプロトコルとは異なるプロトコルである、請求項１２に記載の方法。
【請求項１４】
前記第１の入力処理ブロックは、第１の入力処理ブロックコンフィギュレーションビットストリームに応じて第１のプログラマブルリソースにおいてインスタンス化され、
前記第２の入力処理ブロックは、第２の入力処理ブロックコンフィギュレーションビットストリームに応答して、第２のプログラマブルリソースにおいてインスタンス化され、
前記第１の出力処理ブロックは、第１の出力処理ブロックコンフィギュレーションビットストリームに応答して、第３のプログラマブルリソースにおいてインスタンス化され、
前記第２の出力処理ブロックは、第２の出力処理ブロックコンフィギュレーションビットストリームに応答して、第４のプログラマブルリソースにおいてインスタンス化される、請求項１３に記載の方法。
【請求項１５】
前記クロスバースイッチダイからの前記パケットを、前記インターポーザを介して、前記マルチチップモジュールの前記第１のプロトコルロジックブロックダイへと送り戻すステップと、
前記第１のプロトコルロジックブロックダイからの前記パケットを、前記インターポーザを介して、前記マルチチップモジュールの前記第１のトランシーバダイへと送り戻すステップと、
前記第１のトランシーバダイからの前記パケットを、前記マルチチップモジュールへと送るステップとをさらに備える、請求項１０〜１４のいずれか１項に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の分野
本発明の実施形態は、集積回路装置（「ＩＣ」）に関する。より特定的には、本発明の実施形態は、通信用マルチチップモジュールに関する。
【背景技術】
【０００２】
背景
高スループットスイッチ構成集積回路は、従来、単一のモノリシック集積回路から形成される。モノリシック集積回路は、かなり大きい集積回路になりがちである。したがって、さまざまな用途の事情のためにそのような集積回路を製造することに関した、半導体プロセスの複雑さ、および／またはコストは相対的に高くなる。さらに、プロトコルが十分に変化すると、そのような巨大モノリシック集積回路は、コストに加えて、置き換えの必要が生じ得る。したがって、そのようなコストを低減する高スループットスイッチ構造を提供することが望ましい。
【発明の概要】
【課題を解決するための手段】
【０００３】
概要
１以上の実施形態は、概して通信用マルチチップモジュールに関する。
【０００４】
１つの実施形態は、概してマルチチップモジュールに関する。そのような実施形態において、トランシーバダイはトランシーバを有する。クロスバースイッチダイは、少なくとも１つのクロスバースイッチを有する。プロトコルロジックブロックダイは、プロトコルロジックブロックを有する。トランシーバダイ、クロスバースイッチダイ、およびプロトコルロジックブロックダイはすべてインターポーザに結合される。インターポーザは、トランシーバおよびプロトコルロジックブロックを互いに接続するとともに、プロトコルロジックブロックと、少なくとも１つのクロスバースイッチとを互いに接続する。
【０００５】
前の段落において説明された実施形態のさまざまな他の実施形態において、そのようなマルチチップモジュールは、さらに１以上の次の構成を含むことができる。第２のトランシーバを有する第２のトランシーバダイ。第２のプロトコルロジックブロックを有する第２のプロトコルロジックブロックダイ。第２のトランシーバダイと、第２のプロトコルロジックブロックダイとは、インターポーザに結合されることができる。インターポーザは、第２のトランシーバと第２のプロトコルロジックブロックとを互いに接続することができる。インターポーザは、さらに第２のプロトコルロジックブロックと少なくとも１つのクロスバースイッチとを互いに接続することができる。第１のトランシーバダイと、第１のプロトコルロジックブロックダイと、第２のトランシーバダイと、第２のプロトコルロジックブロックダイとは、すべて第１の方向でインターポーザに実装された長方形のダイとすることができる。第１のトランシーバダイと、第１のプロトコルロジックブロックダイとは、クロスバースイッチダイの左側に位置することができる。第２のトランシーバダイと、第２のプロトコルロジックダイとは、クロスバースイッチダイの右側に位置することができる。第１のトランシーバダイは、最も左側にある外側のダイとすることができる。第２のトランシーバダイは、最も右側の外側のダイとすることができる。第３のトランシーバダイは、第３のトランシーバを有することができる。第３のプロトコルロジックブロックダイは、第３のプロトコルロジックブロックを有することができる。第３のトランシーバダイと、第３のプロトコルロジックブロックダイとは、インターポーザに結合されることができる。インターポーザは、第３のトランシーバと、第３のプロトコルロジックブロックとを相互接続することができる。インターポーザは、さらに、第３のプロトコルロジックブロックと、少なくとも１つのクロスバースイッチとを相互接続することができる。第４のトランシーバダイは、第４のトランシーバを有することができる。第４のプロトコルロジックブロックダイは、第４のプロトコルロジックブロックを有することができる。第４のトランシーバダイと、第４のプロトコルロジックブロックダイとは、インターポーザに結合されることができる。インターポーザは、第４のトランシーバと、第４のプロトコルロジックブロックとを相互接続することができる。インターポーザは、さらに、第４のプロトコルロジックブロックと、少なくとも１つのクロスバースイッチとを相互接続することができる。第１のプロトコルロジックブロックと、第２のプロトコルロジックブロックと、第３のプロトコルロジックブロックと、第４のプロトコルロジックブロックとは、すべてフィールドプログラマブルとすることができる。第３のトランシーバダイと、第４のトランシーバダイと、第３のプロトコルロジックブロックダイと、第４のプロトコルロジックブロックダイとは、すべて、第２の方向でインターポーザに実装される長方形のダイとすることができる。第２の方向は、第１の方向に対して少なくとも実質的に垂直とすることができる。第３のトランシーバダイと、第３のプロトコルロジックブロックダイとは、クロスバースイッチダイの上方側に位置することができる。第４のトランシーバダイと、第４のプロトコルロジックブロックダイとは、クロスバースイッチダイの下方の側に位置することができる。第３のトランシーバダイは、最も上側の外側のダイとすることができる。第４のトランシーバダイは、最も下側の外側のダイとすることができる。第１のトランシーバダイと、第２のトランシーバダイと、第３のトランシーバダイと、第４のトランシーバダイとは、それぞれ、第１のプロトコルロジックブロックダイと、第２のプロトコルロジックブロックダイと、第３のプロトコルロジックブロックダイと、第４のプロトコルロジックブロックダイよりも実質的に長くすることができる。マルチチップモジュールは、システムの中にあることができる。システムは、ネットワークスイッチを含むことができ、ネットワークスイッチは、バックプレーンと、ラインカードと、スイッチカードとを有する。マルチチップモジュールは、ラインカードまたはスイッチカードに実装されることができる。
【０００６】
別の実施形態は、概して通信方法に関する。この方法は、たとえば、前の段落に記載されたうちのいずれかのようなマルチチップモジュールを用いて実行可能である。そのような実施形態において、パケットがマルチチップモジュールのトランシーバダイによって受信される。パケットは、トランシーバダイから、インターポーザを介してマルチチップモジュールのプロトコルロジックブロックダイへと与えられる。インターポーザは、トランシーバダイとプロトコルロジックブロックダイとを互いに接続する。パケットは、プロトコルロジックブロックダイから、インターポーザを介してマルチチップモジュールのクロスバースイッチダイに与えられる。インターポーザは、プロトコルロジックブロックダイとクロスバースイッチダイとを互いに接続する。
【０００７】
前の段落に記載された実施形態のさまざまな他の実施形態において、そのような通信方法は、さらに、次の１以上を含み得る。パケットは、クロスバースイッチダイからインターポーザを介してマルチチップモジュールの第２のプロトコルロジックブロックダイに与えられることができる。インターポーザは、第２のプロトコルロジックブロックダイとクロスバースイッチダイとを相互に接続することができる。パケットは、第２のプロトコルロジックブロックダイからインターポーザを介してマルチチップモジュールの第２のトランシーバダイへと与えられることができる。インターポーザは、第２のプロトコルロジックブロックダイと第２のトランシーバダイとを互いに接続することができる。パケットは、マルチチップモジュールのうちの第２のトランシーバダイから送られることができる。第１の入力処理ブロックは、第１のプロトコルロジックブロックダイ中においてインスタンス化されて、第１のプロトコルに従ってパケットに入力処理を行なうことができる。第１の出力処理ブロックは、第２のプロトコルロジックブロックダイにおいてインスタンス化されて第１のプロトコルに従ってパケットに対して出力処理を行なうことができる。第２の入力処理ブロックは、第１のプロトコルロジックブロックダイにおいてインスタンス化されて、第２のプロトコルに従って別のパケットに対して入力処理を行なうことができる。第２の出力処理ブロックは、第２のプロトコルロジックブロックダイにおいてインスタンス化されて、第２のプロトコルに従って他のパケットに対して出力処理を行なうことができる。第１のプロトコルと第２のプロトコルとは異なるプロトコルとすることができる。第１の入力処理ブロックは、第１の入力処理ブロックコンフィギュレーションビットストリームに応答して第１のプログラマブルリソースにおいてインスタンス化されることができる。第２の入力処理ブロックは、第２の入力処理ブロックコンフィギュレーションビットストリームに応答して、第２のプログラマブルリソースにおいてインスタンス化されることができる。第１の出力処理ブロックは、第１の出力処理ブロックコンフィギュレーションビットストリームに応答して、第３のプログラマブルリソースにおいてインスタンス化されることができる。第２の出力処理ブロックは、第２の出力処理ブロックコンフィギュレーションビットストリームに応答して、第４のプログラマブルリソースにおいてインスタンス化されることができる。クロスバースイッチダイからのパケットは、インターポーザを介してマルチチップモジュールの第１のプロトコルロジックブロックダイへと戻されることができる。第１のプロトコルロジックブロックダイからのパケットは、インターポーザを介してマルチチップモジュールの第１のトランシーバダイに戻されることができる。第１のトランシーバダイからのパケットは、マルチチップモジュールから送られることができる。入力処理ブロックは、第１のプロトコルロジックブロックダイにおいてインスタンス化されて、プロトコルに従ってパケットに対して入力処理を行なうことができる。出力処理ブロックは、第１のプロトコルロジックブロックダイにおいてインスタンス化されて、プロトコルに従ってパケットに対して出力処理を行なうことができる。
【０００８】
さらに別の実施形態は、概してマルチチップモジュールに関する。そのような実施形態において、少なくとも１つの通信ダイ、少なくとも１つのプロトコルロジックブロックダイ、およびクロスバースイッチダイがインターポーザ上に実装される。インターポーザは、少なくとも１つの通信ダイと、少なくとも１つのプロトコルロジックブロックダイと、マルチチップモジュールに入出力される情報の通信のためのクロスバースイッチダイとを、３種類のダイの各々の少なくとも１つを介して接続するが、その３種類のダイは、少なくとも１つの通信ダイと、少なくとも１つのプロトコルロジックブロックダイと、クロスバースイッチダイとによって表される。
【０００９】
前の段落において説明される実施形態のさまざまな他の実施形態において、そのようなマルチチップモジュールは、さらに次の１以上を含むことができる。少なくとも１つのうちの第１の数の通信ダイと、少なくとも１つのプロトコルロジックブロックダイとは、第１の方向でインターポーザ上に実装されることができる。少なくとも１つのうちの第２の数の通信ダイと、少なくとも１つのプロトコルロジックブロックダイとは、第２の方向でインターポーザ上に実装されることができる。第１の方向は、第２の方向に対して、垂直または実質的に垂直とすることができる。少なくとも１つの通信ダイは、第１の半導体プロセスを用いて製造されることができる。少なくとも１つのプロトコルロジックブロックダイは、第１の半導体プロセスよりも進んだ第２の半導体プロセスを用いて製造されることができる。クロスバースイッチダイは、第２の半導体プロセスを用いて製造されることができる。
【００１０】
添付の図面は、本発明の１以上の局面に従う例示的な実施形態を示す。しかしながら、添付の図面は、示された実施形態に本発明を限定するようにとられるべきではなく、単に説明および理解のためのものである。
【図面の簡単な説明】
【００１１】
【図１】１以上の説明される実施形態が実現可能な、コラムナフィールドプログラマブルゲートアレイ（「ＦＰＧＡ」）アーキテクチャの例示的な実施形態を示す単純化されたブロック図である。
【図２】ネットワークスイッチの例示的な実施形態を示す斜視ブロック図である。
【図３】スイッチングシステムの例示的な実施形態を示すブロック図である。
【図４】シングルボードスイッチングシステムの例示的な実施形態を示すブロック図である。
【図５】マルチチップモジュールの例示的な実施形態を示すブロック図である。
【図６】マルチチップモジュールの別の例示的な実施形態を示すブロック図である。
【図７】マルチチップモジュールのさらに別の例示的な実施形態を示すブロック図である。
【図８】マルチチップモジュールの例示的な実施形態を示す斜視ブロック図である。
【図９】図８のマルチチップモジュールのインターポーザの例示的な実施形態を示すためのある透視での斜視ブロック図である。
【図１０】上側の層の部品を有する、図９の斜視ブロック図である。
【図１１】再構成可能なシステムの例示的な実施形態を示すブロック図である。
【図１２】通信のための処理の例示的実施形態を示すフロー図である。
【図１３】インスタンス化フローの例示的実施形態を示すフロー図である。
【図１４】高スピードシリアルトランシーバ（「ＨＳＴ」）の例示的な実施形態を示す回路図である。
【図１５】プロトコルロジックブロック（「ＰＬＢ」）に結合されたＨＳＴの例示的実施形態を示す回路図である。
【図１６】クロスバースイッチの例示的実施形態を示すブロック／回路図である。
【図１７】再構成可能なシステムの別の例示的実施形態を示すブロック図である。
【発明を実施するための形態】
【００１２】
以下の説明において、多数の具体的な詳細が、本発明の特定の実施形態のより完全な説明を与えるために述べられる。しかしながら、当業者にとっては、本発明は、以下に与えられる、すべての特定的な詳細がなくても実現可能であることが明らかであるべきである。別の例において、発明を曖昧にしないために、周知の特徴は詳細には説明されていない。図示を容易にするために、同一の符号が、異なる図において、同じ要素を参照するために用いられる。しかしながら、代替的な実施形態において、要素は異なっていてもよい。さらに、対象の１つの例は、明確さのために、その複数の例を示すために用いられてもよい。
【００１３】
プログラマブルロジックデバイス（「ＰＬＤ」）は、特定の論理機能を実行するようにプログラム可能な周知の種類の集積回路である。ＰＬＤの一種である、フィールドプログラマブルゲートアレイ（「ＦＰＧＡ」）は、典型的にはプログラマブルタイルのアレイを含む。これらのプログラマブルタイルは、たとえば、入力／出力ブロック（「ＩＯＢ」）、コンフィギュラブルロジックブロック（「ＣＬＢ」）、専用のランダムアクセスメモリブロック（「ＢＲＡＭ」）、乗算器、デジタル信号処理ブロック（「ＤＳＰ」）、プロセッサ、クロックマネージャ、遅延ロックループ（「ＤＬＬ」）などを含むことができる。本明細書で用いられるように、「含む」および「含んでいる」は、限定のない含むことを意味する。
【００１４】
各々のプログラマブルタイルは、典型的にはプログラマブルインターコネクトおよびプログラマブルロジックの両方を含む。プログラマブルインターコネクトは、典型的には、プログラマブルインターコネクトポイント（「ＰＩＰ」）によって相互接続された多数の可変長のインターコネクトラインを含む。プログラマブルロジックは、たとえば、関数発生器、レジスタ、演算ロジックなどを含むことができるプログラマブル要素を用いてユーザ設計のロジックを実現する。
【００１５】
プログラマブルインターコネクトおよびプログラマブルロジックは、典型的には、プログラマブル要素がどのようにして構成されるかを定義するコンフィギュレーションデータのストリームを内部コンフィギュレーションメモリセルにロードすることによってプログラムされる。コンフィギュレーションデータは、メモリ（たとえば外部のＰＲＯＭ）から読出されたり、外部装置によってＦＰＧＡに書込まれたりすることができる。個別のメモリセルの集合的な状態が、したがってＦＰＧＡの機能を決定する。
【００１６】
別の種類のＰＬＤは、複合プログラマブルロジックデバイスすなわちＣＰＬＤである。ＣＰＬＤは、インターコネクトスイッチマトリックスによって相互に、かつ入力／出力（「Ｉ／Ｏ」）リソースに接続された２以上の「機能ブロック」を含む。ＣＰＬＤの各々の機能ブロックは、プログラマブルロジックアレイ（「ＰＬＡ」）およびプログラマブルアレイロジック（「ＰＡＬ」）装置において用いられるのと同様の２レベルのＡＮＤ／ＯＲ構造を含む。ＣＰＬＤにおいて、コンフィギュレーションデータは、典型的には不揮発性メモリにオンチップで記憶される。あるＣＰＬＤにおいて、コンフィギュレーションデータは、不揮発性メモリにオンチップで記憶され、次に初期コンフィギュレーション（プログラミング）シーケンスの一部として揮発性メモリにダウンロードされる。
【００１７】
これらのプログラマブルロジックデバイス（「ＰＬＤ」）のすべてについて、装置の機能性は、その目的のために装置に与えられるデータビットによって制御される。データビットは、揮発性メモリ（たとえばＦＰＧＡおよびあるＣＰＬＤにおけるスタティックメモリセル）、不揮発性メモリ（たとえばあるＣＰＬＤにおけるフラッシュメモリ）、または任意の他の種類のメモリセルに記憶されることができる。
【００１８】
他のＰＬＤは、さまざまな要素をプログラム可能に装置に相互接続する、金属層などの処理層を適用することによってプログラムされる。これらのＰＬＤは、マスクプログラマブルデバイスとして知られる。ＰＬＤは、また、他の方法、たとえばフューズまたはアンチフューズ技術を用いて実現可能である。「ＰＬＤ」および「プログラマブルロジックデバイス」との用語は、これらの例示的な装置を含むがそれらに限定されず、部分的にのみプログラマブルな装置も包含する。たとえば、一種のＰＬＤは、ハードコードされたトランジスタロジックと、そのハードコードされたトランジスタロジックにプログラム可能に相互接続するプログラマブルスイッチファブリックとの組合せを含む。
【００１９】
上記のように、高度なＦＰＧＡは、アレイ中に異なる数種類のプログラマブルロジックロックを含むことができる。たとえば、図１は、マルチギガビットトランシーバ（「ＭＧＴ」）１０１と、コンフィギュラブルロジックブロック（「ＣＬＢ」）１０２と、ランダムアクセスメモリブロック（「ＢＲＡＭ」）１０３と、入力／出力ブロック（「ＩＯＢ」）１０４と、コンフィギュレーションおよびクロックロジック（ＣＯＮＦＩＧ／ＣＬＯＣＫＳ）１０５と、デジタル信号処理ブロック（「ＤＳＰ」）１０６と、特殊入力／出力ブロック（「Ｉ／Ｏ」）１０７（たとえばコンフィギュレーションポートおよびクロックポート）と、デジタルクロックマネージャ、アナログデジタル変換器、システム監視ロジックなどといったその他のプログラマブルロジック１０８とを含む多数の異なるプログラマブルタイルを含むＦＰＧＡアーキテクチャ１００を例証する。いくつかのＦＰＧＡはまた、専用のプロセッサブロック（「ＰＲＯＣ」）１１０を含む。
【００２０】
いくつかのＦＰＧＡにおいて、各プログラマブルタイルは、プログラマブルインターコネクト要素（「ＩＮＴ」）１１１を含み、そのプログラマブルインターコネクト要素は、各隣り合うタイル中の対応するインターコネクト要素への、およびそのインターコネクト要素からの標準化された接続を有する。したがって、集められたプログラマブルインターコネクト要素は、例証されたＦＰＧＡに対するプログラマブルインターコネクト構造を実現する。プログラマブルインターコネクト要素１１１はまた、図１の上部に含まれる例によって示されるように、同じタイル内のプログラマブルロジック要素への、およびそのプログラマブルロジック要素からの接続を含む。
【００２１】
たとえば、ＣＬＢ１０２は、単一のプログラマブルインターコネクト要素（「ＩＮＴ」）１１１を加えたユーザロジックを実現するためにプログラムされることが可能なコンフィギュラブルロジック要素（「ＣＬＥ」）１１２を含み得る。ＢＲＡＭ１０３は、１以上のプログラマブルインターコネクト要素に加えてＢＲＡＭロジック要素（「ＢＲＬ」）１１３を含み得る。典型的には、タイルに含まれるインターコネクト要素の数はタイルの高さに依存する。図示された実施例においては、ＢＲＡＭタイルは５つのＣＬＢと同じ高さを有するが、他の数（たとえば４）もまた使用することができる。ＤＳＰタイル１０６は、適切な数のプログラマブルインターコネクト要素に加えてＤＳＰロジック要素（「ＤＳＰＬ」）１１４を含むことができる。ＩＯＢ１０４はたとえば、プログラマブルインターコネクト要素１１１の１つのインスタンスに加えて入力／出力ロジック要素（「ＩＯＬ」）１１５の２つのインスタンスを含むことができる。当業者にとっては明らかであるように、たとえばＩ／Ｏロジック要素１１５に接続される実際のＩ／Ｏパッドは典型的に、入力／出力ロジック要素１１５の領域に限定されない。
【００２２】
図示された実施例において、ダイの中心近くの水平領域（図１に示す）は、コンフィギュレーション、クロックおよび他の制御ロジックのために用いられる。この列から延在する縦の列１０９は、クロックおよびコンフィギュレーション信号をＦＰＧＡの横幅にわたって分配するために用いられる。
【００２３】
図１に例証されたアーキテクチャを利用するいくつかのＦＰＧＡは、ＦＰＧＡの大部分を構築する規則的なコラムナ（columnar）構造を分断させる追加的なロジックブロックを含む。追加的なロジックブロックは、プログラマブルブロックおよび／または専用ロジックであり得る。たとえば、プロセッサブロック１１０は、ＣＬＢおよびＢＲＡＭの複数の列に及ぶ。
【００２４】
なお、図１は、単に例示的なＦＰＧＡアーキテクチャを例示するように意図されている。たとえば水平方向の列中のロジックブロックの数、列の相対的な幅、列の数および順序、列に含まれるロジックブロックの種類、ロジックブロックの相対的なサイズ、ならびに図１の上部に含まれるインターコネクト／ロジック構成は、純粋に例示的なものである。たとえば、実際のＦＰＧＡにおいては、ユーザロジックの効率的な実現を容易にするために、ＣＬＢが現れるところではどこでも、２以上の隣り合うＣＬＢの列が典型的に含まれるが、隣り合うＣＬＢの列の数はＦＰＧＡの全体的なサイズによって変動する。
【００２５】
高スループットスイッチ構造は、１以上のクロスバースイッチ（「ＸＢＡＲ」）を有するモノリシック集積回路であってもよい。そのようなモノリシック集積回路は、複数の繰り返しプロトコル素子（「ＰＥ」）を有していてもよい。ここで、各々のＰＥは、１以上の高スピードシリアルトランシーバ（「ＨＳＴ」）および１つのプロトコルロジックブロック（「ＰＬＢ」）からなってもよい。そのようなモノリシック集積回路は、特定用途集積回路（「ＡＳＩＣ」）または、固定されたＰＥを有する特定用途向け標準品（「ＡＳＳＰ」）であってもよい。
【００２６】
これに対して、以下において、さらに詳細に、高スループットのフィールドプログラマブルネットワークスイッチを与えるための、マルチチップモジュール（「ＭＣＭ」）のようなスケーラブルシステムインパッケージのマルチプルダイ素子が説明される。そのようなスケーラブルシステムインパッケージマルチプルダイ素子は、複数の高速シリアルトランシーバを含むことができる。さらに、そのようなスケーラブルシステムインパッケージマルチプルダイ素子は、マルチプロトコルネットワークスイッチを与えるために用いられることができる。
【００２７】
図２は、ネットワークスイッチ２００の例示的な実施形態を示す斜視ブロック図である。ネットワークスイッチ２００は、１以上のラインカード２０１と、バックプレーン２０２と、１以上のスイッチカード２０３とを含むことができる。そのようなネットワークスイッチ２００は、さらに、筺体と、熱伝達素子または他の部品を含むことができるが、それらは明確さのためおよび限定しないために本明細書では示されずあるいは説明されない。
【００２８】
図３は、スイッチングシステム３００の例示的実施形態を示すブロック図である。スイッチングシステム３００は、たとえば図２のネットワークスイッチ２００のような、ネットワークスイッチとして実現可能である。スイッチングシステム３００は、筺体ベースのスイッチングシステムである。しかしながら、本明細書での記述に従って、他の種類のスイッチングシステムを用いることができる。
【００２９】
スイッチングシステム３００は、バックプレーン３０２と１以上のラインカードとを含む。１以上のラインカードは、たとえばラインカード３０１−１から３０１−Ｐ（「３０１」）である。ここでＰは１以上の正の整数である。スイッチングシステム３００は、さらに１以上のスイッチカードを含み、１以上のスイッチカードは、たとえばスイッチカード３０３−１から３０３−Ｑ（「３０３」）である。ここで、Ｑは、１以上の正の整数である。少なくとも１つのラインカード３０１がバックプレーン３０２を横切って少なくとも１つのスイッチカード３０３に相互接続される。より特定的には、２以上のラインカード３０１は、バックプレーン３０２を横切って少なくとも１つのスイッチカード３０３に相互接続されることができる。
【００３０】
各々のラインカード３０１は、たとえば、ラインカード３０１−１の物理層素子３１１のような、１以上の物理層素子（「ＰＨＹ」）を含むことができる。物理層素子３１１は、ラインインターフェイスと直接に通信することができる。ここでそのようなラインインターフェイスは、信号を通信するための光ファイバ、同軸ケーブル、金属の伝達線または他の媒体とすることができる。そのようなラインインターフェイスは、一般的に知られており、図３においては明確さのためおよび限定しないために示されていない。物理層素子３１１は、たとえばプロトコルプロセッサ３１２のような１以上のラインカードプロトコルプロセッサに接続されることができる。たとえば、遠隔通信システムにおいて、プロトコルプロセッサ３１２は、フレーマと呼ばれることがあるが、そのようなフレーマは、ＳＯＮＥＴ，ＳＤＨ，ＯＴＮまたは他の種類のフレームを処理するために用いられることができる。さらに、たとえば、イーサネット（登録商標）ベースのシステムにおいて、プロトコルプロセッサ３１２は、媒体アクセスコントローラ（「ＭＡＣ」）と呼ばれることがある。
【００３１】
ラインカードプロトコルプロセッサ３１２は、バックプレーン３０２を介してスイッチカード３０３と直接に通信することができる。任意選択的に、プロトコルプロセッサ３１２は、もう１つのラインカード素子または他のラインカード素子３１３を介してスイッチカード３０３と通信することができる。そのような素子３１３は、たとえば、ネットワークプロセッサ、トラフィックマネージャ、メモリモジュールおよび／またはバックプレーンインターフェイス素子を含むことができる。たとえば、メモリは、ルックアップテーブルにおいてパケットのバッファリングのために用いられることができる。繰り返すように、１以上のスイッチカード３０３が存在し得ることが明らかであるべきである。ここで、複数のスイッチカードは、スイッチングのスケーラビリティおよび／または冗長性のために用いられることができる。
【００３２】
図３における両方向矢印３４１から３４３は、概して電気的結合を示し、それは複数のトレースを含むことができる。そのような結合の各々の場合、高速シリアル送信機は、リンクの一方端からリンクの他方端へとシンボルを駆動することができ、高速シリアル受信機は、そのようなシンボルを受け取るとともに解釈する。他の例において、ダイ間結合（die-to-die）が並列に駆動されることができる。
【００３３】
スイッチカード３０３の各々は、たとえばバックプレーンスイッチ３３０−１から３３０−Ｑ（「３３０」）のような少なくとも１つのバックプレーンスイッチを含む。バックプレーンスイッチ３３０は、以下においてさらに詳細に説明されるような、マルチチップモジュール（「ＭＣＭ」）で実現可能である。
【００３４】
図４は、シングルボードスイッチングシステム４００の例示的実施形態を示すブロック図である。デスクトップスイッチ、スタック可能スイッチなどのように実現されるスイッチングシステムにおいて、概して単一のマザーボード、たとえばマザーボード４０１が用いられる。マザーボード４０１は、スイッチ素子４０２、メモリ４０３および物理層素子３１１を含むことができる。さらに他の部品は、明確さのためおよび限定しないために本明細書においては例示的には示されていない。
【００３５】
スイッチ素子４０２は、以下においてさらに詳細に説明されるように、マルチチップモジュールで実現可能である。スイッチ素子４０２は、メモリ４０３と、通信のために結合されることができるとともに、物理層素子３１１と通信のために結合されることができる。
【００３６】
図４の両方向矢印４４１は、概して電気的結合を表しているが、それは複数のトレースを含むことができる。そのような結合の各々の場合、高速シリアル送信機は、リンクの一方端からリンクの他方端にシンボルを駆動することができ、その場合、高速シリアル受信機はそのようなシンボルを受信するとともに解釈する。
【００３７】
図５は、マルチチップモジュール５００の例示的実施形態を示すブロック図である。マルチチップモジュール５００は、３種類の集積回路ダイ、すなわちトランシーバダイと、プロトコルロジックブロックダイと、クロスバースイッチダイとを含むが、それらのすべてはインターポーザ５１０に結合される。マルチチップモジュール５００は、たとえば、スイッチ素子４０２および図４の物理層素子３１１のような、関連する物理層インターフェイスを有するスイッチ素子として用いられることができる。また、図３のバックプレーンスイッチ３３０のようなバックプレーンスイッチ、および／または図３のプロトコルプロセッサ３１２および物理層素子３１１のような関連する物理層インターフェイスを有するプロトコルプロセッサとして用いられることができる。
【００３８】
この例示的な実施形態において、４つのトランシーバダイ５０１−１から５０１−４（「５０１」）は、インターポーザ５１０に実装されるか、そうでなければインターポーザ５１０に結合される。この例示的実施形態において、各々のトランシーバダイ５０１は、複数の高速シリアルトランシーバ（「ＨＳＴ」）５１１を有する。各々のＨＳＴ５１１は、１以上の高速シリアル送信機、１以上の高速シリアル受信機、および以下に詳細にさらに説明されるような、１以上の関連するクロック逓倍回路およびクロック分配回路を含むことができる。トランシーバダイよりもむしろ別々の送信機ダイおよび別々の受信機ダイを用いることができることが理解されるべきである。したがって、トランシーバダイ５０１は、より一般的には、双方向または単一方向通信のための通信ダイとみなすことができる。
【００３９】
この例示的実施形態において、４つのプロトコルロジックブロックダイ５０２−１から５０２−４（「５０２」）が、インターポーザ５１０に実装されるか、そうでなければインターポーザ５１０に結合される。プロトコルロジックブロックダイ５０２の各々のダイは、プロトコル処理ロジック機能を実現するための複数のプロトコルロジックブロック（「ＰＬＢ」）を有する。しかしながら、プロトコルロジックブロックダイ５０２は、各々、ＰＬＤと関連し得る他の部品の中の、非ＨＳＴ  Ｉ／Ｏのようなさらなる部品を含むことができる。この例示的実施形態において、プロトコルロジックブロックダイ５０２は、ＦＰＧＡベースのＰＬＢ５１２である。すなわち、プロトコルロジックブロックダイ５０２は、プログラマブルリソースを含むが、それは、たとえば１以上のコンフィギュレーションビットストリームでプログラムされて、ハードウェア内でプロトコル処理ロジック機能を与えるということが理解されるべきである。
【００４０】
ダイ５０１−１，５０１−２，５０２−１，５０２−２は、概して長方形または正方形であり得るが、すべてインターポーザ５１０に実装されて、「サイドバイサイド集積」または「２Ｄ集積」のために、互いに平行または実質的に平行とされる。同様に、ダイ５０１−３，５０１−４，５０２−３，５０２−４は、概して長方形または正方形であるが、すべてインターポーザ５１０に実装されて、「サイドバイサイド集積」または「２Ｄ集積」のために互いに平行または実質的に平行である。しかしながら、ダイ５０１−１，５０１−２，５０２−１，５０２−２は、インターポーザ５１０に実装されたときに、ダイ５０１−３，５０１−４，５０２−３，５０２−４に関して垂直または実質的に垂直方向である。
【００４１】
この例示的実施形態において、単一のクロスバースイッチダイ５０３がインターポーザ５１０に実装されるか、そうでなければインターポーザ５１０に結合される。クロスバースイッチダイ５０３は、１以上のクロスバースイッチ（「ＸＢＡＲ」）５１３を含むことができる。さらに、別の実施形態において、クロスバースイッチ５１３は、より小さなクロスバー部品のアレイを含むことができ、そのようなクロスバー部品は、関連するグローバル制御信号を用いて制御されることができる。
【００４２】
この例示的実施形態におけるインターポーザ５１０は、受動インターポーザである。すなわち、インターポーザ５１０は、以下においてさらに詳細に説明されるような、単なる相互接続を与える。インターポーザ５１０は、双方向通信のためにそれぞれのペアにおけるそれぞれのダイ５０１および５０２を相互接続するとともに、双方向通信のためにダイ５０２および５０３を相互接続する。
【００４３】
トランシーバダイ５０１−１のＨＳＴ５１１は、マルチチップモジュール５００の左側物理層インターフェイスを与える。インターポーザ５１０は、トランシーバダイ５０１−１のＨＳＴ５１１をプロトコルロジックブロックダイ５０１−１のＰＬＢ５１２に相互接続する。プロトコルロジックブロックダイ５０２−１のＰＬＢ５１２は、インターポーザ５１０によって、クロスバースイッチダイ５０３の少なくとも１つのクロスバースイッチ５１３に相互接続される。
【００４４】
トランシーバダイ５０１−２のＨＳＴ５１１は、マルチチップモジュール５００の右側の物理層インターフェイスを与える。インターポーザ５１０は、トランシーバダイ５０１−２のＨＳＴ５１１をプロトコルロジックブロック５０２−２のＰＬＢ５１２に相互接続する。プロトコルロジックブロックダイ５０２−２のＰＬＢ５１２は、インターポーザ５１０によって、クロスバースイッチダイ５０３の少なくとも１つのクロスバースイッチ５１３に相互接続される。
【００４５】
トランシーバダイ５０１−３のＨＳＴ５１１は、マルチチップモジュール５００の上側物理層インターフェイスを与える。インターポーザ５１０は、トランシーバダイ５０１−３のＨＳＴ５１１をプロトコルロジックブロック５０２−３のＰＬＢ５１２に相互接続する。プロトコルロジックブロックダイ５０２−３のＰＬＢ５１２は、インターポーザ５１０によって、クロスバースイッチダイ５０３の少なくとも１つのクロスバースイッチ５１３に相互接続される。
【００４６】
トランシーバダイ５０１−４のＨＳＴ５１１は、マルチチップモジュール５００の下側物理層インターフェイスを与える。インターポーザ５１０は、トランシーバダイ５０１−４のＨＳＴ５１１をプロトコルロジックブロック５０２−４のＰＬＢ５１２に相互接続する。プロトコルロジックブロックダイ５０２−４のＰＬＢ５１２は、インターポーザ５１０によって、クロスバースイッチダイ５０３の少なくとも１つのクロスバースイッチ５１３に相互接続される。
【００４７】
トランシーバダイ５０１は、すべて同じマスキング層の組合せで製造されてもよいということが理解されるべきである。より一般的には、トランシーバダイ５０１は、同じように製造されてもよいが、同じウェハにおいてもダイの間でばらつきが存在するということが理解されるべきである。同様に、プロトコルロジックブロックダイ５０２は、同じように製造されてもよいことが理解されるべきである。さらに、クロスバースイッチダイは、複数のマルチチップモジュール５００の場合に大量に製造されてもよいことが理解されるべきである。さらに、複数のマルチチップモジュール５００の製造の場合、ダイ５０１から５０３は、インターポーザ５１０とともに大量に製造されることができる。
【００４８】
ダイ５０１から５０３の各々のダイは、モノリシックダイであることが理解されるべきである。しかしながら、そのようなダイ５０１から５０３の各々のダイは、実質的に、図３の全体のバックプレーンスイッチ３３０、図４の物理層素子３１１を有するスイッチ素子４０２の全体、または図３の物理層素子３１１を有するプロトコルプロセッサ３１２の全体（集合的におよび単に「モノリシックスイッチング素子」と呼ぶ）を与えるために用いられる単一のモノリシックダイよりも小さくあり得る。したがって、ウェハあたりのより多くのダイは、歩留まりのための候補であり得て、歩留まり率は、マルチチップモジュール５００の場合には、そのようなモノリシックスイッチング素子全体よりも高くなり得る。
【００４９】
これらの記載に従うと、限定された部品の多様性によってダイを繰り返し製造することができる能力は、モノリシックに混成されたダイにおけるそのような回路の対比される実現例、すなわち、たとえば送受信、プロトコル処理およびクロスバースイッチのような機能を含む実現例よりも、より高い歩留まりと、より小さいダイのサイズとをもたらすことができる。さらに、ダイ５０１から５０３は、異なる半導体プロセスを用いて製造可能であることが理解されるべきである。たとえば、ダイ５０１のＨＳＴ５１１は、アナログ設計のための、より成熟して安定なプロセスによって製造されることができ、ダイ５０２のＰＬＢ５１２は、ダイ５０３のクロスバースイッチ５１３とともに、より先進的な半導体プロセス、すなわちより先進的なリソグラフィによる半導体プロセスを用いて製造されることができる。より先進的なリソグラフィによって、先進的な半導体プロセスは、概してあまり先進的でない半導体プロセスに比較して、より小さな最小寸法フィーチャサイズを有するということが一般的に理解されるべきである。
【００５０】
例示および限定的でない方法によって明確にするために、マルチチップモジュール５００によって与えられるスイッチ構造の例示的実施形態が説明される。しかしながら、この例示的な実施形態からの、多数の変形を含む多くの変形例を用いることができるということが理解されるべきである。１．２８テラビット／秒（「Ｔｂｐs」）の実施形態の場合、インターポーザ５１０は、たとえばシリコンインターポーザであり得るが、そこに以下のものを実装することができる。４つのトランシーバダイ５０１であり、各々のダイは、３２個の１０ギガビット／秒（「Ｇｂｐs」）のＨＳＴ５１１である。４つのプロトコルロジックブロックダイ５０２、および２つのクロスバースイッチ５１３を有する１つのクロスバースイッチ５０３。すなわち、概して４つのＩ／Ｏ−ＰＬＤのペアが、それぞれクロスバースイッチダイ５０３の一般的に「端」または「側方」である４つのインターフェイスに結合されてスイッチ構造製品となり得る。任意選択的には、そのようなスイッチ構造製品は、より少ないが高速トランシーバで実現可能である。たとえば、４つのトランシーバダイ５０１は、各々、１６個の２０ＧｂｐsのＨＳＴ５１１を有することができる。さらに、ＨＳＴ５１１は、すべて同じくトランシーバダイ５０１の上にある必要はない。たとえば、同じトランシーバダイ５０１の上に２５ＧｂｐｓのＨＳＴ５１１と１０ＧｂｐｓのＨＳＴ５１１とがあり、それらのＨＳＴの両方が、同じパラレルインターフェイス、すなわち、２つの異なる種類のＨＳＴの間でデータを交換してＰＬＢ５１２と通信してもよい。
【００５１】
さらに、ＨＳＴ５１１とＰＬＢ５１２との間のインターフェイスは、パラレルインターフェイスである必要がないということが理解されるべきである。たとえば、シリコンインターポーザワイヤを駆動するために用いられるような、低パワーシリアルトランシーバが、そのようなインターフェイスのために用いられてもよい。さらに、１つのＨＳＴ５１１は、１よりも多いＰＬＢ５１２と結合されてもよい。同様に、１つのＰＬＢ５１２が、１よりも多いＨＳＴ５１１に結合されてもよい。
【００５２】
異なる内部構成を含む、ダイ５０１から５０３の異なる組合せが、異なるスイッチ構造製品を与えるために用いられることができるということが理解されるべきである。さらに、ＰＬＢ５１２は、ＦＰＧＡベースのプログラマブルリソースのようなプログラマブルリソースを含むことができるが、そのようなスイッチ構造製品は、工場での再構成とは対照的な、カスタマまたはフィールドでの再構成を含むそのＰＬＢのハードウェア再構成を行なってもよい。
【００５３】
したがって、プロトコル処理に関する柔軟性が、ＰＬＢ５１２を再構成するそのような能力によって与えられ得るということが理解されるべきである。さらに、モノリシックスイッチング素子全体の複数の異なる再構成が、単一のマルチチップモジュール５００で置き換えられ得るということが理解されるべきである。さらに、巨大でモノリシックな素子に関連する長い設計リードタイムを回避することができるが、それは、マルチチップモジュール５００の製造が、あとの組み立てのためのさまざまな構成において、別々にダイ５０１から５０３の各々のダイを設計して、必要に応じたスイッチ構造製品を与えることができる、すなわち顧客が購入する、あるいは顧客がそのような製造設計を要求する場合にのみ設計可能であるということが明らかとなるべきである。
【００５４】
８０ナノメータ以下のリソグラフィを有する現在の半導体製造において、ダイのトランジスタは、単一の方向で従来形成されるということが理解されるべきである。複数の方向にトランジスタを形成することは、従来、低い歩留まりまたはその他に追加の製造コストをもたらす。たとえば、先進のリソグラフィ処理を用いる集積回路を製造するモノリシック半導体のレイアウトマクロは、同じ方向に走るすべてのトランジスタゲートを有し得る。集積回路のいくつかのベンダーは、２つのマクロ、すなわち１つは各々の方向またはゲートの方向を生成し得るが、これは既に述べたように著しいコストの追加をもたらし得る。しかしながら、たとえばダイ５０１および５０２のような、複数の長方形ダイを有することにより、ダイ全体は、たとえば９０°のように回転されて、たとえばインターポーザ５１０の複数の側方に沿って集合的のように、異なる方向からより適切にデータを収容する。より特定的には、たとえば、トランシーバダイ５０１の各々のダイにおけるトランジスタが同じ配向を有し得るものの、トランシーバダイ５０１は、互いに異なって配向され得る。
【００５５】
たとえば、トランシーバダイ５０１−１は、最も左側の外側のダイであるが、物理層インターフェイスは、インターポーザ５１０の最も左側の端に対応して位置し得る。トランシーバダイ５０１−３は、最も上側の外側のダイであり、その場合に物理層インターフェイスは、インターポーザ５１０の最も上側の端に対応して位置し得る。トランシーバダイ５０１−１とトランシーバダイ５０１−３とは、同じトランジスタ配向を有して同じウェハに形成され得るが、そのようなダイは、物理的インターフェイスの接続のためのよりよい位置決めを与えるために、互いに９０°回転し得る。これらの記載に沿うと、トランシーバダイ５０１−２は、最も右側の外側のダイであり、その場合には物理層インターフェイスは、インターポーザ５１０の最も右側の端に対応して位置し得る。繰り返すように、トランシーバダイ５０１−１とトランシーバダイ５０１−２とは、同じトランジスタ配向を有して同じウェハに形成され得るが、そのようなダイは、物理的インターフェイスの接続のためのよりよい位置決めを与えるために、互いに１８０°回転し得る。最後に、トランシーバダイ５０１−４は、最も下側の外側のダイであり、その場合、物理層インターフェイスは、インターポーザ５１０の最も下側の端に対応して位置決めされ得る。繰り返すように、トランシーバダイ５０１−１とトランシーバダイ５０１−４とは、同じトランジスタ配向で同じウェハに形成され得るが、そのようなダイは、物理インターフェイスの接続のためのよりよい位置決めを与えるために、互いにマイナス９０°回転し得る。同様に、プロトコルロジックブロックダイ５０２−１から５０２−４は、それぞれ、トランシーバダイ５０１−１から５０１−４に相互接続されるために対応して回転し得る。
【００５６】
一般的に、クロスバースイッチの最大帯域幅は、そのようなクロスバースイッチに結合されるトランシーバの最大帯域幅に比べてかなり大きい。したがって、トランシーバは、マルチチップモジュール５００の限定された帯域幅の部品であり得る。
【００５７】
図６は、マルチチップモジュール５００の別の例示的実施形態を示すブロック図である。この例示的実施形態において、トランシーバダイ５０１は、インターポーザ５１０の長さおよび幅の利点を最大に享受するために延在する。すなわち、トランシーバダイ５０１は、マルチチップモジュール５００の帯域幅を高めるために、より多くの送信および受信リソースを有することができる。たとえばシリコン基板のような半導体基板を用いて製造された受動インターポーザが、相互接続を与えるために複数のトレースを収容するための実質的な空間を有し得る。しかしながら、延在するトランシーバダイ５０１は、いくつかの応用例において、製造するにはより難しいおよび／または物理的に適合しないという可能性がある。
【００５８】
図７は、マルチチップモジュール５００のさらに別の例示的実施形態を示すブロック図である。この例示的実施形態において、トランシーバダイ５０１は、インターポーザ５１０の長さおよび幅の利点を十分に享受するために短縮される。しかしながら、インターポーザ５１０の各々の端のための単一のトランシーバダイ５０１よりもむしろ、２つのトランシーバダイ５０１がインターポーザ５１０の各々の端のために用いられる。繰り返すように、各々のトランシーバダイ５０１は、同じウェハから製造可能であり、インターポーザ５１０に、実装のために回転される。２つのトランシーバダイ５０１の例が、各々の端の場合に用いられるが、２よりも多いダイを用いてもよいということが明らかである。
【００５９】
図８は、マルチチップモジュール５００の例示的実施形態を示す斜視ブロック図である。ダイ５０１から５０３は、マルチチップモジュール５００の上位層の部品であり得て、インターポーザ５１０は、マルチチップモジュール５００の下位層の部品であり得る。
【００６０】
図９は、図８のマルチチップモジュール５００のインターポーザ５１０の例示的実施形態を示すための、ある透視での斜視ブロック図である。図１０は、上位層部品９１０および９１１を有する、図９の斜視ブロック図であるが、図１０は、概してダイ５０１および５０２のペアまたはダイ５０２および５０３のペアを表している。インターポーザ５１０は、さらに、図８および図９を同時に参照して説明される。
【００６１】
インターポーザ５１０は、たとえばスルーシリコンビア（「ＴＳＶ」）９０１として一般的に表されるような、複数の貫通導電ビアによって形成され得る。インターポーザ５１０において、たとえば金属配線９０２のような導電トレースが形成され得る。インターポーザ５１０内に単一の導電層のみが例示的に示されているが、複数の導電層が実現可能であることが理解されるべきである。ビア９０３は、インターポーザ５１０の上部表面から金属配線９０２へ接続するために用いられ得る。マイクロバンプ９０４は、ビア９０１および９０３を、上位層部品９１０および９１１に相互接続するために用いられ得る。
【００６２】
図１１は、再構成可能なシステム１１００の例示的実施形態を示すブロック図である。再構成可能なシステム１１００は、記憶装置１１０１およびマルチチップモジュール５００を含む。記憶装置１１０１は、ＰＬＢ５１２を構成するためにダイ５０２に結合されるが、それは、後においてさらに詳細に説明されるように、入力処理機能および出力処理機能を提供するためである。記憶装置１１０１は、１以上のコンフィギュレーションビットストリーム１１１０を記憶することができる。再構成可能なシステム１１００は、例示により、明確さのために、マルチチップモジュール５００を用いてスイッチカードを有するように示されるが、本明細書で説明されるようなマルチチップモジュール５００は、再構成可能なシステムの別の実施形態において、ラインカードまたは他の種類の回路基板であり得る。
【００６３】
例示および限定しないことによる明確さのために、概して矢印１１２３によって示されるような、マルチチップモジュール５００を左から右に横切る方向のみに、詳細に説明される。しかしながら、通信トラフィックは、マルチチップモジュール５００の任意の側に沿って受信されるとともに、矢印１１２１から１１２４によって一般的に示されるように、マルチチップモジュール５００の任意の別の側に切り換え可能であるということが理解されるべきである。
【００６４】
パケット１１２５は、トランシーバダイ５０１−１によって受信可能である。そのようなパケットは、トランシーバダイ５０１−１からインターポーザ５１０を介してプロトコルロジックブロックダイ５０２−１へと通過することができる。プロトコルロジックブロックダイ５０２−１および５０２−２に与えられる１以上のコンフィギュレーションビットストリーム１１１０に応答して、入力処理ブロック１１３０および出力処理ブロック１１３１が、それぞれ、プロトコルロジックブロックダイ５０２−１および５０２−２のプログラム可能なリソースにおいてインスタンス化され得る。すなわち、入力処理ブロック１１３０および出力処理ブロック１１３１は、それぞれ、インスタンス化されて、「第１の」プロトコルに従って実行され得る。そのような第１のプロトコルは、たとえばネットワークスイッチの製造またはルータのような消費者によって特定されることができる。そのようなインスタンス化は、マルチチップモジュール５００の製造またはマルチチップモジュール５００のそのような消費者によって実行され得る。
【００６５】
パケット１１２５は、トランシーバダイ５０１−１から入力処理ブロック１１３０へと与えられる。入力処理ブロック１１３０は、そのような第１のプロトコルに従ってパケット１１２５に入力処理を実行することができる。例示および限定しない方法によって明確にするために、そのような入力処理は、ラッパー（wrapper）においてそのようなパケット１１２５をラッピングされるものとしてもよい。そのようなラップされたパケット１１２５は、プロトコルロジックブロックダイ５０２−１からクロスバースイッチダイ５０３へ、およびクロスバースイッチダイ５０３から出力処理ブロック１１３１へと通過することができる。出力処理ブロック１１３１は、そのような入力処理パケット１１２５において出力処理を行なうことができる。繰り返すように、例示的および限定しない方法によって明確にするために、そのような出力処理は、そのようなラップされたパケット１１２５をアンラップして、そのアンラップされたパケット１１２５をトランシーバダイ５０１−２に与えることを含む。トランシーバダイ５０１−２は、マルチチップモジュール５００のパケット１１２５と通信することができる。したがって、別の実施形態において、そのような入力処理および出力処理は、それぞれラッピングおよびアンラッピングを含んでも含まなくてもよいことが理解されるべきである。
【００６６】
第１のプロトコルが変化した場合、入力処理ブロック１１３０および出力処理ブロック１１３１は、そのような変更されたプロトコルを収容するために再構成されることができる。別のプロトコル、すなわち第２のプロトコルが、第１のプロトコルに代えてあるいは第１のプロトコルに加えてサポートされるべき場合に、プロトコルロジックブロックダイ５０２−１および５０２−２のプログラマブルリソースは、そのようなサポートを与えるために再び構成されることができる。
【００６７】
図１１を参照して続けると、パケット１１２６は、概して矢印によって示されるように、マルチチップモジュール５００を右から左に横切って処理するために、トランシーバダイ５０１−２によって受信されるように例示的に示される。したがって、入力処理ブロック１１３２は、プロトコルロジックブロックダイ５０２−２のプログラマブルリソースにおいてインスタンス化されて、第１のプロトコルとは異なる「第２の」プロトコルをサポートし、出力処理ブロック１１３３は、そのような第２のプロトコルをサポートするために、プロトコルロジックブロックダイ５０２−１においてインスタンス化され得る。したがって、そのような入力処理ブロック１１３２および出力処理ブロック１１３３は、マルチチップモジュール５００の提供者またはその消費者によってインスタンス化されることができる。すなわち、プロトコルスタックは、１以上のクロスバースイッチ５１３にわたり複数のプロトコルをサポートするために、マルチチップモジュール５００において実現可能であるということが理解されるべきである。
【００６８】
マルチチップモジュール５００は、フィールドプログラマブルスイッチ構成を与えるということが理解されるべきである。ＰＬＢ部品はフィールドプログラマブルであるので、マルチチップモジュール５００によって与えられるスイッチ構成は、異なるプロトコルに対して再構成可能であり、したがって、単一のスイッチ素子が、異なるアプリケーションにおいて用いられることができる。すなわち、さまざまなアプリケーションの内容のためのさまざまな全体的モノリシックスイッチング素子を有するよりも、多数のマルチチップモジュール５００、すなわち、多数のそのようなさまざまな全体的モノリシックスイッチング素子のサブセットが、そのようなアプリケーションの内容を広げることができる。さらに、異なる数のＨＳＴ，ＰＬＢおよびクロスバースイッチの組合せが、さまざまなアプリケーションの内容を収容するために異なるスイッチングスループットを生成することができる。
【００６９】
マルチチップモジュール５００は、トランシーバダイ５０１の２つのインスタンスおよびプログラマブルロジックブロックダイの２つのインスタンスで実現可能であるということが明らかであるべきである。さらに、より少ない接続および／または少ない帯域幅の消費の低パワーアプリケーションのために、トランシーバダイ５０１およびプロトコルロジックブロックダイ５０２の例が、単一のＨＳＴ−ＰＬＢダイへと効果的に組合されることができるが、それは、ボックス１１５１および１１５２によって概して示される。別の実施形態において、トランシーバダイ５０１の単一の例およびプロトコルロジックブロックダイ５０２の単一の例が、インターポーザ５１０を介して相互に接続可能であるとともに、そのようなプロトコルロジックブロックダイ５０２の単一の例が、そのようなインターポーザ５１０を介してクロスバースイッチダイ５０３に相互接続可能である。この場合、ダイ５０１から５０３の単一の例は、インターポーザ５１０における場合と同様に、マルチチップモジュール５００を与える。
【００７０】
図１２は、通信１２００のための処理の例示的実施形態を示すフロー図である。１２０１において、パケットは、マルチチップモジュールの第１のトランシーバダイによって受信される。たとえば、マルチチップモジュール５００は、本明細書において既に説明されたように、トランシーバダイ５０１へとパケットを受信する。１２０２において、そのようなパケットは、第１のトランシーバダイからマルチチップモジュールの第１のプロトコルロジックブロックダイへと、インターポーザを介して与えられる。たとえば、トランシーバダイ５０１は、本明細書において既に説明されるように、マルチチップモジュール５００のインターポーザ５１０を介して、マルチチップモジュール５００のプロトコルロジックブロックダイ５０２へとパケットを通過させることができる。
【００７１】
１２０３において、第１のプロトコルロジックブロックダイからのパケットは、インターポーザを介してマルチチップモジュールのクロスバースイッチダイへと与えられる。たとえば、プロトコルロジックブロックダイ５０２は、本明細書において既に説明されるように、マルチチップモジュール５００のインターポーザ５１０を介してクロスバースイッチダイ５０３へと通過することができる。１２０４において、クロスバースイッチダイからのパケットは、インターポーザを介いてマルチチップモジュールの第２のプロトコルロジックブロックダイへと与えられる。たとえば、そのようなパケットは、本明細書において既に説明されるように、マルチチップモジュール５００のそのようなインターポーザを介して、クロスバースイッチダイ５０３から別のプロトコルロジックブロックダイ５０２へと通過することができる。
【００７２】
１２０５において、第２のプロトコルロジックブロックダイからのパケットは、インターポーザを介してマルチチップモジュールの第２のトランシーバダイへと与えられる。たとえば、そのようなパケットは、本明細書において既に説明されるように、マルチチップモジュールのインターポーザを介して別のプロトコルロジックブロックダイから別のトランシーバダイ５０１へと通過することができる。１２０６において、第２のトランシーバダイからのパケットは、本明細書において既に説明されるように、マルチチップモジュールへと送られる。たとえば、そのようなパケットは、別のトランシーバダイ５０２を介して、そのようなマルチチップモジュール５００へと送られることができる。
【００７３】
別の実施形態において、パケットは、マルチチップモジュール５００のインターポーザ５１０を介して、プロトコルロジックブロックダイ５０２へとクロスバースイッチダイ５０３から戻されるように通過することができる。そのような別の実施形態において、通過して戻されるパケットは、さらに、プロトコルロジックブロックダイ５０２からマルチチップモジュール５００のインターポーザ５１０を介してトランシーバダイ５０１へと戻るように通過することができるが、それは図１７を参照して後でより詳細に説明する。そのような別の実施形態において、第１のトランシーバダイおよび第２のトランシーバダイは、１つであるとともに同一であり、第１のプロトコルロジックブロックダイと、第２のプロトコルロジックブロックダイとは、１つであるとともに同一であり得る。
【００７４】
図１３は、インスタンス化フロー１３００の例示的実施形態を示すフロー図である。１３０１において、入力処理ブロックは、第１のプロトコルロジックブロックダイにおいてインスタンス化される。入力処理ブロックは、たとえばラッピングのような入力処理を、第１のプロトコルに従って１以上のパケットに対して実行する。そのようなインスタンス化は、本明細書において既に説明されるように、第１のプロトコルロジックブロックダイのプログラマブルリソースのフィールドプログラミングを含むことができる。１３０２において、出力処理ブロックは、第２のプロトコルロジックブロックダイにおいてインスタンス化される。そのような出力処理ブロックは、たとえばアンラッピングのような出力処理を、第１のプロトコルに従って、１３０１においてラッピングした後に実行する。そのようなインスタンス化は、本明細書において既に説明されるように、第２のプロトコルロジックブロックのプログラマブルリソースのフィールドプログラミングを含むことができる。
【００７５】
１３０３において、別の入力処理ブロックが、第１のプロトコルロジックブロックダイにおいてインスタンス化される。他の入力処理ブロックは、第２のプロトコルに従って１以上のパケットを、たとえばラッピングのような入力処理を行なう。第２のプロトコルは、第１のプロトコルと異なる。そのようなインスタンス化は、本明細書において既に説明されるような、第２のプロトコルロジックブロックのプログラマブルリソースのフィールドプログラミングを含むことができる。１３０４において、別の出力処理ブロックは、第２のプロトコルロジックブロックダイにおいてインスタンス化される。他の出力処理ブロックは、第２のプロトコルに従って、１３０３におけるラッピングの後に、たとえばアンラッピングのような出力処理を１以上のパケットに対して行なう。そのようなインスタンス化は、本明細書において既に説明されるような、第２のプロトコルロジックブロックダイのプログラマブルリソースのフィールドプログラミングを含むことができる。
【００７６】
図１４は、ＨＳＴ５１１の例示的実施形態を示す回路図である。ＨＳＴ５１１は、メソクロノスシンクロナイザ１４０１と、パラレルシリアル変換器（「Ｐ／Ｓ」）１４０２と、１以上の差動送信機１４０３と、１以上のクロック逓倍器および分配ブロック１４０４と、１以上の差動受信機１４０５と、クロックデータ再生（「ＣＤＲ」）ブロック１４０６と、シリアルパラレル変換器（「Ｓ／Ｐ」）１４０７と、バッファ１４０８から１４１０と、任意選択的に物理コーディングサブ層（「ＰＣＳ」）ロジックブロック１４１１とを含むことができる。
【００７７】
パラレルデータ１４２０は、メソクロノスシンクロナイザ１４０１のためにＨＳＴ５１１に入力されることができる。パラレルデータ１４２０は、クロック逓倍分配ブロック１４０４からのクロック信号に応じてクロックされることができる。メソクロノスシンクロナイザ１４０１の出力は、Ｐ／Ｓ１４０２へと与えられ得る。ここで、Ｐ／Ｓ１４０２は、クロック逓倍および分配ブロック１４０４からのクロック信号に応じてクロックされる。Ｐ／Ｓ１４０２からのシリアルデータ出力は、差動送信機１４０３への入力として与えられて、高速差動シリアル出力１４２１を与えることができる。基準クロック信号１４２２は、クロック逓倍および分配ブロック１４０４への入力として与えられて、そこから出力されるクロック信号の生成のために用いられることができる。
【００７８】
高速差動シリアルデータ１４２３は、ＣＤＲブロック１４０６への出力のために差動受信機１４０５によって受信可能であるが、ＣＤＲブロック１４０６は、クロック逓倍および分配ブロック１４０４からのクロック信号に応じてクロックされる。再生クロック信号は、バッファ１４１０の入力のためにＣＤＲブロック１４０６から出力されて、再生クロック信号１４２４を出力として与えることができる。
【００７９】
ＣＤＲブロック１４０６からの再生ビットストリーム出力は、Ｓ／Ｐ１４０７への入力となり得るが、それはＣＤＲブロック１４０６からのクロック信号に応じてクロックされる。再生パラレルデータは、バッファ１４０９への入力のためのＳ／Ｐ１４０７からの出力とすることができる。バッファ１４０９の出力は、再生パラレルデータビットストリーム１４２５とすることができる。
【００８０】
基準クロック信号は、バッファ１４０８への入力のために、クロック逓倍および分配ブロック１４０４から出力されることができるとともに、バッファ１４０８からの出力は、基準クロック信号１４２６として与えられることができる。電源およびグランドは、本明細書では、明確さおよび限定しないために示されていないが、基準クロック信号１４２２と同様に、ＨＳＴ５１１に接続されて、マルチチップモジュール５００のパッケージピンのための例示的なＴＳＶのために用いられる。
【００８１】
再生パラレルデータビットストリーム１４２５および再生クロック信号１４２４は、続く処理のために１以上のプロトコルロジックブロックによって用いられることができる。インターフェイス１４５０は、図５のプロトコルロジックブロックダイ５０２の１以上のＰＬＢ５１２に、インターポーザ５１０で相互接続されることができる。
【００８２】
オプションのＰＣＳロジックブロック１４１１は、前処理および通信トラフィックの後処理のためのロジックを含むことができる。ＰＣＳロジックブロック１４１１は、標準セルまたはプログラマブルリソース構造のようなプログラマブルリソースおよび／または専用回路を用いて実現可能である。標準セルを用いた固定化された実現例は、より少ない半導体領域を含むことができるが、フィールドにおいて再構成可能な能力を低減させる可能性がある。
【００８３】
図１５は、ＰＬＢ５１２に結合されるＨＳＴ５１１の例示的実施形態を示す回路図である。ＰＬＢ５１２は、クロック逓倍分配ブロック１５０１と、レジスタ１５０２と、レジスタ１５０３とを含むことができる。パラレルデータ１４２０は、ＨＳＴ５１１への入力のためのパラレルデータ１４２０として、出力のためのレジスタ１５０２への入力として与えられる。レジスタ１５０２は、クロック逓倍分配ブロック１５０１からのクロック信号によってクロックされる。クロック逓倍分配ブロック１５０１は、基準クロックとして基準クロック信号１４２６を受けることができる。レジスタ１５０３は、再生パラレルデータビットストリーム１４２５を受けることができる。レジスタ１５０３は、再生パラレルデータビットストリーム１４２５の入力および出力のために、再生クロック信号１４２４に応答してクロックされることができる。
【００８４】
１つの実施形態において、レジスタ１５０２および１５０３は、クロック逓倍分配ブロック１５０１と同様に、プログラマブルリソースを用いて実現可能である。しかしながら、別の実施形態において、たとえば性能の改善、電力の節約またはよりよい領域の効率を有するために、レジスタ１５０２および１５０３は、クロック逓倍分配ブロック１５０１と同様に、専用回路を用いて実現可能である。さらに、より現在では一般的なプロトコルが、プロトコルロジックブロックダイ５０２において固定可能であるが、一方で他のプロトコルに対してはプログラマブルリソースを有していてもよい。
【００８５】
図１６は、クロスバースイッチ５１３の例示的実施形態を示すブロック／回路図である。クロスバースイッチ５１３は、単一クロック領域、すなわち同期クロスバースイッチとして動作可能である。しかしながら、異なるクロック領域で動作する１以上のクロスバースイッチを用いることができる。さらに、クロスバースイッチ５１３は、同期バッファクロスバースイッチ、すなわち各々の交差点において比較的小さいＦＩＦＯを有するクロスバースイッチであってもよい。別の実施形態において、しばしば、クロスポイントスイッチと呼ばれる非同期クロスバースイッチを用いることができる。非同期クロスバースイッチは、各々の入力データストリームのための組み込みクロックを運ぶ。非同期クロスバースイッチは、たとえば、光スイッチングおよび映像スイッチングにおいて用いられることができる。
【００８６】
クロスバースイッチ５１３は、出力マルチプレクサブロック１６０１−１から１６０１−Ｍ（「１６０１」）を含む。ここで、Ｍは１より大きい正の整数である。出力マルチプレクサブロック１６０１の各々は、複数のマルチプレクサ１６０２を含む。各々のマルチプレクサ１６０２が、ポートとして指定される場合、それぞれの入力ポート１６１０が存在し得る。すなわち、各々の出力マルチプレクサブロック１６０１は、入力ポート１６１０−１から１６１０−Ｎを有する。ここで、Ｎは、１より大きい正の整数であり、各々のポートは、Ｂビットである。Ｂは、１以上の正の整数である。
【００８７】
【数１】
2013546275.tif 000003
【００８８】
１つの実施形態において、Ｂは、１に設定され、それにより、任意のバス幅がバランスするマルチプレクサ選択信号の数でサポートされる。そのような実施形態において、データ信号よりも多くのマルチプレクサ選択信号が存在し得る。
【００８９】
プログラマブルリソースにおいてインスタンス化される、ＨＳＴとＰＬＢとの間の各々の配線におけるデータレートの間の大きな違いにより、ＨＳＴのパラレル側のデータ経路の幅は、たとえば、３２，４０，６４，８０，１２８または１６０であり得る。もちろん、他のデータ経路幅を用いることができる。エラー訂正コーディング（「ＥＣＣ」）のオーバーヘッドを、単一でエラー訂正および二重エラー訂正検出（「ＳＥＣＤＥＴ」）で考慮すると、対応するＨＳＴデータ経路幅は、３９，４７，７２，８８，１３７および１６９となる。すなわち、スイッチングの混雑を低減するために、各々のクロスバースイッチ５１３は、たとえば、二重データ経路幅の場合に実現可能であるような、入力データのスピードを参照して各々のポートをほぼ２倍あるいはそれ以上のスピードで実行させることができる。クロスバースイッチ５１３は、明確さおよび非限定の目的のために示されていないものの、ＥＣＣおよび／またはＳＥＣＤＥＴを含むことができるということが理解されるべきである。
【００９０】
図１７は、再構成可能なシステム１７００の別の例示的実施形態を示すブロック図である。再構成可能なシステム１７００は、図１１の再構成可能なシステム１１００と同様であり、したがって、相違点のみが明確さおよび非限定の目的のために示されている。マルチチップモジュール５００のこの例示的実施形態において、単一のトランシーバダイ５０１−１と、単一のプロトコルロジックブロックダイ５０２−１と、単一のクロスバースイッチダイ５０３とが用いられる。したがって、パケット１１２５は、入力処理ブロック１１３０からクロスバースイッチダイ５０３のクロスバースイッチへと与えられて、そのパケット１１２５は、クロスバースイッチダイ５０３からプロトコルロジックブロックダイ５０２−１へと通過して戻されることができる。より特定的には、出力処理ブロック１１３１は、クロスバースイッチダイ５０３から入力処理パケット１１２５の受信のためにプロトコルロジックブロックダイ５０２−１においてインスタンス化されることができる。入力処理ブロック１１３０と出力処理ブロック１１３１との両方が、１以上のコンフィギュレーションビットストリーム１１１０に応答してプロトコルロジックブロックダイ５０２−１においてインスタンス化されることができるということが理解されるべきである。
【００９１】
以上において、本発明の１以上の局面に従う例示的実施形態を説明したが、本発明の１以上の局面に従う他のおよびさらなる実施形態が、本発明の範囲から逸脱することなく実現することができ、それは、以下に続く請求項およびその均等の範囲において決定される。ステップを記述する請求項は、そのステップのいかなる順番も含むものではない。商標は、そのそれぞれの所有者の財産である。
【図２】
2013546275.tif 000004
【図５】
2013546275.tif 000005
【図６】
2013546275.tif 000006
【図７】
2013546275.tif 000007
【図８】
2013546275.tif 000008
【図９】
2013546275.tif 000009
【図１０】
2013546275.tif 000010
【図１６】
2013546275.tif 000011
【図１】
2013546275.tif 000012
【図３】
2013546275.tif 000013
【図４】
2013546275.tif 000014
【図１１】
2013546275.tif 000015
【図１２】
2013546275.tif 000016
【図１３】
2013546275.tif 000017
【図１４】
2013546275.tif 000018
【図１５】
2013546275.tif 000019
【図１７】
2013546275.tif 000020
【手続補正書】
【提出日】平成24年1月31日(2012.1.31)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
マルチチップモジュールであって、
第１のトランシーバを有する第１のトランシーバダイと、
第２のトランシーバを有する第２のトランシーバダイと、
少なくとも１つのクロスバースイッチを有するクロスバースイッチダイと、
第１のプロトコルロジックブロックを有する第１のプロトコルロジックブロックダイと、
第２のプロトコルロジックブロックを有する第２のプロトコルロジックブロックダイと、
前記第１のトランシーバダイと、前記第２のトランシーバダイと、前記第１のプロトコルロジックブロックダイと、前記第２のプロトコルロジックブロックダイとが結合されるインターポーザとを備え、
前記第１および第２のトランシーバダイと、前記第１および第２のプロトコルロジックブロックダイと、前記クロスバースイッチダイとは、前記インターポーザに実装され、
前記インターポーザは、前記第１のトランシーバと前記第１のプロトコルロジックブロックとを相互に接続し、前記第２のトランシーバと前記第２のプロトコルロジックブロックとを相互に接続し、前記第１のプロトコルロジックブロックと、前記少なくとも１つのクロスバースイッチとを相互に接続し、前記第２のプロトコルロジックブロックと、前記少なくとも１つのクロスバースイッチとを相互に接続する、マルチチップモジュール。
【請求項２】
前記第１のトランシーバダイと、前記第１のプロトコルロジックブロックダイと、前記第２のトランシーバダイと、前記第２のプロトコルロジックブロックダイとは、すべて第１の方向で前記インターポーザに実装される長方形のダイであり、
前記第１のトランシーバダイと、前記第１のプロトコルロジックブロックダイとは、前記クロスバースイッチダイの左側に位置し、
前記第２のトランシーバダイと、前記第２のプロトコルロジックブロックダイとは、前記クロスバースイッチダイの右側に位置し、
前記第１のトランシーバダイは最も左側の外側のダイであり、
前記第２のトランシーバダイは最も右側の外側のダイである、請求項１に記載のマルチチップモジュール。
【請求項３】
第３のトランシーバを有する第３のトランシーバダイと、
第３のプロトコルロジックブロックを有する第３のプロトコルロジックブロックダイとをさらに備え、
前記第３のトランシーバダイと、前記第３のプロトコルロジックブロックダイとは、前記インターポーザに結合され、
前記インターポーザは、前記第３のトランシーバと前記第３のプロトコルロジックブロックとを相互接続し、さらに前記第３のプロトコルロジックブロックと前記少なくとも１つのクロスバースイッチとを相互接続する、請求項２に記載のマルチチップモジュール。
【請求項４】
第４のトランシーバを有する第４のトランシーバダイと、
第４のプロトコルロジックブロックを有する第４のプロトコルロジックブロックダイとをさらに備え、
前記第４のトランシーバダイと、前記第４のプロトコルロジックブロックダイとは、前記インターポーザに結合され、
前記インターポーザは、前記第４のトランシーバと前記第４のプロトコルロジックブロックとを相互接続し、さらに、前記第４のプロトコルロジックブロックと前記少なくとも１つのクロスバースイッチとを相互接続する、請求項３に記載のマルチチップモジュール。
【請求項５】
前記第１のプロトコルロジックブロックと、前記第２のプロトコルロジックブロックと、前記３のプロトコルロジックブロックと、前記第４のプロトコルロジックブロックとは、すべてフィールドプログラマブルである、請求項４に記載のマルチチップモジュール。
【請求項６】
前記第３のトランシーバダイと、前記第４のトランシーバダイと、前記第３のプロトコルロジックブロックダイと、前記第４のプロトコルロジックブロックダイとは、第２の方向で前記インターポーザに実装される長方形のダイであり、
前記第２の方向は、少なくとも実質的に前記第１の方向に対して垂直であり、
前記第３のトランシーバダイと、前記第３のプロトコルロジックブロックダイとは、前記クロスバースイッチダイの上側に位置し、
前記第４のトランシーバダイと、前記第４のプロトコルロジックブロックダイとは、前記クロスバースイッチダイの下側に位置し、
前記第３のトランシーバダイは、最も上側の外側のダイであり、
前記第４のトランシーバダイは、最も下側の外側のダイである、請求項５に記載のマルチチップモジュール。
【請求項７】
前記第１のトランシーバダイと、前記第２のトランシーバダイと、前記第３のトランシーバダイと、前記第４のトランシーバダイとは、それぞれ、前記第１のプロトコルロジックブロックダイと、前記第２のプロトコルロジックブロックダイと、前記第３のプロトコルロジックブロックダイと、前記第４のプロトコルロジックブロックダイとよりも実質的に長い、請求項６に記載のマルチチップモジュール。
【請求項８】
請求項１から７のいずれか１項に記載の前記マルチチップモジュールを含むシステムであって、
前記システムは、バックプレーンと、ラインカードと、スイッチカードとを有するネットワークスイッチを含み、
前記マルチチップモジュールは、前記ラインカードと前記スイッチカードとのいずれかに実装される、システム。
【請求項９】
通信方法であって、
マルチチップモジュールの第１のトランシーバダイによってパケットを受信するステップと、
前記第１のトランシーバダイからの前記パケットを、インターポーザを介して前記マルチチップモジュールの第１のプロトコルロジックブロックダイへと与えるステップとを備え、
前記インターポーザは、前記第１のトランシーバダイと、前記第１のプロトコルロジックブロックダイとを相互に接続し、
前記第１のプロトコルロジックブロックダイからの前記パケットを、前記インターポーザを介して前記マルチチップモジュールのクロスバースイッチダイへと与えるステップをさらに備え、
前記インターポーザは、前記第１のプロトコルロジックブロックダイと前記クロスバースイッチダイとを相互に接続し、
前記クロスバースイッチダイからの前記パケットを、前記インターポーザを介して前記マルチチップモジュールの第２のプロトコルロジックブロックダイへと与えるステップをさらに備え、
前記インターポーザは、前記第２のプロトコルロジックブロックダイと、前記クロスバースイッチダイとを相互に接続し、
前記第２のプロトコルロジックブロックダイから前記パケットを、前記インターポーザを介して前記マルチチップモジュールの第２のトランシーバダイへと与えるステップをさらに備え、
前記インターポーザは、前記第２のプロトコルロジックブロックダイと前記第２のトランシーバダイとを相互に接続し、
前記第２のトランシーバダイから前記パケットを前記マルチチップモジュールに送信するステップをさらに備える、方法。
【請求項１０】
第１のプロトコルに従って、前記第１のプロトコルロジックブロックダイにおいて、第１の入力処理ブロックをインスタンス化して、前記パケットに入力処理を実行するステップと、
前記第１のプロトコルに従って、前記第２のプロトコルロジックブロックダイにおいて、第１の出力処理ブロックをインスタンス化して、前記パケットに出力処理を実行するステップとをさらに備える、請求項９に記載の方法。
【請求項１１】
第２のプロトコルに従って、前記第１のプロトコルロジックブロックダイにおいて第２の入力処理ブロックをインスタンス化して、別のパケットに入力処理を実行するステップと、
前記第２のプロトコルに従って、前記第２のプロトコルロジックブロックダイにおいて、第２の出力処理ブロックをインスタンス化して、前記別のパケットに出力処理を実行するステップとをさらに備え、
前記第１のプロトコルと前記第２のプロトコルとは異なるプロトコルである、請求項１０に記載の方法。
【請求項１２】
前記第１の入力処理ブロックは、第１の入力処理ブロックコンフィギュレーションビットストリームに応じて第１のプログラマブルリソースにおいてインスタンス化され、
前記第２の入力処理ブロックは、第２の入力処理ブロックコンフィギュレーションビットストリームに応答して、第２のプログラマブルリソースにおいてインスタンス化され、
前記第１の出力処理ブロックは、第１の出力処理ブロックコンフィギュレーションビットストリームに応答して、第３のプログラマブルリソースにおいてインスタンス化され、
前記第２の出力処理ブロックは、第２の出力処理ブロックコンフィギュレーションビットストリームに応答して、第４のプログラマブルリソースにおいてインスタンス化される、請求項１１に記載の方法。
【請求項１３】
前記クロスバースイッチダイからの前記パケットを、前記インターポーザを介して、前記マルチチップモジュールの前記第１のプロトコルロジックブロックダイへと送り戻すステップと、
前記第１のプロトコルロジックブロックダイからの前記パケットを、前記インターポーザを介して、前記マルチチップモジュールの前記第１のトランシーバダイへと送り戻すステップと、
前記第１のトランシーバダイからの前記パケットを、前記マルチチップモジュールへと送るステップとをさらに備える、請求項９〜１２のいずれか１項に記載の方法。
【国際調査報告】
2013546275.tif 000021
2013546275.tif 000022
2013546275.tif 000023