(57)【要約】      （修正有）【課題】メモリコントローラにおいて、ＤＱとＤＱＳのスキュー調整を行うためのパスの素子を最小限にとどめる。【解決手段】データストローブ信号ＤＱＳを段階的に遅延させて遅延データストローブ信号Ｎｑ１３を生成する可変遅延回路１４と、データストローブ信号ＤＱＳの遅延値を設定する遅延調整回路１５と、データ信号ＤＱを、遅延調整回路１５に供給するデータ供給回路とを具備するメモリインターフェース回路１０を構成する。データ供給回路は、第１経路と第２経路とを備えるものとする。第１経路は、遅延データ信号Ｎｄ１３を生成する固定遅延回路１１と、遅延データストローブ信号Ｎｑ１３に同期して遅延データ信号Ｎｄ１３を取り込む第１データ取り込み回路１３とを備える。第２経路は、第２データ取り込み回路１２を備え、遅延データストローブ信号Ｎｑ１３に同期してデータ信号Ｎｄ１２を取り込む。【選択図】図３
2013109637.tif 000002
【特許請求の範囲】
【請求項１】
データストローブ信号入出力バッファを介してメモリモジュールから供給されるデータストローブ信号を段階的に遅延させて遅延データストローブ信号を生成する可変遅延回路と、
前記データストローブ信号を段階的に遅延させるときの遅延値を設定する遅延調整回路と、
データ信号入出力バッファを介して前記メモリモジュールから供給されるデータ信号を、前記遅延調整回路に供給するデータ供給回路と
を具備し、
前記データ供給回路は、
第１経路と第２経路とを備え、
前記第１経路は、
前記データ信号を一定の遅延値で遅延させた遅延データ信号を生成する固定遅延回路と、
前記遅延データストローブ信号に同期して前記遅延データ信号を取り込む第１データ取り込み回路と
を備え、
前記第２経路は、
前記第１データ取り込み回路と異なる第２データ取り込み回路を備え、
前記第２データ取り込み回路は、
前記遅延データストローブ信号に同期して前記データ信号を取り込む
メモリインターフェース回路。
【請求項２】
請求項１に記載のメモリインターフェース回路において、
前記第２経路は、
前記データ信号入出力バッファと前記第２データ取り込み回路との間に設けられた信号線を含み、
前記信号線は、
前記データ信号入出力バッファと前記第２データ取り込み回路とを直接的に接続する
メモリインターフェース回路。
【請求項３】
請求項１または２に記載のメモリインターフェース回路において、
前記遅延調整回路は、
前記第１データ取り込み回路に取り込まれたデータと、期待値データとの照合を行う第１期待値照合回路と、
前記第２データ取り込み回路に取り込まれたデータと、前記期待値データとの照合を行う第２期待値照合回路と、
前記第１期待値照合回路の出力と前記第２期待値照合回路の出力とに基づいて、前記データストローブ信号を段階的に遅延させるときの遅延量を制御する遅延設定制御回路と、
前記遅延設定制御回路の出力に基づいて、前記遅延データストローブ信号を生成するときの遅延値を設定する遅延設定回路と
を備える
メモリインターフェース回路。
【請求項４】
請求項３に記載のメモリインターフェース回路において、
前記遅延設定回路は、
前記第１期待値照合回路の出力と前記第２期待値照合回路の出力とに基づいて、前記データストローブ信号を段階的に遅延させるときの、一段階での遅延量を変更する遅延量設定回路を具備する
メモリインターフェース回路。
【請求項５】
請求項４に記載のメモリインターフェース回路において、
前記遅延調整回路は、さらに、
前記第１期待値照合回路の出力と前記第２期待値照合回路の出力との各々がデータ一致を示すか否かを判定する全一意判定回路を備え、
前記遅延設定回路は、
前記全一意判定回路の出力に基づいて、前記データストローブ信号を段階的に遅延させるときの、一段階での遅延量を変更する
メモリインターフェース回路。
【請求項６】
（ａ）データストローブ信号入出力バッファを介してメモリモジュールから供給されるデータストローブ信号を段階的に遅延させて遅延データストローブ信号を生成する工程と、
（ｂ）前記データストローブ信号を段階的に遅延させるときの遅延値を設定する工程と、
（ｃ）データ信号入出力バッファを介して前記メモリモジュールから供給されるデータ信号を、前記遅延調整回路に供給する工程と
を具備し、
前記（ｃ）工程は、
（ｃ１）前記データ信号を一定の遅延値で遅延させて前記遅延データ信号を生成する工程と、
（ｃ２）前記遅延データストローブ信号に同期して前記遅延データ信号を第１データ取り込み回路に取り込む工程と、
（ｃ３）前記遅延データストローブ信号に同期して前記データ信号を前記第１データ取り込み回路と異なる第２データ取り込み回路に取り込む工程と
を含む
メモリインターフェースの動作方法。
【請求項７】
請求項６に記載のメモリインターフェースの動作方法において、
前記（ｂ）工程は、
（ｂ１）前記第１データ取り込み回路に取り込まれた第１取り込みデータと期待値データとの照合に基づいて、前記第１取り込みデータと前記期待値データとが不一致から一致に変化する第１の時刻をもとめる第１期待値照合工程と、
（ｂ２）前記第２データ取り込み回路に取り込まれた第２取り込みデータと前記期待値データとの照合に基づいて、前記第２取り込みデータと前記期待値データとが一致から不一致に変化する第２の時刻をもとめる第２期待値照合工程と、
（ｂ３）前記第１データ取り込み回路に取り込まれた第１取り込みデータと期待値データとの照合に基づいて、前記第１取り込みデータと前記期待値データとが一致から不一致に変化する第３の時刻をもとめる第３期待値照合工程と、
（ｂ４）前記第１の時刻と前記第２の時刻と前記第３の時刻とに基づいて、前記データストローブ信号を遅延させて最適なデータ信号取込の時刻を求める工程と
を含む
メモリインターフェースの動作方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリインターフェース回路、および、そのメモリインターフェース回路の動作方法に関する。
【背景技術】
【０００２】
現在普及している多くの情報処理装置には、ＳＤＲＡＭ（Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）のような、クロックに同期してデータの入出力を行うことができるメモリデバイスが用いられている。ＳＤＲＡＭに対するデータ（ＤＱ）の入出力は、メモリインターフェース回路（コントローラ）によって制御されている。メモリインターフェース回路は、データストローブ信号（ＤＱＳ）の立ち上がりおよび立ち下がりのエッジに同期して、データ（ＤＱ）の入出力を行っている。
【０００３】
ＳＤＲＡＭとメモリインターフェース回路とのデータの送受信において、そのメモリインターフェース回路でのリード取込み動作マージンは、ＳＤＲＡＭにおけるデータ（ＤＱ）とデータストローブ信号（ＤＱＳ）に対するタイミング規格や、ＰＣＢ（ｐｒｉｎｔｅｄ  ｃｉｒｃｕｉｔ  ｂｏａｒｄ）配線長差、ＬＳＩ内部の遅延ばらつき、取り込み回路自身のセットアップ／ホールド、及び信号経路のジッターによる信号劣化などによって決まる。
【０００４】
このうち、ＳＤＲＡＭのタイミング規格は動作周波数に応じており、ジッターも周波数が高くなれば小さくなる。しかしながら、ＰＣＢ配線長差と、コントローラ内のデータ（ＤＱ）とデータストローブ信号（ＤＱＳ）のスキュー差は、周波数に関係なく一定で、動作周波数が高くなるに連れてコントローラのインターフェース内で、リード時の取り込み回路のマージンに占める割合が大きくなる。
【０００５】
そのため、ＰＣＢ遅延差は高速動作になるに連れてボード制約を厳しくしてきたが、８００Ｍｂｐｓ以上になると制約を満たす設計が困難になってきている。そこで、ＰＣＢ遅延とコントローラ内のスキュー差を調整してデータの中心部で取込む調整技術が必要になってきている。
【０００６】
ＳＤＲＡＭからはデータ（ＤＱ）とデータストローブ信号（ＤＱＳ）が同じ位相で出力される。コントローラには、データストローブ信号（ＤＱＳ）の位相をコントローラ内で遅らせて、取り込み回路で最適な位置でデータ（ＤＱ）が取込めるように調整する機能が備えられている。ＰＣＢ遅延とコントローラ内のスキュー差を調整してデータの中心部で取込む調整技術の一例として、上記の機能を活用して、データストローブ信号（ＤＱＳ）の遅延調整位置を可変にして調整する技術が知られている（例えば、特許文献１参照）。
【０００７】
特許文献１（特開２００８−５２３３５号公報）には、データストローブ信号（ＤＱＳ）の遅延を変えて、取込みが正しく行える範囲とエラーを発生させる範囲を求めることで、ＰＣＢ遅延とコントローラ内遅延バラつきによるスキュー調整をするための最適位置を検出する技術が記載されている。その特許文献１に記載の技術では、データ（ＤＱ）を伝送する信号線に固定遅延回路を設置し、取込み範囲検出動作で開始時のデータストローブ信号（ＤＱＳ）の可変遅延最少で取込みエラーを発生させるという動作をする。
【０００８】
図１は、特許文献１に記載のインターフェース回路１１０を搭載した半導体集積回路１０２の構成を示すブロック図である。インターフェース回路１１０は、入力データ（ＤＱ）を所定量遅延させる固定遅延回路１１１を設けたものである。この固定遅延回路１１１は、後述するように、遅延調整回路における最小の遅延量を最小遅延量ｔＭＩＮＤＬＹとし、データ（ＤＱ）とデータストローブ信号（ＤＱＳ）間のスキューをスキューｔＳＫＥＷとし、データ（ＤＱ）のセットアップ時間をセットアップ時間ｔＳＥＴＵＰとしたとき、
ｔＦＩＸＤＬＹ＞ｔＭＩＮＤＬＹ＋ｔＳＫＥＷ−ｔＳＥＴＵＰ
を満たす調整遅延量ｔＦＩＸＤＬＹだけデータ（ＤＱ）を遅延させる。
【０００９】
半導体集積回路１０２は、内部回路１２５を有している。この半導体集積回路１０２は、ＤＤＲ−ＳＤＲＡＭ１０１と接続され、ＤＤＲ−ＳＤＲＡＭ１０１からデータを読み出したり書き込みをしたりする。半導体集積回路１０２は、内部回路１２５とインターフェース回路１１０とを備えている。そのインターフェース回路１１０は、データ（ＤＱ）とデータストローブ信号（ＤＱＳ）とを内部回路１２５に供給している。
【００１０】
また、半導体集積回路１０２には、データ端子１２１（データ端子１２１）と、データストローブ信号端子１２２（データストローブ信号端子１２２）とが備えられている。データ端子１２１は、入出力バッファ１２３を介してインターフェース回路１１０に接続されている。同様に、データストローブ信号端子１２２は、入出力バッファ１２４を介してインターフェース回路１１０に接続されている。
【００１１】
インターフェース回路１１０は、固定遅延回路１１１、取り込み回路１１２、選択回路１１３、可変遅延回路１１４、及び遅延調整回路１１５を有する。可変遅延回路１１４及び遅延調整回路１１５から、データ（ＤＱ）のデータ有効ウィンドウを自動検知してデータストローブ信号（ＤＱＳ）の最適遅延量を自動調整するキャリブレーション回路が構成される。
【００１２】
ＤＤＲ−ＳＤＲＡＭ１０１からは、データ端子１３１を介してデータＮｄ３１が出力される。そして、半導体集積回路１０２のデータ端子１２１及び入出力バッファ１２３を介したデータＮｄ３２は、固定遅延回路１１１を通して選択回路１１３の一方と固定遅延回路１１１を通さず、選択回路１１３へ直接入力される。また、ＤＤＲ−ＳＤＲＡＭ１０１のデータストローブ信号端子１３２を介してデータストローブ信号Ｎｑ３１が出力される。そして、半導体集積回路１０２のデータストローブ信号端子１２２及び入出力バッファ１２４を介したデータストローブ信号Ｎｑ３２は可変遅延回路１１４に入力される。
【００１３】
可変遅延回路１１４にて位相シフトされたデータストローブ信号Ｎｑ３３の立ち上がりタイミングで、固定遅延回路１１１にて所定遅延量固定されたデータＮｄ３３は、取り込み回路１１２に取り込まれる。取り込み回路１１２に取り込まれたデータ（ＤＱ）は、通常は内部回路１２５へ出力される。なお、取り込み回路１１２は、データ（ＤＱ）をデータストローブ信号（ＤＱＳ）のタイミングで取り込む回路であるが、取り込んだデータ（ＤＱ）を内部回路のクロックに同期して出力するようにしてもよい。
【００１４】
一方、可変遅延回路１１４の可変遅延量を遅延調整回路１１５で決定する遅延調整モードの際には、取り込み回路１１２で取り込まれたデータＮｄ３５は、遅延調整回路１１５に入力される。可変遅延回路１１４は、最小遅延量をｔＭＩＮＳＬＹとし、可変遅延の刻み値をｔＤＬＹＳＴＥＰ、ｎを０以上の整数とすると、
可変遅延量＝ｔＭＩＮＤＬＹ＋ｔＳＬＹＳＴＥＰ×ｎ
のデータストローブ信号（ＤＱＳ）を生成する。取り込み回路１１２は、その各遅延値のデータストローブ信号Ｎｑ３３でデータＮｄ３４を取り込む。
【００１５】
遅延調整回路１１５は、期待値照合回路１４１、遅延量演算回路１４２、遅延設定回路１４３、および遅延設定回路１４４とを有する。遅延調整回路１１５は、製品組み立て後、出荷前等の適当なタイミングで遅延調整モードとし、可変遅延回路１１４に設定する最適遅延量の設定を行なう。この場合、先ず期待値照合用のデータをＤＤＲ−ＳＤＲＡＭ１０１に書き込み、これを可変遅延回路１１４における遅延量をシフトしながら読み出し期待値照合することで最適遅延量をサーチする。なお、期待値照合用のデータは遅延調整回路１１５等に設けられた保持部（図示されず）にて保持されている。
【００１６】
取り込み回路１１２は、可変遅延回路１１４で遅延されたデータストローブ信号（ＤＱＳ）に同期して、データＮｄ３４をラッチする。期待値照合回路１４１には、取り込み回路１１２によってラッチされたデータが、データＮｄ３５として供給される。期待値照合回路１４１は、取り込み回路１１２に取り込まれたデータＮｄ３４が期待値と一致するか否かを照合し、データ（ＤＱ）の読出しが成功か否かを判断する。
【００１７】
可変遅延量が小さくセットアップ限界以前でデータ（ＤＱ）を取り込めばデータ（ＤＱ）の読出しは失敗となる。そしてセットアップ時間を過ぎ、データ有効ウィンドウ内でデータ（ＤＱ）を取り込めばデータ（ＤＱ）は期待値と一致する。さらに遅延量が大きくなりデータ（ＤＱ）をホールド時間内に取り込むと再びデータ（ＤＱ）の読出しは失敗となる。このような期待値照合回路１４１の期待値照合結果により、セットアップ側の限界、ホールド側の限界を検出することができる。
【００１８】
このようにして遅延調整回路１１５は、可変遅延回路の遅延量を変化させながら、セットアップ／ホールドの限界遅延をサーチし、その中心を決定することで、タイミングマージンの最大化を図ることができるデータ有効ウィンドウの中心でデータ（ＤＱ）を取り込めるようデータストローブ信号（ＤＱＳ）の最適遅延量を求める。
【００１９】
遅延量演算回路１４２は、期待値照合によりセットアップ限界及びホールド限界を検出し、取り込み回路１１２での最適なデータの取込時間を演算する。遅延設定回路１４４は、遅延量演算回路１４２にて演算された最適遅延量を可変遅延回路１１４に設定し、遅延量演算回路１４２にて演算された最適なデータ取込時間で立ち上がるデータストローブ信号（ＤＱＳ）を生成させる。遅延設定回路１４３は、期待値照合回路１４１と遅延量演算回路１４２での結果より、選択回路１１３を制御をする。選択回路１１３は、データバッファ２３から直接入力されるデータＮｄ３２か、固定遅延回路１１１を通したデータＮｄ３３のどちらかを、遅延設定回路１４３の命令に従って選択する。
【００２０】
ここで、ＤＤＲ−ＳＤＲＡＭ１０１と半導体集積回路１０２との間の配線長の違いなどにより、データＮｄ３２よりデータストローブ信号Ｎｑ３２がｔＳＫＥＷだけスキューにより遅れる場合について説明する。図２は、特許文献１に記載のインターフェース回路１１０の動作を示すタイミングチャートである。データＮｄ３２は、固定遅延回路１１１により調整遅延量ｔＦＩＸＤＬＹだけ遅延したデータＮｄ３３になる。
【００２１】
ここで、データストローブ信号Ｎｑ３３（ａｃｔｕａｌ）は、最適遅延量調整済みのデータストローブ信号Ｎｑ３３を示す。また、データストローブ信号Ｎｑ３３（ｍｉｎｉｍｕｍ）は、可変遅延回路の最小遅延量ｔＭＩＮＤＬＹとしたデータストローブ信号Ｎｑ３３を示す。また、ｔＭＩＮＤＬＹを可変遅延回路の最小遅延量とした場合のセットアップ限界とホールド限界との差の２分の１をｔＢＳＴＭＲで表している。
【００２２】
図２に示されているように、最小遅延量ｔＭＩＮＤＬＹにおけるデータストローブ信号Ｎｑ３３（ｍｉｎｉｍｕｍ）の立ち上がりタイミングｔ２１がセットアップ限界タイミングｔ２２より早くなっている。データストローブ信号Ｎｑ３３（ａｃｔｕａｌ）に示すように、データサイクルｔＣＹＣからジッターｔＪＩＴＴＥＲ分を除き、さらにセットアップ時間ｔＳＥＴＵＰ及びホールド時間ｔＨＯＬＤを除いたデータ有効ウィンドウのちょうど中央位置にデータストローブ信号（ＤＱＳ）の立ち上がりがくるよう、データストローブ信号（ＤＱＳ）の遅延量を可変遅延回路１１４に設定する必要がある。そのため、データＮｄ３３におけるセットアップ終了タイミングとなるセットアップ限界タイミングｔ２２と、ホールド開始タイミングとなるホールド限界タイミングｔ２４を検出する必要がある。
【００２３】
このセットアップ限界タイミングｔ２２とホールド限界タイミングｔ２４を検出するため、可変遅延回路１１４の遅延を所定遅延幅で変化させ期待値照合する。セットアップ限界タイミングｔ２２より前のタイミングでは、期待値照合は失敗となり、セットアップ限界タイミングｔ２２からホールド限界タイミングｔ２４までのデータ有効ウィンドウ内では、データが読出し可能となり、期待値は一致する。さらに、ホールド限界タイミングｔ２４以降では、再び期待値照合が失敗する。
【００２４】
このようにして遅延量を順次変化させ、期待値照合することで、セットアップ限界タイミングｔ２２とホールド限界タイミングｔ２４を検出する。そして、セットアップ限界タイミングｔ２２とホールド限界タイミングｔ２４の中間のタイミングｔ２３が理想のデータストローブ信号（ＤＱＳ）（データストローブ信号Ｎｑ３３（ａｃｔｕａｌ））の遅延タイミングとなる。
【００２５】
次に、遅延設定回路１４３により、選択回路１１３を切り替え、固定遅延回路１１１をバイパスするパスを選択し、ホールドが限界タイミングｔ２５をサーチする。固定遅延回路１１１を通る場合のホールド限界ｔ２４と、通らない場合におけるホールド限界ｔ２５の差分は、固定遅延回路１１１の調整遅延量ｔＦＩＸＤＬＹに相当する。したがって、固定遅延回路１１１を通さないパスを用いる（キャリブレーションではない）通常動作では、可変遅延回路１１４は、データストローブ信号Ｎｑ３３（ａｃｔｕａｌ）を、タイミングｔ２３に対して、ホールド限界タイミングｔ２４とホールド限界タイミングｔ２５の差分だけ小さく設定することで最適な取込位置となる。
【先行技術文献】
【特許文献】
【００２６】
【特許文献１】特開２００８−５２３３５号公報
【発明の概要】
【発明が解決しようとする課題】
【００２７】
特許文献１に記載の技術では、有効なリード範囲が狭くなるという問題がある。上述したように、特許文献１に記載の技術では、入出力バッファと取り込み回路の間にセレクタが備えられている。そのため、入出力バッファと取り込み回路の間に挿入されたセレクタに起因するジッターが増加し、有効なリード範囲が狭くなってしまう。
【００２８】
例えば、ＤＤＲ３の場合、ＳＤＲＡＭからのデータ（ＤＱ）とデータストローブ信号（ＤＱＳ）の出力タイミング規格と、データストローブ信号（ＤＱＳ）のジッター及びハイ／ロウ幅規格を差し引くと、８００Ｍｂｐｓ動作の場合、１データ幅の１２５０ｐｓに対して有効なリード範囲は３９０ｐｓ程度となる。また、１０６６Ｍｂｐｓ動作の場合は、１データ幅の９２７．５ｐｓに対し２７０ｐｓ程度しかなくなってしまう。その有効なリード範囲に対し、他の要因やＰＣＢ制約を加味すると、メモリインターフェースでの有効範囲は極めて小さくなってしまう。
【課題を解決するための手段】
【００２９】
以下に、［発明を実施するための形態］で使用される番号を用いて、［課題を解決するための手段］を説明する。これらの番号は、［特許請求の範囲］の記載と［発明を実施するための形態］との対応関係を明らかにするために付加されたものである。ただし、それらの番号を、［特許請求の範囲］に記載されている発明の技術的範囲の解釈に用いてはならない。
【００３０】
上記の課題を解決するために、データストローブ信号入出力バッファ（２４）を介してメモリモジュールから供給されるデータストローブ信号（ＤＱＳ）を段階的に遅延させて遅延データストローブ信号（Ｎｑ１３）を生成する可変遅延回路と、データストローブ信号（ＤＱＳ）を段階的に遅延させるときの遅延値を設定する遅延調整回路（１５）と、データ信号入出力バッファ（２３）を介してメモリモジュールから供給されるデータ（ＤＱ）（データ信号Ｎｄ１４、Ｎｄ１５）を、遅延調整回路（１５）に供給するデータ供給回路とを具備するメモリインターフェース回路を構成する。
【００３１】
そのメモリインターフェース回路において、データ供給回路は、第１経路と第２経路とを備えるものとする。第１経路は、データ信号（Ｎｄ１２）を一定の遅延値で遅延させた遅延データ信号（Ｎｄ１３）を生成する固定遅延回路（１１）と、遅延データストローブ信号（Ｎｑ１３）に同期して遅延データ信号（Ｎｄ１３）を取り込む第１データ取り込み回路（１３）とを備える。第２経路は、第１データ取り込み回路（１３）と異なる第２データ取り込み回路（１２）を備える。その第２データ取り込み回路（１２）は、遅延データストローブ信号（Ｎｑ１３）に同期してデータ信号（Ｎｄ１２）を取り込む。
【００３２】
ここにおいて、その第２経路は、前記データ信号入出力バッファ（２３）と第２データ取り込み回路（１２）との間に設けられた信号線を含み、その信号線は、データ信号入出力バッファ（２３）と第２データ取り込み回路（１２）とを直接的に接続する。
【発明の効果】
【００３３】
メモリインターフェース回路の場合、データレイトが小さく、更にＳＤＲＡＭで種々の規格がある。そのため、入出力バッファから取り込み回路までを通過するパスへの素子を最小限にとどめることが求められる。本願発明では、ＳＤＲＡＭと半導体集積回路との仲立ちをするメモリインターフェース回路（メモリコントローラ）において、ＤＱとＤＱＳのスキュー調整を行うためのパス（入出力バッファから取り込み回路までを通過するパス）の素子を最小限にとどめることができる。通常動作では、入出力バッファと取り込み回路の間に回路を挿入しないパスが使用される。このパスには、特許文献１に記載の技術のようなセレクタ回路を設ける必要がなく、したがって、通常動作でのデータの入出力は、データストローブ信号（ＤＱＳ）の調整を必要としないシステムと同じ構成・動作で行われる。それにより、ジッター特性を劣化させることなく内部回路へデータを伝播することが可能となり、有効なリード範囲が狭くなるという問題を解決することが出来る。
【図面の簡単な説明】
【００３４】
【図１】図１は、特許文献１に記載の半導体集積回路の構成を示すブロック図である。
【図２】図２は、特許文献１に記載のインターフェース回路の動作を示すタイミングチャートである。
【図３】図３は、本発明のインターフェース回路１０を含むメモリシステムの第１実施形態の構成を例示するブロック図である。
【図４】図４は、第１期待値照合回路４１（または第２期待値照合回路４２）の構成を例示するブロック図である。
【図５】図５は、遅延設定制御回路４６の構成を例示するブロック図である。
【図６】図６は、遅延設定回路４５の構成を例示するブロック図である。
【図７】図７は、可変遅延回路１４の構成を例示するブロック図である。
【図８】図８は、インターフェース回路１０の動作を例示するフローチャートである。
【図９】図９は、インターフェース回路１０の動作を例示するタイミングチャートである。
【図１０】図１０は、本発明のインターフェース回路１０を含むメモリシステムの第２実施形態の構成を例示するブロック図である。
【図１１】図１１は、第２実施形態のインターフェース回路１０の動作を例示するフローチャートである。
【図１２】図１２は、第２実施形態のインターフェース回路１０の動作を例示するタイミングチャートである。
【発明を実施するための形態】
【００３５】
［第１実施形態］
以下に、本発明の実施の形態を図面に基づいて説明する。なお、実施の形態を説明するための図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
図３は、本発明のインターフェース回路１０を含むメモリシステムの第１実施形態の構成を例示するブロック図である。本実施形態のメモリシステムは、ＤＤＲ−ＳＤＲＡＭ１と半導体集積回路２とを含んでいる。その半導体集積回路２は、ＤＤＲ−ＳＤＲＡＭ１と接続され、そのＤＤＲ−ＳＤＲＡＭ１に対し複数ビットのデータを読み出したり書き込みをしたりする。
【００３６】
図３に示されているように、半導体集積回路２は、外部端子（データ端子）２１と、外部端子（データストローブ信号端子）２２と、入出力バッファ２３と、入出力バッファ２４と、内部回路２５と、インターフェース回路１０を備えている。内部回路２５は、ＤＤＲ−ＳＤＲＡＭ１から読みだされたデータを受け取り、所定のデータ処理を行う。また、ＤＤＲ−ＳＤＲＡＭ１は、内部回路２５によって処理されたデータを受け取り、内部の記憶領域に記憶する。
【００３７】
インターフェース回路１０は、固定遅延回路１１と、取り込み回路１２と、取り込み回路１３と、可変遅延回路１４と、遅延調整回路１５と、取り込み回路１６とを備えている。遅延調整回路１５は、第１期待値照合回路４１と、第２期待値照合回路４２と、遅延設定制御回路４６と、遅延設定回路４５とを備えている。第１期待値照合回路４１は、に１対１で対応する。第２期待値照合回路４２は、取り込み回路１３に１対１で対応する。遅延設定制御回路４６は、期待値照合結果からセットアップ及びホールド限界を保存して最適なデータストローブ信号（ＤＱＳ）位置を求める。遅延設定回路４５は、その遅延設定制御回路４６の計算結果から、可変遅延回路１４の遅延値を設定する。
【００３８】
なお、図３に例示されているインターフェース回路１０では、可変遅延調整回路１４からの出力が、１本の信号線を介して取り込み回路１２と取り込み回路１３とに供給されている。各取り込み回路までの遅延時間を容易に均等化にするために、２本の信号線を介して可変遅延回路１４からの出力をバファリングさせてもよい。
【００３９】
ＤＤＲ−ＳＤＲＡＭ１からは、データ端子３１を介して複数ビットのデータ信号Ｎｄ１１（データ（ＤＱ））が出力される。そのデータ信号Ｎｄ１１は、半導体集積回路２のデータ端子２１及び入出力バッファ２３を介して、データ信号Ｎｄ１２としてインターフェース回路１０に供給される。そのデータ信号Ｎｄ１２は、インターフェース回路１０の固定遅延回路１１を通して取り込み回路１３に供給される。また、そのデータ信号Ｎｄ１２は、別のパスを経由して、取り込み回路１２へ供給される。
【００４０】
また、ＤＤＲ−ＳＤＲＡＭ１からは、データ端子３１を介してデータ信号Ｎｄ２１が出力される。そのデータ信号Ｎｄ２１は、半導体集積回路２のデータ端子２１及び入出力バッファ２３を介して、データ信号Ｎｄ２２としてインターフェース回路１０の取り込み回路１６に供給される。
【００４１】
ＤＤＲ−ＳＤＲＡＭ１から、データストローブ信号端子３２を介してデータストローブ信号Ｎｑ１１が出力される。そのデータストローブ信号Ｎｑ１１は、半導体集積回路２のデータストローブ信号端子２２及び入出力バッファ２４を介して、データストローブ信号Ｎｑ１２として、インターフェース回路１０の可変遅延回路１４に供給される。
【００４２】
データストローブ信号Ｎｑ１２は、可変遅延回路１４で位相がシフトされ、データストローブ信号Ｎｑ１３として出力される。取り込み回路１２と、取り込み回路１３は、そのデータストローブ信号Ｎｑ１３の立ち上がりタイミングでデータ（データ信号Ｎｄ１２、データ信号Ｎｄ１３）を取り込む。同様に、取り込み回路１６は、そのデータストローブ信号Ｎｑ１３の立ち上がりタイミングでデータ（データ信号Ｎｄ２２）を取り込む。
【００４３】
取り込み回路１２の出力（データ信号Ｎｄ１４）は、内部回路２５と第１期待値照合回路４１へ供給される。また、取り込み回路１６の出力（データ信号Ｎｄ２３）は、内部回路２５へ供給される。さらに、取り込み回路１３の出力（データ信号Ｎｄ１５）は、第２期待値照合回路４２へ供給される。
【００４４】
以下に、第１期待値照合回路４１の具体的な構成について説明を行う。本実施形態において第１期待値照合回路４１と第２期待値照合回路４２は、同様の構成である。したがって、以下では、本実施形態の理解を容易にするために、第２期待値照合回路４２に関する詳細な説明を省略する。図４は、本実施形態の第１期待値照合回路４１（または第２期待値照合回路４２）の構成を例示するブロック図である。図４に示されているように、第１期待値照合回路４１は、期待値パターン発生器５１と、データレジスタ５２と、ＥＸ−ＮＯＲ回路５３とを備えている。
【００４５】
期待値パターン発生器５１は、予め書き込まれていたリードデータを出力する。データレジスタ５２は、取り込み回路１２（または取り込み回路１３）から出力されるデータを格納する。ＥＸ−ＮＯＲ回路５３は、期待値パターン発生器５１の値とデータレジスタ５２の値とを受け取り、各々の値が一致したときに、論理“１”を出力する。
【００４６】
以下に、遅延設定制御回路４６の具体的な構成について説明を行う。図５は、本実施形態の遅延設定制御回路４６の構成を例示するブロック図である。遅延設定制御回路４６は、遅延値コード保持部６１と、遅延値レジスタ６２と、遅延値レジスタ６３と、遅延値レジスタ６４と、演算回路６５とを備えている。遅延値コード保持部６１は、固定遅延回路１１の遅延値を決定するためのコードを保持している。本実施形態のインターフェース回路１０において、最適値の計測を行っているときは、遅延値コード保持部６１のコード値を変化させながらリード動作が行われる。
【００４７】
遅延値レジスタ６２は、第１期待値照合回路４１から供給される値を保持する。同様に、遅延値レジスタ６４は、第１期待値照合回路４１から供給される値を保持する。また、遅延値レジスタ６２と遅延値レジスタ６４は、後述する時刻ｔ１３と時刻ｔ１５のタイミングで遅延値コード保持部６１の値を保持する。遅延値レジスタ６３は、第２期待値照合回路４２から供給される値を保持する。また遅延値レジスタ６３は、後述する時刻ｔ１４のタイミングで遅延値コード保持部６１の値を保持する。演算回路６５は、遅延値レジスタ６２、遅延値レジスタ６３および遅延値レジスタ６４の値から、最適な取り込み位置を算出して、その値を遅延値コード保持部６１に転送する。
【００４８】
以下に、遅延設定回路４５の具体的な構成について説明を行う。図６は、本実施形態の遅延設定回路４５の構成を例示するブロック図である。遅延設定回路４５は、遅延値コード変換器７１と、遅延値コードレジスタ７２とを備えている。遅延値コード変換器７１は、遅延設定制御回路４６の遅延値コード保持部６１から供給されるコードを受け取る。遅延値コード変換器７１は、受け取ったコードを可変遅延回路１４の動作仕様に合わせたコードへ変換する。遅延値コードレジスタ７２は、遅延値コード変換器７１によって変換されたコードを保持して、可変遅延回路１４に供給する。なお、この回路ブロックは、遅延設定制御回路４６の組み込むことも可能である。
【００４９】
以下に、可変遅延回路１４の具体的な構成について説明を行なう。図７は、本実施形態の可変遅延回路１４の構成を例示するブロック図である。可変遅延回路１４は、入力端子８１と、入力端子８２と、複数の遅延素子８３と、選択回路８４とを備えている。入力端子８１には、データストローブ信号Ｎｑ１２が供給される。入力端子８２には、遅延設定回路４５の遅延値コードレジスタ７２に保持されたコードが供給される。選択回路８４は、入力端子８２から供給されるコードに基づいて、データストローブ信号Ｎｑ１２に所望の遅延量で段階的に遅延させて、データストローブ信号Ｎｑ１３として出力する。なお、遅延ステップ幅は、プログラムやユーザー設定で任意にすることが可能である。
【００５０】
ここで、本実施形態のインターフェース回路１０の動作について説明を行なう。図８は、インターフェース回路１０の動作を例示するフローチャートである。ステップＳ１において、可変遅延回路１４の遅延の設定を最小にする。ステップＳ２において、第２期待値照合回路４２は、取り込んだデータに対する期待値照合の結果として、データ不一致を示す値を出力する。
【００５１】
ステップＳ３において、可変遅延回路１４の遅延値を増加させる。ステップＳ４において、第２期待値照合回路４２の照合結果が、データ不一致からデータ一致となるタイミングを特定する。ステップＳ４において、特定したタイミングをセットアップ限界と判定し、遅延設定制御回路４６に記憶させる。
【００５２】
ステップＳ６において、可変遅延回路１４の遅延値をさらに増加させる。ステップＳ７において、第１期待値照合回路４１の照合結果が、データ一致からデータ不一致となるタイミングを特定する。ステップＳ８において、特定したタイミングを、第１期待値照合回路４１によるホールド限界とし、遅延設定制御回路４６に記憶させる。
【００５３】
ステップＳ９において、可変遅延回路１４の遅延値をさらに増加させる。ステップＳ１０において、第２期待値照合回路４２の照合結果が、データ一致からデータ不一致となるタイミングを特定する。ステップＳ１１において、特定したタイミングを第２期待値照合回路４２によるホールド限界とし、遅延設定制御回路４６に記憶させる。ステップＳ１２において、遅延設定制御回路４６は、記憶したタイミングの情報から、固定遅延回路１１を通さないデータ（データ信号Ｎｄ１２）の中間点を計算する。
【００５４】
上述のフローチャートで例示した動作を、タイミングチャートを用いて具体的に説明する。図９は、図８の動作を具体的に例示するタイミングチャートである。図中、不確定との記載はデータの変化点であるために、安定したデータが取込めないことを示す。図９の（ａ）は、可変遅延回路１４によってデータストローブ信号Ｎｑ１３に最小の遅延が設定された状態を例示している。時刻ｔ１１において、取り込み回路１３は、データ信号Ｎｄ１３であるデータＡ０の１つ前のデータを、データストローブ信号Ｎｑ１３の信号の立ち上がりで取込む。そのため、期待値判定回路４２では、データＡ０とは異なる値を取るためエラーと判断する。（ステップＳ１、Ｓ２）
【００５５】
図９の（ｂ）は、データストローブ信号Ｎｑ１３の遅延値を増加させた状態を例示している。可変遅延回路１４の出力であるデータストローブ信号Ｎｑ１３の遅延値が増やされたとき、データ信号Ｎｄ１３は、時刻ｔ１３において、データストローブ信号Ｎｑ１３の立ち上がり信号で取り込み回路１３にラッチされる。取り込み回路１３は、取り込んだデータをデータ信号Ｎｄ１５として出力する。期待値判定回路４２は、データ信号Ｎｄ１５として出力されたデータを、データＡ０と判定する。遅延設定制御回路４６は、このときの時刻ｔ１３を、セットアップ限界と判定し、遅延設定制御回路４６自身に記憶しておく。
【００５６】
なお、このときの時刻ｔ１３では、固定遅延回路１１を通さないデータ信号Ｎｄ１２は、取り込み回路１２では正常にデータＡ０として取込まれている。また、期待値判定回路４１は、取り込み回路１２から供給されるデータ信号Ｎｄ１４を、データＡ０として正常に取込めている状態である（ステップＳ３、Ｓ４、Ｓ５）。
【００５７】
図９の（ｃ）は、可変遅延回路１４の遅延値を更に増やした状態を例示している。固定遅延回路１１を通さないデータ信号Ｎｄ１２は、取り込み回路１２の出力（データ信号Ｎｄ１４）として期待値判定回路４１に供給される。第１期待値照合回路４１は、データＡ０と異なる値を取る最初の時刻ｔ１４をホールド限界と判定し、その時刻を遅延設定制御回路４６が記憶する。なお、時刻ｔ１４では、固定遅延回路１１を通る信号Ｎｄ１３は、取り込み回路１３からデータ信号Ｎｄ１５として供給される。期待値判定回路４２では正常にデータＡ０を取込めている状態である（ステップＳ６、Ｓ７、Ｓ８）。
【００５８】
図９の（ｄ）は、更に可変遅延回路１４の遅延値を更に増やした状態を例示している。
図９（ｄ）の状態では、固定遅延回路１１から供給されるデータ信号Ｎｄ１３は、取り込み回路１３で取り込まれた後、データ信号Ｎｄ１５として第２期待値照合回路４２に供給される。そのデータ信号Ｎｄ１５は、期待値判定回路４２でデータＡ０と異なる値を取る。遅延設定制御回路４６は、このときの時刻ｔ１５をホールド限界と判定し、遅延設定制御回路４６自身に記憶しておく（ステップＳ９、Ｓ１０、Ｓ１１）。
【００５９】
遅延設定制御回路４６は、記憶した時刻ｔ１３、時刻ｔ１４、時刻ｔ１５の時刻情報から、固定遅延回路１１を通さないデータ信号Ｎｄ１２の時刻ｔ１１と時刻ｔ１２の中間点の時刻を、下記（１）式を用いて計算する（ステップＳ１２）。
中間点＝（ｔ１５−ｔ１３）／２−（ｔ１５−ｔ１４）・・・（１）
その後、（１）式で求めた中間点の時刻を、可変遅延回路１４の設定値とする。
【００６０】
本実施形態のインターフェース回路１０は、２つの取り込み回路を備え、入出力バッファと取り込み回路の間に回路を挿入しないパスと、入出力バッファと取り込み回路間の間にデータストローブ信号の調整位置を測定するための固定遅延回路を挿入したパスとを備えている。通常動作では、入出力バッファと取り込み回路の間に回路を挿入しないパスが使用される。このパスには、従来技術のようなセレクタ回路を設ける必要がなく、したがって、通常動作では、データストローブ信号（ＤＱＳ）の調整を必要としないシステムと同じ構成・動作でデータの入出力を行うことができる。そのため、従来例のようにジッター特性を劣化させることなく内部回路へデータを伝播することで、有効なリード範囲が狭くなるという問題を解決することが出来る。さらに、２つのパスを有することで、データストローブ信号（ＤＱＳ）の調整を行うための測定での可変固定回路１４のスイープが１回で済むので、従来例に比べて約１／２の測定時間で済むという効果がある。
【００６１】
［第２実施形態］
以下に、本発明の第２実施形態について説明を行なう。図１０は、インターフェース回路１０を含むメモリシステムの第２実施形態の構成を例示するブロック図である。第２実施形態のメモリシステムに適用可能なインターフェース回路１０は、第１実施形態のインターフェース回路１０に対して、第１期待値照合回路４１と第２期待値照合回路４２の判定結果を受ける全一致判定回路４７を備えている。全一致判定回路４７は、受け取った第１期待値照合回路４１と第２期待値照合回路４２との出力が一致している判定した場合に、一致していることを示す信号（出力Ｃｑ２１）を遅延設定制御回路４６に供給する。
【００６２】
以下に、第２実施形態のインターフェース回路１０の動作について説明を行う。以下の動作の説明においては、本実施形態の理解を容易にするために、全一致判定回路４７が論理和回路で構成された場合を例示する。論理和回路で構成された全一致判定回路４７は、入力される第１期待値照合回路４１と第２期待値照合回路４２からの出力が一致と判定した場合に、Ｈｉｇｈレベルを出力するように構成されていることとする。
【００６３】
図１１は、第２実施形態のインターフェース回路１０の動作を例示するフローチャートである。ステップＳ１からステップＳ５までの動作は、第１実施形態と同様である。ステップＳ２１において、第１期待値照合回路４１と、第２期待値照合回路４２ともデータＡ０と一致と判定したとき、全一致判定回路４７は、その結果としてＨｉｇｈレベルを出力する。そして、出力Ｃｑ２１がＨｉｇｈレベルの区間では、データ信号Ｎｄ１２とデータ信号Ｎｄ１３は両方とも一致である。インターフェース回路１０は、次にデータ信号Ｎｄ２３が不一致となる点をサーチできれば良い。したがって、可変遅延回路１４は、出力Ｃｑ２１がＨｉｇｈレベルの区間の遅延ステップを大きく（一回に増加させる遅延量を多く）する。
【００６４】
ステップＳ２２において、可変遅延回路１４の大きくしたステップで遅延値を増加させる。ステップＳ２３において、データ信号Ｎｄ１２の期待値照合回路４２の結果が不一致となるタイミングを特定する。期待値照合回路４２の結果が不一致となったことに応答して、全一致判定回路４７はＬｏｗレベルの出力Ｃｑ２１を出力する。
【００６５】
ステップＳ２４において、出力Ｃｑ２１がＨｉｇｈレベルからＬｏｗレベルになった時点で、遅延設定回路４５は、可変遅延回路１４の可変ステップを、遅延が早くなる方向に戻す。そして、可変遅延回路１４の遅延ステップが最小ステップとなるように、遅延量を制御にする。
【００６６】
ステップＳ２５において、可変遅延回路１４の遅延値を、最小ステップで増加させる。ステップＳ２６において、第１期待値照合回路４１の照合結果が、データ一致からデータ不一致となるタイミングを特定する。ステップＳ２７において、特定したタイミングを、第１期待値照合回路４１によるホールド限界とし、遅延設定制御回路４６に記憶させる。
【００６７】
ステップＳ２８において、可変遅延回路１４の遅延値をさらに増加させる。ステップＳ２９において、第２期待値照合回路４２の照合結果が、データ一致からデータ不一致となるタイミングを特定する。ステップＳ３０において、特定したタイミングを第２期待値照合回路４２によるホールド限界とし、遅延設定制御回路４６に記憶させる。ステップＳ３１において、遅延設定制御回路４６は、記憶したタイミングの情報から、固定遅延回路１１を通さないデータ（データ信号Ｎｄ１２）の中間点を計算する。
【００６８】
上述のフローチャートで例示した動作を、タイミングチャートを用いて説明する。図１２は、図１１の動作を具体的に例示するタイミングチャートである。図１２に示されているように、時刻ｔ２３で、データ信号Ｎｄ１２とデータ信号Ｎｄ１３とは、共にデータの有効区間となる。第１期待値照合回路４１と第２期待値照合回路４２の各々は、データＡ０と一致したと判定し、その判定結果としてＨｉｇｈレベルを出力する。出力Ｃｑ２１がＨｉｇｈレベルの区間では、データ信号Ｎｄ１２とデータ信号Ｎｄ１３が両方一致である。インターフェース回路１０は、次にデータ信号Ｎｄ１３が不一致となる点をサーチできれば良い。そそのため、この区間は可変遅延回路１４の遅延ステップを大きくするように遅延設定回路４５を制御し、データストローブ信号Ｎｑ１３を変化させる（ステップＳ２１、Ｓ２２）。
【００６９】
データ信号Ｎｄ１２の期待値照合回路４２が不一致となると、出力Ｃｑ２１はＬｏｗレベルに遷移する（ステップＳ２３）。出力Ｃｑ２１がＨｉｇｈレベルからＬｏｗレベルになった時点で、遅延設定回路４５は、可変遅延回路１４の可変ステップを、遅延が早くなる方向に１ステップ戻す。また、このとき遅延ステップを最小ステップに制御にする（ステップＳ２４）。そして、データ信号Ｎｄ１２の側の期待値照合回路４２が一致する時刻からホールド限界タイミングｔ２４を求める（ステップＳ２５、Ｓ２６）。
【００７０】
その後は第１実施形態と同様に、データ信号Ｎｄ１３のホールド限界タイミングｔ２５を求める（ステップＳ２７、Ｓ２８、Ｓ２９）。そして、遅延設定制御回路４６が可変遅延回路１４の最適な状態を求める。遅延設定制御回路４６は、記憶した時刻ｔ２３、自己項ｔ２４および時刻ｔ２５の時刻情報から、固定遅延回路１１を経由しないデータ信号Ｎｄ１２の中間点（時刻ｔ２１と時刻ｔ２２の中間の時刻）を下記式
中間点＝（ｔ２５−ｔ２３）／２−（ｔ２５−ｔ２４）
を用いて計算する（ステップＳ３１、Ｓ３２）。
【００７１】
上述のように、第２実施形態のインターフェース回路１０は、セットアップ限界からホールド限界までのデータ有効区間での、可変遅延回路１４のステップ（段階的に遅延量の変更させる場合の、１段階での遅延量）を大きくすることで、サーチに要する時間を短くすることが可能である。また、データ有効区間での可変遅延回路１４のステップ幅は、プログラムやユーザー設定で任意にすることが可能である。
【００７２】
以上、本願発明の実施の形態を具体的に説明した。本願発明は上述の実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【符号の説明】
【００７３】
１…ＤＤＲ−ＳＤＲＡＭ
２…半導体集積回路
１０…インターフェース回路
１１…固定遅延回路
１２…取り込み回路
１３…取り込み回路
１４…可変遅延回路
１５…遅延調整回路
１６…取り込み回路
２１…データ端子
２２…データストローブ信号端子
２３…入出力バッファ
２４…入出力バッファ
２５…内部回路
３１…データ端子
３２…データストローブ信号端子
４１…第１期待値照合回路
４２…第２期待値照合回路
４５…遅延設定回路
４６…遅延設定制御回路
４７…全一致判定回路
５１…期待値パターン発生器
５２…データレジスタ
５３…ＥＸ−ＮＯＲ回路
６１…遅延値コード保持部
６２…遅延値レジスタ
６３…遅延値レジスタ
６４…遅延値レジスタ
６５…演算回路
７１…遅延値コード変換器
７２…遅延値コードレジスタ
８１…入力端子
８２…入力端子
８３…遅延素子
８４…選択回路
Ｎｄ１１…データ
Ｎｄ１２…データ
Ｎｄ１３…データ
Ｎｄ１４…データ
Ｎｄ１５…データ
Ｎｑ１１…データストローブ信号
Ｎｑ１２…データストローブ信号
Ｎｑ１３…データストローブ信号
Ｎｄ２１…データ
Ｎｄ２２…データ
Ｎｄ２３…データ
１０１…ＤＤＲ−ＳＤＲＡＭ
１０２…半導体集積回路
１１０…インターフェース回路
１１１…固定遅延回路
１１２…取り込み回路
１１３…選択回路
１１４…可変遅延回路
１１５…遅延調整回路
１２１…データ端子
１２２…データストローブ信号端子
１２３…入出力バッファ
１２４…入出力バッファ
１２５…内部回路
１３１…データ端子
１３２…データストローブ信号端子
１４１…期待値照合回路
１４２…遅延量演算回路
１４３…遅延設定回路
１４４…遅延設定回路
Ｎｄ３１…データ
Ｎｄ３２…データ
Ｎｄ３３…データ
Ｎｄ３４…データ
Ｎｄ３５…データ
Ｎｑ３１…データストローブ信号
Ｎｑ３２…データストローブ信号
Ｎｑ３３…データストローブ信号
【図１】
2013109637.tif 000003
【図２】
2013109637.tif 000004
【図３】
2013109637.tif 000005
【図４】
2013109637.tif 000006
【図５】
2013109637.tif 000007
【図６】
2013109637.tif 000008
【図７】
2013109637.tif 000009
【図８】
2013109637.tif 000010
【図９】
2013109637.tif 000011
【図１０】
2013109637.tif 000012
【図１１】
2013109637.tif 000013
【図１２】
2013109637.tif 000014