IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ インテル・コーポレーションの特許一覧

特表2024-530062ダイツーダイ(D2D)相互接続のためのレーン修復およびレーン反転実装
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-08-15
(54)【発明の名称】ダイツーダイ(D2D)相互接続のためのレーン修復およびレーン反転実装
(51)【国際特許分類】
   G06F 11/20 20060101AFI20240807BHJP
   G06F 13/36 20060101ALI20240807BHJP
   H01L 23/12 20060101ALI20240807BHJP
   H01L 23/52 20060101ALI20240807BHJP
   G06F 15/78 20060101ALI20240807BHJP
【FI】
G06F11/20 602
G06F13/36 530B
H01L23/12 Q
H01L23/52 C
G06F15/78 530
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023567003
(86)(22)【出願日】2022-11-22
(85)【翻訳文提出日】2023-12-25
(86)【国際出願番号】 US2022050653
(87)【国際公開番号】W WO2023129304
(87)【国際公開日】2023-07-06
(31)【優先権主張番号】63/295,204
(32)【優先日】2021-12-30
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】17/844,356
(32)【優先日】2022-06-20
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】591003943
【氏名又は名称】インテル・コーポレーション
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】セシャン、ラクシュミプリヤ
(72)【発明者】
【氏名】パスダスト、ジェラルド
(72)【発明者】
【氏名】ワン、ペイペイ
(72)【発明者】
【氏名】ランカ、ナラシムハ
(72)【発明者】
【氏名】チョーダリー、スワデシュ
(72)【発明者】
【氏名】ウ、ズオグオ
(72)【発明者】
【氏名】ダス シャーマ、デベンドラ
【テーマコード(参考)】
5B034
5B062
【Fターム(参考)】
5B034BB02
5B034CC05
5B062BB07
5B062CC04
(57)【要約】
1つの実施形態において、装置は、プロトコル層回路および物理層回路と通信するためのダイツーダイアダプタを有する第1のダイ、ここで、ダイツーダイアダプタは、第1の相互接続プロトコルの第1の情報を受信する;およびダイツーダイアダプタに結合された物理層回路を備える。物理層回路は、相互接続を介して、第1の情報を受信して第2のダイへ出力するように構成されており、第1の複数のデータレーンを介してデータを送信するための第1の複数のトランスミッタ;および少なくとも1つの冗長トランスミッタを有する。物理層回路は、第1の複数のデータレーンの1番目のデータレーンを少なくとも1つの冗長トランスミッタへ再マッピングするように構成され得る。他の実施形態が説明され、および特許請求される。
【特許請求の範囲】
【請求項1】
第1のダイを備える装置であって、
前記第1のダイは、
プロトコル層回路および物理層回路と通信するためのダイツーダイアダプタ、ここで、前記ダイツーダイアダプタは、第1の相互接続プロトコルの第1の情報を含むメッセージ情報を受信する;および
前記ダイツーダイアダプタに結合された前記物理層回路、ここで、前記物理層回路は、相互接続を介して、前記第1の情報を受信して第2のダイへ出力する
を有し、
前記物理層回路は、
第1の複数のデータレーンを介してデータを送信するための第1の複数のトランスミッタ;および
少なくとも1つの冗長トランスミッタ、ここで、前記物理層回路は、前記第1の複数のデータレーンの1番目のデータレーンを前記少なくとも1つの冗長トランスミッタへ再マッピングする
を含む、
装置。
【請求項2】
前記第1のダイ上に適合された第1の複数のバンプ、ここで、前記第1の複数のバンプは、前記第1の複数のデータレーンに関連付けられている;および
前記第1のダイ上に適合された少なくとも1つの冗長バンプ、ここで、前記物理層回路は、前記1番目のデータレーンを前記複数のバンプの第1のバンプから前記少なくとも1つの冗長バンプへ再マッピングする
をさらに備える、請求項1に記載の装置。
【請求項3】
前記少なくとも1つの冗長トランスミッタは、
第1の冗長トランスミッタ、ここで、前記物理層回路は、前記1番目のデータレーンを前記第1の冗長トランスミッタへ再マッピングして、前記1番目のデータレーンにおけるレーン障害を修復する;および
第2の冗長トランスミッタ、ここで、前記物理層回路は、前記第1の複数のデータレーンの2番目のデータレーンを前記第2の冗長トランスミッタへ再マッピングして、前記2番目のデータレーンにおけるレーン障害を修復する
を含む、
請求項1に記載の装置。
【請求項4】
前記物理層回路は、前記第1の冗長トランスミッタおよび前記第2の冗長トランスミッタを介して、32個のデータレーンのグループのうちの2つのデータレーンを修復する、請求項3に記載の装置。
【請求項5】
前記第1の複数のトランスミッタに結合された第1の複数のマルチプレクサをさらに備え、ここで、前記物理層回路は、対応するデータレーン、1番目の隣接データレーンまたは2番目の隣接データレーンのうちの1つからのデータを渡すよう前記第1の複数のマルチプレクサを制御する、請求項1に記載の装置。
【請求項6】
前記物理層回路は、
前記第1の複数のマルチプレクサの第1の部分を用いて左シフト演算が実行されることで1番目のデータレーンにおけるレーン障害が修復されるようにする;および
前記第1の複数のマルチプレクサの第2の部分を用いて右シフト演算が実行されることで2番目のデータレーンにおけるレーン障害が修復されるようにする
請求項5に記載の装置。
【請求項7】
第2の複数のデータレーンを介して第2のメッセージ情報を受信するための第1の複数のレシーバ;および
少なくとも1つの冗長レシーバ、ここで、前記第2の複数のデータレーンの1番目のデータレーンにおける障害に応答して、前記物理層回路は、前記第2の複数のデータレーンの前記2番目のデータレーンを前記少なくとも1つの冗長レシーバへ再マッピングする
をさらに備える、請求項1に記載の装置。
【請求項8】
前記物理層回路は、
第1のクロックレーンを介してクロック信号を送信するための第1のクロックトランスミッタ;および
少なくとも1つの冗長クロックトランスミッタ、ここで、前記物理層回路は、前記第1のクロックレーンを前記少なくとも1つの冗長トランスミッタへ再マッピングする
をさらに有する、
請求項1から7のいずれか一項に記載の装置。
【請求項9】
前記物理層回路は、前記第1の複数のデータレーンのうちの少なくともいくつかの論理レーン順序を反転させる、請求項1に記載の装置。
【請求項10】
前記第1の複数のトランスミッタの第1のトランスミッタに関連付けられた1番目のデータレーンが前記第2のダイのN番目のデータレーンに結合される場合、前記物理層回路は、前記論理レーン順序を反転させ、ここで、Nは、モジュール内のデータレーンの数に等しい、請求項9に記載の装置。
【請求項11】
前記物理層回路は、前記第1の複数のデータレーンの少なくとも1つのデータレーンを前記1番目のデータレーンにおける障害に応答して再マッピングし、前記第1の複数のデータレーンのうちの少なくともいくつかの論理レーン順序を反転させる、請求項1から10のいずれか一項に記載の装置。
【請求項12】
第1のダイおよび第2のダイおよび前記第1のダイおよび前記第2のダイを結合する相互接続を含むパッケージの前記第1のダイの物理層回路を介して、前記相互接続のメインバンドの第1の複数の物理データレーンの1番目の物理データレーンにおける障害を特定する段階であって、前記相互接続は、前記メインバンドおよびサイドバンドを含む、特定する段階;
前記障害の特定に応答して、前記第1のダイの前記物理層回路を介して、1番目の論理データレーンの第1のデータトラフィックを前記メインバンドの2番目の物理データレーン上へ再マッピングする段階;および
前記サイドバンドを介して、前記再マッピングに関する情報を前記第2のダイへ通信する段階
を備える方法。
【請求項13】
前記第2のダイの物理層回路を介して、前記1番目の論理データレーンの前記第1のデータトラフィックを前記第2のダイ内の前記2番目の物理データレーンから前記1番目の論理データレーンへ再マッピングする段階をさらに備える、請求項12に記載の方法。
【請求項14】
前記第1のダイの前記物理層回路を介して、前記相互接続のクロック物理データレーンにおける障害を特定する段階;
前記クロック物理データレーンにおける前記障害の特定に応答して、前記第1のダイの前記物理層回路を介して、クロック信号を前記クロック物理データレーンから冗長クロック物理データレーンへ再マッピングする段階;および
前記サイドバンドを介して、前記クロック信号の前記再マッピングに関する情報を前記第2のダイへ通信する段階
をさらに備える、請求項12に記載の方法。
【請求項15】
前記1番目の論理データレーンの前記第1のデータトラフィックを前記第1のダイの第1のマルチプレクサに提供する段階;および
前記第1のデータトラフィックを前記2番目の物理データレーンに関連付けられた前記第1のダイの第2のトランスミッタに提供するために、前記第1のダイの前記物理層回路を介して前記第1のマルチプレクサを制御する段階
をさらに備える、請求項12に記載の方法。
【請求項16】
前記物理層回路を介して、前記1番目の物理データレーンに関連付けられた前記第1のダイの第1のトランスミッタを無効化する段階をさらに備える、請求項15に記載の方法。
【請求項17】
実行された場合に請求項12から16のいずれか一項に記載の方法を実装するためのコンピュータ可読命令を備えるコンピュータ可読記憶媒体。
【請求項18】
請求項12から16のいずれか一項に記載の方法を実行するための手段を備える装置。
【請求項19】
中央処理装置(CPU)およびプロトコルスタックを有する第1のダイおよび相互接続を介して前記第1のダイに結合された第2のダイを備えるパッケージであって、
前記第1のダイは、
フリットアウェアダイツーダイインタフェース(FDI)を介してプロトコル層回路と、ローダイツーダイインタフェース(RDI)を介して物理層回路と通信するためのダイツーダイアダプタ、ここで、前記ダイツーダイアダプタは、第1の相互接続プロトコルの第1の情報を含むメッセージ情報を通信する;および
前記RDIを介して前記ダイツーダイアダプタに結合された前記物理層回路、ここで、前記物理層回路は、前記相互接続を介して前記第1の情報を受信して前記第2のダイへ出力する
を有し、
前記物理層回路は、
第1の複数の物理データレーンを介してデータを受信するための第1の複数のレシーバ;および
少なくとも1つの冗長レシーバ、ここで、前記物理層回路は、第1の複数の物理データレーンのデータトラフィックを、前記第1の複数の物理データレーンの1番目の物理レーンにおけるレーン障害に応答して、前記第1の複数の物理データレーンのうちの隣接するもの、および前記少なくとも1つの冗長レシーバに関連付けられた少なくとも1つの冗長レーンへシフトする
を含む、
パッケージ。
【請求項20】
前記物理層回路は、別のレーン障害に応答して、少なくとも1つの冗長トランスミッタを有効化し、別の物理レーンに関連付けられた第1の複数のトランスミッタの第1のトランスミッタをトライステート化する、請求項19に記載のパッケージ。
【請求項21】
前記相互接続は、前記第1の複数の物理データレーンを含むメインバンド、およびサイドバンドを含み、前記物理層回路は、前記サイドバンドを介して、前記第2のダイから前記データトラフィックのシフトに関する情報を受信する、請求項19に記載のパッケージ。
【請求項22】
前記第2のダイは、アクセラレータを有し、ここで、前記第1のダイは、ペリフェラルコンポーネントインターコネクトエクスプレス(PCIe)プロトコルのフリットモードまたはコンピュートエクスプレスリンク(CXL)プロトコルのフリットモードのうちの少なくとも一方に従って、前記第2のダイと通信する、請求項19に記載のパッケージ。
【請求項23】
メインバンドおよびサイドバンドを含む相互接続手段であって、第1のダイ手段および第2のダイ手段を結合する、相互接続手段の前記メインバンドの第1の複数の物理データレーン手段の1番目の物理データレーン手段における障害を特定するための手段;
1番目の論理データレーン手段の第1のデータトラフィックを前記メインバンドの2番目の物理データレーン手段上へ再マッピングするための手段;
前記サイドバンドを介して、前記再マッピングに関する情報を前記第2のダイ手段へ通信するための手段
を備える装置。
【請求項24】
前記1番目の論理データレーン手段の前記第1のデータトラフィックを前記第2のダイ手段内の前記2番目の物理データレーン手段から前記1番目の論理データレーン手段へ再マッピングするための手段をさらに備える、請求項23に記載の装置。
【請求項25】
前記相互接続手段のクロック物理データレーン手段における障害を特定するための手段;
クロック信号を前記クロック物理データレーン手段から冗長クロック物理データレーン手段へ再マッピングするための手段;および
前記サイドバンドを介して、前記クロック信号の前記再マッピングに関する情報を前記第2のダイ手段へ通信するための手段
をさらに備える、請求項23に記載の装置。
【請求項26】
前記1番目の論理データレーン手段の前記第1のデータトラフィックを前記第1のダイ手段の第1のマルチプレクサ手段に提供するための手段;および
前記第1のデータトラフィックを前記2番目の物理データレーン手段に関連付けられた前記第1のダイ手段の第2のトランスミッタ手段に提供するために前記第1のマルチプレクサ手段を制御するための手段
をさらに備える、請求項23に記載の装置。
【発明の詳細な説明】
【背景技術】
【0001】
チップレットはアドバンストパッケージ技術を用いて統合されるので、歩留まりが高くなり、低い設計コストを維持できる。しかしながら、製造されたダイに単一バンプ接続障害があると、パッケージ化された部分の全体が廃棄されることになり、無駄およびコストの問題につながり得る。
【図面の簡単な説明】
【0002】
図1】一実施形態によるパッケージのブロック図である。
【0003】
図2A】実施形態を組み込んだ異なるパッケージングオプションの断面図である。
図2B】実施形態を組み込んだ異なるパッケージングオプションの断面図である。
図2C】実施形態を組み込んだ異なるパッケージングオプションの断面図である。
図2D】実施形態を組み込んだ異なるパッケージングオプションの断面図である。
【0004】
図3A】1つまたは複数の実施形態を実装し得る層状プロトコルのブロック図である。
図3B】1つまたは複数の実施形態を実装し得る層状プロトコルのブロック図である。
【0005】
図4A】様々な実施形態によるマルチダイパッケージのブロック図である。
図4B】様々な実施形態によるマルチダイパッケージのブロック図である。
【0006】
図5】一実施形態によるダイツーダイ接続を示す概略図である。
【0007】
図6A】一実施形態によるサイドバンドシグナリングを示すタイミング図である。
図6B】一実施形態によるサイドバンドシグナリングを示すタイミング図である。
【0008】
図7】一実施形態によるオンパッケージマルチプロトコル対応相互接続のブリングアップフローを示すフロー図である。
【0009】
図8】一実施形態によるリンクトレーニングステートマシンのフロー図である。
【0010】
図9】一実施形態によるメインバンド初期化のさらなる詳細のフロー図である。
【0011】
図10】一実施形態によるメインバンドトレーニングのフロー図である。
【0012】
図11A】一実施形態によるデータレーン再マッピング可能性の例示である。
【0013】
図11B】一実施形態によるモジュール内の単一レーン障害の代表的な再マッピング構成である。
【0014】
図11C】一実施形態によるモジュール内の2レーン障害の代表的な再マッピング構成である。
【0015】
図12A】一実施形態によるダイツーダイ接続の一部分の概略図である。
【0016】
図12B】単一レーン再マッピング演算を示す、一実施形態によるダイツーダイ接続の一部分の概略図である。
【0017】
図12C】2個のレーンの再マッピング演算を示す、一実施形態によるダイツーダイ接続の一部分の概略図である。
【0018】
図13】一実施形態による方法のフロー図である。
【0019】
図14】一実施形態による別の例示的なシステムのブロック図である。
【0020】
図15】エッジプラットフォームなどの別の実施形態によるシステムのブロック図である。
【0021】
図16】別の実施形態によるシステムのブロック図である。
【発明を実施するための形態】
【0022】
様々な実施形態において、半導体パッケージ内の1つまたは複数のダイ実装は、回復スキームを提供することで、パッケージ化された部分の歩留まりをアドバンスト相互接続技術を用いて改善するための冗長ハードウェア回路を含み得る。実装において、物理層内での冗長バンプおよび他の冗長回路および対応する回復メカニズムの分散は、最小のオーバヘッドで最大のカバレッジを実現できるよう、慎重に設計され得る。また、実施形態は、送信および受信レーンの間のレーン再マッピングおよび/またはレーン反転を、例えばフロアプランの制約に起因してこれらのレーンがビットレーン一致方式で接続されてない場合に実行する能力を提供する。
【0023】
実施形態は、修復、再マッピング等のような全てのタイプのレーン再マッピング課題をバンプエリアおよび性能への最小のオーバヘッドで解決するための非常に一般的な手段を実現する。このために、冗長レーンは、送信および受信側でレーン毎データを独立して前方および後方へシフトするための十分な柔軟性をもって、各モジュールの開始箇所および終了箇所に設けられ得る。任意のタイプのバンプ接続課題を修復および回復するために、冗長レーンの十分な利用が用いられ得る。
【0024】
様々な実施形態において、パッケージの分離されたダイの間を通信するために、マルチプロトコル対応型オンパッケージ相互接続が用いられ得る。順序付けられたブリングアップフローによりこの相互接続を初期化およびトレーニングすることで、異なるダイの独立したリセット、パートナダイの「リセット終了」の検出、および相互接続のサイドバンドおよびメインバンドインタフェースの順序付けられた初期化およびトレーニングを(その順序で)可能にし得る。より具体的には、サイドバンド初期化は、リンクパートナダイがリセットを終了していることを検出してサイドバンドを初期化およびトレーニングするために実行され得る。その後、メインバンドが初期化およびトレーニングされてよく、これらは、本明細書においてさらに説明される任意のレーン反転および/または修復演算を含み得る。そのようなメインバンド演算は、既にブリングアップされているサイドバンドを活用して、同期およびステータス情報を通信し得る。
【0025】
レーン反転および/または修復を実行する実施形態では、アドバンストパッケージマルチチップパッケージ(MCP)のレーン接続課題に起因する歩留まり損失が回復され得る。さらに、一実施形態によるレーン修復技術により、左シフト技術および右シフト技術の両方が、効率的なレーン修復のためのバンプマップ全体をカバーし得る。なおさらに、レーン反転検出によりダイの回転およびダイのミラーリングが可能になることで、同じダイでの複数のオンパッケージインスタンス化が可能になり得る。このように、レーン反転により、同じダイの複数のテープインが排除され得る。
【0026】
実施形態は、複数のチップレットまたはダイを単一のパッケージ上で接続するために用いられ得るマルチプロトコル対応型オンパッケージ相互接続プロトコルに関連して実装され得る。この相互接続プロトコルでは、分離されたダイアーキテクチャの強力なエコシステムが共に相互接続され得る。このオンパッケージ相互接続プロトコルは、「ユニバーサルチップレットインターコネクトエクスプレス(UCIe)相互接続プロトコル」と称されることがあり、Special Interest Group(SIG)または他のプロモータまたは他の主体により発行され得るUCIe仕様に従ったものであってよい。本明細書では「UCIe」と称されるが、マルチプロトコル対応型オンパッケージ相互接続プロトコルは別の用語を採用し得ることを理解されたい。
【0027】
このUCIe相互接続プロトコルは、特定の通信プロトコルのフリットベースモードを含む複数の基礎となる相互接続プロトコルをサポートし得る。1つまたは複数の実施形態において、UCIe相互接続プロトコルは、例えばコンピュートエクスプレスリンク(CXL)仕様(CXL仕様バージョン2.0(2020年11月に公開された)、そのあらゆる将来の更新、バージョンまたは変形など)の所与のバージョンに従ったCXLプロトコルのフリットモード;例えばペリフェラルコンポーネントインターコネクトエクスプレス(PCIe)仕様(PCIeベース仕様バージョン6.0(2022年に公開された)またはそのあらゆる将来の更新、バージョンまたは変形)など)の所与のバージョンに従ったPCIeフリットモード;および、リンクパートナによりサポートされるあらゆるプロトコルをマッピングするために用いられるロー(またはストリーミング)モードをサポートし得る。1つまたは複数の実施形態において、UCIe相互接続プロトコルは、後方互換性がないことがあり、代わりに、上述のプロトコル、または通信のフリットモードをサポートする他のプロトコルの現在および将来のバージョンに対応し得ることに留意されたい。
【0028】
実施形態は、計算連続体、スパニングクラウド、エッジ、エンタープライズ、5G、自動車、高性能コンピューティングおよびハンドヘルドセグメントの全体にわたって計算、メモリ、ストレージおよび接続を提供するために用いられ得る。実施形態は、異なるfabs、異なる設計および異なるパッケージング技術を含む異なるソースからのダイをパッケージ化またはそうでなければ結合するために用いられ得る。
【0029】
また、チップレットインテグレーションオンパッケージは、顧客が異なる数およびタイプのダイを選ぶことにより異なる市場セグメントについて異なるトレードオフを行うことを可能にする。例えば、セグメントに応じて、異なる数の計算、メモリおよびI/Oダイを選び得る。したがって、異なるセグメントのための異なるダイ設計が必要ではないので、より低い製品在庫管理単位(SKU)コストがもたらされる。
【0030】
図1をここで参照すると、一実施形態によるパッケージのブロック図が示される。図1に示されるように、パッケージ100は、任意のタイプの集積回路パッケージであってよい。示されている特定の図において、パッケージ100は、中央処理装置(CPU)ダイ1100-n、アクセラレータダイ120、入力/出力(I/O)タイル130およびメモリ1401-4を含む複数のチップレットまたはダイを含む。これらのダイのうちの少なくとも特定のものは、一実施形態によるオンパッケージ相互接続を介して、共に結合され得る。示されるように、相互接続1501-3は、UCIe相互接続として実装され得る。CPU110は、コヒーレンシプロトコルを実行するUCIe相互接続を用いてCPU-CPU接続オンパッケージを場合によっては提供し得る別のオンパッケージ相互接続155を介して結合し得る。1つのそのような例として、このコヒーレンシプロトコルは、Intel(登録商標) Ultra Path Interconnect(UPI)であってよい;もちろん、他の例が可能である。
【0031】
本明細書において説明されるUCIeプロトコルへマッピングされたプロトコルはPCIeおよびCXLを含むが、実施形態がこの点において限定されないことを理解されたい。例示的な実施形態において、任意の基礎となるプロトコルのマッピングは、ローモードを含むフリットフォーマットを用いて行われ得る。一実装において、これらのプロトコルマッピングは、一実施形態によるUCIeダイツーダイアダプタおよびPHYで特定の物理層回路(例えば、リンクレベル再試行を伴うPCIe SERDES PHYおよびPCIe/CXL LogPHY)を置換することによってよりオンパッケージな統合を可能にして、電力および性能特性を改善し得る。加えて、ローモードは、スタンドアロンSERDES/トランシーバタイル(例えば、イーサネット(登録商標))オンパッケージの統合などの使用法を可能にしつつ、他のプロトコルがマッピングされることを可能にすべくプロトコルに依存しないものであってよい。図1にさらに示されるように、オフパッケージ相互接続は、CXL/PCIeプロトコルおよびダブルデータレート(DDR)メモリ相互接続プロトコル等を含む様々なプロトコルに従い得る。
【0032】
例示的な実装において、アクセラレータ120および/またはI/Oタイル130は、CXLのI/O、コヒーレンシおよびメモリプロトコルを活用することにより、UCIe相互接続150上で動作するCXLトランザクションを用いてCPU110に接続され得る。図1の実施形態において、I/Oタイル130は、パッケージの外部のCXL、PCIeおよびDDRピンにインタフェースを提供できる。静的または動的に、アクセラレータ120は、UCIe相互接続150上で動作するPCIeトランザクションを用いてCPU110にも接続され得る。
【0033】
一実施形態によるパッケージは、例えばスマートフォン等の小さいポータブルデバイスから、クライアントコンピューティングデバイスおよびサーバまたは他のデータセンタコンピューティングデバイスを含むより大きいデバイスまでの、多くの異なるタイプのコンピューティングデバイスにおいて実装され得る。このように、UCIe相互接続により、ラック/ポッドレベルでのローカル接続および長距離接続が可能になり得る。図1には示されていないが、オフパッケージ相互接続を用いてこのパッケージを超えてUCIe接続を拡張するために、少なくとも1つのUCIeリタイマが用いられ得ることを理解されたい。オフパッケージ相互接続の例は、電気ケーブル、光ケーブル、または、パッケージをラック/ポッドレベルで接続するための任意の他の技術を含む。
【0034】
実施形態はさらに、CXL2.0(またはそれ以降の)プロトコルを用いたラック/ポッドレベルディスアグリゲーションをサポートするために用いられ得る。そのような構成において、異なる計算シャーシからの複数の計算ノード(例えば、仮想階層)は、1つまたは複数の別個のドロワ内に配置され得る複数のCXLアクセラレータ/Type-3メモリデバイスに結合し得るCXLスイッチに結合する。各コンピュートドロワは、UCIeリタイマを通じてCXLプロトコルを実行するオフパッケージ相互接続を用いて、このスイッチに結合し得る。
【0035】
図2Aから図2Dをここで参照すると、実施形態を組み込んだ異なるパッケージングオプションの断面図が示される。図2Aに示されるように、パッケージ200は、アドバンストパッケージング技術を提供するアドバンストパッケージであってよい。1つまたは複数の実施形態において、アドバンストパッケージ実装は、省電力性能用途を含む性能最適化用途に用いられ得る。いくつかのそのような例示的なユースケースにおいて、チャネルリーチは、短くて(例えば、2mm未満)よく、相互接続は、最も良い性能および電力効率特性を有する高帯域幅かつ低遅延のために最適化され得る。
【0036】
図2Aに示されるように、パッケージ200は、複数のダイ2100-2を含む。図2Aには3つの特定のダイが示されているが、他の実装ではより多くのダイが存在し得ることを理解されたい。ダイ210は、パッケージ基板220上に適合されている。1つまたは複数の実施形態において、ダイ210は、バンプを介して基板220に適合され得る。示されるように、パッケージ基板220は、オンパッケージ相互接続2261-2を含む複数のシリコンブリッジ2251-2を含む。一実施形態において、相互接続226は、UCIe相互接続として実装されてよく、シリコンブリッジ225は、Intel(登録商標) EMIB bridgeとして実装されてよい。
【0037】
図2Bをここで参照すると、パッケージ構成がチップオンウェハオンサブストレート(CoWoS)として実装されたアドバンストパッケージの別の実施形態が示される。この図において、パッケージ201は、インターポーザ230上に適合されたダイ210を含み、このインターポーザは、対応するオンパッケージ相互接続236を含む。結果として、インターポーザ230は、バンプを介してパッケージ基板220に適合する。
【0038】
図2Cをここで参照すると、ファンアウト有機インターポーザ230を用いてパッケージ構成が実装されたアドバンストパッケージの別の実施形態が示される。この図において、パッケージ202は、対応するオンパッケージ相互接続236を含むインターポーザ230上に適合されたダイ210を含む。結果として、インターポーザ230は、バンプを介してパッケージ基板220に適合する。
【0039】
図2Dをここで参照すると、別のパッケージ図が示される。パッケージ203は、標準パッケージング技術を提供する標準パッケージであってよい。1つまたは複数の実施形態において、オフパッケージSERDESと比較して大幅に良好なBER特性を依然として提供しつつ、有機パッケージ/基板上のトレースを用いた低コストかつ長距離(例えば、10mmから25mm)相互接続のために、標準パッケージ実装が用いられ得る。この実装において、パッケージ203は、シリコンブリッジ等を含むことなくオンパッケージ相互接続226がパッケージ基板220内に直接適合されたパッケージ基板220に適合されたダイ210を含む。
【0040】
図3A図3Bをここで参照すると、1つまたは複数の実施形態を実装し得る層状プロトコルのブロック図が示される。図3Aの高レベルで示されるように、回路300内に実装された層状プロトコルの複数の層が、相互接続プロトコルを実装し得る。プロトコル層310は、1つまたは複数のアプリケーション固有プロトコルの情報を通信し得る。1つまたは複数の実装において、プロトコル層310は、PCIeまたはCXLフリットモードおよび/またはストリーミングプロトコルのうちの1つまたは複数に従って動作して、送信されるユーザ定義プロトコルのための汎用モードを提供し得る。各プロトコルについて、異なる組織および関連付けられたフリット転送が利用可能である。
【0041】
結果として、プロトコル層310は、インタフェース315を介してダイツーダイアダプタ(D2D)アダプタ320に結合する。一実施形態において、インタフェース315は、フリットアウェアD2Dインタフェース(FDI)として実装され得る。一実施形態において、D2Dアダプタ320は、プロトコル層310および物理層330を調整して、UCIeリンク340にわたるデータ転送の成功を保証するように構成され得る。アダプタ320は、メインデータパス上のロジックを可能な限り最小化することで、プロトコルフリットのための低遅延で最適化されたデータパスを与えるように構成され得る。
【0042】
図3Aは、D2Dアダプタ320内で実行される様々な機能を示す。D2Dアダプタ320は、接続されたダイ(「チップレット」とも称される)のためのリンク状態管理およびパラメータネゴシエーションを提供し得る。なおさらに、例えば、ローBERが1e-27未満である場合、D2Dアダプタ320は、任意選択的に、巡回冗長検査(CRC)およびリンクレベル再試行メカニズムを通じて、データの信頼できる配信を保証し得る。複数のプロトコルがサポートされる場合、D2Dアダプタ320は、基礎となるアービトレーションメカニズムを定義し得る。例えば、CXLプロトコルの通信をトランスポートする場合、アダプタ320は、複数の同時プロトコルの通信をサポートするアービトレータ/マルチプレクサ(ARB/MUX)機能を提供し得る。1つまたは複数の実施形態において、信頼できる転送をD2Dアダプタ320が担う場合、例えば256バイトといった所与のサイズのフロー制御ユニット(フリット)が、基礎となる転送メカニズムを定義し得る。
【0043】
演算がフリットモードでのものである場合、ダイツーダイアダプタ320は、CRC情報を挿入およびチェックし得る。対照的に、演算がローモードでのものである場合、フリットの全ての情報(例えば、バイト)が、プロトコル層310によりポピュレートされる。適用可能である場合、アダプタ320はまた、再試行を実行し得る。アダプタ320はさらに、より高いレベルのリンクステートマシン管理を調整すると共に、リモートリンクパートナとのプロトコルオプション関連パラメータ交換、および、サポートされている場合にはリモートリンクパートナとの電力管理調整をブリングアップするように構成され得る。使用モデルに応じて、異なる基礎となるプロトコルが用いられ得る。例えば、一実施形態において、直接メモリアクセス、ソフトウェア発見および/またはエラー処理等を用いたデータ転送は、PCIe/CXL.ioを用いて処理され得る;メモリユースケースは、CXL.Memを通じて処理され得る;かつ、アクセラレータなどの用途のキャッシュ要件は、CXL.cacheを用いて処理され得る。
【0044】
結果として、D2Dアダプタ320は、インタフェース325を介して物理層330に結合する。一実施形態において、インタフェース325は、ローD2Dインタフェース(RDI)であってよい。図3Bに示されるように、物理層330は、ダイツーダイ相互接続340(一実施形態において、UCIe相互接続または別のマルチプロトコル対応オンパッケージ相互接続であってよい)とインタフェース接続するための回路を含む。1つまたは複数の実施形態において、物理層330は、電気シグナリング、クロッキング、リンクトレーニング、サイドバンド等を担い得る。
【0045】
相互接続340は、シグナリングを搬送するための物理回路であるいわゆる「レーン」の形態であってよいサイドバンドおよびメインバンドリンクを含み得る。一実施形態において、レーンは、物理バンプまたは他の導電性要素へマッピングされた信号のペア(1つは送信用であり、もう1つは受信用である)を搬送するための回路を構成し得る。一実施形態において、UCIeリンクは、N個のレーンで構成される。
【0046】
図3Bに示されるように、物理層330は、3つのサブコンポーネント、すなわち、物理(PHY)ロジック332、電気アナログフロントエンド(AFE)334およびサイドバンド回路336を含む。一実施形態において、相互接続340は、モジュールまたはクラスタと呼ばれる複数のレーンのグループとして編成され得る複数の物理バンプ上のメインデータパスを提供するメインバンドインタフェースを含む。
【0047】
相互接続340の構築の単位は、本明細書において「クラスタ」または「モジュール」と、等しく称される。一実施形態において、クラスタは、N個のシングルエンド単方向全二重データレーン、Valid用の1個のシングルエンドレーン、追跡用の1個のレーン、方向毎の差動転送クロック、およびサイドバンド用の方向毎の2個のレーン(シングルエンドクロックおよびデータ)を含み得る。したがって、モジュール(またはクラスタ)は、AFE334の構造設計実装の原子粒度を形成する。標準的およびアドバンストパッケージのモジュール毎に設けられた異なる数のレーンが存在し得る。例えば、標準パッケージについては、16個のレーンが単一のモジュールを構成するが、アドバンストパッケージについては、64個のレーンが単一のモジュールを構成する。実施形態はこの点において限定されないが、相互接続340は、リンクパートナダイ上に存在するPHY回路の間の相互接続を提供する導電性トレース、導電性パッドおよびバンプ等のうちの1つまたは複数を用いて実装され得る物理相互接続である。
【0048】
プロトコル層310またはD2Dアダプタ320の所与のインスタンスは、帯域幅スケーリングが実装される複数のモジュールを介して、データを送信できる。ダイの間の相互接続340の物理リンクは、(1)サイドバンド接続;および(2)メインバンド接続という2つの別個の接続を含み得る。実施形態において、サイドバンド接続は、パラメータ交換、デバッグのためのレジスタアクセス/リンクトレーニングおよび管理のためのリモートパートナへの準拠およびリモートパートナとの調整に用いられる。
【0049】
1つまたは複数の実施形態において、サイドバンドインタフェースは、各方向における少なくとも1つのデータレーンおよび少なくとも1つのクロックレーンで形成される。別の言い方をすると、サイドバンドインタフェースは、送信および受信方向の2信号インタフェースである。アドバンストパッケージの使用において、修復または帯域幅増加のために、各方向における追加のデータおよびクロックペアには冗長性が提供され得る。サイドバンドインタフェースは、各方向における転送クロックピンおよびデータピンを含み得る。1つまたは複数の実施形態において、サイドバンドクロック信号は、メインデータパス速度にかかわらず800MHzで動作するように構成された補助クロックソースにより生成され得る。物理層330のサイドバンド回路336は、補助電源が設けられてよく、常時オンであるドメインに含まれてよい。一実施形態において、サイドバンドデータは、800メガ転送毎秒(MT/s)のシングルデータレート信号(SDR)で通信され得る。サイドバンドは、常にオンである電源および補助クロックソース上で動作するように構成され得る。各モジュールは、独自のサイドバンドピンセットを有する。
【0050】
メインデータパスを構成するメインバンドインタフェースは、転送クロック、データ有効ピン、およびモジュール毎のN個のデータレーンを含み得る。アドバンストパッケージオプションでは、N=64(×64とも称される)であり、レーン修復のための4つの追加のピンの全部がバンプマップ内に設けられる。標準パッケージオプションでは、N=16(×16とも称される)であり、修復のための追加のピンは設けられない。物理層330は、適切なリンクブリングアップおよび管理(例えば、サイドバンド転送、メインバンドトレーニングおよび修復等)のために、異なる機能およびそれらの相対シーケンシングを調整するように構成され得る。
【0051】
1つまたは複数の実施形態において、アドバンストパッケージ実装は、欠陥レーン(クロック、有効、サイドバンド等を含む)を処理するために、冗長レーン(本明細書において、「スペアレーン」とも称される)をサポートし得る。1つまたは複数の実施形態において、標準パッケージ実装は、障害を処理するために、レーン幅減少をサポートし得る。いくつかの実施形態において、リンク毎のより高い性能を発揮するために、複数のクラスタが集約され得る。
【0052】
図4Aをここで参照すると、一実施形態によるマルチダイパッケージのブロック図が示される。図4Aに示されるように。パッケージ400は、少なくとも、第1のダイ410および第2のダイ450を含む。ダイ410および450は、CPU、アクセラレータまたはI/Oデバイス等を含む様々なタイプのダイであってよいことを理解されたい。図4Aに示される高レベル図において、ダイを共に結合する相互接続440が、破線として示されている。相互接続440は、オンパッケージマルチプロトコル対応相互接続をインスタンス化したもの、例えば、本明細書において説明されるUCIe相互接続であってよい。図4Aには詳細に示されていないが、相互接続440は、共に結合してダイ間の相互接続を提供し得る、各ダイに適合された導電性バンプを用いて実装され得ることを理解されたい。加えて、相互接続440は、1つまたは複数の基板の上部または内部にある導電線など、インパッケージ回路をさらに含み得る。本明細書において用いられる場合、「レーン」という用語は、1つのダイを別のダイに結合するあらゆる相互接続回路を指すことを理解されたい。
【0053】
特定の実施形態において、相互接続440は、1つまたは複数のモジュールを有するUCIe相互接続であってよく、各モジュールは、サイドバンドインタフェースおよびメインバンドインタフェースを含む。この高レベル図において、メインバンドインタフェースは、各ダイ内のメインバンドレシーバおよびトランスミッタ回路に結合している。具体的には、ダイ410は、メインバンドレシーバ回路420およびメインバンドトランスミッタ回路425を含むが、結果として、ダイ450は、メインバンドレシーバ回路465およびメインバンドトランスミッタ回路460を含む。
【0054】
図4Aは、サイドバンドインタフェースの接続をさらに示す。概して、サイドバンドは、各方向におけるデータレーンおよびクロックレーンを含み、アドバンストパッケージの使用において、各方向における追加のデータおよびクロックペアには冗長性が提供され得る。したがって、図4Aは、これら2つのダイのサイドバンド回路の間の第1の可能な接続実装を示す。ダイ410は、サイドバンド回路430を含み、サイドバンド回路430は、第1のサイドバンド回路432を含み、第1のサイドバンド回路432は、第2のダイ450のサイドバンド回路470の対応するサイドバンドトランスミッタおよびレシーバ回路にそれぞれ結合する、対応するサイドバンドクロックおよびデータレシーバ(R_CおよびR_D)およびサイドバンドクロックおよびデータトランスミッタ(T_CおよびT_D)を含む。サイドバンド回路430は、冗長サイドバンドクロックおよびデータトランスミッタおよびレシーバ(上で列挙されたように、「R」は、トランスミッタおよびレシーバの略語である)のための同様の回路を有する第2のサイドバンド回路434も含む。
【0055】
図4Aにおいて、第1のサイドバンド接続インスタンス化が示される。サイドバンド回路432および472は、機能的サイドバンドとして機能し、サイドバンド回路434および474は、冗長サイドバンドとして機能する。
【0056】
サイドバンド初期化中に実行されるサイドバンド検出に応じて、サイドバンドレーンおよび/または関連するサイドバンド回路のうちの1つまたは複数に欠陥があり、したがって、冗長サイドバンド回路の少なくとも一部分が機能的サイドバンドの一部として用いられ得る、と判断され得る。より具体的には、図4Bは、これら2つのダイのサイドバンド回路の間の第2の可能な接続実装を示す。この例において、冗長サイドバンドデータトランスミッタおよびレシーバが、サイドバンド回路472内に存在しており、機能的サイドバンドの一部として機能する。
【0057】
異なる実装において、データツーデータおよびクロックツークロック接続が維持される限り、初期化およびブリングアップフローにより、任意の接続が可能になり得る。そのような初期化に基づいて冗長性が必要とされない場合、サイドバンド帯域幅を拡張するためにサイドバンド回路ペアの両方が用いられることにより、より速いメッセージ交換が可能になり得る。図4Aおよび図4Bはアドバンストパッケージ構成の文脈において示されているが、標準パッケージ内で用いられるダイには同様のサイドバンド回路が存在し得ることに留意されたい。しかしながら、特定の実装では、標準パッケージが冗長性およびレーン修復サポートを提供しないことがあるので、冗長サイドバンド回路および冗長サイドバンドレーンが標準パッケージ内に存在しないことがある。
【0058】
図5をここで参照すると、一実施形態によるダイツーダイ接続を示す概略図が示される。図5に示されるように、パッケージ500は、第1のダイ510および第2のダイ560を含む。相互接続540、例えば、UCIe相互接続は、複数のサイドバンドレーン、すなわち、サイドバンドレーン541-544を含む。サイドバンドレーンの単一方向が示されているが、サイドバンドレーンの対応するセットが他の方向にも設けられ得ることを理解されたい。第1のダイ510は、サイドバンドデータトランスミッタおよびサイドバンドクロックトランスミッタ、すなわち、サイドバンドデータトランスミッタ511、512を含む(サイドバンドデータトランスミッタ512は、冗長トランスミッタである)。第1のダイ510は、サイドバンドクロックトランスミッタ514、515をさらに含む(サイドバンドクロックトランスミッタ515は、冗長トランスミッタである)。第2のダイ560は、結果として、サイドバンドデータレシーバおよびサイドバンドクロックレシーバ、すなわち、サイドバンドデータレシーバ561、562を含む(サイドバンドデータレシーバ562は、冗長レシーバである)。第2のダイ560は、サイドバンドクロックレシーバ564、565をさらに含む(サイドバンドクロックレシーバ565は、冗長レシーバである)。
【0059】
図5をさらに参照すると、どのレーンが機能的サイドバンドに含まれ、どのレーンが冗長サイドバンドの一部であってよいかを判断するためのサイドバンド初期化の一部であってよいサイドバンド検出を実行するために用いられ得る検出回路が、第2のダイ560内に存在している。示されるように、複数の検出器5700-3が設けられている。各検出器570が第2のダイ560のサイドバンドレシーバの異なる組み合わせからの信号を受信するように、各検出器570は、入ってくるサイドバンドデータ信号および入ってくるサイドバンドクロック信号を受信する。サイドバンド初期化中、入ってくるサイドバンドデータ信号は、予め定められたパターンを含む予め定められたサイドバンド初期化パケットであってよい。検出器570は、このパターンの存在を検出し、このパターンの有効な検出(例えば、このパターンの反復回数に対するもの)に応答して第1の結果(例えば、ロジック1)を生成し、予め定められたパターンが検出されなかったことに応答して第2の結果(例えば、ロジック0)を生成するように構成され得る。実施形態はこの点において限定されないが、1つの実装において、この検出演算を実行し、クロック信号および冗長クロック信号を用いてデータおよび冗長データをサンプリングして対応する結果を生成することにより4つの組み合わせをもたらすために、検出器570は、シフトレジスタおよびカウンタ等を用いて構成され得る。
【0060】
冗長サイドバンド回路が修復目的で用いられない場合、冗長サイドバンド回路は特にデータ集約的な転送のためにサイドバンド通信の帯域幅を増やすべく用いられ得ることに留意されたい。例として、一実施形態によるサイドバンドは、ファームウェアおよび/またはダウンロードなど、ダウンロードされる大量の情報を通信するために用いられ得る。または、サイドバンドは、例えば所与の管理プロトコルに従って、管理情報を通信するために用いられ得る。そのような通信は、機能的サイドバンドでの他のサイドバンド情報通信と同時に行われ得ることに留意されたい。
【0061】
図6Aをここで参照すると、一実施形態によるサイドバンドシグナリングを示すタイミング図が示される。図6Aに示されるように、タイミング図600は、サイドバンドクロック信号610およびサイドバンドメッセージ信号620を含む。サイドバンドメッセージフォーマットは、64個の単位間隔(UI)中に通信される32ビットまたは64ビットのデータを含む64ビットヘッダとして定義され得る。サイドバンドメッセージ信号620は、64ビットシリアルパケットを示す。サイドバンドデータは、エッジがクロック(ストローブ)信号とアライメントされた状態で送信され得る。サイドバンドインタフェースのレシーバは、入ってくるデータをストローブでサンプリングする。例えば、ストローブのネガティブエッジは、データがSDRシグナリングを用いるときにデータをサンプリングするために用いられ得る。
【0062】
図6Bをここで参照すると、一実施形態によるサイドバンドパケット連続送信を示すタイミング図が示される。図6Bに示されるように、タイミング図601は、後に第2のサイドバンドパケット624が続く第1のサイドバンドパケット622の通信を示す。示されるように、各パケットは、64UI持続時間中に送信される64ビットシリアルパケットであってよい。より具体的には、第1のサイドバンドパケット622が送信され、結果として、クロックレーンおよびデータレーンの両方でロジックローが32UI持続時間だけ続き、その後、第2のサイドバンドパケット624が通信される。実施形態において、そのようなシグナリングは、サイドバンド初期化中のサイドバンドメッセージを含む様々なサイドバンド通信に用いられ得る。
【0063】
図7をここで参照すると、一実施形態によるオンパッケージマルチプロトコル対応相互接続のブリングアップフローを示すフロー図が示される。図7に示されるように、例えばUCIe相互接続(図7において、D2Dチャネルとして示される)を介して共に結合された2つのダイ(ダイ0および1)に対してリセットフローを独立して実行することにより、ブリングアップフロー700が始まる。したがって、第1のダイ(ダイ0)は、ステージ710において独立のリセットフローを実行し、第2のダイ(ダイ1)も、ステージ710において独立のリセットフローを実行する。各ダイが異なる時刻にリセットフローを終了し得ることに留意されたい。次に、ステージ720において、サイドバンド検出およびトレーニングが実行され得る。ステージ720において、サイドバンドが検出およびトレーニングされ得る。レーン冗長性が利用可能であるアドバンストパッケージの場合、利用可能なレーンが検出され、サイドバンドメッセージのために用いられ得る。上述のように各ダイが異なる時刻にリセットフローを終了し得るので、本明細書において説明されるサイドバンド初期化を含むこのサイドバンド検出およびトレーニングは、結合されたダイにおけるアクティビティの存在を検出するために用いられ得ることに留意されたい。1つまたは複数の実施形態において、リセットを終了してリンクトレーニングを開始するためのトリガは、サイドバンドメッセージパターンの検出である。物理層がリセット状態から遷移する場合において、リンクブリングアップ中にトレーニングするときは、ハードウェアは、トレーニングを複数回試みることを許可される。このブリングアップ動作中、同期が行われ得る。なぜなら、両方のダイの全ての状態および基板の出入りは、ダイ間の4態様サイドバンドメッセージハンドシェイクによってロックステップにあることが保証されるからである。
【0064】
ステージ730において、トレーニングパラメータ交換が機能的サイドバンドに対して実行されてよく、メインバンドトレーニングが行われる。ステージ730において、メインバンドが初期化、修復およびトレーニングされる。最終的に、ステージ740において、プロトコルパラメータ交換がサイドバンドに対して行われ得る。ステージ740において、ローカルダイ機能、リモートダイとのパラメータ交換、および、対応するプロトコル層をダイのD2Dアダプタと結合するFDIのブリングアップを決定することにより、リンク全体が初期化され得る。一実施形態において、メインバンドは、デフォルトで、修復および反転検出が実行される、メインバンド初期化における最も低い許容データレートで初期化する。次に、リンク速度が、パラメータ交換を通じて検出される最も高い共通データレートへ遷移する。リンク初期化の後、物理層は、メインバンドを介してプロトコルフリット転送を実行するように有効化され得る。
【0065】
1つまたは複数の実施形態において、異なるタイプのパケットが、サイドバンドインタフェースを介して通信されてよく、(1)構成(CFG)、またはメモリマップド読み取りまたは書き込みであってよく、かつ、32ビットまたは64ビット(b)であってよいレジスタアクセス;(2)リンク管理(LM)またはベンダ定義パケットであってよく、かつ、追加のデータペイロードを搬送しない、データを含まないメッセージ;(3)パラメータ交換(PE)、リンクトレーニング関連またはベンダ定義のものであってよく、かつ、64bのデータを搬送してよい、データを含むメッセージを含んでよい。パケットは、5ビットオペコード、3ビットソース識別子(srcid)および3ビット宛先識別子(dstid)を搬送し得る。5ビットオペコードは、パケットタイプ、および、パケットが32bのデータまたは64bのデータを搬送するかどうかを示す。
【0066】
フロー制御およびデータインテグリティサイドバンドパケットは、FDI、RDIまたはUCIeサイドバンドリンクにわたって転送され得る。これらの各々は、独立のフロー制御を有する。FDIまたはRDIに関連付けられた各トランスミッタについては、レシーバにより通知されるクレジットの数(最大で32個のクレジット)を決定するために、インタフェースの設計時間パラメータが用いられ得る。各クレジットは、64ビットのヘッダおよび64ビットの潜在的に関連付けられたデータに対応する。したがって、それらがどれくらいのデータを搬送するかにかかわらず、全てのサイドバンドパケットについて1つのタイプのクレジットのみが存在する。全てのトランスミッタ/レシーバペアが、独立のクレジットループを有する。例えば、RDIでは、アダプタから物理層へ送信されるサイドバンドパケットのために、クレジットが物理層からアダプタへ通知される;また、物理層からアダプタへ送信されるサイドバンドパケットのために、クレジットがアダプタから物理層へ通知される。トランスミッタは、レジスタアクセス要求およびメッセージを送信する前に、利用可能なクレジットについてチェックする。トランスミッタは、レジスタアクセス完了を送信する前にはクレジットについてチェックせず、レシーバは、任意のレジスタアクセス完了パケットについての無条件のシンキング(sinking)を保証する。要求または応答を搬送するメッセージは、FDIおよびRDIにおけるクレジットを消費するが、レシーバによるフォワードプログレスを行うこと、および、レジスタアクセス要求の裏でブロックされないことが保証される。RDIおよびFDIの両方は、それらのインタフェースにわたるサイドバンドクレジットリターンの専用信号を与える。RDIおよびFDIに関連付けられた全てのレシーバは、受信したメッセージをデータまたは制御パリティエラーについてチェックし、これらのエラーは、補正不能内部エラー(UIE)へマッピングされ、RDIをLinkError状態へ遷移させる。
【0067】
図8をここで参照すると、一実施形態によるリンクトレーニングステートマシンのフロー図が示される。図8に示されるように、方法800は、例えば、リンクステートマシンを含み得る論理物理層回路により実行されるリンク初期化の一例である。表1は、一実施形態によるリンクトレーニングステートマシンの状態の高レベル説明であり、各状態において実行される詳細およびアクションについては、以下で説明される。
[表1]
【表1】
【0068】
図8を参照すると、方法800は、リセット状態810で始まる。一実施形態において、PHYは、予め定められた最小持続時間(例えば、4ms)にわたってリセット状態に留まることで、位相ロックループ(PLL)を含む様々な回路が安定化することを可能にする。この状態は、電源が安定的であり、サイドバンドクロックが利用可能かつ動作中であり、メインバンドおよびダイツーダイアダプタクロックが安定的かつ利用可能であり、メインバンドクロックが最も遅いIOデータレート(例えば、4GT/sで2GHz)に設定され、かつ、リンクトレーニングトリガが行われた場合、終了し得る。次に、制御は、サイドバンド初期化(SBINIT)状態820に進み、サイドバンド初期化が実行され得る。この状態において、サイドバンドインタフェースが初期化および修復(該当する場合)される。この状態中、メインバンドトランスミッタは、トライステートであってよく、メインバンドレシーバには、無効化が許可される。
【0069】
図8をさらに参照すると、サイドバンド初期化状態820から、制御は、メインバンド初期化が実行されるメインバンド初期化(MBINIT)状態830に進む。この状態において、メインバンドインタフェースが初期化され、および修復され、または低下させられる(該当する場合)。メインバンドのデータレートは、最も低いサポートされるデータレート(例えば、4GT/s)に設定され得る。アドバンストパッケージについて、インタフェース相互接続修復が実行され得る。MBINITにおけるサブ状態では、データ、クロック、追跡および有効レーンの検出および修復が可能になる。レーン修復が必要とされない標準パッケージインタフェースについては、最も低いデータレートでの機能をチェックし、必要とされる場合に幅低下を実行するために、サブ状態が用いられる。
【0070】
次に、ブロック840において、メインバンドトレーニング(MBTRAIN)状態840に入り、メインバンドリンクトレーニングが実行され得る。この状態において、動作速度が設定され、クロックからデータへのセンタリングが実行される。より高い速度では、レシーバクロック補正、送信および受信デスキューのような追加の較正がサブ状態において実行されることで、リンク性能が保証され得る。モジュールが各サブ状態に入り、各状態がサイドバンドハンドシェイクを通じて終了する。サブ状態における特定のアクションが必要とされない場合、UCIeモジュールは、そのサブ状態の動作を実行することなく、サイドバンドハンドシェイクを通じて当該状態の終了を許可される。1つまたは複数の実施形態において、この状態は、アドバンストおよび標準パッケージインタフェースに共通していてよい。
【0071】
次に、制御は、ブロック850に進み、リンク初期化(LINKINIT)状態が生じ、この状態においてリンク初期化が実行され得る。この状態において、ダイツーダイアダプタは、RDI上でアクティブ状態に入る前に、初期リンク管理を完了する。ひとたびRDIがアクティブ状態になると、PHYは、リンク制御レジスタからの「UCIeリンクトレーニングを開始する」というビットのコピーをクリアする。実施形態において、リニアフィードバックシフトレジスタ(LFSR)は、この状態に入るとリセットされる。1つまたは複数の実施形態において、この状態は、アドバンストおよび標準パッケージインタフェースに共通していてよい。
【0072】
最終的に、制御は、アクティブ状態860に進み、通信が通常動作において行われ得る。より具体的には、上位層からのパケットが、これら2つのダイの間で交換され得る。1つまたは複数の実施形態において、この状態における全てのデータが、スクランブラLFSRを用いてスクランブルされ得る。
【0073】
図8をさらに参照すると、アクティブ状態860中、再トレーニング(PHYRETRAIN)状態870への遷移が生じてよく、または、低電力(L2/L1)リンク状態880が生じてよいことに留意されたい。見られるように、低電力リンク状態のレベルに応じて、終了からメインバンドトレーニング状態840またはリセット状態810のいずれかに進み得る。低電力リンク状態では、アクティブ状態にあるダイナミッククロックゲーティングよりも低い電力が消費される。この状態に入り得るのは、RDIが電力管理状態へ遷移した場合である。ローカルアダプタがRDIのアクティブを要求し、またはリモートリンクパートナがL1終了を要求した場合、PHYは、MBTRAIN.SPEEDIDLE状態へ出る。1つまたは複数の実施形態において、L1終了は、RDIでの対応するL1状態終了遷移と調整される。ローカルアダプタがRDIのアクティブ状態を要求し、またはリモートリンクパートナがL2終了を要求した場合、PHYは、リセット状態へ出る。L2終了は、RDIでの対応するL2状態終了遷移と調整され得ることに留意されたい。
【0074】
図8にさらに示されるように、複数のブリングアップ状態のいずれかの間にエラーが生じた場合、制御は、ブロック890に進み、トレーニングエラー状態が生じ得る。この状態は、ステートマシンをリセット状態へ戻すために、何らかの致命的または非致命的イベントに起因する過渡的状態として用いられる。サイドバンドがアクティブである場合、SBINIT以外の任意の状態からTRAINERROR状態に入るために、リンクパートナについてサイドバンドハンドシェイクが実行される。
【0075】
一実施形態において、ダイは、複数の理由でPHYRETRAIN状態に入り得る。トリガは、アダプタを対象としたPHY再トレーニングまたはPHYにより開始されるPHY再トレーニングによるものであってよい。ローカルPHYは、Validフレーミングエラーを検出すると、再トレーニングを開始する。リモートダイがPHY再トレーニングを要求してよく、この結果、ローカルPHYが、この要求を受信すると、PHY再トレーニングに入る。MBTRAIN.LINKSPEED状態中のランタイムリンク試験制御レジスタにおける変化が検出された場合にも、この再トレーニング状態に入り得る。図8の実施形態ではこの高レベルで示されているが、多くの変形および代替例が可能であることを理解されたい。
【0076】
図9をここで参照すると、一実施形態によるメインバンド初期化のさらなる詳細のフロー図が示される。方法900は、メインバンド初期化を実行するためにリンクステートマシンにより実装され得る。示されるように、この初期化は、パラメータ交換状態910、較正状態920、修復クロック状態930、修復検証状態940、反転メインバンド状態950および最終的にメインバンド修復状態960を含む、複数の状態を経る。このメインバンド初期化の完了後、制御は、メインバンドトレーニングに進む。
【0077】
パラメータ交換状態910において、最大ネゴシエート速度および他のPHY設定をセットアップするために、パラメータの交換が行われ得る。一実施形態において、以下のパラメータ、すなわち、電圧振幅;最大データレート;クロックモード(例えば、ストローブまたは継続的クロック);クロック位相;およびモジュールIDが、(例えば、モジュール毎に)リンクパートナと交換され得る。状態920において、必要とされる任意の較正(例えば、送信デューティサイクル補正、レシーバオフセットおよびVref較正)が実行され得る。
【0078】
次に、ブロック930において、アドバンストパッケージインタフェースのクロックおよび追跡レーン、および標準パッケージインタフェースのクロックおよび追跡レーンの機能チェックに対する検出および修復(必要とされる場合)が行われ得る。ブロック940において、モジュールは、クロック位相をそのメインバンドトランスミッタのデータUIの中心に設定し得る。モジュールパートナは、受信した転送クロックを用いて、受信したValidをサンプリングする。全てのデータレーンは、この状態の間、低で保持され得る。この状態は、修復(必要とされる場合)を検出してValidレーンに適用するために用いられ得る。
【0079】
図9をさらに参照すると、クロックおよび有効レーンが機能している場合のみ、ブロック950に入る。この状態において、データレーン反転が検出される。モジュールの全てのトランスミッタおよびレシーバが有効化される。モジュールは、転送クロック位相をそのメインバンドのデータUIの中心に設定する。モジュールパートナは、入ってくる転送クロックを用いて、入ってくるデータをサンプリングする。16ビット「レーン毎ID」パターン(スクランブル処理されていない)は、対応するレーンのレーンIDを用いたレーン固有パターンである。
【0080】
図9をさらに参照すると、レーン反転検出および適用が成功した後にのみ入るブロック960において、モジュールの全てのトランスミッタおよびレシーバが有効化される。モジュールは、クロック位相をそのメインバンドのデータUIの中心に設定する。モジュールパートナは、メインバンドレシーバの入ってくる転送クロックを用いて、入ってくるデータをサンプリングする。この状態において、アドバンストパッケージインタフェースに、および標準パッケージインタフェースの機能チェックおよび幅低下に必要とされる場合、メインバンドレーンが検出および修復される。別の言い方をすると、レーン内でエラーが検出された場合、冗長回路が冗長レーンを介して有効化され得る。
【0081】
例示的な実施形態において、ブリングアップおよび演算中、リンクを有効化しての演算設定を見つけるために、いくつかの低下技術が用いられ得る。まず、(初期ブリングアップまたは関数演算中に)エラーが検出されたが、修復が必要とされない場合、速度低下が行われ得る。そのような速度低下メカニズムは、次に低い許容周波数へリンクを移行させ得る;これは、安定的なリンクが確立されるまで繰り返される。第2に、修復が可能ではない場合(修復リソースがない標準パッケージリンクの場合)、幅低下が行われてよく、一例として、半値幅構成への幅の低下が許容され得る。例えば、16レーンインタフェースは、8レーンインタフェースとして動作するように構成され得る。
【0082】
図10をここで参照すると、一実施形態によるメインバンドトレーニングのフロー図が示される。図10に示されるように、方法1000は、メインバンドトレーニングを実行するためにリンクステートマシンにより実装され得る。メインバンドトレーニングにおいて、メインバンドデータレートは、2つの接続デバイスの最も高い共通データレートに設定される。データツークロックトレーニング、デスキューおよびVrefトレーニングが、複数のサブ状態を用いて実行され得る。図10に示されるように、メインバンドトレーニングは、複数の状態またはサブ状態を経る。示されるように、メインバンドトレーニングは、有効基準電圧トレーニング状態1005を実行することにより始まる。状態1005において、入ってくるValidをサンプリングするためのレシーバ基準電圧(Vref)が最適化される。メインバンドのデータレートは、最も低いサポートされるデータレートであり続ける。モジュールパートナは、転送クロック位相をそのメインバンドトランスミッタのデータUIの中心に設定する。レシーバモジュールは、転送クロックを用いて、Valid信号のパターンをサンプリングする。全てのデータレーンは、Validレーン基準電圧トレーニング中、低で保持される。次に、制御は、データ基準電圧状態1010に進み、入ってくるデータをサンプリングするためのレシーバ基準電圧(Vref)が最適化され、一方、データレートは、最も低いサポートされるデータレート(例えば、4GT/s)であり続ける。トランスミッタは、転送クロック位相をデータUIの中心に設定する。その後、アイドル速度状態1015が生じ、周波数変更がこの電気アイドル状態において許容され得る;より具体的には、データレートは、前の状態において決定された最大共通データレートに設定され得る。その後、回路パラメータは、トランスミッタおよびレシーバ較正状態(1020および1025)において更新され得る。
【0083】
図10をさらに参照すると、様々なトレーニング状態1030、1035、1040および1045が進んで、Validツークロック(valid-to-clock)トレーニング基準電圧レベル、完全データツークロックトレーニングおよびデータレシーバ基準電圧をそれぞれトレーニングし得る。状態1030において、有効信号が機能的であることを保証するために、データレーントレーニングの前に、Validツークロックトレーニングが実行される。レシーバは、転送クロックを用いて、Validのパターンをサンプリングする。状態1035において、モジュールは、基準電圧(Vref)を最適化して、入ってくるValidをこの動作データレートでサンプリングし得る。状態1040において、モジュールは、LFSRパターンを用いて、完全なデータツークロックトレーニング(Validを含む)を実行する。状態1045において、モジュールは、そのデータレシーバの基準電圧(Vref)を最適化して、この動作データレートでの入ってくるデータのサンプリングを最適化し得る。
【0084】
図10をさらに参照すると、その後、レシーバデスキュー状態1050が生じてよく、この状態は、レシーバがレーンツーレーンデスキューを実行してタイミングマージンを改善するための、レシーバにより開始されるトレーニング段階である。次に、別のデータトレーニング状態1055が生じ、この状態では、モジュールパートナのレシーバがレーン毎デスキューを実行した場合、モジュールがクロックを再びセンタリングして、データを集約し得る。次に、制御は、リンク速度状態1060に進み、状態1055において最終的なサンプリングポイントが設定された後に、この動作データレートでのリンク安定性がチェックされ得る。リンク性能がこのデータレートを満たしていない場合、次に低いサポートされるデータレートへ速度が低下させられ、トレーニングが再び実行される。そのような状態の結果に応じて、メインバンドトレーニングが完了してよく、次に、制御は、リンク初期化に進む。そうでなければ、状態1015または修復状態1065のいずれかにおけるリンク速度変更が行われ得る。また、状態1015および1065へ入ることが、低電力状態(例えば、L1リンク電力状態)または再トレーニング状態から生じ得ることに留意されたい。図10の実施形態ではこの高レベルで示されているが、多くの変形および代替例が可能であることを理解されたい。
【0085】
異なる実装において、異なる数の冗長レーンが設けられ得る。1つの例ではいくつかの機能的レーンが、例えばパッケージチップレット組み立て処理中に損傷した場合、ダイを回復するために、PHY層において、およそ3から5%の冗長レーンが追加され得る。もちろん、所与の実装において、追加のまたはより少ない冗長レーンが存在し得る。
【0086】
図11Aをここで参照すると、一実施形態によるデータレーン再マッピング可能性の図が示される。より具体的には、図11Aにおいて、ダイ1100の一部分が、複数のデータレーン1110-111031と共に示される。データレーン1110は、対応する論理送信データレーンが上へマッピングされる物理送信データレーンであってよい。実際の用途では、データレーン1110は、ダイの外部表面上の一連のバンプまたは他の導体において終端して、パッケージ基板またはインターポーザへの直接の(または別のダイへの直接の)適合を可能にし得る。
【0087】
図11Aにさらに示されるように、矢印線は、本明細書において説明される修復および反転演算を可能にするための異なるデータレーンの間の交差接線を表す。
【0088】
図11Aは、対応する冗長データレーン11200、1による論理再マッピング可能性の文脈におけるものである。この再マッピングにより、欠陥データレーンが隣接レーンへ再マッピングされることが可能になり得る。最終的には所与のデータレーンのデータが対応する冗長データレーンに提供されるように、そのような再マッピングは、順次行われ得る。したがって、図11Aに示されるように、データレーン1110のデータトラフィックが冗長データレーン1120へ再マッピングされてよく、同様に、データレーン111031のデータトラフィックが冗長データレーン1120へ再マッピングされてよい。
【0089】
1つの特定の実施形態において、モジュールは、32個のデータレーンの各グループにつき最大で2個のデータレーン(例えば、物理データレーンの第1のセットの2個の冗長データレーン(例えば、送信および受信物理データレーンである、TD_P[31:0](RD_P[31:0]))および物理データレーンの第2のセットの2個の冗長データレーン(TD_P[63:32](RD_P[63:32])))の再マッピング(修復)をサポートし得る。このように、32個のレーンの2つの別個のグループがそれぞれ、冗長データレーン(TRD_P[1:0](RRD_P[1:0])およびTRD_P[3:2](RRD_P[3:2])を用いて独立して修復され得る。図11Aでは機能的データ回復のために32個のデータレーン毎に2個の冗長リソースが存在するが、他の実施形態では、追加の冗長リソースが存在し得る。異なる実施形態において、32個のデータレーンのセットにつき、およそ1個および6個の間の冗長データレーンが存在し得る。また、データレーンのセットのサイズは、例えば、場合によっては4個および128個の間など、異なる実装において変わり得ることを理解されたい。
【0090】
1つまたは複数の実施形態において、レーン再マッピングは、「左シフト」または「右シフト」演算により実現され得る。左シフト演算は、物理データレーンTD_P[n]に関連付けられた論理レーンTD_L[n]のデータトラフィックが異なる物理データレーンTD_P[n-1]上へ多重化される場合に行われる。右シフト演算は、論理データレーンTD_L[n]のデータトラフィックが物理データレーンTD_P[n+1]上へ多重化される場合に行われる。データレーンが再マッピングされた後、物理層は、よう、破損した物理レーンに関連付けられたトランスミッタを制御して無効化(例えば、トライステート化)し、対応するレシーバを制御して無効化し得る。結果として、修復に用いられる冗長レーンのトランスミッタおよびレシーバが有効化される。グループ内の最大で任意の2レーンを最適に修復するために、「左シフト」および「右シフト」両方の再マッピングが実行され得る。もちろん、追加の冗長リソースが存在しても、追加のレーンが修復され得る。
【0091】
冗長データレーンリソースに加え、差動クロック回路の専用冗長クロックレーンが存在し得る。1つの実施形態において、クロックレーン再マッピングにより、クロック回路の差動および疑似差動実装の両方について単一レーン障害の修復が可能になる。同様の冗長回路も追跡レーンに設けられ得る。
【0092】
図11Bをここで参照すると、単一レーン障害の代表的な再マッピング構成が示される。図11Bにおけるナンバリング方式は、図11Aのものに従っているが、異なるダイ1101が示されている。見られるように、データレーン111029におけるエラー(例えば、この物理レーンが組み立て中に破損した)により、修復リソースとして機能する、冗長データレーン1120の方向における再マッピングが引き起こされる。この方式に従い、図11Bの実施形態において、冗長データレーン1120(TRD_P[0](RRD_P[0]))が、TD_P[31:0](RD_P[31:0])の任意の単一物理レーン障害を再マッピングするための冗長レーンとして用いられ、TRD[2](RRD[2])が、TD_P[63:32](RD_P[63:32])の任意の単一レーン障害を再マッピングするための冗長レーンとして用いられる。もちろん、これは、修復リソースになる冗長データレーン1120について等しく可能であり、再マッピングは反対方向に進む。したがって、双方向シフトメカニズムにより、任意のレーンデータの隣接レーンへの前方および後方シフトが可能になり、その結果、デバイスは、十分な接続または帯域幅をサポートできる。
【0093】
表Aおよび表Bをここで参照すると、一実施形態による下位および上位レーンにおける修復の擬似コード表現が示される。
[表A]
TD_P[31:0](RD_P[31:0])(0<=x<=31)におけるレーン修復のための擬似コード:
【表2】
[表B]
TD_P[63:32](RD_P[63:32])(32<=x<=63)におけるレーン修復のための擬似コード:
【表3】
【0094】
図11Cをここで参照すると、モジュール内の2個のレーン障害の代表的な再マッピング構成が示される。この構成では、32個のレーンのグループ内の任意の2個のレーンが冗長リソースを用いて修復され、完全な機能的トラフィックが回復し得る。例えば、図11Cに示されるように、物理データレーン111025および111026が破損したとする。このレーン修復のために、データが111025から111024へシフトされ、それよりも下の全てのレーンが冗長レーン1120(TRD_P0)に向かってシフトされる。TD26の修復のために、データがTD27へと誘導され、TD27よりも上の全てのレーンが冗長レーン1120 1(TRD_P1)に向かってシフトする。上記の双方向シフトスキームを用いることにより、シングルまたはデュアルレーン損傷の任意の組み合わせを完全に回復できる。
【0095】
したがって、1つの実施形態において、TD_P[31:0](RD_P[31:0])における任意の2つの物理レーン障害の場合、下位レーンは、TRD_P[0](RRD_P[0])へ再マッピングされ、上位レーンは、TRD_P[1](RRD_P[1])へ再マッピングされる。TD_P[63:32](RD_P[63:31])における任意の2つの物理レーン障害の場合、下位レーンは、TRD_P[2](RRD_P[2])へ再マッピングされ、上位レーンは、TRD_P[3](RRD_P[3])へ再マッピングされる。
【0096】
表CおよびDをここで参照すると、一実施形態による下位および上位レーンにおける2つのレーン修復の擬似コード表現が示される。上記の例の全てについて、トランスミッタおよび対応するレシーバの両方が、示された再マッピングを適用することに留意されたい。
[表C]
TD_P[31:0](RD_P[31:0])(0<=x,y<=31)における2つのレーン修復のための擬似コード:
【表4】
[表D]
TD_P[63:32](RD_P[63:32])(32<=x,y<=63)における2つのレーン修復のための擬似コード:
【表5】
【0097】
図12Aをここで参照すると、一実施形態によるダイツーダイ接続の一部分の概略図が示される。図12Aに示されるように、半導体パッケージ1200は、第1のダイおよび第2のダイを含む。第1のダイは、複数の送信論理データレーンTD_L[n-1、n+2]を含む。もちろん、各モジュールまたはクラスタは、これらの示されているデータレーンよりも多くを含み得る。
【0098】
見られるように、各データレーンは、対応するレーン修復マルチプレクサ1210n-1、n+2にデータを提供する。さらに示されるように、左および右方向における隣接する論理データレーンからのデータが、やはりマルチプレクサ1210に結合したシフト線を介して提供される。修復が必要とされない場合、マルチプレクサ1210は、対応する論理データレーンのデータを、対応する物理データレーンに関連付けられた複数のトランスミッタ1220n-1、n+2のうちの対応する1つに提供するよう、制御される。代わりに、修復が必要とされる場合、対応する左または右シフト演算が行われることで、隣接する論理データレーンのデータが提供され、マルチプレクサ1210は、それに応じて制御される。したがって、マルチプレクサ1210は、対応する(真の)ビットレーンデータ{n}または前のビットレーンデータ{n-1}または次のビットレーンデータ{n-2}を選択するように構成され得る。
【0099】
図12Aをさらに参照すると、トランスミッタ1220により出力されるデータが、対応するバンプ1230n-1、n+2を通じて、かつ、相互接続1240n-1、n+2を通じて、第2のダイへ結合する。対応するバンプ1250n-1、n+2を経て、データがレシーバ1260n-1、n+2において受信され、そこから、対応するレーン修復マルチプレクサ1270n-1、n+2に提供される。示されるように、対応する左および右シフト演算が提供されることで、再マッピング演算が受信側でも行われることが可能になる。より具体的には、第1のダイトランスミッタ側で行われる反対の再マッピングが、第2のダイレシーバ側で行われ得る(例えば、左シフト演算が第1のダイにおいて行われる場合、対応する右シフト演算が第2のダイにおいて行われる)。図12Aではこの高レベルで示されているが、多くの変形および代替例が可能である。
【0100】
図12Bをここで参照すると、左シフト演算が、欠陥データレーンを修復するために送信側で行われ、対応する右シフト演算が受信側で行われるパッケージ1201における単一レーン再マッピング演算と共に、図12Aの構成が示される。この場合、論理シフト演算のみが示されていることに留意されたい;物理回路(図12Aに示される)は、依然として存在しているが、シフト演算を示すために、ここでは示されていないことを理解されたい。
【0101】
図12Cをここで参照すると、2レーン再マッピング状況が示される。見られるように、パッケージ1202の送信側で、2個の不良データレーンを修復するために左および右シフト演算の両方が行われ、同様に、受信側で、対応する反対の右および左シフト演算が行われる。上記のように、図12Cは、論理シフト演算を示す。
【0102】
レーン修復がサポートされない標準パッケージ(例えば、×16)モジュールの場合、リンクをより小さい(例えば、×8)幅(例えば、欠陥レーンを排除する論理レーン0から7または論理レーン8から15)へと構成することにより、欠陥レーンに対するレジリエンスが提供され得る。例えば、1つまたは複数の欠陥レーンが論理レーン0から7にある場合、リンクは、論理レーン8から15を用いて×8幅へと構成される。この構成は、リンク初期化または再トレーニング中に行われ、無効化されたレーンのトランスミッタは高インピータンス状態(hi-Z)へと配置されてよく、レシーバは無効化される。
【0103】
また、デバイスは、モジュール内のレーン反転をサポートするように構成され得る。レーン反転の一例は、ローカルダイ上の物理データレーン0がリモートダイ上の物理データレーン(N-1)に接続される(物理データレーン1が物理データレーンn-2に接続される等)場合であり、例えば、標準パッケージではN=16であり、アドバンストパッケージではN=64である。アドバンストパッケージの場合における冗長レーンも、反転させられ得る。1つまたは複数の実施形態において、レーン反転は、トランスミッタに対してのみ実装される。トランスミッタは、データおよび冗長データレーン上の論理レーン順序を反転させる。一実施形態において、レーン反転は、初期化およびトレーニング中に発見および適用される。レーン反転の発見を可能にするために、モジュール内の各論理データおよび冗長レーンには、一意レーンIDが割り当てられる。いくつかの実施形態では、追跡、有効、クロックおよびサイドバンド信号が反転させられない。
【0104】
マルチプレクサがLSBおよびMSBビットの間で選択することを除き、一実施形態によるレーン反転は、図12Aから図12Cに関して上述したものと同様のマルチプレクサ構造を用い得る。また、レーン反転のためのレーンシフトは、両側ではなく、送信または受信側でのみ行われる。例えば、レーンが反転させられる場合、トランスミッタ(TD_P[0])の物理レーン0がレシーバ(RD_P[N-1])の物理レーンN-1に接続される(Nは、アドバンストパッケージモジュールの場合には64であり、標準パッケージモジュールの場合には16である)。レーン反転が実装される場合、レーン修復マッピングが変更され得ることに留意されたい。
【0105】
単一のレーンをレーン反転で修復する場合、レシーバ側の再マッピングのシフト順序を維持するために、トランスミッタ側の再マッピングが反転させられる。表Eをここで参照すると、TD_P[31:0](RD_P[32:63])(0<=x<=31)における反転を伴う1つのレーン障害を修復するための擬似コードが示される。
[表E]
【表6】
【0106】
表Fをここで参照すると、TD_P[63:32](RD_P[0:31])(32<=x<=63)における反転を伴う1つのレーン障害のための擬似コードが示される。
[表F]
【表7】
【0107】
レーン反転での2レーン修復の場合、レシーバ側の再マッピングのシフト順序を維持するために、トランスミッタ側の再マッピングが反転させられる。表Gをここで参照すると、TD_P[31:0](RD_P[32:63])(0<=x<=31)における反転を伴う2レーン障害のための擬似コードが示される。
[表G]
【表8】
【0108】
表Hをここで参照すると、TD_P[63:32](RD_P[0:31])(32<=x<=63)における反転を伴う1レーン障害のための擬似コードが示される。
[表H]
【表9】
【0109】
メインバンド修復処理は、場合によっては、メインバンド初期化中に実行され得る。この処理は、レーン反転検出および適用が成功した後にのみ入る修復状態において実行され得る。この状態において、モジュールの全てのトランスミッタおよびレシーバが有効化される。モジュールは、クロック位相をメインバンドのデータUIの中心に設定する。リンクパートナは、メインバンドレシーバの入ってくる転送クロックを用いて、入ってくるデータをサンプリングする。この状態において、アドバンストパッケージインタフェースに、および標準パッケージインタフェースの機能チェックおよび幅低下に必要とされる場合、メインバンドレーンが検出および修復される。
【0110】
一実施形態において、アドバンストパッケージインタフェースのメインバンド修復に、以下のシーケンスが用いられ得る。
【0111】
1. モジュールがサイドバンドメッセージ{MBINIT.REPAIRMB start req}を送信し、応答を待機する。リンクパートナは、{MBINIT.REPAIRMB start resp}で応答する。
【0112】
2. モジュールがそのトランスミッタレーンに対し、トランスミッタにより開始されるデータツークロックポイントトレーニングを(スクランブル処理されない「レーン毎ID」パターンという継続的モードの128回の反復を有する送信パターンで)実行する。レシーバがレーン毎比較を実行し、レシーバレーンでの検出は、少なくとも予め定められた数(例えば、16回の連続した反復)の「レーン毎ID」パターンが検出された場合、成功とみなされる。
【0113】
3. トランスミッタにより開始されるデータツークロックポイント試験の終了時に、モジュールがサイドバンドメッセージを介してレーン毎合格/不合格情報を受信する。
【0114】
4. レーン修復が必要され、修復リソースが利用可能である場合、モジュールは、そのメインバンドトランスミッタに対して修復を適用し、{MBINIT.REPAIRMB Apply repair req}サイドバンドメッセージを送信する。このサイドバンドメッセージを受信すると、リンクパートナは、そのメインバンドレシーバに対して修復を適用し、{MBINIT.REPAIRMB Apply repair resp}サイドバンドメッセージを送信する。レーン障害の数が修復機能よりも多い場合、メインバンドは修復不可能であり、モジュールは、TRAINERRORハンドシェイクを実行した後、TRAINERROR状態へ出る。
【0115】
5. 修復が必要とされない場合、段階7を実行する。
【0116】
6. レーン修復が適用された場合(段階4)、適用された修復は、モジュールが段階2および3を繰り返することによりチェックする。修復後のレーンエラーが段階5においてロギングされた場合、モジュールは、TRAINERRORハンドシェイクを実行した後、TRAINERRORへ出る。修復が成功である場合、段階7が実行される。
【0117】
7. モジュールが{MBINIT.REPAIRMB end req}サイドバンドメッセージを送信し、リンクパートナが{MBINIT.REPAIRMB end resp}で応答する。モジュールは、{MBINIT.REPAIRMB end resp}を送信および受信した場合、MBTRAINへ出る。
【0118】
この実施形態ではこの特定の実装を用いて説明されているが、他の実施形態では変形が行われ得る。例えば、再トレーニングまたはリンク速度サブ状態の後に修復を実行するために、同様の処理が用いられ得る。
【0119】
標準パッケージインタフェースの場合、最も低いデータレートでの関数演算について、メインバンドがチェックされる。上述のものとおおむね同じ段階が行われ得る。しかしながら、データレーンにおいてエラーが特定された場合、幅低下が可能であるかどうかが判断される。そうである場合、欠陥トランスミッタレーンを有するモジュールは、(そのトランスミッタおよびレシーバの両方に)低下を適用し、リモートリンクパートナへの論理レーンマップを含むメッセージ{MBINIT.REPAIRMB apply degrade req}を送信する。リンクパートナは、(そのトランスミッタおよびレシーバの両方に)低下を適用し、メッセージ{MBINIT.REPAIRMB apply degrade resp}を送信する。
【0120】
1つの実施形態において、標準パッケージインタフェースについては、エラーに直面しているレーンの数がレーン0-7またはレーン8-15内に全て含まれる場合、幅が×8リンク(レーン0…レーン7またはレーン8…レーン15)へ低下させられる。
【0121】
図13をここで参照すると、一実施形態によるレーン修復方法のフロー図が示される。図13に示されるように、方法1300は、リンクの初期化中に実行され得る。さらに、方法1300は、メインバンドデータレーン修復の文脈におけるものであるが、ここで説明される概念は、クロックレーン、サイドバンドレーンおよび追跡レーンを含む他のレーン修復状況に等しく適用される。方法1300は、少なくとも部分的に、物理層回路を介して実行され得る。
【0122】
図13に示されるように、方法1300は、データツークロックポイントトレーニングの予め定められたパターンの送信で始まる(ブロック1310)。レーン毎IDパターンのようなレーン毎パターンであってよいこの予め定められたパターンは、各物理データレーンに関連付けられたトランスミッタを介して、継続的に送信され得る。例えば、このパターンの128回の反復が送信され得る。次に、ブロック1320において、結果情報が、サイドバンドを介して第2のダイから受信され得る。この結果情報は、レーン毎合格/不合格情報を含み得る。
【0123】
図13をさらに参照すると、次に、ダイアモンド1330において、少なくとも1つのデータレーン障害が特定されているかどうかが判断される。そうでない場合、制御はブロック1340に進み、修復状態の終了を示すサイドバンドメッセージを送信および受信することにより、リンクトレーニングステートマシンの初期化状態のサブ状態である修復検出状態が終了され得る。その後、制御はブロック1350に進み、この状態が終了してトレーニング状態になる。
【0124】
図13をさらに参照すると、代わりに、障害が特定された場合、制御はダイアモンド1350に進み、この障害が修復後の状況において特定されているかどうかが判断される。そうである場合、サイドバンドメッセージによりエラーが上がり、制御はブロック1390に進み、この修復サブ状態が終了してトレーニングエラー状態になる。
【0125】
障害が初期障害である場合、制御はダイアモンド1370に進み、修復リソース(例えば、不合格データレーンの数に対応するための十分な冗長レーンを含む)が利用可能であるかどうかが判断される。そうである場合、制御は、レーン修復の適用のためにブロック1380に進む。より具体的には、ブロック1380では、送信方向において、物理層回路は、データレーンに関連付けられた1つまたは複数のトランスミッタに対して修復を適用して、少なくとも1つの論理データレーンのデータトラフィックを少なくとも1つの他の物理レーン上へ再マッピングし得る。意図された論理データレーンに正確なデータトラフィックが提供されるように、欠陥レーンに関する情報の通信により、同様のレーン修復がレシーバの適切な再マッピングによって第2のダイに対して行われ得ることを理解されたい。図13の実施形態ではこの高レベルで示されているが、多くの変形および代替例が可能である。
【0126】
様々な実施形態において、本明細書において説明された特徴のうちの1つまたは複数は、例えば動的ユーザ制御下で、(例えば、D2Dアダプタまたは物理層のうちの1つまたは複数に存在し得る)1つまたは複数の構成レジスタに格納された情報に基づいて有効化または無効化されるように構成可能であってよいことに留意されたい。様々な特徴の動的(またはブート時間)有効化または無効化に加え、UCIe通信の特定の態様の演算パラメータに関する設定可能性を提供することも可能である。
【0127】
実施形態は、2つの広い使用モデルをサポートし得いる。第1は、省電力かつ高費用対効果の性能を発揮するためのパッケージレベル統合である。例えば、メモリ、アクセラレータ、ネットワーキングデバイス、モデム等、ボードレベルで取り付けられるコンポーネントは、ハンドヘルドサーバからハイエンドサーバまでの適用可能性があるまま、パッケージレベルで統合され得る。そのようなユースケースにおいて、潜在的に複数のソースからのダイは、同じパッケージ上でさえ、異なるパッケージングオプションを通じて接続され得る。
【0128】
第2の使用は、ノードレベルを超えてラック/ポッドレベルへとロードストアセマンティクスを用いてエッジおよびデータセンタにおけるより良い省電力および高費用対効果の性能をもたらすべく基礎となるプロトコル(例えば、PCIe、CXL)をラックまたはポッドレベルでトランスポートするためのリソースプール、リソース共有および/またはメッセージ渡しを可能にするためにUCIeリタイマを用いた異なるタイプの媒体(例えば、光、電気ケーブル、ミリ波)を用いたオフパッケージ接続を提供することである。
【0129】
上述のように、実施形態は、例えば、ラックまたはポッドに関連して、データセンタユースケースにおいて実装され得る。一例として、異なる計算シャーシからの複数の計算ノードが、CXLスイッチに接続し得る。結果として、CXLスイッチは、1つまたは複数の別個のドロワ内に配置され得る複数のCXLアクセラレータ/Type-3メモリデバイスに接続し得る。
【0130】
図14をここで参照すると、一実施形態による別の例示的なシステムのブロック図が示される。図14において、システム1400は、プールされたメモリに1つまたは複数のスイッチを介して結合し得るコンピュートドロワの形態の複数のホストを有するラックベースサーバの全部または一部であってよい。
【0131】
示されるように、複数のホスト1430-1-n(本明細書において、「ホスト1430」とも称される)が存在する。各ホストは、1つまたは複数のSoC、メモリ、ストレージおよびインタフェース回路等を有するコンピュートドロワとして実装され得る。1つまたは複数の実施形態において、各ホスト1430は、異なるキャッシュコヒーレンスドメインに対応する1つまたは複数の仮想階層を含み得る。ホスト1430は、UCIeまたはCXLスイッチ(例えば、CXL2.0(またはそよりも後の)スイッチ)として実装され得るスイッチ1420に結合し得る。一実施形態において、各ホスト1430は、オフパッケージ相互接続、例えば、少なくとも1つのUCIeリタイマ(ホスト1430およびスイッチ1420の一方または両方に存在し得る)を通じてCXLプロトコルを実行するUCIe相互接続を用いて、スイッチ1420に結合し得る。
【0132】
スイッチ1420は、複数のデバイス1410-1-x(本明細書において、「デバイス1410」とも称される)に結合してよく、これらの各々は、メモリデバイス(例えば、タイプ3CXLメモリ拡張デバイス)および/またはアクセラレータであってよい。図14の例示において、各デバイス1410は、任意の数のメモリ領域(例えば、定義されたパーティション、メモリ範囲等)を有するタイプ3メモリデバイスとして示されている。構成およびユースケースに応じて、特定のデバイス1410が、特定のホストに割り当てられたメモリ領域を含み得るが、それ以外は、共有メモリとして指定された少なくともいくつかのメモリ領域を含み得る。実施形態はこの点において限定されないが、デバイス1410に含まれるメモリは、任意のタイプのコンピュータメモリ(例えば、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、不揮発性メモリ(NVM)、DRAMとNVMとの組み合わせ等)を用いて実装され得る。
【0133】
図15をここで参照すると、エッジプラットフォームなど、別の実施形態によるシステムのブロック図が示される。図15に示されるように、マルチプロセッサシステム1500は、コヒーレンシプロトコルを実行する一実施形態によるUCIe相互接続であり得る相互接続1550を介して結合された第1のプロセッサ1570および第2のプロセッサ1580を含む。図15に示されるように、プロセッサ1570および1580の各々は、代表的な第1のおよび第2のプロセッサコア(すなわち、プロセッサコア1574aおよび1574bおよびプロセッサコア1584aおよび1584b)を含む多くのコアプロセッサであってよい。
【0134】
図15の実施形態において、プロセッサ1570および1580は、相互接続1542および1544(一実施形態によるUCIeリンクであってよい)を介してスイッチ1559および1560に結合するポイントツーポイント相互接続1577および1587をさらに含む。結果として、スイッチ1559、1560は、(例えば、UCIeリンクを介して、)プールされたメモリ1555および1565に結合する。
【0135】
図15をさらに参照すると、第1のプロセッサ1570は、メモリコントローラハブ(MCH)1572、ポイントツーポイント(P-P)インタフェース1576および1578をさらに含む。同様に、第2のプロセッサ1580は、MCH1582、P-Pインタフェース1586および1588を含む。図15に示されるように、MCH1572および1582は、それぞれのメモリ、すなわち、それぞれのプロセッサにローカルに取り付けられたシステムメモリ(例えば、DRAM)の部分であってよいメモリ1532およびメモリ1534に、プロセッサを結合する。第1のプロセッサ1570および第2のプロセッサ1580はそれぞれ、P-P相互接続1576および1586を介してチップセット1590に結合され得る。図15に示されるように、チップセット1590は、P-Pインタフェース1594および1598を含む。
【0136】
さらに、チップセット1590は、P-P相互接続1539によりチップセット1590を高性能グラフィックスエンジン1538に結合するためのインタフェース1592を含む。図15に示されるように、様々な入力/出力(I/O)デバイス1514が、第1のバス1516を第2のバス1520に結合するバスブリッジ1518と共に、第1のバス1516に結合され得る。一実施形態において、例えば、キーボード/マウス1522と、通信デバイス1526と、コード1530を含み得るディスクドライブまたは他の大容量ストレージデバイスのようなデータストレージユニット1528とを含む様々なデバイスが、第2のバス1520に結合され得る。さらに、オーディオI/O1524が、第2のバス1520に結合され得る。
【0137】
図16をここで参照すると、別の実施形態によるシステム1600のブロック図が示される。図16に示されるように、システム1600は、任意のタイプのコンピューティングデバイスであってよく、一実施形態において、サーバシステムであってよい。図16の実施形態において、システム1600は、結果としてそれぞれのシステムメモリ1620a、b(実施形態において、ダブルデータレート(DDR)メモリ、永続的なまたは他のタイプのメモリなど、DIMMとして実装され得る)に結合する複数のCPU1610a、bを含む。CPU1610は、UCIe、またはコヒーレンシプロトコルを実装した他の相互接続のような相互接続システム1615を介して共に結合し得ることに留意されたい。
【0138】
コヒーレントアクセラレータデバイスおよび/またはスマートアダプタデバイスが、潜在的に複数の通信プロトコルによりCPU1610に結合することを可能にするために、複数の相互接続1630a1-b2が存在し得る。各相互接続1630は、一実施形態によるUCIeリンクの所与のインスタンスであってよい。
【0139】
示されている実施形態において、それぞれのCPU1610は、対応するフィールドプログラマブルゲートアレイ(FPGA)/アクセラレータデバイス1650a、b(一実施形態において、GPUを含み得る)に結合する。加えて、CPU1610は、スマートNICデバイス1660a、bにも結合する。結果として、スマートNICデバイス1660a、bは、スイッチ1680a、b(例えば、一実施形態によるCXLスイッチ)に結合する。当該スイッチは、結果として、永続メモリなど、プールされたメモリ1690a、bに結合する。実施形態において、図16に示される様々なコンポーネントは、本明細書において説明される技術を実行するためお回路を実装し得る。
【0140】
以下の例は、さらなる実施形態に関する。
【0141】
1つの例において、装置は、第1のダイを備え、
前記第1のダイは、
プロトコル層回路および物理層回路と通信するためのダイツーダイアダプタ、ここで、前記ダイツーダイアダプタは、第1の相互接続プロトコルの第1の情報を含むメッセージ情報を受信する;および
前記ダイツーダイアダプタに結合された前記物理層回路、ここで、前記物理層回路は、相互接続を介して、前記第1の情報を受信して第2のダイへ出力する
を有し、
前記物理層回路は、
第1の複数のデータレーンを介してデータを送信するための第1の複数のトランスミッタ;および
少なくとも1つの冗長トランスミッタ、ここで、前記物理層回路は、前記第1の複数のデータレーンの1番目のデータレーンを前記少なくとも1つの冗長トランスミッタへ再マッピングする
を含む。
【0142】
一例において、前記装置は、
前記第1のダイ上に適合された第1の複数のバンプ、ここで、前記第1の複数のバンプは、前記第1の複数のデータレーンに関連付けられている;および
前記第1のダイ上に適合された少なくとも1つの冗長バンプ、ここで、前記物理層回路は、前記1番目のデータレーンを前記複数のバンプの第1のバンプから前記少なくとも1つの冗長バンプへ再マッピングする
をさらに備える。
【0143】
一例において、
前記少なくとも1つの冗長トランスミッタは、
第1の冗長トランスミッタ、ここで、前記物理層回路は、前記1番目のデータレーンを前記第1の冗長トランスミッタへ再マッピングして、前記1番目のデータレーンにおけるレーン障害を修復する;および
第2の冗長トランスミッタ、ここで、前記物理層回路は、前記第1の複数のデータレーンの2番目のデータレーンを前記第2の冗長トランスミッタへ再マッピングして、前記2番目のデータレーンにおけるレーン障害を修復する
を含む。
【0144】
一例において、前記物理層回路は、前記第1の冗長トランスミッタおよび前記第2の冗長トランスミッタを介して、32個のデータレーンのグループのうちの2つのデータレーンを修復する。
【0145】
一例において、前記装置は、前記第1の複数のトランスミッタに結合された第1の複数のマルチプレクサをさらに備え、ここで、前記物理層回路は、対応するデータレーン、1番目の隣接データレーンまたは2番目の隣接データレーンのうちの1つからのデータを渡すよう前記第1の複数のマルチプレクサを制御する。
【0146】
一例において、
前記物理層回路は、
前記第1の複数のマルチプレクサの第1の部分を用いて左シフト演算が実行されることで1番目のデータレーンにおけるレーン障害が修復されるようにする;および
前記第1の複数のマルチプレクサの第2の部分を用いて右シフト演算が実行されることで2番目のデータレーンにおけるレーン障害が修復されるようにする。
【0147】
一例において、前記装置は、
第2の複数のデータレーンを介して第2のメッセージ情報を受信するための第1の複数のレシーバ;および
少なくとも1つの冗長レシーバ、ここで、前記第2の複数のデータレーンの1番目のデータレーンにおける障害に応答して、前記物理層回路は、前記第2の複数のデータレーンの前記2番目のデータレーンを前記少なくとも1つの冗長レシーバへ再マッピングする
をさらに備える。
【0148】
一例において、前記物理層回路は、
第1のクロックレーンを介してクロック信号を送信するための第1のクロックトランスミッタ;および
少なくとも1つの冗長クロックトランスミッタ、ここで、前記物理層回路は、前記第1のクロックレーンを前記少なくとも1つの冗長トランスミッタへ再マッピングする
をさらに有する。
【0149】
一例において、前記物理層回路は、前記第1の複数のデータレーンのうちの少なくともいくつかの論理レーン順序を反転させる。
【0150】
一例において、前記第1の複数のトランスミッタの第1のトランスミッタに関連付けられた1番目のデータレーンが前記第2のダイのN番目のデータレーンに結合される場合、前記物理層回路は、前記論理レーン順序を反転させ、ここで、Nは、モジュール内のデータレーンの数に等しい。
【0151】
一例において、前記物理層回路は、前記第1の複数のデータレーンの少なくとも1つのデータレーンを前記1番目のデータレーンにおける障害に応答して再マッピングし、前記第1の複数のデータレーンのうちの少なくともいくつかの論理レーン順序を反転させる。
【0152】
別の例において、方法は、第1のダイおよび第2のダイおよび前記第1のダイおよび前記第2のダイを結合する相互接続を含むパッケージの前記第1のダイの物理層回路を介して、前記相互接続のメインバンドの第1の複数の物理データレーンの1番目の物理データレーンにおける障害を特定する段階であって、前記相互接続は、前記メインバンドおよびサイドバンドを含む、特定する段階;
前記障害の特定に応答して、前記第1のダイの前記物理層回路を介して、1番目の論理データレーンの第1のデータトラフィックを前記メインバンドの2番目の物理データレーン上へ再マッピングする段階;および
前記サイドバンドを介して、前記再マッピングに関する情報を前記第2のダイへ通信する段階
を備える。
【0153】
一例において、前記方法は、前記第2のダイの物理層回路を介して、前記1番目の論理データレーンの前記第1のデータトラフィックを前記第2のダイ内の前記2番目の物理データレーンから前記1番目の論理データレーンへ再マッピングする段階をさらに備える。
【0154】
一例において、前記方法は、
前記第1のダイの前記物理層回路を介して、前記相互接続のクロック物理データレーンにおける障害を特定する段階;
前記クロック物理データレーンにおける前記障害の特定に応答して、前記第1のダイの前記物理層回路を介して、クロック信号を前記クロック物理データレーンから冗長クロック物理データレーンへ再マッピングする段階;および
前記サイドバンドを介して、前記クロック信号の前記再マッピングに関する情報を前記第2のダイへ通信する段階
をさらに備える。
【0155】
一例において、前記方法は、
前記1番目の論理データレーンの前記第1のデータトラフィックを前記第1のダイの第1のマルチプレクサに提供する段階;および
前記第1のデータトラフィックを前記2番目の物理データレーンに関連付けられた前記第1のダイの第2のトランスミッタに提供するために、前記第1のダイの前記物理層回路を介して前記第1のマルチプレクサを制御する段階
をさらに備える。
【0156】
一例において、前記方法は、前記物理層回路を介して、前記1番目の物理データレーンに関連付けられた前記第1のダイの第1のトランスミッタを無効化する段階をさらに備える。
【0157】
別の例では、命令を備えるコンピュータ可読媒体は、上記の例のいずれかの方法を実行する。
【0158】
さらなる例では、データを備えるコンピュータ可読媒体は、上記の例のいずれか1つの方法を実行する少なくとも1つの集積回路を製造するために少なくとも1つの機械により用いられる。
【0159】
別のさらなる例では、装置は、上記の例のいずれか1つの方法を実行する手段を備える。
【0160】
別の例では、パッケージは、CPUおよびプロトコルスタックを有する第1のダイ、および、相互接続を介して第1のダイに結合された第2のダイを備える。前記第1のダイは、FDIを介してプロトコル層回路と、RDIを介して物理層回路と通信するためのダイツーダイアダプタ、ここで、前記ダイツーダイアダプタは、第1の相互接続プロトコルの第1の情報を含むメッセージ情報を通信する;前記RDIを介して前記ダイツーダイアダプタに結合された前記物理層回路、ここで、前記物理層回路は、前記相互接続を介して、第1の情報を受信して前記第2のダイへ出力し、ここで、前記物理層回路は、第1の複数の物理データレーンを介してデータを受信するための第1の複数のレシーバを含む;少なくとも1つの冗長レシーバ、ここで、前記物理層回路は、第1の複数の物理データレーンのデータトラフィックを、前記第1の複数の物理データレーンの1番目の物理レーンにおけるレーン障害に応答して、前記第1の複数の物理データレーンのうちの隣接するもの、および前記少なくとも1つの冗長レシーバに関連付けられた少なくとも1つの冗長レーンへシフトする、を有し得る。
【0161】
一例において、前記物理層回路は、別のレーン障害に応答して、少なくとも1つの冗長トランスミッタを有効化し、別の物理レーンに関連付けられた第1の複数のトランスミッタの第1のトランスミッタをトライステート化する。
【0162】
一例において、前記相互接続は、前記第1の複数の物理データレーンを含むメインバンド、およびサイドバンドを含み、前記物理層回路は、前記サイドバンドを介して、前記第2のダイから前記データトラフィックのシフトに関する情報を受信する。
【0163】
一例において、前記第2のダイは、アクセラレータを有し、ここで、前記第1のダイは、PCIeプロトコルのフリットモードまたはCXLプロトコルのフリットモードのうちの少なくとも一方に従って前記第2のダイと通信する。
【0164】
別の例において、装置は、
メインバンドおよびサイドバンドを含む相互接続手段であって、第1のダイ手段および第2のダイ手段を結合する、相互接続手段の前記メインバンドの第1の複数の物理データレーン手段の1番目の物理データレーン手段における障害を特定するための手段;
1番目の論理データレーン手段の第1のデータトラフィックを前記メインバンドの2番目の物理データレーン手段上へ再マッピングするための手段;
前記サイドバンドを介して、前記再マッピングに関する情報を前記第2のダイ手段へ通信するための手段
を備える。
【0165】
一例において、前記装置は、前記1番目の論理データレーン手段の前記第1のデータトラフィックを前記第2のダイ手段内の前記2番目の物理データレーン手段から前記1番目の論理データレーン手段へ再マッピングするための手段をさらに備える。
【0166】
一例において、前記装置は、
前記相互接続手段のクロック物理データレーン手段における障害を特定するための手段;
クロック信号を前記クロック物理データレーン手段から冗長クロック物理データレーン手段へ再マッピングするための手段;および
前記サイドバンドを介して、前記クロック信号の前記再マッピングに関する情報を前記第2のダイ手段へ通信するための手段
をさらに備える。
【0167】
一例において、前記装置は、
前記1番目の論理データレーン手段の前記第1のデータトラフィックを前記第1のダイ手段の第1のマルチプレクサ手段に提供するための手段;および
前記第1のデータトラフィックを前記2番目の物理データレーン手段に関連付けられた前記第1のダイ手段の第2のトランスミッタ手段に提供するために前記第1のマルチプレクサ手段を制御するための手段
をさらに備える。
【0168】
一例において、前記装置は、前記1番目の物理データレーン手段に関連付けられた前記第1のダイ手段の第1のトランスミッタ手段を無効化するための手段をさらに備える。
【0169】
上記の例の様々な組み合わせが可能であることを理解されたい。
【0170】
「circuit(回路)」および「circuitry(回路)」という用語は、本明細書では同じ意味で用いられることに留意されたい。本明細書では、これらの用語および「logic(ロジック)」という用語は、アナログ回路、デジタル回路、ハードワイヤード回路、プログラマブル回路、プロセッサ回路、マイクロコントローラ回路、ハードウェアロジック回路、ステートマシン回路、および/または任意の他のタイプの物理ハードウェアコンポーネントを単独で、または任意の組み合わせで指すのに用いられる。各実施形態は、多くの異なるタイプのシステムにおいて用いられてよい。例えば、一実施形態において、本明細書で説明された様々な方法および技術を実行するように通信デバイスが配置されてよい。もちろん、本発明の範囲は通信デバイスに限定されない。その代わり、他の実施形態が、命令を処理するための他のタイプの装置、またはコンピューティングデバイスで実行されることに応答して、本明細書で説明された方法および技術のうちの1つまたは複数をデバイスに実行させる命令を含む1つまたは複数の機械可読媒体を対象とすることができる。
【0171】
実施形態はコードで実装されてよく、命令を実行すべくシステムをプログラミングするために用いられ得る命令を格納した非一時的記憶媒体に格納され得る。各実施形態はデータで実装されてもよく、非一時的記憶媒体に格納されてよい。非一時的記憶媒体は、少なくとも1つの機械によって用いられた場合、1つまたは複数の動作を実行する少なくとも1つの集積回路を少なくとも1つの機械に製造させる。別のさらなる実施形態が、SoCまたは他のプロセッサとして製造された場合、1つまたは複数の動作を実行するようにSoCまたは他のプロセッサを構成する情報を含むコンピュータ可読記憶媒体で実装されてよい。記憶媒体は、限定されないが、フロッピーディスク、光ディスク、ソリッドステートドライブ(SSD)、コンパクトディスクリードオンリメモリ(CD-ROM)、コンパクトディスクリライタブル(CD-RW)、光磁気ディスクを含む任意のタイプのディスク、リードオンリメモリ(ROM)、ダイナミックランダムアクセスメモリ(DRAM)やスタティックランダムアクセスメモリ(SRAM)などのランダムアクセスメモリ(RAM)、消去可能プログラマブルリードオンリメモリ(EPROM)、フラッシュメモリ、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)などの半導体デバイス、磁気カードまたは光カード、または電子命令を格納するのに適切な任意の他のタイプの媒体を含んでよい。
【0172】
限定された数の実装に関して本開示が説明されてきたが、本開示の利益を有する当業者であれば、多数の修正および変形をそれらから理解するであろう。添付の特許請求の範囲が全てのそのような修正および変形を包含することが意図されている。
図1
図2A
図2B
図2C
図2D
図3A
図3B
図4A
図4B
図5
図6A
図6B
図7
図8
図9
図10
図11A
図11B
図11C
図12A
図12B
図12C
図13
図14
図15
図16
【手続補正書】
【提出日】2023-12-25
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
第1のダイを備える装置であって、
前記第1のダイは、
プロトコル層回路および物理層回路と通信するためのダイツーダイアダプタ、ここで、前記ダイツーダイアダプタは、第1の相互接続プロトコルの第1の情報を含むメッセージ情報を受信する;および
前記ダイツーダイアダプタに結合された前記物理層回路、ここで、前記物理層回路は、相互接続を介して、前記第1の情報を受信して第2のダイへ出力する
を有し、
前記物理層回路は、
第1の複数のデータレーンを介してデータを送信するための第1の複数のトランスミッタ;および
少なくとも1つの冗長トランスミッタ、ここで、前記物理層回路は、前記第1の複数のデータレーンの1番目のデータレーンを前記少なくとも1つの冗長トランスミッタへ再マッピングする
を含む、
装置。
【請求項2】
前記第1のダイ上に適合された第1の複数のバンプ、ここで、前記第1の複数のバンプは、前記第1の複数のデータレーンに関連付けられている;および
前記第1のダイ上に適合された少なくとも1つの冗長バンプ、ここで、前記物理層回路は、前記1番目のデータレーンを前記第1の複数のバンプの第1のバンプから前記少なくとも1つの冗長バンプへ再マッピングする
をさらに備える、請求項1に記載の装置。
【請求項3】
前記少なくとも1つの冗長トランスミッタは、
第1の冗長トランスミッタ、ここで、前記物理層回路は、前記1番目のデータレーンを前記第1の冗長トランスミッタへ再マッピングして、前記1番目のデータレーンにおけるレーン障害を修復する;および
第2の冗長トランスミッタ、ここで、前記物理層回路は、前記第1の複数のデータレーンの2番目のデータレーンを前記第2の冗長トランスミッタへ再マッピングして、前記2番目のデータレーンにおけるレーン障害を修復する
を含む、
請求項1に記載の装置。
【請求項4】
前記物理層回路は、前記第1の冗長トランスミッタおよび前記第2の冗長トランスミッタを介して、32個のデータレーンのグループのうちの2つのデータレーンを修復する、請求項3に記載の装置。
【請求項5】
前記第1の複数のトランスミッタに結合された第1の複数のマルチプレクサをさらに備え、ここで、前記物理層回路は、対応するデータレーン、1番目の隣接データレーンまたは2番目の隣接データレーンのうちの1つからのデータを渡すよう前記第1の複数のマルチプレクサを制御する、請求項1に記載の装置。
【請求項6】
前記物理層回路は、
前記第1の複数のマルチプレクサの第1の部分を用いて左シフト演算が実行されることで1番目のデータレーンにおけるレーン障害が修復されるようにする;および
前記第1の複数のマルチプレクサの第2の部分を用いて右シフト演算が実行されることで2番目のデータレーンにおけるレーン障害が修復されるようにする
請求項5に記載の装置。
【請求項7】
第2の複数のデータレーンを介して第2のメッセージ情報を受信するための第1の複数のレシーバ;および
少なくとも1つの冗長レシーバ、ここで、前記第2の複数のデータレーンの1番目のデータレーンにおける障害に応答して、前記物理層回路は、前記第2の複数のデータレーンの2番目のデータレーンを前記少なくとも1つの冗長レシーバへ再マッピングする
をさらに備える、請求項1に記載の装置。
【請求項8】
前記物理層回路は、
第1のクロックレーンを介してクロック信号を送信するための第1のクロックトランスミッタ;および
少なくとも1つの冗長クロックトランスミッタ、ここで、前記物理層回路は、前記第1のクロックレーンを前記少なくとも1つの冗長トランスミッタへ再マッピングする
をさらに有する、
請求項1から7のいずれか一項に記載の装置。
【請求項9】
前記物理層回路は、前記第1の複数のデータレーンのうちの少なくともいくつかの論理レーン順序を反転させる、請求項1に記載の装置。
【請求項10】
前記第1の複数のトランスミッタの第1のトランスミッタに関連付けられた1番目のデータレーンが前記第2のダイのN番目のデータレーンに結合される場合、前記物理層回路は、前記論理レーン順序を反転させ、ここで、Nは、モジュール内のデータレーンの数に等しい、請求項9に記載の装置。
【請求項11】
前記物理層回路は、前記第1の複数のデータレーンの少なくとも1つのデータレーンを前記1番目のデータレーンにおける障害に応答して再マッピングし、前記第1の複数のデータレーンのうちの少なくともいくつかの論理レーン順序を反転させる、請求項1から7のいずれか一項に記載の装置。
【請求項12】
第1のダイおよび第2のダイおよび前記第1のダイおよび前記第2のダイを結合する相互接続を含むパッケージの前記第1のダイの物理層回路を介して、前記相互接続のメインバンドの第1の複数の物理データレーンの1番目の物理データレーンにおける障害を特定する段階であって、前記相互接続は、前記メインバンドおよびサイドバンドを含む、特定する段階;
前記障害の特定に応答して、前記第1のダイの前記物理層回路を介して、1番目の論理データレーンの第1のデータトラフィックを前記メインバンドの2番目の物理データレーン上へ再マッピングする段階;および
前記サイドバンドを介して、前記再マッピングに関する情報を前記第2のダイへ通信する段階
を備える方法。
【請求項13】
前記第2のダイの物理層回路を介して、前記1番目の論理データレーンの前記第1のデータトラフィックを前記第2のダイ内の前記2番目の物理データレーンから前記1番目の論理データレーンへ再マッピングする段階をさらに備える、請求項12に記載の方法。
【請求項14】
前記第1のダイの前記物理層回路を介して、前記相互接続のクロック物理データレーンにおける障害を特定する段階;
前記クロック物理データレーンにおける前記障害の特定に応答して、前記第1のダイの前記物理層回路を介して、クロック信号を前記クロック物理データレーンから冗長クロック物理データレーンへ再マッピングする段階;および
前記サイドバンドを介して、前記クロック信号の前記再マッピングに関する情報を前記第2のダイへ通信する段階
をさらに備える、請求項12に記載の方法。
【請求項15】
前記1番目の論理データレーンの前記第1のデータトラフィックを前記第1のダイの第1のマルチプレクサに提供する段階;および
前記第1のデータトラフィックを前記2番目の物理データレーンに関連付けられた前記第1のダイの第2のトランスミッタに提供するために、前記第1のダイの前記物理層回路を介して前記第1のマルチプレクサを制御する段階
をさらに備える、請求項12に記載の方法。
【請求項16】
前記物理層回路を介して、前記1番目の物理データレーンに関連付けられた前記第1のダイの第1のトランスミッタを無効化する段階をさらに備える、請求項15に記載の方法。
【請求項17】
プロセッサに、請求項12から16のいずれか一項に記載の方法を実装させるためのコンピュータプログラム。
【請求項18】
請求項17に記載のコンピュータプログラムを格納しているコンピュータ可読記憶媒体。
【請求項19】
請求項12から16のいずれか一項に記載の方法を実行するための手段を備える装置。
【請求項20】
中央処理装置(CPU)およびプロトコルスタックを有する第1のダイおよび相互接続を介して前記第1のダイに結合された第2のダイを備えるパッケージであって、
前記第1のダイは、
フリットアウェアダイツーダイインタフェース(FDI)を介してプロトコル層回路と、ローダイツーダイインタフェース(RDI)を介して物理層回路と通信するためのダイツーダイアダプタ、ここで、前記ダイツーダイアダプタは、第1の相互接続プロトコルの第1の情報を含むメッセージ情報を通信する;および
前記RDIを介して前記ダイツーダイアダプタに結合された前記物理層回路、ここで、前記物理層回路は、前記相互接続を介して前記第1の情報を受信して前記第2のダイへ出力する
を有し、
前記物理層回路は、
第1の複数の物理データレーンを介してデータを受信するための第1の複数のレシーバ;および
少なくとも1つの冗長レシーバ、ここで、前記物理層回路は、第1の複数の物理データレーンのデータトラフィックを、前記第1の複数の物理データレーンの1番目の物理レーンにおけるレーン障害に応答して、前記第1の複数の物理データレーンのうちの隣接するもの、および前記少なくとも1つの冗長レシーバに関連付けられた少なくとも1つの冗長レーンへシフトする
を含む、
パッケージ。
【請求項21】
前記物理層回路は、別のレーン障害に応答して、少なくとも1つの冗長トランスミッタを有効化し、別の物理レーンに関連付けられた第1の複数のトランスミッタの第1のトランスミッタをトライステート化する、請求項20に記載のパッケージ。
【請求項22】
前記相互接続は、前記第1の複数の物理データレーンを含むメインバンド、およびサイドバンドを含み、前記物理層回路は、前記サイドバンドを介して、前記第2のダイから前記データトラフィックのシフトに関する情報を受信する、請求項20に記載のパッケージ。
【請求項23】
前記第2のダイは、アクセラレータを有し、ここで、前記第1のダイは、ペリフェラルコンポーネントインターコネクトエクスプレス(PCIe)プロトコルのフリットモードまたはコンピュートエクスプレスリンク(CXL)プロトコルのフリットモードのうちの少なくとも一方に従って、前記第2のダイと通信する、請求項20に記載のパッケージ。
【請求項24】
メインバンドおよびサイドバンドを含む相互接続手段であって、第1のダイ手段および第2のダイ手段を結合する、相互接続手段の前記メインバンドの第1の複数の物理データレーン手段の1番目の物理データレーン手段における障害を特定するための手段;
1番目の論理データレーン手段の第1のデータトラフィックを前記メインバンドの2番目の物理データレーン手段上へ再マッピングするための手段;
前記サイドバンドを介して、前記再マッピングに関する情報を前記第2のダイ手段へ通信するための手段
を備える装置。
【請求項25】
前記1番目の論理データレーン手段の前記第1のデータトラフィックを前記第2のダイ手段内の前記2番目の物理データレーン手段から前記1番目の論理データレーン手段へ再マッピングするための手段をさらに備える、請求項24に記載の装置。
【請求項26】
前記相互接続手段のクロック物理データレーン手段における障害を特定するための手段;
クロック信号を前記クロック物理データレーン手段から冗長クロック物理データレーン手段へ再マッピングするための手段;および
前記サイドバンドを介して、前記クロック信号の前記再マッピングに関する情報を前記第2のダイ手段へ通信するための手段
をさらに備える、請求項24に記載の装置。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0172
【補正方法】変更
【補正の内容】
【0172】
限定された数の実装に関して本開示が説明されてきたが、本開示の利益を有する当業者であれば、多数の修正および変形をそれらから理解するであろう。添付の特許請求の範囲が全てのそのような修正および変形を包含することが意図されている。
[項目1]
第1のダイを備える装置であって、
前記第1のダイは、
プロトコル層回路および物理層回路と通信するためのダイツーダイアダプタ、ここで、前記ダイツーダイアダプタは、第1の相互接続プロトコルの第1の情報を含むメッセージ情報を受信する;および
前記ダイツーダイアダプタに結合された前記物理層回路、ここで、前記物理層回路は、相互接続を介して、前記第1の情報を受信して第2のダイへ出力する
を有し、
前記物理層回路は、
第1の複数のデータレーンを介してデータを送信するための第1の複数のトランスミッタ;および
少なくとも1つの冗長トランスミッタ、ここで、前記物理層回路は、前記第1の複数のデータレーンの1番目のデータレーンを前記少なくとも1つの冗長トランスミッタへ再マッピングする
を含む、
装置。
[項目2]
前記第1のダイ上に適合された第1の複数のバンプ、ここで、前記第1の複数のバンプは、前記第1の複数のデータレーンに関連付けられている;および
前記第1のダイ上に適合された少なくとも1つの冗長バンプ、ここで、前記物理層回路は、前記1番目のデータレーンを前記複数のバンプの第1のバンプから前記少なくとも1つの冗長バンプへ再マッピングする
をさらに備える、項目1に記載の装置。
[項目3]
前記少なくとも1つの冗長トランスミッタは、
第1の冗長トランスミッタ、ここで、前記物理層回路は、前記1番目のデータレーンを前記第1の冗長トランスミッタへ再マッピングして、前記1番目のデータレーンにおけるレーン障害を修復する;および
第2の冗長トランスミッタ、ここで、前記物理層回路は、前記第1の複数のデータレーンの2番目のデータレーンを前記第2の冗長トランスミッタへ再マッピングして、前記2番目のデータレーンにおけるレーン障害を修復する
を含む、
項目1に記載の装置。
[項目4]
前記物理層回路は、前記第1の冗長トランスミッタおよび前記第2の冗長トランスミッタを介して、32個のデータレーンのグループのうちの2つのデータレーンを修復する、項目3に記載の装置。
[項目5]
前記第1の複数のトランスミッタに結合された第1の複数のマルチプレクサをさらに備え、ここで、前記物理層回路は、対応するデータレーン、1番目の隣接データレーンまたは2番目の隣接データレーンのうちの1つからのデータを渡すよう前記第1の複数のマルチプレクサを制御する、項目1に記載の装置。
[項目6]
前記物理層回路は、
前記第1の複数のマルチプレクサの第1の部分を用いて左シフト演算が実行されることで1番目のデータレーンにおけるレーン障害が修復されるようにする;および
前記第1の複数のマルチプレクサの第2の部分を用いて右シフト演算が実行されることで2番目のデータレーンにおけるレーン障害が修復されるようにする
項目5に記載の装置。
[項目7]
第2の複数のデータレーンを介して第2のメッセージ情報を受信するための第1の複数のレシーバ;および
少なくとも1つの冗長レシーバ、ここで、前記第2の複数のデータレーンの1番目のデータレーンにおける障害に応答して、前記物理層回路は、前記第2の複数のデータレーンの前記2番目のデータレーンを前記少なくとも1つの冗長レシーバへ再マッピングする
をさらに備える、項目1に記載の装置。
[項目8]
前記物理層回路は、
第1のクロックレーンを介してクロック信号を送信するための第1のクロックトランスミッタ;および
少なくとも1つの冗長クロックトランスミッタ、ここで、前記物理層回路は、前記第1のクロックレーンを前記少なくとも1つの冗長トランスミッタへ再マッピングする
をさらに有する、
項目1から7のいずれか一項に記載の装置。
[項目9]
前記物理層回路は、前記第1の複数のデータレーンのうちの少なくともいくつかの論理レーン順序を反転させる、項目1に記載の装置。
[項目10]
前記第1の複数のトランスミッタの第1のトランスミッタに関連付けられた1番目のデータレーンが前記第2のダイのN番目のデータレーンに結合される場合、前記物理層回路は、前記論理レーン順序を反転させ、ここで、Nは、モジュール内のデータレーンの数に等しい、項目9に記載の装置。
[項目11]
前記物理層回路は、前記第1の複数のデータレーンの少なくとも1つのデータレーンを前記1番目のデータレーンにおける障害に応答して再マッピングし、前記第1の複数のデータレーンのうちの少なくともいくつかの論理レーン順序を反転させる、項目1から10のいずれか一項に記載の装置。
[項目12]
第1のダイおよび第2のダイおよび前記第1のダイおよび前記第2のダイを結合する相互接続を含むパッケージの前記第1のダイの物理層回路を介して、前記相互接続のメインバンドの第1の複数の物理データレーンの1番目の物理データレーンにおける障害を特定する段階であって、前記相互接続は、前記メインバンドおよびサイドバンドを含む、特定する段階;
前記障害の特定に応答して、前記第1のダイの前記物理層回路を介して、1番目の論理データレーンの第1のデータトラフィックを前記メインバンドの2番目の物理データレーン上へ再マッピングする段階;および
前記サイドバンドを介して、前記再マッピングに関する情報を前記第2のダイへ通信する段階
を備える方法。
[項目13]
前記第2のダイの物理層回路を介して、前記1番目の論理データレーンの前記第1のデータトラフィックを前記第2のダイ内の前記2番目の物理データレーンから前記1番目の論理データレーンへ再マッピングする段階をさらに備える、項目12に記載の方法。
[項目14]
前記第1のダイの前記物理層回路を介して、前記相互接続のクロック物理データレーンにおける障害を特定する段階;
前記クロック物理データレーンにおける前記障害の特定に応答して、前記第1のダイの前記物理層回路を介して、クロック信号を前記クロック物理データレーンから冗長クロック物理データレーンへ再マッピングする段階;および
前記サイドバンドを介して、前記クロック信号の前記再マッピングに関する情報を前記第2のダイへ通信する段階
をさらに備える、項目12に記載の方法。
[項目15]
前記1番目の論理データレーンの前記第1のデータトラフィックを前記第1のダイの第1のマルチプレクサに提供する段階;および
前記第1のデータトラフィックを前記2番目の物理データレーンに関連付けられた前記第1のダイの第2のトランスミッタに提供するために、前記第1のダイの前記物理層回路を介して前記第1のマルチプレクサを制御する段階
をさらに備える、項目12に記載の方法。
[項目16]
前記物理層回路を介して、前記1番目の物理データレーンに関連付けられた前記第1のダイの第1のトランスミッタを無効化する段階をさらに備える、項目15に記載の方法。
[項目17]
実行された場合に項目12から16のいずれか一項に記載の方法を実装するためのコンピュータ可読命令を備えるコンピュータ可読記憶媒体。
[項目18]
項目12から16のいずれか一項に記載の方法を実行するための手段を備える装置。
[項目19]
中央処理装置(CPU)およびプロトコルスタックを有する第1のダイおよび相互接続を介して前記第1のダイに結合された第2のダイを備えるパッケージであって、
前記第1のダイは、
フリットアウェアダイツーダイインタフェース(FDI)を介してプロトコル層回路と、ローダイツーダイインタフェース(RDI)を介して物理層回路と通信するためのダイツーダイアダプタ、ここで、前記ダイツーダイアダプタは、第1の相互接続プロトコルの第1の情報を含むメッセージ情報を通信する;および
前記RDIを介して前記ダイツーダイアダプタに結合された前記物理層回路、ここで、前記物理層回路は、前記相互接続を介して前記第1の情報を受信して前記第2のダイへ出力する
を有し、
前記物理層回路は、
第1の複数の物理データレーンを介してデータを受信するための第1の複数のレシーバ;および
少なくとも1つの冗長レシーバ、ここで、前記物理層回路は、第1の複数の物理データレーンのデータトラフィックを、前記第1の複数の物理データレーンの1番目の物理レーンにおけるレーン障害に応答して、前記第1の複数の物理データレーンのうちの隣接するもの、および前記少なくとも1つの冗長レシーバに関連付けられた少なくとも1つの冗長レーンへシフトする
を含む、
パッケージ。
[項目20]
前記物理層回路は、別のレーン障害に応答して、少なくとも1つの冗長トランスミッタを有効化し、別の物理レーンに関連付けられた第1の複数のトランスミッタの第1のトランスミッタをトライステート化する、項目19に記載のパッケージ。
[項目21]
前記相互接続は、前記第1の複数の物理データレーンを含むメインバンド、およびサイドバンドを含み、前記物理層回路は、前記サイドバンドを介して、前記第2のダイから前記データトラフィックのシフトに関する情報を受信する、項目19に記載のパッケージ。
[項目22]
前記第2のダイは、アクセラレータを有し、ここで、前記第1のダイは、ペリフェラルコンポーネントインターコネクトエクスプレス(PCIe)プロトコルのフリットモードまたはコンピュートエクスプレスリンク(CXL)プロトコルのフリットモードのうちの少なくとも一方に従って、前記第2のダイと通信する、項目19に記載のパッケージ。
[項目23]
メインバンドおよびサイドバンドを含む相互接続手段であって、第1のダイ手段および第2のダイ手段を結合する、相互接続手段の前記メインバンドの第1の複数の物理データレーン手段の1番目の物理データレーン手段における障害を特定するための手段;
1番目の論理データレーン手段の第1のデータトラフィックを前記メインバンドの2番目の物理データレーン手段上へ再マッピングするための手段;
前記サイドバンドを介して、前記再マッピングに関する情報を前記第2のダイ手段へ通信するための手段
を備える装置。
[項目24]
前記1番目の論理データレーン手段の前記第1のデータトラフィックを前記第2のダイ手段内の前記2番目の物理データレーン手段から前記1番目の論理データレーン手段へ再マッピングするための手段をさらに備える、項目23に記載の装置。
[項目25]
前記相互接続手段のクロック物理データレーン手段における障害を特定するための手段;
クロック信号を前記クロック物理データレーン手段から冗長クロック物理データレーン手段へ再マッピングするための手段;および
前記サイドバンドを介して、前記クロック信号の前記再マッピングに関する情報を前記第2のダイ手段へ通信するための手段
をさらに備える、項目23に記載の装置。
[項目26]
前記1番目の論理データレーン手段の前記第1のデータトラフィックを前記第1のダイ手段の第1のマルチプレクサ手段に提供するための手段;および
前記第1のデータトラフィックを前記2番目の物理データレーン手段に関連付けられた前記第1のダイ手段の第2のトランスミッタ手段に提供するために前記第1のマルチプレクサ手段を制御するための手段
をさらに備える、項目23に記載の装置。
【国際調査報告】