説明

タイミング調整方法及び装置

【課題】外部ストローブ信号及びこの信号に同期した外部データをシステムクロックでラッチするタイミングを調整する。
【解決手段】メモリ100からのストローブ信号s100aはストローブ遅延選択部103の遅延回路1031〜103nで遅延されて複数の遅延ストローブ信号となる。ストローブラッチ部106は、前記各遅延ストローブ信号の受信タイミングでチェック用データを生成し、システムラッチ部107は、ストローブラッチ部106でラッチされたチェック用データをシステムクロックs200でラッチする。期待値比較部108及び遅延判定部109での比較、判定に基づいて、ストローブ遅延選択部103での最適遅延の最適ストローブ信号が選択される。その後、メモリ100からのデータs100bをデータ遅延選択部104の遅延回路1041〜104nで遅延させて複数の遅延データとして、その中から、前記期待値比較部108及び遅延判定部109での比較判定に基づいて、最適遅延の最適データが選択される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、メモリやLSI等の半導体装置からストローブ信号とこのストローブ信号に同期したデータとが出力された場合に、このデータのラッチタイミングを調整するデータのタイミング調整方法及び装置に関する。
【背景技術】
【0002】
一般に、メモリやLSI等(以下、メモリで代表する)からのデータの読み出しタイミングは、その設計の際に予め決定される。しかし、このデータの読み出しタイミングが、メモリの配置場所や特性、電圧降下や周囲温度などの影響に起因して変化する関係上、その読み出したデータを予め固定のラッチタイミングでラッチすると、データのラッチミスが生じる。このため、読み出しデータのラッチタイミング調整が必要となる。
【0003】
従来では、読み出しデータのラッチタイミングを調整するために、ディップスイッチ等を設けて、メモリの出力データを正常にラッチできるように調整していた。
【0004】
しかし、前記の方法では、その調整を行う工数が発生するという欠点があるため、例えば特許文献1では、メモリからの読み出しデータのラッチタイミングを自動的に調整するタイミング調整装置が提案されている。
【0005】
図13は、前記特許文献1のタイミング調整装置のブロック図を示す。
【0006】
同図において、102はチェック用データ保管部であって、メモリ100からの読み出しデータのラッチタイミング調整を行う際に使用するチェック用データが予め保管される。
【0007】
103は書き込み制御部であって、モード選択信号を受け、このモード選択信号が通常動作モードを指示している際には、入力データをメモリ100の所定アドレスに書き込む一方、ラッチタイミング調整モードを指示している際には、前記チェック用データ保管部102に保管されているデータをメモリ100に書き込む。具体的には、書き込み制御部103は、タイミング信号s103a、アドレスs103b、データ(入力データ又はチェック用データ)s103cをメモリ100に与えて、メモリ100の所定のアドレスにこのデータを書き込む。
【0008】
104は読み出し制御部であって、前記モード選択信号を受け、通常動作モード時及びラッチタイミング調整モード時の双方において、タイミング信号s104a及びアドレス信号s104bをメモリ100に与えて、メモリ100からストローブ信号DQS及びこの信号DQSに同期するデータs100を読み出し、一方、ラッチタイミング調整モードの終了時には、後述する判定部108及び遅延制御部109に遅延決定信号s104cを出力する。
【0009】
105は遅延選択部であって、直列に接続した複数個の遅延回路1051、1052〜105nと、選択部105aとを有し、メモリ100からのストローブ信号DQSをこれ等の遅延回路1051〜105nにより順次遅延して遅延量の異なる複数の遅延パルス信号を生成すると共に、これらの遅延回路1051〜105nの出力の何れか1つを選択部105aにより選択して、出力する。
【0010】
また、106は1個のラッチ回路であって、前記メモリ100からの読み出しデータs100を受けると共に、前記遅延選択部105の選択部105aにより選択された何れかの遅延回路の遅延パルス信号を受けて、この遅延パルス信号の受信タイミングで前記メモリ100からの読み出しデータs100をラッチする。通常動作モード時には、このラッチ回路106でラッチされたデータを出力端子101から出力する。
【0011】
107は比較回路であって、前記ラッチ回路106によりラッチされた読み出しデータと、前記チェック用データ保管部102に保管されている対応データとの一致、不一致を比較する。
【0012】
更に、108は判定部であって、ラッチタイミング調整モードの終了時に前記読み出し制御部104からの遅延決定信号を受けて、前記比較回路107での複数の比較結果に基づいて、前記複数の遅延回路1051〜105nのうち、メモリ100からの読み出しデータがラッチ回路106で適切にラッチされた場合の1つの遅延回路、即ち、最適な遅延量を持つ遅延パルス信号を判定する。
【0013】
これにより、特許文献1では、メモリ100の読み出しデータの最適なラッチタイミングを判定して、自動的にタイミング調整している。
【特許文献1】特開2004−185608号公報(図5)
【発明の開示】
【発明が解決しようとする課題】
【0014】
ところで、メモリの出力するストローブ信号は、読み出されるデータが存在する場合に限って付加される信号であって、一般に、クロック信号のような連続信号ではない。このため、このようなストローブ信号に同期したデータが、システムクロックで動作する半導体集積回路等に入力されて利用される場合には、ストローブ信号に同期したデータをストローブ信号でラッチした後、最終的には、再度システムクロックでラッチする必要がある。
【0015】
しかしながら、ストローブ信号とシステムクロックとは別系統の信号であるため、前記従来のラッチタイミング調整装置では、ストローブ信号を位相調整して読み出しデータをストローブ信号で良好にラッチ可能にしているものの、ストローブ信号とシステムクロックとの位相関係にズレが存在すると、ストローブ信号でラッチされたデータをシステムクロックで再度ラッチする際に、ラッチミスが発生する懸念があり、精度の高いラッチタイミング調整を行うことができない。
【0016】
本発明は、前記問題点を解決するためになされたものであり、その目的は、メモリやLSI等の半導体装置からストローブ信号及びこの信号に同期したデータが出力される場合、そのデータをストローブ信号でラッチした後、再度、システムクロックでラッチミス無く良好にラッチできるようにラッチタイミングを調整するラッチタイミング調整方法及び装置を提供することにある。
【課題を解決するための手段】
【0017】
前記の目的を達成するため、本発明では、外部ストローブ信号とシステムクロックとの間で行う位相調整と、外部ストローブ信号と外部データとの間で行う位相調整との2つの位相調整を行うこととする。
【0018】
すなわち、請求項1記載の発明のデータのラッチタイミング調整方法は、外部ストローブ信号及び前記外部ストローブ信号に同期する外部データを受け、前記外部データを前記外部ストローブ信号によりラッチした後、そのラッチされた外部データをシステムクロックにより再度ラッチするデータのラッチタイミング調整方法であって、前記外部ストローブ信号の受信タイミングでチェック用データを生成し、このチェック用データがシステムクロックで正常にラッチされるように、前記外部ストローブ信号と前記システムクロックとの間で位相調整するシステムラッチタイミング調整工程と、前記システムラッチタイミング調整工程の位相調整により前記システムクロックと所定の位相関係を持つ外部ストローブ信号により前記外部データが正常にラッチされるように、前記ストローブ信号と外部データとの間で位相調整するストローブラッチタイミング調整工程とを備えたことを特徴とする。
【0019】
請求項2記載の発明は、前記請求項1記載のデータのラッチタイミング調整方法において、前記システムラッチタイミング調整工程では、前記外部ストローブ信号を複数の遅延量で各々遅延させた複数の遅延ストローブ信号を生成し、この各遅延ストローブ信号の受信タイミングで各々前記チェック用データを生成し、前記複数の遅延ストローブ信号のうち、対応するチェック用データがシステムクロックで正常にラッチされた遅延ストローブ信号を最適ストローブ信号として選択することを特徴とする。
【0020】
請求項3記載の発明は、前記請求項1記載のデータのラッチタイミング調整方法において、前記システムラッチタイミング調整工程では、前記外部ストローブ信号の受信タイミングで前記チェック用データを生成すると共に、前記システムクロックを複数の遅延量で各々遅延させた複数の遅延システムクロックを生成して、前記チェック用データを前記複数の遅延システムクロックで各々ラッチした後、前記複数の遅延システムクロックのうち、前記チェック用データが正常にラッチされた遅延システムクロックを最適システムクロックとして選択することを特徴とする。
【0021】
請求項4記載の発明は、前記請求項1記載のデータのラッチタイミング調整方法において、前記ストローブラッチタイミング調整工程は、前記外部データを複数の遅延量で各々遅延させた複数の遅延データを生成し、前記複数の遅延データを前記外部ストローブ信号で各々ラッチした後、前記複数の遅延データのうち、正常にラッチされた遅延データを最適データとして選択することを特徴とする。
【0022】
請求項5記載の発明は、前記請求項1記載のデータのラッチタイミング調整方法において、前記システムラッチ及びストローブラッチの両タイミング調整工程は、所定のタイミング調整要求時に実行され、前記所定のタイミング調整要求は、システム起動時、システム初期化時、及び通常動作時の最中の少なくとも1つを含むことを特徴とする。
【0023】
請求項6記載の発明は、前記請求項2記載のデータのラッチタイミング調整方法において、前記外部ストローブ信号は、複数ビットで構成され、システム起動時又はシステム初期化時に前記システムラッチタイミング調整工程の実行が要求された際には、前記システムラッチタイミング調整工程では、前記外部ストローブ信号の全ビットを各々複数の遅延量で遅延させた複数の遅延ストローブ信号を生成し、通常動作時の最中に前記システムラッチタイミング調整工程の実行が要求された際には、前記システムラッチタイミング調整工程では、前記外部ストローブ信号の全ビット未満の所定数のビットを各々複数の遅延量で遅延させた複数の遅延ストローブ信号を生成することを特徴とする。
【0024】
請求項7記載の発明は、前記請求項4記載のデータのラッチタイミング調整方法において、前記外部データは、複数ビットで構成され、システム起動時又はシステム初期化時に前記ストローブラッチタイミング調整工程の実行が要求された際には、前記ストローブラッチタイミング調整工程では、前記外部データの全ビットを各々複数の遅延量で遅延させた複数の遅延データを生成し、通常動作時の最中に前記ストローブラッチタイミング調整工程の実行が要求された際には、前記ストローブラッチタイミング調整工程では、前記外部データの全ビット未満の所定数のビットを各々複数の遅延量で遅延させた複数の遅延データを生成することを特徴とする。
【0025】
請求項8記載の発明のデータのラッチタイミング調整装置は、外部ストローブ信号及び前記外部ストローブ信号に同期する外部データを受け、前記外部データを前記外部ストローブ信号によりラッチした後、そのラッチされた外部データをシステムクロックにより再度ラッチするデータのラッチタイミング調整装置であって、前記外部ストローブ信号を複数の遅延量で各々遅延させて複数の遅延ストローブ信号を生成し、その生成した複数の遅延ストローブ信号の何れか1つを選択して出力するストローブ遅延選択部と、前記外部データを複数の遅延量で各々遅延させて複数の遅延データを生成し、その生成した複数の遅延データの何れか1つを選択して出力するデータ遅延選択部と、前記データ遅延選択部からの遅延データ及び前記ストローブ遅延選択部により選択された遅延ストローブ信号を受け、この遅延ストローブ信号の受信タイミングでチェック用データを生成すると共に、前記遅延ストローブ信号の受信タイミングで前記受けた外部データ又は前記生成したチェック用データをラッチするストローブラッチ部と、前記ストローブラッチ部でラッチされた遅延データ又はチェック用データを前記システムクロックでラッチするシステムラッチ部と、前記ストローブ遅延選択部を制御するストローブ遅延制御部と、前記データ遅延選択部を制御するデータ遅延制御部とを備えたことを特徴とする。
【0026】
請求項9記載の発明は、前記請求項8記載のデータのラッチタイミング調整装置において、前記システムラッチ部でラッチされた遅延データ又はチェック用データを対応する期待値と比較して、期待値と一致するか否かを判定する期待値比較部と、前記期待値比較部の比較結果を受け、その比較結果に応じて、前記ストローブ遅延選択部での複数の遅延ストローブ信号の何れか1つを最適ストローブ信号と判定するストローブ遅延判定部と、前記期待値比較部の比較結果を受け、その比較結果に応じて、前記データ遅延選択部での複数の遅延データの何れか1つを最適データと判定するデータ遅延判定部とを備えることを特徴とする。
【0027】
請求項10記載の発明のデータのラッチタイミング調整装置は、外部ストローブ信号及び前記外部ストローブ信号に同期する外部データを受け、前記外部データを前記外部ストローブ信号によりラッチした後、そのラッチされた外部データをシステムクロックにより再度ラッチするデータのラッチタイミング調整装置であって、前記システムクロックを複数の遅延量で各々遅延させて複数の遅延システムクロックを生成し、その生成した複数の遅延システムクロックの何れか1つを選択して出力するクロック遅延選択部と、前記外部データ及び前記外部ストローブ信号を受け、この外部ストローブ信号の受信タイミングでチェック用データを生成すると共に、前記外部ストローブ信号の受信タイミングで前記受けた外部データ又は前記生成したチェック用データをラッチするストローブラッチ部と、前記ストローブラッチ部でラッチされた外部データ又はチェック用データを前記クロック遅延選択部で選択された遅延システムクロックでラッチするシステムラッチ部と、前記クロック遅延選択部を制御するクロック遅延制御部とを備えたことを特徴とする。
【0028】
請求項11記載の発明は、前記請求項10記載のデータのラッチタイミング調整装置において、前記外部データを複数の遅延量で各々遅延させて複数の遅延データを生成し、その生成した複数の遅延データの何れか1つを選択して出力するデータ遅延選択部と、前記データ遅延選択部を制御するデータ遅延制御部とを備えたことを特徴とする。
【0029】
請求項12記載の発明は、前記請求項11記載のデータのラッチタイミング調整装置において、前記システムラッチ部でラッチされた外部データ又はチェック用データを対応する期待値と比較して、期待値と一致するか否かを判定する期待値比較部と、前記期待値比較部の比較結果を受け、その比較結果に応じて、前記クロック遅延選択部での複数の遅延システムクロックの何れか1つを最適システムクロックと判定するクロック遅延判定部と、前記期待値比較部の比較結果を受け、その比較結果に応じて、前記データ遅延選択部での複数の遅延データの何れか1つを最適データと判定するデータ遅延判定部とを備えることを特徴とする。
【0030】
請求項13記載の発明は、前記請求項10記載のデータのラッチタイミング調整装置において、前記クロック遅延選択部は、互いに異なる位相の複数のシステムクロックを同時に発生し、その複数のシステムクロックの何れか1つを選択して出力する固定遅延部と、前記固定遅延部に直列に接続され、複数の遅延回路が直列に接続された変動遅延部とを備えることを特徴とする。
【0031】
請求項14記載の発明は、前記請求項8又は11記載のデータのラッチタイミング調整装置において、前記ストローブ遅延制御部と前記データ遅延制御部とは、その何れか一方の遅延制御部で兼用されることを特徴とする。
【0032】
請求項15記載の発明は、前記請求項8記載のデータのラッチタイミング調整装置において、外部ストローブ信号は、n(nは2以上の整数)ビットの信号であり、前記ストローブ遅延選択部はn個備えられることを特徴とする。
【0033】
請求項16記載の発明は、前記請求項9記載のデータのラッチタイミング調整装置において、前記期待値比較部は、ストローブ遅延制御時とデータ遅延制御時とで共用され、前記ストローブ遅延判定部とデータ遅延判定部とは、その何れか一方で他方が兼用され、前記チェック用データは、ストローブ遅延制御時とデータ遅延制御時とで異なるデータが選択可能であることを特徴とする。
【0034】
請求項17記載の発明は、前記請求項12記載のデータのラッチタイミング調整装置において、前記期待値比較部は、クロック遅延制御時とデータ遅延制御時とで共用され、前記クロック遅延判定部とデータ遅延判定部とは、その何れか一方で他方が兼用され、前記チェック用データは、クロック遅延制御時とデータ遅延制御時とで異なるデータが選択可能であることを特徴とする。
【0035】
請求項18記載の発明は、前記請求項8〜10及び12の何れか1項に記載のデータのラッチタイミング調整装置において、前記チェック用データは、任意のデータとして外部から入力可能であることを特徴とする。
【0036】
以上により、請求項1〜18記載の発明では、外部ストローブ信号とシステムクロックとの間で行う第1の位相調整と、外部ストローブ信号と外部データとの間で行う第2の位相調整とを行うので、外部データを外部ストローブ信号でラッチした後、再度、システムクロックでラッチミス無く精度高くラッチすることができる。例えば、前記第1の位相調整では、外部ストローブ信号とシステムクロックとの何れか一方を固定し、他方を位相調整して、両者間を最適な位相関係に調整し、その後、第2の位相調整において、前記最適な位相関係の外部ストローブ信号を基準に、外部データの位相を調整して、この両者間を最適な位相関係に調整すれば、外部ストローブ信号に同期した外部データをシステムクロックで正常にラッチ可能である。
【発明の効果】
【0037】
以上説明したように、請求項1〜18記載の発明のデータのタイミング調整方法及び装置によれば、外部ストローブ信号に同期した外部データをその外部ストローブ信号でラッチした後、システムクロックで再度ラッチする場合にも、精度の高いラッチタイミング調整が可能となって、その外部データを精度良くシステムクロックでラッチすることが可能である。
【発明を実施するための最良の形態】
【0038】
以下、本発明の実施形態を図面に基づいて説明する。
【0039】
(第1の実施形態)
図1は、本発明の第1の実施形態のデータのラッチタイミング調整装置を示す。同図のラッチタイミング調整装置は、メモリ100からストローブ信号s100a及びこのストローブ信号s100aに同期したデータs100bが出力される場合に、この外部データs100bのラッチタイミングを調整するものであって、メモリ100以外の回路等は、1つのLSIに集積されて、本ラッチタイミング調整装置を構成する。
【0040】
本実施形態では、以下、前記メモリ100からのストローブ信号s100a及びデータs100bを外部ストローブ信号及び外部データとしてラッチタイミング調整する場合を例示するが、メモリ100に限定されず、LSI等から出力されるストローブ信号及びデータをラッチタイミング調整する場合をも含むのは勿論である。
【0041】
図1において、101は書き込み制御部、102は読み出し制御部であって、この両制御部101、102は、モード選択信号を受け、このモード選択信号がラッチタイミング調整モードを指示している際には、メモリ100から前記ストローブ信号s100a及び所定の外部データs100bを出力させる。これらの制御部の詳細な説明は、他の重要な回路要素の説明の後に説明する。
【0042】
図1において、103はストローブ遅延選択部であって、直列に接続した複数個の遅延回路1031、1032〜103nと、最終段に位置する選択部103aとを有し、メモリ100からのストローブ信号s100aをこれ等の遅延回路1031〜103nにより順次遅延して、相互に遅延量の異なる複数の遅延ストローブ信号を生成すると共に、これらの遅延回路1031〜103nの出力の何れか1つを選択部103aにより選択して、出力する。
【0043】
また、104はデータ遅延選択部であって、直列に接続した複数個の遅延回路1041、1042〜104nと、最終段に位置する選択部104aとを有し、メモリ100からの読み出しデータs100bをこれ等の遅延回路1041〜104nにより順次遅延して、相互に遅延量の異なる複数の遅延データを生成すると共に、これらの遅延回路1041〜104nの出力の何れか1つを選択部104aにより選択して、出力する。
【0044】
更に、106はストローブラッチ部である。このストローブラッチ部106は、システムラッチタイミング調整モード時には、ストローブ遅延選択部103の選択部103aにより選択された何れか1つの遅延回路からの遅延ストローブ信号を順次受け、その各受信タイミングでチェック用データを生成する。システムラッチタイミング調整モードでは、ストローブ信号とシステムクロックとの位相調整を行う関係上、ストローブ信号とデータとは完全同期する必要があり、このため、ストローブラッチ部106は、データ遅延選択部104からの遅延データを受けても使用せず、別途、チェック用データを生成する。このチェック用データは、データ保管部105からその内部に保管されたデータを読み込んで、そのデータと同一のデータを生成する。
【0045】
また、前記ストローブラッチ部106は、ストローブラッチタイミング調整モード時には、メモリ100からのストローブ信号s100aとデータs100bとの間の位相調整である関係上、データ遅延選択部104の選択部104aにより選択された何れかの遅延回路からの遅延データを順次受けると共に、前記システムラッチタイミング調整モード時に位相調整された最適ストローブ信号、即ち、前記ストローブ遅延選択部103の選択部103aにより選択、決定された所定の遅延回路からの遅延ストローブ信号を受けて、その受けた各遅延データを最適ストローブ信号でラッチする。
【0046】
前記データ保管部105は、システムラッチタイミング調整で使用するチェック用データと、ストローブラッチタイミング調整で使用するチェック用データとが予め保管され、各々、調整モードに応じたチェック用データを出力する。尚、これ等のチェック用データは、外部から例えばIICレジスタ等を用いた制御により、ポート105iから任意のデータに変更することも可能である。これにより、基板等への実装後の環境に応じて、チェック用データを変更することができ、最適なラッチタイミング調整が可能となる。
【0047】
107はシステムラッチ部であって、前記ストローブラッチ部106でラッチされたデータをシステムクロックs200でラッチする。通常動作モードの際には、このシステムラッチ部107でラッチされたデータが使用される。
【0048】
108は期待値比較部であって、前記システムラッチ部107によりラッチされたデータを受けると共に、このデータを、システムラッチタイミング調整モード時には、前記データ保管部105に保管されているシステムラッチタイミング調整のためのチェック用データ(期待値)と比較する一方、ストローブラッチタイミング調整時には、前記データ保管部105に保管されているストローブラッチタイミング調整のためのチェック用データ(期待値)と比較して、その一致、不一致の比較結果を出力する。
【0049】
109は遅延判定部(ストローブ遅延判定部及びクロック遅延判定部)であって、システムラッチタイミング調整モードの終了時には、前記読み出し制御部102からの遅延判定信号を受けて、前記期待値比較部108での複数の比較結果に基づいて、前記ストローブ遅延選択部103の複数の遅延回路1031〜103nのうち、ストローブラッチ部106でのラッチデータがシステムラッチ部107で適切にラッチされた場合の1つの遅延回路、即ち、最適な遅延量を持つ最適ストローブ信号を判定し、一方、ストローブラッチタイミング調整モードの終了時には、前記読み出し制御部102からの遅延確定信号を受けて、前記期待値比較部108での複数の比較結果に基づいて、前記前記データ遅延選択部104の複数の遅延回路1041〜104nのうち、遅延データがストローブラッチ部106で適切にラッチされた場合の1つの遅延回路、即ち、最適な遅延量を持つ最適データを判定する。
【0050】
ここで、前記遅延判定部109での具体的な判定方法を説明する。期待値比較部108での複数の比較結果のうち、両データが一致した比較結果が1つの場合には、これに対応する遅延回路の遅延ストローブ信号又は遅延データを最適と判定する。また、両データが一致した比較結果が所定個連続する場合には、それらの連続する一致判定に対応する複数の遅延回路の中心、即ち、セットアップマージンとホールドマージンが均一な遅延ストローブ信号又は遅延データを最適と判定したり、それらに対応する遅延回路のうちセットアップマージン又はホールドマージンを多く確保する遅延回路の遅延ストローブ信号又は遅延データを最適と判定しても良い。更に、孤立点除去の考えに基づき、複数回の判定結果から最適遅延を決定しても良い。例えば、遅延判定部108において複数回(例えば5回)の判定結果を記憶し、これ等の判定結果のうち、同一の判定結果が所定回(例えば3回)連続していたり、不連続でも所定回(例えば4回)含まれている場合に初めて、選択する遅延回路を更新するようにしても良い。
【0051】
また、図1において、110はストローブ遅延制御部であって、システムラッチタイミング調整モードの期間では、前記ストローブ遅延選択部103の複数の遅延回路1031〜103nのうち先頭から順次1つずつ選択するように選択部103aを制御し、そのシステムラッチタイミング調整モードの終了時には、前記読み出し制御部102から遅延確定信号を受けて、前記遅延判定部109で判定された前記ストローブ遅延選択部103内の所定の遅延回路の出力である最適ストローブ信号を選択するように、選択部103aを制御する。
【0052】
更に、111はデータ遅延制御部であって、ストローブラッチタイミング調整モードの期間では、前記データ遅延選択部104の複数の遅延回路1041〜104nのうち先頭から順次1つずつ選択するように選択部104aを制御し、そのストローブラッチタイミング調整モードの終了時には、前記読み出し制御部102から遅延確定信号を受けて、遅延判定部109で判定された前記データ遅延選択部104内の所定の遅延回路の出力である最適データを選択するように、選択部104aを制御する。
【0053】
加えて、前記書き込み制御部101は、モード選択信号を受け、このモード選択信号がシステムラッチタイミング調整モードを指示している際には、所定のデータ(例えば、0又は1が連続するデータ)をメモリ100に書き込む。更に、ストローブラッチタイミング調整モードを指示している際には、データ保管部105に保管されたストローブラッチタイミング調整のためのチェック用データをメモリ100に書き込む。尚、通常動作モードの際には、入力データをメモリ100の所定アドレスに書き込む。書き込み制御部101は、具体的には、タイミング信号s101a、アドレス信号s101b、及びデータs101cをメモリ100に与えて、メモリ100の所定のアドレスに所定のデータを書き込む。
【0054】
また、読み出し制御部102は、前記モード選択信号がシステムラッチタイミング調整モード又はストローブラッチタイミング調整モードを指示している際には、タイミング信号s102a及び所定のアドレス信号s102bをメモリ100に与えて、メモリ100からストローブ信号s100aに同期した所定のデータs100bを読み出す共に、前記期待値比較部108、遅延判定部109及びストローブ遅延制御部110に対して読み出し期間信号及び遅延判定信号を出力する。尚、通常動作モード時にも、タイミング信号s102a及びアドレス信号s102bをメモリ100に与えて、メモリ100からストローブ信号s100aに同期したデータs100bを読み出す。
【0055】
次に、図1に示したストローブ信号に同期したデータのラッチタイミング調整装置のタイミング調整方法について図面に基づいて説明する。
【0056】
図2は、ストローブ信号に同期したデータをシステムクロックs200でラッチするラッチタイミング調整の全体フローチャートを示す。以下、このフローチャートに基づいて本実施形態のラッチタイミング調整装置を用いたラッチタイミング調整を説明する。
【0057】
図2において、先ず、ステップP0でモード選択信号がタイミング調整を要求しているか否かを判別し、タイミング調整モードを要求している場合は、ステップP1でシステムラッチタイミング調整工程に移行する。この工程が完了すれば、ステップP2でストローブラッチタイミング調整工程に移行し、その完了後は、ステップP3の通常動作に移行する。以降は、前記動作を繰り返す。これにより、周囲の状況の変化に対応してストローブ信号s100aに同期したデータs100bをシステムクロックs200でラッチするタイミング調整が可能となる。尚、前記タイミング調整は、1回のタイミング調整要求でシステムラッチタイミング調整工程を実行し、次のタイミング調整要求でストローブラッチタイミング調整工程を実行することも可能である。
【0058】
図3は、前記システムラッチタイミング調整工程P1の方法を示すフローチャートである。図3において、システムラッチタイミング調整時には、予め、書き込み制御部101から、予め定めたデータs101cと、これをメモリ100に格納するアドレスs101bと、書き込みタイミング信号s101aとをメモリ100に与えて、メモリ100の所定アドレスにデータs101cを書き込む。尚、このシステムラッチタイミング調整時には、ストローブラッチ部105はメモリ100からの読み出しデータを用いず、データ保管部105に保管したチェック用データと同一データを生成する。
【0059】
その後、読み出し制御部102により、先ほどデータを書き込んだアドレスを指定するアドレス信号s102bと、読み出しタイミング信号s102aとをメモリ100に与えて、メモリ100からストローブ信号s100aとこれに同期したデータs100bとを読み出す。そして、メモリ100から複数回のストローブ信号s100a及びデータs100bが順次読み出されるように、以上の動作を複数回繰り返す。この間、ストローブ遅延制御部110は、読み出し制御部102から制御信号を受けて、メモリ100からストローブ信号が読み出される毎に順次ストローブ遅延選択部103内で先頭に位置する遅延回路1031から順にその遅延回路からの遅延ストローブ信号を選択するように、選択部103aに対して遅延選択信号を出力する(ステップPa)。
【0060】
その結果、ストローブラッチ部106は、ストローブ遅延選択部103から先頭の遅延回路1031の遅延ストローブ信号を受けて、この遅延ストローブ信号の受信タイミングでデータ保管部106のチェック用データを読み出して同一データを生成し、次いで、遅延選択部103内の第2番目の遅延回路1032の遅延ストローブ信号の受信タイミングで第2番目のチェック用データを生成し、その後は、順次、第i(i=3〜m)番目の遅延ストローブ信号の受信タイミングで第i番目のチェック用データを生成する(ステップPb)。
【0061】
システムラッチ部107では、前記ストローブラッチ部106で生成されたチェック用データをシステムクロックs200でラッチする(ステップPc)。
【0062】
期待値比較部108では、システムラッチ部107でのラッチデータと、このラッチデータに対応する前記データ保管部105内のシステムラッチタイミング調整のためのチェック用データ(期待値)とを比較し(ステップPd)、両信号の一致、不一致を検出することをm回繰り返す(ステップPe)。
【0063】
システムラッチタイミング調整の終了時には、読み出し制御部102から遅延確定信号が遅延判定部109に出力される。この遅延判定部109では、期待値比較部108での複数の比較結果に基づいて、ストローブ遅延選択部103の複数の遅延回路1031〜103nの中から、システムラッチ部107がストローブラッチ部106からのデータを適切にラッチした場合の1つの遅延回路を判定する(ステップPf)。この遅延回路の判定、すなわち、最適タイミングが判定されると、ストローブ遅延制御部110は、読み出し制御部102から遅延確定信号を受けて、前記遅延判定部109が判定した1つの遅延回路の出力を最適ストローブ信号として選択するように、選択部103aを制御する(ステップPg)。
【0064】
次に、図4は、前記ストローブラッチタイミング調整工程P2の方法を示すフローチャートを示す。
【0065】
図4において、このストローブラッチタイミング調整時には、予め、書き込み制御部101から、データ保管部105に保管されたストローブラッチタイミング調整用のチェック用データs101cと、これをメモリ100に格納するアドレスs101bと、書き込みタイミング信号s101aとをメモリ100に与えて、メモリ100の所定アドレスにデータs101cを書き込む。
【0066】
その後、読み出し制御部102により、先ほどチェック用データを書き込んだアドレスを指定するアドレス信号s102bと、読み出しタイミング信号s102aとをメモリ100に与えて、メモリ100からストローブ信号s110aとこの信号に同期したチェック用データs100bとを読み出す。そして、メモリ100から複数回のチェック用データが順次読み出されるように、以上の動作を複数回繰り返す。この間、データ遅延制御部111は、読み出し制御部102から制御信号を受けて、メモリ100からチェック用データが読み出される毎に順次データ遅延選択部104内で先頭に位置する遅延回路1041から順にその遅延回路からの遅延データを選択するように、選択部104aに対して遅延選択信号を出力する(ステップPa)。
【0067】
その結果、ストローブラッチ部106は、前記システムラッチタイミング工程で確定したストローブ遅延選択部103からの最適ストローブ信号と、データ遅延選択部104から先頭の遅延回路1041からの最初の遅延データを受けて、この最適ストローブ信号の受信タイミングで前記最初の遅延データをラッチし、その後、データ遅延選択部104内の第2番目の遅延回路1052からの遅延データを最適ストローブ信号の受信タイミングでラッチし、その後は、順次、第j(j=3〜n)番目の遅延データを最適ストローブ信号の受信タイミングでラッチする(ステップPb)。
【0068】
システムラッチ部107では、前記ストローブラッチ部106でラッチしたデータをシステムクロックs200でラッチする(ステップPc)。
【0069】
期待値比較部108では、前記システムラッチ部107でのラッチデータと、このラッチデータに対応する前記データ保管部105内のストローブラッチタイミング調整チェック用データ(期待値)とを比較し(ステップPd)、両信号の一致、不一致を検出することをn回繰り返す(ステップPe)。
【0070】
前記ストローブラッチタイミング調整の終了時には、読み出し制御部102から遅延確定信号が遅延判定部109に出力される。この遅延判定部109では、期待値比較部108での複数の比較結果に基づいて、データ遅延選択部104の複数の遅延回路1041〜104nの中から、ストローブラッチ部106がデータ遅延選択部104からの遅延データを適切にラッチした場合の1つの遅延回路を判定する(ステップPf)。この遅延回路の判定、すなわち、最適データが判定されると、データ遅延制御部111は、読み出し制御部102から遅延確定信号を受けて、前記遅延判定部109が判定した1つの遅延回路からの出力を最適データとして選択するように、選択部104aを制御する(ステップPg)。
【0071】
その後、モード選択信号が通常動作モードを要求するように変更されると、メモリ100からの読み出しデータs100bは、ストローブラッチ部106において、ストローブ遅延選択部103の選択部103aで選択された最適ストローブ信号の受信タイミングで、データ遅延選択部104の選択部104aで選択された最適データがラッチされた後、システムラッチ部107でシステムクロックs200で再度ラッチされて、通常動作で使用されることになる。
【0072】
図5は、前述のシステムラッチタイミング調整工程P1におけるタイミングチャートである。同図において、メモリから読み出したストローブ信号s100aから、システムラッチタイミング調整工程で遅延量dey−sを持つ遅延ストローブ信号s100a’を生成する。続いてストローブラッチ部106において遅延ストローブ信号s100a’の受信タイミングでチェック用データCSを生成し、このチェック用データCSをシステムクロックs200でラッチし、このラッチされたチェック用データSDが期待値と比較される。
【0073】
また、図6は、前述のストローブラッチタイミング調整工程P2におけるタイミングチャートである。同図において、メモリ100から読み出したデータs100bから遅延データを生成する。続いて、ストローブラッチ部106において前記システムラッチタイミング調整工程P1で最適化された最適ストローブ信号の受信タイミングで遅延データをラッチし、その後、このラッチされた遅延データをシステムクロックs200でラッチする。その後、このシステムクロックs200でラッチされた遅延データが期待値と比較される。
【0074】
このように、ラッチタイミング調整工程をシステムラッチタイミング調整工程とストローブラッチタイミング調整工程とに分けることにより、システムラッチタイミング調整工程では、メモリ100からの読み出しデータのタイミングに依存することなく、チェック用データがシステムラッチ部107でシステムクロックs200で正常にラッチできるように、ストローブ遅延選択部103で最適ストローブ信号を得て、この最適ストローブ信号とシステムクロックs200との位相関係を適切にすると共に、ストローブラッチタイミング調整工程では、得られた前記最適ストローブ信号を基準に、メモリ100からの読み出しデータs100bをデータ遅延選択部104で種々遅延して最適データを得て、この最適データと前記最適ストローブ信号との位相関係をも適切にすることが可能となる。その結果、メモリ100からのストローブ信号s100aに同期したデータs100bをシステムクロックs200でラッチするラッチタイミング調整を高精度で行うことができる。
【0075】
また、本実施形態では、期待値比較部108と遅延判定部109とが、ストローブ遅延制御用とシステムクロック遅延制御用の双方で共用されるので、回路規模の増加を抑えることが可能である。
【0076】
(第1の実施形態の第1の変形例)
次に、前記第1の実施形態の第1の変形例を図7に基づいて説明する。
【0077】
本変形例では、ストローブ遅延制御部110とデータ遅延制御部111とを遅延制御部210で共用したものである。
【0078】
すなわち、図7において、遅延制御部210は、モード選択信号がシステムラッチタイミング調整モードを指示するときには、ストローブ遅延選択部103の制御を行い、ストローブラッチタイミング調整モードを指示するときには、データ遅延選択部104の制御を行うものである。
【0079】
従って、本変形例では、ストローブ遅延制御とデータ遅延制御とを共通の遅延制御部210で行うので、回路規模の増加を抑えて、高精度なタイミング調整を実現することができる。
【0080】
(第1の実施形態の第2の変形例)
続いて、前記第1の実施形態の第2の変形例を図8に基づいて説明する。
【0081】
本変形例は、メモリ100からのストローブ信号s100a''がm(mは2以上の整数)ビット、読み出しデータs100b''がn(nは2以上の整数)ビットで構成される場合を示している。
【0082】
図8では、メモリ100は、mビットのストローブ信号s100a''と、nビットの読み出しデータs100b''とを出力する。例えば、ストローブ信号s100a''は4ビット、読み出しデータs100b''は32ビットであって、ストローブ信号の1ビット当り8ビットの読み出しデータが対応する。これに伴い、ストローブ遅延選択部303はm個備えられて、mビットの各ビット別に遅延ストローブ信号を生成する。データ遅延選択部304も同様にn個備えられて、nビットの各ビット別に遅延データを生成する。
【0083】
ストローブラッチ部306はn個備えられて、n個のデータ遅延選択部304で生成された各ビットの遅延データを、m個のストローブ遅延選択部303で生成された対応するビット目の遅延ストローブ信号でラッチすると共に、m個のストローブ遅延選択部303A〜303Mの選択部103a…で選択された遅延ストローブ信号の受信タイミングで、対応するビット目のチェック用データを生成する。
【0084】
システムラッチ部307は、nビットのストローブラッチ部306A〜306Nからのデータをシステムクロックs200でラッチする。
【0085】
期待値比較部308は、システムラッチタイミング調整時には、前記システムラッチ部307によりラッチされたnビットのデータのうち代表となるmビットから順次1ビットずつ選択して、前記データ保管部105に保管されているシステムラッチタイミング調整チェック用データとを比較して、その一致、不一致の結果を出力し、一方、ストローブラッチタイミング調整時には、前記システムラッチ部307によりラッチされたnビットのデータから順次1ビットずつ選択して、前記データ保管部105に保管されているストローブラッチタイミング調整チェック用データとを比較して、その一致、不一致の結果を出力する。
【0086】
遅延判定部309は、前記第1の実施形態と同様に、最適データ及び最適ストローブ信号を確定する。
【0087】
遅延制御部310は、システムラッチタイミング調整モードの期間では、調整対象のビット目のストローブ遅延選択部303内の複数の遅延回路3031〜303nのうち先頭から順次1つずつ選択するように選択部303aを制御し、一方、そのシステムラッチタイミング調整モードの終了時には、前記読み出し制御部102から遅延確定信号を受けて、前記遅延判定部309で判定された所定の遅延回路の出力、即ち、最適ストローブ信号を選択するように選択部303aを制御し、一方、ストローブラッチタイミング調整モードの期間では、調整対象のビット目のデータ遅延選択部304内の複数の遅延回路3041〜304nのうち先頭から順次1つずつ選択するように選択部304aを制御し、そのストローブラッチタイミング調整モードの終了時には、前記読み出し制御部102から遅延確定信号を受けて、前記遅延判定部309で判定された所定の遅延回路の出力、即ち、最適データを選択するように、選択部304aを制御する。
【0088】
従って、本変形例において、メモリ100からのストローブ信号s100a''が4ビット(m=4)、読み出しデータs100b''が例えば32ビット(n=32)である場合には、システムラッチタイミング調整工程では、4ビットの遅延ストローブ信号から生成した代表チェック用データ4ビットを、システムクロックs200でラッチし、1ビットずつ順次、期待値比較、遅延判定、及びストローブ遅延制御を実行した後、その後のストローブラッチタイミング調整工程において、前記32ビットの読み出しデータを、8ビット毎に最適化された対応する遅延ストローブ信号でラッチし、1ビットずつ順次、期待値比較、遅延判定、及びストローブ遅延制御を実行する。
【0089】
尚、期待値比較以降の動作は、期待値比較部308を複数個備えることにより、複数ビットを並列処理することも可能である。
【0090】
図9は、メモリの転送量の制限等により一度に全ビットのタイミング調整ができない場合のラッチタイミング調整方法を示すフローチャートを示す。
【0091】
この場合、通常動作に影響しないシステム起動時やシステム初期化時等に限り、1回のタイミング調整要求で全ビットのシステムラッチタイミング調整及びストローブラッチタイミング調整を連続して実行する(ステップS1〜S4)。その後、通常動作の最中では、以下のようにラッチタイミング調整を実行する。
【0092】
即ち、1回のタイミング調整要求では、通常動作に影響を及ぼさないビット分だけシステムラッチタイミング調整工程を行い(ステップS5〜S9)、複数回のタイミング調整要求でストローブ信号全ビットのシステムラッチタイミング調整工程を完了する(ステップS5〜S9の繰返し)。
【0093】
続いて、1回のタイミング調整要求で通常動作に影響を及ぼさないビット分だけストローブラッチタイミング調整工程を行い(ステップS10〜S11)、複数回のタイミング調整要求でデータ全ビットのストローブラッチタイミング調整工程を完了する(ステップS10〜S11の繰返し)。
【0094】
以降は、タイミング調整要求に応じて、前記システムラッチタイミング調整工程及び前記ストローブラッチタイミング調整工程を繰り返し実行する。
【0095】
尚、前記タイミング調整要求は、例えば、システム起動直後やシステム初期化時には常時発生し、同期又は非同期タイミングで通常動作が要求される場合には、タイミング調整要求と通常動作要求との間で予め定めた所定の優先順位に基づいて調停して、優先順位が高いときに発生するようにしても良い。
(第2の実施形態)
次に、本発明の第2の実施形態のデータのラッチタイミング調整装置を図面に基づいて説明する。
【0096】
図10は、本発明の第2の実施形態のストローブ信号に同期したデータのラッチタイミング調整装置を示す。
【0097】
本実施形態は、ストローブ遅延選択部103に代えてクロック遅延選択部403を備え、ストローブ遅延制御部110に代えてクロック遅延制御部410を備えたものである。
【0098】
すなわち、外部ストローブ信号とシステムクロックとの間の位相調整について、前記実施形態では外部ストローブ信号をストローブ遅延選択部103で遅延させて位相調整したが、本実施形態では、システムクロックをクロック遅延選択部403で遅延させて位相調整するものである。
【0099】
より具体的に説明すると、既述した図1では、システムラッチタイミング調整工程において、ストローブ遅延制御部110からの遅延制御信号によってストローブ信号からストローブ遅延選択部105で最適な遅延ストローブが選択されるよう調整していたが、本実施形態では、システムラッチタイミング調整工程において、クロック遅延制御部410からの遅延制御信号によってシステムクロックs200からクロック遅延選択部403で最適な遅延クロックが選択されるよう調整するものである。このとき、メモリ100からのストローブ信号の遅延がデータより早くなる可能性がある場合、ストローブ信号をデータより遅延させておくとなお良い。また、調整された遅延システムクロックは、メモリ100の読み出し以降の回路にのみ供給されるものとし、システムクロックs200から遅延システムクロックへのデータ乗せ換えが存在する場合は、このデータを前記クロック遅延選択部403と同等の遅延量だけ遅延させた遅延システムクロックでラッチすることができる。
【0100】
その他の構成は、図1と同様であるので、その説明を省略する。
【0101】
また、図11は、本第2の実施形態におけるシステムラッチタイミング調整工程におけるタイミングチャートを示す。
【0102】
システムラッチタイミング調整工程では、システムクロックs200から、遅延量dey−sを持つ遅延システムクロックs200’を生成する。ストローブラッチ部106では、メモリ100からのストローブ信号s100aの受信タイミングでチェック用データを生成し、このチェック用データを前記遅延システムクロックs200’でラッチする。この遅延システムクロックs200’でラッチされたチェック用データは、期待値比較部108で期待値と比較される。
【0103】
従って、本実施形態では、第1の実施形態と同様の作用効果を奏する。更に、本実施形態では、メモリ100の読み出し以降のシステムクロックs200を遅延させることにより、メモリ100や実装基板における遅延までも考慮した調整が可能となる。
【0104】
尚、図示しないが、図10に示した本実施形態について、更に、図7及び図8と同様の変形を加えても良いのは勿論である。
【0105】
(第2の実施形態の第1の変形例)
次に、前記第2の実施形態の第1の変形例を図12に基づいて説明する。
【0106】
本変形例は、前記クロック遅延選択部403の構成を変更したものである。
【0107】
すなわち、図12において、クロック遅延選択部403は、固定遅延部4030と変動遅延部4031とを備えており、前記図10に示したクロック遅延選択部403は、固定遅延部4030と変動遅延部4031とにより構成される。
【0108】
前記固定遅延部4030は、システムクロックs200を受け、このシステムクロックs200から互いに位相が異なる複数のシステムクロックを同時に生成し、これ等の中から1つのシステムクロックを選択して出力する。システムクロックs200の異なる位相は、例えばPLL回路やDLL回路を用いて容易に生成可能である。
【0109】
前記変動遅延部4031は、直列に接続した複数個の遅延回路40311、40312〜4031nと、選択部4031aとを有し、前記固定遅延部4030で選択された位相のシステムクロックをこれ等の遅延回路40311〜4031nにより順次遅延して遅延量の異なる複数の遅延システムクロックを生成すると共に、これらの遅延回路40311〜4031nの出力の何れか1つを選択部4031aにより選択して出力する。
【0110】
これにより、遅延システムクロックの遅延量を大きくしようとした場合、前記固定遅延部4030で予めクロック位相を大きく変更しておくことにより、周辺温度や電圧変動等の条件に影響されない固定遅延とすることができるのに加えて、前記変動遅延部4031において遅延量の微調整を行うことにより、より一層に精度の高いタイミング調整が可能となる。
【産業上の利用可能性】
【0111】
以上説明したように、本発明は、外部ストローブ信号に同期した外部データをシステムクロックでラッチする場合に、精度の高いラッチタイミング調整を可能にできるので、ストローブ信号に同期したデータのラッチタイミング調整装置等として有用である。
【図面の簡単な説明】
【0112】
【図1】本発明の第1の実施形態のデータのラッチタイミング調整装置の全体構成を示すブロック図である。
【図2】同ラッチタイミング調整装置を用いたデータのラッチタイミング調整方法を示すフローチャート図である。
【図3】同ラッチタイミング調整方法におけるシステムラッチタイミング調整工程の詳細を示すフローチャート図である。
【図4】同ラッチタイミング調整方法におけるストローブラッチタイミング調整工程の詳細を示すフローチャート図である。
【図5】同システムラッチタイミング調整工程のタイミングチャート図である。
【図6】同ストローブラッチタイミング調整工程のタイミングチャート図である。
【図7】本発明の第1の実施形態の第1の変形例のデータのラッチタイミング調整装置の全体構成を示すブロック図である。
【図8】同第2の変形例のデータのラッチタイミング調整装置の全体構成を示すブロック図である。
【図9】同ラッチタイミング調整装置を用いたデータのタイミング調整方法を示すフローチャート図である。
【図10】本発明の第2の実施形態のデータのラッチタイミング調整装置の全体構成を示すブロック図である。
【図11】同ラッチタイミング調整方法におけるシステムラッチタイミング調整工程のタイミングチャート図である。
【図12】本発明の第2の実施形態の第1の変形例のデータのラッチタイミング調整装置に備えるクロック遅延選択部の内部構成を示す図である。
【図13】従来のデータのラッチタイミング調整装置の全体構成を示すブロック図である。
【符号の説明】
【0113】
100 メモリ
s100a ストローブ信号
s100a'' mビットのストローブ信号
s100b データ(外部データ)
s100b'' nビットのデータ
s200 システムクロック
101 書き込み制御部
102 読み出し制御部
103 ストローブ遅延選択部
104 データ遅延選択部
105 データ保管部
106 ストローブラッチ部
107 システムラッチ部
108 期待値比較部
109 遅延判定部
(ストローブ遅延判定部及びデータ遅延判定部)
110 ストローブ遅延制御部
111 データ遅延制御部
210、310 遅延制御部
(ストローブ遅延制御部及びデータ遅延制御部)
403 クロック遅延選択部
4030 固定遅延部
4031 変動遅延部
410 クロック遅延制御部
P1 システムラッチタイミング調整工程
P2 ストローブラッチタイミング調整工程

【特許請求の範囲】
【請求項1】
外部ストローブ信号及び前記外部ストローブ信号に同期する外部データを受け、前記外部データを前記外部ストローブ信号によりラッチした後、そのラッチされた外部データをシステムクロックにより再度ラッチするデータのラッチタイミング調整方法であって、
前記外部ストローブ信号の受信タイミングでチェック用データを生成し、このチェック用データがシステムクロックで正常にラッチされるように、前記外部ストローブ信号と前記システムクロックとの間で位相調整するシステムラッチタイミング調整工程と、
前記システムラッチタイミング調整工程の位相調整により前記システムクロックと所定の位相関係を持つ外部ストローブ信号により前記外部データが正常にラッチされるように、前記ストローブ信号と外部データとの間で位相調整するストローブラッチタイミング調整工程とを備えた
ことを特徴とするデータのラッチタイミング調整方法。
【請求項2】
前記請求項1記載のデータのラッチタイミング調整方法において、
前記システムラッチタイミング調整工程では、
前記外部ストローブ信号を複数の遅延量で各々遅延させた複数の遅延ストローブ信号を生成し、この各遅延ストローブ信号の受信タイミングで各々前記チェック用データを生成し、
前記複数の遅延ストローブ信号のうち、対応するチェック用データがシステムクロックで正常にラッチされた遅延ストローブ信号を最適ストローブ信号として選択する
ことを特徴とするデータのラッチタイミング調整方法。
【請求項3】
前記請求項1記載のデータのラッチタイミング調整方法において、
前記システムラッチタイミング調整工程では、
前記外部ストローブ信号の受信タイミングで前記チェック用データを生成すると共に、
前記システムクロックを複数の遅延量で各々遅延させた複数の遅延システムクロックを生成して、前記チェック用データを前記複数の遅延システムクロックで各々ラッチした後、
前記複数の遅延システムクロックのうち、前記チェック用データが正常にラッチされた遅延システムクロックを最適システムクロックとして選択する
ことを特徴とするデータのラッチタイミング調整方法。
【請求項4】
前記請求項1記載のデータのラッチタイミング調整方法において、
前記ストローブラッチタイミング調整工程は、
前記外部データを複数の遅延量で各々遅延させた複数の遅延データを生成し、
前記複数の遅延データを前記外部ストローブ信号で各々ラッチした後、
前記複数の遅延データのうち、正常にラッチされた遅延データを最適データとして選択する
ことを特徴とするデータのラッチタイミング調整方法。
【請求項5】
前記請求項1記載のデータのラッチタイミング調整方法において、
前記システムラッチ及びストローブラッチの両タイミング調整工程は、所定のタイミング調整要求時に実行され、
前記所定のタイミング調整要求は、システム起動時、システム初期化時、及び通常動作時の最中の少なくとも1つを含む
ことを特徴とするデータのラッチタイミング調整方法。
【請求項6】
前記請求項2記載のデータのラッチタイミング調整方法において、
前記外部ストローブ信号は、複数ビットで構成され、
システム起動時又はシステム初期化時に前記システムラッチタイミング調整工程の実行が要求された際には、前記システムラッチタイミング調整工程では、前記外部ストローブ信号の全ビットを各々複数の遅延量で遅延させた複数の遅延ストローブ信号を生成し、
通常動作時の最中に前記システムラッチタイミング調整工程の実行が要求された際には、前記システムラッチタイミング調整工程では、前記外部ストローブ信号の全ビット未満の所定数のビットを各々複数の遅延量で遅延させた複数の遅延ストローブ信号を生成する
ことを特徴とするデータのラッチタイミング調整方法。
【請求項7】
前記請求項4記載のデータのラッチタイミング調整方法において、
前記外部データは、複数ビットで構成され、
システム起動時又はシステム初期化時に前記ストローブラッチタイミング調整工程の実行が要求された際には、前記ストローブラッチタイミング調整工程では、前記外部データの全ビットを各々複数の遅延量で遅延させた複数の遅延データを生成し、
通常動作時の最中に前記ストローブラッチタイミング調整工程の実行が要求された際には、前記ストローブラッチタイミング調整工程では、前記外部データの全ビット未満の所定数のビットを各々複数の遅延量で遅延させた複数の遅延データを生成する
ことを特徴とするデータのラッチタイミング調整方法。
【請求項8】
外部ストローブ信号及び前記外部ストローブ信号に同期する外部データを受け、前記外部データを前記外部ストローブ信号によりラッチした後、そのラッチされた外部データをシステムクロックにより再度ラッチするデータのラッチタイミング調整装置であって、
前記外部ストローブ信号を複数の遅延量で各々遅延させて複数の遅延ストローブ信号を生成し、その生成した複数の遅延ストローブ信号の何れか1つを選択して出力するストローブ遅延選択部と、
前記外部データを複数の遅延量で各々遅延させて複数の遅延データを生成し、その生成した複数の遅延データの何れか1つを選択して出力するデータ遅延選択部と、
前記データ遅延選択部からの遅延データ及び前記ストローブ遅延選択部により選択された遅延ストローブ信号を受け、この遅延ストローブ信号の受信タイミングでチェック用データを生成すると共に、前記遅延ストローブ信号の受信タイミングで前記受けた遅延データ又は前記生成したチェック用データをラッチするストローブラッチ部と、
前記ストローブラッチ部でラッチされた遅延データ又はチェック用データを前記システムクロックでラッチするシステムラッチ部と、
前記ストローブ遅延選択部を制御するストローブ遅延制御部と、
前記データ遅延選択部を制御するデータ遅延制御部とを備えた
ことを特徴とするデータのラッチタイミング調整装置。
【請求項9】
前記請求項8記載のデータのラッチタイミング調整装置において、
前記システムラッチ部でラッチされた遅延データ又はチェック用データを対応する期待値と比較して、期待値と一致するか否かを判定する期待値比較部と、
前記期待値比較部の比較結果を受け、その比較結果に応じて、前記ストローブ遅延選択部での複数の遅延ストローブ信号の何れか1つを最適ストローブ信号と判定するストローブ遅延判定部と、
前記期待値比較部の比較結果を受け、その比較結果に応じて、前記データ遅延選択部での複数の遅延データの何れか1つを最適データと判定するデータ遅延判定部とを備える
ことを特徴とするデータのラッチタイミング調整装置。
【請求項10】
外部ストローブ信号及び前記外部ストローブ信号に同期する外部データを受け、前記外部データを前記外部ストローブ信号によりラッチした後、そのラッチされた外部データをシステムクロックにより再度ラッチするデータのラッチタイミング調整装置であって、
前記システムクロックを複数の遅延量で各々遅延させて複数の遅延システムクロックを生成し、その生成した複数の遅延システムクロックの何れか1つを選択して出力するクロック遅延選択部と、
前記外部データ及び前記外部ストローブ信号を受け、この外部ストローブ信号の受信タイミングでチェック用データを生成すると共に、前記外部ストローブ信号の受信タイミングで前記受けた外部データ又は前記生成したチェック用データをラッチするストローブラッチ部と、
前記ストローブラッチ部でラッチされた外部データ又はチェック用データを前記クロック遅延選択部で選択された遅延システムクロックでラッチするシステムラッチ部と、
前記クロック遅延選択部を制御するクロック遅延制御部とを備えた
ことを特徴とするデータのラッチタイミング調整装置。
【請求項11】
前記請求項10記載のデータのラッチタイミング調整装置において、
前記外部データを複数の遅延量で各々遅延させて複数の遅延データを生成し、その生成した複数の遅延データの何れか1つを選択して出力するデータ遅延選択部と、
前記データ遅延選択部を制御するデータ遅延制御部とを備えた
ことを特徴とするデータのラッチタイミング調整装置。
【請求項12】
前記請求項11記載のデータのラッチタイミング調整装置において、
前記システムラッチ部でラッチされた外部データ又はチェック用データを対応する期待値と比較して、期待値と一致するか否かを判定する期待値比較部と、
前記期待値比較部の比較結果を受け、その比較結果に応じて、前記クロック遅延選択部での複数の遅延システムクロックの何れか1つを最適システムクロックと判定するクロック遅延判定部と、
前記期待値比較部の比較結果を受け、その比較結果に応じて、前記データ遅延選択部での複数の遅延データの何れか1つを最適データと判定するデータ遅延判定部とを備える
ことを特徴とするデータのラッチタイミング調整装置。
【請求項13】
前記請求項10記載のデータのラッチタイミング調整装置において、
前記クロック遅延選択部は、
互いに異なる位相の複数のシステムクロックを同時に発生し、その複数のシステムクロックの何れか1つを選択して出力する固定遅延部と、
前記固定遅延部に直列に接続され、複数の遅延回路が直列に接続された変動遅延部とを備える
ことを特徴とするデータのラッチタイミング調整装置。
【請求項14】
前記請求項8又は11記載のデータのラッチタイミング調整装置において、
前記ストローブ遅延制御部と前記データ遅延制御部とは、その何れか一方の遅延制御部で兼用される
ことを特徴とするデータのラッチタイミング調整装置。
【請求項15】
前記請求項8記載のデータのラッチタイミング調整装置において、
外部ストローブ信号は、n(nは2以上の整数)ビットの信号であり、
前記ストローブ遅延選択部はn個備えられる
ことを特徴とするデータのラッチタイミング調整装置。
【請求項16】
前記請求項9記載のデータのラッチタイミング調整装置において、
前記期待値比較部は、ストローブ遅延制御時とデータ遅延制御時とで共用され、
前記ストローブ遅延判定部とデータ遅延判定部とは、その何れか一方で他方が兼用され、
前記チェック用データは、ストローブ遅延制御時とデータ遅延制御時とで異なるデータが選択可能である
ことを特徴とするデータのラッチタイミング調整装置。
【請求項17】
前記請求項12記載のデータのラッチタイミング調整装置において、
前記期待値比較部は、クロック遅延制御時とデータ遅延制御時とで共用され、
前記クロック遅延判定部とデータ遅延判定部とは、その何れか一方で他方が兼用され、
前記チェック用データは、クロック遅延制御時とデータ遅延制御時とで異なるデータが選択可能である
ことを特徴とするデータのラッチタイミング調整装置。
【請求項18】
前記請求項8〜10及び12の何れか1項に記載のデータのラッチタイミング調整装置において、
前記チェック用データは、任意のデータとして外部から入力可能である
ことを特徴とするデータのラッチタイミング調整装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2006−189916(P2006−189916A)
【公開日】平成18年7月20日(2006.7.20)
【国際特許分類】
【出願番号】特願2004−381496(P2004−381496)
【出願日】平成16年12月28日(2004.12.28)
【出願人】(000005821)松下電器産業株式会社 (73,050)
【Fターム(参考)】