JP2011258134A - インタフェース回路 - Google Patents

インタフェース回路 Download PDF

Info

Publication number
JP2011258134A
JP2011258134A JP2010134301A JP2010134301A JP2011258134A JP 2011258134 A JP2011258134 A JP 2011258134A JP 2010134301 A JP2010134301 A JP 2010134301A JP 2010134301 A JP2010134301 A JP 2010134301A JP 2011258134 A JP2011258134 A JP 2011258134A
Authority
JP
Japan
Prior art keywords
data
signal
delay
clock signal
circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2010134301A
Other languages
English (en)
Inventor
Tsutomu Muramatsu
勉 村松
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2010134301A priority Critical patent/JP2011258134A/ja
Publication of JP2011258134A publication Critical patent/JP2011258134A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Dram (AREA)

Abstract

【課題】システムのパフォーマンスを低下させずに、メモリアクセス時のデータとクロック間の位相関係を検出する。
【解決手段】第1の遅延回路110は、クロック信号CLKを段階的に遅延させて、第1の遅延信号CLK1と、第1の遅延信号CLK1より位相が所定値早い第2の遅延信号CLK2と、第1の遅延信号CLK1より位相が所定値遅い第3の遅延信号CLK3を生成する。第1の遅延回路は、データ信号DQとクロック信号CLKが所定の位相関係を有するときに、第1の遅延信号CLKのエッジがデータ信号DQの単位データの中央部に対応するように遅延量が設定されている。データ取出部120は、第1〜3の遅延信号に基づいてデータ信号DQからデータの取出しを行って第1〜3のデータをそれぞれ得る。出力回路130は、第1のデータを外部に出力する。比較部140は、第1〜3のデータの比較を行う。
【選択図】図1

Description

本発明は、メモリアクセスの際のデータとクロック間の位相関係の検出技術に関する。
同期式メモリでは、クロック信号に基づいてデータ信号からデータが取り出されてリード/ライトされる。
例えば、SDR(Single Data Rate)メモリの場合、リードデータは、メモリクロックの立上りから次の立上りの1周期で読み出される。ライトデータも、メモリクロックの立上りから次の立上りの1周期で書き込まれる。
DDR(Double Date Rate)メモリのリードデータは、リード用クロック(リードデータ並走クロック)の立上りから立下りの半周期と立下りから立上りの半周期でそれぞれ1単位分読み出される。ライトデータは、リードデータとは1/4周期ずらして書き込まれる。これは、ライトデータの単位長の中央部にメモリクロックの立上りと立下りを充てるためである。
同期式メモリに対するデータのリード/ライトを確実に行うためには、リードデータとリード用クロック、ライトデータとライト用クロックの位相関係を正しく保証する必要があり、種々の視点からそのための技術が提案されている。
例えば、特許文献1には、電圧や温度などの環境差や、メモリ個体差などの装置のばらつきを吸収するための手法が開示されている。分かりやすいように、DDRメモリのメモリリードする場合を例にしてこの手法を説明する。
この手法は、DDRメモリのインタフェース回路において、リードデータまたはリードデータ並走クロックに可変な遅延を与えるディレイヤと、該ディレイヤの遅延量を制御するディレイ調整部とを設け、インタフェース回路がデータを出力する相手装置が確実にデータを受け取ることができる最適なポイントを探す技術である。この最適なポイントすなわち最適な遅延量を探す処理は、特許文献1ではトレーニングと呼ばれている。
図18と図19を参照してこの手法を説明する。例として、ディレイヤがリードデータにディレイを与えるものであるとする。
図18は、特許文献1の図1の(a)に対して符号のみを変更したものであり、図19は、特許文献1の図1の(b)である。なお、各機能ブロックの名称については、特許文献1の記述に用いられたのと同じものを使用する。
図18において、システムLSI20は、メモリのインタフェース回路に相当する。リードに際して、DDRメモリ10は、リードデータとリードデータ並走クロックを同相でシステムLSI20に送出する。システムLSI20において、入力バッファ21は、リードデータを受信する。入力バッファ21により受信されたリードデータは、入力バッファ21からディレイヤ22に転送され、ディレイ調整部26が指示する量のディレイを受けた後、2分岐されてラッチ23(ラッチ23−1、ラッチ23−2)にそれぞれ送信される。ラッチ23−1には、インバータ24によって逆相のリードデータ並走クロックが供給されており、ラッチ23−2には、正相のリードデータ並走クロック供給されている。ラッチ23−1とラッチ23−2からの2つの信号は、DDRデータ取出部25で、SDRに変換され、リードデータとなる。
図19は、システムLSI20が読み込むリードデータ並走クロックと、リードデータと、システムLSI20が目標とするディレイ調整したリードデータ間のタイミングを示す図である。
前述したように、DDRメモリのリードデータは、リード用クロック(リードデータ並走クロック)の立上りから立下りの半周期と立下りから立上りの半周期でそれぞれ1単位分読み出される。システムLSI20は、リードデータを、リードデータ並走クロックの立上りおよび立下りで読み込む。そのため、トレーニングの目標は、図19に示すように、システムLSI20がリードデータを、その有効期間の中央付近で取り出すように、すなわちリードデータ並走クロックの立上りエッジと立下りエッジがディレイ調整後のリードデータの有効期間の中央部に対応するように、リードデータに与える遅延量を探すことである。
トレーニングにおいて、DDRメモリ10から、リードデータとしてテストパターンがリードデータ並走クロックと共に出力される。システムLSI20においては、ディレイ調整部26は、リードデータ(ここではテストパターン)に与える遅延量を変化させてディレイヤ22を制御することにより、ディレイヤ22の設定可能な遅延量の上限値以下の範囲内で最適な遅延量を探す。ディレイヤ22の設定可能な遅延量の上限値以下の範囲内で最適な遅延量が見つかった場合には、トレーニング成功としてディレイヤ22の設定値はこの最適な遅延量に設定される。これにより、DDRメモリ10のリードが可能になる。一方、ディレイヤ22の設定可能な遅延量の上限値以下の範囲内で最適な遅延量が見つからなかった場合には、トレーリング失敗として、DDRメモリ10のリードが開始できないとされる。
この技術によれば、システムの本格運用の前の試験段階において、トレーニングによりメモリアクセスが正しく行える最適なポイントを探すことが可能である。
2007−12166号公報
ところで、システムの本格運用の開始後にも、データ信号とクロック信号の位相関係が崩れてしまう場合がある。これは、時間の経過につれ、供給電源の変動、システム動作の時間経過に応じた発熱量の変動、メモリアクセスの繁閑などの動作状況の変化による温度変動、気候の変化に起因する周辺温度の変動などに起因して、データ信号とクロック信号の経路の遅延値が変動するためである。そのため、システムの本格的な運用開始後も、データ信号とクロック信号の位相関係を継続的に検出する必要がある。
特許文献1の技術は、システムの本格的な運用の前の試験段階における調整を目的とし、トレーニングを行う際には一般メモリアクセスが不可となっており、トレーニングが成功した場合にのみ一般メモリアクセスが開始可能となっている。システムの本格的の運用開始後に特許文献1の技術を適用した場合には、トレーニングの度に一般メモリアクセスを停止させる必要がある。これでは、システムのパフォーマンスが低下し、迅速なレスポンスを必要とするメモリアクセスの場合にはレスポンスが遅れてしまうという問題がある。
本発明の一つの態様は、同期式メモリのリードまたはライトのデータ信号とクロック信号が入力されるインタフェース回路である。このインタフェース回路は、第1の遅延回路と、データ取出部と、出力部と、比較部を備える。
第1の遅延回路は、入力されたデータ信号とクロック信号のいずれか一方である対象信号を段階的に遅延させて、第1の遅延信号と、第1の遅延信号より位相が所定値早い第2の遅延信号と、第1の遅延信号より位相が所定値遅い第3の遅延信号とを生成する。
該第1の遅延回路は、上記データ信号とクロック信号が所定の位相関係を有することを前提にして、第1の遅延信号が対象信号に対する遅延量が設定されている。具体的には、第1の遅延回路がクロック信号を遅延させるものである場合、すなわち、対象信号がクロック信号である場合には、第1の遅延信号(遅延させられたクロック信号)のエッジがデータ信号の単位データの中央部に対応するように、該第1の遅延回路の上記遅延量が設定されている。一方、第1の遅延回路がデータ信号を遅延させるものである場合、すなわち対象信号がデータ信号である場合には、クロック信号のエッジが第1の遅延信号(遅延させられたデータ信号)の単位データの中央部に対応するように、該第1の遅延回路の上記遅延量が設定されている。
データ取出部は、データ信号とクロック信号のうちの対象信号と異なる他方と、第1〜第3の遅延信号のそれぞれとを用いてデータの取出しを行い、第1のデータと、第2のデータと、第3のデータとを得る。具体的には、対象信号がクロック信号である場合に、第1〜第3の遅延信号のそれぞれに基づいてデータ信号からデータの取出しを行って、第1〜第3のデータを得る。一方、対象信号がデータ信号である場合に、クロック信号に基づいて、第1〜第3の遅延信号からのデータの取出しをそれぞれ行って、第1〜第3のデータを得る。
出力部は、第1のデータを外部に出力する。「外部」とは、メモリリードの場合は、リードを行う装置側を意味し、メモリライトの場合は、メモリ側を意味する。
比較部は、第1と第2のデータが一致するか否かの比較、及び第1と第3のデータが一致するか否かの比較を行って比較結果を得る。
なお、上記態様のインタフェース回路を装置に置き換えて表現したもの、該インタフェース回路を備えたLSIも、本発明の態様としては有効である。
本発明にかかる技術によれば、システムのパフォーマンスを低下させずに、メモリアクセス時のデータとクロック間の位相関係の変動を検出することができる。
本発明の第1の実施の形態にかかるインタフェース回路を示す図である。 本発明の第2の実施の形態にかかるインタフェース回路を示す図である。 本発明の第3の実施の形態にかかるインタフェース回路を示す図である。 本発明の第4の実施の形態にかかるインタフェース回路を示す図である。 本発明の第5の実施の形態にかかるインタフェース回路を示す図である。 本発明の第6の実施の形態にかかるインタフェース回路を示す図である。 本発明の第7の実施の形態にかかるインタフェース回路を示す図である。 図7に示すインタフェース回路における第2の遅延回路を示す図である。 図7に示すインタフェース回路の第1の遅延回路における位相シフト回路を示す図である。 図7に示すインタフェース回路における判定回路を示す図である。 図7に示すインタフェース回路における制御回路を示す図である。 図11に示す制御回路における第2の初期位相設定部を示す図である。 図7に示すインタフェース回路の初期設定の直後における各データ信号とクロック信号の関係の例を示す図である。 図7に示すインタフェース回路において、データ信号の位相遅れが生じた場合の各データ信号とクロック信号の関係の例を示す図である。 図7に示すインタフェース回路において、クロック信号の位相遅れが生じた場合の各データ信号とクロック信号の関係の例を示す図である。 図7に示すインタフェース回路における処理の例を示すフローチャートである(その1)。 図7に示すインタフェース回路における処理の例を示すフローチャートである(その2)。 特許文献1の技術を説明するための図である(その1)。 特許文献1の技術を説明するための図である(その2)。
以下、図面を参照して本発明の実施の形態について説明する。説明の明確化のため、以下の記載及び図面は、適宜、省略、及び簡略化がなされている。また、各図面間で、機能や動作が同じものについては、同一の符号を付与し、詳細な説明を繰り返さない。
また、以下の各実施の形態のインタフェース回路は、同期式メモリのメモリリードまたはライトのデータ信号とクロック信号のいずれか一方または両方に遅延を与えてから、データ信号からデータを取り出して出力するものであり、入力されたデータ信号とクロック信号が所定の位相関係を有する場合に、クロック信号のエッジがデータ信号の単位データの中心部に対応するように上記遅延の遅延量が設定されている。
「クロック信号のエッジがデータ信号の単位データの中心部に対応する」ことは、クロック信号に基づいてデータ信号からデータを取り出すための、データ信号とクロック信号の最適な位相関係である。以下の説明において、クロック信号のエッジがデータ信号の単位データの中心部に対応することを満たすデータ信号とクロック信号の位相関係を「最適な位相関係」という。
「データ信号の単位データの中心部」とは、データ信号の単位データの有効期間の中心及び中心付近を意味し、例えば、DDRメモリの場合クロックの1/4周期位相付近とすることができる。
例えば、SDRメモリの場合、メモリリードの際のデータ信号とクロック信号の最適な位相関係は、クロック信号の立上りエッジがデータ信号の単位データの中心部に対応することを意味し、メモリライトの際も同様である。
また、DDRメモリの場合、メモリリードとメモリライトのいずれのときにおいても、データ信号とクロック信号の最適な位相関係は、クロック信号の立上りエッジと立下りエッジのいずれもデータ信号の単位データの中心部に対応することを意味する。
前述したように、以下の各実施の形態のインタフェース回路は、入力されたデータ信号とクロック信号が所定の位相関係を有する場合に、データ信号とクロック信号が最適な位相関係になるように、データ信号とクロック信号のいずれか一方または両方に与える遅延量が設定されている。この「所定の位相関係」は、システムの設計によって異なりうるが、以下の説明において、例として、この所定の位相関係が「同相」であるとする。
また、説明上の便宜のため、以下の各実施の形態について、DDRメモリのメモリリードの場合を例にする。
<第1の実施の形態>
図1は、本発明の第1の実施の形態にかかるインタフェース回路100を示す。インタフェース回路100は、DDRメモリのインタフェース回路であり、図示しないDDRメモリからデータ信号DQとデータ取り込みクロック信号CLKが入力される。
インタフェース回路100は、第1の遅延回路110と、データ取出部120と、出力回路130と、比較部140を備える。
第1の遅延回路110は、クロック信号CLKを段階的に遅延させることによって位相の異なる3つの遅延信号(CLK1、CLK2、CLK3)を生成する。本実施の形態において、第1の遅延回路110がクロック信号CLKを対象信号とし、3つの遅延信号がクロック信号であるため、以下、CLK1〜3をそれぞれ第1のクロック信号、第2のクロック信号、第3のクロック信号という。第2のクロック信号CLK2は、第1のクロック信号CLK1より位相が所定値早いクロック信号であり、第3のクロック信号CLK3は、第1のクロック信号CLK1より位相が所定値遅いクロック信号である。
第1の遅延回路110は、第1のクロック信号CLK1のクロック信号CLKに対する遅延量が調整可能である。本実施の形態において、データ信号DQとクロック信号CLKが所定の位相関係ここでは同相である場合に、第1のクロック信号CLK1とデータ信号DQとが最適な位相関係になるように上記遅延量が設定されている。
また、第2のクロック信号CLK2は第1のクロック信号CLK1より位相が早いものの、第2のクロック信号CLK2と第1のクロック信号CLK1間の位相差に該当する「所定値」は、第1のクロック信号CLK1とデータ信号DQが最適な位相関係を有する場合に、第2のクロック信号CLK2に基づいてもデータ信号DQから、第1のクロック信号CLK1に基づいてデータ信号DQから取出したデータと同じデータを取り出すことができる範囲内の値に設定されている。
同様に、第3のクロック信号CLK3は第1のクロック信号CLK1より位相が遅いものの、第3のクロック信号CLK3と第1のクロック信号CLK1間の位相差に該当する「所定値」も、第1のクロック信号CLK1とデータ信号DQが最適な位相関係を有する場合に、第3のクロック信号CLK3に基づいてもデータ信号DQから、第1のクロック信号CLK1に基づいてデータ信号DQから取出したデータと同じデータを取り出すことができる範囲内の値に設定されている。
データ取出部120は、第1の取出部122と、第2の取出部124と、第3の取出部126を有する。これらの取出部は、クロック信号に基づいてデータ信号からデータの取出しを行うものであり、例えばラッチ回路やフリップフロップ回路である。
第1の取出部122は、第1のクロック信号CLK1に基づいてデータ信号DQからデータの取出しを行って第1のデータDAを得る。第2の取出部124は、第2のクロック信号CLK2に基づいてデータ信号DQからデータの取出しを行って第2のデータDBを得る。第3の取出部126は、第3のクロック信号CLK3に基づいてデータ信号DQからデータの取出しを行って第3のデータDCを得る。
第1のデータDA、第2のデータDB、第3のデータDCは、共に比較部140に入力される。第1のデータDAは、さらに出力回路130に入力され、出力回路130によりリードデータまたはライトデータとして外部に出力される。
比較部140は、第1のデータDAと第2のデータDBが一致であるか否かの比較、及び第1のデータDAと第3のデータDCとが一致であるか否かの比較を行って比較結果を得る。
上述した説明から分かるように、データ信号DQとクロック信号CLKのいずれも遅延が無く、同相でインタフェース回路100に入力された場合、第1のクロック信号CLK1とデータ信号DQが最適な位相関係を有することになるため、第1の取出部122によりデータ信号DQからリードデータ(第1のデータDA)が正しく取り出され、外部に出力される。また、この場合、第2の取出部124と第3の取出部126により得られた第2のデータDBと第3のデータDCは、第1のデータDAと同一である。
一方、データ信号DQとクロック信号CLKのいずれかの位相が遅れて、第1のクロック信号CLK1と第2のクロック信号CLK2のエッジ、または第1のクロック信号CLK1と第3のクロック信号CLK3のエッジがデータ信号DQの異なる単位データの有効期間に対応するようになった場合、第1のデータDAと第2のデータDB、または第1のデータDAと第3のデータDCが異なってしまう。
そのため、比較部140の比較結果は、データ信号DQとクロック信号CLKのいずれかに生じた位相遅れの大小、すなわちデータ信号DQと第1のクロック信号CLK1間の最適な位相関係の崩れの有無を示すことができる。具体的には、第1のデータDAと第2のデータDBの比較結果(第1の比較結果)、第1のデータDAと第3のデータDCの比較結果(第2の比較結果)のいずれも「一致」を示すものであれば、データ信号DQと第1のクロック信号CLK1が最適な位相関係を有することが分かる。一方、第1の比較結果と第2の比較結果のいずれか一方が「不一致」を示すものであれば、データ信号DQと第1のクロック信号CLK1の最適な位相関係が崩れており、調整が必要であることが分かる。
このように、本実施の形態のインタフェース回路100は、データ信号DQからリードデータを取り出すクロック信号として第1のクロック信号CLK1を生成して、第1のクロック信号CLK1に基づいてデータ信号DQから第1のデータDAを取出してリードデータとして外部に出力すると共に、第1のクロック信号CLK1より位相が所定値早い第2のクロック信号CLK2と、第1のクロック信号CLK1より位相が所定値遅い第3のクロック信号CLK3を生成してこの2つのクロック信号にも基づいてデータ信号DQからのデータの取出しを行って第2のデータDBと第3のデータDCを得て第1のデータDAと比較し、第1のクロック信号CLK1とデータ信号DQ間の最適な位相関係の崩れの有無を示す比較結果を得る。従って、システムの動作を停止させることをせずに、データ信号DQと、リードデータを取り出すためのクロック信号(第1のクロック信号CLK1)間の最適な位相関係の崩れの有無を検出でき、システムのパフォーマンスの低下を回避できる。
<第2の実施の形態>
図2は、本発明の第2の実施の形態にかかるインタフェース回路150を示す。インタフェース回路150も、DDRメモリのインタフェース回路であり、メモリリードデータ信号DQとクロック信号CLKが入力される。
インタフェース回路150は、第1の遅延回路160と、データ取出部120と、出力回路130と、比較部140を備える。
第1の遅延回路160は、データ信号DQを段階的に遅延させることによって位相の異なる3つの遅延信号(DQ1、DQ2、DQ3)を生成する。本実施の形態において、第1の遅延回路160がデータ信号DQを対象信号とし、3つの遅延信号がデータ信号であるため、以下、DQ1〜3をそれぞれ第1のデータ信号、第2のデータ信号、第3のデータ信号という。第2のデータ信号DQ2は、第1のデータ信号DQ1より位相が所定値早いデータ信号であり、第3のデータ信号DQ3は、第1のデータ信号DQ1より位相が所定値遅いデータ信号である。
第1の遅延回路160は、第1のデータ信号DQ1のデータ信号DQに対する遅延量が調整可能である。本実施の形態において、データ信号DQとクロック信号CLKが所定の位相関係ここでは同相である場合に、第1のデータ信号DQ1とクロック信号CLKとが最適な位相関係になるように上記遅延量が設定されている。
また、第2のデータ信号DQ2は第1のデータ信号DQ1より位相が早いものの、第2のデータ信号DQ2と第1のデータ信号DQ1間の位相差に該当する「所定値」は、第1のデータ信号DQ1とクロック信号CLKが最適な位相関係を有する場合に、クロック信号CLKに基づいて第2のデータ信号DQ2からも、クロック信号CLKに基づいて第1のデータ信号DQ1から取出したデータと同じデータを取り出すことができる範囲内の値に設定されている。
同様に、第3のデータ信号DQ3は第1のデータ信号DQ1より位相が遅いものの、第3のデータ信号DQ3と第1のデータ信号DQ1間の位相差に該当する「所定値」も、第1のデータ信号DQ1とクロック信号CLKが最適な位相関係を有する場合に、クロック信号CLKに基づいて第3のデータ信号DQ3からも、クロック信号CLKに基づいて第1のデータ信号DQ1から取出したデータと同じデータを取り出すことができる範囲内の値に設定されている。
データ取出部120は、入力される信号が異なる点を除き、インタフェース回路100のデータ取出部120と同一である。
第1の取出部122は、クロック信号CLKと第1のデータ信号DQ1が入力され、クロック信号CLKに基づいて第1のデータ信号DQ1からデータの取出しを行って第1のデータDAを得る。第2の取出部124は、クロック信号CLKと第2のデータ信号DQ2が入力され、クロック信号CLKに基づいて第2のデータ信号DQ2からデータの取出しを行って第2のデータDBを得る。第3の取出部126は、クロック信号CLKと第3のデータ信号DQ3が入力され、クロック信号CLKに基づいて第3のデータ信号DQ3からデータの取出しを行って第3のデータDCを得る。
第1のデータDA、第2のデータDB、第3のデータDCは、共に比較部140に入力される。第1のデータDAは、さらに出力回路130に入力され、出力回路130によりリードデータまたはライトデータとして外部に出力される。比較部140は、第1のデータDAと第2のデータDBが一致であるか否かの比較、及び第1のデータDAと第3のデータDCとが一致であるか否かの比較を行って比較結果を得る。これらについては、インタフェース回路100と同様である。
本実施の形態のインタフェース回路150は、リードデータを取り出すためのデータ信号として第1のデータ信号DQ1を生成して、クロック信号CLKに基づいて第1のデータ信号DQ1から第1のデータDAを取り出してリードデータとして外部に出力すると共に、第1のデータ信号DQ1より位相が所定値早い第2のデータ信号DQ2と、第1のデータ信号DQ1より位相が所定値遅い第3のデータ信号DQ3を生成して、クロック信号CLKに基づいてこの2つのデータ信号からデータの取出しをそれぞれ行って第2のデータDBと第3のデータDCを得て第1のデータDAと比較し、第1のデータ信号DQ1とクロック信号CLK間の最適な位相関係の崩れの有無を示す比較結果を得る。従って、システムの動作を停止させることをせずに、クロック信号CLKと、リードデータを取り出すためのデータ信号(第1のデータ信号DQ1)間の最適な位相関係の崩れの有無を検出でき、システムのパフォーマンスの低下を回避できる。
<第3の実施の形態>
図3は、本発明の第3の実施の形態にかかるインタフェース回路200を示す。インタフェース回路200も、DDRメモリのインタフェース回路であり、メモリリードのデータ信号DQとクロック信号CLKが入力される。
インタフェース回路200は、図1に示すインタフェース回路100に対して、第1の遅延回路110の遅延量を調整する遅延調整部210が追加された点を除き、インタフェース回路100と同様である。ここで、遅延調整部210についてのみ説明する。
遅延調整部210は、比較部140による比較結果に基づいて第1の遅延回路110に対して遅延量を調整するか否かの判定と、調整すると判定した場合の調整を行う。
具体的には、比較部140の2つの比較結果のいずれも「一致」を示す場合に、遅延調整部210は、「調整しない」と判定し、調整を行わない。
一方、比較部140の2つの比較結果のいずれか一方が「不一致」を示す場合には、遅延調整部210は、「調整する」と判定すると共に、比較部140の2つの比較結果のいずれも「一致」を示すように、第1の遅延回路110の調整を行う。例えば、第1のデータDAと第2のデータDBが不一致であり、第1のデータDAと第3のデータDCが一致である場合に、データ信号DQの位相遅れが原因になるため、第1のクロック信号CLK1のクロック信号CLKに対する遅延量が増えるように第1の遅延回路110を調整する。一方、第1のデータDAと第2のデータDBが一致であり、第1のデータDAと第3のデータDCが不一致である場合に、クロック信号CLKの位相遅れが原因になるため、第1のクロック信号CLK1のクロック信号CLKに対する遅延量が減少するように第1の遅延回路110を調整する。
すなわち、本実施の形態のインタフェース回路200は、インタフェース回路100と同様の効果を得ることができると共に、第1のクロック信号CLK1とデータ信号DQが常に最適な位相関係を有するように調整できる。この調整は、通常のメモリアクセスを停止せずに行われるので、システムのパフォーマンスの低下を回避することができる。
<第4の実施の形態>
図4は、本発明の第4の実施の形態にかかるインタフェース回路220を示す。インタフェース回路220も、DDRメモリのインタフェース回路であり、メモリリードのデータ信号DQとクロック信号CLKが入力される。
インタフェース回路220は、図1に示すインタフェース回路100に対して、第1の遅延回路222が第1の遅延回路110と異なる点、データ信号DQを遅延させて遅延データ信号DQ0を得てデータ取出部120に出力する第2の遅延回路224と、第2の遅延回路224の遅延量を調整する遅延調整部226が追加された点を除き、インタフェース回路100と同様である。ここで第1の遅延回路222と、第2の遅延回路224と、遅延調整部226についてのみ説明する。
第1の遅延回路222は、クロック信号CLKを段階的に遅延させて3つのクロック信号(第1のクロック信号CLK1、第2のクロック信号CLK2、第3のクロック信号CLK3)を生成する。第2のクロック信号CLK2は第1のクロック信号CLK1より位相が所定値早く、第3のクロック信号CLK3は第1のクロック信号CLK1より位相が所定値遅い。第1のクロック信号CLK1と第2のクロック信号CLK2間の位相差は、インタフェース回路100における第1のクロック信号CLK1と第2のクロック信号CLK2間の位相差と同様であり、第1のクロック信号CLK1と第3のクロック信号CLK3間の位相差も、インタフェース回路100における第1のクロック信号CLK1と第3のクロック信号CLK3間の位相差と同様である。
第1のクロック信号CLK1のクロック信号CLKに対する遅延量と、遅延データ信号DQ0のデータ信号DQに対する遅延量(すなわち第2の遅延回路224の遅延量)は、データ信号DQとクロック信号CLKが同相であるときに、第1のクロック信号CLK1と遅延データ信号DQ0が最適な位相関係を有するように設定されている。
第1の取出部122は、第1のクロック信号CLK1と遅延データ信号DQ0が入力され、第1のクロック信号CLK1に基づいて遅延データ信号DQ0からデータの取出しを行って第1のデータDAを得る。第2の取出部124は、第2のクロック信号CLK2と遅延データ信号DQ0が入力され、第2のクロック信号CLK2に基づいて遅延データ信号DQ0からデータの取出しを行って第2のデータDBを得る。第3の取出部126は、第3のクロック信号CLK3と遅延データ信号DQ0が入力され、第3のクロック信号CLK3に基づいて遅延データ信号DQ0からデータの取出しを行って第3のデータDCを得る。
遅延調整部226は、比較部140による比較結果に基づいて第2の遅延回路224に対して遅延量を調整するか否かの判定と、調整すると判定した場合の調整を行う。
具体的には、比較部140の2つの比較結果のいずれも「一致」を示す場合に、遅延調整部226は、「調整しない」と判定し、調整を行わない。
一方、比較部140の2つの比較結果のいずれか一方が「不一致」を示す場合には、遅延調整部226は、「調整する」と判定すると共に、比較部140の2つの比較結果のいずれも「一致」を示すように、第2の遅延回路224の調整を行う。例えば、第1のデータDAと第2のデータDBが不一致であり、第1のデータDAと第3のデータDCが一致である場合に、データ信号DQの位相遅れが原因になるため、遅延データ信号DQ0のデータ信号DQに対する遅延量が減少するように第2の遅延回路224を調整する。一方、第1のデータDAと第2のデータDBが一致であり、第1のデータDAと第3のデータDCが不一致である場合に、クロック信号CLKの位相遅れが原因になるため、遅延データ信号DQ0のデータ信号DQに対する遅延量が増えるように第2の遅延回路224を調整する。
本実施の形態のインタフェース回路220は、図3に示すインタフェース回路200を説明した時に述べた原理と同様に、インタフェース回路200と同様の効果を得ることができる。
<第5の実施の形態>
図5は、本発明の第5の実施の形態にかかるインタフェース回路250を示す。インタフェース回路250も、DDRメモリのインタフェース回路であり、メモリリードのデータ信号DQとクロック信号CLKが入力される。
インタフェース回路250は、図2に示すインタフェース回路150に対して、第1の遅延回路160の遅延量を調整する遅延調整部260が追加された点を除き、インタフェース回路150と同様である。ここで、遅延調整部260についてのみ説明する。
遅延調整部260は、比較部140による比較結果に基づいて第1の遅延回路160に対して遅延量を調整するか否かの判定と、調整すると判定した場合の調整を行う。
具体的には、比較部140の2つの比較結果のいずれも「一致」を示す場合に、遅延調整部210は、「調整しない」と判定し、調整を行わない。
一方、比較部140の2つの比較結果のいずれか一方が「不一致」を示す場合には、遅延調整部260は、「調整する」と判定すると共に、比較部140の2つの比較結果のいずれも「一致」を示すように、第1の遅延回路160の調整を行う。例えば、第1のデータDAと第2のデータDBが不一致であり、第1のデータDAと第3のデータDCが一致である場合に、データ信号DQの位相遅れが原因になるため、第1のデータ信号DQ1のデータ信号DQに対する遅延量が減少するように第1の遅延回路160を調整する。一方、第1のデータDAと第2のデータDBが一致であり、第1のデータDAと第3のデータDCが不一致である場合に、クロック信号CLKの位相遅れが原因になるため、第1のデータ信号DQ1のデータ信号DQに対する遅延量が増えるように第1の遅延回路160を調整する。
すなわち、本実施の形態のインタフェース回路250は、インタフェース回路150と同様の効果を得ることができると共に、第1のデータ信号DQ1とクロック信号CLKが常に最適な位相関係を有するように調整できる。この調整は、通常のメモリアクセスを停止せずに行われるので、システムのパフォーマンスの低下を回避することができる。
<第6の実施の形態>
図6は、本発明の第6の実施の形態にかかるインタフェース回路270を示す。インタフェース回路270も、DDRメモリのインタフェース回路であり、メモリリードのデータ信号DQとクロック信号CLKが入力される。
インタフェース回路270は、図2に示すインタフェース回路150に対して、第1の遅延回路272が第1の遅延回路160と異なる点、クロック信号CLKを遅延させて遅延クロック信号CLK0を得てデータ取出部120に出力する第2の遅延回路274と、第2の遅延回路274の遅延量を調整する遅延調整部276が追加された点を除き、インタフェース回路150と同様である。ここで第1の遅延回路272と、第2の遅延回路274と、遅延調整部276についてのみ説明する。
第1の遅延回路272は、データ信号DQを段階的に遅延させて3つのデータ信号(第1のデータ信号DQ1、第2のデータ信号DQ2、第3のデータ信号DQ3)を生成する。第2のデータ信号DQ2は第1のデータ信号DQ1より位相が所定値早く、第3のデータ信号DQ3は第1のデータ信号DQ1より位相が所定値遅い。第1のデータ信号DQ1と第2のデータ信号DQ2間の位相差は、インタフェース回路150における第1のデータ信号DQ1と第2のデータ信号DQ2間の位相差と同様であり、第1のデータ信号DQ1と第3のデータ信号DQ3間の位相差も、インタフェース回路150における第1のデータ信号DQ1と第3のデータ信号DQ3間の位相差と同様である。
第1のデータ信号DQ1のデータ信号DQに対する遅延量と、遅延クロック信号CLK0のクロック信号CLKに対する遅延量(すなわち第2の遅延回路274の遅延量)は、データ信号DQとクロック信号CLKが同相であるときに、第1のデータ信号DQ1と遅延クロック信号CLK0が最適な位相関係を有するように設定されている。
第1の取出部122は、遅延クロック信号CLK0と第1のデータ信号DQ1が入力され、遅延クロック信号CLK0に基づいて第1のデータ信号DQ1からデータの取出しを行って第1のデータDAを得る。第2の取出部124は、遅延クロック信号CLK0と第2のデータ信号DQ2が入力され、遅延クロック信号CLK0に基づいて第2のデータ信号DQ2からデータの取出しを行って第2のデータDBを得る。第3の取出部126は、遅延クロック信号CLK0と第3のデータ信号DQ3が入力され、遅延クロック信号CLK0に基づいて第3のデータ信号DQ3からデータの取出しを行って第3のデータDCを得る。
遅延調整部276は、比較部140による比較結果に基づいて第2の遅延回路274に対して遅延量を調整するか否かの判定と、調整すると判定した場合の調整を行う。
具体的には、比較部140の2つの比較結果のいずれも「一致」を示す場合に、遅延調整部276は、「調整しない」と判定し、調整を行わない。
一方、比較部140の2つの比較結果のいずれか一方が「不一致」を示す場合には、遅延調整部276は、「調整する」と判定すると共に、比較部140の2つの比較結果のいずれも「一致」を示すように、第2の遅延回路274の調整を行う。例えば、第1のデータDAと第2のデータDBが不一致であり、第1のデータDAと第3のデータDCが一致である場合に、データ信号DQの位相遅れが原因になるため、遅延クロック信号CLK0のクロック信号CLKに対する遅延量が増えるように第2の遅延回路274を調整する。一方、第1のデータDAと第2のデータDBが一致であり、第1のデータDAと第3のデータDCが不一致である場合に、クロック信号CLKの位相遅れが原因になるため、遅延クロック信号CLK0のクロック信号CLKに対する遅延量が減少するように第2の遅延回路274を調整する。
本実施の形態のインタフェース回路270は、図5に示すインタフェース回路250と同様の効果を得ることができる。
<第7の実施の形態>
図7は、本発明の第7の実施の形態にかかるインタフェース回路300を示す。インタフェース回路300は、DDRメモリのインタフェース回路であり、DDRメモリ290からデータ信号DQとクロック信号CLKが入力される。
インタフェース回路300は、入力バッファ302、入力バッファ304、第1の遅延回路330、第2の遅延回路340、データ取出部350、判定回路500、制御回路600、CLK遅延調整回路380、DQ遅延調整回路390を備える。
DDRメモリ290からのクロック信号CLKは、入力バッファ302に入力され、入力バッファ302により第1の遅延回路330に出力する。DDRメモリ290からのデータ信号DQは、入力バッファ304に入力され、入力バッファ304により第2の遅延回路340に出力する。
第1の遅延回路330は、入力バッファ302からのクロック信号CLKを段階的に遅延させて3つの遅延信号(第1のクロック信号CLK1、第2のクロック信号CLK2、第3のクロック信号CLK3)を生成してデータ取出部350に出力する。第2のクロック信号CLK2は、第1のクロック信号CLK1より位相が所定値早いクロック信号であり、第3のクロック信号CLK3は、第1のクロック信号CLK1より位相が所定値遅いクロック信号である。
第1の遅延回路330は、遅延回路332と、位相シフト回路400を有する。遅延回路332は、入力バッファ302からのクロック信号CLKを遅延させて遅延クロック信号CLK0を得て位相シフト回路400に出力する。位相シフト回路400は、遅延クロック信号CLK0に対して位相シフトを行って上述した第1のクロック信号CLK1、第2のクロック信号CLK2、第3のクロック信号CLK3を生成する。
遅延回路332の遅延量、すなわち遅延クロック信号CLK0が入力バッファ302からのクロック信号CLKに対する遅延量は、CLK遅延調整回路380により調整可能である。また、CLK遅延調整回路380が遅延回路332に対する調整は、制御回路600からの制御信号ctr3により制御される。位相シフト回路400が生成する3つのクロック信号の位相は、システムからの制御信号ctr0と、制御回路600からの制御信号ctr1及び制御信号ctr2により制御される。
第2の遅延回路340は、入力バッファ304からのデータ信号DQを遅延させて遅延データ信号DQ0を得てデータ取出部350に出力する。
第2の遅延回路340の遅延量、すなわち遅延データ信号DQ0が入力バッファ304からのデータ信号DQに対する遅延量は、DQ遅延調整回路390により調整可能である。また、DQ遅延調整回路390が第2の遅延回路340に対する調整は、制御回路600からの制御信号ctr4により制御される。
制御信号ctr0、制御信号ctr1〜制御信号ctr4の詳細については後述する。
データ取出部350は、クロック信号に基づいてデータ信号からデータを取り出す取出部を3つ(第1の取出部352、第2の取出部354、第3の取出部356)備える。
第1の遅延回路330からの第1のクロック信号CLK1と第2の遅延回路340からの遅延データ信号DQ0は第1の取出部352に入力される。第1の取出部352は、第1のクロック信号CLK1に基づいて遅延データ信号DQ0からのデータの取出を行って第1のデータDAを得る。第1の取出部352は、第1のデータDAを外部に出力すると共に、判定回路500に出力する。
第1の遅延回路330からの第2のクロック信号CLK2と第2の遅延回路340からの遅延データ信号DQ0は第2の取出部354に入力される。第2の取出部354は、第2のクロック信号CLK2に基づいて遅延データ信号DQ0からのデータの取出しを行って第2のデータDBを得る。第2の取出部354は、第2のデータDBを判定回路500に出力する
第1の遅延回路330からの第3のクロック信号CLK3と第2の遅延回路340からの遅延データ信号DQ0は第3の取出部356に入力される。第3の取出部356は、第3のクロック信号CLK3に基づいて遅延データ信号DQ0からのデータの取出しを行って第3のデータDCを得る。第3の取出部356は、第3のデータDCを判定回路500に出力する。
判定回路500は、第1のデータDA、第2のデータDB、第3のデータDCを用いて比較を行い、比較結果を制御回路600に出力する。判定回路500から出力される比較結果、第1〜第3の比較結果の3種類があり、これらについては後述する。
制御回路600は、判定回路500からの比較結果に基づいて制御信号ctr1〜ctr4を生成して、第1の遅延回路330と第2の遅延回路340を制御する。
次いで、インタフェース回路300の各機能ブロックの構成を詳細に説明する。
図8は、第2の遅延回路340とDQ遅延調整回路390を示す。第2の遅延回路340は、直列に接続された複数の遅延素子(遅延素子311〜318)と、遅延素子311〜318の各段の出力が入力され、これらの出力のうちの1つを選択して遅延データ信号DQ0として出力するマルチプレクサ(以下MPXという)MPX320と、DQ遅延調整回路390からの制御信号をデコードして選択指示信号を得てMPX320に出力するデコーダ322を有する。遅延素子311には、入力バッファ304からのデータ信号DQが入力される。
選択指示信号は、遅延素子311〜318のどの段の出力を選択するかをMPX320に指示する信号であり、例えば遅延素子311〜318の各段の出力にそれぞれ対応する「0」または「1」からなる。「0」は、該段の出力を選択しないことを示し、「1」は該段の出力を選択することを示す。例えば、選択信号は、遅延素子314の出力に対応するデータのみが「1」であり、他の遅延素子の出力に対応するデータが「0」である場合に、MPX320は、遅延素子314の出力を選択して遅延データ信号DQ0として出力する。
すなわち、第2の遅延回路340の遅延量、すなわち第2の遅延回路340から出力される遅延データ信号DQ0の、入力バッファ304からのデータ信号DQに対する遅延量は、制御回路600からの制御信号ctr4に応じて調整可能である。
第1の遅延回路330における遅延回路332は、第2の遅延回路340と同じ構成を有し、ここで詳細な説明を省略する。遅延回路332の遅延量、すなわち遅延回路332から出力される遅延クロック信号CLK0の、入力バッファ302からのクロック信号CLKに対する遅延量は、CLK遅延調整回路380により、制御回路600からの制御信号ctr3に応じて調整可能である。
図9は、第1の遅延回路330における位相シフト回路400を示す。位相シフト回路400は、直列に接続された複数の遅延素子を有するディレイライン402と、出力制御部406を有する。
ディレイライン402には、遅延回路332からの遅延クロック信号CLK0が入力され、ディレイライン402の各遅延素子により順次遅延される。
選択回路404は、ディレイライン402の各段の遅延素子の出力が入力され、これらの出力から3つを選択して第1のクロック信号CLK1、第2のクロック信号CLK2、第3のクロック信号CLK3として出力する。
出力制御部406は、後述する初期設定時において、第1のクロック信号CLK1が遅延クロック信号CLK0に対する遅延量、第2のクロック信号CLK2が第1のクロック信号CLK1より位相が早い量、第3のクロック信号CLK3が第1のクロック信号CLK1より位相が遅い量を制御する。具体的には、制御信号ctr0に応じて第1のクロック信号CLK1を意図する位相へと制御するためにディレイライン402に遅延量を指示する制御信号P1を生成し、制御信号ctr1に応じて第2のクロック信号CLK2として選択すべき信号を指示する選択信号P2を生成し、制御信号ctr2に応じて第3のクロック信号CLK3として選択すべき信号を指示する選択信号P3を選択回路404に出力する。
選択回路404は、出力制御部406からの制御信号P1に応じて位相が制御された第一のクロック信号CLK1を出力すると共に、出力制御部406からの選択信号P2〜P3に従って、ディレイライン402の複数の遅延素子のうちの該当する2つの遅延素子の出力を選択して、第2のクロック信号CLK2、第3のクロック信号CLK3として出力する。第2のクロック信号CLK2は、第1のクロック信号CLK1より位相が所定値早く、第3のクロック信号CLK3は、第1のクロック信号CLK1より所定値遅い。
初期設定時において、データ信号DQとクロック信号CLKは同相でインタフェース回路300に入力され、第1の遅延回路330の遅延回路332と位相シフト回路400の出力(遅延クロック信号CLK0、第1のクロック信号CLK1、第2のクロック信号CLK2、第3のクロック信号CLK3)、第2の遅延回路340の出力(遅延データ信号DQ0)間の位相関係が下記3つを満たすように、第1の遅延回路330と第2の遅延回路340は調整される。
(1)第1のクロック信号CLK1と遅延データ信号DQ0が最適な位相関係を有するように、第1のクロック信号CLK1の立上りエッジと立下りエッジのいずれも、遅延データ信号DQ0の中心部に対応する。
すなわち、データ信号DQとクロック信号CLKが同相でインタフェース回路300に入力される場合に、遅延回路332の遅延量(遅延クロック信号CLK0のクロック信号CLKに対する遅延量)と、位相シフト回路400が第1のクロック信号CLK1を得るために遅延クロック信号CLK0を遅延させた量との和から、第2の遅延回路340の遅延量(遅延データ信号DQ0のデータ信号DQに対する遅延量)を引いた値は、クロック信号CLKの概ね1/4周期である。
(2)第2のクロック信号CLK2は第1のクロック信号CLK1より位相が早いものの、第2のクロック信号CLK2と第1のクロック信号CLK1間の位相差に該当する「所定値」は、第1のクロック信号CLK1と遅延データ信号DQ0が最適な位相関係を有する場合に、第2のクロック信号CLK2に基づいても遅延データ信号DQ0から、第1のクロック信号CLK1に基づいて遅延データ信号DQ0取出したデータと同じデータを取り出すことができる範囲内の値に、位相シフト回路400に対して設定されている。この所定値は、データ信号DQの単位データの有効幅に応じて異なり得るものであり、その具体的な設定手法については後述する。
(3)同様に、第3のクロック信号CLK3は第1のクロック信号CLK1より位相が遅いものの、第3のクロック信号CLK3と第1のクロック信号CLK1間の位相差に該当する「所定値」も、第1のクロック信号CLK1と遅延データ信号DQ0が最適な位相関係を有する場合に、第3のクロック信号CLK3に基づいても遅延データ信号DQ0から、第1のクロック信号CLK1に基づいて遅延データ信号DQ0から取出したデータと同じデータを取り出すことができる範囲内の値に、位相シフト回路400に対して設定されている。この所定値も、データ信号DQの有効幅に応じて異なり得るものであり、その具体的な設定手法については後述する。
データ取出部350の3つの取出部は、入力されたクロック信号の正相信号の立上りエッジでデータの取出しを行うフリップフロップ回路(正相FF回路という)と、入力されたクロック信号の逆相信号の立上りエッジでデータの取出しを行うフリップフロップ回路(逆相FF回路という)から構成される。すなわち、これらの取出部は、入力されたクロック信号の立上りエッジと立下りエッジのいずれにおいてもデータの取出しを行うものである。以下の説明において、入力されたクロック信号の立上りエッジと立下りエッジで取出したデータをそれぞれ「正相取出データ」、「逆相取出データ」という。
第1の取出部352は、第1のクロック信号CLK1に基づいて遅延データ信号DQ0からのデータの取出を行って第1のデータDA(正相取出データ、逆相取出データ)を得る。第1のデータDAは、判定回路500に出力されると共に、リードデータとして外部にも出力される。
第2の取出部354は、第2のクロック信号CLK2に基づいて遅延データ信号DQ0からのデータの取出しを行って第2のデータDB(正相取出データ、逆相取出データ)を得る。第2のデータDBは、を判定回路500に出力される。
第3の取出部356は、第3のクロック信号CLK3に基づいて遅延データ信号DQ0からのデータの取出しを行って第3のデータDC(正相取出データ、逆相取出データ)を得る。第3のデータDCは、判定回路500に出力される。
図10は、判定回路500を示す。判定回路500は、期待データレジスタ540と、3つの比較回路(比較回路512、522、比較回路532)と、各比較回路にそれぞれ接続され、該比較回路の出力の論理和を得る3つの論理和ゲート(論理和ゲート514、論理和ゲート524、論理和ゲート534)を備える。
比較回路512には、第2のデータDBと第1のデータDAが入力される。比較回路512は、第2のデータDBと第1のデータDAの正相取出データ同士で一致するか否かの比較、及び第2のデータDBと第1のデータDAの逆相取出データ同士で一致するか否かの比較を行い、それぞれの比較結果を論理和ゲート514に出力する。なお、「一致」と「不一致」の場合に出力されるデータがそれぞれ「0」と「1」である。
論理和ゲート514は、比較回路512からの2つの出力の論理和を得て出力する。以下、論理和ゲート514の出力を「第1の比較結果」という。この第1の比較結果は、制御回路600に出力される。
比較回路532には、第3のデータDCと第1のデータDAが入力される。比較回路532は、第3のデータDCと第1のデータDAの正相取出データ同士で一致するか否かの比較、第3のデータDCと第1のデータDAの逆相取出データ同士で一致するか否かの比較を行い、それぞれの比較結果を論理和ゲート534に出力する。「一致」と「不一致」の場合に出力されるデータがそれぞれ「0」と「1」である。
論理和ゲート534は、比較回路532からの2つの出力の論理和を得て出力する。以下、論理和ゲート534の出力を「第2の比較結果」という。この第2の比較結果も、制御回路600に出力される。
比較回路512、論理和ゲート514、比較回路532、論理和ゲート534は、システムの運用開始後も動作するが、比較回路522と論理和ゲート524は、初期設定時に動作するものである。初期設定時において、DDRメモリ290からテスト用のデータ信号DQとクロック信号CLKがインタフェース回路300に入力される。期待データレジスタ540には、上記テスト用のデータ信号DQから取り出すべきデータ(以下期待データという)を格納している
初期設定時に、比較回路522には、第1のデータDAと、期待データレジスタ540内の期待データが入力される。比較回路522は、第1のデータDAと期待データの正相取出データ同士で一致するか否かの比較、及び第1のデータDAと期待データの逆相取出データ同士で一致するか否かの比較を行い、それぞれの比較結果を論理和ゲート524に出力する。なお、「一致」と「不一致」の場合に出力されるデータがそれぞれ「0」と「1」である。
図11は、制御回路600を示す。制御回路600は、第1の初期位相設定部610と、遅延調整制御部620と、第2の初期位相設定部630と、位相設定制御部640と、制御信号選択部650を備える。
第2の初期位相設定部630と第1の初期位相設定部610は、初期設定時に動作する。
第1の初期位相設定部610は、初期設定時にCLK遅延調整回路380とDQ遅延調整回路390に送信する制御信号ctr3、制御信号ctr4を生成するためのものである。前述したように、初期設定時に、テスト用のデータ信号DQとクロック信号CLKが同相でインタフェース回路300に入力され、判定回路500において、第1の取出部352の出力(第1のデータDA)と期待データの比較がなされ、第3の比較結果は制御回路600に出力される。
第1の初期位相設定部610は、第3の比較結果が「0」になるまで、すなわち第1のデータDAと期待データの正相取出データ同士が一致であり、かつ逆相取出データ同士も一致であるようになるまで、遅延回路332と第2の遅延回路340の遅延量を制御する制御信号ctr3と制御信号ctr4を調整しながらCLK遅延調整回路380とDQ遅延調整回路390に送信する。その結果、第1のクロック信号CLK1と遅延データ信号DQ0が最適な位相関係を有することに調整される。すなわち、第1のクロック信号CLK1の立上りエッジと立下りエッジのいずれも、遅延データ信号DQ0の単位データの中心部に対応するように調整される。
なお、第1の初期位相設定部610は、位相設定制御部640の制御に従って上記調整を開始し、調整が終われば、初期設定の完了を示す信号を位相設定制御部640に返送すると共に、CLK遅延調整回路380とDQ遅延調整回路390に対して設定した遅延量を遅延調整制御部620に知らせる。
位相設定制御部640は、初期設定時に第1の初期位相設定部610に初期設定開始を指示する信号を送信し、第1の初期位相設定部610による初期設定の完了を示す信号を受信するまで、制御信号選択部650に、第1の初期位相設定部610からの制御信号(制御信号ctr3、制御信号ctr4)を選択して出力するように制御する。
第2の初期位相設定部630は、初期設定時において、第2のクロック信号CLK2の第1のクロック信号CLK1に対して位相が早い「所定値」と、第3のクロック信号CLK3の第1のクロック信号CLK1に対して位相が遅い「所定値」をそれぞれ設定するものである。
前述したように、第2のクロック信号CLK2の第1のクロック信号CLK1に対して位相が早い量は、第1のクロック信号CLK1と遅延データ信号DQ0が最適な位相関係を有する場合に、第2のクロック信号CLK2に基づいても遅延データ信号DQ0から、第1のクロック信号CLK1に基づいて遅延データ信号DQ0取出したデータと同じデータを取り出すことができる範囲内の値に設定されている。同様に、第3のクロック信号CLK3の第1のクロック信号CLK1に対して位相が遅い量も、第1のクロック信号CLK1と遅延データ信号DQ0が最適な位相関係を有する場合に、第3のクロック信号CLK3に基づいても遅延データ信号DQ0から、第1のクロック信号CLK1に基づいて遅延データ信号DQ0から取出したデータと同じデータを取り出すことができる範囲内の値に設定される。
本実施の形態において、第2の初期位相設定部630は、第1のクロック信号CLK1と第2のクロック信号CLK2間の位相差と、第1のクロック信号CLK1と第3のクロック信号CLK3の位相差は、上記条件を満たす値のうちの最も大きい値になるように、位相シフト回路400に対して出力する制御信号ctr1と制御信号ctr2を生成する。
図12は、第2の初期位相設定部630を示す。第2の初期位相設定部630は、カウンタ制御部632、カウンタ634、カウンタ制御部636、カウンタ638を有する。
カウンタ制御部632には、第1の比較結果、すなわち第1のクロック信号CLK1に基づいて遅延データ信号DQ0から取り出した第1のデータDAと、第2のクロック信号CLK2に基づいて遅延データ信号DQ0から取出した第2のデータDBとの比較結果が入力される。カウンタ制御部632は、第1の比較結果に応じてUP/DOWNカウンタであるカウンタ634をカウントアップ/カウントダウンさせ、カウンタ634のカウント値に応じた制御信号ctr1は位相シフト回路400に出力される。これにより、第1のクロック信号CLK1と第2のクロック信号CLK2間の位相差が調整される。カウンタ制御部632は、具体的には、第2のクロック信号CLK2の第1のクロック信号CLK1に対して位相が早い量が増えるように、第1の比較結果が「1」になるまで、カウンタ634にカウントアップさせる。また、第1の比較結果が「1」になると、カウンタ制御部632は、カウンタ634に1つカウントダウンさせて、第1のクロック信号CLK1と第2のクロック信号CLK2との位相差の調整を終了する。
カウンタ制御部636には、第2の比較結果、すなわち第1のクロック信号CLK1に基づいて遅延データ信号DQ0から取り出した第1のデータDAと、第3のクロック信号CLK3に基づいて遅延データ信号DQ0から取出した第3のデータDCとの比較結果が入力される。カウンタ制御部636は、第2の比較結果に応じてUP/DOWNカウンタであるカウンタ638をカウントアップ/カウントダウンさせ、カウンタ638のカウント値に応じた制御信号ctr2は位相シフト回路400に出力される。これにより、第1のクロック信号CLK1と第3のクロック信号CLK3間の位相差が調整される。カウンタ制御部636は、具体的には、第3のクロック信号CLK3の第1のクロック信号CLK1に対して位相が遅い量が増えるように、第2の比較結果が「1」になるまで、カウンタ638にカウントアップさせる。また、第2の比較結果が「1」になると、カウンタ制御部636は、カウンタ638に1つカウントダウンさせて、第1のクロック信号CLK1と第3のクロック信号CLK3との位相差の調整を終了する。
これにより、第1のクロック信号CLK1第3のクロック信号CLK3のエッジが遅延データ信号DQ0の単位データの有効期間の境界付近に対応するように調整される。
ジッタなどの影響により、データ信号DQの単位データの有効幅が変る場合がある。第2の初期位相設定部630は、システムの本格運用の開始前の初期設定時に上記調整を行うことによって、データ信号DQの単位データの有効幅に合わせて、第1のクロック信号CLK1と第2のクロック信号CLK2間の位相差、及び第1のクロック信号CLK1と第3のクロック信号CLK3間の位相差を最適な値に調整する。
第2の初期位相設定部630は、上記調整が完了すると、その旨を示す信号を位相設定制御部640に出力する。
位相設定制御部640は、第2の初期位相設定部630と第1の初期位相設定部610のいずれによる調整も完了すると、遅延調整制御部620からの制御信号(システム運用開始後の制御信号ctr3と制御信号ctr4)を選択するように制御する。これにて、システムの運用が開始される。
遅延調整制御部620は、システム運用開始後に、第1のクロック信号CLK1と遅延データ信号DQ0間の最適な位相関係が崩れないように遅延回路332と第2の遅延回路340の遅延量を調整するための制御信号ctr3と制御信号ctr4を生成するものであり、第1の比較結果と第2の比較結果が入力される。
具体的には、遅延調整制御部620は、第1の比較結果と第2の比較結果のいずれも「一致」すなわち「0」である場合に、遅延回路332と第2の遅延回路340を調整しないことを示す制御信号ctr3と制御信号ctr4を生成して制御信号選択部650を介してCLK遅延調整回路380とDQ遅延調整回路390に出力する。
一方、第1の比較結果が「不一致」を示す「1」であり、第2の比較結果が「一致」を示す「0」である場合に、データ信号DQの位相遅れが原因になるため、クロック信号CLKに対して遅延量が増えるように制御信号ctr3を生成して制御信号選択部650を介してCLK遅延調整回路380に出力する。また、第1の比較結果が「一致」を示す「0」であり、第2の比較結果が「不一致」を示す「1」である場合に、クロック信号CLKの位相遅れが原因になるため、データ信号DQに対する遅延量が増えるように制御信号ctr4を生成して制御信号選択部650を介してDQ遅延調整回路390に出力する。
図13は、本実施の形態において、初期設定完了直後の各データ信号とクロック信号、データ取出部350が取出した各データの例を示す。
図13に示すように、このとき、遅延回路332と第2の遅延回路340は、クロック信号CLKとデータ信号DQに対して同様の遅延量を与えるように調整されている。また、第1のクロック信号CLK1の遅延クロック信号CLK0に対する遅延量が概ね1/4周期になるように、すなわち第1のクロック信号CLK1のエッジが遅延データ信号DQ0の単位データの中心部に対応するように位相シフト回路400は調整されている。また、第1のクロック信号CLK1より位相が早い第2のクロック信号CLK2と、第1のクロック信号CLK1より位相が遅い第3のクロック信号CLK3のエッジが遅延データ信号DQ0の単位データの有効期間の境界付近に調整されている。
その結果、図13の下部に示すように、データ取出部350の3つの取出部から同じデータが出力される。すなわち、判定回路500による第1の比較結果と第2の比較結果のいずれも「一致」を示す。
図14は、システムの運用開始後、経時変動により、データ信号DQの位相が遅れた場合の各データ信号、データ取出部350が取出した各データの例を示す。
図14に示すように、このとき、第1のクロック信号CLK1に基づいて遅延データ信号DQ0から取出した第1のデータDAと、第3のクロック信号CLK3に基づいて遅延データ信号DQ0から取出した第3のデータDCの正相取出データ同士(D0/D0、D2/D2)が同一であり、逆相取出データ(D1/D1)が同じである。一方、第1のデータDAの1つ目の正相取出データ(D0)と、第2のクロック信号CLK2に基づいて遅延データ信号DQ0から取出した第2のデータDBの1つの正相取出データ(取出したデータが無いことを示すX)が異なる。また、第1のデータDAの1つ目の逆相取出データ(D1)と、第2のデータDBの1つ目の逆相取出データ(D0)とが異なり、第1のデータDAの2つ目の正相取出データ(D2)と、第2のデータDBの2つ目の逆相取出データ(D1)とも異なる。
従って、判定回路500からの2つの比較結果のうちの第1の比較結果が「不一致」を示す「1」が連続的に出力されるようになるため、遅延回路332は、クロック信号CLKに与える遅延量が増えるように調整される。その結果、第1の比較結果と第2の比較結果のいずれも「一致」になる。
図15は、システムの運用開始後、経時変動により、クロック信号CLKの位相が遅れた場合の各データ信号、データ取出部350が取出した各データの例を示す。
図15に示すように、このとき、第1のデータDAの1つ目の正相取出データ(D0)と、第2のデータDBの1つ目の正相取出データ(D0)は同一であり、その後、第1のデータDAと第2のデータDBの逆相取出データ同士(D1/D1)と、正相取出データ同士(D2/D2)のいずれも同一である。一方、第1のデータDAと第3のデータDCの正相取出データ同士(D0/D1、D2/D3)と、逆相取出データ同士(D1/D2)のいずれも異なる。
従って、判定回路500からの2つの比較結果のうちの第2の比較結果が「不一致」を示す「1」が連続的に出力されるようになるため、第2の遅延回路340は、データ信号DQに与える遅延量が増えるように調整される。その結果、第1の比較結果と第2の比較結果のいずれも「一致」になる。
図16は、本実施の形態のインタフェース回路300における処理の流れの一例を示すフローチャートである。図16に示すように、システムの電源がオンされると、DDRメモリ290とインタフェース回路300の初期化がなされる(S100、S102)。そして、DDRメモリ290にテスト用データが書き込まれ、判定回路500の期待データレジスタ540に上記テスト用データが期待データとして書き込まれる(S104)。
次にDDRメモリ290に書き込まれたテスト用データのリードが開始され、DDRメモリ290からデータ信号DQ(テスト用データ)とクロック信号CLKが同相でインタフェース回路300に入力される。それに伴って、第1のクロック信号CLK1のエッジが遅延データ信号DQ0の単位データの中央部に対応するための各遅延回路の遅延値の設定(第1の初期設定)がなされる(S106)。
第1の初期設定が完了すると、第2のクロック信号CLK2と第3のクロック信号CLK3のエッジが遅延データ信号DQ0の単位データの境界付近にするための位相シフト回路400の設定(第2の初期設定)がなされる(S200)。ステップS200の第2の初期設定の詳細については後に図17を参照して説明する。
ステップS200の第2の初期設定が完了すると、システムが起動され、通常のメモリアクセス(ここではメモリリード)が可能になる(S300)。
メモリリードの際に、データ取出部350の第1の取出部352から、第1のクロック信号CLK1に基づいて遅延データ信号DQ0から取出した第1のデータDAがリードとして順次外部に出力される(S302)。また、第2の取出部354により第2のクロック信号CLK2に基づいて遅延データ信号DQ0から取出した第2のデータDBと第1のデータDAの比較、第3のクロック信号CLK3に基づいて遅延データ信号DQ0から取出した第3のデータDCと第1のデータDAの比較がなされる(S304)。
第1のデータDA、第2のデータDB、第3のデータDCの3つとも同一である場合に(S304:Yes)、第1の遅延回路330の遅延回路332と、第2の遅延回路340に対する遅延量の調整がなされず、次の第1のデータDAの取出しと出力、及び次の第1のデータDA、次の第2のデータDB、次の第3のデータDCの比較が行わる(S302、S304〜)。
一方、第1のデータDAと第2のデータDBが不一致であり、第1のデータDAと第3のデータDCが一致である場合に(S304:No、S306:Yes)、データ信号DQの位相遅延が原因であるため、第1の遅延回路330における遅延回路332によるクロック信号CLKに与える遅延量が増えるように、遅延回路332が調整される(S342)。
また、第1のデータDAと第2のデータDBが一致であり、第1のデータDAと第3のデータDCが不一致である場合に(S304:No、S306:No)、クロック信号CLKの位相遅延が原因であるため、第2の遅延回路340によるデータ信号DQに与える遅延量が増えるように、第2の遅延回路340が調整される(S344)。
ステップS302からの処理は、メモリリードの間に繰り返される。
図17は、図16のステップS200(第2の初期設定)の流れの一例を示すフローチャートである。このとき、ステップS106の第1の初期設定により、第1のクロック信号CLK1と遅延データ信号DQ0が最適な位相関係を有するように調整されている。
第2の初期設定に際して、まず、第2のクロック信号CLK2を得るために遅延回路332からの遅延クロック信号CLK0に対して位相シフト回路400が与える遅延値(以下CLK2の遅延値という)と、第3のクロック信号CLK3を得るために遅延クロック信号CLK0に対して位相シフト回路400が与える遅延値(以下CLK3の遅延値)が初期値に設定される(S201)。
次に、テストデータのメモリリードがなされ、第1のデータDA、第2のデータDB、第3のデータDCの取出しと比較がなされる(S202)。
第1のデータDA、第2のデータDB、第3のデータDCの3つと同一である限り、位相シフト回路400の調整可能な限界まで、CLK2の遅延値を1段減らす調整(第2のクロック信号CLK2の第1のクロック信号CLK1に対して位相が早い量を増やす調整)と、CLK3の遅延値を1段増やす調整(第3のクロック信号CLK3の第1のクロック信号CLK1に対して位相が遅い量を増やす調整)と、ステップS202からの処理が繰り返される(S203:Yes、S204:No、S205、S202〜)。
位相シフト回路400の調整限界まで上記調整が行われても、第1のデータDA、第2のデータDB、第3のデータDCが同一である場合に、第2の初期設定が完了したとして、制御回路600から調整完了信号が出力され、システムが起動される(S203:Yes、S204:Yes、S230)。
一方、上記調整の過程中に、第1の比較結果(第1のデータDAと第2のデータDBの比較結果)と、第2の比較結果(第1のデータDAと第3のデータDCの比較結果)のいずれか一方が不一致になると(S203:No)、処理はステップS210に移行する。
第1のデータDAと第2のデータDBが不一致である場合(S210:Yes)、CLK2の遅延値を1段増やす調整がなされる(S211)。これにより、第2のクロック信号CLK2のエッジが、遅延データ信号DQ0の単位データの境界付近に対応するように調整される。
その後のステップ211〜S216までの処理は、CLK3の遅延値を調整する処理である。第3のクロック信号CLK3の遅延値の調整限界、または第3のデータDCと第1のデータDAが不一致になるまで、CLK3の遅延値を1段増やす調整、調整後にテストデータに対するメモリリードにより読み出した第1のデータDAと第3のデータDCの比較が繰り返される(S212:No、S213、S214、S215:Yes、S212〜)。CLK3の遅延値の調整限界になった場合、または第1のデータDAと第3のデータDCが不一致になった場合(S212:Yes、またはS215:No)、CLK3の遅延値を1段減らす調整がなされる(S216)。これにより、第3のクロック信号CLK3のエッジも、遅延データ信号DQ0の単位データの境界付近に対応するように調整される。そして、第2の初期設定が完了したとして、制御回路600から調整完了信号が出力され、システムが起動される(S230)。
ステップS210において、第1のデータDAと第2のデータDBが一致であり、第1のデータDAと第3のデータDCが不一致である場合(S210:No)、CLK3の遅延値を1段減らす調整がなされる(S220)。これにより、第3のクロック信号CLK3のエッジが、遅延データ信号DQ0の単位データの境界付近に対応するように調整される。
その後のステップ221〜S225までの処理は、CLK2の遅延値を調整する処理である。CLK2の遅延値の調整限界、または第2のデータDBと第1のデータDAが不一致になるまで、CLK2の遅延値を1段減らす調整、調整後にテストデータに対するメモリリードにより読み出した第1のデータDAと第2のデータDBの比較が繰り返される(S221:No、S222、S223、S224:Yes、S221〜)。CLK2の遅延値の調整限界になった場合、または第1のデータDAと第2のデータDBが不一致になった場合(S221:Yes、またはS224:No)、CLK2の遅延値を1段増やす調整がなされる(S225)。これにより、第2のクロック信号CLK2のエッジも、遅延データ信号DQ0の単位データの境界付近に対応するように調整される。そして、第2の初期設定が完了したとして、制御回路600から調整完了信号が出力され、システムが起動される(S230)。
本実施の形態のインタフェース回路300は、他の各実施の形態のインタフェース回路と同様に、通常のメモリアクセス動作中に、データを取り出すためのデータ信号とクロック信号の位相関係の崩れの有無を検出できるため、システムのパフォーマンスの低下を回避することができる。また、通常のメモリアクセス動作中に、上記検出の結果に応じて、データを取り出すためのデータ信号とクロック信号が常に最適な位相関係を有するように調整を行うことができる。
また、本実施の形態のインタフェース回路300において、第1の遅延回路330を遅延回路332と位相シフト回路400に分けるようにすることによって、システムの動作中に第1のクロック信号CLK1の位相の調整は、遅延回路332の調整のみで実現できるので、調整が簡単である。
以上、実施の形態をもとに本発明を説明した。実施の形態は例示であり、本発明の主旨から逸脱しない限り、上述した各実施の形態に対してさまざまな変更、増減、組合せを行ってもよい。これらの変更、増減、組合せがなされ変形例も本発明の範囲にあることは当業者に理解されるところである。
例えば、上述した各実施の形態は、メモリリードを例にしたものであるが、本発明にかかる技術は、メモリライトにも適用することができる。
また、上述した各実施の形態は、DDRメモリのインタフェースを例にしたものであるが、本発明にかかる技術は、SDRメモリなど他の同期式メモリのインタフェース回路にも適用することができる。
10 DDRメモリ 20 システムLSI
21 入力バッファ 22 ディレイヤ
23 ラッチ 24 インバータ
25 DDRデータ取出部 26 ディレイ調整部
100 インタフェース回路 110 第1の遅延回路
120 データ取出部 122 第1の取出部
124 第2の取出部 126 第3の取出部
130 出力回路 140 比較部
150 インタフェース回路 160 第1の遅延回路
200 インタフェース回路 210 遅延調整部
220 インタフェース回路 222 第1の遅延回路
224 第2の遅延回路 226 遅延調整部
250 インタフェース回路 260 遅延調整部
270 インタフェース回路 272 第1の遅延回路
274 第2の遅延回路 276 遅延調整部
290 DDRメモリ 300 インタフェース回路
302 入力バッファ 304 入力バッファ
311〜318 遅延素子 320 MPX
322 デコーダ 330 第1の遅延回路
332 遅延回路 340 第2の遅延回路
350 データ取出部 352 第1の取出部
354 第2の取出部 356 第3の取出部
380 CLK遅延調整回路 390 DQ遅延調整回路
400 位相シフト回路 402 ディレイライン
404 選択回路 406 出力制御部
500 判定回路 512 比較回路
514 論理和ゲート 522 比較回路
524 論理和ゲート 532 比較回路
534 論理和ゲート 540 期待データレジスタ
600 制御回路 610 第1の初期位相設定部
620 遅延調整制御部 630 第2の初期位相設定部
632 カウンタ制御部 634 カウンタ
636 カウンタ制御部 638 カウンタ
640 位相設定制御部 650 制御信号選択部

Claims (5)

  1. 同期式メモリのリードまたはライトのデータ信号とクロック信号が入力されるインタフェース回路において、
    前記データ信号とクロック信号のいずれか一方である対象信号を段階的に遅延させて、第1の遅延信号と、前記第1の遅延信号より位相が所定値早い第2の遅延信号と、前記第1の遅延信号より位相が所定値遅い第3の遅延信号とを生成する第1の遅延回路であって、
    前記データ信号とクロック信号が所定の位相関係を有するときに、
    前記対象信号が前記クロック信号である場合に、前記第1の遅延信号のエッジが前記データ信号の単位データの中央部に対応し、
    前記対象信号が前記データ信号である場合に、前記クロック信号のエッジが前記第1の遅延信号の単位データの中央部に対応するように遅延量が設定された前記第1の遅延回路と、
    前記データ信号とクロック信号のうちの前記対象信号と異なる他方と、前記第1〜第3の遅延信号のそれぞれとを用いてデータの取出しを行い、第1のデータと、第2のデータと、第3のデータとを得るデータ取出部と、
    前記第1のデータを外部に出力する出力部と、
    前記第1と第2のデータが一致するか否かの比較、及び前記第1と第3のデータが一致するか否かの比較を行って比較結果を得る比較部とを備えることを特徴とするインタフェース回路。
  2. 前記比較部が得た2つの前記比較結果のいずれも一致を示すように前記第1の遅延回路の遅延量を調整する遅延調整部をさらに備えることを特徴とする請求項1に記載のインタフェース回路。
  3. 前記データ信号とクロック信号のうちの前記対象信号と異なる他方を遅延させて前記データ取出部に供する第2の遅延回路をさらに備え、
    前記第1の遅延回路と前記第2の遅延回路は、
    前記データ信号とクロック信号が所定の位相関係を有するときに、
    前記対象信号が前記クロック信号である場合に、前記第1の遅延回路により得られた前記第1の遅延信号のエッジが、前記第2の遅延回路により遅延させられた前記データ信号の単位データの中央部に対応し、
    前記対象信号が前記データ信号である場合に、前記第2の遅延回路により遅延させられた前記クロック信号のエッジが、前記第1の遅延回路により得られた前記第1の遅延信号の単位データの中央部に対応するように遅延量が設定されており、
    前記データ取出部は、前記第2の遅延回路の出力と、前記第1〜第3の遅延信号のそれぞれとを用いてデータの取出しを行い、前記第1〜第3のデータを得るものであることを特徴とする請求項1に記載のインタフェース回路。
  4. 前記比較部が得た2つの前記比較結果のいずれも一致を示すように、前記第1の遅延回路と第2の遅延回路のいずれか一方または両方の遅延量を調整する遅延調整部をさらに備えることを特徴とする請求項3に記載のインタフェース回路。
  5. 第1の遅延信号と第2の遅延信号の位相の差である所定値と、第1の遅延信号と第3の遅延信号の位相の差である所定値をそれぞれ調整する初期位相設定部をさらに備えることを特徴とする請求項1〜4のいずれ1項に記載のインタフェース回路。
JP2010134301A 2010-06-11 2010-06-11 インタフェース回路 Pending JP2011258134A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010134301A JP2011258134A (ja) 2010-06-11 2010-06-11 インタフェース回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010134301A JP2011258134A (ja) 2010-06-11 2010-06-11 インタフェース回路

Publications (1)

Publication Number Publication Date
JP2011258134A true JP2011258134A (ja) 2011-12-22

Family

ID=45474213

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010134301A Pending JP2011258134A (ja) 2010-06-11 2010-06-11 インタフェース回路

Country Status (1)

Country Link
JP (1) JP2011258134A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014238776A (ja) * 2013-06-10 2014-12-18 キヤノン株式会社 記録再生装置及び制御方法
WO2017130983A1 (ja) * 2016-01-25 2017-08-03 アイシン・エィ・ダブリュ株式会社 メモリコントローラ
JP2017536639A (ja) * 2014-11-06 2017-12-07 ザイリンクス インコーポレイテッドXilinx Incorporated ソースシンクロナスインターフェースから受信する制御デバイスのキャリブレーション

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014238776A (ja) * 2013-06-10 2014-12-18 キヤノン株式会社 記録再生装置及び制御方法
JP2017536639A (ja) * 2014-11-06 2017-12-07 ザイリンクス インコーポレイテッドXilinx Incorporated ソースシンクロナスインターフェースから受信する制御デバイスのキャリブレーション
WO2017130983A1 (ja) * 2016-01-25 2017-08-03 アイシン・エィ・ダブリュ株式会社 メモリコントローラ
CN108431785A (zh) * 2016-01-25 2018-08-21 爱信艾达株式会社 存储器控制器
JPWO2017130983A1 (ja) * 2016-01-25 2018-09-06 アイシン・エィ・ダブリュ株式会社 メモリコントローラ
US10438637B2 (en) 2016-01-25 2019-10-08 Aisin A W Co., Ltd. Memory controller

Similar Documents

Publication Publication Date Title
US9054675B2 (en) Apparatuses and methods for adjusting a minimum forward path delay of a signal path
US8775761B2 (en) Semiconductor memory device and semiconductor memory system including the same
JP5013394B2 (ja) 半導体集積回路装置
US20140010025A1 (en) Apparatuses and methods for adjusting a path delay of a command path
JP4775141B2 (ja) 遅延固定ループ回路
US9601170B1 (en) Apparatuses and methods for adjusting a delay of a command signal path
KR20190032638A (ko) 커맨드 신호 경로의 지연을 조절하기 위한 장치 및 방법
KR101711263B1 (ko) 가변 지연 라인 유닛을 갖는 지연 라인 회로
US7915934B2 (en) Delay locked loop circuit and operational method thereof
US6504790B1 (en) Configurable DDR write-channel phase advance and delay capability
KR101989393B1 (ko) 반도체 장치의 도메인 크로싱 회로
JP5683086B2 (ja) 遅延固定ループ回路およびこれを利用した半導体メモリ装置
KR20090070125A (ko) 반도체 메모리 소자
US7852707B2 (en) Data output control circuit of a double data rate (DDR) synchronous semiconductor memory device responsive to a delay locked loop (DLL) clock
KR20070043646A (ko) 반도체 메모리 장치, 반도체 메모리 장치의 클록 신호 생성방법 및 장치
US7733129B2 (en) Method and circuit for generating memory clock signal
US20130318321A1 (en) Buffer control circuit of semiconductor memory apparatus
US20120106278A1 (en) Semiconductor memory device and method for operating the same
US8766686B2 (en) Semiconductor device and method for driving the same
US9030907B2 (en) Semiconductor device and semiconductor system with the same
KR101625635B1 (ko) 전류 소모를 줄일 수 있는 클럭 신호 발생 회로, 및 이를 포함하는 반도체 장치
JP5005928B2 (ja) インタフェース回路及びそのインタフェース回路を備えた記憶制御装置
US7848178B2 (en) Semiconductor memory device and method for operating the same
US8680904B1 (en) Semiconductor device including delay locked loop circuit and method
JP2011258134A (ja) インタフェース回路