(57)【要約】      （修正有）【課題】コンピュータシステム用メモリの書き込み動作の実行に必要な信号のタイミングを較正する。【解決手段】メモリ制御装置が、１つまたは複数の書き込み−読み出し−検証の動作を実行してデータストローブ信号とクロック信号との間のクロックサイクル関係を較正する３０２，３０６。書き込み−読み出し−検証の動作は、クロック信号に対するデータストローブ信号の遅延をクロック周期単位で変化させることを含む。メモリチップの位相検出器は、クロック信号、マーキング信号、およびデータストローブ信号を含む複数の信号をメモリ制御装置から受信し、マーキング信号を用いて、クロック信号の中の特定のクロックサイクルに窓を掛け、データストローブ信号を用いて窓掛けクロック信号を捕捉して、フィードバック信号を生成する。このフィードバック信号は、メモリ制御装置に返されて、タイミング関係の較正を容易にする。【選択図】図３
2015043254.tif 000002
【特許請求の範囲】
【請求項１】
書き込み動作の実行に関わる複数の信号の間のタイミング関係を較正する方法であって、
前記複数の信号は、メモリ制御装置と、メモリチップのセットの中のメモリチップとの間で伝達され、
前記方法は、
前記メモリチップ上に配置された位相検出器を用いて、前記メモリチップにおいて、前記メモリ制御装置から受信されたデータストローブ信号とクロック信号との間の位相関係を較正するステップと、
少なくとも１つの書き込み−読み出し−検証の動作を実行して前記データストローブ信号と前記クロック信号との間のクロックサイクル関係を較正するステップと
を含み、
前記書き込み−読み出し−検証の動作は、前記クロック信号に対する前記データストローブ信号の遅延を前記クロック信号のクロック周期単位で変化させることを含む、方法。
【請求項２】
前記データストローブ信号と前記クロック信号との間の位相関係を較正するステップは、
前記クロック信号に対して様々に遅延させたパルスを前記データストローブ信号上にアサートすること、および
前記データストローブ信号と前記クロック信号とが揃っていることを示す遷移を、前記位相検出器の出力において探すこと、
を含む、請求項１に記載の方法。
【請求項３】
前記クロックサイクル関係を較正するステップは、
前記クロック信号に対する前記データストローブ信号の遅延をクロック周期単位で変化させること、
前記メモリチップ内の特定のロケーションに値を書き込むこと、
前記メモリチップ内の前記特定のロケーションから値を読み出すこと、および、
前記特定のロケーションから読み出した値が、前記特定のロケーションに書き込んだ値と一致するかどうかを検証することによって、前記データストローブ信号と前記クロック信号とが較正されているかどうかを判定すること、
を連続的に実行することを含む、請求項１に記載の方法。
【請求項４】
前記メモリチップの前記セットの中のすべてのメモリチップについて繰り返される、請求項１に記載の方法。
【請求項５】
前記メモリチップの前記セットの中のメモリチップについての前記タイミング関係は、前記メモリチップのそれぞれが結合されている制御パスに沿って遅延が増える順に較正される、請求項５に記載の方法。
【請求項６】
読み出し動作時に前記データストローブ信号とデータストローブイネーブル信号との間のタイミング関係を調節するステップをさらに含む、請求項１に記載の方法。
【請求項７】
書き込み動作の実行に関わる複数の信号の間のタイミング関係を較正する方法であって、
前記複数の信号は、メモリ制御装置と、メモリチップのセットの中のメモリチップとの間で伝達され、
前記方法は、
前記メモリチップ上に配置された位相検出器を用いて、前記メモリチップにおいて、前記メモリ制御装置から受信されたデータストローブ信号とクロック信号との間の位相関係を較正するステップと、
前記データストローブ信号と前記クロック信号との間のクロックサイクル関係を較正することを、
前記クロック信号に対する前記データストローブ信号の遅延をクロック周期単位で変化させること、
前記メモリチップ内の特定のロケーションに値を書き込むこと、
前記メモリチップ内の前記特定のロケーションから値を読み出すこと、および、
前記特定のロケーションから読み出した値が、前記特定のロケーションに書き込んだ値と一致するかどうかを検証することによって、前記データストローブ信号と前記クロック信号とが較正されているかどうかを判定すること、
を反復することによって行うステップと、
を含む、方法。
【請求項８】
メモリ制御装置と、
前記メモリ制御装置と結合されたメモリチップのセットと、
を備え、
前記メモリチップの前記セットの中の各メモリチップは、前記メモリチップにおいて前記メモリ制御装置から受信したデータストローブ信号およびクロック信号の間の位相関係を較正するように構成された位相検出器を含み、
前記メモリ制御装置は、少なくとも１つの書き込み−読み出し−検証の動作を実行して前記データストローブ信号と前記クロック信号との間のクロックサイクル関係を較正するように構成され、
前記書き込み−読み出し−検証の動作は、前記クロック信号に対する前記データストローブ信号の遅延をクロック周期単位で変化させることを含む、システム。
【請求項９】
前記メモリチップの前記セットは、前記クロック信号がマルチドロップ方式で前記メモリ制御装置から前記メモリチップの前記セットにルーティングされるように、前記メモリ制御装置と結合されており、
前記データストローブ信号は、ダイレクト接続で前記メモリ制御装置から前記メモリチップの前記セットにルーティングされ、前記クロック信号と前記データストローブ信号との間の遅延差は１クロック周期を超えてもよい、請求項８に記載のシステム。
【請求項１０】
前記メモリ制御装置は、前記データストローブ信号と前記クロック信号との間の位相関係を較正する際に、前記クロック信号に対して様々に遅延させたパルスを前記データストローブ信号上にアサートすること、および、前記データストローブ信号および前記クロック信号の位置が揃っていることを示す遷移を前記位相検出器の出力において探すこと、を行うように構成された、請求項８に記載のシステム。
【請求項１１】
前記メモリ制御装置は、前記クロックサイクル関係を較正する際に、
前記クロック信号に対する前記データストローブ信号の遅延をクロック周期単位で変化させること、
前記メモリチップ内の特定のロケーションに値を書き込むこと、
前記メモリチップ内の前記特定のロケーションから値を読み出すこと、および、
前記特定のロケーションから読み出した値が、前記特定のロケーションに書き込んだ値と一致するかどうかを検証することによって、前記データストローブ信号と前記クロック信号とが較正されているかどうかを判定すること、
を連続的に実行するように構成された、請求項８に記載のシステム。
【請求項１２】
前記メモリチップの前記セットの中のすべてのメモリチップを順次較正するように構成された、請求項８に記載のシステム。
【請求項１３】
前記メモリチップの前記セットの中のメモリチップについての前記タイミング関係は、前記メモリチップの前記セットの中の前記メモリチップにアドレス情報および制御情報を提供するマルチドロップパスに沿って遅延が増える順に較正される、請求項８に記載のシステム。
【請求項１４】
前記メモリ制御装置は、読み出し動作時に前記データストローブ信号とデータストローブイネーブル信号との間のタイミング関係を調節するように構成された、請求項８に記載のシステム。
【請求項１５】
メモリシステムにおける書き込み動作の実行に関わる複数の信号の間のタイミング関係を較正する方法であって、
較正モード時に、メモリチップのセットの中のメモリチップにおいてメモリ制御装置から複数の信号を受信するステップを含み、
前記複数の信号は、
前記メモリチップの基準クロックとして用いられるクロック信号と、
前記クロック信号の中の特定クロックサイクルを識別するパルスを含む第１の信号と、
データ信号と一緒に送信され、前記メモリチップにおいて前記データ信号をメモリデバイスにストローブするために用いられる第２の信号と、
を含み、
前記方法は、
前記データストローブ信号と前記クロック信号との間のタイミング関係を較正することを、
前記第１の信号によって、前記クロック信号の前記特定のクロックサイクルに窓を掛けて窓掛けクロック信号を生成すること、
前記第２の信号によって、前記メモリチップの位相検出器において前記窓掛けクロック信号を捕捉すること、および、
前記捕捉された窓掛けクロック信号を前記メモリ制御装置に返すこと、
によって促すステップと、
をさらに含む、方法。
【請求項１６】
メモリシステム内の動作方法であって、
較正モードにおいて、クロック信号、マーキング信号、およびデータストローブ信号を含む複数の信号を、メモリ制御装置から、メモリチップのセットの中のメモリチップに送信するステップであって、前記マーキング信号は、前記クロック信号の特定のクロックサイクルをマーキングするパルスを含む、ステップと、
前記メモリチップからフィードバック信号を受信するステップであって、前記フィードバック信号は、前記マーキング信号を用いて前記クロック信号の前記特定のクロックサイクルに窓を掛けて窓掛けクロック信号を生成し、前記データストローブ信号を用いて前記窓掛けクロック信号を捕捉することにより、前記メモリチップにおいて生成されている、ステップと、
前記メモリ制御装置と前記メモリチップとの間に発生する、書き込み動作の実行に関わる複数の信号の間のタイミング関係を、前記フィードバック信号に基づいて較正するステップと、
を含む、方法。
【請求項１７】
書き込み動作の実行に関わる複数の信号の間のタイミング関係を、前記フィードバック信号に基づいて較正するステップは、前記データストローブ信号と前記クロック信号との間のタイミング関係を較正することを含む、請求項１６に記載の方法。
【請求項１８】
前記データストローブ信号および関連するデータ信号は、第１のパスを通って前記メモリチップに送信され、
前記クロック信号および前記マーキング信号は、第２のパスを通って前記メモリ制御装置に送信され、
前記第１のパスと前記第２のパスとの間の遅延差は、前記クロック信号の１クロック周期を超えてもよい、
請求項１６に記載の方法。
【請求項１９】
前記データストローブ信号および関連するデータ信号は、ダイレクトパスを通って前記メモリチップに送信され、
前記クロック信号および前記マーキング信号は、マルチドロップ方式でメモリチップの前記セットを通過するマルチドロップパスを通って前記メモリ制御装置に送信され、
前記クロック信号と前記データストローブ信号との間の遅延差は、前記クロック信号の１クロック周期を超えてもよい、請求項１６に記載の方法。
【請求項２０】
前記データストローブ信号と前記クロック信号との間の前記タイミング関係を較正することは、前記クロック信号に対して様々に遅延させたパルスを前記データストローブ信号上にアサートし、前記データストローブ信号と前記クロック信号とが揃っていることを示す遷移を、前記フィードバック信号において探すことを含む、請求項１６に記載の方法。
【請求項２１】
前記マーキング信号は、前記マルチドロップパス上の選択された信号線を通って前記メモリに伝達され、前記選択された信号線は、前記メモリシステムが前記較正モードでない場合には、別の信号を搬送する、請求項１６に記載の方法。
【請求項２２】
前記選択された信号線は、前記メモリシステムが前記較正モードでない場合には、書き込みイネーブル信号を搬送する、請求項２１に記載の方法。
【請求項２３】
前記メモリチップの前記セットの中のすべてのメモリチップについて繰り返される、請求項１６に記載の方法。
【請求項２４】
読み出し動作時に前記データストローブ信号と前記クロック信号との間のタイミング関係を調節するステップをさらに含む、請求項３３に記載の方法。
【請求項２５】
クロック信号を受信するメモリチップに結合されるメモリ制御装置であって、
較正モード時にマーキング信号およびデータストローブ信号を前記メモリチップに出力するインタフェースであって、前記マーキング信号は、前記クロック信号の中の特定のクロックサイクルを識別する、インタフェースと、
前記メモリチップからフィードバック信号を受信するフィードバック入力であって、前記フィードバック信号は、前記マーキング信号を用いて前記クロック信号の中の前記特定のクロックサイクルに窓を掛けて窓掛けクロックサイクルを生成し、前記データストローブ信号を用いて前記窓掛けクロックサイクルを捕捉することにより、前記メモリチップにおいて生成されている、フィードバック入力と、
前記フィードバック信号を解析して前記データストローブ信号と前記クロック信号との間のタイミング関係を較正する較正機構と、
を備える、メモリ制御装置。
【請求項２６】
前記データストローブ信号および関連するデータ信号は、第１のパスを通って前記メモリチップに送信され、
前記クロック信号および前記マーキング信号は、第２のパスを通って前記メモリ制御装置に送信され、
前記第１のパスと前記第２のパスとの間の遅延差は、１クロック周期を超えてもよい、
請求項２５に記載のメモリ制御装置。
【請求項２７】
前記データストローブ信号および関連するデータ信号は、直接パスを通って前記メモリチップに送信され、
前記クロック信号および前記マーキング信号は、マルチドロップ方式でメモリチップの前記セットを通過するマルチドロップパスを通って前記メモリ制御装置に送信され、
前記クロック信号と前記データストローブ信号との間の遅延差は、１クロック周期を超えてもよい、請求項２５に記載のメモリ制御装置。
【請求項２８】
前記較正機構は、前記クロック信号に対して様々に遅延させたパルスを前記データストローブ信号上にアサートし、前記データストローブ信号と前記クロック信号とが揃っていることを示す遷移を、前記フィードバック信号において探す、請求項２５に記載のメモリ制御装置。
【請求項２９】
前記マーキング信号は、前記マルチドロップパス上の選択された信号線を通って前記メモリに伝達され、前記選択された信号線は、前記メモリシステムが前記較正モードでない場合には、別の信号を搬送する、請求項５１に記載のメモリ制御装置。
【請求項３０】
前記選択された信号線は、前記メモリ制御装置が前記較正モードでない場合には、書き込みイネーブル信号を搬送する、請求項２９に記載のメモリ制御装置。
【請求項３１】
前記較正機構はさらに、読み出し動作時に前記データストローブ信号と前記データストローブイネーブル信号との間のタイミング関係を較正する、請求項２５に記載のメモリ制御装置。
【請求項３２】
書き込み動作の実行に関わる複数の信号の間のタイミング関係を較正することを促す半導体メモリデバイスであって、
クロック信号を受信するクロック入力と、
前記クロック信号の特定のクロックサイクルを識別するパルスを含むマーキング信号を、メモリ制御装置から受信する第１の入力と、
データストローブ信号を前記メモリ制御装置から受信する第２の入力と、
前記マーキング信号を用いて前記クロック信号の前記特定のクロックサイクルに窓を掛け、前記データストローブ信号を用いて前記窓掛けクロックサイクルを捕捉する位相検出器と、
前記捕捉された窓掛けクロックサイクルをフィードバック信号として前記メモリ制御装置に与える出力と、
を含む、半導体メモリデバイス。
【請求項３３】
前記位相検出回路は、
前記マーキング信号を用いて前記クロック信号の中の前記特定のクロックサイクルに窓を掛ける窓掛け回路と、
前記データストローブ信号を用いて前記窓掛けクロックサイクルを捕捉するメモリエレメントと、
を含む、請求項３２に記載の半導体メモリデバイス。
【請求項３４】
前記メモリエレメントは、前記データストローブ信号を用いて前記窓掛けクロックサイクルを捕捉するフリップフロップ回路である、請求項３３に記載の半導体メモリデバイス。
【請求項３５】
前記窓掛け回路は、
前記マーキング信号をクロック周期で取り込んで位相検出器イネーブル信号を生成する、一連のフリップフロップを含み、
前記一連のフリップフロップは、
前記半導体メモリデバイスの書き込み遅延時間に相当する遅延時間を有する、カスケード接続されたフリップフロップであって、前記クロック信号の第１のエッジ遷移をクロックとして前記マーキング信号を取り込むカスケード接続されたフリップフロップと、
前記カスケード接続されたフリップフロップの出力を、前記クロック信号の第２のエッジ遷移で捕捉して、位相検出器イネーブル信号を生成する追加のフリップフロップと、
を含む一連のフリップフロップと、
前記位相検出器イネーブル信号および前記クロック信号を受信する論理ゲートであって、前記論理ゲートの所定の論理機能に基づいて前記窓掛けクロックサイクルを生成する論理ゲートと、
を含む、請求項３３に記載の半導体メモリデバイス。
【請求項３６】
前記データストローブ信号および関連するデータ信号は、第１のパスを通って前記メモリ制御装置から受信され、
前記クロック信号および前記マーキング信号は、第２のパスを通って前記メモリ制御装置から受信され、
前記第１のパスから受信された複数の信号と、前記第２のパスから受信された複数の関連信号との間の遅延差は、前記クロック信号の１クロック周期を超えてもよい、
請求項３２に記載の半導体メモリデバイス。
【請求項３７】
メモリ制御装置内の動作方法であって、
前記メモリ制御装置は、クロック信号を受信するメモリチップと結合され、かつ、書き込み動作時に、データをストローブ信号とともに前記メモリチップに供給し、前記メモリデバイスは前記ストローブ信号を用いて前記データを捕捉し、
前記方法は、較正モード時には、
前記データストローブ信号とクロック信号との間のクロックサイクル関係を較正することを、
前記クロック信号に対する前記データストローブ信号の遅延をクロック周期単位で変化させること、
前記メモリチップ内の特定のロケーションに第１の値を書き込むこと、
前記メモリチップ内の前記特定のロケーションから第２の値を読み出すこと、および、
前記特定のロケーションから読み出した値が、前記特定のロケーションに書き込んだ値と一致するかどうかを検証することによって、前記データストローブ信号と前記クロック信号とが較正されているかどうかを判定すること、
を反復することによって行うステップを含む、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本実施形態は、主として、コンピュータシステム用メモリの書き込み動作の実行に必要な信号のタイミングを較正する手法に関する。
【図面の簡単な説明】
【０００２】
【図１】コンピュータシステムの一実施形態を示す図である。
【図２】位相検出器の一実施形態を示す図である。
【図３】メモリタイミング較正処理の一実施形態を示すフローチャートである。
【図４】メモリタイミングの較正を行う書き込み−読み出し−検証処理の一実施形態を示すフローチャートである。
【図５】読み出しデータアライメント設定を較正する処理の一例を示すフローチャートである。
【図６】読み出しデータアライメント設定を較正する処理の別の例を示すフローチャートである。
【図７】メモリタイミング較正処理の別の例を示すフローチャートである。
【図８】成功領域および失敗領域を示すグラフである。
【図９】修正された位相検出回路の一実施形態を示す図である。
【図１０】較正処理の一例を示すタイミング図である。
【図１１】較正位相検出回路の変形形態を示す図と、関連するタイミング図である。
【図１２】書き込みタイミング較正処理の一例を示すフローチャートである。
【図１３】システムの一実施形態を示すブロック図である。
【発明を実施するための形態】
【０００３】
以下の説明は、当業者が本開示の実施形態を作成および利用できるように行うものであり、特定の用途およびその要件の文脈で行うものである。本開示の実施形態に対する各種の修正は、当業者には自明であろう。また、本明細書において定義される一般原則は、本明細書の趣旨および範囲から逸脱することなく、他の実施形態および用途に適用可能である。したがって、本明細書は、図示された実施形態に限定されるものではなく、本明細書で開示される原理および特徴と矛盾しない最も広い範囲を与えられるものとする。
【０００４】
書き込み動作の実行に関わる複数の信号の間のタイミング関係を較正する装置の実施形態を説明する。これらの実施形態の１つとして、メモリチップのセットに結合されたメモリ制御装置がある。これらのメモリチップのそれぞれには位相検出器が含まれ、位相検出器は、メモリチップにおいてメモリ制御装置から受信したデータストローブ信号およびクロック信号の間の位相関係の較正を可能にするように構成されている。さらに、メモリ制御装置は、１つまたは複数の書き込み−読み出し−検証の動作を実行してデータストローブ信号とクロック信号との間のクロックサイクル関係を較正するように構成されており、この書き込み−読み出し−検証の動作では、クロック信号に対するデータストローブ信号の遅延をクロック周期単位で変化させる。
【０００５】
実施形態によっては、メモリチップのセットは、フライバイトポロジを介してメモリ制御装置と結合されており、クロック信号は、「フライバイパス」を通ってマルチドロップ方式で、メモリ制御装置からメモリチップのセットへルーティングされ、データ信号およびデータストローブ信号は、直接接続によって、メモリ制御装置からメモリチップのセットへルーティングされる。なお、フライバイパス上のクロック信号と直接パス上のデータストローブ信号との間の遅延差に起因する「フライバイ遅延分離（delay separation）」は、１クロック周期を超えてもよい。実施形態によっては、フライバイパスに沿って遅延が増える順にメモリチップを較正する。
【０００６】
実施形態によっては、メモリ制御装置は、データストローブ信号とクロック信号との間の位相関係を較正する際に、クロック信号に対して様々に遅延させたパルスをデータストローブ信号上にアサートして、データストローブ信号およびクロック信号の位置が揃っていることを示す遷移を、位相検出器の出力において探すように構成されている。
【０００７】
実施形態によっては、メモリ制御装置は、クロックサイクル関係を較正する際に、クロック信号に対するデータストローブ信号の遅延をクロック周期単位で変化させるステップと、メモリチップ内の特定のロケーションに値を書き込むステップと、そのメモリチップ内の特定のロケーションから値を読み出すステップと、その特定のロケーションから読み出した値が、その特定のロケーションに書き込んだ値と一致するかどうかを検証することによって、データストローブ信号とクロック信号とが較正されているかどうかを判定するステップと、を連続的に実行するように構成されている。
【０００８】
実施形態によっては、本装置は、メモリチップのセットのすべてのメモリチップを順次較正するように構成されている。
【０００９】
実施形態によっては、較正は、ロバストなデータパターンを用いて最大メモリ速度で実行される。
【００１０】
実施形態によっては、メモリ制御装置はさらに、読み出し動作時にデータストローブ信号とデータストローブイネーブル信号との間のタイミング関係を調節するように構成されている。
【００１１】
実施形態によっては、メモリシステムの書き込み動作の実行に関わる複数の信号の間のタイミング関係を較正する、別のシステムを提供する。本システムは、較正モード時には、メモリチップのセットの中のメモリチップにおいて複数の信号を受信する。これらの信号は、メモリ制御装置からのクロック信号、マーキング信号、データストローブ信号などであり、マーキング信号は、クロック信号の中の特定のクロックサイクルをマーキングするパルスを含む。次に、本システムは、マーキング信号を用いてクロック信号の中の特定クロックサイクルに窓を掛けて窓掛けクロック信号を生成することにより、データストローブ信号とクロック信号との間のタイミング関係の較正を容易にする。次に、本システムは、メモリチップ上の位相検出器において、データストローブ信号を用いて窓掛けクロック信号を捕捉する。最後に、本システムは、メモリ制御装置がタイミング関係を較正できるように、捕捉した窓掛けクロック信号をメモリ制御装置に返す。
【００１２】
実施形態によっては、マーキング信号は、フライバイパス上の選択された信号線を通ってメモリ制御装置からメモリに伝達される。選択された信号線は、メモリシステムが較正モードでない場合には、別の信号を搬送する。
【００１３】
実施形態によっては、選択された信号線は、メモリシステムが較正モードでない場合には、書き込みイネーブル信号を搬送する。
【００１４】
実施形態によっては、データストローブ信号を用いて窓掛けクロック信号を捕捉する際に、データストローブ信号をクロックとして、窓掛けクロック信号をフリップフロップに取り込むことが必要である。
【００１５】
実施形態によっては、書き込み動作の実行に必要な複数の信号の間のタイミング関係の較正を容易にする半導体メモリデバイスが開示されている。本メモリデバイスは、クロック信号を受信するクロック入力を含んでいる。さらに、本メモリデバイスは、メモリ制御装置からマーキング信号を受信する第１の入力を含んでいる。マーキング信号は、クロック信号の中の特定クロックサイクルをマーキングするパルスを含む。本メモリデバイスはさらに、メモリ制御装置からデータストローブ信号を受信する第２の入力と、位相検出器とを含んでいる。位相検出器は、マーキング信号を用いてクロック信号の中の特定クロックサイクルに窓を掛け、さらに、データストローブ信号を用いて窓掛けクロックサイクルを捕捉する。本メモリデバイスは、捕捉した窓掛けクロックサイクルをフィードバック信号としてメモリ制御装置に与える出力を含んでいる。
【００１６】
実施形態によっては、メモリ制御装置は、クロック信号を受信するメモリチップと結合されており、データストローブ信号とクロック信号との間のクロックサイクル関係を較正する較正モードを含んでおり、較正は、クロック信号に対するデータストローブ信号の遅延をクロック周期単位で変化させるステップと、メモリチップ内の特定のロケーションに第１の値を書き込むステップと、その、メモリチップ内の特定のロケーションから第２の値を読み出すステップと、その特定のロケーションから読み出した値が、その特定のロケーションに書き込んだ値と一致するかどうかを検証することによって、データストローブ信号とクロック信号とが較正されているかどうかを判定するステップと、を反復することによって行われる。
【００１７】
実施形態によっては、本システムは、クロック信号の立ち上がりエッジをクロックとして、マーキング信号を、全体遅延がＤＲＡＭの書き込み遅延に相当するカスケード接続されたフリップフロップに通すことにより、窓掛けクロック信号を生成する。このカスケード接続の出力がクロックの立ち下がりエッジで取り込まれて、位相検出器イネーブル信号が作成される。次に、本システムは、位相検出器イネーブル信号とクロック信号との論理積をとることにより、窓掛けクロック信号を生成する。
【００１８】
コンピュータシステム
メモリシステムは非常に高い（たとえば、１０００メガ転送／秒（「ＭＴ／ｓ」）を超える）データレートで動作を開始するため、要求されるレベルのシグナリング性能を達成するためには、「フライバイ」メモリトポロジを用いることが可能である。たとえば、図１に示したコンピュータシステム１００を参照されたい。コンピュータシステム１００は、処理装置１０４を含んでおり、処理装置１０４は、メモリ制御装置１０２を介してデュアルインラインメモリモジュール（「ＤＩＭＭ」）１０６と通信している。このコンピュータシステムは、フライバイレイアウトトポロジを有しており、このトポロジでは、１つまたは複数の要求（ＲＱ）信号およびクロック（ＣＫ）信号を含む制御信号が、メモリ制御装置１０２から複数の同期動的ランダムアクセスメモリ（「ＳＤＲＡＭ」または「ＤＲＡＭ」）チップ１１０〜１１７にルーティングされる。本実施形態では、ＤＩＭＭ  １０６内の制御信号およびクロック信号が、フライバイパス１０８を用いたマルチドロップ方式で、ＤＲＡＭチップ１１０〜１１７のそれぞれと結合されている。要求信号は、アドレス信号を含むことが可能であり、（一実施形態ではパターン長が互いに等しい）複数の信号線と、クロック信号線とによって伝搬される。要求信号およびクロック信号は、フライバイパス１０８を伝搬し、ＤＲＡＭチップ１１０〜１１７のそれぞれにおいて順番に受信される。同時に、データストローブ（ＤＱＳ）信号およびデータ（ＤＱ）信号は、ＤＩＭＭ  １０６内のＤＲＡＭチップ１１０〜１１７のそれぞれに直接ルーティングされ、そのため、フライバイパスによる遅延がない。
【００１９】
一実施形態では、データストローブ（ＤＱＳ）信号およびデータ（ＤＱ）信号は、各ＤＲＡＭチップごとに、メモリ制御装置１０２の専用ＤＱインタフェースポートと、ＤＱインタフェースとの間を、ポイントツーポイントでルーティングされる。複数のランクをサポートするシステムでは、直接接続は、メモリ制御装置１０２の専用ＤＱインタフェースポートと、各ランク内の対応するＤＲＡＭチップの各ＤＱインタフェースの接続点との間で、データストローブ（ＤＱＳ）信号およびデータ（ＤＱ）信号をルーティングすることを必要とする場合がある。「ランク」は、ひとまとまりのＤＲＡＭチップであって、あるランクのＤＲＡＭチップに与えられたメモリアクセスコマンドへの応答として行われるメモリ転送に寄与するひとまとまりのＤＲＡＭチップである。（それぞれが単一ランクまたはデュアルランクを有する）複数のＤＩＭＭモジュールをサポートするシステムでは、直接接続は、メモリ制御装置の各専用ＤＱインタフェースポートと、各ＤＩＭＭモジュール内の対応するＤＲＡＭチップの各ＤＱインタフェースの接続点との間で、データストローブ（ＤＱＳ）信号およびデータ（ＤＱ）信号をルーティングすることを必要とする場合がある（なお、本明細書全体を通じて、「ＤＲＡＭチップ」を「ＤＲＡＭ」と称する場合がある）。
【００２０】
一実施形態では、データストローブ信号（ＤＱＳ）は、データ信号（ＤＱ）と一緒にルーティングすることが可能であり、集積回路（すなわち、メモリ制御装置またはＤＲＡＭ）のレシーバにおいてデータを受信するために用いる。たとえば、書き込み動作時に、メモリ制御装置がデータをＤＲＡＭに送信している場合、メモリ制御装置は、ＤＱＳ信号をデータと一緒に送信し、ＤＱＳ信号は、ＤＲＡＭにおいて、そのデータを受信するために用いられる。読み出し動作時には、ＤＲＡＭがデータをメモリ制御装置に送信している場合、ＤＲＡＭは、メモリ制御装置に送信するデータと一緒にＤＱＳ信号を送信する。ＤＱＳ信号は、メモリ制御装置で受信された後、そのＤＱＳ信号と一緒に送信されたデータをストローブするために用いられる。ＤＱＳ信号は、読み出し動作および書き込み動作両用の単一の双方向信号線で送信してよく、あるいは、読み出し動作および書き込み動作のそれぞれに対して別々の単方向信号線を用意してもよい。
【００２１】
フライバイレイアウトトポロジで構成されたメモリシステムを特徴とする一実施形態では、ＲＱ／ＣＫ伝搬遅延は、フライバイ信号パスからＲＱ信号およびＣＫ信号を受信するＤＲＡＭのそれぞれに対して増加していく。このため、連続する各ＤＲＡＭごとに、受信されるＲＱ/ＣＫ信号とＤＱ/ＤＱＳ信号との間のスキューが増加していく。書き込みトランザクション時にこの作用を補償するために、メモリ制御装置１０２は、連続するＤＲＡＭのそれぞれにＲＱ/ＣＫが送信されるタイミングに対して増加していくＤＱ/ＤＱＳ送信遅延を導入する。同様に、読み出しトランザクション時には、メモリ制御装置１０２は、連続するＤＲＡＭのそれぞれに対して増加していくＤＱＳ読み出しイネーブル受信サンプル遅延を導入する。メモリ制御装置１０２によって導入される、これらの書き込み遅延および読み出し遅延を、それぞれ「書き込み平準化」遅延および「読み出し平準化」遅延と称する。
【００２２】
また、読み出しトランザクション時には、フライバイ信号パスからＲＱ信号およびＣＫ信号を受信する、連続するＤＲＡＭのそれぞれに対して最適読み出しデータアライメント設定が増加していき、フライバイ信号パスの最後尾にあるＤＲＡＭに必要な読み出しデータアライメント設定が最大になる可能性がある。この最大読み出しデータアライメント設定が決定すれば、これを用いてすべてのＤＱ／ＤＱＳグループについて設定を計算することにより、メモリ制御装置１０２のＤＱブロックのそれぞれにおいて受信される読み出しデータのアライメントを行うことが可能である。
【００２３】
一実施形態では、ＤＤＲ３規格（JEDEC Solid State Technology Associationによって公布されたJESD79-3）に従って設計されたＤＲＡＭチップに、タイミング調節を容易にする回路を組み込むことが可能である。たとえば、図２は、ＤＲＡＭチップ２００内にある位相検出回路を示しており、この回路は、フライバイパス上のクロック信号と、直接パス上のデータストローブ信号との間の位相調節を容易にする。この位相検出回路では、演算増幅器２０９が、ＣＫ信号２０１およびＣＫ＃信号２０２からなる差動クロック信号を、非差動クロック信号２１２に変換する。同様に、演算増幅器２１０が、ＤＱＳ信号２０３およびＤＱＳ＃信号２０４からなる差動ストローブ信号を、非差動データストローブ信号２１４に変換する。次に、非差動データストローブ信号２１４をクロックとして、非差動クロック信号２１２がフリップフロップ２０６に取り込まれる。フリップフロップ２０６の出力は、フィードバックパス２１１を通り、多重化器２０７を通り、ドライバ２０８を通って、データ線ＤＱ  ２０５にフィードされる。なお、多重化器２０７は、平準化モード信号２１３の値に基づいて、フリップフロップ２０６の出力を選択的にデータ線ＤＱ  ２０５にフィードする。これにより、メモリ制御装置１０２は、クロック信号２１２およびデータストローブ信号２１４の位相が揃っているかどうかを判定することが可能になり、これによって、メモリ制御装置１０２（図１）は、クロック信号２１２に対して様々に遅延させたパルスをデータストローブ信号２１４上にアサートして、データ線ＤＱ  ２０５上に現れる遷移を、位相検出器の出力において探すことにより、データストローブ信号２１４とクロック信号２１２との間の位相関係を較正することが可能になる。
【００２４】
図２を参照して上述した実施形態では、上述の位相検出回路によるタイミング調節の結果が、調節処理において書き込み／読み出しのデータ完全性が検証されていないために正しくないという状況が起こりうる。特に、クロック信号とデータストローブ信号との間のフライバイ遅延分離が１クロック周期を超える場合は、上述のタイミング調節処理において位相関係が適正に調節されるが、このタイミング調節は、クロック周期単位でずれる可能性がある。
【００２５】
そのような状況を考慮するために、タイミング調節処理において書き込み／読み出しのデータ完全性を検証する実施形態を以下に示す。そのような検証を行うことで、それらの実施形態は、対象ＤＲＡＭにおいて、ロバストなデータパターンの書き込みおよび読み出しを行い、かつ、トポロジ内の他のＤＲＡＭにデータパターンを同時伝達することにより、タイミング調節処理において、スイッチングノイズの実際的な影響を明らかにすることが可能になる。
【００２６】
ＤＲＡＭ較正処理
図３は、メモリタイミング較正処理の一実施形態を示すフローチャートである。本実施形態では、以下の事柄を、本較正処理の前提とする。（１）要求（ＲＱ）信号とクロック（ＣＫ）信号との間のタイミング関係は、ＲＱとＣＫとの間の推定平均スキューを補償するように設定されているものとする。（２）各ＤＱ／ＤＱＳグループごとのデータ信号（ＤＱ）とデータストローブ信号（ＤＱＳ）との間のタイミング関係は、ＤＱとＤＱＳとの間の推定平均スキューを補償するように設定されているものとする。（３）また、ＤＲＡＭは、ＲＱ／ＣＫ遅延が増えていく順番で連続して処理されるものとする。（４）さらに、どの２つのＤＱ／ＤＱＳグループの間のスキューも、１ＣＫサイクルよりはかなり小さいものとする。
【００２７】
図３を参照すると、本処理は、読み出し較正（読み出し平準化）処理を実行すること（オペレーション３０２）から始まり、オペレーション３０２では、（図１に示したフライバイＲＱおよび直接ＤＱのトポロジに結合されたＤＲＡＭセットの）各ＤＲＡＭにあるレジスタまたは他の記憶装置が、あらかじめ定義されたデータパターンをメモリ制御装置に供給する。フライバイＲＱバス上でメモリ制御装置から最も近くに位置する（したがって、ＲＱ／ＣＫフライト時間遅延が最小である）ＤＲＡＭは、フライバイＲＱバス上でメモリ制御装置から最も遠くに位置する（したがって、ＲＱ／ＣＫフライト時間遅延が最大である）ＤＲＡＭより先に、あらかじめ定義されたデータパターンを送信する。次に、メモリ制御装置は、メモリ制御装置における各受信ＤＱブロックごとの受信タイミングオフセットを決定することが可能であり、これは、たとえば、各受信ＤＱブロックの読み出しデータストローブイネーブル遅延を、受信した読み出しデータストローブと正確に揃うように調節することによって可能である。受信した読み出しデータストローブの到着時刻は、対応するＤＲＡＭで受信された読み出しコマンドの伝搬遅延に応じて決まる。
【００２８】
本システムがオペレーション３０２で較正処理に成功しなかった場合、本システムは、エラーを信号で伝える（オペレーション３０４）。成功した場合、本システムは、書き込み較正（書き込み平準化）処理を実行する（オペレーション３０６）（なお、この書き込み較正処理は、一実施形態では、図２に示したような、各ＤＲＡＭ内にある位相検出回路を利用することが可能である）。一実施形態では、書き込み較正処理は、ＤＱＳストローブ信号を供給することを含み、（図１に示したフライバイＲＱおよび直接ＤＱのトポロジに結合されたＤＲＡＭセットの）各ＤＲＡＭが、このＤＱＳストローブ信号を用いてクロック信号ＣＫをサンプリングし、その結果を直接ＤＱ線でメモリ制御装置に返す。書き込み較正処理では、メモリ制御装置は、次に、メモリ制御装置における各送信ＤＱブロックごとの送信タイミングオフセットを決定することにより、たとえば、各ＤＲＡＭにおいて連続して受信される、対応する書き込みコマンドの伝搬遅延に起因する書き込みデータスキューを平準化することが可能である。
【００２９】
書き込み較正処理（オペレーション３０６）後は、クロック信号およびデータストローブ信号の位相が揃っているはずであるが、これらの信号のタイミングはさらに、クロック周期単位でずれている可能性がある。この問題を解消するために、一実施形態では、本システムは、拡張書き込み−読み出し−検証書き込み較正最適化を実行する（オペレーション３０８）（この処理については、後で図４を参照して詳述する）。本システムはさらに、拡張書き込み−読み出し−検証読み出し較正最適化を実行することが可能である（オペレーション３１０）。
【００３０】
図４は、書き込みタイミングの較正を行う書き込み−読み出し−検証処理の一例を示すフローチャートである。この処理の開始時には、本システムは、クロック信号に対するデータストローブ信号の遅延を、書き込み較正処理で取得した値に設定する（オペレーション４２０）。これは、書き込み較正処理において、そのＤＱＳ遅延検索が最小遅延設定から開始されたことを前提としている。次に、本システムは、ＤＲＡＭの特定のロケーションに値を書き込み（オペレーション４２２）、次に、同じロケーションから値を読み出す（オペレーション４２４）。次に、本システムは、そのメモリロケーションに書き込んだ値とそのメモリロケーションから読み出した値とが一致するかどうかを判定する（オペレーション４２６）。一致しない場合、本システムは、遅延を１クロック周期だけ増加させて（オペレーション４２８）、オペレーション４２２に戻る。一方、値が一致した場合は、書き込み動作が成功したことになり、このことは、本システムが較正済みであり、したがって、較正処理が完了したことを示している。
【００３１】
読み出しデータアライメント較正
一実施形態では、本システムはさらに、異なる複数のＤＲＡＭデバイスからの読み出しデータのずれを補償する較正が必要である。フライバイトポロジを用いたシステムにおいて構成された、連続する複数のＤＲＡＭデバイスからの読み出しデータは、連続的に増加した遅延でメモリ制御装置に到着する。一実施形態では、読み出しアライメント処理は、メモリ制御装置における連続するＤＱレシーバブロックに読み出しデータをキューイングすることを含む。
【００３２】
異なる複数のＤＲＡＭデバイスからの読み出しデータは、連続的に増加した遅延でメモリ制御装置に到着した後、メモリ制御装置内の一回路で受信され、この回路で一時的に保存されてから、メモリ制御装置のクロックと内部的に揃えられ、さらなる処理が行われる。「読み出しアライメント」（「読み出しデータアライメント」とも呼ばれる）は、読み出しデータが、たとえば、メモリ制御装置内の先入れ先出しバッファ（「ＦＩＦＯ」）から出力されてメモリ制御装置のコアに供給される際に、読み出しデータを同じクロック信号と同期させることを含む。このクロック信号は、データのスライスごとに異なる読み出しデータストローブイネーブル信号と同じではなく、ＦＩＦＯへのデータの書き込みを可能にする。ＦＩＦＯの代わりに、あるいはＦＩＦＯと組み合わせて、バッファ回路エレメントおよび／またはフリップフロップ回路エレメントを使用することが可能である。
【００３３】
より具体的に説明すると、図５は、読み出しデータアライメント設定を較正する処理の一実施形態を示すフローチャートである。本システムは、まず、すべてのＤＲＡＭを、可能な最小の読み出しデータアライメント設定に設定する（オペレーション５０２）。次に、本システムは、図３で既に説明した手法を用いて１つのＤＲＡＭを較正し（オペレーション５０４）、次に、そのＤＲＡＭの較正処理が成功したかどうかを判定する（オペレーション５０６）。そのＤＲＡＭの較正処理が成功しなかった場合、本システムは、現在の読み出しデータアライメント設定を増やして（オペレーション５０８）、オペレーション５０４に戻る。一方、ＤＲＡＭの較正処理が成功した場合、本システムは、較正すべき別のＤＲＡＭが存在するかどうかを判定する（オペレーション５１０）。存在する場合、本システムは、オペレーション５０４に戻って、次のＤＲＡＭを較正する。存在しない場合、本システムは、すべてのＤＲＡＭにわたる最大の読み出しデータアライメント設定を決定し（オペレーション５１２）、すべてのＤＲＡＭについての読み出しデータアライメント設定を、この最大設定に設定する（オペレーション５１４）。
【００３４】
次に、本システムは、較正すべき別のランクのＤＲＡＭが存在するかどうかを判定する（オペレーション５１６）。存在する場合、本システムは、オペレーション５０２に戻って、次のランクのＤＲＡＭを較正する。一方、さらなるランクのＤＲＡＭがない場合、処理は完了する。
【００３５】
図６に示した代替実施形態では、読み出しアライメント設定を、可能な最大設定に初期化した後、減らす。より具体的に説明すると、この代替実施形態では、本システムは、まず、すべてのＤＲＡＭを、可能な最大の読み出しデータアライメント設定に設定する（オペレーション６０２）。次に、本システムは、図３で既に説明した手法を用いて１つのＤＲＡＭを較正し（オペレーション６０４）、次に、較正すべき別のＤＲＡＭが存在するかどうかを判定する（オペレーション６０６）。存在する場合、本システムは、オペレーション６０４に戻って、次のＤＲＡＭを較正する。存在しない場合、本システムは、各ＤＲＡＭごとの読み出しイネーブル遅延設定を決定し（オペレーション６０８）、次に、すべてのＤＲＡＭにわたる最大の読み出しデータアライメント設定を決定する（オペレーション６１０）。次に、本システムは、すべてのＤＲＡＭについての読み出しデータアライメント設定を、この最大設定に設定する（オペレーション６１２）。
【００３６】
次に、本システムは、較正すべき別のランクのＤＲＡＭが存在するかどうかを判定する（オペレーション６１４）。存在する場合、本システムは、オペレーション６０２に戻って、次のランクのＤＲＡＭを較正する。一方、さらなるランクのＤＲＡＭがない場合、処理は完了する。
【００３７】
１つのＤＲＡＭのついての２Ｄ書き込み−読み出し−検証較正手法
図７は、２次元（「２Ｄ」）書き込み−読み出し−検証較正手法を用いるメモリタイミング較正処理の代替実施形態を示すフローチャートである。この２Ｄ検索手法では、２パス方式を用いる。第１パスでは、送信位相設定および受信位相設定（それぞれ、書き込み平準化遅延および読み出し平準化遅延）に粗ステップサイズを用いる（オペレーション７０２）。本システムは、まず、送信位相を、２Ｄ検索領域の原点から増分させながら進める。本システムは、各送信位相ごとに、受信位相を増分させながら進めることによって「粗パス」領域を見つけようとする。本システムは、十分大きな粗パス領域が見つかるまで、送信位相をいっぱいまで進め続ける。これが発生した時は第１パスを終了し、最終送信位相を、本手法の第２パスのためのシード（seed）として用いる。
【００３８】
本システムが粗パス領域を見つけられず、したがって、第１パスが成功しなかった場合、本システムは、エラーを信号で伝える（オペレーション７０５）。
【００３９】
一方、本システムが粗パス領域を見つけることに成功した場合、本システムは、ＤＱＳ読み出しイネーブル遅延中心を探す細密ステップサイズの検索を実行し（オペレーション７０６）、次に、ＤＱ／ＤＱＳ書き込み遅延中心を探す細密ステップサイズの検索を実行する（オペレーション７０８）。より具体的に説明すると、第２パスでは、細密ステップサイズを受信位相設定に用いて、第１パス送信位相の間に生成されたシードから始めて、第１パス送信位相を囲む全体パス領域を見つける。その後、この領域の中心を見つけ、その中心受信位相を最適受信位相設定として用いる。第２パスでは、次に、細密ステップサイズを受信位相設定に用いて、この中心受信位相から始めて、中心受信位相設定を囲む全体パス領域を見つける。その後、本システムは、この領域の中心を見つけ、その中心送信位相を送信位相設定として用いる。
【００４０】
なお、上述の２Ｄ較正手法は、たとえば、ＤＤＲ２  ＳＤＲＡＭチップまたは他のタイプのメモリデバイスに用いることが可能である。したがって、図５のフロー図のオペレーション５０４をこの２Ｄ手法に置き換えれば、図５のフロー図が使用可能になる。代替として、図６のフロー図のオペレーション６０４をこの２Ｄ手法に置き換えれば、図６のフロー図が使用可能になる。
【００４１】
図８は、成功領域および失敗領域を示すグラフである。なお、上述の２Ｄ検索は、読み出しイネーブル遅延と書き込みイネーブル遅延との可能なすべての組み合わせに対して２Ｄ成功領域８０２を識別するものである。
【００４２】
位相検出回路１
図９は、（たとえば、１クロックサイクルより大きなＤＲＡＭフライバイ遅延分離に対する書き込みタイミング較正を容易にすることが可能な）位相検出回路の一実施形態を示す。この位相検出回路では、マーキングパルスが、たとえば、書き込みイネーブル（「ＷＥ＃」）信号線９００において受信され、このマーキングパルスは、クロック信号２０１の立ち上がりエッジおよび立ち下がりエッジをそれぞれクロックとして用いる２つのＤフリップフロップ（D-flops）９０１および９０２を経てフィードされる。これにより、所望の時間スロットに対応する窓を有する位相検出器イネーブル信号（ＰＤＥＮ）９０６が生成される。次に、ＰＤＥＮ信号９０６とクロック信号９０４との論理積をとることにより、窓掛けクロック信号９０８が生成される。一実施形態では、ＷＥ＃は、ＣＫと一緒にフライバイパスを通ってルーティングされ、伝搬する。
【００４３】
次に、データストローブ信号（ＤＱＳ）２０３をクロックとして、窓掛けクロック信号９０８がフリップフロップ９０５に取り込まれる。フリップフロップ９０５の出力は、フィードバックパス９０５を通り、多重化器９１８を通って、データ線ＤＱ  ２０５にフィードされる。なお、多重化器９１８は、平準化モード信号９１０の値に基づいて、フリップフロップ２０６の出力を選択的にデータ線ＤＱ  ２０５にフィードする。
【００４４】
このフィードバック信号により、メモリ制御装置は、クロック信号２０１とＤＱＳ  ２０３が揃っているかどうかを判定することが可能になり、これによって、メモリ制御装置は、クロック信号２０１に対して様々に遅延させたパルスをＤＱＳ  ２０３上にアサートして、データ線ＤＱ  ２０５上に現れる遷移を、位相検出器の出力において探すことにより、ＤＱＳ  ２０３とクロック信号２０１との間のタイミング関係を較正することが可能になる。
【００４５】
なお、このマーキングパルスの伝達には、フライバイパス上の任意のコマンド線または制御線を用いることが可能である。したがって、この目的のためには、ＷＥ＃コマンド線の代わりに別のコマンド線または制御線を用いることも可能なので、特定のコマンド線ＷＥ＃を用いることは必須ではない（たとえば、様々な実施形態において、ＷＥ＃の代わりに、ＲＡＳ＃、ＣＡＳ＃などのコマンド線、あるいは、チップセレクト（ＣＳ＃）やクロックイネーブル（ＣＫＥ＃）などの制御線を用いることが可能である）。本実施形態では、ＷＥ＃コマンド線を用いているが、これは、ＷＥ＃コマンド線が、通常動作時（すなわち、非較正モード動作時）にメモリ書き込み機能に関連付けられているためである。
【００４６】
窓掛けクロック信号９０８は、生成された後に、ＤＱＳ信号２０３をクロックとしてフリップフロップ９０５に取り込まれる。図２に示した回路と同様に、フリップフロップ９０５の出力は、フィードバックパス９０７を通り、多重化器９１８を通って、データ線ＤＱ  ２０５にフィードされる。この処理において、多重化器９１８は、平準化モード信号９１０の値に基づいて、フリップフロップ９０５の出力を選択的にデータ線ＤＱ  ２０５にフィードする。したがって、平準化モード動作の間に、メモリ制御装置は、窓掛けクロック信号９０８およびデータストローブ信号ＤＱＳ  ２０３の位相が揃っているかどうかを判定することが可能である。これによって、メモリ制御装置は、窓掛けクロック信号９０８に対して様々に遅延させたパルスをＤＱＳ信号２０３上にアサートして、データ線ＤＱ  ２０５上に現れる遷移を、位相検出器の出力において探すことにより、ＤＱＳ信号２０３と窓掛けクロック信号９０８との間のタイミング関係を較正することが可能になる。
【００４７】
これに対し、ＤＲＡＭフライバイ遅延分離が１クロックサイクルを超える場合、図９に示した回路がゼロから１への遷移を発生させるのは、ＤＱＳ信号２０３およびクロック信号２０１の位相が揃っていて、さらに、適正なクロックサイクルに対してこれらの位置が揃っている場合だけである。この点は、図２に示した回路と異なる。図２の回路がゼロから１への遷移を発生させるのは、ＤＱＳ信号２０３およびクロック信号２０１の位相が揃っていて、適正なクロックサイクルに対してこれらの位置が揃っていない場合である。
【００４８】
較正処理
図１０は、図９に示した回路を用いる較正処理の一例を示すタイミング図である。図１０の上部は、メモリ制御装置側の信号のタイミングを示しており、図１０の下部は、メモリチップ（ＤＲＡＭ）側の信号のタイミングを示している。図１０では、メモリ制御装置は、クロック信号（ＣＫ  ２０１）およびデータストローブ信号（ＤＱＳ  ２０３）をＤＲＡＭに送信する。
【００４９】
図１０に示したように、ＤＱＳパルスがメモリ制御装置によってアサートされる。本実施形態では、ＤＲＡＭを収容しているＤＩＭＭへのＣＫ信号およびすべてのＤＱＳ信号が、回路基板上で等長配線によりルーティングされている。回路基板上でのフライトの時間を経て、ＣＫおよびＤＱＳは、ＤＩＭＭ内の各ＤＲＡＭに伝搬する。この処理において、ＤＱＳ信号は、それぞれ等しい距離を経て、ＤＩＭＭ内の各ＤＲＡＭにルーティングされる。一方、ＣＫは、フライバイパスを通って連続的に各ＤＲＡＭにルーティングされる。この結果、フライバイパス沿いの各ＤＲＡＭにおいてＣＫとＤＱＳとの間のスキューが連続的に増えていく。メモリクロック速度が増え続けると、これらのＤＲＡＭフライバイ遅延分離は１クロックサイクルを超え始める。この結果、ＣＫとＤＱＳとの間のスキューは、１クロックサイクルより大きくなる。一実施形態では、少なくとも１つのコマンド信号（たとえば、ＷＥ＃）が、ＣＫと一緒にフライバイパスを通ってルーティングされ、伝搬する。
【００５０】
図１０のＤＲＡＭ側で、ＤＱＳパルスに付けた矢印が示すように、較正処理では、ＣＫに対してＤＱＳパルス遅延を掃引することにより、標準的な位相検出器の出力においてゼロから１への遷移を見つける。ゼロから１への遷移が検出されることは、ＣＫとＤＱＳとの間の位相が正確に揃っていることを示す。
【００５１】
なお、メモリ制御装置は、ＤＱＳパルスがアサートされる１クロックサイクル前に、ＷＥ＃信号９００をアサートする。メモリ制御装置とＤＲＡＭとの間を信号が伝搬した後、ＣＫ信号２０１とＤＱＳ信号２０３との間には、１クロックサイクルを超えるスキューが存在する。図９の回路に示すように、ＷＥ＃信号９００は、ステージされ、反転されて、所望のＣＫ時間スロットに窓を掛ける。その結果として得られる窓信号ＰＤＥＮにより、図１０の下部に示したように、遷移の誤検出が防止される。
【００５２】
位相検出回路２
図１１は、ＤＲＡＭ内で利用可能な位相検出回路の一実施形態を、関連するタイミング図とともに示したものである。この実施形態は、図９に示した実施形態と同様であり、ＷＥ＃信号９００が、（フリップフロップ９０１を通ってではなく）ＤＲＡＭ上のＷＥ＃信号９００用ステージ回路を通ってステージされている点が異なる。
【００５３】
より具体的に説明すると、ＷＥ＃信号９００は、第１の可変長シフタ１１０２および第２の可変長シフタ１１０４を通ってステージされ、第１の可変長シフタ１１０２は、追加遅延（ＡＬ）用であって遅延はＡＬにプログラムされており、第２の可変長シフタ１１０４は、ＣＡＳ書き込み遅延（ＣＷＬ）用であって、遅延は＝ＣＷＬ−１にプログラムされており、この「１」は、フリップフロップ９０２を通る際の遅延に相当する。追加遅延は、カラムコマンド（たとえば、読み出しコマンドや書き込みコマンド）がＤＲＡＭで受信されてから、そのコマンドが内部で適用またはポストされるまでのプログラム可能な遅延であり、そのコマンドがいつ内部的に実行開始されるのかを示すものである。書き込み遅延は、書き込みコマンドが内部で適用またはポストされてから、その書き込みコマンドに関連付けられたデータがＤＲＡＭによってサンプリングされるまでのプログラム可能な遅延である。このステージ回路を用いることにより、メモリ制御装置は、通常動作時と同じ書き込み遅延で書き込み較正処理を実行することが可能である。
【００５４】
較正処理
図１２は、書き込みタイミング較正処理の一実施形態を示すフローチャートである。この処理では、クロック信号、マーキング信号、およびデータストローブ信号を、メモリ制御装置からメモリチップに送信する（オペレーション１２０２）。次に、マーキング信号を用いて、クロック信号の中の特定のクロックサイクルに「窓を掛ける」（オペレーション１２０４）。これにより、窓掛けクロック信号が生成される。
【００５５】
次に、データストローブ信号上のパルスを用いて、窓掛けクロック信号をメモリエレメントに捕捉する（オペレーション１２０６）。次に、この捕捉した窓掛けクロック信号を、フィードバック信号としてメモリ制御装置に戻す（オペレーション１２０８）。
【００５６】
次に、メモリ制御装置は、このフィードバック信号を用いて、クロック信号とデータストローブ信号との間のタイミング関係を較正する（オペレーション１２１０）。たとえば、この較正処理は、クロック信号に対して様々に遅延させたパルスをデータストローブ信号上にアサートすることを伴って、データストローブ信号とクロック信号とが揃っていることを示す遷移を、位相検出器の出力において探すことが可能である。
【００５７】
なお、図１〜１２に含まれる構成要素またはオペレーションは、より少なくても、より多くてもよい。さらに、２つ以上の構成要素またはオペレーションを１つの構成要素またはオペレーションにまとめることが可能であり、かつ／または、１つまたは複数の構成要素またはオペレーションの位置を変更することが可能である。
【００５８】
さらに、図１〜１２に示した構成要素および／または機能性は、アナログ回路および／またはデジタル回路で実装可能である。さらに、図１〜１２の構成要素および／または機能性は、ハードウェアおよび／またはソフトウェアで実装可能である。
【００５９】
本明細書に記載のデバイスおよび回路は、当該技術分野において利用可能なコンピュータ支援設計ツールを用いて実装可能であり、そのような回路のソフトウェア記述を含むコンピュータ可読ファイルによって具現化可能である。これらのソフトウェア記述は、挙動レベル、レジスタ転送レベル、論理コンポーネントレベル、トランジスタレベル、およびレイアウトジオメトリレベルの記述であってよい。さらに、ソフトウェア記述は、記憶媒体に格納したり、搬送波で伝達したりすることが可能である。
【００６０】
そのような記述が実装可能なデータ形式としては、Ｃのような挙動言語をサポートしている形式、ＶｅｒｉｌｏｇやＶＨＤＬのようなレジスタ転送レベル（ＲＴＬ）言語をサポートしている形式、ジオメトリ記述言語（ＧＤＳＩＩ、ＧＤＳＩＩＩ、ＧＤＳＩＶ、ＣＩＦ、ＭＥＢＥＳなど）をサポートしている形式、および他の好適な形式および言語が含まれ、これらに限定されない。さらに、そのようなファイルを機械可読媒体でデータ転送することは、インターネット上の多用な媒体（たとえば、電子メール）により電子的に行われることが可能である。なお、実際のファイルは、機械可読媒体（４ｍｍ磁気テープ、８ｍｍ磁気テープ、３．５インチフロッピー媒体、ＣＤ、ＤＶＤなど）に実装可能である。
【００６１】
図１３は、そのようなコンピュータ可読ファイルを格納するシステム１３００の一実施形態を示すブロック図である。本システムは、少なくとも１つのデータ処理装置または中央処理ユニット（ＣＰＵ）１３１０と、メモリ１３２４と、これらの構成要素を互いに結合する１つまたは複数の信号線または通信バス１３２２とを含むことが可能である。メモリ１３２４は、ランダムアクセスメモリおよび／または不揮発性メモリを含むことが可能であり、たとえば、ＲＯＭ、ＲＡＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュ、１つまたは複数のスマートカード、１つまたは複数の磁気ディスク記憶デバイス、および／または１つまたは複数の光学式記憶デバイスを含むことが可能である。
【００６２】
メモリ１３２４は、回路コンパイラ１３２６および回路記述１３２８を格納することが可能である。回路記述１３２８は、回路の記述、すなわち、上述の回路のサブセットを含むことが可能である。具体的には、回路記述１３２８は、１つまたは複数のメモリ制御装置１３３０、１つまたは複数のメモリデバイス１３３２、１つまたは複数の位相検出器１３３４、１つまたは複数のフリップフロップ１３３６、１つまたは複数の増幅器１３３８、１つまたは複数の多重化器１３４０、１つまたは複数のドライバ１３４２、１つまたは複数の論理回路１３４４、１つまたは複数のドライバ回路１３４６、および／または１つまたは複数の可変長シフタ１３４８の回路記述を含むことが可能である。
【００６３】
なお、システム１３００に含まれる構成要素は、より少なくても、より多くてもよい。さらに、２つ以上の構成要素を単一の構成要素にまとめることが可能であり、かつ／または、１つまたは複数の構成要素の位置を変更することが可能である。
【００６４】
前述の実施形態の記載は、例示および説明のみを目的としたものである。これらは、網羅的であることも、本明細書を開示の形態に限定することも意図していない。したがって、当業者にとっては、様々な修正や変形形態が自明であろう。さらに、上述の開示は、本明細書を限定することを意図するものではない。本明細書の範囲は、添付の請求項によって定義される。
【図１】
2015043254.tif 000003
【図２】
2015043254.tif 000004
【図３】
2015043254.tif 000005
【図４】
2015043254.tif 000006
【図５】
2015043254.tif 000007
【図６】
2015043254.tif 000008
【図７】
2015043254.tif 000009
【図８】
2015043254.tif 000010
【図９】
2015043254.tif 000011
【図１０】
2015043254.tif 000012
【図１１】
2015043254.tif 000013
【図１２】
2015043254.tif 000014
【図１３】
2015043254.tif 000015
【手続補正書】
【提出日】平成26年11月14日(2014.11.14)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
メモリチップのセットの中のメモリチップを制御するメモリ制御装置であって、
前記メモリチップへの書き込み動作の実行に関わる複数の信号の間のタイミング関係を較正する回路であって、前記メモリチップは、前記メモリチップ上に配置された位相検出器を用いて、前記メモリチップにおいて、前記メモリ制御装置から受信されたデータストローブ信号とクロック信号との間の位相関係を較正する、回路と、
少なくとも１つの書き込み−読み出し−検証の動作を実行して前記データストローブ信号と前記クロック信号との間のクロックサイクル関係を較正する回路であって、前記書き込み−読み出し−検証の動作は、前記クロック信号に対する前記データストローブ信号の遅延を前記クロック信号のクロック周期単位で変化させる、回路と
を含む、メモリ制御装置。
【請求項２】
前記タイミング関係を較正する回路は、
前記クロック信号に対して様々に遅延させたパルスを前記データストローブ信号上にアサートし、および前記データストローブ信号と前記クロック信号とが揃っていることを示す遷移を、前記位相検出器の出力において探す、回路を含む、請求項１に記載のメモリ制御装置。
【請求項３】
前記クロック信号に対する前記データストローブ信号の遅延をクロック周期単位で変化させ、前記メモリチップ内の特定のロケーションに値を書き込み、前記メモリチップ内の前記特定のロケーションから値を読み出し、および、前記特定のロケーションから読み出した値が、前記特定のロケーションに書き込んだ値と一致するかどうかを検証することによって、前記データストローブ信号と前記クロック信号とが較正されているかどうかを判定する、回路を含む、請求項１に記載のメモリ制御装置。
【請求項４】
前記メモリチップの前記セットの中のメモリチップについての前記タイミング関係は、
前記メモリチップのそれぞれが結合されている制御パスに沿って遅延が増える順に較正される、請求項１に記載のメモリ制御装置。
【請求項５】
メモリ制御装置であって、
メモリチップのセットの中のメモリチップと前記メモリ制御装置との間で伝達される書き込み動作の実行に関わる複数の信号の間のタイミング関係を較正する回路であって、前記メモリチップ上に配置された位相検出器が、前記メモリチップにおいて、前記メモリ制御装置から受信されたデータストローブ信号とクロック信号との間の位相関係を較正するよう用いられる、回路と、
前記データストローブ信号と前記クロック信号との間のクロックサイクル関係を較正することを、
前記クロック信号に対する前記データストローブ信号の遅延をクロック周期単位で変化させること、
前記メモリチップ内の特定のロケーションに値を書き込むこと、
前記メモリチップ内の前記特定のロケーションから値を読み出すこと、および、
前記特定のロケーションから読み出した値が、前記特定のロケーションに書き込んだ値と一致するかどうかを検証することによって、前記データストローブ信号と前記クロック信号とが較正されているかどうかを判定すること、
を反復することによって行う回路と、
を含む、メモリ制御装置。
【請求項６】
メモリ制御装置と、
メモリチップであって、前記メモリチップにおいて前記メモリ制御装置から受信したデータストローブ信号およびクロック信号の間の位相関係を較正するように構成された位相検出器を含む、メモリチップと、
前記メモリ制御装置は、少なくとも１つの書き込み−読み出し−検証の動作を実行して前記データストローブ信号と前記クロック信号との間のクロックサイクル関係を較正するように構成され、
前記書き込み−読み出し−検証の動作は、前記クロック信号に対する前記データストローブ信号の遅延をクロック周期単位で変化させることを含む、システム。
【請求項７】
前記メモリ制御装置は、前記データストローブ信号と前記クロック信号との間の位相関係を較正する際に、前記クロック信号に対して様々に遅延させたパルスを前記データストローブ信号上にアサートすること、および、前記データストローブ信号および前記クロック信号の位置が揃っていることを示す遷移を前記位相検出器の出力において探すこと、を行うように構成された、請求項６に記載のシステム。
【請求項８】
前記メモリ制御装置は、前記クロックサイクル関係を較正する際に、
前記クロック信号に対する前記データストローブ信号の遅延をクロック周期単位で変化させること、
前記メモリチップ内の特定のロケーションに値を書き込むこと、
前記メモリチップ内の前記特定のロケーションから値を読み出すこと、および、
前記特定のロケーションから読み出した値が、前記特定のロケーションに書き込んだ値と一致するかどうかを検証することによって、前記データストローブ信号と前記クロック信号とが較正されているかどうかを判定すること、
を連続的に実行するように構成された、請求項６に記載のシステム。
【請求項９】
前記メモリ制御装置は、読み出し動作時に前記データストローブ信号とデータストローブイネーブル信号との間のタイミング関係を調節するように構成された、請求項６に記載のシステム。
【外国語明細書】
2015043254000001.pdf