JP6434161B2 - ソースシンクロナスインターフェースから受信する制御デバイスのキャリブレーション - Google Patents

ソースシンクロナスインターフェースから受信する制御デバイスのキャリブレーション Download PDF

Info

Publication number
JP6434161B2
JP6434161B2 JP2017543706A JP2017543706A JP6434161B2 JP 6434161 B2 JP6434161 B2 JP 6434161B2 JP 2017543706 A JP2017543706 A JP 2017543706A JP 2017543706 A JP2017543706 A JP 2017543706A JP 6434161 B2 JP6434161 B2 JP 6434161B2
Authority
JP
Japan
Prior art keywords
clock
data
delay
delay unit
path
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.)
Active
Application number
JP2017543706A
Other languages
English (en)
Other versions
JP2017536639A (ja
Inventor
テレンス ジェー. マギー,
テレンス ジェー. マギー,
シアオチエン チャン,
シアオチエン チャン,
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.)
Xilinx Inc
Original Assignee
Xilinx Inc
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 Xilinx Inc filed Critical Xilinx Inc
Publication of JP2017536639A publication Critical patent/JP2017536639A/ja
Application granted granted Critical
Publication of JP6434161B2 publication Critical patent/JP6434161B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/13Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals
    • H03K5/14Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals by the use of delay lines
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/005Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor comprising combined but independently operative RAM-ROM, RAM-PROM, RAM-EPROM cells

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Nonlinear Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Dram (AREA)

Description

本開示の例は、一般に、電子回路に関し、詳細には、ソースシンクロナスインターフェースから受信する制御デバイスのキャリブレーションに関する。
ダブルデータレート(DDR)SDRAMメモリなどのシンクロナスダイナミックランダムアクセスメモリ(SDRAM)は、その性能と集積度のために好評である。メモリチップ上の面積を削減するために、デバイスを制御する負担の多くが、メモリ制御デバイスにオフロードされて来た。これらのメモリ制御デバイスは、マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)デバイスなどに存在することができ、またはSDRAMメモリを制御する目的専用のデバイスに存在することができる。SDRAMメモリは、データバスと並行にソースクロックを供給するソースシンクロナスインターフェースを含む。
ソースシンクロナスインターフェースから受信する場合、データバス上のスキューおよびソースクロックとデータバスとの間のスキューが、堅牢なデータ取得に課題を提供する。このようなスキューは、ソースクロックによってデータバスをサンプリングするためのデータアイの実効サイズを減少させる可能性がある。スキューを補償する1つの技法は、制御デバイスの実施中にデータおよびクロックパスの遅延をマッチングさせようとすることを含む。しかしながら、このような技法は、設計にかかわらずデータおよびクロックパスの遅延のばらつきを引き起こす可能性があるチップ内ばらつき(OCV)に悩まされる。さらに、そのような技法は、特定の電圧温度(VT)ポイントに限定される。VTポイントはデバイス動作中に変化するため、データおよびクロックパスの遅延は、設計にかかわらず変化する。
ソースシンクロナスインターフェースから受信する制御デバイスのキャリブレーションのための技法について説明する。一例では、データバスおよびソースクロックを有するソースシンクロナスインターフェースから受信するための制御デバイスが提供される。制御デバイスは、データパスと、クロックパスと、マルチプレキシング回路と、キャリブレーションユニットとを含む。データパスは、サンプリング回路のデータ入力に結合されたデータ遅延ユニットを含む。クロックパスは、サンプリング回路のクロック入力に結合されたクロック遅延ユニットを含む。マルチプレキシング回路は、基準クロックまたはデータバスをデータ遅延ユニットの入力に選択的に結合し、基準クロックまたはソースクロックをクロック遅延ユニットの入力に選択的に結合するように動作可能である。キャリブレーションユニットは、サンプリング回路のデータ出力に結合される。キャリブレーションユニットは、サンプリング回路のデータ出力に基づいて、データ遅延ユニットおよびクロック遅延ユニットの遅延値を調整して、データパスとクロックパスとの間の相対遅延を設定および維持するように動作可能である。
任意選択で、キャリブレーションユニットは、マルチプレキシング回路を制御して、第1のモードで、基準クロックをデータ遅延ユニットとクロック遅延ユニットの両方の入力に結合させ、第2のモードで、データバスをデータ遅延ユニットの入力に結合させ、ソースクロックをクロック遅延ユニットの入力に結合させるように、動作可能である。
任意選択で、第1のモードの間、キャリブレーションユニットは、データ遅延ユニットおよびクロック遅延ユニットの遅延値を調整して、データパスおよびクロックパス上の信号をアラインメントし、クロック遅延ユニットの出力を90度シフトさせる。
任意選択で、第1のモードの間、キャリブレーションユニットは、データ遅延ユニットおよびクロック遅延ユニットの遅延値を調整して、データパスおよびクロックパス上の信号をアラインメントし、第2モードの間、キャリブレーションユニットは、データ遅延ユニットおよびクロック遅延ユニットの遅延値を調整して、ソースクロックをデータバスのデータアイの中央に置く。
任意選択で、データバスは複数のデータ信号を含んでもよく、データ遅延ユニットは、それぞれの複数のデータ信号に関連付けられた複数のデジタル遅延線を含む。
任意選択で、第1のモードの間、キャリブレーションユニットは、複数のデジタル遅延線のタップ値を調整して、複数のデータ信号をアラインメントする。
任意選択で、制御デバイスは、基準クロックを受信するように結合された入力を有するマスタ遅延ユニットと、マスタ遅延ユニットの出力に従って基準クロックをサンプリングするように結合されたフリップフロップとをさらに含むことができる。キャリブレーションユニットは、フリップフロップのデータ出力に結合されてもよく、キャリブレーションユニットは、マスタ遅延ユニットの出力と基準クロックとをアラインメントし、マスタ遅延ユニットの出力と基準クロックとの間のマスタ相対遅延を設定し、マスタ遅延ユニットの遅延値を調整してマスタ相対遅延を維持するように、動作可能であってもよい。
任意選択で、キャリブレーションユニットは、データ遅延ユニットおよびクロック遅延ユニットの遅延値を調整して、データ遅延ユニットおよびクロック遅延ユニットの遅延値に対するマスタ遅延ユニットの遅延値の比率を維持することによって、データパスとクロックパスとの間の相対遅延を維持するように動作可能であってもよい。
任意選択で、制御デバイスは、基準クロックを受信するように結合された入力と、フリップフロップのデータ入力に結合された出力とを有する固定遅延回路をさらに含むことができる。
任意選択で、ソースシンクロナスインターフェースは、シンクロナスダイナミックランダムアクセスメモリ(SDRAM)インターフェースを含み、制御デバイスが、SDRAMインターフェースを有するSDRAMシステムに結合された集積回路(IC)内に配置される。
別の例では、システムは、メモリ制御デバイスに結合されたシンクロナスダイナミックランダムアクセスメモリ(SDRAM)システムを備える。SDRAMシステムは、データバスおよびソースクロックを含む。メモリ制御デバイスは、サンプリング回路と、データ遅延ユニットと、クロック遅延ユニットと、マルチプレキシング回路と、キャリブレーションユニットとを含む。データ遅延ユニットは、サンプリング回路のデータ入力に結合される。クロック遅延ユニットは、サンプリング回路のクロック入力に結合される。マルチプレキシング回路は、基準クロックまたはデータバスをデータ遅延ユニットの入力に選択的に結合し、基準クロックまたはソースクロックをクロック遅延ユニットの入力に選択的に結合するように動作可能である。キャリブレーションユニットは、サンプリング回路のデータ出力に結合される。キャリブレーションユニットは、サンプリング回路のデータ出力に基づいて、データ遅延ユニットおよびクロック遅延ユニットの遅延値を調整して、データ遅延ユニットとクロック遅延ユニットの出力間の相対遅延を設定および維持するように動作可能である。
任意選択で、キャリブレーションユニットは、第1のモードにおいて基準クロックをデータ遅延ユニットとクロック遅延ユニットの両方の入力に結合するようにマルチプレキシング回路を制御し、第1のモードの間、データ遅延ユニットとクロック遅延ユニットの遅延値を調整して、データ遅延ユニットとクロック遅延ユニットの出力をアラインメントし、クロック遅延ユニットの出力を90度シフトさせるように、動作可能であってもよい。
任意選択で、キャリブレーションユニットは、第1のモードにおいて基準クロックをデータ遅延ユニットとクロック遅延ユニットの両方の入力に結合するようにマルチプレキシング回路を制御し、第1のモードの間、データ遅延ユニットとクロック遅延ユニットの遅延値を信号アラインメントのために調整するように、動作可能であってもよい。キャリブレーションユニットはまた、第2モードにおいて、データバスをデータ遅延ユニットの入力に結合し、ソースクロックをクロック遅延ユニットの入力に結合するように、マルチプレキシング回路を制御し、第2モードの間、データ遅延ユニット及びクロック遅延ユニットの遅延値を調整して、ソースクロックをデータバスのデータアイの中央に置くように、動作可能であってもよい。
任意選択で、データバスは複数のデータ信号を更に含んでもよく、データ遅延ユニットは、それぞれの複数のデータ信号に関連付けられた複数のデジタル遅延線を含む。第1のモードの間、キャリブレーションユニットは、複数のデータ信号をアラインメントするために、複数のデジタル遅延線のタップ値を調整するように動作可能であってもよい。
任意選択で、メモリ制御デバイスは、基準クロックを受信するように結合された入力を有するマスタ遅延ユニットと、マスタ遅延ユニットの出力に従って基準クロックをサンプリングするように結合されたフリップフロップとをさらに含んでよい。キャリブレーションユニットは、フリップフロップのデータ出力に結合されてもよく、キャリブレーションユニットは、マスタ遅延ユニットの出力と基準クロックとをアラインメントし、マスタ遅延ユニットの出力と基準クロックとの間のマスタ相対遅延を設定し、マスタ遅延ユニットの遅延値を調整して、マスタ相対遅延を維持し、データ遅延ユニットおよびクロック遅延ユニットの遅延値を調整して、データ遅延ユニットおよびクロック遅延ユニットの遅延値に対するマスタ遅延ユニットの遅延値の比率を維持することによって、データパスとクロックパスとの間の相対遅延を維持するように、動作可能であってもよい。
別の例では、データバスおよびソースクロックを有するソースシンクロナスインターフェースから受信する方法は、基準クロックをデータパスおよびクロックパスに結合することであって、データパスは、サンプリング回路のデータ入力に結合されたデータ遅延ユニットを含み、クロックパスは、サンプリング回路のクロック入力に結合されたクロック遅延ユニットを含む、結合することと、データパスとクロックパスとの間の相対遅延を設定するように、データ遅延ユニットおよびクロック遅延ユニットを制御することと、データバスをデータパスに結合し、ソースクロックをクロックパスに結合することと、データパスとクロックパスとの間の相対遅延を維持するように、データ遅延ユニットおよびクロック遅延ユニットを制御することと、を含む。
任意選択で、データパスとクロックパスとの間の相対遅延を設定するように、データ遅延ユニットおよびクロック遅延ユニットを制御することは、データ遅延ユニットおよびクロック遅延ユニットの遅延値を調整して、データパスおよびクロックパス上の信号をアラインメントし、クロック遅延ユニットの出力を90度シフトさせることを含んでよい。
任意選択で、データパスとクロックパスとの間の相対遅延を設定するように、データ遅延ユニットおよびクロック遅延ユニットを制御することは、データ遅延ユニットおよびクロック遅延ユニットの遅延値を調整して、データパスおよびクロックパス上の信号をアラインメントすることと、データパスにデータバスを結合し、クロックパスにソースクロックを結合することと、データ遅延ユニットおよびクロック遅延ユニットの遅延値を調整して、ソースクロックをデータバスのデータアイの中央に置くことと、を含んでもよい。
任意選択で、この方法は、基準クロックをマスタ遅延ユニットに結合することと、マスタ遅延ユニットの出力と基準クロックとをアラインメントすることと、マスタ遅延ユニットの出力と基準クロックとの間のマスタ相対遅延を設定するように、マスタ遅延ユニットを制御することと、マスタ相対遅延を維持するように、マスタ遅延ユニットの遅延値を調整することと、を更に含んでよい。データパスとクロックパスとの間の相対遅延を維持するように、データ遅延ユニット及びクロック遅延ユニットを制御することは、データ遅延ユニット及びクロック遅延ユニットの遅延値を調整して、データ遅延ユニットおよびクロック遅延ユニットの遅延値に対するマスタ遅延ユニットの遅延値の比率を維持すること、を含んでよい。
任意選択で、ソースシンクロナスインターフェースは、シンクロナスダイナミックランダムアクセスメモリ(SDRAM)インターフェースを含んでよく、データパスとクロックパスが、SDRAMインターフェースを有するSDRAMシステムに結合された集積回路(IC)内に配置される。
これらおよび他の態様は、以下の詳細な説明を参照して理解され得る。
上記に列挙した特徴を詳細に理解できるように、上記で簡単に要約した、より詳細な説明が、実施例を参照することによって得られ、そのいくつかを添付の図面に示す。しかしながら、添付の図面は典型的な実施例のみを示しているので、その範囲を限定するものと見なすべきではないことに留意されたい。
シンクロナスダイナミックランダムアクセスメモリ(SDRAM)システムに結合された集積回路(IC)を有するシステムの例を示すブロック図である。 メモリ制御デバイスの一例を示すブロック図である。 ソースシンクロナスデバイスのソースシンクロナスインターフェースから受信するために使用されるタイミング論理の一例を示すブロック図である。 ソースシンクロナスインターフェースから受信するように結合された制御デバイス内のデータパスおよびクロックパスに結合された信号の例を示す信号プロットである。 アラインメントおよびクロックセンタリングの後における、ソースシンクロナスインターフェースから受信するように結合された制御デバイス内のデータパスおよびクロックパス上の信号の一例を示す信号プロットである。 データバスとソースクロックを有するソースシンクロナスインターフェースから受信する方法の一例を示すフロー図である。 ソースシンクロナスインターフェースから受信するように結合された制御デバイス内のマスタ遅延ユニットを管理する方法の一例を示すフロー図である。
理解を容易にするため、可能な場合には、図に共通する同一の要素を示すのに、同一の参照番号を使用した。1つの例の要素は他の例に有益に組み込むことができると、考えられる。
ソースシンクロナスインターフェースから受信する制御デバイスのキャリブレーションのための技法について説明する。一例では、ソースシンクロナスインターフェースの制御デバイスは、データを正常に取得するために、パラレルデータバスのビットとそのソースシンクロナスクロックとの間の遅延スキューを除去する。制御デバイスは、システムの電圧、温度、またはその両方(VT)が変化するときに、デスキュー効果を維持する。制御デバイスは、サンプリング回路へのデータパスおよびクロックパスが遅延マッチングされるように、オンチッププロセス変動並びにデータパスおよびクロックパスに沿ったミスマッチの悪影響を除去する。制御デバイスは、VTが時間と共に変化するとき、クロックとデータとの間の相対遅延を維持する。本開示のこれらおよびさらなる態様が、以下で論じられる。
図1は、シンクロナスダイナミックランダムアクセスメモリ(SDRAM)システム106に結合された集積回路(IC)102を有するシステム100の一例を示すブロック図である。IC102およびSDRAMシステム106は、プリント回路基板(PCB)101または他のタイプの基板上に実装することができる。IC102は、メモリ制御デバイス104を含む。メモリ制御デバイス104は、バス109を介してSDRAMシステム106に結合される。バス109は、PCB101上のインターコネクトを使用して実装される。バス109は、メモリ制御デバイス104とSDRAMシステム106との間に制御インターフェース112およびソースシンクロナスインターフェース114を提供する。制御インターフェース112は、アドレス信号、コマンド信号、およびクロック信号などの制御信号をSDRAMシステム106に伝達する。ソースシンクロナスインターフェース114は、データバス116およびソースクロック118を含む。SDRAMシステム106の場合、データバス116はデータ(DQ)信号を伝達し、ソースクロック118は1つ以上のデータストローブ(DQS)信号を含む。バス109は、電圧供給信号などの他の信号を伝達することができる。IC102は、メモリ制御デバイス104専用のデバイスであってもよいし、マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、システム・オン・チップ(SoCなど)などの、他の機能を有するデバイスであってもよい。
SDRAMシステム106は、1つ以上のSDRAMデバイス110を含む。SDRAMデバイス110は、1つ以上のデュアルインラインメモリモジュール(DIMM)などの、PCB101に取り付けられた1つ以上のモジュール上に1つ以上のランクのメモリを提供することができる。あるいは、SDRAMデバイス110は、特定のモジュール構造なしでPCB101に実装することができる。例示的なSDRAMデバイス110は、DDR SDRAMデバイス(例えば、DDR2、DDR3、またはDDR4デバイス)を含む。SDRAMシステム106は、レジスタ、コントローラなど(図示せず)の、SDRAMデバイス110の動作をサポートする他の回路を含むことができる。
例えば、各SDRAMデバイス110は、8つのDQ信号と少なくとも1つのDQS信号(例えば、DQS信号とネゲートされたDQS信号)とを有するソースシンクロナスインターフェースを含むことができる。SDRAMシステム106内のランクは、合計72個のDQ信号と少なくとも9個のDQS信号とを有するソースシンクロナスインターフェースを提供するために9個のSDRAMデバイス110を含むことができる。SDRAMデバイス110は、他の数のDQおよびDQS信号とのソースシンクロナスインターフェースを有することができ、ランクは異なる数のSDRAMデバイスを有することができ、ソースシンクロナスインターフェース114は他の幅を有することができる。例えば、いくつかのSDRAMシステムは、144個のDQ信号の幅を有するデータバスを提供する。
図2は、メモリ制御デバイス104の一例を示すブロック図である。メモリ制御デバイス104は、アプリケーションインターフェース202、メモリコントローラ204、物理(PHY)ユニット210、及び入出力(IO)回路216を含む。アプリケーションインターフェース202は、他の回路(図示せず)からSDRAMシステム106に書き込まれるデータ(「書き込みデータ」)を受け取り、SDRAMシステム106から読み出されたデータ(「読み出しデータ」)を他の回路(図示せず)に供給する。アプリケーションインターフェース202は、書き込みデータをメモリコントローラ204に供給する。メモリコントローラ204は、SDRAMシステム106への及びSDRAMシステム106からのトランザクションを生成する。メモリコントローラ204は、ライトトランザクションを生成して、書き込みデータをSDRAMシステム106に記憶させ、リードトランザクションを生成して、SDRAMシステム106から読み出しデータを取得する。
IO回路216は、バス109上の信号を駆動し、バス109から信号を受信し、信号を整形する等の回路を含む。PHYユニット210は、メモリコントローラ204とIO回路216との間のインターフェースを提供する。PHYユニット210は、制御インターフェース112を通したIO回路216による送信のためのアドレス、コマンド、およびクロック信号を出力する。PHYユニット210は、SDRAMシステム106にデータを書き込むために、ソースシンクロナスインターフェース114を通してIO回路216が送信するためのDQおよびDQS信号を出力する。PHYユニット210は、SDRAMシステム106からデータを読み出すために、ソースシンクロナスインターフェース114を通してIO回路216によって受信されたDQおよびDQS信号を入力として受け取る。
PHYユニット210は、ライトパス論理212およびリードパス論理214を含む。ライトパス論理212は、SDRAMシステム106へのコマンド及び書き込みデータの送信のために、メモリコントローラ204からのライトトランザクションをフォーマットする。リードパス論理214は、SDRAMシステム106へのコマンドの送信およびSDRAMシステム106からのデータの受信のために、メモリコントローラ204からのリードトランザクションをフォーマットする。リードパス論理214は、ソースシンクロナスインターフェース114からの読み出しデータの取り込みを制御するタイミング論理208を含む。タイミング論理208は、SDRAMシステム106のソースシンクロナスインターフェース114から読み出しデータを受け取るときに、データバス116上のスキューおよびデータバス116とソースクロック118との間のスキューを補償する。
図3は、タイミング論理208の一例を示すブロック図である。タイミング論理208は、SDRAMシステム106のソースシンクロナスインターフェースに関して論じられているが、以下の説明から明らかなように、タイミング論理208は、任意のタイプのソースシンクロナスデバイス又はシステムのソースシンクロナスインターフェースから受信するために用いることができる。一例では、タイミング論理208は、データパス322、クロックパス324、マルチプレキシング回路315、およびキャリブレーションユニット302を含む。データパス322は、サンプリング回路319のデータ入力に結合されたデータ遅延ユニット310を含む。クロックパス324は、サンプリング回路319のクロック入力に結合されたクロック遅延ユニット312を含む。データパス322はNビット幅であり、Nは0より大きい整数であり、データバス116の幅に対応する。データ遅延ユニット310は、データパス322上の各信号に対して1つの、N個のデジタル遅延線(デジタル遅延線(単数又は複数)311)を含むことができる。クロック遅延ユニット312は、クロックパス324上の信号のためのデジタル遅延線313を含むことができる。データパス322はまた、マルチプレキシング回路315とデータ遅延ユニット310との間、およびデータ遅延ユニット310とサンプリング回路319との間で信号をルーティングするための導体(矢印によって概略的に示される)を含む。クロックパス324はまた、マルチプレキシング回路315とクロック遅延ユニット312との間、およびクロック遅延ユニット312とサンプリング回路319との間で信号をルーティングするための導体(矢印によって概略的に示される)を含む。
サンプリング回路319のデータ出力は、キャリブレーションユニットに結合される。サンプリング回路319のデータ出力は、データパス322の幅に対応するNビット幅である。サンプリング回路319は、データパス322上の各信号に対して1つの、N個のフリップフロップ(フリップフロップ(単数又は複数)320)を含むことができる。クロック遅延ユニット312の出力は、各フリップフロップ320のクロック入力に結合される。
マルチプレキシング回路315は、マルチプレクサ314およびマルチプレクサ316を含む。マルチプレクサ314は、ソースシンクロナスインターフェース114のデータバス116及びクロックソース304によって生成された基準クロックに結合された入力を含む。マルチプレクサ314の入力はNビット幅であり、一方の入力はデータバス116のN個の信号を受け取り、他方の入力は基準クロックに接続される。キャリブレーションユニット302は、マルチプレクサ314の制御入力に結合されて、データバス116または基準クロックのいずれかを、データパス116に結合されるように選択する。マルチプレクサ316は、ソースシンクロナスインターフェース114のソースクロック118および基準クロックに結合された入力を含む。キャリブレーションユニット302は、マルチプレクサ316の制御入力に結合されて、ソースクロック118または基準クロックのいずれかを、クロックパス324に結合されるように選択する。マルチプレキシング回路315は、IO回路216を介してデータバス116およびソースクロック118から信号を受け取ることができる。
一例では、タイミング論理208は、フリップフロップ318のクロックポートに結合されたマスタ遅延ユニット308も含む。マスタ遅延ユニット308は、デジタル遅延線309を含むことができる。マスタ遅延ユニット308は、基準クロックを受信するように結合された入力を含む。フリップフロップ318のデータ入力は、基準クロックを受信するように結合される。一例では、フリップフロップ318のデータ入力は、固定遅延を基準クロックに適用する固定遅延回路306の出力に結合することができる。フリップフロップ318のデータ出力は、キャリブレーションユニット302に結合される。
キャリブレーションユニット302は、マスタ遅延ユニット308、データ遅延ユニット310、およびクロック遅延ユニット312の制御入力に結合される。キャリブレーションユニット302は、サンプリング回路319及びフリップフロップ318のデータ出力に基づいて、マスタ遅延ユニット308、データ遅延ユニット310及びクロック遅延ユニット312の遅延値を設定する。例えば、キャリブレーションユニット302は、デジタル遅延線309、デジタル遅延線311、およびデジタル遅延線313のタップ値を設定することができる。キャリブレーションユニット302は、フリップフロップ318およびサンプリング回路319のデータ出力に応答して遅延値328を出力する1つ以上のステートマシン(ステートマシン(単数又は複数)326)を含むことができる。
動作中、キャリブレーションユニット302は、データトランザクション(例えば、SDRAMシステム106のリードトランザクション)の開始の前に、データパス322およびクロックパス324を動的にデスキューすることによって、電圧、温度、またはその両方(VTに対する変化と呼ぶ)における変化、およびチップ内ばらつき(OCV)の影響をキャリブレートするように、タイミング論理208を制御する。データパス322上の信号(単数又は複数)に適用される遅延は、データ遅延ユニット310によって適用される遅延とデータパス322の固有遅延との和である。同様に、クロックパス324上の信号に適用される遅延は、クロック遅延ユニット312によって適用される遅延とクロックパス324の固有遅延との和である。データパス322およびクロックパス324の固有遅延は、内部(例えば、オンチップ)スキューを引き起こす。PCB101上のデータバス116およびソースクロック118に適用される遅延は、外部スキュー(例えば、IC102の外部の要素によって引き起こされるスキュー)と呼ばれる。
データパス322およびクロックパス324の固有遅延は、メモリ制御デバイス104内のVTの変化に伴って変化し、したがって、内部スキューは、VTのそのような変化と共に変化する。対照的に、メモリ制御デバイス104内のVTの変化は、外部環境に実質的な影響を及ぼさず、したがって、外部スキューは、メモリ制御デバイス104内のVTの変化に対して一定または実質的に一定である。データパス322とクロックパス324が遅延マッチングしていない場合、データバスとソースクロックとの間の相対遅延は、時間と共に(例えば、VTが変化するにつれて)変化し得る。タイミング論理208は、データ遅延ユニット310およびクロック遅延ユニット312の特定の絶対遅延値をロックしようとすることによってスキューを補償するということはしない。データ遅延ユニット310およびクロック遅延ユニット312に対して特定の絶対遅延値をロックすることは、それらが設定された特定のVTポイントに対してのみ有効であり、VTポイントが変化すると内部スキューを補償しない。絶対遅延値をロックする代わりに、タイミング論理208は、データパス322とクロックパス324との間の相対遅延を設定し、データトランザクション中に相対遅延を維持するように動作することによって、スキューを補償する。
キャリブレーションユニット302は、一般に、3つのキャリブレーションステップを実行する。(1)データアイを最大化し、内部スキューを補償するために、データパス322およびクロックパス324上の信号をアラインメントすること。(2)ソースクロックをデータアイの中央に置くこと。(3)データトランザクション中にデータ遅延ユニット310およびクロック遅延ユニット312の遅延値を更新して、自動VTトラッキングを実行すること。キャリブレーションユニット302は、マルチプレキシング回路315を、2つのモードで動作するように、制御することができる。(1)マルチプレキシング回路315が基準クロックをデータパス322およびクロックパス324に結合するセルフキャリブレーションモード、(2)マルチプレキシング回路315がデータバス116をデータパス322に結合し、ソースクロック118をクロックパス324に結合するトランザクションモード。キャリブレーションプロセスが、外部スキューが最小化される(例えば、バス109のPCBトレースマッチングによって)ことを仮定して、最初に説明される。
第1のキャリブレーションステップ(アラインメント)において、キャリブレーションユニット302が、セルフキャリブレーションモードを起動する。キャリブレーションユニット302は、データ遅延ユニット310およびクロック遅延ユニット312の遅延値を調整して、データバス116およびソースクロック118上の信号をアラインメントする。データバス116が複数のデータ信号(例えば、N>1)を含む場合、キャリブレーションユニット302は、データバス116上の個々のデータ信号をアラインメントするために、データ遅延ユニット310の遅延値を調整する。ある特定の信号を別の信号とアラインメントするのに必要な遅延値は、「アラインメント遅延値」と呼ばれる。さらに、キャリブレーションユニット302は、マスタ遅延ユニット308の遅延値を調整して、マスタ遅延ユニット308の出力と基準クロック信号(例えば、固定遅延回路306によって出力される)とをアラインメントする。次に、キャリブレーションユニット302は、マスター遅延ユニット308の遅延値を調整して、基準クロック信号とマスター遅延ユニット308の出力との間の相対遅延(「マスタ相対遅延」と呼ばれる)を設定する。例えば、キャリブレーションユニット302は、マスタ遅延ユニット308の出力をT/2だけシフトすることができ、Tは基準クロックの周期である。
図4Aは、セルフキャリブレーションモードにおいてデータパス322及びクロックパス324に結合された信号の例を示す信号プロットである。この例では、データバス116は4つのデータ信号を含むので、データパス322には、データ0からデータ3と呼ばれる4つの信号パスが存在する。クロックパス324は、クロックと呼ばれる単一の信号パスを含む。アラインメントの前に、データパス322上の信号は、互いに対して遅延している。キャリブレーションユニット302は、信号の1つを基準として選択し、データ遅延ユニット310の遅延値を調整して、他の信号のアラインメント遅延値を決定することができる。一般に、最も遅いエッジを有する信号を基準として選択することができ、これは、データパス322上のデータ信号またはクロックパス324上のクロック信号であってよい。この例では、データ3上の信号が基準として選択され、対応するアラインメント遅延値A3はゼロである。データ0〜データ2上の信号は、データ3上の基準信号に対して遅延され、対応するアラインメント遅延値A0、A1、およびA2を有する。クロック上の信号は、データ3上の信号に対して遅延され、対応するアラインメント遅延値ADQSを有する。キャリブレーションユニット302は、データ遅延ユニット310及びクロック遅延ユニット312の遅延値を調整して、A、A、A、A及びADQSを決定する。
図4Bは、セルフキャリブレーションモードにおけるマスタデータ及びクロック信号の例を示す信号プロットである。マスタデータと呼ばれる信号が、フリップフロップ318のデータ入力に結合される。マスタクロックと呼ばれる信号が、マスタ遅延ユニット308によって出力され、フリップフロップ318のクロック入力に結合される。キャリブレーションユニット302が、マスタデータとマスタクロックとの間のアラインメント遅延値Aを決定する。固定遅延回路306は、ある初期の非ゼロ遅延がマスタデータとマスタクロックとの間にあるように構成することができる。上述したように、次に、キャリブレーションユニット302は、マスタ遅延ユニット308の出力を固定量だけシフトして、マスタ相対遅延(例えば、T/2だけシフト)を設定する。
図3に戻って、キャリブレーションユニット302は、遅延値の調整と、フリップフロップ318及びサンプリング回路319のデータ出力の測定を反復すること(単数回又は複数回)に基づいて、アラインメント遅延値A、A、A、A、ADQS、およびAを決定するために、ステートマシン(単数又は複数)326を使用することができる。第2のキャリブレーションステップ(クロックセンタリング)で、キャリブレーションユニット302は、セルフキャリブレーションモードを再び起動する(または維持する)ことができる。キャリブレーションユニット302は、クロック遅延ユニット312の遅延値を調整して、クロックパス324上の信号をデータアイの中央に置く。クロックパス324は、第1のキャリブレーションステップにおいてデータパス322とアラインメントされているので、クロック遅延ユニット312の遅延値を調整して、クロックパス324上の信号を90度(例えば、クロック周期Tの1/4)シフトさせることによって、クロックセンタリングが行われる。
図5は、アラインメントおよびクロックセンタリング後のデータパス322およびクロックパス324上の信号の一例を示す信号プロットである。データ0、データ1、データ2、およびデータ3の信号は、上述のようにアラインメントされる。クロックパス324上の信号は、シフト遅延ADQS_QTだけシフトされ、信号をデータアイの中央に置く(例えば、ADQS_QT=T/4、ここでTはクロック周期である)。従って、クロック遅延ユニット312の遅延値は、アラインメント遅延値ADQSとシフト遅延ADQS_QTとの和である。
図3に戻って、第2のキャリブレーションステップ(クロックセンタリング)の後、キャリブレーションユニット302は、データパス322とクロックパス324との間に相対遅延を設定した。相対遅延は、ある特定のVTポイントで内部スキューを補償する。セルフキャリブレーションの後、キャリブレーションユニット302は、トランザクションモードを起動することができ、リードトランザクション中にソースクロックがデータアイの中央に置かれる。第3のキャリブレーションステップ(VTトラッキング)で、キャリブレーションユニット302は、データ遅延ユニット310およびクロック遅延ユニット312の遅延値を調整することによって、データパス322とクロックパス324との間の相対遅延を維持するように動作する。VTトラッキングの間、キャリブレーションユニット302は、VTが変化するときに、遅延アラインメント中に設定されたマスタ相対遅延を維持するように、マスタ遅延ユニット308の遅延値を調整する。キャリブレーションユニット302は、マスタ遅延ユニット308の遅延値と、データ遅延ユニット310及びクロック遅延ユニット312の遅延値との比率(「ギア比」と呼ばれる)を維持する。キャリブレーションユニット302は、データ遅延ユニット310およびクロック遅延ユニット312の絶対遅延値を変更してギア比を維持し、その結果、データパス322とクロックパス324との間の相対遅延を維持し、ソースクロックをVTの変化にわたってデータアイの中央に置き続ける。
外部スキューが最小化される場合、セルフキャリブレーションモードを使用して、キャリブレーションプロセスのアラインメントおよびクロックセンタリングステップを実行することができる。外部キャリブレーションプロセスは必要ではない(例えば、SDRAMシステム106とのキャリブレーショントランザクションを伴う外部トレーニングプロセスは必要ない)。外部スキューが最小化されない場合、キャリブレーションプロセスのアラインメントステップにおいて実行されるアラインメントは、外部スキューの結果として、データバス116とソースクロック118のアラインメントをもたらさない。このように、セルフキャリブレーションモードにおけるクロックセンタリングは、ソースクロック118をデータアイの中央に置くことにはならない。したがって、いくつかの例では、キャリブレーションユニット302は、セルフキャリブレーションアラインメント後に外部キャリブレーションを実行することができる。キャリブレーションユニット302は、PHYユニット210からの外部キャリブレーション制御信号に応答して、外部キャリブレーションを起動することができる。外部キャリブレーションの場合、キャリブレーションユニット302は、トランザクションモードを起動して、データバス116をデータパス322に結合し、ソースクロック118をクロックパス324に結合する。PHYユニット210は、SDRAMシステム106との1つ以上のキャリブレーショントランザクションを開始し、キャリブレーションユニット302は、データ遅延ユニット310およびクロック遅延ユニット312の遅延値を調整して、ソースクロックをデータアイの中央に置く。新しい遅延値は、ある特定のVTポイントでの外部スキューと内部スキューの両方を考慮する。次いで、キャリブレーションユニット302は、内部スキューの対応する変化を補償するために、上述のように、遅延値を調整し、ギア比を維持するために、リードトランザクション中にVTトラッキングを実行することができる。上述したように、外部スキューは、メモリ制御デバイス104内のVT変化にわたって一定またはほぼ一定である。
図6は、データバスとソースクロックを有するソースシンクロナスインターフェースから受信する方法600の一例を示すフロー図である。方法600はステップ602で始まり、キャリブレーションユニット302が、セルフキャリブレーションモードのために基準クロックをデータパスおよびクロックパスに結合するように動作する。ステップ604において、キャリブレーションユニット302は、データ及びクロック遅延ユニット310,312を制御して、データパス322とクロックパス324との間の相対遅延を設定する。一例では、ステップ604はステップ610で開始し、キャリブレーションユニット302が、信号アラインメントのためにデータ遅延ユニット310およびクロック遅延ユニット312の遅延値を調整する。ステップ612において、キャリブレーションユニット302は、外部キャリブレーションが実行されるべきかどうかを決定する。例えば、キャリブレーションユニット302は、PHYユニット210から外部キャリブレーションを実行する命令を受け取ることができる。外部キャリブレーションを実行しない場合、ステップ604はステップ614に進み、キャリブレーションユニット302は、クロック遅延ユニット312の出力を90度シフトする。外部キャリブレーションが実行される場合、ステップ604はステップ616に進み、キャリブレーションユニット302が、データバスをデータパス322に結合し、ソースクロックをクロックパス324に結合するように動作する。ステップ618において、キャリブレーションユニット302は、ソースクロックをデータアイの中央に置くために、データ遅延ユニット310およびクロック遅延ユニット312の遅延値を調整する。
ステップ606において、キャリブレーションユニット302は、トランザクションモードのために、データバスをデータパス322に結合し、ソースクロックをクロックパス324に結合するように、動作する。いくつかの例では、データバスおよびソースクロックが、それぞれデータパス322およびクロックパス324に既に結合されている場合には、ステップ606を省略することができる。ステップ608において、キャリブレーションユニット302は、データおよびクロック遅延ユニット310,312を制御して、相対遅延を維持する。一例では、ステップ608はステップ620を含み、キャリブレーションユニット302は、データおよびクロック遅延ユニット310,312の遅延値を調整して、マスタ遅延ユニット308の遅延値に対してギア比を維持する。
図7は、マスタ遅延ユニット308を管理する方法700の一例を示すフロー図である。方法700はステップ702から始まり、基準クロックが、マスタ遅延ユニット308に結合される。例えば、図3に示すように、マスタ遅延ユニット308の入力が、クロックソース304の出力に結合される。ステップ703において、キャリブレーションユニット302は、信号アラインメントのためにマスタ遅延ユニットの遅延値を調整する。ステップ704において、キャリブレーションユニット302は、基準クロックとマスタ遅延ユニットの出力との間のマスタ相対遅延を設定する。キャリブレーションユニット302は、セルフキャリブレーション中にステップ704を実行することができる。ステップ706において、キャリブレーションユニット302は、マスタ相対遅延を維持する。キャリブレーションユニット302は、マスタ遅延ユニット308の遅延値を調整してマスタ相対遅延を維持することによって、トランザクション中にステップ706を実行することができる。
上記は特定の例を対象とするが、その基本的な範囲から逸脱することなく、他の及びさらなる例を考え出すこともでき、その範囲は、以下の特許請求の範囲によって決定される。

Claims (15)

  1. データバス及びソースクロックを有するソースシンクロナスインターフェースから受信するための制御デバイスであって、
    サンプリング回路のデータ入力に結合されたデータ遅延ユニットを含むデータパスと、
    前記サンプリング回路のクロック入力に結合されたクロック遅延ユニットを含むクロックパスと、
    基準クロック又は前記データバスを前記データ遅延ユニットの入力に選択的に結合し、前記基準クロック又は前記ソースクロックを前記クロック遅延ユニットの入力に選択的に結合するように動作可能なマルチプレキシング回路と、
    前記サンプリング回路のデータ出力に結合され、前記サンプリング回路の前記データ出力に基づいて前記データ遅延ユニット及び前記クロック遅延ユニットの遅延値を調整して、前記データパスと前記クロックパスとの間の相対遅延を設定及び維持するように動作可能なキャリブレーションユニットと、を備える制御デバイス。
  2. 前記キャリブレーションユニットが、前記マルチプレキシング回路を制御して、第1のモードで、前記基準クロックを前記データ遅延ユニットと前記クロック遅延ユニットの両方の入力に結合させ、第2のモードで、前記データバスを前記データ遅延ユニットの入力に結合させ、前記ソースクロックを前記クロック遅延ユニットの入力に結合させるように、動作可能である、請求項1に記載の制御デバイス。
  3. 前記第1のモードの間、前記キャリブレーションユニットが、前記データ遅延ユニット及び前記クロック遅延ユニットの遅延値を調整して、前記データパス及び前記クロックパス上の信号をアラインメントし、前記クロック遅延ユニットの出力を90度シフトさせる、請求項2に記載の制御デバイス。
  4. 前記第1のモードの間、前記キャリブレーションユニットが、前記データ遅延ユニット及び前記クロック遅延ユニットの遅延値を調整して、前記データパス及び前記クロックパス上の信号をアラインメントし、前記第2のモードの間、前記キャリブレーションユニットが、前記データ遅延ユニット及び前記クロック遅延ユニットの遅延値を調整して、前記ソースクロックを前記データバスのデータアイの中央に置く、請求項2又は3に記載の制御デバイス。
  5. 前記データバスが、複数のデータ信号を含み、前記データ遅延ユニットが、前記複数のデータ信号のそれぞれに関連付けられた複数のデジタル遅延線を含む、請求項2から4のいずれか一項に記載の制御デバイス。
  6. 前記第1のモードの間、前記キャリブレーションユニットが、前記複数のデジタル遅延線のタップ値を調整して、前記複数のデータ信号をアラインメントする、請求項5に記載の制御デバイス。
  7. 前記基準クロックを受信するように結合された入力を有するマスタ遅延ユニットと、
    前記マスタ遅延ユニットの出力に従って前記基準クロックをサンプリングするように結合されたフリップフロップと、を更に備え、
    前記キャリブレーションユニットが、前記フリップフロップのデータ出力に結合され、前記キャリブレーションユニットが、前記マスタ遅延ユニットの出力と前記基準クロックとをアラインメントし、前記マスタ遅延ユニットの出力と前記基準クロックとの間のマスタ相対遅延を設定し、前記マスタ遅延ユニットの遅延値を調整して前記マスタ相対遅延を維持するように、動作可能である、請求項1から6のいずれか一項に記載の制御デバイス。
  8. 前記キャリブレーションユニットが、前記データ遅延ユニット及び前記クロック遅延ユニットの遅延値を調整して、前記データ遅延ユニット及び前記クロック遅延ユニットの遅延値に対する前記マスタ遅延ユニットの遅延値の比率を維持することによって、前記データパスと前記クロックパスとの間の相対遅延を維持するように動作可能である、請求項7に記載の制御デバイス。
  9. 前記基準クロックを受信するように結合された入力と、前記フリップフロップのデータ入力に結合された出力とを有する固定遅延回路を更に含む、請求項7又は8に記載の制御デバイス。
  10. 前記ソースシンクロナスインターフェースが、シンクロナスダイナミックランダムアクセスメモリ(SDRAM)インターフェースを含み、前記制御デバイスが、前記SDRAMインターフェースを有するSDRAMシステムに結合された集積回路(IC)内に配置される、請求項1から9のいずれか一項に記載の制御デバイス。
  11. データバス及びソースクロックを有するソースシンクロナスインターフェースから受信する方法であって、
    前記データバスの代わりに基準クロックをデータパスのデータ遅延ユニットの入力に結合することであって、前記データ遅延ユニットがサンプリング回路のデータ入力に結合されている、結合することと、
    前記ソースクロックの代わりに前記基準クロックをクロックパスのクロック遅延ユニットの入力に結合することであって、前記クロック遅延ユニットが前記サンプリング回路のクロック入力に結合されている、結合することと、
    前記データ遅延ユニット及び前記クロック遅延ユニットを制御して、前記データパスと前記クロックパスとの間の相対遅延を設定することと、
    前記基準クロックの代わりに前記データバスを前記データパスの前記データ遅延ユニットに結合し、前記基準クロックの代わりに前記ソースクロックを前記クロックパスの前記クロック遅延ユニットに結合することと、
    前記サンプリング回路のデータ出力に基づいて前記データ遅延ユニット及び前記クロック遅延ユニットを制御して、前記データパスと前記クロックパスとの間の前記相対遅延を維持することと、を含む方法。
  12. 前記データ遅延ユニット及び前記クロック遅延ユニットを制御して、前記データパスと前記クロックパスとの間の相対遅延を設定することが、
    前記データ遅延ユニット及び前記クロック遅延ユニットの遅延値を調整して、
    前記データパス及び前記クロックパス上の信号をアラインメントし、
    前記クロック遅延ユニットの出力を90度シフトさせることを含む、請求項11に記載の方法。
  13. 前記データ遅延ユニット及び前記クロック遅延ユニットを制御して、前記データパスと前記クロックパスとの間の相対遅延を設定することが、
    前記データ遅延ユニット及び前記クロック遅延ユニットの遅延値を調整して、前記データパス及び前記クロックパス上の信号をアラインメントすることと、
    前記データバスを前記データパスに結合し、前記ソースクロックを前記クロックパスに結合することと、
    前記データ遅延ユニット及び前記クロック遅延ユニットの遅延値を調整して、前記ソースクロックを前記データバスのデータアイの中央に置くこととを含む、請求項11又は12に記載の方法。
  14. 前記基準クロックをマスタ遅延ユニットに結合することと、
    前記マスタ遅延ユニットの出力と前記基準クロックとをアラインメントすることと、
    前記マスター遅延ユニットを制御して、前記マスタ遅延ユニットの出力と前記基準クロックとの間のマスタ相対遅延を設定することと、
    前記マスタ遅延ユニットの遅延値を調整して、前記マスタ相対遅延を維持することと、を更に含み、
    前記データ遅延ユニット及び前記クロック遅延ユニットを制御して、前記データパスと前記クロックパスとの間の前記相対遅延を維持することが、
    前記データ遅延ユニット及び前記クロック遅延ユニットの遅延値を調整して、前記データ遅延ユニット及び前記クロック遅延ユニットの遅延値に対する前記マスタ遅延ユニットの遅延値の比率を維持することを含む、請求項11から13のいずれか一項に記載の方法。
  15. 前記ソースシンクロナスインターフェースが、シンクロナスダイナミックランダムアクセスメモリ(SDRAM)インターフェースを含み、前記データパス及び前記クロックパスが、前記SDRAMインターフェースを有するSDRAMシステムに結合された集積回路(IC)内に配置される、請求項11から14のいずれか一項に記載の方法。
JP2017543706A 2014-11-06 2015-06-23 ソースシンクロナスインターフェースから受信する制御デバイスのキャリブレーション Active JP6434161B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/534,487 2014-11-06
US14/534,487 US9355696B1 (en) 2014-11-06 2014-11-06 Calibration in a control device receiving from a source synchronous interface
PCT/US2015/037181 WO2016073038A1 (en) 2014-11-06 2015-06-23 Calibration in a control device receiving from a source synchronous interface

Publications (2)

Publication Number Publication Date
JP2017536639A JP2017536639A (ja) 2017-12-07
JP6434161B2 true JP6434161B2 (ja) 2018-12-05

Family

ID=53541921

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017543706A Active JP6434161B2 (ja) 2014-11-06 2015-06-23 ソースシンクロナスインターフェースから受信する制御デバイスのキャリブレーション

Country Status (6)

Country Link
US (1) US9355696B1 (ja)
EP (1) EP3215950B1 (ja)
JP (1) JP6434161B2 (ja)
KR (1) KR102384880B1 (ja)
CN (1) CN107077449B (ja)
WO (1) WO2016073038A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9864713B2 (en) * 2014-12-05 2018-01-09 Marvell Israel (M.I.S.L.) Ltd. Optimal sampling of data-bus signals using configurable individual time delays
US10009197B1 (en) 2016-10-10 2018-06-26 Xilinx, Inc. Method and apparatus for intersymbol interference compensation
US10103718B1 (en) * 2017-04-05 2018-10-16 Xilinx, Inc. Recalibration of source synchronous systems
US11003203B2 (en) 2018-07-23 2021-05-11 Xilinx, Inc. Circuits for and methods of calibrating a circuit in an integrated circuit device
CN110956990B (zh) * 2018-09-26 2022-03-01 展讯通信(上海)有限公司 Sram读取延时控制电路及sram
US11079946B2 (en) * 2018-10-26 2021-08-03 Micron Technology, Inc. Write training in memory devices
CN109358819B (zh) * 2018-11-28 2024-02-20 四川九洲电器集团有限责任公司 一种基于Iodelay固件的AD采样自校准系统和方法
CN110347620A (zh) * 2019-05-29 2019-10-18 深圳市紫光同创电子有限公司 一种fpga电路和系统
CN111157878A (zh) * 2019-12-31 2020-05-15 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) 焊点测试结构及其测试方法
CN114094996B (zh) * 2021-11-09 2024-07-23 成都海光微电子技术有限公司 一种校准电路、校准方法、接口和相关设备
CN117555389B (zh) * 2023-12-01 2024-07-02 灿芯半导体(苏州)有限公司 高速源同步主机接口采样的方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5291187A (en) * 1991-05-06 1994-03-01 Compaq Computer Corporation High-speed video display system
US6646953B1 (en) 2000-07-06 2003-11-11 Rambus Inc. Single-clock, strobeless signaling system
US6525565B2 (en) * 2001-01-12 2003-02-25 Xilinx, Inc. Double data rate flip-flop
JP4450586B2 (ja) 2003-09-03 2010-04-14 株式会社ルネサステクノロジ 半導体集積回路
US7675317B2 (en) 2007-09-14 2010-03-09 Altera Corporation Integrated circuits with adjustable body bias and power supply circuitry
US7795935B2 (en) 2007-09-29 2010-09-14 Intel Corporation Bias signal delivery
US7973594B2 (en) 2009-02-05 2011-07-05 Indian Institute Of Science Power monitoring for optimizing operation of a circuit
US8427194B2 (en) * 2010-05-24 2013-04-23 Alexander Roger Deas Logic system with resistance to side-channel attack by exhibiting a closed clock-data eye diagram
JP2011258134A (ja) * 2010-06-11 2011-12-22 Renesas Electronics Corp インタフェース回路
US8736338B2 (en) * 2012-04-11 2014-05-27 Freescale Semiconductor, Inc. High precision single edge capture and delay measurement circuit
US8941430B2 (en) 2012-09-12 2015-01-27 Nvidia Corporation Timing calibration for on-chip interconnect
KR101970612B1 (ko) * 2013-03-15 2019-08-13 퀄컴 인코포레이티드 저 전력 아키텍처들
CN104135256B (zh) 2014-07-29 2017-02-15 东南大学 一种带自校准功能的延时采样电路

Also Published As

Publication number Publication date
JP2017536639A (ja) 2017-12-07
US20160133305A1 (en) 2016-05-12
US9355696B1 (en) 2016-05-31
KR102384880B1 (ko) 2022-04-07
EP3215950A1 (en) 2017-09-13
KR20170083046A (ko) 2017-07-17
CN107077449B (zh) 2019-03-15
WO2016073038A1 (en) 2016-05-12
CN107077449A (zh) 2017-08-18
EP3215950B1 (en) 2019-09-18

Similar Documents

Publication Publication Date Title
JP6434161B2 (ja) ソースシンクロナスインターフェースから受信する制御デバイスのキャリブレーション
US20230236970A1 (en) Memory module with local synchronization and method of operation
US7590008B1 (en) PVT compensated auto-calibration scheme for DDR3
JP5897093B2 (ja) メモリシステムの書き込みタイミングを較正する方法および装置
US8352696B2 (en) Integrated circuit with bi-modal data strobe
US9507738B2 (en) Method and system for synchronizing address and control signals in threaded memory modules
US9330749B1 (en) Dynamic selection of output delay in a memory control device
US10699757B2 (en) DQS-offset and read-RTT-disable edge control
US20190121577A1 (en) On-die termination architecture
US10892032B1 (en) Write and read common leveling for 4-bit wide DRAMS
US9058898B1 (en) Apparatus for reducing read latency by adjusting clock and read control signals timings to a memory device
US8009485B2 (en) Semiconductor memory device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180625

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20180625

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20180702

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181010

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181023

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181107

R150 Certificate of patent or registration of utility model

Ref document number: 6434161

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250