(57)【要約】【課題】伝搬遅延およびＰＶＴ条件の変化時に高信頼性のデータ転送を可能とするデータ処理システムを提供する。【解決手段】同期データ処理システムはデータを格納するメモリモジュールと、メモリモジュールに接続されたメモリコントローラとを備える。メモリコントローラのクロックインバータは入力クロック信号を受信し反転クロック信号をメモリモジュールに提供する。反転クロック信号によってメモリモジュール到達前の第１の伝搬遅延がメモリクロック信号として与えられる。メモリモジュールに接続された書込データバッファは入力クロック信号に応答してメモリモジュールにデータを提供する。メモリモジュールに接続された非同期先入れ先出しバッファはメモリクロック信号をバッファにフィードバックすることによって生成されるフィードバック信号に応答してメモリモジュールからデータを読み取る。【選択図】図３
2012198894.tif 000002
【特許請求の範囲】
【請求項１】
同期データ処理システムであって、
データを格納するメモリモジュールと、
メモリモジュールに接続されているメモリコントローラとを備え、メモリコントローラは、
入力クロック信号を受信し、反転クロック信号をメモリモジュールに提供するクロックインバータであって、反転クロック信号によって、メモリモジュールに到達する前の第１の伝搬遅延がメモリクロック信号として与えられる、クロックインバータと、
メモリモジュールに接続されている書込データバッファであって、入力クロック信号に応答してメモリモジュールにデータを提供する、書込データバッファと、
メモリモジュールに接続されている非同期先入れ先出し（ＡＳＹＮＣ  ＦＩＦＯ）バッファであって、メモリクロック信号をＡＳＹＮＣ  ＦＩＦＯバッファにフィードバックすることによって生成されるフィードバック信号に応答してメモリモジュールからデータを読み取る、ＡＳＹＮＣ  ＦＩＦＯバッファと、を備える、同期データ処理システム。
【請求項２】
書込データバッファからメモリモジュールに送信されるデータの伝搬遅延は第１の伝搬遅延と等しい、請求項１に記載の同期データ処理システム。
【請求項３】
メモリクロック信号によって、ＡＳＹＮＣ  ＦＩＦＯバッファに到達する前の第２の伝搬遅延が与えられ、第２の伝搬遅延はメモリモジュールからＡＳＹＮＣ  ＦＩＦＯバッファによって受信されるデータの伝搬遅延と等しい、請求項１に記載の同期データ処理システム。
【請求項４】
ＡＳＹＮＣ  ＦＩＦＯバッファに接続されており、メモリモジュールから届いたパケットデータを検出する検出器と、
データサンプリングモジュールであって、フィードバック信号に応答してＡＳＹＮＣ  ＦＩＦＯバッファからのデータのサンプリングをデータサンプリングモジュールに開始させるべく、検出器およびＡＳＹＮＣ  ＦＩＦＯバッファに接続されている、データサンプリングモジュールと、をさらに備える、請求項１に記載の同期データ処理システム。
【請求項５】
ＡＳＹＮＣ  ＦＩＦＯバッファは入力信号に応答してデータサンプリングモジュールにデータを提供する、請求項４に記載の同期データ処理システム。
【請求項６】
検出器はメモリモジュールから受信されるデータの有効化信号を検出する、請求項４に記載の同期データ処理システム。
【請求項７】
有効化信号は読取イネーブル信号を含む、請求項６に記載の同期データ処理システム。
【請求項８】
検出器は、メモリモジュールからフィードバックされるフィードバック信号および有効化信号に応答してＡＳＹＮＣ  ＦＩＦＯバッファからのデータのサンプリングをデータサンプリングモジュールに開始させる、請求項６に記載の同期データ処理システム。
【請求項９】
反転クロック信号は、データサンプリングのセットアップ時間およびホールド時間を増加させる、請求項１に記載の同期データ処理システム。
【請求項１０】
メモリコントローラがクロック生成器から入力クロック信号を受信する、請求項１に記載の同期データ処理システム。
【請求項１１】
同期データ処理システムのメモリモジュールとともに用いられるメモリコントローラにおいて、
入力クロック信号を受信し、反転クロック信号をメモリモジュールに提供するためのクロックインバータであって、反転クロック信号によって、メモリモジュールに到達する前の第１の伝搬遅延がメモリクロック信号として与えられる、クロックインバータと、
クロック信号分配モジュールであって、メモリモジュールからメモリコントローラに向けてメモリクロック信号を送ることによってフィードバック信号を生成し、それによってメモリコントローラとメモリモジュールとの間で転送されるそれらのクロック信号がメモリモジュールとメモリコントローラとの間で送信されるデータと同じ位相遅延を有する、クロック信号分配モジュールと、を備える、メモリコントローラ。
【請求項１２】
メモリモジュールとメモリコントローラとの間で転送されるクロック信号およびデータの位相遅延は、伝搬遅延およびプロセス電圧温度（ＰＶＴ）変化による、請求項１１に記載のメモリコントローラ。
【請求項１３】
メモリモジュールに接続されている書込データバッファであって、入力クロック信号に応答してメモリモジュールにデータを提供する書込データバッファ、をさらに備える請求項１１に記載のメモリコントローラ。
【請求項１４】
書込データバッファからメモリモジュールに送信されるデータの伝搬遅延は第１の伝搬遅延と等しい、請求項１３に記載のメモリコントローラ。
【請求項１５】
メモリモジュールに接続されている非同期先入れ先出し（ＡＳＹＮＣ  ＦＩＦＯ）バッファであって、メモリクロック信号をＡＳＹＮＣ  ＦＩＦＯバッファにフィードバックすることによって生成されるフィードバック信号に応答してメモリモジュールからデータを読み取る、ＡＳＹＮＣ  ＦＩＦＯバッファ、をさらに備える請求項１１に記載のメモリコントローラ。
【請求項１６】
ＡＳＹＮＣ  ＦＩＦＯ  バッファは入力クロック信号に応答してサンプリング用のデータを提供する、請求項１５に記載のメモリコントローラ。
【請求項１７】
同期データ処理システムにおいてメモリモジュールとメモリコントローラとの間でデータを転送する方法であって、
入力クロック信号を受信するステップと、
メモリモジュールに対するメモリクロック信号を生成するべく、反転入力クロック信号をメモリモジュールに送信するステップと、
メモリモジュールからメモリコントローラにメモリクロック信号をフィードバックすることによってフィードバック信号を生成する工程であって、メモリコントローラとメモリモジュールとの間で転送されるクロック信号によってメモリモジュールとメモリコントローラとの間で送信されるデータと同じ位相遅延が与えられるステップと、を備える方法。
【請求項１８】
入力クロック信号に応答してメモリコントローラの書込データバッファからメモリモジュールにデータを送信するステップと、
メモリクロック信号を非同期先入れ先出し（ＡＳＹＮＣ  ＦＩＦＯ）バッファにフィードバックすることによって生成されるフィードバック信号に応答して、メモリモジュールからメモリコントローラのＡＳＹＮＣ  ＦＩＦＯバッファにデータを送信するステップと、をさらに備える請求項１７に記載の方法。
【請求項１９】
フィードバック信号に応答してメモリモジュールから受信されるデータのサンプリングを開始するステップと、
入力クロック信号に応答してＡＳＹＮＣ  ＦＩＦＯバッファからデータサンプリングモジュールにデータを提供するステップと、をさらに備える請求項１８に記載の方法。
【請求項２０】
メモリコントローラとメモリモジュールとの間で転送されるそれらのクロック信号およびデータによって、伝搬遅延およびプロセス電圧温度（ＰＶＴ）変化によって生じる位相遅延と等しい位相遅延が与えられる、請求項１８に記載のデータを処理する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にデータ処理システムに関する。より詳細には、本発明は、同期データ処理システムにおける高信頼性のデータ転送に関する。
【背景技術】
【０００２】
マイクロコンピュータなどのデータ処理システムの動作速度が近年上昇するにつれ、そうしたシステムの性能を向上させるべく、マイクロプロセッサなどの周辺装置およびシンクロナス・ダイナミック・ランダム・アクセス・メモリ（ＳＤＲＡＭ）などのメモリデバイスの動作速度も上昇している。プロセッサおよび周辺装置を接続するバスの動作周波数も上昇している。しかしながら、周波数の上昇につれ、データ転送における伝搬遅延およびＰＶＴ（プロセス、電圧、および温度）変化の影響は大きくなる。
【０００３】
特許文献１には、データ処理システムにおけるクロック同期について記載されている。通常、同期データ処理システムでは、メモリコントローラなどの部品とメモリデバイスとの間で転送されるクロックとデータ信号との間には、位相差（またはスキュー）が存在する。このような位相スキューは、伝搬遅延や、ＰＶＴ変動によってもたらされる。周波数の上昇につれ、位相スキューが増大することがあり、それによって、読取または書込動作時に誤ったデータサンプリングが生じ得る。
【０００４】
位相スキューを減少させる１つの方法は、データサンプリングを改良するために位相同期回路（フェーズ・ロック・ループ、すなわち、ＰＬＬ）を採用することである。図１は、ＰＬＬ回路１２を有する従来のデータ処理システム１０のブロック図である。データ処理システム１０は、メモリコントローラ１４およびメモリモジュール１６を備える。このうち、メモリコントローラ１４が、メモリコントローラ１４とメモリモジュール１６との間で転送されるクロックとデータ信号との間の位相スキューを補償するためのＰＬＬ回路１２を備える。
【０００５】
動作時には、メモリコントローラ１４は、クロック信号生成器（図示せず）から入力クロック信号（ＩＰ＿ＣＬＫ）１８を受信する。この入力クロック信号１８は、読取および書込データバッファ２０，２２に供給される。また、メモリコントローラ１４は、メモリモジュール１６に対するメモリクロック信号２３を生成する。ここで、メモリコントローラ１４とメモリモジュール１６との間で送信されるデータ信号（ＩＰ＿ＤＡＴＡ，ＭＥＭ＿ＤＡＴＡ）は、参照符号２４，２６によって概略的に表される。
【０００６】
示すように、メモリクロック信号（ＭＥＭ＿ＣＬＫ）２３は、メモリコントローラ１４とメモリモジュール１６との間で半分だけループして戻され（ループバック）、クロックイン信号（ＣＬＫ＿ＩＮ）またはループバック信号２８がＰＬＬ回路１２に供給されて、クロックアウト信号（ＣＬＫ＿ＯＵＴ）３０が生成される。このフィードバック機構によって、データサンプリングが改良される。こうして、メモリコントローラ１４およびメモリモジュール１６によって観測されるクロック信号は整合され、それによって、読取および書込動作時のデータ転送における１つの完全なサイクルが提供される。ループバック信号（ＣＬＫ＿ＩＮ）２８を有するＰＬＬ回路１２によってシステムのデータサンプリングが改良されるが、そうした改良は、メモリコントローラ１４とメモリモジュール１６との間の伝搬遅延が１クロックサイクル未満の場合にのみ機能するという点において制限されている。
【０００７】
図２は、図１のデータ処理システム１０のデータ読取および書込サイクルのタイミング図である。示した実施形態では、メモリクロック信号およびループバック信号のサイクルは、参照符号５０，５２によって表される。メモリクロック信号およびループバック信号５０，５２の位相は整合されている。さらに、書込動作時にメモリコントローラ１４によって発生されてメモリモジュール１６によって受信されるデータ信号は、参照符号５４，５６によって表される。同様に、メモリモジュール１６によって送信されてメモリコントローラ１４によって読み取られるデータ信号は、参照符号５８，６０によってそれぞれ表される。
【０００８】
書込サイクルでは、データ（ＩＰ＿ＤＡＴＡ）５４はクロック信号５２（ＣＬＫ＿ＩＮに位相整合されているＩＰ＿ＣＬＫ）の立ち上がりエッジにおいて書込データバッファ２２から発生され、メモリモジュール１６によってＭＥＭ＿ＤＡＴＡ５６として受信される。読取サイクルでは、ＭＥＭ＿ＤＡＴＡ５８はメモリクロック信号（ＭＥＭ＿ＣＬＫ）５０の立ち上がりエッジにおいてメモリモジュール７２から発生され、メモリコントローラ１４によってＩＰ＿ＤＡＴＡ６０として読み取られる。
【０００９】
参照符号６２，６４によって示すように伝搬遅延が１クロックサイクル近傍またはそれ以上であるとき、ＰＬＬ回路１２が書込および読取サイクルにおける位相スキューを補償できないことが理解される。残念なことに、これによって誤ったデータサンプリングが生じる。
【００１０】
加えて、ＰＬＬ回路は回路板上の有意な面積を占めるとともに、通常、所定の周波数帯域用に設計されているので、そうしたＰＬＬ回路の特性決定には時間が掛かり、上述のように、ＰＶＴ条件が変化することによる影響を受けがちである。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】米国特許第６，００３，１１８号明細書
【発明の概要】
【発明が解決しようとする課題】
【００１２】
したがって、伝搬遅延およびＰＶＴ条件が変化している場合に高信頼性のデータ転送を可能とするデータ処理システムの必要性が存在する。
【課題を解決するための手段】
【００１３】
一実施形態では、本発明によって、同期データ処理システムを提供する。この同期データ処理システムは、データを格納するためのメモリモジュールと、該メモリモジュールに接続されているメモリコントローラとを備える。メモリコントローラは、入力クロック信号を受信し、反転クロック信号をメモリモジュールに提供するためのクロックインバータを備える。この反転クロック信号によって、メモリモジュールに到達する前の第１の伝搬遅延がメモリクロック信号として与えられる。メモリモジュールには、書込データバッファが接続されている。書込データバッファは、入力クロック信号に応答してメモリモジュールにデータを提供する。メモリモジュールには、非同期先入れ先出し（ＡＳＹＮＣ  ＦＩＦＯ）バッファが接続されている。このＡＳＹＮＣ  ＦＩＦＯバッファは、メモリクロック信号をＡＳＹＮＣ  ＦＩＦＯバッファにフィードバックすることによって生成されるフィードバック信号に応答して、メモリモジュールからデータを読み取る。
【００１４】
別の実施形態では、本発明によって、同期データ処理システムにおいてメモリモジュールとメモリコントローラとの間でデータを転送する方法を提供する。この方法は、入力クロック信号を受信するステップと、メモリモジュールに対するメモリクロック信号を生成するべく、反転入力クロック信号をメモリモジュールに送信するステップとを備える。メモリクロック信号は、メモリモジュールからメモリコントローラにフィードバックされ、
メモリコントローラとメモリモジュールとの間で転送されるクロック信号によって、メモリモジュールとメモリコントローラとの間で送信されるデータとほぼ同じ位相遅延が与えられる。
【図面の簡単な説明】
【００１５】
【図１】ＰＬＬ回路を有する従来データ処理システムのブロック図。
【図２】図１のデータ処理システムのデータ読取および書込サイクルの一例のタイミング図。
【図３】本発明の一実施形態による同期データ処理システムの一例の構成を示す図。
【図４】図３の同期データ処理システムにおけるデータ読取および書込サイクルの一例を示すタイミング図。
【図５】図３の同期データ処理システムの別の構成例を示す図。
【図６】本発明による図３の同期データ処理システムを用いるパケット化されたデータをサンプリングする方法を示すフローチャート。
【図７】本発明による図５の同期データ処理システムを用いる有効化信号によってデータをサンプリングする方法を示すフローチャート。
【発明を実施するための形態】
【００１６】
図３を参照すると、同期データ処理システムの一例の構成７０が示されている。同期データ処理システム７０は、データを格納するためのメモリモジュール７２を備える。メモリコントローラ７４は、メモリモジュール７２に接続されている。示した実施形態では、メモリコントローラ７４は、入力クロック信号（ＣＬＫ＿ＩＮＴ）７８を受信し、反転クロック信号（ＣＬＫ＿ＯＵＴ）８０をメモリモジュール７２へ送信するためのクロックインバータ７６を備える。メモリコントローラ７４がクロック生成器（図示せず）から入力クロック信号（ＣＬＫ＿ＩＮＴ）７８を受信してもよい。
【００１７】
反転クロック信号（ＣＬＫ＿ＯＵＴ）８０によって、メモリモジュールに到達する前の第１の伝搬遅延がメモリクロック信号（ＭＥＭ＿ＣＬＫ）８２として与えられる。この一例の実施形態では、反転クロック信号（ＣＬＫ＿ＯＵＴ）８０は、データサンプリングのセットアップ時間およびホールド時間を増加させる。一例の実施形態では、反転クロック７６は、メモリモジュール７２に対するセットアップ時間およびホールド時間として約２分の１クロックサイクルを与えるので、書込動作時により良好なデータサンプリングウィンドウが提供される。
【００１８】
メモリコントローラ７４は、メモリモジュール７２に接続されている書込データバッファ８４を備える。書込データバッファ８４は、入力クロック信号（ＣＬＫ＿ＩＮＴ）７８に応答してメモリモジュール７２にデータを送信する。さらにまた、非同期先入れ先出し（ＡＳＹＮＣ  ＦＩＦＯ）バッファ８６もメモリモジュール７２に接続されている。ＡＳＹＮＣ  ＦＩＦＯバッファ８６は、
メモリクロック信号（ＭＥＭ＿ＣＬＫ）８２をＡＳＹＮＣ  ＦＩＦＯバッファ８６にフィードバックすることによって生成されるフィードバッククロック信号（ＣＬＫ＿ＩＮ）８８に応答して、メモリモジュール７２からデータを読み取る。この一例の実施形態では、メモリクロック（ＭＥＭ＿ＣＬＫ）信号８２は、ＡＳＹＮＣ  ＦＩＦＯ８６がメモリモジュール７２の近くにあるとき、ＡＳＹＮＣ  ＦＩＦＯ８６に向けて送られる。
【００１９】
書込動作時には、データ（ＩＰＤＡＴＡ）は、入力クロック信号（ＣＬＫ＿ＩＮＴ）７８の立ち上がりエッジにおいてメモリコントローラ７４の書込データバッファ８４から発生される。このデータは遅延して伝搬し、ＭＥＭ＿ＤＡＴＡとしてメモリモジュール７２によって受信される。当業者には認められるように、クロックおよびデータ信号はメモリモジュール７２まで同一の距離を移動するので、書込データバッファ８４からメモリモジュール７２に送信されるデータの伝搬遅延は、第１の伝搬遅延とほぼ等しい。これによって、正確な書込データサンプリングが行えるといった利点が存在する。
【００２０】
同様に、読取動作時には、メモリクロック信号（ＭＥＭ＿ＣＬＫ）８２の立ち上がりエッジに対応して、データ（ＭＥＭ＿ＤＡＴＡ）がメモリモジュール７２から発生される。このデータは遅延して伝搬し、ＩＰ＿ＤＡＴＡとしてメモリコントローラ７４のＡＳＹＮＣ  ＦＩＦＯバッファ８６によって受信される。この場合にも、メモリモジュール７２からＡＳＹＮＣ  ＦＩＦＯバッファ８６によって受信されるデータの伝播遅延は、ＡＳＹＮＣ  ＦＩＦＯバッファ８６に到達する前のメモリ信号（ＭＥＭ＿ＣＬＫ）８２によって与えられる第２の伝播遅延と、ほぼ等しい。なお、クロックおよびデータによってメモリモジュール７２からＡＳＹＮＣ  ＦＩＦＯバッファ８６にループバックされるクロックと等しい遅延が与えられる。
【００２１】
また、同期データ処理システム７０、ＡＳＹＮＣ  ＦＩＦＯバッファ８６に接続されている検出器９０を備える。示した実施形態では、データはパケットの形式で転送され、各パケットはセキュアデジタル（ＳＤ）プロトコルなどフレームの開始部および終了部を有する。検出器９０は、メモリモジュール７２から届いたパケットデータにおいてフレームの開始部を検出する。
【００２２】
データサンプリングモジュール９２は、フィードバッククロック信号（ＣＬＫ＿ＩＮ）８８に応答してＡＳＹＮＣ  ＦＩＦＯバッファ８６からデータサンプリングを開始するべく、検出器９０およびＡＳＹＮＣ  ＦＩＦＯバッファ８６に接続されている。データサンプリングが開始されると、ＡＳＹＮＣ  ＦＩＦＯバッファ８６は、入力クロック信号（ＣＬＫ＿ＩＮＴ）７８に応答してデータサンプリングモジュール９２にデータを提供する。検出器９０およびデータサンプリングモジュール９２がパケット化されたデータをサンプリングする動作については図６に関連して以下に記載する。
【００２３】
図４には、図３の同期データ処理システム７０におけるデータ読取および書込サイクルの一例のタイミング図を示す。示した実施形態では、メモリコントローラ７４によって受信される入力クロック信号（ＣＬＫ＿ＩＮＴ）は、参照符号１００によって表される。さらに、クロックインバータ７６によって送信される反転クロック信号（ＣＬＫ＿ＯＵＴ）は、参照符号１０２によって表される。さらにまた、メモリクロック信号（ＭＥＭ＿ＣＬＫ）およびフィードバック信号（ＣＬＫ＿ＩＮ）サイクルは参照符号１０６，１０８によってそれぞれ表される。
【００２４】
さらに、メモリコントローラ７４によって発生され書込動作時にメモリモジュール７２によって受信されるデータ信号（ＷＤＡＴＡ）は、参照符号１１０，１１２によってそれぞれ表される。同様に、メモリモジュール７２によって送信され読取動作時にメモリコントローラ７４によって読み取られるデータ信号（ＲＤＡＴＡ）は、参照符号１１４，１１６によってそれぞれ表される。
【００２５】
示したように、データ（ＩＰ＿ＤＡＴＡ）１１０は、入力クロック信号（ＣＬＫ＿ＩＮＴ）１００の立ち上がりエッジ（これは反転クロック信号（ＣＬＫ＿ＯＵＴ）サイクル１０２の立ち下がりエッジ（参照符号１１４によって表される））に相当する書込データバッファ８４から発生される。示した実施形態では、例えば、参照符号１１６によって表されるように、反転クロック信号（ＣＬＫ＿ＯＵＴ）１０２によって、メモリモジュール７２に到達する前の約２分の１クロックサイクルの伝搬遅延がメモリクロック信号（ＭＥＭ＿ＣＬＫ）１０４として与えられる。
【００２６】
読取動作時には、データ（ＭＥＭ＿ＤＡＴＡ）１１４は、メモリクロック信号（ＭＥＭ＿ＣＬＫ）１０６立ち上がりエッジ１２０に対応してメモリモジュール７２から発生される。このデータは遅延して伝搬し、ＩＰ＿ＤＡＴＡ１１６としてメモリコントローラ７４のＡＳＹＮＣ  ＦＩＦＯバッファ８６によって受信される。この場合にも、この例では、メモリモジュール７２からＡＳＹＮＣ  ＦＩＦＯバッファ８６によって受信されるデータの伝播遅延は、約２分の１クロックサイクルであり、これは参照符号１２２によって表されているように、ＡＳＹＮＣ  ＦＩＦＯバッファ８６に到達する前のメモリ信号（ＭＥＭ＿ＣＬＫ）８２によって発生される伝播遅延と等しい。
【００２７】
図５には、同期データ処理システム１３０の別の一例の構成を示す。この一例の実施形態では、メモリコントローラ７４とメモリモジュール７２との間で転送されるデータは、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）に通常用いられる読取イネーブル信号または書込イネーブル信号などの有効化信号を含む。検出器９０が、メモリモジュール７２から受信されるデータの読取イネーブル（ＲＤ＿ＥＮ）信号１３２などの有効化信号を検出する。
【００２８】
検出器９０は、メモリモジュール７２からＡＳＹＮＣ  ＦＩＦＯバッファ８６にフィードバックされるフィードバッククロック信号８８および有効化信号１３２に応答して、データサンプリングモジュール９２にＡＳＹＮＣ  ＦＩＦＯバッファ８６からのデータのサンプリングを開始させる。この構成における検出器９０およびデータサンプリングモジュール９２の動作については図７に関連して記載する。
【００２９】
図６は、本発明による図３の同期データ処理システム７０を用いるパケット化されたデータをサンプリングする方法１４０を示すフローチャートである。ブロック１４２において、フィードバッククロック信号８８の立ち上がりエッジ（ｐｏｓｅｄｇｅ）においてＡＳＹＮＣ  ＦＩＦＯバッファにデータが送り込まれる。さらに、入力クロック信号に応答してＡＳＹＮＣ  ＦＩＦＯバッファからのデータが検出器に供給される（ブロック１４４）。この一例の実施形態では、ＡＳＹＮＣ  ＦＩＦＯバッファが空でないときには必ず、データが検出器に転送される。
【００３０】
ブロック１４６において、検出器は、データの１から０への遷移をチェックすることによって、届いたパケット化データのフレームの開始部を検出する。フレームの開始部が検出される場合、ブロック１４８によって表されるように、トリガに従ってデータサンプリングモジュールはＡＳＹＮＣ  ＦＩＦＯからのデータのサンプリングを開始する。あるいは、参照符号１５０によって表されるように、検出器はフレームの次の開始部を確認する。
【００３１】
図７は、本発明による図５の同期データ処理システムを用いる有効化信号によってデータをサンプリングする方法１６０を示すフローチャートである。ブロック１６２において、データと、読取イネーブル（ＲＤ＿ＥＮ）信号などの有効化信号とが、メモリモジュールからのフィードバック信号の立ち上がりエッジ（ｐｏｓｅｄｇｅ）においてＡＳＹＮＣ  ＦＩＦＯバッファに送り込まれる。さらに、入力クロック信号に応答して、ＡＳＹＮＣ  ＦＩＦＯバッファからデータおよび読取イネーブル有効化信号が検出器に供給される（ブロック１６４）。この一例の実施形態では、ＡＳＹＮＣ  ＦＩＦＯが空でないときには、データおよび読取イネーブル有効化信号が検出器に転送される。
【００３２】
ブロック１６６において、検出器は、読取イネーブル有効化信号における１から０への遷移を検出する。読取イネーブル有効化信号が検出される場合、ブロック１６８によって表されるように、トリガに従ってデータサンプリングモジュールはＡＳＹＮＣ  ＦＩＦＯからのデータのサンプリングを開始する。特定の実施形態では、データサンプリングはメモリアクセス時間の後に開始される。あるいは、参照符号１７０によって表されるように、検出器は次の読取イネーブル有効化信号を確認する。
【００３３】
本発明によって、上述のように、伝播遅延およびＰＶＴ条件にかかわらず、高信頼性のデータ転送が可能となる。上述のように、伝搬遅延およびＰＶＴ条件によって与えられる位相スキューを補償するデータ転送システムにおいて、メモリコントローラとメモリモジュールとの間で転送されるクロックとデータ信号との間に、確固たる関係が確立される。
【００３４】
この技術では、書込データサンプリングを行うべくメモリモジュールに反転クロック信号を供給するための反転クロックが用いられる。また、この技術では、フィードバック信号を生成するべくメモリモジュールからのメモリクロック信号を送るクロック信号分配モジュールが用いられ、このクロック信号分配モジュールは、読取データサンプリングのためのＡＳＹＮＣ  ＦＩＦＯバッファとともに用いられる。
【図１】
2012198894.tif 000003
【図２】
2012198894.tif 000004
【図３】
2012198894.tif 000005
【図４】
2012198894.tif 000006
【図５】
2012198894.tif 000007
【図６】
2012198894.tif 000008
【図７】
2012198894.tif 000009