(57)【要約】  複数ダイデバイス（４００）の第１のダイ（４０２）と第２のダイ（４０４）とを相互接続するための装置は、複数ダイデバイスの第１のダイとインターフェイスするマスタ回路ブロック（４０６）と、複数ダイデバイスの第２のダイとインターフェイスするスレーブ回路ブロック（４０８）と、スレーブ回路ブロック中の第１のメモリ（４１６ａ−４１６ｅ）と、マスタ回路ブロック中の第２のメモリ（４３０ａ−４３０ｅ）と、第１のダイと第２のダイとの間の複数のμバンプ（１−６）とを含み、マスタ回路ブロックおよびスレーブ回路ブロックは、μバンプのうち１つ（３）を欠陥μバンプとして同定し、同定された欠陥μバンプに対応する第１の値を第１のメモリに記憶するように構成される。
2014527731.tif 000002
【特許請求の範囲】
【請求項１】
複数ダイデバイスの第１のダイと第２のダイとを相互接続するための装置であって、
前記複数ダイデバイスの前記第１のダイとインターフェイスするマスタ回路ブロックと、
前記複数ダイデバイスの前記第２のダイとインターフェイスするスレーブ回路ブロックと、
前記スレーブ回路ブロック中の第１のメモリと、
前記マスタ回路ブロック中の第２のメモリと、
前記第１のダイと前記第２のダイとの間の複数のμバンプとを備え、
前記マスタ回路ブロックおよび前記スレーブ回路ブロックは、前記μバンプのうち１つを欠陥μバンプとして同定し、同定された前記欠陥μバンプに対応する第１の値を前記第１のメモリに記憶するように構成される、装置。
【請求項２】
前記マスタ回路ブロックおよび前記スレーブ回路ブロックは、前記欠陥μバンプの機能性を前記複数のμバンプのうち別の１つの機能性で置き換えるように構成される、請求項１に記載の装置。
【請求項３】
前記マスタ回路ブロックおよび前記スレーブ回路ブロックは、前記第１のメモリに記憶される前記値に少なくとも部分的に基づいて、前記欠陥μバンプの機能性を前記複数のμバンプのうち別の１つの機能性で置き換えるように構成される、請求項１に記載の装置。
【請求項４】
前記複数のμバンプは欠陥μバンプと冗長μバンプとを含み、
前記マスタ回路ブロックおよび前記スレーブ回路ブロックは、前記欠陥μバンプの機能性を前記冗長μバンプの機能性で置き換えるように構成される、請求項１に記載の装置。
【請求項５】
前記欠陥μバンプと前記冗長μバンプとの間にはμバンプが存在しない、請求項４に記載の装置。
【請求項６】
前記欠陥μバンプと前記冗長μバンプとの間には少なくとも１つのμバンプが存在する、請求項４に記載の装置。
【請求項７】
前記マスタ回路ブロックおよび前記スレーブ回路ブロックは、前記第２のメモリに第２の値を記憶し、前記第１および第２のメモリにそれぞれ記憶される前記第１および第２の値に基づいて第３の値を決めるように構成される、請求項１から６のいずれかに記載の装置。
【請求項８】
前記第１および第２のメモリは揮発性メモリを備える、請求項１から７のいずれかに記載の装置。
【請求項９】
前記第１および第２のメモリは不揮発性メモリを備える、請求項１から７のいずれかに記載の装置。
【請求項１０】
前記マスタ回路ブロックは前記第１のダイに集積化され、
前記スレーブ回路ブロックは前記第２のダイに集積化される、請求項１から９のいずれかに記載の装置。
【請求項１１】
前記第１のダイおよび前記第２のダイとインターフェイスするμバンプおよび冗長μバンプを含むキャリアダイをさらに備え、前記第１のダイおよび前記第２のダイは前記キャリアダイを通して間接的に接続される、請求項１から１０のいずれかに記載の装置。
【請求項１２】
前記スレーブ回路ブロックはスレーブクロック周波数で動作し、前記マスタ回路ブロックはマスタクロック周波数で動作し、前記マスタクロック周波数は前記スレーブクロック周波数とは異なる、請求項１から１１のいずれかに記載の装置。
【請求項１３】
前記マスタ回路ブロックおよび前記スレーブ回路ブロックは、前記第１のメモリおよび前記第２のメモリをリセットし、前記複数ダイデバイスの１つ以上の出力バッファをディスエーブルするようにさらに構成される、請求項１から１２のいずれかに記載の装置。
【請求項１４】
複数ダイデバイスの第１のダイと第２のダイとを相互接続するための方法であって、
前記複数ダイデバイスの前記第１のダイのためのマスタ自己アニール回路ブロックのマスタコントローラと前記複数ダイデバイスの前記第２のダイのためのスレーブ自己アニール回路ブロックのスレーブコントローラとの間のマスタ−スレーブ関係を決めることを備え、
前記第１のダイおよび前記第２のダイは、前記マスタ自己アニール回路ブロック、前記スレーブ自己アニール回路ブロック、および第１のμバンプと第２のμバンプとのうち１つを通してともに結合され、さらに
前記スレーブコントローラに動作するように接続される第１のメモリに第１の冗長値を記憶することと、
前記マスタコントローラに動作するように接続される第２のメモリに第２の冗長値を記憶することとを備える、方法。
【請求項１５】
前記第１のμバンプは欠陥μバンプであり、前記第２のμバンプは冗長μバンプであり、前記方法はさらに、
前記第１および第２のメモリに記憶される前記冗長値に少なくとも部分的に基づいて前記第１のμバンプの機能性を前記第２のμバンプの機能性で置き換えることをさらに備える、請求項１４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書中に記載する実施形態は複数ダイ相互接続アーキテクチャに関し、特に、複数ダイ相互接続アーキテクチャにおける接続不良に対処するための方法およびそのための装置に関する。
【背景技術】
【０００２】
背景
マイクロバンプ構造（μバンプ）は、マルチプルダイモジュール（ＭＤＭ）、システムインパッケージ（ＳＩＰ）、またはマルチチップモジュール（ＭＣＭ）（以下、複数ダイ相互接続アーキテクチャ）における重要な技術の１つである。一般的な複数ダイ相互接続はしばしば、２つの半導体ダイの間に何十万または何百万ものμバンプを含む一方で、すべてのμバンプの１００％の歩留まりを確実にすることは非現実的である。このように、デバイス中に欠陥μバンプが１つ以上あることは珍しくない。
【０００３】
欠陥μバンプの例は、μバンプが欠けている、μバンプの変形、μバンプのサイズ不足、μバンプが部分的に形成されている、またはμバンプが損傷している（たとえば、μバンプが割れているまたは壊れている）のを含むが、これらに限定されない。これらの各々の結果、接続が開放されてしまうことがある。μバンプは、壊れたトレースまたは欠陥回路にμバンプが接続されてμバンプが信号を送信および／または受信しなくなる場合に欠陥と考えられることもある。また、μバンプは、経時的な劣化によってまたは温度変動から生じるものなどの環境の影響によって故障することがある。ある欠陥μバンプはわずかに機能的であることがある。たとえば、これらのμバンプはある温度範囲では意図するように機能することがあり、何らかの他の温度範囲では誤作動することがある。時折、２つのダイを接続するのに複数のμバンプを含むインターポーザが用いられることがある。そのようなインターポーザも欠陥μバンプを有することがある。
【０００４】
この明細書で用いるような「欠陥μバンプ」という用語は、予め規定された判断基準に従って動作することができない任意のμバンプ、許容不可能な任意のμバンプ、またはμバンプに接続する欠陥トレースもしくは回路のために信号を送信および／もしくは受信しない（それ自体は完全であり得る）任意のμバンプを指すことがある。このように、欠陥μバンプは、先に言及した例を含むがそれらに限定されない任意の故障モードによるものであり得る。
【０００５】
冗長は、故障したまたは故障しているリソースをリソースの余分のユニットの１つ以上で置き換えて、故障したまたは故障しているリソースの意図される機能性を回復することによって、故障しているまたは故障したリソースを補うための方法である。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来の冗長技術にはさまざまな欠点および困難がある。したがって、複数ダイ相互接続において冗長を設けるためのより柔軟で強靭な方法および装置を有することが望ましい。
【課題を解決するための手段】
【０００７】
要約
いくつかの実施形態に従うと、複数ダイデバイスの第１のダイと第２のダイとを相互接続するための装置は、複数ダイデバイスの第１のダイとインターフェイスするマスタ回路ブロックと、複数ダイデバイスの第２のダイとインターフェイスするスレーブ回路ブロックと、スレーブ回路ブロック中の第１のメモリと、マスタ回路ブロック中の第２のメモリと、第１のダイと第２のダイとの間の複数のμバンプとを含む。マスタ回路ブロックおよびスレーブ回路ブロックは、μバンプのうち１つを欠陥μバンプとして同定し、同定した欠陥μバンプに対応する第１の値を第１のメモリに記憶するように構成される。
【０００８】
本明細書中に記載の実施形態のうち任意のものにおいて、マスタ回路ブロックおよびスレーブ回路ブロックは、欠陥μバンプの機能性を複数のμバンプのうち別の１つの機能性で置き換えるように構成可能である。
【０００９】
本明細書中に記載の実施形態のうち任意のものにおいて、マスタ回路ブロックおよびスレーブ回路ブロックは、第１の揮発性メモリに記憶された値に少なくとも部分的に基づいて、欠陥μバンプの機能性を複数のμバンプのうち別の１つの機能性で置き換えるように構成可能である。
【００１０】
マスタ回路ブロックおよびスレーブ回路ブロックは、欠陥μバンプの機能性を冗長μバンプの機能性で置き換えるように構成可能である。欠陥μバンプと冗長μバンプとの間にはμバンプが存在することができないか、または、欠陥μバンプと冗長μバンプとの間には少なくとも１つのμバンプが存在することができる。
【００１１】
本明細書中に記載の実施形態のうち任意のものにおいて、マスタ回路ブロックおよびスレーブ回路ブロックは、第２の揮発性メモリに第２の値を記憶し、それぞれ第１および第２の揮発性メモリに記憶される第１および第２の値に基づいて第３の値を決めるように構成可能である。
【００１２】
本明細書中に記載の実施形態のうち任意のものにおいて、第１および第２のメモリは揮発性メモリまたは不揮発性メモリまたはその任意の組合せであり得る。マスタ回路ブロックは第１のダイに集積化することができ、スレーブ回路ブロックは第２のダイに集積化することができる。装置は、第１のダイおよび第２のダイとインターフェイスするμバンプおよび冗長μバンプを含むキャリアダイを含むことができ、第１のダイと第２のダイとはキャリアダイを通して間接的に接続される。
【００１３】
本明細書中に記載の実施形態のうち任意のものにおいて、スレーブ回路ブロックはスレーブクロック周波数で動作することができ、マスタ回路ブロックはマスタクロック周波数で動作することができ、マスタクロック周波数はスレーブクロック周波数とは異なっている。
【００１４】
本明細書中に記載の実施形態のうち任意のものにおいて、マスタ回路ブロックおよびスレーブ回路ブロックは、第１のメモリおよび第２のメモリをリセットし、複数ダイデバイスの１つ以上の出力バッファをディスエーブルするように構成可能である。
【００１５】
別の実施形態に従うと、複数ダイデバイスの第１のダイと第２のダイとを相互接続するための方法は、複数ダイデバイスの第１のダイのためのマスタ自己アニール回路ブロックのマスタコントローラと複数ダイデバイスの第２のダイのためのスレーブ自己アニール回路ブロックのスレーブコントローラとの間のマスタ−スレーブ関係を決めることを含む。第１のダイと第２のダイとは、マスタ自己アニール回路ブロック、スレーブ自己アニール回路ブロック、および第１のμバンプと第２のμバンプとのうち１つを通してともに結合される。第１の冗長値は、スレーブコントローラに動作するように接続される第１のメモリに記憶され、第２の冗長値は、マスタコントローラに動作するように接続される第２のメモリに記憶される。
【００１６】
いくつかの実施形態では、第１のμバンプは欠陥μバンプであり、第２のμバンプは冗長μバンプであり、方法はさらに、第１および第２のメモリに記憶される冗長値に少なくとも部分的に基づいて、第１のμバンプの機能性を第２のμバンプの機能性で置き換えることを含む。
【００１７】
また他の実施形態に従うと、複数ダイデバイスの第１のダイと第２のダイとを相互接続するための装置は、複数ダイデバイスの第１のダイとインターフェイスし、かつマスタコントローラを備えるマスタ自己アニール回路ブロックと、複数ダイデバイスの第２のダイとインターフェイスし、かつスレーブコントローラを備えるスレーブ自己アニール回路ブロックと、スレーブ自己アニール回路ブロック中の第１の揮発性メモリと、マスタ自己アニール回路ブロック中の第２の揮発性メモリと、μバンプと、冗長μバンプとを含む。マスタ自己アニール回路ブロックおよびスレーブ自己アニール回路ブロックは、μバンプおよび冗長μバンプのうち１つを用いて第１のダイと第２のダイとを相互接続するように構成される。
【００１８】
本明細書中に記載の実施形態のうち任意のものにおいて、μバンプは欠陥μバンプであり得、マスタコントローラおよびスレーブコントローラは、冗長μバンプと欠陥μバンプとの間に位置する別のμバンプが存在するか否かを判断し、判断する行為の結果に少なくとも部分的に基づいて欠陥μバンプの機能性を置き換えるように構成可能である。
【００１９】
本明細書中に記載の実施形態のうち任意のものにおいて、マスタコントローラおよびスレーブコントローラは、欠陥μバンプと冗長μバンプとの間にμバンプが存在しないまたはμバンプが少なくとも１つ存在する場合に、欠陥μバンプの機能性を冗長μバンプの機能性で置き換えるように構成可能である。
【００２０】
本明細書中に記載の実施形態のうち任意のものにおいて、マスタコントローラおよびスレーブコントローラは、第１の冗長値を決めてスレーブ自己アニール回路ブロック中の第１の揮発性メモリに第１の冗長値を記憶し、第２の冗長値を決めてマスタ自己アニール回路ブロック中の第２の揮発性メモリに第２の冗長値を記憶し、少なくとも第１の冗長値および第２の冗長値から１つ以上の値を決め、少なくとも第１の冗長値および第２の冗長値から決められる１つ以上の値に少なくとも部分的に基づいてμバンプおよび冗長μバンプのうち１つを選択的に用いて第１のダイと第２のダイとを相互接続するように構成可能である。
【００２１】
本明細書中に記載の実施形態のうち任意のものにおいて、スレーブコントローラは、マスタ自己アニール回路ブロック中のマスタプルダウントランジスタをイネーブルし、かつスレーブ自己アニール回路ブロック中のスレーブプルアップトランジスタをイネーブルすることによって、第１の揮発性メモリに記憶するための第１の冗長値を決めるように構成可能である。
【００２２】
本明細書中に記載の実施形態のうち任意のものにおいて、スレーブコントローラはスレーブクロック周波数で動作することができ、マスタコントローラはマスタクロック周波数で動作することができ、マスタクロック周波数はスレーブクロック周波数とは異なることができる。
【００２３】
本明細書中に記載の実施形態のうち任意のものにおいて、マスタコントローラおよびスレーブコントローラは、第１の揮発性メモリおよび第２の揮発性メモリをリセットし、複数ダイデバイスの１つ以上の出力バッファをディスエーブルするようにさらに構成可能である。
【００２４】
他の実施形態では、複数ダイデバイスの第１のダイと第２のダイとを相互接続するための方法は、複数ダイデバイスの第１のダイのためのマスタ自己アニール回路ブロックのマスタコントローラと複数ダイデバイスの第２のダイのためのスレーブ自己アニール回路ブロックのスレーブコントローラとの間のマスタ−スレーブ関係を決めることを含む。第１のダイと第２のダイとは、マスタ自己アニール回路ブロック、スレーブ自己アニール回路ブロック、第１のμバンプと第２のμバンプとのうち１つを通してともに結合される。方法はさらに、スレーブコントローラに動作するように接続される第１の揮発性メモリに第１の冗長値を記憶することと、マスタコントローラに動作するように接続される第２の揮発性メモリに第２の冗長値を記憶することとを含む。
【００２５】
本明細書中に記載の実施形態のうち任意のものにおいて、方法はさらに、１つ以上の値に少なくとも部分的に基づいて、第１のμバンプの機能性を第２のμバンプの機能性で置き換えることを含むことができ、１つ以上の値は、少なくとも、第１の揮発性メモリに記憶される第１の冗長値および第２の揮発性メモリに記憶される第２の冗長値から導出される。
【００２６】
本明細書中に記載の実施形態のうち任意のものにおいて、方法はさらに、マスタコントローラを用いて第１の電源（power）を決めることと、第１の判断基準に少なくとも部分的に基づいてマスタコントローラを用いて第１の電源良好（power good）信号を送信することと、スレーブコントローラを用いて第２の電源を決めることと、第２の判断基準に少なくとも部分的に基づいてスレーブコントローラを用いて第２の電源良好信号を送信することと、第１の電源良好信号および第２の電源良好信号に少なくとも部分的に基づいて第１のμバンプの機能性を第２のμバンプの機能性で置き換えるか否かを判断することとを含むことができる。
【００２７】
本明細書中に記載の実施形態のうち任意のものにおいて、方法はさらに、第１の揮発性メモリをリセットすることと、第２の揮発性メモリをリセットすることと、マスタ自己アニール回路ブロック中のマスタ出力バッファをディスエーブルすることと、スレーブ自己アニール回路ブロック中のスレーブ出力バッファをディスエーブルすることとを含むことができる。
【００２８】
本明細書中に記載の実施形態のうち任意のものにおいて、方法はさらに、マスタコントローラを用いてマスタ自己アニール回路ブロック中の第１の複数のプルダウントランジスタをイネーブルし、かつスレーブコントローラを用いてスレーブ自己アニール回路ブロック中の第２の複数のプルアップトランジスタをイネーブルすることによって第１の冗長値を決めることを含むことができる。
【００２９】
他の実施形態に従うと、複数ダイデバイスの第１のダイと第２のダイとを相互接続するための装置は、複数ダイデバイスの第１のダイとインターフェイスする第１のコントローラと、複数ダイデバイスの第２のダイとインターフェイスし、かつ第１のμバンプおよび第２のμバンプを通して第１のコントローラに相互接続される第２のコントローラと、複数の回路スライスとを含む。複数の回路スライスの各々は、複数ダイデバイスの第１のダイおよび第２のダイの両方とインターフェイスし、第１のコントローラおよび第２のコントローラの両方によって制御される。第１のコントローラおよび第２のコントローラは、第１のコントローラおよび第２のコントローラのうち一方がマスタであり、第１のコントローラおよび第２のコントローラのうち別の一方がスレーブであるマスタ−スレーブ関係にある。マスタは、マスタ内部発振器に少なくとも部分的に基づいて自己アニールプロセスを開始するように構成され、スレーブは、スレーブ内部発振器およびマスタによって決められる速度に基づいて状態遷移を行なうように構成される。
【００３０】
本明細書中に記載の実施形態のうち任意のものにおいて、第１のコントローラおよび第２のコントローラは同期しないことが可能であり、第１のコントローラおよび第２のコントローラはアーキテクチャ的に同一であり得るが、マスタ−スレーブ関係に少なくとも部分的に基づいて異なって振舞うように構成可能である。
【００３１】
本明細書中に記載の実施形態のうち任意のものにおいて、第１のコントローラは第１のマスタ−スレーブ選択ピンを備えることができ、第１のダイと関連付けられる第１の電源に少なくとも部分的に基づいて第１のマスタ−スレーブ選択ピンにおいて第１の入力をサンプリングするように構成可能である。第２のコントローラは第２のマスタ−スレーブ選択ピンを備えることができ、第２のダイと関連付けられる第２の電源に少なくとも部分的に基づいて第２のマスタ−スレーブ選択ピンにおいて第２の入力をサンプリングするように構成可能である。マスタ−スレーブ関係は、サンプリングされる第１の入力および第２の入力に少なくとも部分的に基づくことができ、この場合マスタは、第１の信号を駆動して自己アニールプロセスを開始するように構成され、スレーブは、マスタからの第１の信号を入力信号として用いるように構成される。
【００３２】
以下の実施形態の詳細な説明を読むと、他のおよびさらなる局面および特徴が明らかになるであろう。
【００３３】
図面は実施形態の設計および有用性を図示し、図面中、同様の要素を共通の参照番号で参照する。これらの図面は必ずしも縮尺通りに描かれていない。以上に記載の他の利点および目的がどのように得られるかをより十分に評価するため、添付の図面に図示する実施形態のより特定的な説明を与える。これらの図面は典型的な実施形態のみを描くものであり、したがってその範囲を限定するものと考えてはならない。
【図面の簡単な説明】
【００３４】
【図１】システムロジックと相互作用する第１のダイが３つのμバンプを介して第２のダイに相互接続される複数ダイ相互接続アーキテクチャを図示する図である。
【図２】欠陥μバンプによる相互接続アーキテクチャの典型的な故障を図示する図である。
【図３】不揮発性メモリに冗長をプログラミングすることにより、不揮発性メモリを用いて冗長リソースの多重化を制御するカスケード冗長技術を図示する図である。
【図４】装置が２つの修復制御ブロック（ＲＣＢ）を有する、いくつかの実施形態に従う複数ダイ相互接続冗長制御を自己アニールするための装置を図示する図である。
【図５Ａ】上側の行がマスタモードを表わし、下側の行がスレーブモードを示す、いくつかの実施形態に従う修復制御ブロックの状態表を図示する図である。
【図５Ｂ】いくつかの実施形態に従う、自己アニールμバンプ冗長修復制御ステートマシン出力関数表を図示する図である。
【図６Ａ】いくつかの実施形態に従う、μバンプの例示的な修復実現例を図示する図である。
【図６Ｂ】いくつかの実施形態に従う、μバンプの例示的な修復実現例を図示する図である。
【図７Ａ】いくつかの実施形態に従う、μバンプの例示的な修復実現例を図示する図である。
【図７Ｂ】いくつかの実施形態に従う、μバンプの例示的な修復実現例を図示する図である。
【図８Ａ】冗長制御ブロックのいくつかの実施形態に従う双方向実現例のための例示的な修復を図示する図である。
【図８Ｂ】冗長制御ブロックのいくつかの実施形態に従う双方向実現例のための例示的な修復を図示する図である。
【図９】いくつかの実施形態に従う、揮発性メモリと不揮発性メモリとの任意の組合せであり得るμバンプおよび何らかの制御メモリのフィールドを図示する図である。
【図１０】いくつかの実施形態に従う、開示する方法または装置を用いることによる複数冗長制御ブロックの例示的な実現例を図示する図である。
【図１１Ａ】いくつかの実施形態に従う、開示する方法または装置のうちいくつかを用いる修復例を図示する図である。
【図１１Ｂ】いくつかの実施形態に従う、開示する方法または装置のうちいくつかを用いる修復例を図示する図である。
【図１１Ｃ】いくつかの実施形態に従う、開示する方法または装置のうちいくつかを用いる修復例を図示する図である。
【図１１Ｄ】いくつかの実施形態に従う、開示する方法または装置のうちいくつかを用いる修復例を図示する図である。
【図１２】いくつかの実施形態に従う、双方向信号を用いる複数ダイデバイスのための例示的な実現例を図示する図である。
【図１３Ａ】いくつかの実施形態に従う、双方向回路構成による冗長制御による複数ダイデバイスのための例示的な実現例を図示する図である。
【図１３Ｂ】いくつかの実施形態に従う、双方向回路構成による冗長制御による複数ダイデバイスのための例示的な実現例を図示する図である。
【図１４Ａ】いくつかの実施形態に従う、プログラマブル双方向回路構成による冗長制御による複数ダイデバイスのための例示的な実現例を図示する図である。
【図１４Ｂ】いくつかの実施形態に従う、プログラマブル双方向回路構成による冗長制御による複数ダイデバイスのための例示的な実現例を図示する図である。
【図１５Ａ】いくつかの実施形態に従う、プログラマブル双方向バッファを有する複数ダイデバイスのための代替的な実現例を図示する図である。
【図１５Ｂ】いくつかの実施形態に従う、プログラマブル双方向バッファを有する複数ダイデバイスのための代替的な実現例を図示する図である。
【図１６】いくつかの実施形態に従う、入出力混合バッファへの双方向信号を用いた冗長制御による複数ダイデバイスの例示的な別の実現例を図示する図である。
【図１７】いくつかの実施形態に従う、方向性信号を用いた冗長制御による複数ダイデバイスの代替的な実現例を図示する図である。
【図１８】いくつかの実施形態に従う、複数ダイ相互接続冗長制御を自己アニールするためのプロセスのための高レベル流れ図である。
【図１９】いくつかの実施形態に従う、図１８に図示する複数ダイ相互接続冗長制御を自己アニールするためのプロセスのための高レベル流れ図のより詳細を図示する図である。
【図２０】いくつかの実施形態に従う、複数ダイ相互接続冗長制御を自己アニールするためのプロセスのための高レベル流れ図である。
【図２１】いくつかの実施形態に従う、図２０の冗長制御を開始するプロセスのより詳細を図示する図である。
【図２２Ａ】いくつかの実施形態に従う、図２０の、１つ以上の第１の冗長値を決めて記憶する行為と、１つ以上の第２の冗長値を決めて記憶する行為とのより詳細を図示する図である。
【図２２Ｂ】いくつかの実施形態に従う、図２０の、１つ以上の第１の冗長値を決めて記憶する行為と、１つ以上の第２の冗長値を決めて記憶する行為とのより詳細を図示する図である。
【発明を実施するための形態】
【００３５】
詳細な説明
図を参照してさまざまな実施形態を以下に説明する。図は縮尺通りに描かれておらず、同様の構造または機能の要素は、図を通じて同じ参照番号で表わされることに留意すべきである。図は実施形態の説明を容易にすることのみを意図するものであることにも留意すべきである。それらは、請求される発明の網羅的な説明としてまたは請求される発明の範囲に対する限定として意図されるものではない。さらに、図示する実施形態は、示すすべての局面または利点を有する必要はない。特定の実施形態と関連して記載する局面または利点は必ずしもその実施形態に限定されるのではなく、そのように図示されていなくても任意の他の実施形態で実践可能である。また、この明細書を通じて「いくつかの実施形態」または「他の実施形態」を参照する場合は、実施形態と関連して記載する特定の特徴、構造、材料、または特性が少なくとも１つの実施形態に含まれることを意味する。このように、「いくつかの実施形態では」または「他の実施形態では」という文言がこの明細書を通じてさまざまな場所で現われることは、必ずしも同じ１つの実施形態または複数の実施形態を参照しているわけではない。
【００３６】
図１は、システムロジック１０２と相互作用する第１のダイ１０６が３つのμバンプ１１０を介して第２のダイ１０８に相互接続される複数ダイ相互接続アーキテクチャを図示する。第２のダイ１０８はシステムロジック１０４と相互作用する。図２は、一連のμバンプ２０６を介した第１のダイ２０２と第２のダイ２０４との間の例示的な複数ダイ相互接続アーキテクチャを図示する。第１のダイ２０２はシステムロジック２１０と相互作用し、第２のダイはシステムロジック２１２と相互作用する。図２は、バッファＢ３およびＢＥと相互接続することになっているμバンプ２０８が欠けていることによる、相互接続アーキテクチャの典型的な故障をさらに図示する。
【００３７】
図３は、不揮発性メモリに冗長をプログラミングすることにより、不揮発性メモリを用いて冗長リソースの多重化を制御するカスケード冗長技術を図示する。図に図示するようなアーキテクチャは、一連のμバンプ３０１、３０２、３０３、３０４、３０５、３０６を介して第２のダイ３１６に相互接続される第１のダイ３１５を含み、ここではμバンプ３０６が冗長μバンプを表わす。このように、この明細書で用いるように、「μバンプ」という用語は、（冗長であってもなくても）機能的なμバンプまたは欠陥μバンプであり得る任意のμバンプを参照し得る。図示するアーキテクチャでは、第１のダイ３１５は一連のマルチプレクサ３２８、３２２、３０７、３３１、３２７を介してシステムロジック３２１と相互作用し、第２のダイ３１６は、その出力がそれぞれの出力バッファ３１２、３２４、３１９、３２６、３３４を駆動する一連のマルチプレクサ３１１、３２３、３１８、３３０、３３２を介してシステムロジック３２０と相互作用する。図３のアーキテクチャは、余分のドライバ（マルチプレクサ３１３および出力バッファ３１４）を有する余分のμバンプ３０６をさらに含む。第１のダイ３１５は、冗長リソースの多重化を制御する、何らかの不揮発性メモリ３００ａを含むコントローラブロック３０９をさらに含む。同様に、第２のダイ３１６も、冗長リソースの多重化を制御する、何らかの不揮発性メモリ３００ｂを含むコントローラブロック３０８を含む。図からわかるように、アーキテクチャは相互接続においてμバンプ３０３を欠いている。アーキテクチャは、選択信号をマルチプレクサに与えることにより、不揮発性メモリ３００ａ、３００ｂを用いて多重化を制御する。
【００３８】
この例では、制御ブロック３０９および３０８は、対応のμバンプが存在するマルチプレクサへの選択信号として「０」を駆動し、対応のμバンプが欠けている場合は「１」を駆動する。たとえば、マルチプレクサ３２８、３２２、３１１、および３２３についての選択信号は「０」であり、マルチプレクサ３０７、３３１、３２７、３１３、３１８、３３０、および３３２のための選択信号は「１」であり、これは、欠けているμバンプ３０３の機能性を置き換えるのにμバンプ３０４を用い、μバンプ３０４の機能性を置き換えるのにμバンプ３０５を用い、μバンプ３０５の機能性を置き換えるのに余分のμバンプ３０６を用いることを示す。
【００３９】
いくつかの実施形態に従う複数ダイ相互接続冗長制御を自己アニールするための別の装置４００を図示する図４を参照して、装置４００は２つの修復制御ブロック（ＲＣＢ）４０６および４０８を備える。装置４００のＲＣＢ４０６は、システムロジック部分４４０を含む第１のダイ４０２に集積化され、装置４００のＲＣＢ４０８は、システムロジック部分４４２を含む第２のダイ４０４に集積化される。ＲＣＢ４０６は、第１のダイ４０２中のシステムロジック部分４４０に結合される構成要素（第１の自己アニール回路ブロック）を制御するように用いられ、ＲＣＢ４０８は、第２のダイ４０４中のシステムロジック４４２に結合される構成要素（第２の自己アニール回路ブロック）を制御するのに用いられる。第１のダイ４０２および第２のダイ４０４は、複数のμバンプ１、２、３、４、５および冗長μバンプ６と相互接続される。冗長μバンプ６は、冗長制御のためのマルチプレクサ（ＭＵＸ）４５０に動作するように接続される三状態バッファ４５２によって駆動される。
【００４０】
装置４００は、第１のダイ４０２と第２のダイ４０４とを直接に接続するμバンプ１、２、３、４、５および冗長μバンプ６を有するものとして図示されるが、代替的な実施形態では、第１のダイ４０２と第２のダイ４０４とは、μバンプおよび冗長μバンプを含む受動的インターポーザを通して間接的に接続されてもよい。そのような実現例の例を図１２に図示し、これを以下でさらに詳細に論じる。また、さらなる実施形態では、各行に１つの冗長μバンプ６を有する代わりに、装置４００は各行に複数のμバンプ６を有してもよい。
【００４１】
図４に戻って、ＲＣＢ４０６およびＲＣＢ４０８は２つのμバンプ７および８を介して相互接続される。いくつかの実施形態では、ＲＣＢ４０６およびＲＣＢ４０８は、２μバンプハンドシェイクを確立するステートマシンを構成する。第１のダイ４０２および第２のダイ４０４は、２つのＲＣＢ４０６、４０８のうち一方がマスタとして指定されるかまたは決められ、かつ２つのＲＣＢ４０６、４０８のうち他方がスレーブとして指定されるかまたは決められる限り、アーキテクチャ的に同一である。２つのＲＣＢ４０６、４０８を示すが、他の実施形態では、装置４００は２つよりも多くのＲＣＢを有してもよいことに留意すべきである。たとえば、他の実施形態では、ＲＣＢがマスタであってもよく、２つ以上の他のＲＣＢがスレーブであってもよい。第１の自己アニール回路ブロックは、第１のダイ４０２のシステムロジック部分４４０を除く図４の底部部分上であってμバンプ１−６下方にさまざまな電気構成要素と相互接続部とを備え、第２の自己アニール回路ブロックは、第２のダイ４０４のシステムロジック部分４４２を除く図４の頂部部分上であってμバンプ１−６上方にさまざまな電気構成要素と相互接続部とを備える。第１および第２の自己アニール回路ブロックは５つのスライスにさらにともに分割されてもよく、第１のスライスは、たとえば、ＭＵＸ４１０ａ、ＯＲゲート４１２ａ、三状態バッファ４１４ａ、レジスタ４１６ａ、抵抗器４１８ａに接続される弱いプルアップ４２０ａ、第２の自己アニール回路ブロックのプルダウントランジスタ４２２ａ、μバンプ１、抵抗器素子４２４ａに接続される弱いプルアップトランジスタ４２６ａ、プルダウントランジスタ４２８ａ、レジスタ４３０ａ、ＯＲゲート４３２ａ、ＭＵＸ４３４ａ、および第１の自己アニール回路ブロックの出力バッファ４３６ａを備える。出力バッファ４３６ａの出力はシステムロジック部分４４０を駆動する。第２の自己アニール回路ブロックのプルアップトランジスタ４２０ａ−４２０ｅおよび第１の自己アニール回路ブロックの４２６ａ−４２６ｅは弱い。なぜなら、それらはそれぞれの抵抗器素子（第１の自己アニール回路ブロック中の４１８ａ−４１８ｅおよび第２の自己アニール回路ブロック中の４２４ａ−４２４ｅ）を通して電源に接続されるからである。いくつかの実施形態では、これらの弱いプルアップトランジスタはそれぞれ、ＲＣＢ４０６およびＲＣＢ４０８からのグローバル信号（ＭＰＵ）によって制御され、プルダウントランジスタ４２２ａ−４２２ｅおよび４２８ａ−４２８ｅはそれぞれ、ＲＣＢ４０６およびＲＣＢ４０８からのグローバル信号（ＭＰＤ）によって制御される。いくつかの実施形態では、レジスタ４１６ａ−４１６ｅおよび４３０ａ−４３０ｅの各々はラッチを用いて実現されてもよい。
【００４２】
この例示的な装置では、μバンプ３は点線で描かれており、このことが欠陥μバンプを表わすことを示すことに留意すべきである。ＲＣＢ４０６はマスタ／スレーブ選択ピン４６０を含み、ＲＣＢ４０８はマスタ／スレーブ選択ピン４６２を含む。図４に図示するこの例示的な装置では、ＲＣＢ４０６およびＲＣＢ４０８はアーキテクチャ的に同一であるが、異なって振舞う。ＲＣＢ４０６とＲＣＢ４０８との間のマスタ−スレーブ関係は、マスタ／スレーブ選択ピン４６２、４６０のうち一方（図示する例では４６２）を電圧（たとえばＶｃｃ）に接続し、マスタ／スレーブ選択ピン４６２、４６０のうち他方（図示する例では４６０）を接地（ＧＮＤ）に接続することによって確立され得る。いくつかの実施形態では、ＲＣＢ４０６およびＲＣＢ４０８はアーキテクチャ的に同一であってもよいのであるが、ＲＣＢ４０８は、複数ダイデバイスのための入力として働く第２のダイのシステムロジック部分４４２とインターフェイスする第２の自己アニール回路ブロックを制御するように用いられる一方で、ＲＣＢ４０６は、複数ダイデバイスのための出力として働く第１のダイのシステムロジック部分４４０とインターフェイスする第１の自己アニール回路ブロックを制御するように用いられる。ＲＣＢ４０６およびＲＣＢ４０８は、異なる周波数で動作するそれぞれの内部発振器も備えてもよい。尤も、２つの内部発振器は構造的におよびアーキテクチャ的に互いと同一であってもよい。いくつかの実施形態では、内部発振器周波数の差は、たとえば、それぞれのダイのプロセスコーナーに基づいてもよい。
【００４３】
欠けているμバンプ３を含むスライスについては、Ｍｕｘ４１０ｃは、システムロジック部分４４２からの入力と、ＯＲゲート４１２ｃからの選択信号とを受ける。三状態バッファ４１４ｃは、Ｍｕｘ４１０ｃの出力に基づいておよびＲＣＢ４０８からのグローバル制御信号（ＭＯＥ）にも基づいて、欠けているμバンプ３を駆動する。欠けているμバンプ３は、ＲＣＢ４０８からのグローバル信号（ＭＰＤ）によって制御されるプルダウントランジスタ４２２ｃに接続される。欠けているμバンプ３は、ＲＣＢ４０８からのグローバル信号（ＭＰＵ）によって制御される弱いプルアップトランジスタ４２０ｃにも接続される。ＲＣＢ４０８からのＭＰＵおよびＭＰＤ信号は、それぞれ他の弱いプルアップトランジスタ４２０ａ、４２０ｂ、４２０ｄ、４２０ｅ、およびプルダウントランジスタ４２２ａ、４２２ｂ、４２２ｄ、４２２ｅも同様に制御した。レジスタ４１６ｃは、欠けているμバンプ３からのデータ（Ｄ）入力を受信し、その出力（Ｑ）はＯＲゲート４１２ｃに向かう。レジスタ４１６ｃは、マスタリセット信号（ＭＲ）からのリセット信号（Ｒ）およびクロック信号（Ｇ）と、ＲＣＢ４０８からのマスタクロック信号（ＭＧ）ともそれぞれ受信する。ＯＲゲート４１２ｃは、冗長μバンプ６の配置（たとえば場所）により、図４に図示する例示的な装置中では、レジスタ４１６ｃおよび別のスライスのＯＲゲート４１２ｂからの入力を受信する。いくつかの実施形態では、ＯＲゲート４１２ｃの出力はＭｕｘ４１０ｃの選択信号を駆動し、冗長μバンプ６の配置により、別のスライスのＯＲゲート４１２ｄをさらに駆動する。
【００４４】
欠けているμバンプ３を含むこの特定のスライスについて、欠けているμバンプ３は、抵抗器素子４２４ｃに接続されるプルダウントランジスタ４２８ｃおよび弱いプルアップトランジスタ４２６ｃにさらに接続される。弱いプルアップトランジスタ４２６ｃは、ＲＣＢ４０６からの制御信号（ＭＰＵ）によって制御され、プルダウントランジスタ４２８ｃは、ＲＣＢ４０６からの制御信号（ＭＰＤ）によって制御される。ＲＣＢ４０６からのＭＰＵおよびＭＰＤ信号も同様に、それぞれ他の弱いプルアップトランジスタ４２６ａ、４２６ｂ、４２６ｄ、４２６ｅおよびプルダウントランジスタ４２８ａ、４２８ｂ、４２８ｄ、４２８ｅも制御した。ＯＲゲート４３２ｃはレジスタ４３０ｃのためのデータ（Ｄ）入力を与え、ＯＲゲート４３２ｃの出力はＯＲゲート４３２ｄおよびＭｕｘ４３４ｃを駆動する。Ｍｕｘ４３４ｃの出力は出力バッファ４３６ｃを駆動し、その出力が第１の自己アニール回路ブロックのシステムロジック部分４４０をさらに駆動する。レジスタ４３０ａ、４３０ｂ、４３０ｄ、４３０ｅ、ＯＲゲート４３２ａ、４３２ｂ、４３２ｄ、４３２ｄ、マルチプレクサ４３４ａ、４３４ｂ、４３４ｄ、４３４ｅ、出力バッファ４３６ａ、４３６ｂ、４３６ｄ、４３６ｅなどの他のスライス中のさまざまな構成要素も、欠けているμバンプ３を含むスライスについて記載したのと同様に機能する。冗長μバンプ６を含む冗長スライス４４８は、冗長μバンプ６を駆動する余分の三状態バッファ４５２と、三状態バッファ４５２に出力を与える余分のＭｕｘ４５０とを含む。
【００４５】
動作の際、ＲＣＢ４０６およびＲＣＢ４０８はそれぞれ、第１のダイ４０２および第２のダイ４０４への電源をモニタする。ＲＣＢ４０６が第１のダイ４０２への電源が良好であると判断し、ＲＣＢ４０８が第２のダイ４０４への電源が良好であると判断すると、各々はμバンプ８を通して良好信号（ＧＤ）をＺ（高インピーダンス）に駆動する。良好信号はローに駆動され、ＲＣＢ４０６またはＲＣＢ４０８がそれぞれのダイへの電源が良好でないと判断する限りはローのまま留まる。それにも拘わらず、第１のダイ４０２および第２のダイ４０４の両方への電源が良好であると判断されるとすぐに、良好信号がＺになる。次に、弱いプルアップ抵抗器（ダイ４０２、４０４の各々に１つ）がイネーブルされてμバンプ８を「１」に駆動する。第１のダイ４０２または第２のダイ４０４のいずれかへの電源が良好でなくなると判断されるいくつかの場合、良好ノード８はローに引かれ、ＲＣＢ４０６およびＲＣＢ４０８がリセットされる。良好信号が一旦「１」になると、ＲＣＢ４０６およびＲＣＢ４０８は両者ともそれぞれのマスタ／スレーブ入力４６２、４６０をサンプリングして、どちらのＲＣＢがマスタであり、他方がスレーブであるかを決める。マスタＲＣＢはμバンプ７を介して開始信号を駆動し、スレーブＲＣＢはＺを駆動し、マスタからの開始信号を入力として用いる。次にマスタＲＣＢは、それ自身の内部発振器周期に基づく固定期間に基づいてＰＯＲアニールプロセスを経るとともに、スレーブＲＣＢはマスタＲＣＢからの開始信号を用いてその状態遷移を行ない、マスタＲＣＢが示す速度で作動する。図５は、ＲＣＢ４０６およびＲＣＢ４０８についての状態表を図示し、ここでは上側の行がマスタモードを表わし、下側の行がスレーブモードを示す。
【００４６】
ＲＣＢ４０６および４０８の両者ともが第１のダイ４０２および第２のダイ４０４への電源が良好であると判断すれば、ＲＣＢ４０６およびＲＣＢ４０８はマスタリセット信号（ＭＲ）を駆動して自己アニールプロセスを開始し、レジスタ４１６ａ−４１６ｅおよび４３０ａ−４３０ｅをリセットする。ＲＣＢはグローバル制御信号（ＭＯＥ）をさらに駆動して、第２の自己アニール回路ブロック上の三状態バッファ４１４ａ−４１４ｅをディスエーブルする。ＲＣＢ４０８がマスタと決められ、ＲＣＢ４０６がスレーブと決められると仮定すると、次にＲＣＢ４０８は制御信号（ＭＰＤ）を駆動してプルダウントランジスタ４２２ａ−４２２ｅをイネーブルし、ＲＣＢ４０６は別の制御信号（ＭＰＵ）を駆動して弱いプルアップトランジスタ４２６ａ−４２６ｅをイネーブルする。次に、いくつかの実施形態では、ＲＣＢ４０６はクロック信号（ＭＧ）をパルス化して、μバンプの状態に基づいてレジスタ４３０ａ−４３０ｅ中に冗長値を書込む。たとえば、ＲＣＢは、μバンプが良好であるスライスについては「０」を書込み、μバンプに欠陥があるスライスについては「１」を書込む。図４に図示するこの例では、ＲＣＢ４０６はレジスタ４３０ａ、４３０ｂ、４３０ｄ、４３０ｅに「０」を書込み、レジスタ４３０ｃに「１」を書込む。
【００４７】
書込動作の後、次にＲＣＢ４０８はプルダウントランジスタ４２２ａ−４２２ｅをディスエーブルし、次にＲＣＢ４０６は弱いプルアップトランジスタ４２６ａ−４２６ｅをディスエーブルする。
【００４８】
次に、スレーブＲＣＢ４０６は制御信号（ＭＰＤ）を駆動して、プルダウントランジスタ４２８ａ−４２８ｅをイネーブルし、マスタＲＣＢ４０８は別の制御信号（ＭＰＵ）を駆動して弱いプルアップトランジスタ４２０ａ−４２０ｅをイネーブルする。これは、μバンプが良好である場合は「０」、μバンプが欠けている場合は「１」で、レジスタ４１６ａ−４１６ｅの入力を駆動する。次に、マスタＲＣＢ４０８はマスタ信号（ＭＧ）をパルス化してレジスタ４１６ａ−４１６ｅに冗長値をラッチするまたは記憶する。この例では、レジスタ４１６ａ、４１６ｂ、４１６ｄ、４１６ｅの冗長値は「０」であり、レジスタ４１６ｃの冗長値は「１」である。テストが完了した後、ＲＣＢ４０６およびＲＣＢ４０８はすべての弱いプルアップトランジスタ４２０ａ−４２０ｅおよび４２６ａ−４２６ｅならびにすべてのプルダウントランジスタ４２２ａ−４２２ｅおよび４２８ａ−４２８ｅをディスエーブルし、グローバル制御信号（ＭＯＥ）を駆動して三状態バッファ４１４ａ−４１４ｅをイネーブルする。
【００４９】
いくつかの実施形態では、次に装置４００は、第１および第２の自己アニール回路ブロック上のレジスタおよびＯＲゲートに基づいて、どのμバンプを用いるべきかを決め得る。図４に図示するこの例示的な実施形態の各スライス毎に、スライスのレジスタおよびスライスの左側のＯＲゲート中の値に少なくとも部分的に基づいて、用いるべきμバンプを決める。たとえば、第２の自己アニール回路ブロックについては、欠けているμバンプ３を含むスライスに用いるべきμバンプは、レジスタ４１６ｃおよび／または左側のスライスのＯＲゲート４１２ｂに記憶される値に少なくとも部分的に基づいて決められる。さらに、第１の自己アニール回路ブロックについては、用いるべきμバンプは、レジスタ４３０ｃおよび／またはＯＲゲート４３２ｂに記憶される値によって決まる。図４に図示するこの例示的な実施形態では、ＯＲゲート４１２ｃが「１」であり、かつレジスタ４１６ｃが「１」である場合、Ｍｕｘ４１０ｃは、左側のシステムロジック入力を選んで冗長をイネーブルし、右側のスライスに「１」を送って冗長をイネーブルする。ＯＲゲート４１２ｃが「０」であり、かつレジスタ４１６ｃが「０」である場合、Ｍｕｘ４１０ｃはシステムロジック入力を選び、右側のスライスに「０」を送り、カスケード冗長が存在しないことを示す。図４に図示するようなこれらの実施形態では、第２のダイ４０４上の５つのレジスタ４１６ａ−４１６ｅのうちいずれかで冗長がイネーブルされると、μバンプ６、Ｍｕｘ４５０、および三状態バッファ４５２が冗長のためにイネーブルされ、これにより、欠けているμバンプ３の機能性がμバンプ４の機能性で置き換えられ、μバンプ４の機能性がμバンプ５の機能性で置き換えられ、かつμバンプ５の機能性が冗長μバンプ６の機能性で置き換えられる。
【００５０】
図４に図示する例示的な実施形態では、第２のダイ４０４は複数ダイデバイスのための入力ダイとして働き、第１のダイ４０２は複数ダイデバイスのための出力として働き、これにより、データは、第２のダイ４０４から、第２の自己アニール回路ブロック、μバンプ、および第１の自己アニール回路ブロックを介して、第１のダイ４０２へと一方向に流れていく。それにも拘わらず、双方向接続のため、ならびに第１のダイ４０２および第２のダイ４０４のうちいずれか１つが複数ダイデバイスの入力および出力の両方として働く接続部および構成要素を含み得る混合接続のためにも、同じ方策を用いてもよい。双方向および混合接続についてのより詳細は、さまざまな図を参照して後の段落で与えられる。さらに、いくつかの実施形態では、第１の自己アニール回路ブロックまたは第２の自己アニール回路ブロックなどの自己アニール回路ブロックの少なくとも一部または全体を、第１のダイ４０２または第２のダイ４０４のシステムロジック部分に埋込んでもよい。たとえば、いくつかの実施形態では、冗長マルチプレクサ機能およびそれらの対応の回路構成を、これらの冗長多重化機能のための専用回路を有するよりもむしろ、それぞれのダイの対応のシステムロジック部分またはダイの他の部分のＲＴＬ（レジスタ転送レベル）に埋込んでもよい。加えてまたは代替的に、いくつかの実施形態では、マルチプレクサは、各スライス毎の専用の冗長マルチプレクサを有するよりもより小さい面積およびより小さいパフォーマンスインパクトを呈するように、より広くされてもよい。さらに、当業者には公知のいくつかの他のやり方でも弱いプルアップを実現してもよい。したがって、装置４００の実施形態を図４に示すものに限定するべきではなく、図４は、さまざまな他の実施形態の範囲または請求項の範囲を限定することを意図していない。また、冗長レジスタから読出すまたはこれに書込むのに付加的な回路をさらに加えてもよい。
【００５１】
図４の装置４００は、いくつかの点で、図３を参照して記載したものよりも有利である。図３の装置についての１つの問題は、これが冗長リソースにおいて多重化を制御する不揮発性メモリを要件とすることである。冗長を要するリソースの数が増大するにつれて、これはより多くの不揮発性メモリを要件とする。不揮発性メモリは閉じ込められた連続空間において最も良好に実現される。μバンプおよび冗長リソースはダイの周りに分散されることがある。これは、中央場所から冗長マルチプレクサへのすべての不揮発性メモリ制御の経路設定の問題を生じ得る。不揮発性メモリのより近くに冗長マルチプレクサを置くと、より長いデータ経路相互接続ルートが必要となり、許容不可能な性能劣化が生じるであろう。いずれの場合も、制御信号またはデータ経路信号をそれぞれ経路設定するかなりの面積およびリソースが必要となる。さらに、テストプログラムはダイ同士の間の良好な接続および不良接続をマッピングしなければならない。これはかなりのテスタ時間を必要とするであろうし、μバンプ計数が増大するにつれ、応じて製造コストが増大するであろう。
【００５２】
図３の装置とは異なり、図４の装置４００は自己アニール冗長システムである。以上図示するように、装置４００は、各々の冗長マルチプレクサを制御する揮発性メモリセルを追加することによって働く。付加的な回路は各接続部に設けられ、修復シーケンスの際にμバンプ接続の単純なテストを行なう。各々のμバンプテストの結果は次に、そのローカルメモリセルに記憶される。非常に小さなステートマシンを追加して、ローカルメモリセルの起動テストおよびプログラミングを制御する。この方策により、グローバル経路設定の量が非常に最小限となり、テスト時間が実質的に低減され、ダイは、冗長をサポートするコストの高い不揮発性メモリプロセスステップを必要としないであろう。最終的に、冗長マルチプレクサおよびメモリをデータ経路場所に基づいて置くことができ、これによりデータ経路の性能劣化は最小限となる。確実なテストおよびプログラミングのためには電源が十分に安定していることが極めて重要である。さらに、装置４００で利用される自己アニール方策は、μバンプ機能性の連続評価およびさまざまな環境的および機械的メカニズムから生じ得る自発的な欠陥の修正を可能にする。
【００５３】
また、冗長μバンプならびに余分のドライバおよびマルチプレクサなどの冗長リソースをイネーブルするのに不揮発性メモリを用いない技術は多数の他の利点を提供する。これらの実施形態では、μバンプの完全性のテストは、不揮発性メモリをプログラミングする冗長不揮発性メモリ値および時間を決めるのに、外部テスタおよびテスト時間を必要としない。本明細書中に記載の開示する方法および装置は、冗長μバンプならびに余分のドライバおよびマルチプレクサなどの冗長の量がダイにわたって異なることを許容する。方法および装置は、複数ダイデバイスが現場で展開されかついくらかの時間の間用いられた後ですら、自己修復をさらに行なう。なぜなら、いくつかの実施形態では、方法および装置は、一意な冗長ラッチを可能にするからである。本明細書中に記載の方法および装置は、複数ダイデバイスがいつでも効果的な態様で欠陥μバンプについてそれ自身をテストすることも可能にする。
【００５４】
この方法および装置は、不揮発性メモリを含む冗長制御回路構成で広く用いられ、またすべての不良モジュールの修復能力がより劣っていることが一般的に知られている最適化または圧縮をさらに必要としない。ダイにわたる均一な冗長の割合を通常は要件とする冗長多重化のための不揮発性メモリに係る他の方法または装置とは反対に、この方法および装置は、ダイにわたる均一な冗長の割合を要件としないという利点をさらに提供する。いくつかの実施形態では、本明細書中に記載の方法またはシステムは、上述のように、たとえば、「良好」信号を「０」に駆動し、次にそれを解放して冗長回路構成をリセットしかつ再開始することによって、現場での冗長の再判断を許容する。これらの実施形態では、方法または装置は、接続損耗、ＳＥＵ（単一事象反転）の懸念、環境に誘導される故障、および間欠的な故障に特に有用である。方法または装置は、いくつかの実施形態では、ある時点で起動条件とは異なってしまう、たとえば温度および電圧によって生じる接続の問題も修正し得る。単一事象反転に対処するため、方法または装置の実施形態は、冗長が必要ない場合にたとえば「良好」信号を「０」に保持することによって、冗長をディスエーブルできるようにする。
【００５５】
加えてまたは代替的に、本明細書に開示するさまざまな方法または装置は、いくつかの実施形態では、たとえば不揮発性メモリマップを決めるテスト時間低減特徴を用いることによって不揮発性冗長方策を用いて、さらに向上または混合され得る。また、いくつかの実施形態では、方法または装置の自己修復性は、データ経路接続が標準的な不揮発性冗長制御を用い得ながら、構成メモリおよび不揮発性メモリプログラミングなどの極めて重要な接続で用いられ得る。さらに、不揮発性メモリによる冗長制御とは異なり、いくつかの実施形態では、本明細書中に開示するさまざまな方法および装置の修復およびテスト時間は、複数ダイデバイスにおけるμバンプの数に拘わらず一定のままである。不揮発性メモリを用いる冗長制御によるテスト時間または修復時間は、μバンプの数が増大するにつれて増大し得る。各々の冗長マルチプレクサおよびレジスタを、対応のデータ経路場所に基づいて置き、これによりデータ経路の最小限の性能劣化を提示し得ることに留意すべきである。これは、より大きな深刻な性能劣化を提示する、不揮発性メモリから各マルチプレクサへの経路設定信号配線を要件とする不揮発性メモリ方策を用いた冗長制御とは対照的である。
【００５６】
図５Ａは、修復制御ブロックＲＣＢ４０６およびＲＣＢ４０８の状態表を図示し、この中で、いくつかの実施形態では、上側の行はマスタモードを表わし、下側の行はスレーブモードを示す。図５Ａでは、ステートマシンをリセットする良好＝「０」はアイドル状態についてのみ示される。いずれの状態でも良好＝「０」である場合、ステートマシンはＰＯＲに戻る。しかしながら、図５Ａの読取を容易にするため、これらの経路を示さない。各々の状態丸印において、「開始」出力値を状態名の下に示す。開始＝Ｚである場合、開始がステートマシンへの入力である。マスタモードでは、いちばん上の行に示すように、状態遷移は、固定数の内部発振器クロックサイクルに基づいている。ＰＶＴ（プロセス、電圧、または温度）の可能な内部発振器ばらつきがより広くなるにつれ、マスタおよびスレーブＲＣＢが同期するのにより多くのサイクルが必要となる。いくつかの実施形態では、状態あたりのマスタモードサイクルの数は、マスタが最大周波数で動作しスレーブが最も遅い周波数で動作する場合は、各スレーブ状態で３つのクロックサイクルを許容しなければならない。それにも拘わらず、この例の５／３という比率は、プロセス、温度、および電圧について±２５％のばらつきのある発振器のために働く。他の実施形態では他の比率を用いてもよい。
【００５７】
最も下の行に示すようなスレーブモードでは、状態遷移は、マスタＲＣＢから来る開始入力によって設定される。これは、各状態における時間を、２つの内部発振器の非同期性によるいくらかのばらつきよりも小さなマスタの時間とほぼ等しくする。図５Ａでは、待機（Ｗ）、送信（Ｓ）、またはアイドル（Ｉ）の各事象が一意な状態を構成する。
【００５８】
図５Ｂは、いくつかの実施形態に従う自己アニールμバンプ冗長修復制御ステートマシン出力関数表（表１）を図示する。より具体的には、表１は、これらの実施形態における各状態毎の信号出力を示す。同じ標識を有する表１中のすべての状態は、これらの状態が一意な状態であるとしても、いくつかの点で同じように振舞う。書込（Ｗｒｔ）状態では、マスタクロック（ＭＧ）信号が
【００５９】
【数１】
2014527731.tif 000003
【００６０】
として示され、これは、ＭＧ信号がハイにパルス化されて１クロックサイクルの間データをラッチすることを示す。波形は１サイクルの間はローであり、１サイクルの間はハイであり、状態の残余の間はローである。これは、マスタ状態の周期を決めるのに用いられるスレーブ３クロックサイクル要件を設定する行為を表わす。簡略化のため、待機（Ｗ）状態を複数回用いる。待機（Ｗ）状態信号ＭＰＵおよびＭＰＤは、表１では「最後」と記載され、これは、これらの出力の状態が最後の状態の値によって決まることを暗示する。
【００６１】
図６Ａ−図６Ｂは、いくつかの実施形態の入力側の例示的な修復実現例を図示する。より具体的には、図６Ａは一連のμバンプを図示し、その各々は、冗長をイネーブルするためにコンフィギュレーションランダムアクセスメモリ（ＣＲＡＭ）ビット値６０２からの入力を受ける対応のＭｕｘに接続される。ＣＲＡＭは、ＦＰＧＡ（フィールドプログラマブルゲートアレイ）の構成を制御するのに用いられてもよい。マルチプレクサの出力はそれぞれの出力バッファを駆動する。この例示的な実施形態では、ＣＲＡＭビット値「１」は冗長をイネーブルすることを示し、すべてのμバンプは意図するように無傷でありかつ完全に機能的である。冗長制御を有する自己アニール回路ブロックは、図６Ａに図示するように余分のμバンプ６０４を含む。
【００６２】
図６Ｂは、欠陥μバンプ６０６（たとえば欠けているμバンプ）および冗長μバンプ６０８を含む同様の自己アニール冗長回路ブロックを図示する。本明細書中に開示する方法または装置を用いることにより、左から最初の３つのマルチプレクサでのＣＲＡＭビット値が「０」であり、これがカスケード冗長がないことを示し、欠陥μバンプ６０６に接続されるＭｕｘおよび残余のμバンプに接続されるマルチプレクサのＣＲＡＭビット値６１２が「１」であり、これが、装置が余分のμバンプ（およびその対応のドライバなど）を用いてそのすぐ左のμバンプの機能性を置き換える、冗長がイネーブルされていることを示すことがわかる。μバンプの機能性の置き換えは、欠陥μバンプ６０６の機能性が欠陥μバンプ６０６の右のμバンプによって置き換えられるまで継続する。
【００６３】
図７Ａ−図７Ｂは、いくつかの実施形態に従う、μバンプ出力についての例示的な修復実現例を図示する。より具体的には、図７Ａは一連のμバンプを図示し、その各々は、対応の出力バッファに接続され、出力バッファは、冗長をイネーブルするためのコンフィギュレーションランダムアクセスメモリ（ＣＲＡＭ）ビット値７０２からの入力を受けるそれぞれのＭｕｘによって駆動される。この例示的な実施形態では、ＣＲＡＭビット値「１」は冗長をイネーブルすることを示し、すべてのμバンプは意図するように無傷でありかつ完全に機能的である。冗長制御を有する自己アニール回路ブロックは、図７Ａに図示するように、余分のμバンプおよび余分のドライバ（出力バッファ）７０４を含む。
【００６４】
図７Ｂは、欠陥μバンプ７１２ならびに冗長μバンプおよび余分のドライバ（たとえば図示するような出力バッファ）７０６を含む同様の自己アニール冗長回路ブロックを図示する。本明細書中に開示する方法または装置を用いることにより、左から最初の３つのマルチプレクサにおけるＣＲＡＭビット値７１０は「０」であり、これはカスケード冗長がないことを示し、欠陥μバンプ７１２に接続されるＭｕｘについてのＣＲＡＭビット値７１０は「Ｘ」であり、残余のμバンプに接続されるマルチプレクサについてのＣＲＡＭビット値７１０は「１」であり、これは、装置が余分のμバンプ（およびその対応のドライバなど）７０６を用いてそのすぐ左のμバンプの機能性を置き換えている、カスケード冗長がイネーブルされていることを示すことがわかる。μバンプの機能性の置き換えは、欠陥μバンプ７１２の機能性が欠陥μバンプ７１２の右のμバンプの機能性で置き換えられるまで継続する。
【００６５】
図８Ａ−図８Ｂは、いくつかの実施形態における双方向実現例のための例示的な修復を図示する。より具体的には、図８Ａは一連のμバンプを図示し、その各々は対応のＭｕｘに接続され、その出力がその対応の出力バッファを駆動する。上述のＭｕｘは冗長をイネーブルするための入力としてＣＲＡＭ８０４ビット値を受ける。ＣＲＡＭ８０４のビット値は、双方向回路で冗長および修復を制御するための第３のＭｕｘに接続される第２のＭｕｘにも与えられる。この例示的な双方向実現例では、ＣＲＡＭ８０４のビット値は、冗長をイネーブルする「１」であり、カスケード冗長なしを示す「０」である。図８Ａは、冗長および修復目的のための余分のμバンプおよびその関連のドライバ（たとえば、１対のマルチプレクサに接続される三状態バッファ）をさらに含む。この例示的な実施形態では、すべてのμバンプは意図するように無傷でありかつ完全に機能的である。冗長制御を有する自己アニール回路ブロックは、余分のμバンプおよび余分のドライバ（出力バッファ）８０２を含む。
【００６６】
図８Ｂは、欠陥μバンプ８０８ならびに冗長μバンプおよび余分のドライバ（たとえば、図示するような１対のマルチプレクサに接続される三状態バッファ）８０６を含む同様の自己アニール冗長回路ブロックを図示する。本明細書中に開示する方法または装置を用いることにより、左から最初の４つのμバンプにおけるＣＲＡＭビット値８１０は「０」であり、これはカスケード冗長なしを示し、欠陥μバンプ８０８および残余のμバンプについてのＣＲＡＭビット値８１０は「１」であり、これは、装置が余分のμバンプ（およびその対応のドライバなど）８０６を用いてそのすぐ左のμバンプの機能性を置き換えている、カスケード冗長がイネーブルされることを示すことがわかる。μバンプの機能性の置き換えは、欠陥μバンプ８０８の機能性が欠陥μバンプ８０８のすぐ右のμバンプの機能性と置き換えられるまで継続する。図８Ａ−図８Ｂに示す回路構成の付加的な複雑さは回路構成の双方向性から生じているため、欠陥μバンプ８０８のおよび欠陥μバンプ８０８の右の他のμバンプの入力側、出力側、および出力イネーブル素子を再経路設定するまたは置き換える必要があることに留意すべきである。
【００６７】
図９は、いくつかの実施形態では揮発性メモリと不揮発性メモリとの任意の組合せであり得るμバンプおよび何らかの制御メモリのフィールドを図示する。図９では、３３個のμバンプの各行毎に冗長コンフィギュレーションランダムアクセスメモリビット（冗長ＣＲＡＭ）を用いることを示す。示さないが、図示する実施形態は、（以下に論じるような図１０の実施形態に示すもののような）各冗長ＣＲＡＭの隣に冗長ｅヒューズ（電子ヒューズ）も含んでもよい。黒い点は冗長μバンプを表わし、白丸が相互接続μバンプを表わす。図９では、（冗長μバンプを含む）３３個のμバンプの行が４８存在する。不揮発性メモリを用いる１つの方策では、これらの３３個のμバンプの４８行は、冗長目的のために、３２×４８個の制御ビットを要件とする。本願の図９および他の図は、通常、行あたり１つの冗長μバンプを示すが、冗長μバンプの数または相互接続μバンプと冗長μバンプとの間の比率は、たとえば、共通の種類のμバンプバッファの歩留まり分析または群分けに少なくとも部分的に基づいて決まることが注記される。
【００６８】
図１０は、いくつかの実施形態において、開示する方法または装置を用いることによる冗長制御の例示的な実現例を図示する。より具体的には、図１０は、揮発性ビットにロードされるどのくらいより少ない不揮発性ビットが冗長を制御し得るかを図示する。４８の同一行を含むこの例示的な実現例では、各行は、６つの相互接続μバンプおよび１つの冗長μバンプを含む７つのμバンプの群を６つ含む。図１０は、７つのμバンプ（６つの相互接続μバンプおよび１つの冗長μバンプ）の各群毎に、冗長をイネーブルするための揮発性制御ビット（いくつかの実施形態では、６ビット冗長ＣＲＡＭであり得る冗長ＣＲＡＭ）が存在することをさらに図示する。図１０は、冗長ｅヒューズ（電子ヒューズ）の形態の６つの不揮発性制御ビットをさらに図示する。これらの６つの不揮発性制御ビットは、電源を入れた際に、すべての揮発性制御ビット（冗長ＣＲＡＭ）にコピーされる。揮発性制御ビットと不揮発性ビットとが混合したこの例では、必要なのは６×４８個の不揮発性制御ビットのみである。この構成が不揮発性メモリのみで実現されれば、これは、３６×４８個の不揮発性制御ビットを要件とし、これは、不揮発性メモリブロックと冗長マルチプレクサとの間の長いルーティング経路のために、性能を劇的に劣化させ、はるかに高価な不揮発性メモリの使用のために、実質的にコストも増大させるであろう。
【００６９】
（図１１Ａ−図１１Ｄを含む）図１１は、いくつかの実施形態における、開示する方法または装置のうちいくつかを用いる別の修復例を図示する。図１１は５０の同一行を示し、その各々は６つの相互接続μバンプおよび１つの冗長μバンプを含む７個のμバンプの群を６つ含む。７個のμバンプの各群の右側の塗り潰した点１１０２は冗長μバンプを表わす。白丸は正常な機能的なμバンプを表わす。いくつかの場所１１０６、１１０８、１１１０はμバンプを有しておらず、これは、修復が必要な欠陥μバンプの状況を示すことがわかる。塗り潰された点１１０４は用いられていない機能的μバンプを表わす。なぜなら、行中のすべての群を修復するのに共通の冗長ワード／信号を用いるからである。各行に１個の欠陥μバンプを有する行１１１２は、本明細書中に開示する方法または装置のうちいくつかを用いることによって成功裏に修復され得る。冗長μバンプが欠けている行１１１４は、修復が必要ない場合を表わす。冗長μバンプが欠けており、別の欠陥μバンプを有する行１１１６は、修復が不可能な場合を表わす。行１１１６は、冗長μバンプに対する相互接続μバンプの比率が６対１であるために、さらにμバンプの群中の１つよりも多くの場所における欠陥μバンプの存在のために、修復不可能であることが注記される。各群内の同じ場所に欠陥μバンプ１１０８、１１１０を有する行１１１８は、修復可能な２つの欠陥を表わす。行１１２０は、２つの欠陥が７つ入りの群内のそれぞれ異なる場所に存在するために修復不可能な行を表わす。この欠陥は、ｅヒューズの数がＣＲＡＭの数に等しい場合には修復可能であろう。
【００７０】
図１２は、いくつかの実施形態における双方向信号のための例示的な実現例を図示する。例示的な実現例は、第１のダイ１２０２および第２のダイ１２０４とインターフェイスするキャリアダイ１２０６中の３対のμバンプ１２１２を含む。μバンプ１２１２は、キャリアダイ１２０６上のトレースを通してμバンプ１２０８に接続される。キャリアダイ１２０６上のμバンプ１２１２からμバンプ１２０８へのトレースは、本明細書中で同様に論じるような直接μバンプ接続と同じように修復可能な付加的な故障メカニズムである。図に示すように、装置はコンフィギュレーションビット１２１０を用い、これは、同様に論じるようにＣＲＡＭビットであり得る。
【００７１】
図１３Ａ−図１３Ｂは、いくつかの実施形態における双方向信号を用いた冗長制御のための例示的な実現例を図示する。図１３は、信号の双方向性のために、冗長制御に対処するのに付加的な構成要素を有する、図４および図１２を参照して開示したのと同様のやり方で実現され得る。図１３Ａ中の例示的な実現例は冗長μバンプ１３０２を含む一方で、素子１３０４はビットストリームファイル中のコンフィギュレーションビットを示し、コンフィギュレーションビット１３０６は、ビットストリームファイル中にないコンフィギュレーションビットを示す。この例示的な実現例では、ファブリックダイは方向性である。なぜなら、キャリアダイがインターフェイスしているファブリックダイに依存して、キャリアダイは入力または出力であり得るからである。図１３Ａのデバイスの一部分解図である図１３Ｂでは、Ｍｕｘは、左側のコンフィギュレーションビットからの第１の入力１３１０と、冗長制御およびＲＮ（冗長テストおよびプログラミングを制御するためのさまざまなグローバル選択信号）の機能を表わす第２の入力１３０８とを受ける。さらに、図１３Ａは、双方向回路構成と入力との間の冗長制御を図示する。図示する実施形態では、図中のｆ（Ｒ）という記載は、関数ｆ（Ｒ）＝（ｆ（Ｒ−１）＋Ｒ）・Ｒ３を表わす。他の実施形態では、ｆ（Ｒ）という記載は他の関数を表わすことがある。
【００７２】
図１４Ａは、いくつかの実施形態における、プログラマブル双方向レジスタ入力回路による冗長制御のための例示的な実現例を図示する。図１４Ａ中の例示的な実現例は、図１３Ａと同様であるが、冗長μバンプ１４０２を用いた冗長制御のためのプログラマブル双方向レジスタ入力回路によるものである。さらに、図１４Ａは、専用のラッチがコンフィギュレーションメモリシステムにマッピングされる例示的な実現例を図示する。図１４Ａからは、冗長制御のためにラッチがＰＯＲでプログラミングされ、μバンプを検知し駆動するように構成されることがわかる。図１４Ａに図示する回路構成の構成は、同期入力ベクトルも許容する。さらに、入力多重化冗長アーキテクチャは、より複雑な小さなトランジスタ回路およびより少ない大きなトランジスタ回路の使用により、より効率的な性能を呈する。さらに、ダイの置き方に依存して、キャリアダイは入力または出力であり得るので、図１４Ａに図示する例示的な実現例のファブリックダイは双方向である。さらに、図１４Ａは、双方向回路構成と出力との間の冗長制御を図示する。図１４Ｂは、読みやすさおよび明瞭性を向上させるために、図１４Ａの例示的な実現例の一部の拡大図を図示する。図示する実施形態では、図中のｆ（Ｒ）という記載は、関数ｆ（Ｒ）＝（ｆ（Ｒ−１）＋Ｒ）・Ｒ３を表わす。他の実施形態では、ｆ（Ｒ）という記載は他の関数を表わすことがある。
【００７３】
図１５Ａは、いくつかの実施形態におけるプログラマブル双方向レジスタ入力回路を有する例示的な実現例を図示する。図１５Ａの例示的な実現例は図１３Ａと同様であるが、冗長μバンプ１５０２を用いた冗長制御のためのプログラマブル双方向レジスタ入力回路を有する。さらに、図１５Ａは、専用ラッチがコンフィギュレーションメモリシステムにマッピングされる例示的な実現例を図示する。図１５Ａから、冗長制御のためにラッチがＰＯＲでプログラミングされ、μバンプを検知し駆動するように構成されることがわかる。図１５Ａに図示する回路構成の構成は、同期入力ベクトルも許容する。図１５Ｂは、読みやすさおよび明瞭性を向上させるために、図１５Ａに図示する例示的な実現例の部分の拡大図を図示する。図１５Ｂは、ビットストリームファイル中にあるコンフィギュレーションビット１５０４と、ビットストリームファイル中にないコンフィギュレーションビット１５０６とをさらに図示する。また、μバンプのうち１つから延在する冗長マルチプレクサ１５０８を図に示す。図１３Ａおよび図１５Ａの実施形態は、図１３Ａのデバイス中の冗長ｍｕｘがμバンプバッファの入力側にある一方で、図１５Ａのデバイスがμバンプバッファの出力側上にマルチプレクサを有する点で異なっていることに留意すべきである。
【００７４】
図１６は、いくつかの実施形態における混合された双方向信号を用いた冗長制御のための別の例示的な実現例を図示する。図１６に図示する例示的な実現例は冗長μバンプ１６０２を含む。ダイの置き方に依存して、キャリアダイは入力または出力であり得るので、図１６に図示する例示的な実現例と関連付けられるファブリックダイは双方向である。さらに、キャリアダイは、キャリア入力が下流である、入力と出力との混合を備える。図１６に図示する例示的な実現例は、入力／出力インターフェイスでの最小限の遅延ばらつきを呈する。入力線および出力線の混合が存在するいくつかの実施形態では、入力線および出力線の混合は、回路構成の複雑さおよび遅延のばらつきを増大させ得る。さらに、図１６に図示する例示的な実現例は、双方向信号および入力と出力との混合の場合の成功裡の冗長制御を示す。図示する実施形態では、コンフィギュレーションビット１６０４はビットストリームファイル中にあり、コンフィギュレーションビット１６０６はビットストリームファイル中にない。
【００７５】
図１７は、いくつかの実施形態における、方向性信号を用いた冗長制御の例示的な実現例を図示する。図１７に図示する例示的な実現例では、方向性経路にテストロジックを加える。図１７に図示する例示的な実現例は、上側自己アニール回路ブロック（μバンプ上方の回路構成要素）における遅延に対する大きな影響と、下側自己アニール回路ブロック（μバンプ下方の回路構成要素）における遅延に対するほとんどない影響とを呈する。いくつかの実施形態では、例示的な実現例は非同期であってもよい。図１７に図示する例示的な実現例は、Ｔ１選択信号を有する三状態バッファなどのテストランダムアクセスメモリ（ＴＲＡＭ）も用いて、出力／入力バッファをサンプリングまたは駆動してもよい。いくつかの実施形態では、ＴＲＡＭは、ＦＰＧＡ構成のためではなくテストの目的のために、関心のあるノードに書込まれるまたはそれから読出されるのに用いられるＣＲＡＭアドレスマップ中に、ランダムアクセスメモリセルまたは場所を備える。
【００７６】
図１７に図示する例示的な実現例からは、μバンプを駆動するバッファの出力で多重化が実現されることもわかる。これは、遅延を低く保つためにはバッファが大きいものであることを要件とし得る。いくつかの実施形態では、コンフィギュレーションビット１７００は、三状態バッファによって示される複数のプログラミングソースを有してもよい。なぜなら、これらのコンフィギュレーションビットはラッチを構成するからである。これらの実施形態では、三状態バッファは、ワード線ビット線が書込むのと同じ態様でこれらのラッチに書込む。いくつかの実施形態では、コンフィギュレーションビット１７００は、電源を入れた際に不揮発性データを用いて書込まれるようにアドレス指定可能である。
【００７７】
図１８は、いくつかの実施形態における複数ダイ相互接続冗長制御を自己アニールするための方法の高レベル流れ図を図示する。いくつかの実施形態では、複数ダイ相互接続冗長制御を自己アニールするための方法は、２２０２で、１つ以上のレジスタをリセットすることによって冗長制御を開始し、１つ以上のバッファをディスエーブルする行為を備える。方法はさらに、いくつかの実施形態では、２２０４で、第１の自己アニール回路ブロックのための第１の冗長制御ブロックと第２の自己アニール回路ブロックのための第２の冗長制御ブロックとの間のマスタ−スレーブ関係を決めるまたは同定する行為を備えてもよい。方法は、いくつかの実施形態では、２２０６で、スレーブであると決められた自己アニール回路ブロック中のレジスタに１つ以上の冗長値を書込む、記憶する、またはラッチする行為をさらに備えてもよい。１つ以上の実施形態では、２２０６でレジスタに１つ以上の冗長値を書込む、記憶する、またはラッチする行為は、２２０６Ａで、マスタの一部として決められた対応の冗長コントローラを用いてグローバル制御信号を駆動することによってマスタ中のプルダウントランジスタをイネーブルする行為と、スレーブの一部であると決められた対応の冗長コントローラを用いて別のグローバル制御信号を駆動することによってスレーブ中の弱いプルアップトランジスタをイネーブルする行為と、２２０６Ｂで、スレーブ中の揮発性メモリに冗長値を書込む、記憶する、またはラッチする行為とを備えてもよい。
【００７８】
いくつかの実施形態では、方法はさらに、２２０８で、マスタであると決められた自己アニール回路ブロック中のレジスタに１つ以上の冗長値を書込む行為を備えてもよい。１つ以上の実施形態では、２２０８でレジスタに１つ以上の冗長値を書込む、記憶する、またはラッチする行為は、２２０８Ａで、スレーブの一部であると決められた対応の冗長コントローラを用いてグローバル制御信号を駆動することによってスレーブ中のプルダウントランジスタをイネーブルする行為と、マスタの一部として決められた対応の冗長コントローラを用いて別のグローバル制御信号を駆動することによってマスタ中の弱いプルアップトランジスタをイネーブルする行為と、２２０８Ｂで、マスタ中の揮発性メモリに冗長値を書込む、記憶する、またはラッチする行為とをさらに備えてもよい。２２１２で、方法はさらに、冗長レジスタ中の値、冗長レジスタ中の以前の値、またはその両方を用いることによってμバンプを通るデータ経路を再経路設定すべきか否かを判断する行為を備えてもよい。
【００７９】
図１９は、いくつかの実施形態において、図１８に図示する複数ダイ相互接続冗長制御を自己アニールするためのプロセスのための高レベルフロー図のより詳細を図示する。複数ダイ相互接続冗長制御の自己アニールを実現するための方法は、いくつかの実施形態では、２３０２で、複数ダイデバイスの第１のダイ４０２および第２のダイ４０４をブリッジするキャリアダイ中のすべてのレジスタをリセットする行為と、２３０４で、キャリアダイの出力バッファをディスエーブルする行為とを備える。方法はさらに、いくつかの実施形態では、２３０６で、キャリアダイの第１の自己アニール回路ブロックのための第１の冗長制御ブロックと第２の自己アニール回路ブロックのための第２の冗長制御との間のマスタ−スレーブ関係を決める行為を備えてもよい。
【００８０】
方法は、いくつかの実施形態では、２３０８で、マスタ冗長制御ブロック（たとえば、マスタ−スレーブ関係においてマスタであると決められた冗長制御ブロック）を用いてスレーブ自己アニール回路ブロックへの別のグローバル制御信号を駆動することによって１つ以上のプルダウントランジスタをイネーブルする行為をさらに備える。いくつかの実施形態では、方法はさらに、２３１０で、スレーブ冗長制御ブロックを用いてスレーブ自己アニール回路ブロック（たとえば、スレーブ冗長制御ブロックと関連付けられる自己アニール回路ブロック）への別のグローバル制御信号を駆動することによって１つ以上の弱いプルアップトランジスタをイネーブルする行為を備える。いくつかの実施形態では、レジスタ中の冗長値「１」はカスケード冗長がイネーブルされることを示す一方で、レジスタ中の冗長値「０」はカスケード冗長が存在しないことを示す。
【００８１】
いくつかの実施形態では、方法は、２３１２で、スレーブ冗長制御ブロックを用いてレジスタに１つ以上の冗長値を書込む、記憶する、またはラッチすることによってクロック信号をパルス化する行為をさらに備えてもよい。２３１３で、システムは、マスタプルダウンをディスエーブルし、スレーブプルアップをディスエーブルする。いくつかの実施形態では、方法はさらに、２３１４で、マスタ冗長制御ブロックを用いて１つ以上の弱いプルアップトランジスタへの別のグローバル制御信号を駆動することによって１つ以上の弱いプルアップトランジスタをイネーブルする行為と、スレーブ冗長制御ブロックを用いて１つ以上のプルダウントランジスタへのグローバル制御信号を駆動することによってスレーブ上の１つ以上のプルダウントランジスタをイネーブルする行為とを備えてもよい。これらの実施形態では、μバンプが意図するように機能すれば、入力「０」がレジスタに対して駆動されて、カスケード冗長がディスエーブルされることを示す。レジスタと関連付けられるμバンプに欠陥がある場合は、入力「１」がレジスタに対して駆動されて、カスケード冗長がイネーブルされることを示す。
【００８２】
いくつかの実施形態では、２３１６で、マスタ冗長制御ブロックはクロック信号（ＭＧ）をパルス化して、それぞれのレジスタと関連付けられるμバンプの条件に少なくとも部分的に基づいて、それぞれのレジスタに１つ以上の冗長値を書込む、記憶する、またはラッチする。２３１８で、すべてのテストが完了し、方法は、いくつかの実施形態では、２３０４でディスエーブルされた出力バッファをイネーブルし、キャリアダイ中のプルダウンおよびプルアップトランジスタをディスエーブルする行為をさらに備えてもよい。いくつかの実施形態では、方法は次に、２３２０で、μバンプの機能性を他のμバンプの機能性で（すなわち、μバンプの再経路設定を通じて）置き換えるべきか否かを判断してもよい。いくつかの実施形態では、方法は、冗長レジスタ中の値、冗長レジスタ中の以前の値、またはその両方を用いて判断を行なう。また、いくつかの実施形態では、方法は、μバンプを駆動する冗長レジスタ中の値および近隣の冗長レジスタに動作するように接続されるＯＲゲート中の別の値を用いて判断を行なって、冗長をイネーブルするか否かを判断して、下流のμバンプまたは冗長μバンプなどの別のμバンプの機能性でμバンプの機能性を置き換える。
【００８３】
図２０は、いくつかの実施形態に従う、複数ダイ相互接続冗長制御の自己アニールを実現するための方法のための高レベル流れ図を図示する。複数ダイ相互接続冗長制御の自己アニールを実現するための方法は、２４０２で冗長制御を開始する行為を備える。いくつかの実施形態では、２４０２で冗長制御を開始する行為は、複数ダイデバイスにおいて第１のダイ４０２と第２のダイ４０４とを相互接続するキャリアダイ中のすべてのレジスタをリセットする行為と、複数ダイデバイスの入力側のキャリアダイ中の出力バッファをディスエーブルする行為とを備える。
【００８４】
いくつかの実施形態では、方法はさらに、２４０４で、キャリアダイ中の第１の自己アニール回路ブロックのための第１の冗長制御ブロックと、キャリアダイ中の第２の自己アニール回路ブロックのための第２の冗長制御ブロックとの間のマスタ−スレーブ関係を決めるまたは同定する行為を備えてもよい。いくつかの実施形態では、方法はさらに、２４１２で、キャリアダイを介して第１のダイ４０２と第２のダイ４０４との間のデータの流れの方向性を決めることを備えてもよい。これらの実施形態では、方法は、第１の冗長制御ブロックおよび第２の冗長制御ブロックの各々が入力、出力、または入力と出力との組合せとして作用するか否かを決める。
【００８５】
いくつかの実施形態では、方法はさらに、２４０６で、１つ以上の第１の冗長値を決め、スレーブ冗長制御ブロック（たとえば、マスタ−スレーブ関係においてスレーブであると決められた冗長制御ブロック）に接続される第１の揮発性レジスタに１つ以上の第１の冗長値を記憶する行為を備えてもよい。方法は、いくつかの実施形態では、２４０８で、１つ以上の第２の冗長値を決めて、マスタ冗長制御ブロック（たとえば、マスタ−スレーブ関係においてマスタであると決められた冗長制御ブロック）に接続される第２の揮発性レジスタに１つ以上の第２の冗長値を記憶する行為も備えてもよい。
【００８６】
いくつかの実施形態では、方法は、２４１０で、キャリアダイ中のμバンプの条件に基づいて冗長をイネーブルする行為を備えてもよい。いくつかの実施形態では、方法は、特定のスライス中のμバンプに欠陥があると判断された場合にキャリアダイ中のこの特定のスライスの修復プロセスのために冗長をイネーブルすると判断してもよい。これらの実施形態では、方法はさらに、下流の別のμバンプの機能性で欠陥μバンプの機能性を置き換える行為と、下流の冗長情報を送ってカスケード冗長をイネーブルする行為とを備えてもよい。「下流」という用語はここでは、同じ冗長制御ブロックに対して、第１の構成要素（たとえばμバンプまたはレジスタ）が第２の構成要素よりもその対応の冗長制御ブロックからより離れていることを示すように用いられることを注記する。
【００８７】
図２１は、いくつかの実施形態に従う、図２０中の冗長制御を開始するプロセスのより詳細を図示する。プロセスは、２５０２で、第１の自己アニール回路ブロック中の第１のレジスタおよび第２の自己アニール回路ブロック中の第２のレジスタをリセットする行為と、２５０３で、両方のデバイスが良好な電源を有するという相互の合意を判断する行為と、２５０４で、複数ダイデバイスの出力バッファをディスエーブルする行為とを備える。いくつかの実施形態では、プロセスは、２５０６でマスタおよびスレーブの機能モードを決める行為と、２５０８でマスタ冗長制御ブロックを用いて第１の開始信号を送信する行為とをさらに備えてもよい。これらの実施形態では、マスタ冗長制御ブロックは、すべてのダイへの電源が良好であると判断された場合にのみ開始信号を送信する。２５１２で、システムは、スレーブコントローラをセットアップして開始信号を受信する。２５１４で、プロセスはさらに、マスタ冗長制御ブロックからの電源および第１の開始信号に少なくとも部分的に基づいて、冗長制御を開始するか否かを判断する行為を備えてもよい。
【００８８】
図２２Ａ−図２２Ｂは、いくつかの実施形態における、図２０の、１つ以上の第１の冗長値を決めて記憶する行為２４０６と、１つ以上の第２の冗長値を決めて記憶する行為とのより詳細を図示する。１つ以上の第１の冗長値を決めてこれを第１のレジスタに記憶する行為２４０６は、いくつかの実施形態では、２６０２Ａで、マスタ冗長制御ブロックを用いて１つ以上のプルダウントランジスタをイネーブルする行為と、２６０４Ａでスレーブ冗長制御ブロックを用いて１つ以上の弱いプルアップトランジスタをイネーブルする行為とを備える。いくつかの実施形態では、行為２４０６はさらに、２６０６Ａで、第１のレジスタの各々毎に対応するμバンプの条件に少なくとも部分的に基づいて、スレーブ冗長制御ブロックに接続されかつこれによって制御される第１のレジスタに１つ以上の第１の冗長値を書込む、記憶する、またはラッチする行為を備えてもよい。欠陥μバンプが存在するいくつかの実施形態では、方法は、スレーブ冗長制御ブロックによって制御される対応のレジスタへの入力が「１」であると判断し、応じてレジスタに冗長値をラッチする。μバンプが良好であると判断されるいくつかの実施形態では、方法は、スレーブ冗長制御ブロックによって制御される対応のレジスタへの入力が「０」であると判断し、応じてレジスタに冗長値をラッチする。次にシステムは、２６０８Ａで、プルアップおよびプルダウンをディスエーブルする。
【００８９】
１つ以上の実施形態では、１つ以上の第２の冗長値を決めて、第２のレジスタ２４０８にこれを記憶する行為２４０８は、いくつかの実施形態では、２６０２Ｂでスレーブ冗長制御ブロックを用いて１つ以上のプルダウントランジスタをイネーブルする行為と、２６０４Ｂでマスタ冗長制御ブロックを用いて１つ以上の弱いプルアップトランジスタをイネーブルする行為とを備える。いくつかの実施形態では、行為２４０８は、２６０６Ｂで、第２のレジスタの各々毎に対応するμバンプの条件に少なくとも部分的に基づいて、マスタ冗長制御ブロックに接続されかつこれによって制御される第２のレジスタに１つ以上の第２の冗長値を書込む、記憶する、またはラッチする行為をさらに備えてもよい。欠陥μバンプが存在するいくつかの実施形態では、方法は、マスタ冗長制御ブロックによって制御される対応のレジスタへの入力が「１」であると判断し、応じてレジスタに冗長値をラッチする。μバンプが良好であると判断されるいくつかの実施形態では、方法は、マスタ冗長制御ブロックによって制御される対応のレジスタへの入力が「０」であると判断し、応じてレジスタに冗長値をラッチする。次にシステムは、２６０８Ｂで、プルアップおよびプルダウンをディスエーブルする。
【００９０】
特定の実施形態を示しかつ記載したが、それらは請求される発明を限定することを意図するものではないことが理解され、当業者には、さまざまな変更および修正がなされてもよいことが明らかである。したがって、明細書および図面は制限的な意味よりもむしろ図示とみなされるべきである。
【図１３Ｂ】
2014527731.tif 000004
【図１４Ｂ】
2014527731.tif 000005
【図１７】
2014527731.tif 000006
【図１】
2014527731.tif 000007
【図２】
2014527731.tif 000008
【図３】
2014527731.tif 000009
【図４】
2014527731.tif 000010
【図５Ａ】
2014527731.tif 000011
【図５Ｂ】
2014527731.tif 000012
【図６Ａ】
2014527731.tif 000013
【図６Ｂ】
2014527731.tif 000014
【図７Ａ】
2014527731.tif 000015
【図７Ｂ】
2014527731.tif 000016
【図８Ａ】
2014527731.tif 000017
【図８Ｂ】
2014527731.tif 000018
【図９】
2014527731.tif 000019
【図１０】
2014527731.tif 000020
【図１１Ａ】
2014527731.tif 000021
【図１１Ｂ】
2014527731.tif 000022
【図１１Ｃ】
2014527731.tif 000023
【図１１Ｄ】
2014527731.tif 000024
【図１２】
2014527731.tif 000025
【図１３Ａ】
2014527731.tif 000026
【図１４Ａ】
2014527731.tif 000027
【図１５Ａ】
2014527731.tif 000028
【図１５Ｂ】
2014527731.tif 000029
【図１６】
2014527731.tif 000030
【図１８】
2014527731.tif 000031
【図１９】
2014527731.tif 000032
【図２０】
2014527731.tif 000033
【図２１】
2014527731.tif 000034
【図２２Ａ】
2014527731.tif 000035
【図２２Ｂ】
2014527731.tif 000036
【手続補正書】
【提出日】平成24年5月4日(2012.5.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数ダイデバイスの第１のダイと第２のダイとを相互接続するための装置であって、
前記複数ダイデバイスの前記第１のダイとインターフェイスするマスタ回路ブロックと、
前記複数ダイデバイスの前記第２のダイとインターフェイスするスレーブ回路ブロックと、
前記スレーブ回路ブロック中の第１のメモリと、
前記マスタ回路ブロック中の第２のメモリと、
前記第１のダイと前記第２のダイとの間の複数のμバンプとを備え、
前記マスタ回路ブロックおよび前記スレーブ回路ブロックは、前記μバンプのうち１つを欠陥μバンプとして同定し、同定された前記欠陥μバンプに対応する第１の値を前記第１のメモリに記憶し、同定された前記欠陥μバンプに対応する第２の値を前記第２のメモリに記憶し、前記第１および第２のメモリに記憶される前記値に少なくとも部分的に基づいて、前記欠陥μバンプの機能性を前記複数のμバンプのうち別の１つの機能性で置き換えるように構成される、装置。
【請求項２】
前記複数のμバンプのうち前記別の１つは冗長μバンプである、請求項１に記載の装置。
【請求項３】
前記欠陥μバンプと前記冗長μバンプとの間にはμバンプが存在しない、請求項２に記載の装置。
【請求項４】
前記欠陥μバンプと前記冗長μバンプとの間には少なくとも１つのμバンプが存在する、請求項２に記載の装置。
【請求項５】
前記マスタ回路ブロックおよび前記スレーブ回路ブロックは、前記第１および第２のメモリにそれぞれ記憶される前記第１および第２の値に基づいて第３の値を決めるようにさらに構成される、請求項１から４のいずれかに記載の装置。
【請求項６】
前記第１および第２のメモリは揮発性メモリを備える、請求項１から５のいずれかに記載の装置。
【請求項７】
前記第１および第２のメモリは不揮発性メモリを備える、請求項１から５のいずれかに記載の装置。
【請求項８】
前記マスタ回路ブロックは前記第１のダイに集積化され、
前記スレーブ回路ブロックは前記第２のダイに集積化される、請求項１から７のいずれかに記載の装置。
【請求項９】
前記第１のダイおよび前記第２のダイとインターフェイスするμバンプおよび冗長μバンプを含むキャリアダイをさらに備え、前記第１のダイおよび前記第２のダイは前記キャリアダイを通して間接的に接続される、請求項１から８のいずれかに記載の装置。
【請求項１０】
前記スレーブ回路ブロックはスレーブクロック周波数で動作し、前記マスタ回路ブロックはマスタクロック周波数で動作し、前記マスタクロック周波数は前記スレーブクロック周波数とは異なる、請求項１から９のいずれかに記載の装置。
【請求項１１】
前記マスタ回路ブロックおよび前記スレーブ回路ブロックは、前記第１のメモリおよび前記第２のメモリをリセットし、前記複数ダイデバイスの１つ以上の出力バッファをディスエーブルするようにさらに構成される、請求項１から１０のいずれかに記載の装置。
【請求項１２】
複数ダイデバイスの第１のダイと第２のダイとを相互接続するための方法であって、
前記複数ダイデバイスの前記第１のダイのためのマスタ回路ブロックのマスタコントローラと前記複数ダイデバイスの前記第２のダイのためのスレーブ回路ブロックのスレーブコントローラとの間のマスタ−スレーブ関係を決めることを備え、
前記第１のダイおよび前記第２のダイは、前記マスタ回路ブロック、前記スレーブ回路ブロック、および欠陥μバンプと冗長μバンプとのうち１つを通してともに結合され、さらに
前記スレーブコントローラに動作するように接続される第１のメモリに第１の値を記憶することと、
前記マスタコントローラに動作するように接続される第２のメモリに第２の値を記憶することと、
前記第１および第２のメモリに記憶される冗長値に少なくとも部分的に基づいて前記欠陥μバンプの機能性を前記冗長μバンプの機能性で置き換えることとを備える、方法。
【手続補正書】
【提出日】平成26年1月10日(2014.1.10)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数ダイデバイスの第１のダイと第２のダイとを相互接続するための装置であって、
前記複数ダイデバイスの前記第１のダイとインターフェイスするマスタ回路ブロックと、
前記複数ダイデバイスの前記第２のダイとインターフェイスするスレーブ回路ブロックと、
前記スレーブ回路ブロック中の第１のメモリと、
前記マスタ回路ブロック中の第２のメモリと、
前記第１のダイと前記第２のダイとの間の複数のμバンプとを備え、
前記マスタ回路ブロックおよび前記スレーブ回路ブロックは、前記μバンプのうち１つを欠陥μバンプとして同定し、同定された前記欠陥μバンプに対応する第１の値を前記第１のメモリに記憶し、同定された前記欠陥μバンプに対応する第２の値を前記第２のメモリに記憶し、前記第１および第２のメモリに記憶される前記値に少なくとも部分的に基づいて、前記欠陥μバンプの機能性を前記複数のμバンプのうち別の１つの機能性で置き換えるように構成される、装置。
【請求項２】
前記複数のμバンプのうち前記別の１つは冗長μバンプである、請求項１に記載の装置。
【請求項３】
前記欠陥μバンプと前記冗長μバンプとの間にはμバンプが存在しない、請求項２に記載の装置。
【請求項４】
前記欠陥μバンプと前記冗長μバンプとの間には少なくとも１つのμバンプが存在する、請求項２に記載の装置。
【請求項５】
前記マスタ回路ブロックおよび前記スレーブ回路ブロックは、前記第１および第２のメモリにそれぞれ記憶される前記第１および第２の値に基づいて第３の値を決めるようにさらに構成される、請求項１から４のいずれかに記載の装置。
【請求項６】
前記第１および第２のメモリは揮発性メモリを備える、請求項１から５のいずれかに記載の装置。
【請求項７】
前記第１および第２のメモリは不揮発性メモリを備える、請求項１から５のいずれかに記載の装置。
【請求項８】
前記マスタ回路ブロックは前記第１のダイに集積化され、
前記スレーブ回路ブロックは前記第２のダイに集積化される、請求項１から７のいずれかに記載の装置。
【請求項９】
前記第１のダイおよび前記第２のダイとインターフェイスするμバンプおよび冗長μバンプを含むキャリアダイをさらに備え、前記第１のダイおよび前記第２のダイは前記キャリアダイを通して間接的に接続される、請求項１から８のいずれかに記載の装置。
【請求項１０】
前記スレーブ回路ブロックはスレーブクロック周波数で動作し、前記マスタ回路ブロックはマスタクロック周波数で動作し、前記マスタクロック周波数は前記スレーブクロック周波数とは異なる、請求項１から９のいずれかに記載の装置。
【請求項１１】
前記マスタ回路ブロックおよび前記スレーブ回路ブロックは、前記第１のメモリおよび前記第２のメモリをリセットし、前記複数ダイデバイスの１つ以上の出力バッファをディスエーブルするようにさらに構成される、請求項１から１０のいずれかに記載の装置。
【請求項１２】
複数ダイデバイスの第１のダイと第２のダイとを相互接続するための方法であって、
前記複数ダイデバイスの前記第１のダイのためのマスタ回路ブロックのマスタコントローラと前記複数ダイデバイスの前記第２のダイのためのスレーブ回路ブロックのスレーブコントローラとの間のマスタ−スレーブ関係を決めることを備え、
前記第１のダイおよび前記第２のダイは、前記マスタ回路ブロック、前記スレーブ回路ブロック、および欠陥μバンプと冗長μバンプとのうち１つを通してともに結合され、さらに
前記スレーブコントローラに動作するように接続される第１のメモリに第１の値を記憶することと、
前記マスタコントローラに動作するように接続される第２のメモリに第２の値を記憶することと、
前記第１および第２のメモリに記憶される前記値に少なくとも部分的に基づいて前記欠陥μバンプの機能性を前記冗長μバンプの機能性で置き換えることとを備える、方法。
【国際調査報告】
2014527731.tif 000037
2014527731.tif 000038