(57)【要約】【課題】  ダイ上信号較正を提供する。【解決手段】  ダイ上信号較正のための装置、システム、方法及びコンピュータプログラム製品が開示される。集積回路デバイス上の較正回路は、集積回路デバイスのアクティブデータパスからデータを受信し、且つ較正データパターンからの前記受信データの変動を検出する。集積回路デバイス上の調整回路は、受信データの第１の変動の検出に応答して、集積回路デバイスのアクティブデータパスの遅延を低減する。集積回路デバイス上の調整回路は、受信データの第２の変動の検出に応答して、集積回路デバイスのアクティブデータパスの遅延を増大させる。【選択図】  図１
2018160233.tif 000002
【特許請求の範囲】
【請求項１】
集積回路デバイスと、その集積回路デバイスに配置されたダイ上コントローラと、を備えており、
ダイ上コントローラは、
集積回路デバイスのアクティブデータパスからデータを受信するとともに、較正データパターンからの受信データの変動を検出する較正回路と、
前記受信データの第１変動の検出に応答して、集積回路デバイスのアクティブデータパスの遅延を低減するとともに、前記受信データの第２変動の検出に応答して、集積回路デバイスのアクティブデータパスの遅延を増大させる調整回路と、を備えている装置。
【請求項２】
アクティブデータパスが、集積回路デバイスの１つ以上の入力／出力電気接点と、集積回路デバイスのメモリ媒体のデータバッファと、の間に延びており、
較正回路が、データバッファから前記データを受信する、請求項１に記載の装置。
【請求項３】
較正回路は、集積回路デバイスの複数の異なる入力／出力電気接点と、集積回路デバイスのメモリセルのアレイのデータバッファと、の間の複数のアクティブデータパスのそれぞれから前記データを受信し、
調整回路は、複数のアクティブデータパスの遅延を独立して調整し、
複数のアクティブデータパスが、前記アクティブデータパスを含む、請求項１に記載の装置。
【請求項４】
較正回路は、集積回路デバイスのデバイスコントローラからの較正コマンドに応答して前記データを受信する、請求項１に記載の装置。
【請求項５】
さらに、複数の追加の集積回路デバイスを備えており、
デバイスコントローラは、集積回路デバイスと複数の追加の集積回路デバイスに、較正コマンドを同時に送信する、請求項４に記載の装置。
【請求項６】
デバイスコントローラは、集積回路デバイスの開始動作に応答して較正コマンドを送信する、請求項４に記載の装置。
【請求項７】
前記受信データの第１変動は、予め定義されたクロックエッジにおけるバイナリ０及び異なるクロックエッジにおけるバイナリ１を検出することを含み、
第２変動は、予め定義されたクロックエッジにおけるバイナリ１を検出することを含んでいる、請求項１に記載の装置。
【請求項８】
予め定義されたクロックエッジが、前記受信データの初期立ち上がりクロックエッジを含んでおり、
異なるクロックエッジが、初期立ち上がりクロックエッジ後の前記受信データの次の立ち上がりクロックエッジを含んでいる、請求項７に記載の装置。
【請求項９】
遅延を低減することが、データパスのセットアップ時間を増大させることであり、
遅延を増大させることが、データパスのホールド時間を増大させることである、請求項１に記載の装置。
【請求項１０】
調整回路は、遅延を導入するデータパス内のリピータに遅延の識別子を提供するデジタル／アナログ変換器を含んでいる、請求項１に記載の装置。
【請求項１１】
デジタル／アナログ変換器は、調整回路がカウントダウンして遅延を低減するとともに、カウントアップして遅延を増大させるアップ／ダウンカウンタとして構成されている、請求項１０に記載の装置。
【請求項１２】
較正回路は、調整回路がアップ／ダウンカウンタをカウントダウンするような第１変動の検出に応答して、第１状態においてパルス信号及びアップ／ダウン信号を調整回路に提供し、調整回路がアップ／ダウンカウンタをカウントアップするような第２変動の検出に応答して、第２状態においてパルス信号及びアップ／ダウン信号を調整回路に提供する、請求項１１に記載の装置。
【請求項１３】
較正回路は、所定回数繰り返される較正パターンを受信し、その所定回数は、アップ／ダウンカウンタのビット数に基づいて選択される、請求項１１に記載の装置。
【請求項１４】
較正回路によって受信されたデータが、較正データパターン及びクロック信号を含んでいる、請求項１に記載の装置。
【請求項１５】
較正コマンド及び較正データを送信するように構成されたデバイスコントローラと、
デバイスコントローラと通信するメモリ要素のアレイと、を備えており、
メモリ要素のそれぞれは、
異なる入力／出力パッドとメモリバッファとの間に、異なるアクティブデータパスを含んでおり、
メモリバッファをタップして、異なるアクティブデータパスから較正データの異なる変動を検出し、
検出された異なる変動に基づいて、異なるアクティブデータパスに異なる遅延調整を行うように構成されている、システム。
【請求項１６】
異なるアクティブデータパスが、検出された較正データの異なる変動を追跡するアップ／ダウンカウンタからの信号に基づいて、異なるアクティブデータパスに異なる遅延調整を提供するように構成されたリピータを備えており、
デバイスコントローラが、特定回数較正データの送信を繰り返し、その特定回数は、アップ／ダウンカウンタのビット数に基づいて選択される、請求項１５に記載のシステム。
【請求項１７】
メモリ要素のそれぞれは、デバイスコントローラからのクロック信号を分周するように構成されたクロック分周回路を備えており、
分周クロック信号は、較正データの反復毎に単一のクロックサイクルを有しており、
メモリ要素は、単一のクロックサイクルに応答して異なる変動を検出する、請求項１６に記載のシステム。
【請求項１８】
較正コマンドに応答して、メモリデバイスのアクティブデータパスの終わりにおいてデータバッファから較正データをタップする手段と、
タップされた較正データと較正データパターンの間の変動を検出する手段と、
検出された変動に基づいて、アクティブデータパスの遅延を調整する手段と、を備えている装置。
【請求項１９】
タップされた較正データは、メモリデバイスの入力／出力接点とデータバッファとの間の、メモリデバイスの複数のアクティブデータパスの較正データを含んでいる、請求項１８に記載の装置。
【請求項２０】
変動を検出する手段は、複数のアクティブデータパスの異なるアクティブデータパスの異なる変動を検出する手段を含んでおり、
遅延を調整する手段は、異なる変動に基づいて、異なるアクティブデータパスの遅延に異なる調整を行う手段を含んでいる、請求項１９に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本願は、Ｒａｖｉｎｄｒａ  Ａｒｊｕｎ  Ｍａｄｐｕｒらに対する、「ＯＮ−ＤＩＥ  ＳＩＧＮＡＬ  ＣＡＬＩＢＲＡＴＩＯＮ」という名称の２０１７年３月１７日に出願されたインド仮特許出願第２０１７２１００９４３１号明細書の利益を主張するものであり、この仮特許出願は、あらゆる目的のために全体として参照により本明細書に援用される。
【０００２】
本開示は、様々な実施形態において、信号較正に関し、より詳細には、１つ以上の集積回路デバイスのセットアップ時間及び／又はホールドアップ時間の較正に関する。
【背景技術】
【０００３】
集積回路デバイスの速度が増大するにつれて、タイミング要件も増大する。例えば、クロック信号に対するデータの入力セットアップ時間及びホールド時間は、厳密な要件を有し得るか、又は誤差が生じ得る。タイミング要件を満たすことは、複数の集積回路デバイスを有するシステムで、特に複数の集積回路デバイスが同じバス及び／又はコントローラを共有する場合により難しくなり得る。
【発明の概要】
【課題を解決するための手段】
【０００４】
ダイ上信号較正の装置が提示される。一実施形態では、ダイ上コントローラが集積回路デバイスに配置される。ダイ上コントローラは、特定の実施形態では、集積回路デバイスのアクティブデータパスからデータを受信し、且つ較正データパターンからの受信データの変動を検出する較正回路を含む。調整回路が、一実施形態では、受信データの第１変動の検出に応答して、集積回路デバイスのアクティブデータパスの遅延を低減する。特定の実施形態では、調整回路は、受信データの第２変動の検出に応答して、集積回路デバイスのアクティブデータパスの遅延を増大させる。
【０００５】
ダイ上信号較正の他の装置が提示される。一実施形態では、装置は、較正コマンドに応答して、メモリデバイスのアクティブデータパスの終わりにおいてデータバッファから較正データをタップする手段を含む。特定の実施形態では、装置は、タップされた較正データと較正データパターンとの間の変動を検出する手段を含む。装置は、一実施形態では、検出された変動に基づいてアクティブデータパスの遅延を調整する手段を含む。
【０００６】
ダイ上信号較正のシステムが提示される。一実施形態では、デバイスコントローラは、較正コマンド及び較正データを送信するように構成される。メモリ要素のアレイは、特定の実施形態では、デバイスコントローラと通信する。アレイのメモリ要素は、一実施形態では、異なる入力／出力パッドとメモリバッファとの間の異なるアクティブデータパスを含む。特定の実施形態では、アレイのメモリ要素は、メモリバッファをタップして、異なるアクティブデータパスからの較正データの異なる変動を検出するように構成される。一実施形態では、アレイのメモリ要素は、検出された異なる変動に基づいて異なるアクティブデータパスに異なる遅延調整を行う。
【０００７】
ダイ上信号較正の方法及びコンピュータプログラム製品が提示される。特定の実施形態では、コンピュータプログラム製品は、ダイ上信号較正の動作を実行する実行可能プログラムコードを記憶する非一時的コンピュータ可読記憶媒体を含む。コンピュータプログラム製品の方法及び／又は動作のステップは、一実施形態では、開示される装置及びシステムに関して上述した機能のうちの１つ以上を含み得る。
【図面の簡単な説明】
【０００８】
添付図面に示される特定の実施形態を参照したより具体的な説明が以下に含まれる。これらの図面が本開示の特定の実施形態のみを示し、したがって、本開示の範囲の限定として見なされるべきではないことを理解したうえで、本開示は、添付図面の使用を通して更に具体的且つ詳細に記載及び説明される。
【０００９】
【図１】較正構成要素を含むシステムの一実施形態の概略ブロック図である。
【００１０】
【図２】較正構成要素を含むシステムの別の実施形態を示す概略ブロック図である。
【００１１】
【図３】較正構成要素の一実施形態を示す概略ブロック図である。
【００１２】
【図４】ダイ上信号較正のシステムの一実施形態を示す概略ブロック図である。
【００１３】
【図５】ダイ上信号較正のシステムの更なる実施形態を示す概略ブロック図である。
【００１４】
【図６Ａ】較正動作の一実施形態を示す概略ブロック図である。
【００１５】
【図６Ｂ】較正動作の更なる実施形態を示す概略ブロック図である。
【００１６】
【図６Ｃ】較正動作の特定の実施形態を示す概略ブロック図である。
【００１７】
【図７】ダイ上信号較正の方法の一実施形態を示す概略フローチャート図である。
【００１８】
【図８】ダイ上信号較正の方法の更なる実施形態を示す概略フローチャート図である。
【発明を実施するための形態】
【００１９】
本開示の態様は、装置、システム、方法又はコンピュータプログラム製品として具現化され得る。したがって、本開示の態様は、全体的にハードウェアの実施形態、全体的にソフトウェアの実施形態（ファームウェア、常駐ソフトウェア、マイクロコード等を含む）、又はソフトウェア態様とハードウェア態様とを組み合わせた実施形態の形態をとり得、これらはすべて一般に、本明細書では「回路」、「モジュール」、「装置」又は「システム」と呼ばれ得る。更に、本開示の態様は、コンピュータ可読及び／又は実行可能プログラムコードを記憶する１つ以上の非一時的コンピュータ可読記憶媒体に具現化されるコンピュータプログラム製品の形態をとり得る。
【００２０】
本明細書に記載される機能ユニットの多くは、実装独立性を特に強調するためにモジュールとして記されている。例えば、モジュールは、カスタムＶＬＳＩ回路若しくはゲートアレイ、論理チップ、トランジスタ、又は他の個別構成要素等の市販半導体を含むハードウェア回路として実施され得る。モジュールは、フィールドプログラマブルゲートアレイ、プログラマブルアレイ論理、プログラマブル論理デバイス等のプログラマブルハードウェアデバイスで実施することもできる。
【００２１】
モジュールは、少なくとも部分的に、様々なタイプのプロセッサにより実行されるソフトウェアで実施することもできる。実行可能コードの識別されたモジュールは、例えば、オブジェクト、プロシージャ、又は関数として編成され得るコンピュータ命令の１つ以上の物理的又は論理的ブロックを含み得る。それにも関わらず、識別されたモジュールの実行可能ファイルは、物理的に一緒に配置される必要はないが、論理的に一緒にされたときにモジュールを構成し、規定されたモジュールの目的を達成する異なるロケーションに記憶された異種の命令を含み得る。
【００２２】
実際に、実行可能コードのモジュールは、単一の命令又は多くの命令を含み得、更には、異なるプログラム間の幾つかの異なるコードセグメントにわたり、幾つかのメモリデバイス等にわたり分散され得る。モジュール又はモジュールの部分がソフトウェアで実施される場合、ソフトウェア部分は、１つ以上のコンピュータ可読及び／又は実行可能記憶媒体に記憶され得る。１つ以上のコンピュータ可読記憶媒体の任意の組み合わせが利用可能である。コンピュータ可読記憶媒体は、限定ではなく例として、電子、磁気、光学、電磁、赤外線、又は半導体のシステム、装置、デバイス、又は上記の任意の適する組み合わせを含み得るが、伝搬信号を含まない。本明細書では、コンピュータ可読及び／又は実行可能記憶媒体は、命令実行システム、装置、プロセッサ、若しくはデバイスにより、又はこれと組み合わせて使用されるプログラムを含むか又は記憶し得る任意の有形及び／又は非一時的媒体であり得る。
【００２３】
本開示の態様の動作を実行するコンピュータプログラムコードは、Ｐｙｔｈｏｎ、Ｊａｖａ（登録商標）、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋、Ｃ＃、Ｏｂｊｅｃｔｉｖｅ  Ｃ等のオブジェクト指向プログラミング言語、「Ｃ」プログラミング言語等の従来の手続き型プログラミング言語、スクリプトプログラミング言語、及び／又は他の同様のプログラミング言語を含め、１つ以上のプログラミング言語の任意の組み合わせで書くことができる。プログラムコードは、部分的又は全体的に、ユーザのコンピュータのうちの１つ以上で、及び／又はデータネットワーク等を介してリモートコンピュータ又はサーバで実行され得る。
【００２４】
構成要素は、本明細書で使用される場合、有形で物理的な非一時的デバイスを含む。例えば、構成要素は、カスタムＶＬＳＩ回路、ゲートアレイ、若しくは他の集積回路を含むハードウェア論理回路、論理チップ、トランジスタ、若しくは他の個別デバイス等の市販の半導体、及び／又は他の機械的若しくは電気的デバイスとして実施され得る。構成要素は、フィールドプログラマブルゲートアレイ、プログラマブルアレイ論理、プログラマブル論理デバイス等のプログラマブルハードウェアデバイスで実施することもできる。構成要素は、プリント回路基板（ＰＣＢ）等の電気線を通して１つ以上の他の構成要素と電気通信する１つ以上のシリコン集積回路デバイス（例えば、チップ、ダイ、ダイプレーン、パッケージ）又は他の個別電気デバイスを含み得る。本明細書に記載されるモジュールのそれぞれは、特定の実施形態では、代替的に、構成要素により又は構成要素として具現化又は実施され得る。
【００２５】
回路は、本明細書で使用される場合、電流の１つ以上の経路を提供する１つ以上の電気的構成要素及び／又は電子的構成要素の組を含む。特定の実施形態では、回路は、閉ループであるように、電流のリターン経路を含み得る。しかし、別の実施形態では、電流のリターン経路を含まない構成要素の組が回路（例えば、開ループ）と呼ばれ得る。例えば、集積回路は、集積回路が接地される（電流のリターン経路として）か否かに関係なく回路と呼ばれ得る。様々な実施形態では、回路は、集積回路の一部、集積回路、集積回路の組、非集積回路の組、及び／又は集積回路デバイス有り又は無しの電気構成要素等を含み得る。一実施形態では、回路は、カスタムＶＬＳＩ回路、ゲートアレイ、論理回路、若しくは他の集積回路、論理チップ、トランジスタ、若しくは他の個別デバイス等の市販の半導体、及び／又は他の機械的若しくは電気デバイスを含み得る。回路は、フィールドプログラマブルゲートアレイ、プログラマブルアレイ論理、プログラマブル論理デバイス等（例えば、ファームウェア、ネットリスト等として）のプログラマブルハードウェアデバイス内の合成回路として実施することもできる。回路は、プリント回路基板（ＰＣＢ）等の電気線を通して１つ以上の他の構成要素と電気通信する１つ以上のシリコン集積回路デバイス（例えば、チップ、ダイ、ダイプレーン、パッケージ）又は他の個別電気デバイスを含み得る。本明細書に記載されるモジュールのそれぞれは、特定の実施形態では、回路により又は回路として具現化され得る。
【００２６】
本明細書全体を通した「一実施形態」、「実施形態」、又は同様の言葉の言及は、実施形態に関連して説明される特定の特徴、構造、又は特性が本開示の少なくとも１つの実施形態に含まれることを意味する。したがって、本明細書全体を通した「一実施形態では」、「実施形態では」という語句及び同様の言葉の出現はすべて、必ずしもそうである必要はないが、同じ実施形態を指し得るが、明示的に別段のことが指定される場合を除き、「１つ以上であるが、すべてではない実施形態」を意味する。「包含する」、「含む」、「有する」という用語及びそれらの変形は、明示的に別段のことが指定される場合を除き、「〜を含むが、それに限定されない」ことを意味する。項目の列挙リストは、明示的に別段のことが指定される場合を除き、任意又はすべての項目が相互に排他的であること及び／又は相互に包含的であることを暗示しない。「ａ、「ａｎ」、及び「ｔｈｅ」という用語は、明示的に別段のことが指定される場合を除き、「１つ以上」を指す。
【００２７】
本開示の態様について、本開示の実施形態による方法、装置、システム及びコンピュータプログラム製品の概略フローチャート図及び／又は概略ブロック図を参照して以下に説明する。概略フローチャート図及び／又は概略ブロック図の各ブロック及び概略フローチャート図及び／又は概略ブロック図のブロックの組み合わせは、コンピュータプログラム命令により実施可能であることが理解される。これらのコンピュータプログラム命令は、コンピュータのプロセッサ又は他のプログラマブルデータ処理装置に提供されて、プロセッサ又は他のプログラマブルデータ処理装置を介して実行される命令が、概略フローチャート図及び／又は概略ブロック図の１つ以上のブロックにおいて指定される機能及び／又は動作を実施する手段を生成するようなマシンを生成し得る。
【００２８】
幾つかの代替の実装形態では、ブロックで記される機能が、図に記される順序以外で実行され得ることにも留意されたい。例えば、連続して示される２つのブロックは、実際には、関わる機能に応じて、略同時に実行されてもよく、又はときに逆順で実行されてもよい。示される図の１つ若しくは複数のブロック又はその部分と機能的、論理的、又は効果的に等しい他のステップ及び方法も考案され得る。様々な矢印種類及び線種をフローチャート図及び／又はブロック図で利用し得るが、それらは対応する実施形態の範囲を限定しないことが理解される。例えば、矢印は、示される実施形態の列挙されたステップ間の未指定持続時間の待機期間又は監視期間を示し得る。
【００２９】
以下の詳細な説明では、本明細書の一部をなす添付図面を参照する。上記概要は単なる例示であり、決して限定であることを意図されない。上述した例示的な態様、実施形態、及び特徴に加えて、更なる態様、実施形態、及び特徴が図面及び以下の詳細な説明を参照することにより明白になる。各図中の要素の説明は、前の図の要素を指し得る。同様の番号は、同様の要素の代替の実施形態を含め、図中の同様の要素を指し得る。
【００３０】
図１は、メモリデバイス１２０及び／又は別の集積回路デバイス１２０の１つ以上の較正構成要素１５０を含むシステム１００の一実施形態のブロック図である。較正構成要素１５０は、メモリ要素１２３の一部であり得、デバイスコントローラ１２６、デバイス駆動回路等と通信し得る。幾つかの実施形態では、較正構成要素１５０は、少なくとも部分的に、計算デバイス１１０のメモリシステム１０２で動作し、及び／又はメモリシステム１０２と通信し得る。計算デバイス１１０は、プロセッサ１１１、揮発性メモリ１１２、及び通信インターフェース１１３を含み得る。プロセッサ１１１は、１つ以上の中央演算処理装置、１つ以上の汎用プロセッサ、１つ以上の特定用途向けプロセッサ、１つ以上の仮想プロセッサ（例えば、計算デバイス１１０は、ホスト内で動作する仮想マシンであり得る）、１つ以上のプロセッサコア等を含み得る。通信インターフェース１１３は、計算デバイス１１０及び／又はデバイスコントローラ１２６をインターネットプロトコル（ＩＰ）ネットワーク、ストレージエリアネットワーク（ＳＡＮ）、無線ネットワーク、有線ネットワーク等の通信ネットワーク１１５に通信可能に結合するように構成される１つ以上のネットワークインターフェースを含み得る。
【００３１】
メモリデバイス１２０は、様々な実施形態では、計算デバイス１１０に対する１つ又は複数の異なるロケーションに配置し得る。一実施形態では、メモリデバイス１２０は、半導体チップ、ダイ、パッケージ、又は１つ若しくは複数のプリント回路基板、ストレージ筐体、及び／又は他の機械的及び／又は電気支持構造体に配置される他の集積回路デバイス等の１つ以上の揮発性及び／又は不揮発性メモリ要素１２３を含む。例えば、メモリデバイス１２０は、１つ以上の直接インラインメモリモジュール（ＤＩＭＭ）カード、１つ以上の拡張カード及び／又はドーターカード、メモリカード、ユニバーサルシリアルバス（ＵＳＢ）ドライブ、固体状態ドライブ（ＳＳＤ）又は他のハードドライブデバイスを含み得、並びに／或いは別のメモリ及び／又はストレージフォームファクタを有し得る。メモリデバイス１２０は、計算デバイス１１０のマザーボードに集積及び／又は搭載され得、計算デバイス１１０のポート及び／又はスロットに設置され得、異なる計算デバイス１１０及び／又はネットワーク１１５上の専用記憶機器に設置され得、外部バス（例えば、外部ハードドライブ）を介して計算デバイス１１０と通信し得る。
【００３２】
メモリデバイス１２０は、一実施形態では、プロセッサ１１１のメモリバス（例えば、揮発性メモリ１１２と同じメモリバス、揮発性メモリ１１２と異なるメモリバス、揮発性メモリ１１２の代わり等）に配置され得る。更なる実施形態では、メモリデバイス１２０は、周辺構成要素相互接続エクスプレス（ＰＣＩエクスプレス又はＰＣＩｅ）バス、シリアルアドバンストテクノロジーアタッチメント（ＳＡＴＡ）バス、パラレルアドバンストテクノロジーアタッチメント（ＰＡＴＡ）バス、小型コンピュータシステムインターフェース（ＳＣＳＩ）バス、ＦｉｒｅＷｉｒｅバス、ファイバチャネル接続、ユニバーサルシリアルバス（ＵＳＢ）、ＰＣＩｅアドバンストスイッチング（ＰＣＩｅ−ＡＳ）バス等の計算デバイス１１０の周辺バスに配置され得る。別の実施形態では、メモリデバイス１２０は、Ｅｔｈｅｒｎｅｔネットワーク、Ｉｎｆｉｎｉｂａｎｄネットワーク、ネットワーク１１５を介するＳＣＳＩ  ＲＤＭＡ、ストレージエリアネットワーク（ＳＡＮ）、ローカルエリアネットワーク（ＬＡＮ）、インターネット等の広域ネットワーク（ＷＡＮ）、別の有線及び／又は無線ネットワーク１１５等のデータネットワーク１１５に配置され得る。
【００３３】
計算デバイス１１０は、非一時的コンピュータ可読記憶媒体１１４を更に含み得る。コンピュータ可読記憶媒体１１４は、本明細書に開示される方法のうちの１つ以上のステップを計算デバイス１１０（例えば、プロセッサ１１１）に実行させるように構成される実行可能命令を含み得る。代替又は追加として、較正構成要素１５０は、非一時的記憶媒体１１４に記憶される１つ以上のコンピュータ可読命令を含み得る。
【００３４】
メモリシステム１０２は、図示の実施形態では、１つ以上の較正構成要素１５０を含む。較正構成要素１５０は、一実施形態では、セットアップ時間（ｔＤＳ）、ホールド時間（ｔＤＨ）、及び／又はメモリ要素１２３又は他の集積回路デバイス１２３内からの他のダイ上信号較正（例えば、デバイスコントローラ１２６からの信号較正コマンドに応答して、バス１２７を介したデバイスコントローラ１２６からの較正データの受信に応答して、バス１２７を介したデバイスコントローラ１２６への較正データの返送なしで等）を提供するように構成される。
【００３５】
特定の信号（例えば、データ信号、コマンド信号、制御信号等）は、１つ以上の他の信号（例えば、クロック信号、タイミング信号等）に依存し、及び／又は１つ以上の他の信号に鑑みて解釈され得る。メモリ要素１２３又は他の集積回路デバイス１２３、デバイスコントローラ１２６、又は両方内のプロセス及び／又は材料の変動に起因して、関連する信号間（例えば、データ信号とクロック信号との間）にタイミング不一致があり得、又は動作状況、破損、経年劣化等に起因して、不一致が時間と共に生じ得る。更に、同じ集積回路デバイス１２３の異なるデータパスは、デバイスコントローラ１２６からの異なる距離、材料及び／又は製造プロセスの変動等に起因して、異なるタイミング不一致を有し得る。信号（例えば、立ち上がりエッジ）が、関連するクロック信号よりも集積回路デバイス１２３に早く到着する場合、セットアップ時間（例えば、クロック信号エッジ前の時間量）は、後述するように適切であり得るが、後述するようにホールド時間（例えば、クロック信号エッジ後の時間量）は不十分であり得、ホールド時間誤差等を生じさせる。信号が、関連するクロック信号よりも遅く集積回路デバイス１２３に到着する場合、ホールド時間は適切であり得るが、セットアップ時間は不十分であり得、セットアップ時間誤差等を生じさせる。
【００３６】
較正は、本明細書で使用される場合、２つ以上の信号の調整及び／又は同期を含み得る。例えば、データ信号及びクロック信号のタイミングの較正（例えば、遅延の調整、遅延の増大、遅延の低減等）は、特定の実施形態では、タイミングに起因するデータ信号の伝送誤差（例えば、セットアップ時間誤差、ホールド時間誤差等）を低減又は無くし得る。一実施形態では、較正構成要素１５０は、製造時又はその近く（例えば、製造業者、ベンダー、販売業者等によるダイソート又は別のテストプロセス中）で集積回路デバイス１２３の１つ以上の信号を較正し得る。更なる実施形態では、較正構成要素１５０は、周期的に、１つ以上のトリガーに応答して（例えば、デバイスコントローラ１２６からの較正コマンド、集積回路デバイス１２３及び／又はメモリデバイス１２０の開始又は電源投入プロセス、集積回路デバイス１２３でのタイミング誤差又は他のデータ誤差の検出、バックグラウンド較正プロセス等に応答して）、集積回路デバイス１２３の１つ以上の信号を較正し得る。
【００３７】
このようにして、較正構成要素１５０は、特定の実施形態では、デバイスコントローラ１２６がダイ１２３の較正を外部で実行することができる（例えば、バス１２７上でのデバイスコントローラ１２６への較正データの返送をなくすこと、複数のダイ１２３がそれら自体を並行及び／又は同時に較正できるようにすることによる等）よりも高速にダイ１２３内から信号較正を実行し得る。例えば、特定の実施形態では、デバイス１２０は、複数の集積回路チップ１２３、ダイ１２３、及び／又はダイプレーン１２３を含み得、これらは、それぞれ１つ以上の較正構成要素１５０を含み、ダイ１２３内から信号（例えば、セットアップ時間及び／又はホールド時間等）を別個に独立して較正し得る。複数のダイ１２３及び／又はダイプレーン１２３は、一実施形態では、複数ダイ１２３構成で積層又は他の方法で結合され得（例えば、製造後）、そのプロセス中、ダイ１２３の信号較正及び／又は特徴付けは、最初に製造されたときから変更され得る。更に、幾つかの実施形態では、ダイ１２３の信号較正及び／又は特徴付けは、使用を通したダイ１２３の摩耗及び／又は破損等に起因して現場で経時変化し得る。較正構成要素１５０は、特定の実施形態では、時間に伴い（例えば、製造時又はその近くで複数のダイ１２３を結合した後、現場における実行中等）ダイ１２３の信号タイミング（例えば、セットアップ時間及び／又はホールド時間）を動的に更新、再特徴付け、及び／又は再較正し得る。
【００３８】
較正構成要素１５０は、様々な実施形態では、集積回路デバイス１２３のデータパスに遅延を導入し、及び／又は遅延を除去する（例えば、セットアップ失敗及び／又はホールド失敗を検出及び／又は補償する）ことにより、信号（例えば、セットアップ時間及び／又はホールド時間）を較正し得る。セットアップ時間は、本明細書で使用される場合、データ信号が安定してラッチ又は他の方法で受信される、クロック信号のエッジの前の時間量を含む。ホールド時間は、本明細書で使用される場合、データ信号が安定してラッチ又は他の方法で受信される、クロック信号のエッジの後の時間量を含む。
【００３９】
一実施形態では、デバイスコントローラ１２６は、較正コマンド及び／又は較正データを１つ以上のメモリ要素１２３及び／又は他の集積回路デバイスに送信し得、それに応答して、ダイ上較正構成要素１５０は１つ以上の較正動作を実行し得る。例えば、特定の実施形態では、較正構成要素１５０は、メモリ要素１２３又は他の集積回路デバイスのアクティブデータパスから較正データ（例えば、予め定義されるデータパターン）を受信し、受信データの１つ以上の変動を検出し、検出された１つ以上の変動に基づいてアクティブデータパスの遅延を増大又は低減し得る。変動は、本明細書で使用される場合、差を含み得る。例えば、データの変動は、異なるデータ値、データ誤差、タイミングスキュー（例えば、セットアップ時間誤差、ホールド時間誤差等）、元々送信されたデータからの受信データの差、予め定義される較正データパターンからの受信データの差等を含み得る。
【００４０】
集積回路デバイス１２３のアクティブデータパスは、本明細書で使用される場合、作業負荷データ（例えば、デバイスコントローラ１２６からのデータ、ユーザデータ、クライアントデータ、ストレージクライアント１１６からのデータ等）が集積回路デバイス１２３内で移動する電気ルート及び／又は通信ルート（例えば、集積回路デバイス１２３の入力／出力電気接点とメモリ媒体のデータバッファとの間、集積回路デバイス１２３の入力／出力電気接点とメモリ媒体との間等に延びる）を含み得る。アクティブデータパスは、較正される実際のパスを含み得、較正構成要素１５０が、特定の実施形態では、複製データパス、別のロケーション又は回路等に基づくものではなく、実際のスキューに基づいて実際のアクティブデータパスを正確に較正できるようにする。更なる実施形態では、較正構成要素１５０は、独立して、それぞれ異なるアクティブデータパスの実際のスキュー又は他の変動に基づいて同じ集積回路デバイス１２３上で複数の異なるアクティブデータパスを較正し得る。
【００４１】
他の実施形態では、較正データパターンをデバイスコントローラ１２６から受信する代わりに、較正構成要素１５０は、集積回路デバイス１２３内から所定及び／又は固定の較正データパターンを生成し得、較正構成要素１５０は、信号較正について、集積回路デバイス１２３の内部アクティブデータパスの少なくとも一部で送信及び／又は伝送し得る。
【００４２】
較正構成要素１５０は、一実施形態では、集積回路デバイス１２３のアクティブデータパスの終わりから、較正データパターン又はそれが変更されたもの（例えば、信号タイミング誤差に起因するもの）を受信（例えば、アクティブデータパス等の終わりにあるデータバッファからデータをタップ、コピー、監視、読み取り、及び／又は他の方法で受信）し、受信データに基づいて、セットアップ故障又はホールド故障があったか否かを判断し得る。アクティブデータパスからのデータのタップは、本明細書で使用される場合、アクティブデータパスから直接、データを受信及び／又はリルーティングすることを含み得る（例えば、複製データパス、異なるデータパス、予め定義される遅延設定等を使用せずに行う）。例えば、較正構成要素１５０は、アクティブデータパスの終わり及び／又は出力（例えば、アクティブデータパスの終わりにあるデータバッファ等）から、受信較正データパターン又は他の較正データ等のデータをタップ（例えば、監視、コピー、読み取り、リルーティング、迂回、及び／又は他の方法でアクセス）し得る。較正構成要素１５０は、一実施形態では、アクティブデータパス（例えば、アクティブデータパスのデータバッファ）とメモリ媒体（例えば、メモリセルのアレイ等）との間のデータ接続に干渉せずに、アクティブデータパスから（例えば、アクティブデータパスの終わりにあるデータバッファ等から）の較正データをタップし、及び／又は他の方法で監視する別個のデータ接続を有し得る。例えば、アクティブデータパスと較正構成要素１５０との間のデータ接続は選択的であり得、デバイスコントローラ１２６からの較正コマンドに応答して、較正動作等に応答して接続及び／又はアクティブ化され得る。データバッファは、本明細書で使用される場合、揮発性又は不揮発性データ記憶装置を含む。例えば、データバッファは、不揮発性メモリ媒体１２３等のデータラッチ、レジスタ、フリップフロップ、ＲＡＭ、ページバッファ、キャッシュ、又はスクラッチパッドエリアを含み得る。
【００４３】
較正パターンは、受信データの第１変動がセットアップ故障（例えば、予め定義される時間、ビット位置、クロックエッジ等でのバイナリ０及び別の予め定義されるライン上の付随するパルス信号及び／又はクロックパルス等の変動）を示し、第２変動がホールド故障（例えば、予め定義される時間、ビット位置、クロックエッジ等でのバイナリ１等の変動）を示し、一方、第３変動（例えば、元の較正データである、別の予め定義されるライン上でのパルス信号及び／又はクロックパルスを付随しない、予め定義される時間及び／又はビット位置でのバイナリ０等）が故障を示し得ない（例えば、正確であり及び／又は較正されたタイミングを示す）ように選択し得る。例えば、一実施形態では、較正構成要素１５０は、集積回路デバイス１２３のアクティブデータパス上においてパターン「０１００００００」等を各クロックエッジで送信し得る（例えば、ダブルデータレート（ＤＤＲ）でセットアップ時間及びホールド時間の両方を較正し得る）。
【００４４】
ホールド故障に応答して、特定の実施形態では、較正構成要素１５０は、アクティブデータパス上で信号の遅延を増大させること、クロック信号の遅延を低減すること等を行い得る。セットアップ故障に応答して、特定の実施形態では、較正構成要素１５０は、アクティブデータパス上で信号の遅延を低減すること、クロック信号の遅延を増大させること等を行い得る。遅延は、本明細書で使用される場合、データ（例えば、データ信号）が２点間を移動する時間量を含み得る。例えば、アクティブデータパスの遅延は、データ、信号等がアクティブデータパスの一端部（例えば、入力／出力電気端子等）から他端部（例えば、データバッファ等）まで移動するのにかかる時間量を含み得る。較正構成要素１５０は、様々な実施形態では、アクティブデータパスに遅延を導入するか又はアクティブデータパスから遅延を除去することにより、遅延を調整（例えば、遅延を増大、遅延を低減）し得る。例えば、較正構成要素１５０は、カウンタのカウントを増大させて遅延を増大させ、カウンタのカウントを低減して遅延を低減し、又は逆の場合も同様にすることにより、カウンタとして構成されるデジタル／アナログ変換器（ＤＡＣ）等のカウンタを使用して、集積回路デバイス１２３の内部アクティブデータパスの遅延を調整し得る。較正構成要素１５０のカウンタは、現在のカウント（例えば、遅延を表す）をリピータ、バッファ、及び／又は集積回路デバイス１２３のアクティブデータパス内の別のプログラマブル及び／又は調整可能な遅延構成要素に提供して、決定された遅延を提供し得る。
【００４５】
特定の実施形態では、較正構成要素１５０は、１つ以上の遅延構成要素をアクティブデータパスに追加することにより（例えば、第１、第２、及び／又は第Ｎの遅延を追加することにより、１つ以上のトランジスタ又は他のスイッチをアクティブ化して、１つ以上の遅延構成要素を通してアクティブデータパスをルーティングすること等により）、アクティブデータパスの遅延を増大し得る。較正構成要素１５０は、更なる実施形態では、アクティブデータパスから１つ以上の遅延構成要素を除去することにより（例えば、第１、第２、及び／又は第Ｎの遅延を除去することにより、１つ以上のトランジスタ又は他のスイッチをアクティブ化して、アクティブデータパスから１つ以上の遅延構成要素を除去すること等により）、アクティブデータパスの遅延を低減し得る。較正構成要素１５０が、個別遅延構成要素をアクティブデータパスに追加し、及び／又はアクティブデータパスから除去するか、又は単一のプログラマブル及び／又は調整可能な遅延構成要素を使用して遅延を調整するかに関係なく、遅延の増大は、データ信号がアクティブデータパスを通って移動する時間を増大前よりも長くすることができ、遅延の低減は、データ信号がアクティブデータパスを通って移動する時間を低減前よりも短くすることができる。
【００４６】
特定の実施形態では、集積回路デバイス１２３の較正構成要素１５０は、デバイス１２０の電力遮断及び／又は再開イベントにわたり遅延設定（例えば、ＤＡＣの現在遅延カウント及び／又は別のカウンタ）を記憶して、再較正なしで遅延を提供し続け得る。更なる実施形態では、集積回路デバイス１２３の較正構成要素１５０は、デバイス１２０の各電力遮断及び／又は再開イベント後（例えば、電源投入手順中等）、信号を再較正することができ、及び／又は再特徴付け（例えば、ＤＡＣの新しい遅延カウンタ及び／又は別のカウンタを決定）することができる。
【００４７】
一実施形態では、較正構成要素１５０は、クロック分周回路（例えば、複数のＩ／Ｏチャネル、ダイ、ダイプレーン等に共通し得る）、１つ以上のフリップフロップ、ラッチ、レジスタ、又は他のストレージ、アップ／ダウンカウンタ、ＤＡＣ等のカウンタ等（例えば、複数のＩ／Ｏチャネル、ダイ、ダイプレーン等の各々に対するもの）を含む。較正構成要素１５０は、特定の実施形態では、４サイクルＤＤＲプロトコルを含み、較正データパターン（例えば、上述した０１００００００という固定データパターン等）をクロック信号の両エッジで送信する較正を実行し得る。
【００４８】
一実施形態では、較正構成要素１５０は、メモリ要素１２３の論理ハードウェア、他のプログラマブル論理、メモリ要素１２３のファームウェア、メモリ要素１２３により実行されるマイクロコード等を含み得る。別の実施形態では、較正構成要素１５０は、メモリ要素１２３の論理ハードウェアにより実行される、コンピュータ可読記憶媒体に記憶される実行可能ソフトウェアコードを含み得る。更なる実施形態では、較正構成要素１５０は、実行可能ソフトウェアコード及び論理ハードウェアの両方の組み合わせを含み得る。
【００４９】
一実施形態では、較正構成要素１５０は、バス１２５、１２７、デバイスコントローラ１２６等を介してデバイス駆動回路又は他の実行可能アプリケーションから記憶要求を受信するように構成される。較正構成要素１５０は、バス１２５を介して、デバイス駆動回路及び／又はストレージクライアント１１６に、または、デバイス駆動回路及び／又はストレージクライアント１１６からデータを転送するように更に構成され得る。したがって、較正構成要素１５０は、幾つかの実施形態では、１つ以上の直接メモリアクセス（ＤＭＡ）モジュール、リモートＤＭＡモジュール、バスコントローラ、ブリッジ、バッファ等を含み、及び／又はそれと通信して、記憶要求及び関連データの転送を促進し得る。別の実施形態では、較正構成要素１５０は、ストレージクライアント１１６からのＡＰＩ呼び出しとして、ＩＯ−ＣＴＬコマンド等として記憶要求を受信し得る。較正構成要素１５０について、図３を参照して以下に更に詳細に説明する。
【００５０】
様々な実施形態によれば、デバイスコントローラ１２６は、１つ以上のメモリデバイス１２０及び／又はメモリ要素１２３を管理し得る。メモリデバイス１２０は、複数のアドレス指定可能な媒体記憶ロケーションに設定及び／又は分割される固体状態記憶装置及び／又は半導体記憶装置等の記録装置、メモリ、及び／又は記憶装置を含み得る。本明細書で使用される場合、媒体記憶ロケーションは、メモリの任意の物理的単位（例えば、メモリデバイス１２０上の任意の数量の物理的記憶媒体）を指す。メモリユニットは、物理的記憶ロケーション（例えば、論理ページ、論理ブロック）等のページ、メモリ区画、ブロック、セクタ、集合、又は組を含み得るが、これらに限定されない。
【００５１】
デバイス駆動回路及び／又はデバイスコントローラ１２６は、特定の実施形態では、論理アドレス空間１３４をストレージクライアント１１６に提示し得る。本明細書で使用される場合、論理アドレス空間１３４は、メモリリソースの論理表現を指す。論理アドレス空間１３４は、複数の（例えば、様々な）論理アドレスを含み得る。本明細書で使用される場合、論理アドレスは、限定ではなく、論理ブロックアドレス（ＬＢＡ）、シリンダ／ヘッド／セクタ（ＣＨＳ）アドレス、ファイル名、オブジェクト識別子、ｉノード、汎用一意識別子（ＵＵＩＤ）、グローバル一意識別子（ＧＵＩＤ）、ハッシュコード、署名、インデックスエントリ、範囲、程度等を含め、メモリリソース（例えば、データ）を参照する任意の識別子を指す。
【００５２】
メモリデバイス１２０のデバイス駆動回路は、論理−物理アドレスマッピング構造等のメタデータ１３５を維持して、論理アドレス空間１３４の論理アドレスをメモリデバイス１２０上の媒体記憶ロケーションにマッピングし得る。デバイス駆動回路は、記憶サービスを１つ以上のストレージクライアント１１６に提供するように構成され得る。ストレージクライアント１１６は、計算デバイス１１０で動作するローカルストレージクライアント１１６並びに／或いはネットワーク１１５及び／又はネットワークインターフェース１１３を介してアクセス可能なリモートストレージクライアント１１６を含み得る。ストレージクライアント１１６は、オペレーティングシステム、ファイルシステム、データベースアプリケーション、サーバアプリケーション、カーネルレベルプロセス、ユーザレベルプロセス、アプリケーション等を含み得るが、これらに限定されない。
【００５３】
デバイス駆動回路は、１つ以上のメモリデバイス１２０に通信可能に結合され得る。１つ以上のメモリデバイス１２０は、揮発性メモリデバイス、固体状態記憶装置、半導体記憶デバイス、ＳＡＮストレージリソース等を含むが、これらに限定されない様々なタイプのメモリデバイスを含み得る。１つ以上のメモリデバイス１２０は、１つ以上の各デバイスコントローラ１２６及びメモリ媒体１２２を含み得る。デバイス駆動回路は、従来のブロックＩ／Ｏインターフェース１３１を介して１つ以上のメモリデバイス１２０へのアクセスを提供し得る。更に、デバイス駆動回路は、ＳＣＭインターフェース１３２を通して強化機能へのアクセスを提供し得る。メタデータ１３５を使用して、ブロックＩ／Ｏインターフェース１３１、ＳＣＭインターフェース１３２、キャッシュインターフェース１３３、又は他の関連するインターフェースのいずれかを通して実行されるデータ動作を管理及び／又は追跡し得る。
【００５４】
キャッシュインターフェース１３３は、メモリデバイス１２０のデバイス駆動回路を介してアクセス可能なキャッシュ固有の特徴を明示し得る。また、幾つかの実施形態では、ストレージクライアント１１６に提示されるＳＣＭインターフェース１３２は、１つ以上のメモリデバイス１２０及び／又は１つ以上のデバイスコントローラ１２６により実施されるデータ変換へのアクセスを提供する。
【００５５】
デバイス駆動回路は、１つ以上のインターフェースを通して、論理アドレス空間１３４をストレージクライアント１１６に提示し得る。上述したように、論理アドレス空間１３４は複数の論理アドレスを含み得、各論理アドレスは、１つ以上のメモリデバイス１２０上の各媒体ロケーションに対応する。デバイス駆動回路は、論理アドレスと媒体ロケーション等との間の任意対任意マッピングを含むメタデータ１３５を維持し得る。
【００５６】
デバイス駆動回路は、バス１２５を介して１つ以上のメモリデバイス１２０にデータ、コマンド、及び／又はクエリを転送するように構成されるメモリデバイスインターフェース１３９を更に含み得、及び／又はメモリデバイスインターフェース１３９と通信し得、バス１２５は、プロセッサ１１１のメモリバス、周辺構成要素相互接続エクスプレス（ＰＣＩエクスプレス又はＰＣＩｅ）バス、シリアルアドバンストテクノロジーアタッチメント（ＡＴＡ）バス、パラレルＡＴＡバス、小型コンピュータシステムインターフェース（ＳＣＳＩ）、ＦｉｒｅＷｉｒｅ、ファイバチャネル、ユニバーサルシリアルバス（ＵＳＢ）、ＰＣＩｅアドバンストスイッチング（ＰＣＩｅ−ＡＳ）バス、ネットワーク１１５、インフィニバンド（Ｉｎｆｉｎｉｂａｎｄ）、ＳＣＳＩ  ＲＤＭＡ等を含み得るが、これらに限定されない。メモリデバイスインターフェース１３９は、入力−出力制御（ＩＯ−ＣＴＬ）コマンド、ＩＯ−ＣＴＬコマンド拡張、リモートダイレクトメモリアクセス等を使用して、１つ以上のメモリデバイス１２０と通信し得る。
【００５７】
通信インターフェース１１３は、計算デバイス１１０及び／又はデバイスコントローラ１２６をネットワーク１１５及び／又は１つ以上のリモートであるネットワークアクセス可能ストレージクライアント１１６に通信可能に結合するように構成される１つ以上のネットワークインターフェースを含み得る。ストレージクライアント１１６は、計算デバイス１１０で動作するローカルストレージクライアント１１６並びに／或いはネットワーク１１５及び／又はネットワークインターフェース１１３を介してアクセス可能なリモートストレージクライアント１１６を含み得る。デバイスコントローラ１２６は、１つ以上のメモリデバイス１２０の一部であり、及び／又は１つ以上のメモリデバイス１２０と通信する。図１は１つのメモリデバイス１２０を示しているが、本開示はこれに関して限定されず、任意の数のメモリデバイス１２０を組み込むように構成することができる。
【００５８】
メモリデバイス１２０は、揮発性及び／又は不揮発性メモリ媒体１２２の１つ以上の要素１２３を含み得、揮発性及び／又は不揮発性メモリ媒体１２２は、ＳＲＡＭ及び／又はＤＲＡＭ等の揮発性メモリ、ＲｅＲＡＭ、メモリスタメモリ、プログラマブルメタライゼーションセルメモリ（ｐｒｏｇｒａｍｍａｂｌｅ  ｍｅｔａｌｌｉｚａｔｉｏｎ  ｃｅｌｌ ｍｅｍｏｒｙ）、相変化メモリ（ＰＣＭ、ＰＣＭＥ、ＰＲＡＭ、ＰＣＲＡＭ、オボニックユニファイドメモリ（ｏｖｏｎｉｃ  ｕｎｉｆｉｅｄ  ｍｅｍｏｒｙ）、カルコゲニドＲＡＭ（ｃｈａｌｃｏｇｅｎｉｄｅ  ＲＡＭ）、又はＣ−ＲＡＭ）、ＮＡＮＤフラッシュメモリ（例えば、２Ｄ  ＮＡＮＤフラッシュメモリ、３Ｄ  ＮＡＮＤフラッシュメモリ）、ＮＯＲフラッシュメモリ、ナノランダムアクセスメモリ（ナノＲＡＭ又はＮＲＡＭ）、ナノクリスタルワイヤベースメモリ、酸化ケイ素ベースサブ１０ナノメートルプロセスメモリ、グラフェンメモリ、シリコン−酸化物−窒化物−酸化物−シリコン（ＳＯＮＯＳ）、プログラマブルメタライゼーションセル（ＰＭＣ）、導電性ブリッジＲＡＭ（ＣＢＲＡＭ）、磁気抵抗ＲＡＭ（ＭＲＡＭ）、磁気記憶媒体（例えば、ハードディスク、テープ）、及び／又は光学記憶媒体等の不揮発性メモリ、又は他のメモリ及び／又は記憶媒体を含み得るが、これらに限定されない。メモリ媒体１２２の１つ以上の要素１２３は、特定の実施形態では、ストレージクラスメモリ（ＳＣＭ）を含む。
【００５９】
ＮＡＮＤフラッシュ等のレガシー技術は、ブロック及び／又はページアドレス指定可能であり得るが、ストレージクラスメモリは、一実施形態では、バイトアドレス指定可能である。更なる実施形態では、ストレージクラスメモリは、ＮＡＮＤフラッシュよりも高速であり、及び／又はより長い寿命（例えば、耐久性）を有し得、ＤＲＡＭよりも低いコストを有し得、より少ない電力を使用し得、及び／又はより高い記憶密度を有し得、又は他の技術と比較した場合、１つ若しくは複数の他の利点若しくは改善を提供し得る。例えば、ストレージクラスメモリは、ＲｅＲＡＭ、メモリスタメモリ、プログラマブルメタライゼーションセルメモリ、相変化メモリ、ナノＲＡＭ、ナノクリスタルワイヤベースメモリ、酸化ケイ素ベースサブ１０ナノメートルプロセスメモリ、グラフェンメモリ、ＳＯＮＯＳメモリ、ＰＭＣメモリ、ＣＢＲＡＭ、ＭＲＡＭ、及び／又はそれらの変形の１つ以上の不揮発性メモリ要素１２３を含み得る。
【００６０】
メモリ媒体１２２は、本明細書では「メモリ媒体（ｍｅｍｏｒｙ  ｍｅｄｉａ）」と呼ばれるが、様々な実施形態では、メモリ媒体１２２は、より一般的に、メモリ媒体（ｍｅｍｏｒｙ  ｍｅｄｉｕｍ）、記憶媒体等と呼ばれ得る、データを記録可能な１つ以上の揮発性及び／又は不揮発性記録媒体を含み得る。更に、メモリデバイス１２０は、様々な実施形態では、記録デバイス、メモリデバイス、記憶装置等を含み得る。同様に、メモリ要素１２３は、様々な実施形態では、記録要素、メモリ要素、記憶要素等を含み得る。他の実施形態では、メモリ要素１２３は、様々なタイプの集積回路デバイス（例えば、ＡＳＩＣ、ＣＰＵ、通信デバイス、グラフィックスデバイス、システムオンチップ、プログラマブル論理デバイス等）を含み得、メモリ要素１２３は、単なる例として、較正構成要素１５０が１つ以上の信号を較正し得る一種の集積回路デバイス（例えば、集積回路ダイ、チップ、ダイプレート、パッケージ等）として使用され、他のタイプの集積回路デバイスも本開示の範囲内で意図される。
【００６１】
メモリ媒体１２２は１つ以上のメモリ要素１２３を含み得、１つ以上のメモリ要素１２３は、チップ、パッケージ、プレーン、ダイ等を含み得るが、これらに限定されない。デバイスコントローラ１２６は、メモリ媒体１２２上のデータ動作を管理するように構成され得、１つ以上のプロセッサ、プログラマブルプロセッサ（例えば、ＦＰＧＡ）、ＡＳＩＣ、マイクロコントローラ等を含み得る。幾つかの実施形態では、デバイスコントローラ１２６は、データをメモリ媒体１２２に記憶し、及び／又はメモリ媒体１２２からデータを読み取り、データをメモリデバイス１２０に、又は、データをメモリデバイス１２０から転送等するように構成される。
【００６２】
デバイスコントローラ１２６は、バス１２７によりメモリ媒体１２２に通信可能に結合され得る。バス１２７は、Ｉ／Ｏバスを含み、メモリ要素１２３に、又は、メモリ要素１２３からデータを通信し得る。バス１２７は、制御バスを更に含み、アドレス指定並びに他のコマンド及び制御情報をメモリ要素１２３に通信し得る。幾つかの実施形態では、バス１２７は、メモリ要素１２３をデバイスコントローラ１２６に並行して通信可能に結合され得る。この並行アクセスにより、メモリ要素１２３をグループとして管理し、論理メモリ要素１２９を形成することが可能であり得る。論理メモリ要素は、各論理メモリユニット（例えば、論理ページ）及び／又は論理メモリ区画（例えば、論理ブロック）に分割され得る。論理メモリユニットは、各メモリ要素１２３の物理的メモリユニットを論理的に結合することにより形成され得る。
【００６３】
デバイスコントローラ１２６は、計算デバイス１１０で実行中のデバイス駆動回路を含み得、及び／又はデバイス駆動回路と通信し得る。デバイス駆動回路は、１つ以上のインターフェース１３１、１３２、及び／又は１３３を介して記憶サービスをストレージクライアント１１６に提供し得る。幾つかの実施形態では、デバイス駆動回路はブロックデバイスＩ／Ｏインターフェース１３１を提供し、ブロックデバイスＩ／Ｏインターフェース１３１を通して、ストレージクライアント１１６はブロックレベルＩ／Ｏ動作を実行する。代替又は追加として、デバイス駆動回路は、ストレージクラスメモリ（ＳＣＭ）インターフェース１３２を提供し得、ＳＣＭインターフェース１３２は、他の記憶サービスをストレージクライアント１１６に提供し得る。幾つかの実施形態では、ＳＣＭインターフェース１３２は、ブロックデバイスインターフェース１３１への拡張を含み得る（例えば、ストレージクライアント１１６は、ブロックデバイスインターフェース１３１への拡張又は追加を通して、ＳＣＭインターフェース１３２にアクセスし得る）。代替又は追加として、ＳＣＭインターフェース１３２は、別個のＡＰＩ、サービス、及び／又はライブラリとして提供され得る。デバイス駆動回路は、キャッシュインターフェース１３３を提供して、メモリシステム１０２を使用してデータをキャッシュするように更に構成され得る。デバイス駆動回路は、上述したように、バス１２５を介してデータ、コマンド、及び／又はクエリをデバイスコントローラ１２６に転送するように構成されるメモリデバイスインターフェース１３９を更に含み得る。
【００６４】
図２は、１つ以上のメモリダイ又はチップ２１２及び／又は別のタイプの集積回路デバイス２１２を含み得る記憶装置２１０の一実施形態を示す。記憶装置２１０は、図１を参照して説明したメモリデバイス１２０と略同様であり得る。メモリダイ２１２は、幾つかの実施形態では、メモリセル２００のアレイ（二次元又は三次元）、ダイコントローラ２２０、及び読み出し／書き込み回路２３０Ａ／２３０Ｂを含む。一実施形態では、様々な周辺回路によるメモリアレイ２００へのアクセスは、アレイの両側で対称的に実施され、それにより、各側でのアクセスライン及び回路の密度は半分に低減する。読み出し／書き込み回路２３０Ａ／２３０Ｂは、更なる実施形態では、メモリセルのページを並行して読み出すか、又はプログラムできるようにする複数のセンスブロック２５０を含む。
【００６５】
メモリアレイ２００は、様々な実施形態では、行デコーダ２４０Ａ／２４０Ｂを介してワードラインにより及び列デコーダ２４２Ａ／２４２Ｂを介してビットラインによりアドレス指定可能である。幾つかの実施形態では、デバイスコントローラ１２６は、１つ以上のメモリダイ２１２と同じメモリダイ２１０（例えば、リムーバブルストレージカード又はパッケージ）に含まれる。コマンド及びデータは、ライン２３２を介してホストとデバイスコントローラ１２６との間及びライン２３４を介してデバイスコントローラ１２６と１つ以上のメモリダイ２１２との間で転送される。一実装形態は、複数のチップ２１２を含むことができ、チップ２１２は複数のダイ２１２及び／又はダイプレーン２１２等を含み得る。
【００６６】
ダイコントローラ２２０は、一実施形態では、読み出し／書き込み回路２３０Ａ／２３０Ｂと協働して、メモリアレイ２００でメモリ動作を実行する。ダイコントローラ２２０は、特定の実施形態では、較正構成要素１５０、状態マシン２２２、ダイ上アドレスデコーダ２２４、及びパワーコントロール回路２２６を含む。較正構成要素１５０は、一実施形態では、バス２３４及びダイ／チップ２１２のアクティブパスを介してデバイスコントローラ１２６から（例えば、ダイ／チップ２１２の外面上の入力／出力接点又はパッドから、様々な通信回路を通してメモリアレイ２００のデータバッファ及び／又はラッチ等に）１つ以上の較正コマンド及び／又は較正データを受信するように構成される。較正構成要素１５０は、受信較正データの１つ以上の変動を検出及び／又は特定し、変動を使用して、ダイ／チップ２１２のアクティブデータパスのセットアップ時間及び／又はホールド時間を調整し得る。単一のダイ／チップ２１２又は他の集積回路デバイスの複数のアクティブデータパス４０２ａ〜４０２ｎの一実施形態について、図４を参照して以下に説明する。
【００６７】
状態マシン２２２は、一実施形態では、メモリ動作のチップレベル制御を提供する。ダイ上アドレスデコーダ２２４は、ホスト又はメモリコントローラにより使用されるアドレスと、デコーダ２４０Ａ、２４０Ｂ、２４２Ａ、２４２Ｂにより使用されるハードウェアアドレスとの間で変換するアドレスインターフェースを提供する。パワーコントロール回路２２６は、メモリ動作中、ワードライン及びビットラインに供給される電力及び電圧を制御する。一実施形態では、パワーコントロール回路２２６は、供給電圧よりも大きい電圧を生成することができる１つ以上の電荷ポンプを含む。
【００６８】
特定の実施形態では、状態マシン２２２は、較正構成要素１５０の実施形態を含む。較正構成要素１５０は、特定の実施形態では、ダイコントローラ２２０及び／又は状態マシン２２２内のソフトウェア、ファームウェア、及び／又はハードウェアを含み得る。
【００６９】
一実施形態では、ダイコントローラ２２０、較正構成要素１５０、パワーコントロール回路２２６、デコーダ回路２２４、状態マシン回路２２２、デコーダ回路２４２Ａ、デコーダ回路２４２Ｂ、デコーダ回路２４０Ａ、デコーダ回路２４０Ｂ、読み出し／書き込み回路２３０Ａ、読み出し／書き込み回路２３０Ｂ、及び／又はコントローラ１２６の１つ又は任意の組み合わせは、１つ以上の管理回路と呼ぶことができる。
【００７０】
ここから
図３は、較正構成要素１５０の一実施形態を示す。較正構成要素１５０は、図１及び図２に関して上述した較正構成要素１５０と略同様であり得る。上述したように、一般に、較正構成要素１５０は、１つ以上の集積回路ダイ１２３及び／又は別のタイプの集積回路デバイス１２３にダイ上信号較正を提供するように構成される。図示の実施形態では、較正構成要素１５０は、パターン回路３０２、較正回路３０４、及び調整回路３０６を含み、これらはダイ上コントローラ又は他のダイ上回路の一部であり得る。
【００７１】
一実施形態では、パターン回路３０２は、較正コマンドの（例えば、デバイスコントローラ１２６等からの）パラメータとして、及び／又は較正コマンドに応答して、較正データパターンを受信し得る。更なる実施形態では、パターン回路３０２は、１つ以上の集積回路デバイス１２３（例えば、パターン回路３０２がデバイスコントローラ１２６に配置される、パターン回路３０２が集積回路デバイス１２３内に配置される等）の較正データパターンを生成する。パターン回路３０２は、集積回路デバイス１２３のデータパス上で較正データを送信及び／又は伝送し得る（例えば、入力／出力パッド又は他の接点からフリップフロップ、ラッチ、又は他のデータバッファ等に送信及び／又は伝送し得る）。
【００７２】
パターン回路３０２は、特定の実施形態では、集積回路デバイス１２３のデバイスコントローラ１２６からの較正コマンドの受信に応答して較正データパターンを生成し得る。上述したように、特定の実施形態では、デバイスコントローラ１２６は、較正コマンド及び／又は較正データを複数の異なる集積回路デバイス１２３に並行して送信することができ、各集積回路デバイス１２３は、独立した較正構成要素１５０等を含み、ダイ上信号較正を略同時に並行して行うことができる。更なる実施形態では、パターン回路３０２は、集積回路ダイ１２３及び／又はデバイス１２０の開始動作に応答して較正データパターンを生成し得る。
【００７３】
デバイスコントローラ１２６は、一実施形態では、較正データを１つ以上の集積回路デバイス１２３の複数の異なるアクティブデータパス（例えば、異なる入力／出力パッド又は他の接点）に送信し、異なるアクティブデータパスを並行して較正することができる。一実施形態では、信号較正構成要素１５０は、集積回路デバイス１２３の複数のアクティブデータパスを較正する。他の実施形態では、集積回路デバイス１２３の各アクティブデータパスは、それ自体の較正構成要素１５０及び／又は較正構成要素１５０の部分等を含む。
【００７４】
一実施形態では、較正回路３０４は、較正データを受信し（例えば、集積回路デバイス１２３上で、パターン回路３０２から、集積回路デバイス１２３のアクティブデータパスの終わり等において）、当初送信及び／又は受信された較正データパターンからの（例えば、予め定義され、予期され、及び／又は既知の較正データパターンからの）受信較正データの変動があるか否かを判断する。例えば、較正回路３０４は、パターン回路３０２及び／又はデバイスコントローラ１２６から、アクティブデータパスの終わりにおけるフリップフロップ又は他のデータラッチ等から、アクティブデータパスの他端部においてデータを受信し得る。
【００７５】
較正回路３０４は、特定の実施形態では、受信データの第１変動（例えば、受信データの予め定義される位置でのバイナリ０及び別のライン上でのパルス信号及び／又はクロックパルス）、第２変動（例えば、受信データの予め定義される位置でのバイナリ１）、及び／又はホールド時間誤差、セットアップ時間誤差等のデータ信号誤差を示す他の予め定義される変動等を検出し得る。例えば、一実施形態では、較正回路３０４は、予め定義されるクロックエッジ及び異なるクロックエッジの両方でのバイナリ０（例えば、２つの間の立ち下がりクロックエッジでバイナリ１を有する）が故障を示さない場合等、セットアップ故障を示す、予め定義されるクロックエッジ（例えば、受信データの初期又は第１の立ち上がりクロックエッジ）においてバイナリ０を検出し、異なるクロックエッジ（例えば、初期／第１の立ち上がりクロックエッジ後の受信データの次の立ち上がりクロックエッジ）においてバイナリ１を検出することにより、受信較正データの第１変動を検出し、調整回路３０６は、アクティブデータパスの遅延を低減し、及び／又はクロックパスの遅延を増大させてセットアップ故障を低減及び／又は無くすことができる。
【００７６】
更なる実施形態では、較正回路３０４は、予め定義されるクロックエッジ及び異なるクロックエッジの両方でのバイナリ０（例えば、２つの間の立ち下がりクロックエッジでバイナリ１を有する）が故障を示さない場合等、ホールド故障を示す、予め定義されるクロックエッジ（例えば、受信データの初期又は第１の立ち上がりクロックエッジ）においてバイナリ１を検出することにより、受信較正データの第２変動を検出し、調整回路３０６は、アクティブデータパスの遅延を増大させ、及び／又はクロックパスの遅延を低減してホールド故障を低減及び／又は無くすことができる。このようにして、特定の実施形態では、較正回路３０４は、所定のバイナリ値（例えば、バイナリ１又はバイナリ０）が予期されるよりも先に受信されるか、又は後で受信されるか（例えば、予め定義される較正データパターンの形成に求められるよりも先に受信されるか、又は後で受信されるか）に基づいて、タイミング誤差を検出し得る。パターン回路３０２は、較正パターンを複数回（例えば、反復較正データパターンの全ページが送信されるまで２回、３回、４回、５回、６回、７回、８回、又は９回以上）繰り返して、較正回路３０４が受信データの変動を複数回検出できるようにし、調整回路３０６が、アクティブデータパスのタイミングに複数の調整を反復的に及び／又は繰り返し行い、アクティブデータパスでの１つ以上のセットアップ故障及び／又はホールド故障を繰り返し低減し、無くすことができるようにする。
【００７７】
較正回路３０４の一実施形態は、図５に関して後述するクロック分周器５０２、１つ以上のフリップフロップ５０４ａ〜５０４ｎ、及び／又は１つ以上のアップ／ダウンカウンタ５０６ａ〜５０６ｎを含み得る。他の実施形態では、調整回路３０６は、後述するように、１つ以上のアップ／ダウンカウンタ５０６ａ〜５０６ｎを含み得る。特定の実施形態では、予め定義されるクロックエッジでの特定の予め定義されるバイナリ値（例えば、バイナリ０又はバイナリ１）は、タイミング誤差（例えば、セットアップ誤差又はホールド誤差のいずれか）を示すか、又は示さないことができる（例えば、初期／第１の立ち上がりエッジでのバイナリ１はホールド故障を示すことができ、初期／第１の立ち上がりエッジでのバイナリ０はセットアップ故障又は故障なしのいずれかを示すことができ、又はこの逆も同様である）ため、較正回路３０４は、特定の実施形態では、次の／第２の立ち上がりクロックエッジでの逆のバイナリ値（例えば、初期立ち上がりクロックエッジでのバイナリ０後の次の立ち上がりクロックエッジでのバイナリ１、又は異なる較正データパターンでの逆の場合も同様）に応答して、パルス信号及び／又はクロックパルスを生成及び／又は受信し得る。例えば、一実施形態では、受信較正データパターンの初期／第１の立ち上がりエッジでのバイナリ０及び別のライン（例えば、ＤＡＴＡ＿ＦＦライン）上のパルス信号及び／又はクロックパルスは、セットアップ故障を示しことができ、セットアップ故障を正常、すなわち故障なしの状況（例えば、較正データパターン「０１００００００」等の場合）から区別する。他の実施形態では、受信較正データパターンの初期／第１の立ち上がりエッジでのバイナリ１及び別のライン（例えば、ＤＡＴＡ＿ＦＦライン）上のパルス信号及び／又はクロックパルスは、異なる較正データパターンでのホールド故障等を示すことができる。
【００７８】
較正回路３０４は、特定の実施形態では、セットアップ故障が検出されたか、ホールド故障が検出されたか、又は故障なしが検出されたかを調整回路３０６に示すことができる。例えば、較正回路３０４は、アップ／ダウンカウンタ値及び／又は信号、パルス信号及び／又はクロックパルス（例えば、ＤＡＴＡ＿ＦＦライン上）等の遅延の識別子を調整回路３０６に提供することができ、調整回路３０６はこれを使用して、アップ／ダウンカウンタを一方向に増分するか、又は逆方向に増分するか（例えば、セットアップ故障の場合にカウントを低減し、ホールド故障の場合にカウントを増大し、又は逆も同様）を判断することができる。
【００７９】
調整回路３０６は、アップ／ダウンカウンタの範囲の中央値又はその近傍にアップ／ダウンカウンタの値を初期化し得る（例えば、３ビット０〜７アップ／ダウンカウンタの場合に３又は４、２ビット０〜３アップ／ダウンカウンタの場合に１又は２、３ビット０〜１５アップ／ダウンカウンタの場合に７又は８等）。パターン回路３０２は、較正データパターンを複数回繰り返し得る（例えば、較正サイクル、較正コマンド等を繰り返す）。較正データパターンが繰り返される回数は、特定の実施形態では、繰り返される較正データパターン（例えば、３ビット０〜７アップ／ダウンカウンタの場合、４回繰り返し、それにより、カウント値は、デフォルトの３又は４から、最大セットアップ故障の場合の０又は最大ホールド故障の場合の７のいずれか等に調整され得る）中、較正回路３０４がアップ／ダウンカウンタのカウント値をデフォルト値からアップ／ダウンカウンタの最小値又は最大値に調整し得るように、アップ／ダウンカウンタのビット数に基づいて選択されることができる。
【００８０】
一実施形態では、調整回路３０６は、較正回路３０４により受信されるデータに基づいて、集積回路デバイス１２３のアクティブデータパス上の信号のタイミングを補正及び／又は調整する。上述したように、例えば、特定の実施形態では、調整回路３０６は、セットアップ故障、ホールド故障のインジケータ、行うべき調整のインジケータ、行うべき調整の方向のインジケータ等を較正回路３０４から受信し得る。例えば、調整回路３０６は、パルス信号及び／又はクロックパルス、アップ／ダウン信号、又は他のインジケータを較正回路３０４から受信することができ、調整回路３０６はこれを使用して、アップ／ダウンカウンタを増分して、アクティブデータパスに導入する（例えば、実際のアクティブデータパスに配置されるリピータ、バッファ、及び／又は別の遅延要素を使用して）遅延量を示し得る。
【００８１】
調整回路３０６は、特定の実施形態では、較正回路３０４が受信データの第１変動を検出することに応答して、集積回路デバイス１２３のデータパスの遅延を低減し、較正回路３０４が受信データの第２変動を検出することに応答して、集積回路デバイス１２３のデータパスの遅延を増大させる。例えば、較正回路３０４からのパルス信号及び／又はクロックパルスの受信（例えば、ＤＡＴＡ＿ＦＦライン又は他の信号ライン上）に応答して、調整回路３０６は、較正回路３０４からのアップ／ダウン信号の第１状態（例えば、バイナリ１、バイナリ０等）に応答してアップ／ダウンカウンタをカウントアップすることができ、調整回路３０６は、較正回路３０４からのアップ／ダウン信号の第２状態（例えば、第１状態の逆の状態、異なる状態等）に応答してアップ／ダウンカウンタをカウントダウンすることができる。
【００８２】
一実施形態では、アクティブデータパス内の調整回路３０６のリピータ、バッファ、又は他の遅延要素は、較正回路３０４がホールド故障等を検出することに応答してアップ／ダウンカウンタ（例えば、アップ／ダウンカウンタとして構成されるデジタル／アナログ変換器等）からより高いカウント値を受信することに応答して、遅延を増大することができ、較正回路３０４がセットアップ故障等を検出することに応答してアップ／ダウンカウンタからより低いカウント値を受信することに応答して、遅延を低減することができる。異なる実施形態では、調整回路３０６のリピータ、バッファ、又は他の遅延要素は、より低いカウント値の受信に応答して遅延を低減することができ、より高いカウント値の受信に応答して遅延を増大することができる（例えば、上述したものと逆の符号化）。
【００８３】
調整回路３０６は、遅延を低減してデータパスのセットアップ時間を増大させ、遅延を増大させてデータパスのホールド時間を増大させ得る。調整回路３０６は、特定の実施形態では、遅延の識別子（例えば、カウント値）をアクティブデータパス内の調整回路３０６のリピータ、バッファ、及び／又は別の遅延要素に提供して、識別された遅延を導入する、アップ／ダウンカウンタとして構成されるデジタル／アナログ変換器（ＤＡＣ）を含み得る。上述したように、例えば、調整回路３０６は、調整回路３０６がカウントダウンして遅延を低減し、カウントアップして遅延を増大させ得るアップ／ダウンカウンタとして構成されるデジタル／アナログ変換器（ＤＡＣ）を含み得る。上述したように、特定の実施形態では、集積回路１２３の複数のアクティブデータパスのそれぞれ、及び／又は複数の集積回路デバイス１２３のそれぞれは、各々異なるアクティブデータパス（例えば、各アクティブデータパスは、特定のアクティブデータパス等にカスタマイズされた遅延を提供するように独立して調整可能なリピータ、バッファ、及び／又は別の遅延要素を含む）で並行して信号を較正し、及び／又は遅延を調整する較正回路３０４及び／又は調整回路３０６を含むことができる。
【００８４】
特定の実施形態では、図２のダイコントローラ２２０等のメモリダイ１２３のダイ上コントローラは、パターン回路３０２、較正回路３０４、及び／又は調整回路３０６のうちの１つ以上を含み得る。上述したように、一実施形態では、デバイスコントローラ１２６は、パターン回路３０２の少なくとも一部を含み、１つ以上の較正コマンド及び／又は較正データパターンを複数の集積回路ダイ１２３に並行して送信し、１つ以上のアクティブデータパス全体（例えば、入力／出力接点又はパッドからデータバッファ等まで）を較正し得る。特定の実施形態では、ダイ１２３は、揮発性及び／又は不揮発性メモリの半導体デバイスであり得る。様々な実施形態では、ダイ１２３は、メモリセルのコアアレイ及びコアと通信する周辺構成要素の両方を含む集積回路（例えば、モノリシック集積回路デバイス）を指し得る。一実施形態では、そのような集積回路は、複数のダイプレーン及び／又は層を含む三次元集積回路であり得るが、その場合でもなおダイと呼ぶことができる。
【００８５】
図１及び図２に関して上述したように、メモリデバイス１２０は、１つ以上のメモリ要素１２３又はダイ１２３を含み得る。他の実施形態では、ダイ１２３は、メモリ（例えば、ＡＳＩＣ、ＣＰＵ、通信デバイス、グラフィックスデバイス、システムオンチップ、プログラマブル論理デバイス等）を含むことの代替又は追加として、異なるタイプの集積回路を含み得る。様々な実施形態では、ダイ上コントローラ２２０は、ダイ上のメモリアレイ２００のデータ動作を制御するダイ上の構成要素、ダイ上の制御／演算論理、ダイ上の構成要素の組等を指し得る。
【００８６】
図４は、ダイ上信号較正のシステム４００の一実施形態を示す。システム４００は、図示の実施形態では、較正構成要素１５０、複数のアクティブデータパス４０２ａ〜４０２ｎ、１つ以上のクロックデータパス４０４ａ〜４０４ｎ、データバッファ４１２、及びメモリアレイ２００を含む。一実施形態では、較正構成要素１５０は、図１、図２、及び／又は図３に関して上述した較正構成要素１５０のうちの１つ以上と略同様であり得る。
【００８７】
一実施形態では、１つ以上のパターン回路３０２は、１つ以上の較正コマンド及び／又は較正データパターンを１つ以上の集積回路デバイス１２３のアクティブデータパス４０２ａ〜４０２ｎの１つ以上の入力／出力（ＩＯ）接点４０１ａ〜４０１ｎに送信する。１つ以上のＩＯ接点４０１ａ〜４０１ｎは、データを送信及び／又は受信する（例えば、較正構成要素１５０及び／又はメモリアレイ２００についてのデータをデバイスコントローラ１２６及び／又はホストデバイス１１０から受信し、データを較正構成要素１５０及び／又はメモリアレイ２００等からデバイスコントローラ１２６及び／又はホストデバイス１１０に送信する）ように構成される導電性パッド、ポート、ライン、ワイヤ、コネクタ等の電気接点を含み得る。
【００８８】
図示の実施形態では、１つ以上のアクティブデータパス４０２ａ〜４０２ｎは、１つ以上のＩＯ接点４０１ａ〜４０１ｎとデータバッファ４１２（例えば、アクティブデータパス４０２ａ〜４０２ｎの他端部）の間に延びる。上述したように、データバッファ４１２は、データラッチ、レジスタ、フリップフロップ、ＲＡＭ、ページバッファ、メモリアレイ２００のキャッシュ又はスクラッチパッドエリア等の揮発性又は不揮発性データストレージを含み得る。データバッファ４１２は、１つ以上のアクティブデータパス４０２ａ〜４０２ｎのＩＯ接点４０１ａ〜４０１ｎにより受信される較正データパターン及び他のデータを含め、メモリアレイ２００に記憶すべきデータ及び／又はメモリアレイ２００から読み取られたデータをキャッシュ及び／又は記憶し得る。遅延オフセット、ドリフト、不一致、故障、変動等は、異なるアクティブデータパス４０２ａ〜４０２ｎの製造、材料、位置、ジオメトリ、距離等の変動に起因して、異なるアクティブデータパス４０２ａ〜４０２ｎで異なり得る。
【００８９】
特定の実施形態では、各アクティブデータパス４０２ａ〜４０２ｎに同じ遅延調整又は較正を使用することは、各アクティブデータパス４０２ａ〜４０２ｎの異なる遅延誤差を修正又は補正しないことがある。例えば、アクティブデータパス４０２ａ〜４０２ｎによっては、セットアップ故障を有するものもあれば、ホールド故障を有するものもあれば、他よりも更にドリフトしてより大きい故障を生じさせるもの等もあり得る。全体アクティブデータパス４０２ａ〜４０２ｎに沿って較正データパターンを伝送し、異なるアクティブデータパス４０２ａ〜４０２ｎでの実際の遅延に基づいて調整を行うことにより、較正構成要素１５０は、複製回路、シミュレーション等を使用して遅延を推定する場合よりも正確に実際の遅延を補償し、及び／又は補正し得る。
【００９０】
図示の実施形態では、各アクティブデータパス４０２ａ〜４０２ｎは、ＩＯ接点４０１、受信機４０６、駆動回路４０８、リピータ４１０、及びデータバッファ４１２を含む。他の実施形態では、アクティブデータパス４０２は、送信機、送受信機、フィルタ、増幅器等の異なる構成要素、追加の構成要素等を含み、ワイヤ、バス、ライン、又は他の通信チャネル（例えば、ＩＯ接点４０１ａ〜４０１ｎとデバイスコントローラ１２６、ホストデバイス１１０、ストレージクライアント１１６等との間）を介して受信されるか、又は伝送されるべき電気データ信号を伝送、受信、及び／又は処理し得る。一実施形態では、１つ以上のクロックパス４０４ａ〜４０４ｎは、１つ以上のアクティブデータパス４０２ａ〜４０２ｎと略同様であり得るが、データを送信及び／又は受信する代わりにクロック信号４０３を受信し得る。
【００９１】
上述したように、特定の実施形態では、アクティブデータパス４０２は、較正データパターン（例えば、較正コマンドに応答して及び／又は較正コマンドの一部として）をデバイスコントローラ１２６等から受信する。受信較正データパターンは、ＩＯ接点４０１に到着し、アクティブデータパス４０２を通して（例えば、受信機４０６、駆動回路４０８、リピータ４１０を通してデータバッファ４１２に）送信／伝送され得る。リピータ４１０は、特定の実施形態では、遅延識別子４１４に基づいて、遅延をアクティブデータパス４０２に同時及び／又は設定可能に導入し得る。リピータ４１０は、遅延識別子４１４のデフォルト値（例えば、リピータ４１０が、アクティブデータパス４０２に導入する遅延量を時間に伴って増大又は低減し得るように、潜在的な遅延範囲の中央又は中央に向かう値）に初期化され得る。較正構成要素１５０（例えば、較正回路３０４、調整回路３０６等）は、遅延識別子４１４ａ〜４１４ｎをリピータ４１０に提供して、遅延を増大、低減、又は維持し得る（例えば、較正構成要素１５０の調整回路３０６は、カウント値等の遅延識別子４１４ａ〜４１４ｎをリピータ４１０に提供して、遅延量を調整及び／又は制御するアップ／ダウンカウンタとして構成されるデジタル／アナログ変換器を含み得る）。
【００９２】
特定の実施形態では、１つ以上のリピータ４１０は、追加の遅延調整４１６ａ〜４１６ｎ、４１８を受信することができ（例えば、遅延値４１４の代わりに、クロックパス４０４ａ〜４０４ｎの場合、較正構成要素１５０からの遅延値４１４ａ〜４１４ｎに加えて等）、このことは、アクティブデータパス４０２ａ〜４０２ｎ及び／又はクロックパス４０４ａ〜４０４ｎの初期遅延及び／又はタイミング較正に基づき得る（例えば、読み取り専用メモリ（ＲＯＭ）又は他の不揮発性メモリからリピータ４１０に提供される構成設定等であり得る）。上述したように、リピータ４１０は、アクティブデータパス４０２ａ〜４０２ｎにおいてデータ（例えば、信号）を受信し、ある時間期間（例えば、遅延期間）後、受信データを再送信するバッファ、増幅器、フィルタ、及び／又は別の遅延要素を含み得る。特定の実施形態では、リピータ４１０の遅延期間は、１つ以上の受信遅延識別子４１４、４１６、４１８に基づいて設定可能及び／又は調整可能である。リピータ４１０は、一実施形態では、１ビットカウント（例えば、１ビット、２ビット、３ビット、４ビット、５ビット、６ビット、７ビット、又は８ビット以上）の遅延識別子４１４、４１６、４１８を受信することができ、受信遅延識別子４１４、４１６、４１８をリピータ４１０内の異なるビットカウント（例えば、８ビット、１６ビット、３２ビット等のより高いビットカウント）に内部で変換及び／又は復号し得る（例えば、単一の遅延識別子４１４、４１６、又は４１８に基づいて遅延ステップを制御し、複数の遅延識別子４１４、４１６、及び／又は４１８を結合する等）。
【００９３】
図示の実施形態では、較正構成要素１５０は、データバッファ４１２から（例えば、１つ以上のアクティブデータパス４０２ａ〜４０２ｎの端部から）較正データ４２０ａ〜４２０ｎを読み取り、タップし、監視し、及び／又は他の方法で受信し、１つ以上のクロック信号４０３を受信する（例えば、１つ以上のクロックパス４０４ａ〜４０４ｎから）。較正データ４２０ａ〜４２０ｎは、一実施形態では、実際の較正データパターンを含むことができ（例えば、アクティブデータパス４０２ａ〜４０２ｎでの遅延故障により生じる任意のデータ誤差又は他の変動を有する）、較正構成要素１５０はこれを処理して、パターン回路３０２から元々送信された及び／又は予期される較正データパターン等からの較正データ４２０ａ〜４２０ｎの変動を検出し得る。
【００９４】
別の実施形態では、データバッファ４１２は、較正構成要素１５０の少なくとも一部（例えば、較正回路３０４の少なくとも一部等）を含むことがあり、較正データ４２０ａ〜４２０ｎは、パルス信号及び／又はクロックパルス、アップ／ダウン信号、及び／又は較正構成要素１５０が１つ以上の遅延識別子４１４ａ〜４１４ｎを決定するのに使用し得る他の情報を含むことがある（例えば、データ自体を送信する代わりに）。例えば、データバッファ４１２は、受信較正データパターンの変動を示す、予め定義されるクロックエッジでの予め定義されるバイナリ値又は信号を検出し、較正データ４２０ａ〜４２０ｎ（例えば、データパルス及び／又はアップ／ダウン信号等）を生成し、較正構成要素１５０の異なる部分（例えば、調整回路３０６、１つ以上のリピータ４１０等）に送信する較正回路３０４の論理を含むことができる。
【００９５】
１つ以上のアクティブデータパス４０２ａ〜４０２ｎは、較正コマンドに応答した較正動作において、書き込み／プログラム動作の場合にはデータバッファ４１２からメモリアレイ２００にデータを送信し、及び／又は読み出し動作の場合にはメモリアレイ２００からデータバッファ４１２にデータをロードすることができ、１つ以上のアクティブデータパス４０２ａ〜４０２ｎは、較正構成要素１５０がデータバッファ４１２からの較正データ４２０ａ〜４２０ｎを処理して、１つ以上の遅延識別子４１４ａ〜４１４ｎ等を決定すると、データバッファ４１２内の較正データを破棄、削除、上書き、及び／又は無視することができる（例えば、較正データをメモリアレイ２００に送信せずに）。
【００９６】
図５は、ダイ上信号較正のシステム５００の一実施形態を示す。システム５００は、図示の実施形態では、較正構成要素１５０を含む。特定の実施形態では、較正構成要素１５０は、図１、図２、図３、及び／又は図４に関して上述した較正構成要素１５０のうちの１つ以上と略同様であり得る。較正構成要素１５０は、一実施形態では、調整回路３０６の実施形態を含む。図示の実施形態では、較正構成要素１５０は、クロック分周器５０２、複数のフリップフロップ５０４ａ〜５０４ｎ、及び複数のアップ／ダウンカウンタ５０６ａ〜５０６ｎを含む。
【００９７】
一実施形態では、較正構成要素１５０のクロック分周器５０２は、１つ以上のクロック信号４０３を受信する（例えば、クロックパス４０３ａ〜４０３ｎから、データバッファ４１２から、デバイスコントローラ１２６等から）。クロック分周器５０２は、受信した１つ以上のクロック信号４０３のクロックサイクル数（例えば、周波数）を分割及び／又は調整して、分周クロック信号５０３を提供し得る。分周クロック信号５０３は、１較正データパターン当たり、１較正動作等当たりで１つのクロックサイクル（例えば、１つの立ち上がりエッジ、１つの立ち下がりエッジ等）を含み得る。例えば、クロック分周器５０２は、１〜３つの分周器及び／又は生成器を含むことがあり、分周器及び／又は生成器は、８ビットダブルデータレート（ＤＤＲ）較正データパターンの場合、４つの受信クロックサイクル（例えば、３つのクロックサイクルのハイ時間及び１つのクロックサイクルのロー時間等）毎に１つのクロックサイクルを提供し得る。
【００９８】
特定の実施形態では、分周クロック信号５０３は、較正データ４２０ａ〜４２０ｎ（例えば、パルス信号及び／又はクロックパルス）をフリップフロップ５０４ａ〜５０４ｎにラッチするクロックとして機能し（例えば、分周クロック信号５０３の第１の／初期立ち上がりクロックエッジ等において）、それにより、フリップフロップ５０４ａ〜５０４ｎは、較正データライン４２０ａ〜４２０ｎ上のパルス信号及び／又はクロックパルス（例えば、アップ／ダウンカウンタ５０６ａ〜５０６ｎ等のクロック信号として機能し得る）に応答して、関連するカウント値４１４ａ〜４１４ｎをカウントアップするか、又はカウントダウンするかをアップ／ダウンカウンタ５０６ａ〜５０６ｎに示すアップ／ダウン信号５０８ａ〜５０８ｎを出力する（例えば、アップ／ダウン信号５０８は、ホールド故障等を示す、クロック信号４０３及び／又は５０３の第１の／初期立ち上がりエッジでのバイナリ１に応答して、アップ／ダウンカウンタ５０６をカウントアップすることを示す）。アップ／ダウンカウンタ５０６ａ〜５０６ｎ（例えば、アップ／ダウンカウンタ５０６ａ〜５０６ｎとして構成されるＤＡＣ等）は、カウント値４１４ａ〜４１４ｎをアクティブデータパス４０２ａ〜４０２ｎ内のリピータ４１０等に提供し得る。
【００９９】
図６Ａは、較正動作６００の一実施形態を示す。較正動作６００は、複数の反復較正サイクル６０２ａ〜６０２ｎを含み、各反復較正サイクル中、アクティブデータパス４０２は較正データパターン４０１及びクロック信号４０３を受信し、クロック分周器５０２は、分周クロック信号５０３が較正サイクル６０２毎に１つの立ち上がりエッジ（例えば、クロック信号４０３の第１の／初期立ち上がりエッジと位置合わせされる）を有するように、較正データパターン及びクロック信号を分周する。図示の実施形態では、アクティブデータパス４０２は、タイミング誤差又は故障をわずかに有するか、又は有さず（例えば、セットアップ又はホールド時間故障がない）、したがって、較正回路３０４は、較正データライン４２０上でパルス信号及び／又はクロックパルスを生成せず、又はアップ／ダウン信号５０８をトグル（ｔｏｇｇｌｅ）せず、したがって、調整回路３０６は、カウント値４１４をデフォルト値（例えば、図示の実施形態では「４」）から変えない。
【０１００】
図６Ｂは、セットアップ故障を有する較正動作６１０の一実施形態を示す。図示の実施形態では、セットアップ故障（例えば、十分ではないセットアップ時間、長すぎるホールド時間等）に起因して、予め定義される較正パターン「０１００００００」を受信する代わりに、較正回路３０４は「００１０００００」を受信し、その理由は、初期バイナリ０がクロック信号４０３の第１の／初期立ち上がりエッジ及び第１の／初期立ち下がりエッジの両方に延び、較正データパターン４０１の全体がクロックサイクルの半分だけ右にスキュー（ｓｋｅｗ）するためである。
【０１０１】
クロック信号４０３の次の（例えば、第２の）立ち上がりクロックエッジでのデータライン４０１でのバイナリ１の検出に応答して、較正回路３０４は、アップ／ダウン信号５０８をトグルせずに（例えば、アップ／ダウン信号５０８をローのままにして、セットアップ故障を通知し、カウントダウンをトリガーする）、較正データライン４２０（例えば、ＤＡＴＡ＿ＦＦ）上でパルス信号及び／又はクロックパルスを生成し、調整回路３０６は、デフォルト値からカウントダウン（例えば、図示の実施形態での「４」から「３」にカウントダウン）することにより、カウント値４１４を増分する。図示の実施形態では、反復較正サイクル６０２ａ〜６０２ｎ中の２つ以上の反復セットアップ故障に応答して、調整回路３０６は、カウント値４１４を値「１」にカウントダウンし、リピータ４１０が、低減されたカウント値４１４に基づいてアクティブデータパス４０２の遅延を低減することに起因して、最後の較正サイクル６０２ｎ中、セットアップ又はホールド故障はない。
【０１０２】
図６Ｃは、ホールド故障を有する較正動作６２０の一実施形態を示す。図示の実施形態では、ホールド故障（例えば、十分ではないホールド時間、長すぎるセットアップ時間等）に起因して、予め定義される較正パターン「０１００００００」を受信する代わりに、較正回路３０４は「１０００００００」を受信し、その理由は、初期バイナリ１が第１の／初期立ち下がりエッジの代わりにクロック信号４０３の第１の／初期立ち上がりエッジでクロックインされ、較正データパターン４０１の全体がクロックサイクルの半分だけ左にスキューするためである。
【０１０３】
クロック信号４０３の第１の／初期立ち上がりクロックエッジでのデータライン４０１上のバイナリ１の検出に応答して、較正回路３０４は、較正データライン４２０（例えば、ＤＡＴＡ＿ＦＦ）上でパルス信号及び／又はクロックパルスを生成し、アップ／ダウン信号５０８をハイ値にトグルし（例えば、ホールド故障を通知し、カウントアップをトリガーする）、調整回路３０６は、デフォルト値からカウントアップする（例えば、図示の実施形態での「４」から「５」にカウントアップする）ことにより、カウント値４１４を増分する。図示の実施形態では、反復較正サイクル６０２ａ〜６０２ｎ中の２つ以上の反復ホールド故障に応答して、調整回路３０６は、カウント値４１４を値「７」にカウントアップし、リピータ４１０が、増大されたカウント値４１４に基づいてアクティブデータパス４０２の遅延を増大させることに起因して、最後の較正サイクル６０２ｎ中、セットアップ又はホールド故障はない。
【０１０４】
図７は、ダイ上信号較正の方法７００の一実施形態を示す。方法７００が開始されると、較正回路３０４は、集積回路デバイス１２３のアクティブデータパス４０２から較正データを受信し（７０２）、予め定義される及び／又は予期される較正データパターンからの受信較正データの変動を検出する（７０４）。調整回路３０６は、受信較正データの変動の検出７０４に応答して、集積回路デバイス１２３のアクティブデータパス４０２の遅延を調整し（７０６）、方法７００を終了する。
【０１０５】
図８は、ダイ上信号較正の方法８００の一実施形態を示す。図示の実施形態では、方法８００が開始されると、較正回路３０４は、アクティブデータパス４０２の終わりにおけるデータバッファ４１２からラッチデータをサンプリングし（８０２）、ラッチデータ内の予め定義される位置（例えば、第１ビット、第２ビット、第３ビット等）でのバイナリ０又はバイナリ１についてチェックする（８０４）。
【０１０６】
較正回路３０４がバイナリ１を検出する（８０４）場合（例えば、ホールド故障を示す）、調整回路３０６は、カウンタ値４１４をカウントアップ又は増分し、カウント値４１４をアクティブデータパス４０２内のリピータ４１０に送信することより、アクティブデータパス４０２に遅延を追加する（８０６）。較正回路３０４がバイナリ０を検出する（８０４）場合、較正回路３０４は、調整回路３０６に送信するパルス信号４２０及び／又はクロックパルス４２０を生成する（例えば、ＤＡＴＡ＿ＦＦ等上で）か否か（例えば、バイナリ１がクロック信号４０３の次の／第２の立ち上がりエッジで受信されたか否か等に基づいて）を判断する（８０８）。較正回路３０４がバイナリ０を検出し（８０４）、パルス信号４２０及び／又はクロックパルス４２０を生成する（８０８）（例えば、セットアップ故障を示す）場合、調整回路３０６は、カウンタ値４１４をカウントダウン又は低減することにより、アクティブデータパス４０２から遅延を除去する（８１０）。方法８００は、較正閾値が満たされた（例えば、２較正サイクル、４較正サイクル、８較正サイクル、１６較正サイクル、又は別の予め定義される閾値）とパターン回路３０２が判断する（８１２）まで、反復較正データパターンを用いて複数の較正サイクルを繰り返し、方法８００を終了する。
【０１０７】
様々な実施形態では、較正コマンドに応答してメモリデバイス１２３のアクティブデータパス４０２の終わりにおけるデータバッファ４１２から較正データをタップする手段は、較正構成要素１５０、較正回路３０４、データバッファ４１２、ラッチ、フリップフロップ５０４、導電性ライン又はトレース、ダイ上コントローラ２２０、ダイ状態マシン２２２、他の論理ハードウェア、及び／又はコンピュータ可読記憶媒体に記憶される他の実行可能コードを含み得る。他の実施形態は、較正データをタップする同様の又は均等な手段を含み得る。
【０１０８】
様々な実施形態では、タップされた較正データと較正データパターンとの間の変動を検出する手段は、較正構成要素１５０、較正回路３０４、調整回路３０６、データバッファ４１２、ダイ上コントローラ２２０、ダイ状態マシン２２２、デバイスコントローラ１２６、プロセッサ、ホスト計算デバイス１１０、デバイス駆動回路、他の論理ハードウェア、及び／又はコンピュータ可読記憶媒体に記憶される他の実行可能コードを含み得る。他の実施形態は、変動を検出する同様の又は均等な手段を含み得る。
【０１０９】
様々な実施形態では、検出された変動に基づいてアクティブデータパス４０２の遅延を調整する手段は、較正構成要素１５０、調整回路３０６、リピータ４１０又は他の遅延要素、受信機４０６、駆動回路４０８、データバッファ４１２、他の論理ハードウェア、及び／又はコンピュータ可読記憶媒体に記憶される他の実行可能コードを含み得る。他の実施形態は、遅延を調整する同様の又は均等な手段を含み得る。
【０１１０】
様々な実施形態では、複数のアクティブデータパス４０２ａ〜４０２ｎの異なるアクティブデータパス４０２ａ〜４０２ｎの異なる変動を検出する手段は、較正構成要素１５０、較正回路３０４、調整回路３０６、データバッファ４１２、ダイ上コントローラ２２０、ダイ状態マシン２２２、デバイスコントローラ１２６、プロセッサ、ホスト計算デバイス１１０、デバイス駆動回路、他の論理ハードウェア、及び／又はコンピュータ可読記憶媒体に記憶される他の実行可能コードを含み得る。他の実施形態は、異なる変動を検出する同様の又は均等な手段を含み得る。
【０１１１】
様々な実施形態では、異なる変動に基づいて異なるアクティブデータパス４０２ａ〜４０２ｎの遅延に異なる調整を行う手段は、較正構成要素１５０、調整回路３０６、リピータ４１０又は他の遅延要素、受信機４０６、駆動回路４０８、データバッファ４１２、他の論理ハードウェア、及び／又はコンピュータ可読記憶媒体に記憶される他の実行可能コードを含み得る。他の実施形態は、異なるアクティブデータパス４０２ａ〜４０２ｎの遅延に異なる調整を行う同様の又は均等な手段を含み得る。
【０１１２】
本開示は、本開示の趣旨又は基本的特徴から逸脱せずに、他の具体的な形態で具現化され得る。記載の実施形態は、すべての点において、限定ではなく例示として見なされるべきである。したがって、本開示の範囲は、上記説明ではなく添付の特許請求の範囲により示される。特許請求の範囲の均等物の意味及び範囲内にあるすべての変更形態は、特許請求の範囲に包含されるべきである。
【０１１３】
例示的な装置及びシステムが以下の項目に記載される。
（項目１）
集積回路デバイスと、その集積回路デバイスに配置されたダイ上コントローラと、を備えており、
ダイ上コントローラは、
集積回路デバイスのアクティブデータパスからデータを受信するとともに、較正データパターンからの受信データの変動を検出する較正回路と、
前記受信データの第１変動の検出に応答して、集積回路デバイスのアクティブデータパスの遅延を低減するとともに、前記受信データの第２変動の検出に応答して、集積回路デバイスのアクティブデータパスの遅延を増大させる調整回路と、を備えている装置。
（項目２）
アクティブデータパスが、集積回路デバイスの１つ以上の入力／出力電気接点と、集積回路デバイスのメモリ媒体のデータバッファと、の間に延びており、
較正回路が、データバッファから前記データを受信する、項目１に記載の装置。
（項目３）
較正回路は、集積回路デバイスの複数の異なる入力／出力電気接点と、集積回路デバイスのメモリセルのアレイのデータバッファと、の間の複数のアクティブデータパスのそれぞれから前記データを受信し、
調整回路は、複数のアクティブデータパスの遅延を独立して調整し、
複数のアクティブデータパスが、前記アクティブデータパスを含む、項目１に記載の装置。
（項目４）
較正回路は、集積回路デバイスのデバイスコントローラからの較正コマンドに応答して前記データを受信する、項目１に記載の装置。
（項目５）
さらに、複数の追加の集積回路デバイスを備えており、
デバイスコントローラは、集積回路デバイスと複数の追加の集積回路デバイスに、較正コマンドを同時に送信する、項目４に記載の装置。
（項目６）
デバイスコントローラは、集積回路デバイスの開始動作に応答して較正コマンドを送信する、項目４に記載の装置。
（項目７）
前記受信データの第１変動は、予め定義されたクロックエッジにおけるバイナリ０及び異なるクロックエッジにおけるバイナリ１を検出することを含み、
第２変動は、予め定義されたクロックエッジにおけるバイナリ１を検出することを含んでいる、項目１に記載の装置。
（項目８）
予め定義されたクロックエッジが、前記受信データの初期立ち上がりクロックエッジを含んでおり、
異なるクロックエッジが、初期立ち上がりクロックエッジ後の前記受信データの次の立ち上がりクロックエッジを含んでいる、項目７に記載の装置。
（項目９）
遅延を低減することが、データパスのセットアップ時間を増大させることであり、
遅延を増大させることが、データパスのホールド時間を増大させることである、項目１に記載の装置。
（項目１０）
調整回路は、遅延を導入するデータパス内のリピータに遅延の識別子を提供するデジタル／アナログ変換器を含んでいる、項目１に記載の装置。
（項目１１）
デジタル／アナログ変換器は、調整回路がカウントダウンして遅延を低減するとともに、カウントアップして遅延を増大させるアップ／ダウンカウンタとして構成されている、項目１０に記載の装置。
（項目１２）
較正回路は、調整回路がアップ／ダウンカウンタをカウントダウンするような第１変動の検出に応答して、第１状態においてパルス信号及びアップ／ダウン信号を調整回路に提供し、調整回路がアップ／ダウンカウンタをカウントアップするような第２変動の検出に応答して、第２状態においてパルス信号及びアップ／ダウン信号を調整回路に提供する、項目１１に記載の装置。
（項目１３）
較正回路は、所定回数繰り返される較正パターンを受信し、その所定回数は、アップ／ダウンカウンタのビット数に基づいて選択される、項目１１に記載の装置。
（項目１４）
較正回路によって受信されたデータが、較正データパターン及びクロック信号を含んでいる、項目１に記載の装置。
（項目１５）
較正コマンド及び較正データを送信するように構成されたデバイスコントローラと、
デバイスコントローラと通信するメモリ要素のアレイと、を備えており、
メモリ要素のそれぞれは、
異なる入力／出力パッドとメモリバッファとの間に、異なるアクティブデータパスを含んでおり、
メモリバッファをタップして、異なるアクティブデータパスから較正データの異なる変動を検出し、
検出された異なる変動に基づいて、異なるアクティブデータパスに異なる遅延調整を行うように構成されている、システム。
（項目１６）
異なるアクティブデータパスが、検出された較正データの異なる変動を追跡するアップ／ダウンカウンタからの信号に基づいて、異なるアクティブデータパスに異なる遅延調整を提供するように構成されたリピータを備えており、
デバイスコントローラが、特定回数較正データの送信を繰り返し、その特定回数は、アップ／ダウンカウンタのビット数に基づいて選択される、項目１５に記載のシステム。
（項目１７）
メモリ要素のそれぞれは、デバイスコントローラからのクロック信号を分周するように構成されたクロック分周回路を備えており、
分周クロック信号は、較正データの反復毎に単一のクロックサイクルを有しており、
メモリ要素は、単一のクロックサイクルに応答して異なる変動を検出する、項目１６に記載のシステム。
（項目１８）
較正コマンドに応答して、メモリデバイスのアクティブデータパスの終わりにおいてデータバッファから較正データをタップする手段と、
タップされた較正データと較正データパターンの間の変動を検出する手段と、
検出された変動に基づいて、アクティブデータパスの遅延を調整する手段と、を備えている装置。
（項目１９）
タップされた較正データは、メモリデバイスの入力／出力接点とデータバッファとの間の、メモリデバイスの複数のアクティブデータパスの較正データを含んでいる、項目１８に記載の装置。
（項目２０）
変動を検出する手段は、複数のアクティブデータパスの異なるアクティブデータパスの異なる変動を検出する手段を含んでおり、
遅延を調整する手段は、異なる変動に基づいて、異なるアクティブデータパスの遅延に異なる調整を行う手段を含んでいる、項目１９に記載の装置。
【図１】
2018160233.tif 000003
【図２】
2018160233.tif 000004
【図３】
2018160233.tif 000005
【図４】
2018160233.tif 000006
【図５】
2018160233.tif 000007
【図６Ａ】
2018160233.tif 000008
【図６Ｂ】
2018160233.tif 000009
【図６Ｃ】
2018160233.tif 000010
【図７】
2018160233.tif 000011
【図８】
2018160233.tif 000012
【外国語明細書】
2018160233000001.pdf
2018160233000002.pdf
2018160233000003.pdf
2018160233000004.pdf