(57)【要約】【課題】有効データウィンドウの中心でデータ信号をラッチすることができるストローブ信号を得ること。【解決手段】インターフェース回路は、ＤＱ信号のデータ有効ウィンドウを自動検知してＤＱＳ信号の最適遅延量を調整する可変遅延回路１３及び遅延調整回路１４と、可変遅延回路１３における最小遅延量をｔＭＩＮＤＬＹ、ＤＱ信号とＤＱＳ信号と間のスキュをｔＳＫＥＷ、ＤＱ信号のセットアップ時間をｔＳＥＴＵＰとしたとき、ｔＦＩＸＤＬＹ＞ｔＭＩＮＤＬＹ＋ｔＳＫＥＷ−ｔＳＥＴＵＰを満たす遅延量ｔＦＩＸＤＬＹだけＤＱ信号を遅延させる固定遅延回路１１とを有する。【選択図】図１
2008052335.tif 000002
【特許請求の範囲】
【請求項１】
データ信号のデータ有効ウィンドウを自動検知してストローブ信号の最適遅延量を調整するキャリブレーション回路と、
前記キャリブレーション回路における最小遅延量をｔＭＩＮＤＬＹ、前記データ信号と前記ストローブ信号との間のスキュをｔＳＫＥＷ、前記データ信号のセットアップ時間をｔＳＥＴＵＰとしたとき、
ｔＦＩＸＤＬＹ＞ｔＭＩＮＤＬＹ＋ｔＳＫＥＷ−ｔＳＥＴＵＰ
を満たす遅延量ｔＦＩＸＤＬＹだけ前記データ信号を遅延させるデータ信号遅延回路とを有するインターフェース回路。
【請求項２】
前記キャリブレーション回路は、調整モードの際は前記データ信号遅延回路により遅延された前記データ信号を使用して前記ストローブ信号の最適遅延量を調整する
ことを特徴とする請求項１記載のインターフェース回路。
【請求項３】
前記データ信号を前記ストローブ信号により取り込むデータ取込回路を有し、
前記データ取込回路は、前記調整モードの際には前記データ信号遅延回路により遅延されたデータ信号を前記ストローブ信号により取り込み、通常動作モードの際にはデータ信号入力端子からのデータ信号を前記ストローブ信号により取り込む
ことを特徴とする請求項１記載のインターフェース回路。
【請求項４】
データ信号入力端子から入力されるデータ信号、又は前記データ信号遅延回路により遅延されたデータ信号を選択して前記データ取込回路に入力する選択回路を更に有する
ことを特徴とする請求項１記載のインターフェース回路。
【請求項５】
前記キャリブレーション回路は、前記ストローブ信号を任意の時間遅延させる可変遅延回路と、前記可変遅延回路における遅延時間を調整する遅延調整回路とを有する
ことを特徴とする請求項１記載のインターフェース回路。
【請求項６】
前記遅延調整回路は、前記データ取込回路が取り込んだデータ信号と期待値との一致照合を行なう期待値照合回路と、前記期待値照合結果に基づき最適遅延量を演算する遅延量演算回路と、前記最適遅延量演算回路が演算した遅延量を前記可変遅延回路に設定する遅延設定回路とを有する
ことを特徴とする請求項５記載のインターフェース回路。
【請求項７】
前記データ信号遅延回路は、遅延量が可変であって、
前記データ信号遅延回路における遅延時間を調整する遅延調整回路を更に有する
ことを特徴とする請求項１記載のインターフェース回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばメモリやＬＳＩ等の半導体装置から出力されるストローブ信号及びストローブ信号に同期したデータ信号を受信し、データ信号をラッチするストローブ信号の位相シフト量を調整するインターフェース回路に関する。
【背景技術】
【０００２】
図１３は、従来のＤＤＲ−ＳＤＲＡＭ（Double Data Rate Synchronous Dynamic Random-Access Memory）及びそのインターフェース回路を示す図である。図１３に示すように、ＤＤＲ−ＳＤＲＡＭ１０３と半導体装置１０１の内部回路１２５との間に、インターフェース回路１１０が配置される。
【０００３】
インターフェース回路１１１０は、取込回路１１２、可変遅延回路１１３、及び遅延調整回路１１４を有し、ＤＤＲ−ＳＤＲＡＭ１０３から出力されるデータ信号（ＤＱ信号
）を、可変遅延回路１１３で位相シフトされたデータストローブ信号（ＤＱＳ信号）のタイミングで取込回路１１２によりラッチする。取込回路１１２に取り込まれたＤＱ信号は内部回路１２５に出力される。
【０００４】
ところで、ＤＱＳ信号は、ＤＱ信号のデータ有効ウィンドウの中心でＤＱ信号をラッチできるよう位相シフトされる。図１４は、ＤＱ信号及び位相シフトされたＤＱＳ信号を示す図である。ＤＱ信号、ＤＱＳ信号は、インターフェース回路１１０に同位相で入力される。よって、通常、ＤＱＳ信号のシフト量は、タイミングマージンが最大となる９０ｄｅｇ（シフトＤＱＳ）となる（例えば特許文献１参照）。図１４において、ＤＱ信号の影をつけて示す領域は、ジッタ、セットアップ時間、ホールド時間等を含み、これを除く期間がデータ有効ウィンドウであり、その中間点（中心）が最適取込タイミングとなる。
【０００５】
しかし、ＤＩＭＭ（Dual Inline Memory Module）基板の遅延差、及びチップ内部の遅延時間（ｔＰＤ）差などにより、ＤＱ信号とＤＱＳ信号との位相がずれ、９０ｄｅｇシフトが真の最適値ではないことが多い。近年、高速化が進み、タイミングバジェットが厳しくなっている。このため、ＤＤＲ２からは、シフト量を調整してタイミングの最適化を図る方法がとられ始めている。その主な例として、遅延シフト量を変えながら読み込み可能な範囲を検出し、その中心（タイミングマージンが最大の位置）にシフト量を設定する方法がある。図１５に示すように、ＤＱＳ信号のシフト量を変えたシフトＤＱＳ信号（Ｓ１２〜Ｓ１６）を複数生成し、セットアップ限界（ＸｄｅｇシフトＳ１２）、ホールド限界（ＹｄｅｇシフトＳ１６）を検出し、その中心位置（（Ｘ＋Ｙ）／２ｄｅｇシフトＳ１４）を最適なタイミングとして検出している（例えば特許文献２参照）。
【０００６】
このような遅延調整を実行するため、インターフェース回路１１０は、可変遅延回路１１３及び遅延調整回路１１４を有している。可変遅延回路１１３は、最小遅延量をｔＭＩＮＳＬＹとし、可変遅延の刻み値をｔＤＬＹＳＴＥＰ、ｎを０以上の整数とすると、その遅延値＝ｔＭＩＮＤＬＹ＋ｔＳＬＹＳＴＥＰ×ｎのＤＱＳ信号を生成する。取込回路１１２は、その各遅延値のＤＱＳ信号でＤＱ信号を取込、期待値照合回路１４１で期待値と一致判定することで、読出し成功か否かを判断する。これにより、セットアップ限界、ホールド限界を検出し、遅延量演算回路１４２は、その中間位置を最適遅延量として算出し、遅延設定回路１４３は、当該最適遅延量を可変遅延回路１１３の遅延値として設定することができる。
【特許文献１】特開２００６−８５６５０号公報
【特許文献２】特開２００４−１８５６０８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、さらに高速化が進み、ＤＤＲ２の動作周波数（データ転送速度）が８００Ｍｂｐｓ（ＤＤＲ２−８００）になると、セットアップ側の限界を検出することができなくなり、この場合はタイミングの最適値を設定することができない。ＤＤＲ２−６６７のように、６６７Ｍｂｐｓ程度の動作周波数であれば、多少の誤差があっても問題ないが、８００Ｍｂｐｓ以上の周波数では正確な最適化が必要となるため、セットアップ限界を検出する必要がある。
【０００８】
ここで、上述したＤＩＭＭ基板の遅延差等により、入力ＤＱ信号が入力ＤＱＳ信号より速くなった場合、又は可変遅延回路１１３の最小遅延値の限界がセットアップ時間より遅くなった場合にはセットアップ限界が検出することができない。すなわち、これらの場合には、ＤＱＳ信号の位相をＤＱ信号に対して早める限界が生じる。この場合、最小遅延であってもデータ有効ウィンドウ内でＤＱ信号をラッチすることとなり、セットアップ側の限界を検出することができなくなる。すなわち、図１６に示すように、入力ＤＱＳ信号をＸｄｅｇシフトした位置がセットアップ限界であって、可変遅延回路１１３の最小遅延量がＺｄｅｇシフトした位置である場合、セットアップ限界を検出することができない。また、可変遅延回路１１３の最小遅延量がＸｄｅｇより小さい場合であっても、配線遅延等により、入力ＤＱＳが入力ＤＱＳより速くなるとセットアップ限界は検出することが困難になる。
【０００９】
上記問題点について更に詳細に説明する。図１３において、ＤＤＲ−ＳＤＲＡＭ１０３のＤＱ端子１３１から出力されるＤＱ信号をＮｄ１０１、ＤＱＳ端子１３２から出力されるＤＱＳ信号をＮｑ１０１とする。図１７に示すように、ＤＱ信号Ｎｄ１０１、ＤＱＳ信号Ｎｑ１０１は同位相で出力される。
【００１０】
ここで、半導体集積回路１０１のＤＱ端子１２１、入出力バッファ１２３を介してインターフェース回路１１０に入力されるＤＱ信号をＮｄ１０３、取込回路１１２から出力されるＮＱ信号をＮｄ１０４とする。また、ＤＱＳ端子１２２、入出力バッファ１２４を介してインターフェース回路１１０の可変遅延回路１１３に入力されるＤＱＳ信号をＮｑ１０２、可変遅延回路１１３にて位相シフトされたＤＱＳ信号をＮｑ１０３とすると、図１７に示すように、ＤＱ信号Ｎｄ１０３は、ｔＪＩＴＴＥＲのジッタを含む信号となる。ＤＱＳ信号Ｎｑ１０２はＤＱ信号Ｎｄ１０３よりｔＳＫＥＷだけ配線遅延等により早くなるものとする。
【００１１】
このとき、ＤＱＳ信号Ｎｑ１０３の最適遅延量は、ｔＢＳＴＤＬＹとなる。すなわち、ＤＱＳ信号Ｎｑ１０３の立ち上がり位置が、Ｎｑ１０３（ｂｅｓｔ）に示すように、セットアップ時間ｔＳＥＥＴＵＰと、ホールド時間ｔＨＯＬＤを除いたデータ有効ウィンドウの中心（ｔ１３）となればよい。
【００１２】
各信号は、クロックサイクルをｔＣＹＣ、ＤＱ信号のジッタをｔＪＩＴＴＥＲ、セットアップ時間をｔＳＥＴＵＰ、ホールド時間をｔＨＯＬＤ、ＤＱ信号とＤＱＳ信号の間のスキュをｔＳＫＥＷ、最適シフト量をｔＢＳＴＤＬＹ、実際に求められるシフト量をｔＡＣＴＤＬＹ、可変遅延回路１１３の最小遅延量をｔＭＩＮＤＥＬＹとすると、下記を満たす。
最大Ｐａｓｓ遅延ｔＰＡＳＳＭＡＸ＝ｔＣＹＣ−ｔＪＩＴＴＥＲ−ｔＨＯＬＤ−ｔＳＫＥＷ
演算遅延量ｔＡＣＴＤＬＹ＝（ｔＭＩＮＤＥＬＹ＋ｔＰＡＳＳＭＡＸ）／２
＝（ｔＣＹＣ＋ｔＭＩＮＤＬＹ−ｔＨＯＬＤ−ｔＪＩＴＴＥＲ−ｔＳＫＥＷ）／２
理想遅延量ｔＢＳＴＤＬＹ＝（ｔＳＥＴＵＰ−ｔＳＫＥＷ＋ｔＰＡＳＳＭＡＸ）／２
（ｔＣＹＣ−ｔＪＩＴＴＥＲ＋ｔＳＥＴＵＰ−ｔＨＯＬＤ）／２ｔＳＫＥＷ
エラー量ｔＥＲＲＯＲ＝ｔＡＣＴＤＬＹ−ｔＢＳＴＤＬＹ
＝（ｔＭＩＮＤＬＹ−ｔＳＥＴＵＰ＋ｔＳＫＥＷ）／２
ここで、
ｔＢＳＴＭＲ＝（ｔＣＹＣ−ｔＪＩＴＴＥＲ−ｔＳＷＴＵＰ−ｔＨＯＬＤ）／２
ｔＣＹＣ＞＞ｔＭＩＮＤＬＹ，ｔＪＩＴＴＥＲ，ｔＨＯＬＤ，ｔＳＫＥＷの場合、
ｔＢＳＴＭＲ＞＞ｔＥＲＲＯＲ
【００１３】
高速化が進むと、最小遅延量ｔＭＩＮＤＬＹがセットアップ時間ｔＳＥＴＵＰより大きく、その位置ｔ１０２がセットアップ限界ｔ１０１より遅くなるため、セットアップ限界ｔ１０１を検出することができない。よって、遅延調整回路１１４で求めることができる最適遅延量は、ｔＡＣＴＤＬＹとなる。すなわち、最小遅延量ｔＭＩＮＤＬＹとホールド時間ｔＨＯＬＤを除いた中心（ｔ１０４）にＤＱＳ信号Ｎｑ１０３がシフトされることとなり、本来の最適遅延位置（ｔ１０３）からｔＥＲＲＯＲだけずれることになる。このずれｔＥＲＲＯＲは、上述したように、６６７Ｍｂｐｓ程度の動作周波数であれば、ｔＭＩＮＤＬＹ、ｔＪＩＴＴＥＲ、ｔＨＯＬＤ、ｔＳＫＥＷ、ｔＢＥＴＭＲより、クロック周期ｔＣＹＣは十分大きく、よって、ｔＢＳＴＭＲは、ｔＥＲＲＯＲより十分大きく、それほど問題にならない。
【００１４】
しかし、図１８に示すように、ＤＤＲ２−８００では動作周波数が８００ｂｐｓとなり、クロック周期ｔＣＹＣに対してｔＭＩＮＤＬＹ、ｔＪＩＴＴＥＲ、ｔＨＯＬＤ、ｔＳＫＥＷ、ｔＢＥＴＭＲが大きな割合を占めるようになると、セットアップ限界ｔ１１１、ホールド限界ｔ１１５の間のデータ有効ウィンドウが狭くなり、最小遅延位置ｔ１１２がセットアップ限界ｔ１１１より大きく遅れ、本来の最適遅延位置ｔ１１３と実際の演算遅延位置ｔ１１４とのずれｔＥＲＲＯＲが占める割合がｔＢＳＴＭＲに対して大きくなる。ｔＥＲＲＯＲが占める割合が大きくなれば、ＤＱ信号の読出しに失敗する確率が上がることとなる。このため、ｔＥＲＲＯＲをなくし、データ有効ウィンドウの中心でＤＱ信号を取り込む必要がある。
【課題を解決するための手段】
【００１５】
本発明にかかるインターフェース回路は、データ信号のデータ有効ウィンドウを自動検知してストローブ信号の最適遅延量を調整するキャリブレーション回路と、前記キャリブレーション回路における最小遅延量をｔＭＩＮＤＬＹ、前記データ信号と前記ストローブ信号との間のスキュをｔＳＫＥＷ、前記データ信号のセットアップ時間をｔＳＥＴＵＰとしたとき、ｔＦＩＸＤＬＹ＞ｔＭＩＮＤＬＹ＋ｔＳＫＥＷ−ｔＳＥＴＵＰを満たす遅延量ｔＦＩＸＤＬＹだけ前記データ信号を遅延させるデータ信号遅延回路とを有するものである。
【００１６】
本発明においては、ｔＦＩＸＤＬＹ＞ｔＭＩＮＤＬＹ＋ｔＳＫＥＷ−ｔＳＥＴＵＰを満たす遅延量ｔＦＩＸＤＬＹだけ前記データ信号を遅延させるデータ信号遅延回路を有するので、セットアップ限界を検出することができ、ストローブ信号の最適遅延量を調整してデータ有効ウィンドウの中心でデータ信号を取り込み可能となる。
【発明の効果】
【００１７】
本発明に係るインターフェース回路によれば、有効データウィンドウの中心でデータ信号をラッチすることができるストローブ信号を得ることができる。
【発明を実施するための最良の形態】
【００１８】
実施の形態１．
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。図１は、本発明の実施の形態１にかかるインターフェース回路を搭載した半導体集積回路を示すブロック図である。インターフェース回路１０は、従来のインターフェース回路の構成に入力ＤＱ信号を所定量遅延させる固定遅延回路１１を設けたものである。この固定遅延回路１１は、後述するように、遅延調整回路における最小遅延量をｔＭＩＮＤＬＹ、ＤＱ信号とＤＱＳ信号間のスキュをｔＳＫＥＷ、ＤＱ信号のセットアップ時間をｔＳＥＴＵＰとしたとき、ｔＦＩＸＤＬＹ＞ｔＭＩＮＤＬＹ＋ｔＳＫＥＷ−ｔＳＥＴＵＰを満たす遅延量ｔＦＩＸＤＬＹだけＤＱ信号を遅延させるデータ信号遅延回路である。
【００１９】
図１に示すように、半導体集積回路１は、内部回路２５を有している。この半導体集積回路１は、ＤＤＲ−ＳＤＲＡＭ３と接続され、ＤＤＲ−ＳＤＲＡＭ３からデータを読み出したり、書き込みをしたりする。このため、半導体集積回路１は、外部端子２１、２２、入出力バッファ２３、２４と、内部回路２５との間にインターフェース回路１０を有している。インターフェース回路１０は、固定遅延回路１１、取込回路１２、可変遅延回路１３、及び遅延調整回路１４を有する。可変遅延回路１３及び遅延調整回路１４から、ＤＱ信号のデータ有効ウィンドウを自動検知してＤＱＳ信号の最適遅延量を自動調整するキャリブレーション回路が構成される。
【００２０】
ＤＤＲ−ＳＤＲＡＭ３からは、ＤＱ端子３１を介してＤＱ信号Ｎｄ１１が出力される。そして、半導体集積回路２のＤＱ端子２１及び入出力バッファ２３を介したＤＱ信号Ｎｄ１２は、固定遅延回路１１へ入力される。また、ＤＤＲ−ＳＤＲＡＭ３のＤＱＳ端子３２を介してＤＱＳ信号Ｎｑ１１が出力される。そして、半導体集積回路２のＤＱＳ端子２２及び入出力バッファ２４を介したＤＱＳ信号Ｎｑ１２は可変遅延回路１３に入力される。可変遅延回路１３にて位相シフトされたＤＱＳ信号Ｎｑ１３の立ち上がりタイミングで、固定遅延回路１１にて所定遅延量固定されたＤＱ信号Ｎｄ１３は、取込回路１２に取り込まれる。取込回路１２に取り込まれたＤＱ信号は、通常は内部回路２５へ出力される。なお、取込回路１２は、ＤＱ信号をＤＱＳ信号のタイミングで取り込む回路であるが、取り込んだＤＱ信号を内部回路のクロックに同期して出力するようにしてもよい。
【００２１】
一方、可変遅延回路１３の可変遅延量を遅延調整回路１４で決定する遅延調整モードの際には、取込回路１２で取り込まれたＤＱ信号Ｎｄ１４は遅延調整回路１４に入力される。可変遅延回路１３は、最小遅延量をｔＭＩＮＳＬＹとし、可変遅延の刻み値をｔＤＬＹＳＴＥＰ、ｎを０以上の整数とすると、その可変遅延量＝ｔＭＩＮＤＬＹ＋ｔＳＬＹＳＴＥＰ×ｎのＤＱＳ信号を生成する。取込回路１２は、その各遅延値のＤＱＳ信号Ｎｑ１３でＤＱ信号Ｎｄ１３を取込む。
【００２２】
遅延調整回路１４は、期待値照合回路４１、遅延量演算回路４２、及び遅延設定回路４３を有する。遅延調整回路１４は、製品組み立て後、出荷前等の適当なタイミングで遅延調整モードとし、可変遅延回路１３に設定する最適遅延量の設定を行なう。この場合、先ず期待値照合用のデータをＤＤＲ−ＳＤＲＡＭ３に書き込み、これを可変遅延回路１３における遅延量をシフトしながら読み出し期待値照合することで最適遅延量をサーチする。なお、期待値照合用のデータは遅延調整回路１４等に設けられた保持部（不図示）にて保持されている。
【００２３】
期待値照合回路４１には、可変遅延量遅延されたＤＱＳ信号で取込回路１２がラッチしたＤＱ信号Ｎｄ１４が入力される。期待値照合回路４１は、取込回路１２に取り込まれたＤＱ信号Ｎｄ１４が期待値と一致するか否かを照合し、ＤＱ信号の読出しが成功か否かを判断する。可変遅延量が小さくセットアップ限界以前でＤＱ信号を取り込めばＤＱ信号の読出しは失敗となる。そしてセットアップ時間を過ぎ、データ有効ウィンドウ内でＤＱ信号を取り込めばＤＱ信号は期待値と一致する。さらに遅延量が大きくなりＤＱ信号をホールド時間内に取り込むと再びＤＱ信号の読出しは失敗となる。このような期待値照合回路４１の期待値照合結果により、セットアップ側の限界、ホールド側の限界を検出することができる。
【００２４】
このようにして遅延調整回路１４は、従来例と同様に可変遅延回路の遅延量を変化させながら、セットアップ／ホールドの限界遅延をサーチし、その中心を決定することで、タイミングマージンの最大化を図ることができるデータ有効ウィンドウの中心でＤＱ信号を取り込めるようＤＱＳ信号の最適遅延量を求める。
【００２５】
遅延量演算回路４２は、期待値照合により、セットアップ限界及びホールド限界を検出し取込回路１２での最適なデータの取込時間を演算する。遅延設定回路４３は、遅延量演算回路４２にて演算された最適遅延量を可変遅延回路１３に設定し、遅延量演算回路４２にて演算された最適なデータ取込時間でＤＱＳ信号が立ち上がるＤＱＳ信号を生成させる。
【００２６】
ここで、本実施の形態にかかるインターフェース回路１０は、固定遅延回路１１を有しており、これにより、ＤＱ信号Ｎｄ１２を所定量遅延させたＤＱ信号Ｎｄ１３とする。この遅延したＤＱ信号を利用して遅延調整を行なって最適遅延量を求めることで、クロック周波数が高くてもセットアップ限界を検出することができる。
【００２７】
次に、本実施の形態にかかるインターフェース回路の遅延調整動作について説明する。図２は、各タイミングにおけるＤＱ信号、ＤＱＳ信号を示すタイミングチャートである。シフトＤＱＳ信号Ｓ２〜Ｓ７は、可変遅延回路１３で生成される、異なる遅延量（異なる位相量）の遅延済みＤＱＳ信号を示す。本例においては、入力ＤＱ信号のセットアップ限界を検出するためには、シフトＤＱＳ信号Ｓ２が必要であるが、可変遅延回路１３の最小遅延量としたＺｄｅｇＤＱＳ信号Ｓ３は、シフトＤＳ信号Ｓ２より遅延量が大きい。よって、最小遅延のＺｄｅｇＤＱＳ信号Ｓ３の立ち上がりが入力ＤＱ信号のセットアップ限界より遅く入力ＤＱ信号のセットアップ限界を検出することができない。
【００２８】
そこで、本実施の形態においては、入力ＤＱ信号を固定遅延回路１１により所定量遅延させた遅延済みＤＱ信号としている。このとき、詳細は後述するが、遅延済みＤＱ信号のセットアップ限界が最小遅延のＺｄｅｇＤＱＳ信号の立ち上がりより遅くなるよう遅延量を設定している。図２に示す例では、最小遅延量（＝Ｚｄｅｇ）より遅延済みＤＱ信号のセットアップ限界が遅いため、ＸｄｅｇシフトＳ４とセットアップ限界が一致している。これにより、セットアップ限界を検出することができる。図２に示す例では、ＹｄｅｇシフトさせたシフトＤＱＳ信号Ｓ７がホールド限界となっている、よって、最適遅延量は、（Ｘ＋Ｙ）／２ｄｅｇと求まる。
【００２９】
次に、この遅延済ＤＱ信号の固定遅延量について詳細に説明する。図３は、ＤＱ信号Ｎｄ１１、Ｎｄ１２、ＤＱＳ信号Ｎｑ１２、Ｎｑ１３を示すタイミングチャートである。
【００３０】
ＤＱ信号Ｎｄ１２、ＤＱＳ信号Ｎｑ１２は、それぞれ固定遅延回路１１、可変遅延回路１３へ入力されるＤＱ信号、ＤＱＳ信号を示す。ＳＤＲＡＭ３を略同タイミングで出力されるＤＱ信号Ｎｄ１１、ＤＱＳ信号は、半導体集積回路２のＤＱ端子２１、ＤＱＳ端子２２に入力されるまでの配線長の違い等が原因で位相がずれ、ＤＱＮｄ１２、ＤＱＳＮｑ１２に示すように、異なる遅延量を有するようになり、両者はｔＳＫＥＷの遅延差を有するようになる。
【００３１】
ｔＣＹＣ：ＤＱ信号のサイクル
ｔＪＩＴＴＥＲ：ＤＱ信号のジッタの長さ
ｔＦＩＸＤＬＹ：固定遅延回路１１の遅延量
ｔＳＥＴＵＰ：セットアップ時間
ｔＨＯＬＤ：ホールド時間
ｔＳＫＥＷ：ＤＱ信号とＤＱＳ信号とのスキュ時間
ｔＰＡＳＳＭＩＮ：遅延最小量（セットアップ限界）
ｔＰＡＳＳＭＡＸ：遅延最大量（ホールド限界）
ｔＭＩＮＤＬＹ：可変遅延回路の最小遅延量
ｔＢＳＴＭＲ：１／２（ｔＰＡＳＳＭＡＸ−ｔＰＡＳＳＭＩＮ）
ｔＡＣＴＤＬＹ：実際の遅延量
ここで、
ｔＰＡＳＳＭＩＮ＝ｔＦＩＸＤＬＹ＋ｔＳＥＴＵＰ−ｔＳＫＥＷ＞ｔＭＩＮＤＬＹ・・・（１）
ｔＰＡＳＳＭＡＸ＝ｔＣＹＣ＋ｔＦＩＸＤＬＹ−ｔＪＩＴＴＥＲ−ｔＨＯＬＤ−ｔＳＫＥＷ・・・（２）
ｔＡＣＴＤＬＹ＝（ｔＰＡＳＳＭＩＮ＋ｔＰＡＳＳＭＡＸ）／２
＝ｔＦＩＸＤＬＹ−ｔＳＫＥＷ＋（ｔＣＹＣ＋ｔＳＥＴＵＰ−ｔＨＯＬＤ−ｔＪＩＴＴＥＲ）／２・・・（３）
【００３２】
ここでは、ＤＤＲ−ＳＤＲＡＭ３と半導体集積回路２との間の配線長の違いなどにより、ＤＱ信号Ｎｄ１２よりＤＱＳ信号Ｎｑ１２がｔＳＫＥＷだけスキュにより遅れる場合について説明する。ＤＱ信号Ｎｄ１２は固定遅延回路１１によりｔＦＩＸＤＬＹ遅延したＤＱ信号Ｎｄ１３になる。ここで、Ｎｑ１３（ａｃｔｕａｌ）は、最適遅延量調整済みのＤＳＱ信号Ｎｑ１３、Ｎｑ１３（ｍｉｎｉｍｕｍ）は、可変遅延回路の最小遅延量ｔＭＩＮＤＬＹとしたＤＳＱ信号Ｎｑ１３を示す。最小遅延量ｔＭＩＮＤＬＹにおけるＤＳＱ信号Ｎｑ１３（ｍｉｎｉｍｕｍ）の立ち上がりｔ１がセットアップ限界ｔ２より早くなっている。
【００３３】
ＤＳＱ信号Ｎｑ１３（ａｃｔｕａｌ）に示すように、データサイクルｔＣＹＣからジッタ分ｔＪＩＴＴＥＲを除き、さらにセットアップ時間ｔＳＥＴＵＰ及びホールド時間ｔＨＯＬＤを除いたデータ有効ウィンドウのちょうど中央位置にＤＱＳ信号の立ち上がりがくるよう、ＤＱＳ信号の遅延量を可変遅延回路１３に設定する必要がある。
【００３４】
そのため、ＤＱ信号Ｎｄ１２におけるセットアップ終了タイミングとなるセットアップ限界ｔ２と、ホールド開始タイミングとなるホールド限界ｔ４を検出する必要がある。このタイミングｔ２、ｔ４を検出するため、可変遅延回路１３の遅延を所定遅延幅で変化させ、期待値照合する。ｔ２より前のタイミングでは期待値照合は失敗となり、タイミングｔ２乃至ｔ４のデータ有効ウィンドウ内ではデータが読出し可能となり、期待値は一致する。さらに、タイミングｔ４以降では再び期待値照合が失敗する。
【００３５】
このようにして遅延量を順次変化させ、期待値照合することで、タイミングｔ２、ｔ４を検出する。そして、タイミングｔ２とｔ４の中間のタイミングｔ３が理想のＤＱＳ信号（Ｎｑ１３（ａｃｔｕａｌ））の遅延タイミングとなる。これを求めるには、上記式（１）により、可変遅延回路１３へ入力するＤＱＳ信号Ｎｑ１２の立ち上がりからタイミングｔ２までの最小Ｐａｓｓ遅延ｔＰＡＳＳＭＩＮを求める。また、上記式（２）から、ＤＱＳ信号Ｎｑ１２の立ち上がりからタイミングｔ４までの最大Ｐａｓｓ遅延ｔＰＡＳＳＭＡＸを求める。そして、上記式（３）により、可変遅延回路１３に実際に設定する遅延量ｔＡＣＴＤＬＹを求める。
【００３６】
ここで、本実施の形態においては、ｔＰＡＳＳＭＩＮ＞ｔＭＩＮＤＬＹを満たす。すなわち、可変遅延回路１３の最小遅延タイミングｔ１が必ず、セットアップ限界ｔ２より早い。このことにより、必ず、セットアップ限界ｔ２を検出することを可能とする。このため、本実施の形態にかかるインターフェース回路１０には、固定遅延回路１１が設けられており、ｔＰＡＳＳＭＩＮ＞ｔＭＩＮＤＬＹを満たすように、ｔＦＩＸＤＬＡＹが設定されている。上記式（１）から、ｔＦＩＸＤＬＹ＞ｔＭＩＮＤＬＹ＋ｔＳＫＥＷ−ｔＳＥＴＵＰを満たす。
【００３７】
すなわち、固定遅延回路１１は、可変遅延回路１３の最小遅延量ｔＭＩＮＤＬＹとスキュｔＳＫＥＷからセットアップ時間ｔＳＥＴＵＰを引いた時間より大きい遅延量を有するようにその遅延量が設定されている。なお、本実施の形態においては、ｔＳＫＥＷをＤＱ信号とＤＱＳ信号の間のスキュとして説明するが、ＤＱＳ信号に対してＤＱ信号が例えば８本ある場合には、それらのＤＱ信号間のスキュも含むものとする。ここで、この固定遅延量は、ｔＳＫＥＷ等はどの程度になるか標準的な技術レベルから予測することができるため、それらの値に応じ、ｔＰＡＳＳＭＩＮ＞ｔＭＩＮＤＬＹを満たすよういくらかマージンをとって設定すればよい。
【００３８】
本実施の形態においては、セットアップ限界ｔ２より、可変遅延回路１３の最小遅延ＤＱＳ信号の遅延量が小さくなるよう、ＤＱ信号を遅延させることで、クロック周波数が高くなってもセットアップ限界を検出することができる。これにより、正確に最適遅延量を求めることができ、最適遅延量を設定することができる。したがって、ＤＱ信号の読出し失敗確率を極めて低くすることができ、特にＤＤＲ２−８００やＤＤＲ３等の高速な動作周波数を有するＤＤＲ−ＳＤＲＡＭであっても、信頼性が高い半導体装置を提供することができる。
【００３９】
実施の形態２．  
次に、本発明の実施の形態２について説明する。図４は、本実施の形態にかかる半導体装置を示すブロック図である。図１に示す半導体装置と同一構成要素には同一の符号を付しその詳細な説明は省略する。
【００４０】
本実施の形態にかかるインターフェース回路５０は、固定遅延回路１１をバイパスするためのセレクタ１６をさらに付加した構成となっており、固定遅延回路１１及びセレクタ１６からなる半固定遅延回路１５を有する。また、遅延調整回路５４は、期待値照合回路４１、遅延量演算回路４２、及び遅延設定回路４３の他、セレクタ１６を制御する遅延設定回路４４を更に有する。
【００４１】
キャリブレーション動作においては、実施の形態１と同様に固定遅延回路１１により遅延させたＤＱ信号を使用する。一方、通常動作においては、固定遅延回路１１を介さず、そのまま取込回路１２へＤＱ信号を入力させることで、ＤＱ信号の取込タイミングのレイテンシを除くことができる。
【００４２】
図５、図６は、ＤＱ信号Ｎｄ２２、Ｎｄ２３、ＤＱＳ信号Ｎｑ２２、Ｎｑ２３を示すタイミングチャートである。キャリブレーション動作においては、固定遅延回路１１を通過するパスを選択し、セットアップ（ｔ１２）が限界の遅延設定（ｔＰＡＳＳＭＩＮ）及びホールド（ｔ１４）が限界の遅延設定（ｔＰＡＳＳＭＡＸ）をサーチする。このときの最適遅延設定（ｔＡＣＴＤＬＹ）は、実施の形態１と同様になる。
【００４３】
すなわち、インターフェース回路５０に入力されたＤＱ信号Ｎｄ２２は、固定遅延回路１１を通り、固定遅延量ｔＦＩＸＤＬＹ遅延された信号Ｎｄ２３となる。また、ＤＱＳ信号はスキュ等によりｔＳＫＥＷだけＤＱ信号より早くインターフェース回路５０に入力されるものとする（Ｎｑ２２）。可変遅延回路１３において遅延量をシフトさせていき、セットアップ限界、ホールド限界をサーチして、実際の遅延量ｔＡＣＴＤＬＹを求める。
【００４４】
次に、遅延設定回路４４により、セレクタ１６を切り替え、固定遅延回路１１をバイパスするパスを選択し、ホールドが限界の遅延設定をサーチする。固定遅延回路１１を通る場合と、通らない場合におけるホールド限界を比較することで、固定遅延回路１１の遅延量ｔＦＩＸＤＬＹを求めることができる。固定遅延量は、実施の形態１と同様、固定遅延回路１１は、可変遅延回路１３の最小遅延量ｔＭＩＮＤＬＹとスキュｔＳＫＥＷからセットアップ時間ｔＳＥＴＵＰを引いた時間より大きい遅延量を有するようにその固定遅延量が設定されているが、その正確な固定遅延量をこのように測定することで正確に求めることができる。
【００４５】
図６において、ｔＰＡＳＳＭＡＸ＿ＢＹＰは固定遅延回路１１を通らない場合の遅延最大量、ｔＥＳＴＤＬＹは可変遅延回路１３に設定すべき遅延量を示し、下記のように求めることができる。
ｔＰＡＳＳＭＡＸ＿ＢＹＰ＝ｔＣＹＣ−ｔＪＩＴＴＥＲ−ｔＨＯＬＤ−ｔＳＫＥＷ・・・（４）
ｔＥＳＴＤＬＹ＝ｔＡＣＴＤＬＹ−ｔＦＩＸＤＬＹ
＝ｔＡＣＴＤＬＹ−（ｔＰＡＳＳＭＡＸ−ｔＰＡＳＳＭＡＸ＿ＢＹＰ）
＝ｔＰＡＳＳＭＡＸ＿ＢＹＰ＋（ｔＰＡＳＳＭＩＮ−ｔＰＡＳＳＭＡＸ）／２・・・（５）
このように、上述の式（３）に示すｔＡＣＴＤＬＹから固定遅延量ｔＦＩＸＤＬＹを引いた遅延量ｔＥＳＴＤＬＹを求め、可変遅延回路１３の遅延量に設定する。
【００４６】
図７は、本実施の形態にかかる遅延量サーチ方法を示すフローチャートである。図７に示すように、先ず、半固定遅延回路１５における固定遅延回路１１を通るパスを選択する（ステップＳＰ１）。そして、最小Ｐａｓｓ遅延（ｔＰＡＳＳＭＩＮ）をサーチし、そのときの遅延設定（ｎ＿ｍｉｎ１）を記憶する（ステップＳＰ２）。ｔＰＡＳＳＭＩＮは、可変遅延回路１３において最小遅延量ｔＭＩＮＤＬＹから順次遅延量をシフトさせていき、期待値照合回路４１にて最初に期待値が一致した遅延量である。
【００４７】
次に、最大Ｐａｓｓ遅延（ｔＰＡＳＳＭＡＸ）をサーチし、そのときの遅延設定（ｎ＿ｍａｘ１）を記憶する（ステップＳＰ３）。ｔＰＡＳＳＭＡＸは、可変遅延回路１３において、ｔＰＡＳＳＭＩＮからさらに遅延量を大きくしてき、期待値照合回路にて最初に期待値が不一致となる遅延量の直前の遅延量である。
【００４８】
次に、遅延設定回路４４にてセレクタ１６を切り替え、固定遅延回路１１をバイパスする経路を選択する（ステップＳＰ４）。そして、この経路における最大Ｐａｓｓ遅延（ｔＰＡＳＳＭＡＸ＿ＢＹＰ）をサーチし記憶する（ステップＳＰ５）。そして、遅延量演算回路４２にて、以上の結果に基づき、バイパス時の最適遅延ｔＥＳＴＤＬＹを下記式（６）から演算する。
ｔＥＳＴＤＬＹ＝ｎ＿ｍａｘ１−（ｎ＿ｍｉｎ１−ｎ＿ｍｉｎ２）
そして、この遅延を遅延設定回路４３により、可変遅延回路１３に設定する（ステップＳＰ５）。
【００４９】
本実施の形態においては、固定遅延回路１１によりＤＱ信号を遅延させることで、セットアップ限界のサーチが可能となり、可変遅延回路の最適な遅延量を探すことができるだけでなく、通常動作の際には、固定遅延回路１１を通らないようにすることで、ＤＱ信号が遅延することがない。
【００５０】
実施の形態３．
次に、本発明の実施の形態３について説明する。図８は、本発明の実施の形態３にかかる半導体装置を示すブロック図である。図８において、図４に示す半導体装置と同一構成要素には同一の符号を付しその詳細な説明は省略する。図８に示すように、本実施の形態においては、上述の半固定遅延回路１５の代わりに、可変遅延回路６１及びセレクタ１６からなる半固定遅延回路６５を備えるものである。すなわち、上述の実施の形態１、２においては、ＤＱ信号の遅延量は、ｔＰＡＳＳＭＩＮ＞ｔＭＩＮＤＬＹを満たす固定遅延量、すなわち、固定遅延量ｔＦＩＸＤＬＹ＞ｔＭＩＮＤＬＹ＋ｔＳＫＥＷ−ｔＳＥＴＵＰを満たすものであったのに対し、本実施の形態においては、このｔＭＩＮＤＬＹを可変遅延とする。
【００５１】
固定遅延量とする場合には、ｔＰＡＳＳＭＩＮ＞ｔＭＩＮＤＬＹを満たすよういくらかマージンをとって固定遅延量を設定することになるが、ｔＳＫＥＷ等がどの程度になるかは標準的な技術レベルから予測することになる。この場合、ＤＩＭＭやＤＲＡＭによってｔＳＫＥＷが変わるため、大きめのｔＭＩＮＤＬＹを設定しておくことになる。
【００５２】
しかし、例えば予測以上にｔＳＫＥＷが大きく、固定遅延量ｔＦＩＸＤＬＹが上記式を満たさなくなる場合がある。メモリが出力するＤＱＳ信号は、クロック信号のような連続信号ではなく、読み出されるＤＱ信号が存在する場合に限って付加される信号であり、ｔＳＫＥＷが大きければｔＦＩＸＤＬＹも大きくしなければならない。ただし、固定遅延量が大きいと一般的に誤差の増大に繋がるため、最適な固定遅延量とした方が好ましい。そこで本実施の形態においては、キャリブレーションのためにＤＱ信号を遅延させる遅延量としていくつかの遅延量を用意しておき、これを適宜選択可能な構成とする。
【００５３】
これにより、例え固定遅延量が小さくセットアップ限界が検出できない場合には、固定遅延量を大きくすることで正確なキャリブレーションを可能にすると共に、固定遅延量が大きくなりすぎることを防止し、より精度が高いキャリブレーションを可能とするものである。
【００５４】
図９乃至図１１は、半固定遅延回路６５に入力されるＤＱ信号Ｎｄ３２、半固定遅延回路６５から出力されるＤＱ信号Ｎｄ３３、可変遅延回路１３に入力されるＤＱＳ信号Ｎｑ３２、可変遅延回路１３から出力されるＤＱＳ信号Ｎｑ３３を示すタイミングチャートである。
【００５５】
図９において、Ｎｄ３３（１）は、遅延量ｔＦＩＸＤＬＹ２に設定された可変遅延回路６１を経由したＤＱ信号、Ｎｑ３３（１）は、可変遅延回路１３により最小遅延量ｔＭＩＮＳＬＹに設定されたＤＱＳ信号、Ｎｑ３３（２）は、Ｎｄ３３（１）を使用してキャリブレーションされた結果、可変遅延回路１３にて遅延量ｔＡＤＬＹ２を設定されたＤＱＳ信号を示す。Ｎｄ３３（１）の固定遅延量ｔＦＩＸＤＬＹ２が小さいため、Ｎｑ３３（１）の立ち上がりは、セットアップ限界より先となってしまい、この場合、正確な最適遅延量を算出することができない。
【００５６】
そこで、ＤＱ信号の遅延量をｔＦＩＸＤＬＹ２より大きいｔＦＩＸＤＬＹ１とする。図１０に示すように、このＤＱ信号Ｎｄ３３（２）のセットアップ限界は最小遅延量のＤＱＳ信号Ｎｑ３３（１）より大きくなり、これによりセットアップ限界を検出することが可能となる。そして、可変遅延回路６１を経由しない経路を選択し、図１１に示すように、ホールド限界をサーチすることで、可変遅延回路６１に設定した遅延量ｔＦＩＸＤＬＹ１を算出することができる。これにより、ＤＱＳ信号に設定する可変遅延回路１３の遅延量ｔＥＳＴＤＬＹは下記のように求めることができる。
ｔＥＳＴＤＬＹ＝ｔＡＤＬＹ１−ｔＦＩＸＤＬＹ１
【００５７】
図１２は、本実施の形態にかかるキャリブレーション方法を示すフローチャートである。図１２に示すように、実施の形態１と同様にまず、半固定遅延回路６５で可変遅延回路を経由するパスを選択する（ステップＳＰ１１）。そして、可変遅延回路１３を最小遅延に設定し、リード可能かを判断する（ステップＳＰ１２）。ここでリードできなければ、セットアップ限界より最小遅延が小さいと判断でき、セットアップ限界のサーチが可能であるのでこのままキャリブレーション動作を実行可能と判断することができる。一方、可変遅延回路１３を最小遅延に設定してリードできた場合は、セットアップ時間より最小遅延時間が大きく、このままではセットアップ限界がサーチできない。この場合は、半固定遅延回路６５の可変遅延回路６１の遅延量を増加させる（ステップＳＰ１３）。そして、再度、可変遅延回路１３の遅延量を最小遅延量に設定し、リードに失敗すれば、セットアップ限界がサーチ可能としてステップＳＰ１４に進む。ステップＳＰ１４からの処理は、図７に示すステップＳＰ２からの処理と同様である。
【００５８】
本実施の形態においては、ＤＱ信号の遅延量を可変設定可能としたので、最適な固定遅延量ｔＦＩＸＤＬＹを設定することが可能となり、可変遅延回路における遅延量のキャリブレーションにおける誤差を最小限にとどめることができると共に、固定遅延量が小さくさっとアップ限界がサーチできない場合には、固定遅延量を大きくしてセットアップ限界のサーチを可能とする。なお、本実施の形態においては、半固定遅延回路６５において、可変遅延回路をバイパスする構成としたが、実施の形態１と同様、遅延回路のみを設けてもよい。
【００５９】
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。例えば、上述の実施の形態では、ＳＤＲＡＭからのＤＱＳ信号及びＤＱ信号を受信し、ＤＱ信号のラッチタイミング調整する場合について説明したが、ＳＤＲＡＭ等のメモリに限らず、ＬＳＩ等から出力されるストローブ信号及びデータを受信し、その受信データをラッチするタイミングを調整する場合であっても同様に行なうことができる。また、本実施の形態では、説明の簡略化のため、データバスは１本で説明したが、データバスは、８本等複数本であってもよいことは勿論である。その場合、遅延調整回路は、各データバスに対して設ければよい。
【図面の簡単な説明】
【００６０】
【図１】本発明の実施の形態１にかかるインターフェース回路を搭載した半導体集積回路を示すブロック図である。
【図２】本発明の実施の形態１にかかるインターフェース回路に入力されるＤＱ信号、ＤＱＳ信号を示すタイミングチャートである。
【図３】本発明の実施の形態１にかかるインターフェース回路におけるＤＱ信号Ｎｄ１１、Ｎｄ１２、ＤＱＳ信号Ｎｑ１２、Ｎｑ１３を示すタイミングチャートである。
【図４】本発明の実施の形態２にかかるインターフェース回路を搭載した半導体集積回路を示すブロック図である。
【図５】本発明の実施の形態２にかかるインターフェース回路において固定遅延回路を経由する場合のＤＱ信号、ＤＱＳ信号を示すタイミングチャートである。
【図６】本発明の実施の形態２にかかるインターフェース回路において固定遅延回路をバイパスする場合のＤＱ信号、ＤＱＳ信号を示すタイミングチャートである。
【図７】本発明の実施の形態２にかかる遅延量サーチ方法を示すフローチャートである。
【図８】本発明の実施の形態３にかかるインターフェース回路を搭載した半導体集積回路を示すブロック図である。
【図９】本発明の実施の形態３にかかるインターフェース回路において遅延量ｔＦＩＸＤＬＹ２の遅延回路を経由する場合のＤＱ信号、ＤＱＳ信号を示すタイミングチャートである。
【図１０】本発明の実施の形態３にかかるインターフェース回路において遅延量ｔＦＩＸＤＬＹ１の遅延回路を経由する場合のＤＱ信号、ＤＱＳ信号を示すタイミングチャートである。
【図１１】本発明の実施の形態３にかかるインターフェース回路において遅延回路をバイパスする場合のＤＱ信号、ＤＱＳ信号を示すタイミングチャートである。
【図１２】本発明の実施の形態３にかかる遅延量サーチ方法を示すフローチャートである。
【図１３】従来のＤＤＲ−ＳＤＲＡＭ及びそのインターフェース回路を示す図である。
【図１４】ＤＱ信号及び９０ｄｅｇｒｅｅ位相シフトされたＤＱＳ信号を示す図である。
【図１５】特許文献２記載の遅延調整方法を説明する図である。
【図１６】従来の遅延調整方法の問題点を説明する図である。
【図１７】従来の遅延調整方法を説明する図であって、データ転送速度が６６７Ｍｂｐｓの場合を示す模式図である。
【図１８】従来の遅延調整方法を説明する図であって、データ転送速度が８００Ｍｂｐｓの場合を示す模式図である。
【符号の説明】
【００６１】
１０、５０、６０  インターフェース回路
１１  固定遅延回路
１２  取込回路
１３  可変遅延回路
１４  遅延調整回路
１５  半固定遅延回路
１６  セレクタ
２１、２２、３１、３２  端子
２３、２４  入出力バッファ
２５  内部回路
４１  期待値照合回路
４２  遅延量演算回路
４３、４４  遅延設定回路
５４  遅延調整回路
６１  可変遅延回路
６５  半固定遅延回路
【図１】
2008052335.tif 000003
【図２】
2008052335.tif 000004
【図３】
2008052335.tif 000005
【図４】
2008052335.tif 000006
【図５】
2008052335.tif 000007
【図６】
2008052335.tif 000008
【図７】
2008052335.tif 000009
【図８】
2008052335.tif 000010
【図９】
2008052335.tif 000011
【図１０】
2008052335.tif 000012
【図１１】
2008052335.tif 000013
【図１２】
2008052335.tif 000014
【図１３】
2008052335.tif 000015
【図１４】
2008052335.tif 000016
【図１５】
2008052335.tif 000017
【図１６】
2008052335.tif 000018
【図１７】
2008052335.tif 000019
【図１８】
2008052335.tif 000020