JP4416580B2 - 遅延制御装置 - Google Patents

遅延制御装置 Download PDF

Info

Publication number
JP4416580B2
JP4416580B2 JP2004189213A JP2004189213A JP4416580B2 JP 4416580 B2 JP4416580 B2 JP 4416580B2 JP 2004189213 A JP2004189213 A JP 2004189213A JP 2004189213 A JP2004189213 A JP 2004189213A JP 4416580 B2 JP4416580 B2 JP 4416580B2
Authority
JP
Japan
Prior art keywords
delay
value
data
delay element
control device
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.)
Expired - Fee Related
Application number
JP2004189213A
Other languages
English (en)
Other versions
JP2006013990A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2004189213A priority Critical patent/JP4416580B2/ja
Priority to US11/167,627 priority patent/US7161854B2/en
Publication of JP2006013990A publication Critical patent/JP2006013990A/ja
Application granted granted Critical
Publication of JP4416580B2 publication Critical patent/JP4416580B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • H03L7/06Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
    • H03L7/08Details of the phase-locked loop
    • H03L7/081Details of the phase-locked loop provided with an additional controlled phase shifter
    • H03L7/0812Details of the phase-locked loop provided with an additional controlled phase shifter and where no voltage or current controlled oscillator is used
    • H03L7/0814Details of the phase-locked loop provided with an additional controlled phase shifter and where no voltage or current controlled oscillator is used the phase shifting device being digitally controlled
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1072Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers for memories with random access ports synchronised on clock signal pulse trains, e.g. synchronous memories, self timed memories
    • 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • H03L7/06Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
    • H03L7/07Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop using several loops, e.g. for redundant clock signal generation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • H03L7/06Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
    • H03L7/08Details of the phase-locked loop
    • H03L7/0805Details of the phase-locked loop the loop being adapted to provide an additional control signal for use outside the loop

Landscapes

  • Pulse Circuits (AREA)
  • Logic Circuits (AREA)
  • Dram (AREA)

Description

本発明は、遅延制御装置に関し、詳細には、DLL(ディレイ・ロックド・ループ)を用いてデータをクロックまたはストローブ信号に同期させて取り込む際のデータとクロックまたはストローブ信号の同期を簡単かつ適切にとる遅延制御装置に関する。
従来からデバイス間のデータインターフェースの手法としては、デバイス間で位相制御された単一のクロックを用い当該クロックに同期してデータを送受信する手法と、データを送信するデバイスがストローブ信号とデータを出力し当該データを受信するデバイスが受け取ったストローブ信号とデータを用いて内部に取り込む手法とがある。
後者の手法の例としては、ハードディスクにおけるウルトラDMAあるいはDDR(ダブルデータレート:Double Data Rate)―SDRAMのデータインターフェースがある。これらのうちウルトラDMAを実施することは、ウルトラDMA100においてもストローブ信号は最大50MHzの動作であるため、ハードディスクインターフェースを有するASIC設計において特に困難ではない。
ところが、DDR−SDRAMの場合、400MHzあるいは266MHzのような高速のストローブ信号に同期してデータを受ける必要があり、また、ストローブ信号とデータのタイミング規定が厳しいため、ASIC設計において専用の機構を用いないと、実施が困難である。
DLL(Delay Locked Loop )を用いた従来技術としては、例えば、非特許文献1に記載の技術が知られており、この手法を用いた構成は、図8のように示され、図8の構成を用いたデータの入力タイミングは、図9のように示される。
すなわち、従来の信号遅延装置は、データが4ビットの場合、図8に示すように、DLL101、遅延設定算出回路102、遅延素子103、4個の最小遅延素子104〜107、4個のフリップフロップ108〜111等を備え、DLL101は、遅延素子112、位相比較器113及び遅延制御回路114等を備えている。
DLL101は、遅延素子112が、入力されるクロックの1周期分を遅延させて位相比較器113に出力し、位相比較器113が遅延素子112で遅延されたクロックと入力されたクロックの位相を比較して、遅延制御回路114に出力し、遅延制御回路114が、この位相比較結果に基づいてクロックの1周期分に値する遅延設定値を算出して、遅延素子112と遅延設定値算出回路102に出力する。
遅延設定値算出回路102は、遅延制御回路114から入力される遅延設定値とギア比設定値からストローブ信号を遅延させる遅延素子103の遅延設定値を算出して、遅延素子103に出力し、遅延素子103は、入力されるストローブ信号を遅延設定算出回路102から入力される遅延設定値に基づいて遅延させて補正ストローブ信号としてフリップフロップ108〜111に出力する。
最小遅延素子104〜107には、それぞれデータ0〜データ3が入力され、最小遅延素子104〜107は、予め設定されている遅延量だけデータ0〜データ3を遅延させてフリップフロップ108〜111に出力する。この最小遅延素子104〜107は、遅延値が0%に設定された遅延素子103の遅延値と同じ遅延値となる。
そして、例えば、上記ギア比設定値が45%であると、遅延設定値算出回路102は、クロックの45%の遅延値を遅延素子103に設定し、遅延素子103は、入力されるストローブ信号を当該遅延値だけ遅延させて、フリップフロップ108〜111に出力する。なお、上記回路では、遅延素子112と遅延素子103は、同じ構成の遅延素子であることが前提となっている。そして、この信号遅延装置におけるデータの入力タイミングは、図9のようになり、図9のtdがストローブ用の遅延素子103による遅延量である。
Micron Design Line ,Volume8,Issue3 3Q99 「DDR SDRAM Functionality and Controller Read Data Capture」
しかしながら、このような従来の技術にあっては、DLLを使用してASICを設計した場合、データが複数ビットあると、補正されたストローブ信号と各データを取り込むフリップフロップ間のスキュー、各データのASIC端子からフリップフロップの入力までのスキューの大小が、図9に示した有効なデータ幅の大小に影響する。
すなわち、図10(a)は、ストローブ遅延の理想的なタイミングを示しており、TDDは、複数のデータ信号の入力から最小遅延素子104〜107を通してフリップフロップ108〜111に至るまでの遅延を示している。図10において、TD1は、ストローブ遅延値であり、T1は、遅延素子103で設定された遅延値を示している。遅延素子103は、小さな遅延単位の選択により遅延値T1が決まるためジッタが存在し、J1は、そのジッタを示している。ASIC設計においては、複数のデータ信号で遅延TDDが一定になることが必要である。したがって、図8に示すように、フリップフロップ108〜111は、最小遅延素子104〜107の近傍に配置され、各データ線の遅延TDDの差が無いように設計される。
ここで問題となるのは、ASIC設計では、遅延素子103により補正されるストローブ信号は、遅延素子103を出力した後、クロックツリーシンセシスを用いて各フリップフロップ108〜111までのスキューが小さくなるように設計されるが、遅延素子103からフリップフロップ108〜111までの距離が長くなることである。遅延素子103からフリップフロップ108〜111までの遅延は、温度、電圧の変動により遅延値の変動が大きいことである。図10(b)のJ2が、その変動量であり、TCが遅延素子103からフリップフロップ108〜111までの遅延値に相当する。
したがって、図10(a)の理想的なタイミングにおいては、その有効なデータウィンドウTDWに対して、マージンが、図10(a)のM1A、M1Bになるが、実際のASIC設計においては、マージンが図10(b)のM2A、M2Bのように、データウィンドウに対するバランス及びマージンが減少してしまう。
すなわち、遅延素子103〜フリップフロップ108〜111までの遅延値の変動量J2及び遅延素子103からフリップフロップ108〜111までの遅延値TCが存在するため、ASIC設計において、複数のデータ信号で遅延TDDを一定することが困難になるという問題である。
また、図10(a)の理想的なタイミングにおいて、遅延TDDの値は、図8に示すように、ASICのデータ入力からフリップフロップ108〜111までの遅延値を示しているが、実際のシステム上では、接続される記憶装置の複数のデータバスからASICのデータバスまでの配線距離は全て等しいわけではなく、スキューを持っている。すなわち、図11に示すように、遅延TDDが、一定であっても、データ0〜データ3がASICに入力されるタイミングが異なる。そのため、ストローブ信号で取り込むべきデータウィンドウは、図11にTDW_ALLで示されるように、狭くなってしまう。
したがって、ASIC設計においては、この入力されるデータ0〜データ3のスキューを小さく抑制する必要がある。
そこで、請求項1記載の発明は、選択手段で選択されたストローブ信号またはクロックが入力されるとともに、遅延値が可変である第1遅延素子と第2遅延素子を有し、選択手段がストローブ信号を選択しているときに、第2遅延素子が、当該ストローブ信号を遅延値だけ遅延させて、データの数に対応する数だけ設けられそれぞれ当該データをストローブ信号に基づいて取り込むフリップフロップに入力させ、選択手段がクロックを選択しているときに、第1遅延素子と第2遅延素子の当該クロックの遅延出力の位相を、位相比較手段で比較し、遅延制御手段で、当該位相比較手段の比較結果に基づいて、第2遅延素子の遅延値を制御することにより、第2遅延素子の位相比較手段に至るまでの遅延値を第1遅延素子に設定される遅延値に等しくして、第2遅延素子のフリップフロップに至るまでの遅延値を、基準となる第1遅延素子の遅延値と等しくし、フリップフロップのクロック入力のジッタが第1遅延素子および第2遅延素子のみで決定されるようにし、更に、前記クロックの1周期分の遅延値と入力されたデータ遅延設定値に基づいて、入力された前記データを遅延値だけ遅延させて前記フリップフロップに出力するデータ遅延素子に対する遅延値を算出して、データ転送を適切に行う遅延制御装置を提供することを目的としている。
請求項2記載の発明は、第2遅延素子の出力を、1つのバッファまたは複数のバッファのツリー構造を通して、位相比較手段及びフリップフロップに入力することにより、第2遅延素子から位相比較手段に至るまでの遅延値と第2遅延素子からフリップフロップに至るまでの遅延値を等しくして、第2遅延素子からフリップフロップまでの遅延を小さく抑制し、スキューによるデータとストローブ信号とのタイミングのずれを適切に補正できるようにして、データとストローブ信号を適切に同期させて、データ転送を適切に行う遅延制御装置を提供することを目的としている。
請求項3記載の発明は、フリップフロップのデータの入力端子に、少なくとも第1遅延素子及び第2遅延素子に設定可能な遅延値のうち最小の遅延値を有するデータ遅延素子を接続することにより、クロックツリーシンセシスによるバッファ段数に関係なく、第2遅延素子からフリップフロップまでの遅延を小さく抑制し、理想的な遅延制御を行えるようにするとともに、ASICのレイアウト設計工程においても、クロックツリーシンセシスのバッファ段数や遅延値の大小に関係なくレイアウト設計を行えるようにして、設計工期を短縮させることのできる遅延制御装置を提供することを目的としている。
請求項4記載の発明は、遅延制御手段が、クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出して第1遅延素子に設定するとともに、遅延制御手段に出力する遅延値算出手段から入力される遅延値と位相比較手段の比較結果に基づいて第2遅延素子の遅延値を制御することにより、第1遅延素子に設定する遅延値を、ストローブ信号とデータ信号のタイミング関係から第1遅延素子に設定する遅延値分だけずれたタイミングでストローブ信号をデータ信号からずらし、理想的な遅延制御を行えるようにする遅延制御装置を提供することを目的としている。
請求項5記載の発明は、選択手段で選択されたストローブ信号またはクロックが入力されるとともに、遅延値が可変である第1遅延素子と第2遅延素子を有し、選択手段がストローブ信号を選択しているときに、第2遅延素子が、当該ストローブ信号を遅延値だけ遅延させて、データの数に対応する数だけ設けられそれぞれ当該データをストローブ信号に基づいて取り込むフリップフロップに入力させ、選択手段がクロックを選択しているときに、クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出する遅延値算出手段が算出した遅延値で第1遅延素子が当該クロックを遅延させた遅延出力と第2遅延素子の当該クロックの遅延出力の位相を、位相比較手段で比較し、遅延制御手段で、当該位相比較手段の比較結果に基づいて、第2遅延素子の遅延値を制御することにより、第2遅延素子の位相比較手段に至るまでの遅延値を第1遅延素子に設定される遅延値に等しくして、第2遅延素子のフリップフロップに至るまでの遅延値を、基準となる第1遅延素子の遅延値と等しくし、フリップフロップのクロック入力のジッタが第1遅延素子および第2遅延素子のみで決定されるようにし、更に、前記クロックの1周期分の遅延値と入力されたデータ遅延設定値に基づいて、入力された前記データを遅延値だけ遅延させて前記フリップフロップに出力するデータ遅延素子に対する遅延値を算出して、データ転送を適切に行う遅延制御装置を提供することを目的としている。
請求項6記載の発明は、請求項5の第2遅延素子の出力を、1つのバッファまたは複数のバッファのツリー構造を通して、位相比較手段及びフリップフロップに入力することにより、第2遅延素子から位相比較手段に至るまでの遅延値と第2遅延素子からフリップフロップに至るまでの遅延値を等しくして、第2遅延素子からフリップフロップまでの遅延を小さく抑制し、スキューによるデータとストローブ信号とのタイミングのずれを適切に補正できるようにして、データとストローブ信号を適切に同期させて、データ転送を適切に行う遅延制御装置を提供することを目的としている。
請求項7記載の発明は、請求項5または請求項6のフリップフロップのデータの入力端子に、少なくとも第1遅延素子及び第2遅延素子に設定可能な遅延値のうち最小の遅延値を有するデータ遅延素子を接続することにより、クロックツリーシンセシスによるバッファ段数に関係なく、第2遅延素子からフリップフロップまでの遅延を小さく抑制し、理想的な遅延制御を行えるようにするとともに、ASICのレイアウト設計工程においても、クロックツリーシンセシスのバッファ段数や遅延値の大小に関係なくレイアウト設計を行えるようにして、設計工期を短縮させることのできる遅延制御装置を提供することを目的としている。
請求項8記載の発明は、クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出する複数の遅延値算出手段のうち、1つの遅延値算出手段が、当該算出した遅延値を第1遅延素子に設定し、当該他の遅延値算出手段が、当該算出した遅延値をデータ遅延素子に設定することにより、複数のデータの遅延を、例えば、クロック周期のM%分の遅延にさせるような制御を、それぞれのデータ信号毎に個別で設定し、データ信号のスキューを補正するとともに、クロックツリーを採用することなく、第2遅延素子から各フリップフロップまでの伝送路にスキューがあっても補正できるようにし、安価かつ適切にデータ転送を行う遅延制御装置を提供することを目的としている。
請求項9記載の発明は、ロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出する複数の遅延値算出手段のうち、1つの遅延値算出手段が、当該算出した遅延値を、入力されるストローブ信号を所定の遅延値で遅延させるストローブ遅延素子に設定することにより、ストローブ出力信号にデータ出力信号に対して一定の遅延を持たせ、スキューによるデータとストローブ信号とのタイミングのずれを適切に補正できるようにして、データとストローブ信号を適切に同期させて、データ転送を適切に行う遅延制御装置を提供することを目的としている。
請求項10記載の発明は、少なくともデータ遅延素子に設定可能な遅延値のうち最小の遅延値を有するとともに当該データ遅延素子に入力されるデータを遅延させる第2データ遅延素子をデータ遅延素子と同じ数だけ設けることにより、データ出力信号とストローブ出力信号のタイミング(遅延差)をデータ遅延素子に設定する遅延分とし、データとストローブ信号を適切に同期させて、データ転送を適切に行う遅延制御装置を提供することを目的としている。
請求項11記載の発明は、クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出する複数の遅延値算出手段のうち、1つの遅延値算出手段が、当該算出した遅延値を第2データ遅延素子に設定することにより、データ出力信号毎に遅延値を設定できるようにし、データ出力以降の伝送路のスキューを補正して、より一層適切にデータ転送を行う遅延制御装置を提供することを目的としている。
請求項12記載の発明は、選択手段に、ストローブ信号と補正信号制御回路の出力する補正信号が入力され、当該補正信号制御回路が、所定周期でハイとローに変化する補正信号を出力し、選択手段が、選択信号に応じて当該ストローブ信号と当該補正信号を選択して出力することにより、安価にかつ汎用性が良好な状態で、適切にデータ転送を行う遅延制御装置を提供することを目的としている。
請求項13記載の発明は、遅延値算出手段の遅延設定値を、外部の制御手段から設定可能とすることにより、遅延設定値をソフトウェア等で設定できるようにし、ASIC設計やボード設計の差異により異なる値を機器毎に自由に設定することのできる遅延制御装置を提供することを目的としている。
請求項14記載の発明は、遅延値算出手段の遅延設定値を、外部の不揮発性メモリに格納されている当該遅延設定値を外部の制御手段が読み出して設定可能とすることにより、機器毎に異なるボード上のデータスキューに対応した遅延設定値を、例えば、初期化用のROM等の不揮発性メモリに書き込んで、制御手段が設定して、メインのソフトウェアを変更することなく、適切な遅延設定値を設定できるようにし、ASIC設計やボード設計の差異により異なる値を機器毎に自由にかつ安価に設定することのできる遅延制御装置を提供することを目的としている。
請求項15記載の発明は、遅延制御装置を、記憶手段としてのDDR−SDRAMに接続し、当該DDR−SDRAMへのアクセス時のデータ及びストローブ信号の遅延制御を行うことにより、DDR−SDRAMの制御を適切に行うとともに、例えば、選択信号を、例えば、リフレッシュ期間にアクティブにすることにより、データの転送サイクルを妨げることなくストローブ信号の補正を行うことのできる利用性の良好な遅延制御装置を提供することを目的としている。
請求項1記載の発明の遅延制御装置は、データの数に対応する数だけ設けられそれぞれ当該データをストローブ信号に基づいて取り込むフリップフロップと、選択信号に応じてストローブ信号とクロックを選択して出力する選択手段と、前記選択手段の選択するストローブ信号またはクロックが入力され遅延値が可変である第1遅延素子と第2遅延素子と、当該第1遅延素子と当該第2遅延素子の出力の位相を比較する位相比較手段と、当該位相比較手段の比較結果に基づいて前記第2遅延素子の遅延値を制御する遅延制御手段と、を備え、前記選択手段が前記ストローブ信号を選択しているとき、前記第2遅延素子が当該ストローブ信号を前記遅延値だけ遅延させて前記フリップフロップに出力する遅延制御装置であって、
入力された前記データを、入力された遅延値だけ遅延させて前記フリップフロップに出力するデータ遅延素子と、
前記クロックの1周期分の遅延値及び入力されたデータ遅延設定値に基づいて前記データ遅延素子に対する前記遅延値を算出して出力するデータ遅延設定値算出部と、
を備え、
前記選択手段が前記クロックを選択すると、当該クロックの前記第1遅延素子と前記第2遅延素子の遅延出力を前記位相比較手段で比較し、前記遅延制御手段が、当該位相比較手段の比較結果に基づいて前記第2遅延素子の遅延値を制御することにより、上記目的を達成している。
この場合、例えば、請求項2に記載するように、前記遅延制御装置は、前記第2遅延素子の出力が、1つのバッファまたは複数のバッファのツリー構造を通して、前記位相比較手段及び前記フリップフロップに入力されているものであってもよい。
また、例えば、請求項3に記載するように、前記遅延制御装置は、前記フリップフロップの前記データの入力端子に、少なくとも前記第1遅延素子及び第2遅延素子に設定可能な遅延値のうち最小の遅延値を有するデータ遅延素子が接続されているものであってもよい。
また、例えば、請求項4に記載するように、前記遅延制御装置は、前記クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出して前記第1遅延素子に設定するとともに、前記遅延制御手段に出力する遅延値算出手段を、さらに備え、前記遅延制御手段が、当該遅延値算出手段から入力される遅延値と前記位相比較手段の比較結果に基づいて前記第2遅延素子の遅延値を制御するものであってもよい。
請求項5記載の発明の遅延制御装置は、データの数に対応する数だけ設けられそれぞれ当該データをストローブ信号に基づいて取り込むフリップフロップと、選択信号に応じてストローブ信号とクロックを選択して出力する選択手段と、前記選択手段の選択するストローブ信号またはクロックが入力され遅延値が可変である第1遅延素子と第2遅延素子と、第1遅延素子と第2遅延素子の出力の位相を比較する位相比較手段と、前記クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出して前記第1遅延素子に設定する遅延値算出手段と、前記位相比較手段の比較結果に基づいて前記第2遅延素子の遅延値を制御する遅延制御手段と、を備え、前記選択手段が前記ストローブ信号を選択しているとき、前記第2遅延素子が当該ストローブ信号を前記遅延値だけ遅延させて前記フリップフロップに出力する遅延制御装置であって、
入力された前記データを、入力された遅延値だけ遅延させて前記フリップフロップに出力するデータ遅延素子と、
前記クロックの1周期分の遅延値及び入力されたデータ遅延設定値に基づいて前記データ遅延素子に対する前記遅延値を算出して出力するデータ遅延設定値算出部と、
を備え、
前記選択手段が前記クロックを選択すると、当該クロックを前記第1遅延素子が前記遅延値算出手段の算出する遅延値で遅延させた遅延出力と当該クロックを前記第2遅延素子が遅延させた遅延出力とを前記位相比較手段で比較し、前記遅延制御手段が、当該位相比較手段の比較結果に基づいて前記第2遅延素子の遅延値を制御することにより、上記目的を達成している。
この場合、例えば、請求項6に記載するように、前記遅延制御装置は、前記第2遅延素子の出力が、1つのバッファまたは複数のバッファのツリー構造を通して、前記位相比較手段及び前記フリップフロップに入力されているものであってもよい。
また、例えば、請求項7に記載するように、前記遅延制御装置は、前記フリップフロップの前記データの入力端子に、少なくとも前記第1遅延素子及び第2遅延素子に設定可能な遅延値のうち最小の遅延値を有するデータ遅延素子が接続されているものであってもよい。
さらに、例えば、請求項8に記載するように、前記遅延制御装置は、前記クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出する複数の遅延値算出手段を、さらに備え、当該1つの遅延値算出手段が、当該算出した遅延値を前記第1遅延素子に設定し、当該他の遅延値算出手段が、当該算出した遅延値を前記データ遅延素子に設定するものであってもよい。
また、例えば、請求項9に記載するように、前記遅延制御装置は、前記選択手段に入力される前記ストローブ信号を所定の遅延値で遅延させるストローブ遅延素子と、前記クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出する複数の遅延値算出手段を、さらに備え、当該遅延値算出手段の1つが、当該算出した遅延値を前記ストローブ遅延素子に設定するものであってもよい。
さらに、例えば、請求項10に記載するように、前記遅延制御装置は、少なくとも前記データ遅延素子に設定可能な遅延値のうち最小の遅延値を有するとともに当該データ遅延素子に入力されるデータを遅延させる第2データ遅延素子を前記データ遅延素子と同じ数だけ備えているものであってもよい。
また、例えば、請求項11に記載するように、前記遅延制御装置は、前記クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出する複数の遅延値算出手段を、さらに備え、当該遅延値算出手段の1つが、当該算出した遅延値を前記第2データ遅延素子に設定するものであってもよい。
さらに、例えば、請求項12に記載するように、前記遅延制御装置は、前記選択手段に、前記ストローブ信号と補正信号制御回路の出力する補正信号が入力され、当該補正信号制御回路が、所定周期でハイとローに変化する補正信号を出力し、前記選択手段が、前記選択信号に応じて当該ストローブ信号と当該補正信号を選択して出力するものであってもよい。
また、例えば、請求項13に記載するように、前記遅延制御装置は、前記遅延値算出手段の前記遅延設定値が、外部の制御手段から設定可能であってもよい。
さらに、例えば、請求項14に記載するように、前記遅延制御装置は、前記遅延値算出手段の前記遅延設定値が、外部の不揮発性メモリに格納されている当該遅延設定値を外部の制御手段が読み出して設定可能であってもよい。
また、例えば、請求項15に記載するように、前記遅延制御装置は、記憶手段としてのDDR−SDRAMに接続され、当該DDR−SDRAMへのアクセス時のデータ及びストローブ信号の遅延制御を行うものであってもよい。
請求項1記載の発明の遅延制御装置によれば、選択手段で選択されたストローブ信号またはクロックが入力されるとともに、遅延値が可変である第1遅延素子と第2遅延素子を有し、選択手段がストローブ信号を選択しているときに、第2遅延素子が、当該ストローブ信号を遅延値だけ遅延させて、データの数に対応する数だけ設けられそれぞれ当該データをストローブ信号に基づいて取り込むフリップフロップに入力させ、選択手段がクロックを選択しているときに、第1遅延素子と第2遅延素子の当該クロックの遅延出力の位相を、位相比較手段で比較し、遅延制御手段で、当該位相比較手段の比較結果に基づいて、第2遅延素子の遅延値を制御するので、第2遅延素子の位相比較手段に至るまでの遅延値を第1遅延素子に設定される遅延値に等しくして、第2遅延素子のフリップフロップに至るまでの遅延値を、基準となる第1遅延素子の遅延値と等しくすることができ、フリップフロップのクロック入力のジッタが第1遅延素子および第2遅延素子のみで決定されるようにして、データ転送を適切に行うことができる。
請求項2記載の発明の遅延制御装置によれば、第2遅延素子の出力を、1つのバッファまたは複数のバッファのツリー構造を通して、位相比較手段及びフリップフロップに入力しているので、第2遅延素子から位相比較手段に至るまでの遅延値と第2遅延素子からフリップフロップに至るまでの遅延値を等しくして、第2遅延素子からフリップフロップまでの遅延を小さく抑制することができ、スキューによるデータとストローブ信号とのタイミングのずれを適切に補正できるようにして、データとストローブ信号を適切に同期させて、データ転送を適切に行うことができる。
請求項3記載の発明の遅延制御装置によれば、フリップフロップのデータの入力端子に、少なくとも第1遅延素子及び第2遅延素子に設定可能な遅延値のうち最小の遅延値を有するデータ遅延素子を接続しているので、クロックツリーシンセシスによるバッファ段数に関係なく、第2遅延素子からフリップフロップまでの遅延を小さく抑制することができ、理想的な遅延制御を行えるようにすることができるとともに、ASICのレイアウト設計工程においても、クロックツリーシンセシスのバッファ段数や遅延値の大小に関係なくレイアウト設計を行えるようにして、設計工期を短縮させることができる。
請求項4記載の発明の遅延制御装置によれば、クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出して第1遅延素子に設定するとともに遅延制御手段に出力する遅延値算出手段から入力される遅延値と位相比較手段の比較結果に基づいて、遅延制御手段が、第2遅延素子の遅延値を制御しているので、第1遅延素子に設定する遅延値を、ストローブ信号とデータ信号のタイミング関係から第1遅延素子に設定する遅延値分だけずれたタイミングでストローブ信号をデータ信号からずらすことができ、理想的な遅延制御を行えるようにすることができる。
請求項5記載の発明の遅延制御装置によれば、選択手段で選択されたストローブ信号またはクロックが入力されるとともに、遅延値が可変である第1遅延素子と第2遅延素子を有し、選択手段がストローブ信号を選択しているときに、第2遅延素子が、当該ストローブ信号を遅延値だけ遅延させて、データの数に対応する数だけ設けられそれぞれ当該データをストローブ信号に基づいて取り込むフリップフロップに入力させ、選択手段がクロックを選択しているときに、クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出する遅延値算出手段が算出した遅延値で第1遅延素子が当該クロックを遅延させた遅延出力と第2遅延素子の当該クロックの遅延出力の位相を、位相比較手段で比較し、遅延制御手段で、当該位相比較手段の比較結果に基づいて、第2遅延素子の遅延値を制御しているので、第2遅延素子の位相比較手段に至るまでの遅延値を第1遅延素子に設定される遅延値に等しくして、第2遅延素子のフリップフロップに至るまでの遅延値を、基準となる第1遅延素子の遅延値と等しくすることができ、フリップフロップのクロック入力のジッタが第1遅延素子および第2遅延素子のみで決定されるようにして、データ転送を適切に行うことができる。
請求項6記載の発明の遅延制御装置によれば、第2遅延素子の出力を、1つのバッファまたは複数のバッファのツリー構造を通して、位相比較手段及びフリップフロップに入力しているので、第2遅延素子から位相比較手段に至るまでの遅延値と第2遅延素子からフリップフロップに至るまでの遅延値を等しくして、第2遅延素子からフリップフロップまでの遅延を小さく抑制することができ、スキューによるデータとストローブ信号とのタイミングのずれを適切に補正できるようにして、データとストローブ信号を適切に同期させて、データ転送を適切に行うことができる。
請求項7記載の発明の遅延制御装置によれば、請求項5または請求項6のフリップフロップのデータの入力端子に、少なくとも第1遅延素子及び第2遅延素子に設定可能な遅延値のうち最小の遅延値を有するデータ遅延素子を接続しているので、クロックツリーシンセシスによるバッファ段数に関係なく、第2遅延素子からフリップフロップまでの遅延を小さく抑制することができ、理想的な遅延制御を行えるようにすることができるとともに、ASICのレイアウト設計工程においても、クロックツリーシンセシスのバッファ段数や遅延値の大小に関係なくレイアウト設計を行えるようにして、設計工期を短縮させることができる。
請求項8記載の発明の遅延制御装置によれば、クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出する複数の遅延値算出手段のうち、1つの遅延値算出手段が、当該算出した遅延値を第1遅延素子に設定し、当該他の遅延値算出手段が、当該算出した遅延値をデータ遅延素子に設定しているので、複数のデータの遅延を、例えば、クロック周期のM%分の遅延にさせるような制御を、それぞれのデータ信号毎に個別で設定することができ、データ信号のスキューを補正することができるとともに、クロックツリーを採用することなく、第2遅延素子から各フリップフロップまでの伝送路にスキューがあっても補正できるようにして、安価かつ適切にデータ転送を行うことができる。
請求項9記載の発明の遅延制御装置によれば、ロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出する複数の遅延値算出手段のうち、1つの遅延値算出手段が、当該算出した遅延値を、入力されるストローブ信号を所定の遅延値で遅延させるストローブ遅延素子に設定しているので、ストローブ出力信号にデータ出力信号に対して一定の遅延を持たせることができ、スキューによるデータとストローブ信号とのタイミングのずれを適切に補正できるようにして、データとストローブ信号を適切に同期させて、データ転送を適切に行うことができる。
請求項10記載の発明の遅延制御装置によれば、少なくともデータ遅延素子に設定可能な遅延値のうち最小の遅延値を有するとともに当該データ遅延素子に入力されるデータを遅延させる第2データ遅延素子をデータ遅延素子と同じ数だけ設けているので、データ出力信号とストローブ出力信号のタイミング(遅延差)をデータ遅延素子に設定する遅延分とすることができ、データとストローブ信号を適切に同期させて、データ転送を適切に行うことができる。
請求項11記載の発明の遅延制御装置によれば、クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出する複数の遅延値算出手段のうち、1つの遅延値算出手段が、当該算出した遅延値を第2データ遅延素子に設定しているので、データ出力信号毎に遅延値を設定できるようにすることができ、データ出力以降の伝送路のスキューを補正して、より一層適切にデータ転送を行うことができる。
請求項12記載の発明の遅延制御装置によれば、選択手段に、ストローブ信号と補正信号制御回路の出力する補正信号が入力され、当該補正信号制御回路が、所定周期でハイとローに変化する補正信号を出力し、選択手段が、選択信号に応じて当該ストローブ信号と当該補正信号を選択して出力するので、安価にかつ汎用性が良好な状態で、適切にデータ転送を行うことができる。
請求項13記載の発明の遅延制御装置によれば、遅延値算出手段の遅延設定値を、外部の制御手段から設定可能としているので、遅延設定値をソフトウェア等で設定できるようにすることができ、ASIC設計やボード設計の差異により異なる値を機器毎に自由に設定することができる。
請求項14記載の発明の遅延制御装置によれば、遅延値算出手段の遅延設定値を、外部の不揮発性メモリに格納されている当該遅延設定値を外部の制御手段が読み出して設定可能としているので、機器毎に異なるボード上のデータスキューに対応した遅延設定値を、例えば、初期化用のROM等の不揮発性メモリに書き込んで、制御手段が設定して、メインのソフトウェアを変更することなく、適切な遅延設定値を設定できるようにすることができ、ASIC設計やボード設計の差異により異なる値を機器毎に自由にかつ安価に設定することができる。
請求項15記載の発明の遅延制御装置によれば、遅延制御装置を、記憶手段としてのDDR−SDRAMに接続し、当該DDR−SDRAMへのアクセス時のデータ及びストローブ信号の遅延制御を行っているので、DDR−SDRAMの制御を適切に行うことができるとともに、例えば、選択信号を、例えば、リフレッシュ期間にアクティブにすることで、データの転送サイクルを妨げることなくストローブ信号の補正を行うことができ、利用性を向上させることができる。
以下、本発明の好適な実施例を添付図面に基づいて詳細に説明する。なお、以下に述べる実施例は、本発明の好適な実施例であるから、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明において特に本発明を限定する旨の記載がない限り、これらの態様に限られるものではない。
図1は、本発明の遅延制御装置の第1実施例を示す図であり、図1は、本発明の遅延制御装置の第1実施例を適用した遅延制御装置1の回路構成図である。
図1において、遅延制御装置1は、マスターDLL2、遅延設定値算出回路3、ストローブ遅延部4、2つのデータ遅延部5、6及び4つのバッファ7〜10等を備えている。
ストローブ遅延部4は、選択手段としてのMUX(multiplexer :マルチプレクサ)11、2つの遅延素子12、13、位相比較器14及び遅延制御回路15を備えており、データ遅延部5とデータ遅延部6は、それぞれ最小遅延素子21と最小遅延素子22を備えているとともに、フリップフロップ23、24とフリップフロップ25、26を備えている。
マスターDLL2には、リファレンスクロックが入力され、マスターDLL2は、入力されるリファレンスクロックの1周期分に値する遅延値を生成して、遅延設定値算出回路3に出力する。
遅延設定値算出回路(遅延値算出手段)3には、遅延設定値と上記マスターDLL2からの遅延値が入力され、遅延設定値算出回路3は、遅延設定値と遅延値に基づいてストローブ信号の遅延設定値を算出して、ストローブ遅延部4の遅延素子12と遅延制御回路13に出力する。
ストローブ遅延部4は、そのMUX11に、上記リファレンスクロック(クロック)とストローブ信号が入力されるとともに、切換信号として補正モード信号が入力され、MUX11は、補正モード信号に基づいてリファレンスクロックとストローブ信号を切り換えて遅延素子12と遅延素子13に共通に出力する。特に、MUX11は、補正モード信号がアクティブのとき、すなわち、補正モード時に、リファレンスクロックを選択して遅延素子12と遅延素子13に出力する。なお、ストローブ信号は、バッファBf1を介してMUX11に入力される。
遅延素子(第1遅延素子)12は、MUX11から入力されるリファレンスクロックまたはストローブ信号を遅延設定値算出回路3から入力される遅延設定値だけ遅延させて、位相比較器14に出力する。この遅延素子12の遅延値は、遅延素子12の入力端子から位相比較器14の入力端子までの遅延が理想的なストローブ信号の遅延値となるように設定されている。
遅延制御回路(遅延制御手段)15は、遅延設定値算出回路3から入力される遅延設定値を遅延素子13に設定するとともに、遅延素子13への遅延値を、位相比較器14からの遅延補正値で一単位ずつ増やして設定、または、一単位ずつ減らして設定する。
遅延素子(第2遅延素子)13は、MUX11から入力されるリファレンスクロックまたはストローブ信号を遅延制御回路15から入力される補正遅延値だけ遅延させて、バッファ7及びバッファ8を介して位相比較器14に出力するとともに、バッファ7とバッファ10を介してデータ遅延部5のフリップフロップ23、24に、また、バッファ7とバッファ9を介してデータ遅延部6のフリップフロップ25、26に、出力する。
位相比較器(位相比較手段)14には、遅延素子12の出力と、バッファ7及びバッファ8を通した遅延素子13の出力と、が入力され、位相比較器14は、これらの入力の位相を比較して、遅延素子13の出力が遅延素子12の出力よりも遅いと判定すると、遅延制御回路15の現在の遅延値(最初は遅延素子12と同じ設定値が設定・保存されている)の設定単位を一単位増やす遅延補正値を遅延制御回路15に出力し、遅延素子13の出力が遅延素子12の出力よりも早いと判定すると、遅延制御回路15の現在の遅延値の設定単位を一単位減らす遅延補正値を遅延制御回路15に出力する。なお、位相比較器14による遅延素子13の出力が遅延素子12の出力よりも遅いという判定を、「+」判定、遅延素子13の出力が遅延素子12の出力よりも早いという判定を、「−」判定という。
遅延制御回路15は、位相比較器14からの「+」判定または「−」判定に応じた遅延補正値に基づいて、遅延素子13への現在の遅延設定値を設定単位の一単位増やして設定、あるいは、一単位減らして設定する。
データ遅延部5の最小遅延素子(データ遅延素子)21には、データ0がバッファBf2を介して入力され、フリップフロップ23、24は、そのデータ入力端子に最小遅延素子21の出力が、そのクロック入力端子にストローブ遅延部4の遅延素子13からのストローブ信号がバッファ7及びバッファ10を通して入力される。最小遅延素子21は、最小の遅延値である場合のストローブ信号入力からフリップフロップ23、24のクロック入力端子までの遅延値と、データ入力からフリップフロップ23、24のデータ入力端子までの遅延値と、を等しい遅延値とする遅延値でデータ0を遅延させて、フリップフロップ23、24のデータ入力端子に出力する。フリップフロップ23、24は、最小遅延素子21から入力されるデータ0をストローブ遅延部4の遅延素子13からのストローブ信号に基づいて出力する。
データ遅延部6の最小遅延素子(データ遅延素子)22には、データ1がバッファBf3を介して入力され、フリップフロップ25、26は、そのデータ入力端子に最小遅延素子22の出力が、そのクロック入力端子にストローブ遅延部4の遅延素子13からのストローブ信号がバッファ7及びバッファ9を通して入力される。最小遅延素子22は、最小の遅延値である場合のストローブ信号入力からフリップフロップ25、26のクロック入力端子までの遅延値と、データ入力からフリップフロップ25、26のデータ入力端子までの遅延値と、を等しい遅延値とする遅延値でデータ1を遅延させて、フリップフロップ25、26のデータ入力端子に出力する。フリップフロップ25、26は、最小遅延素子22から入力されるデータ1をストローブ遅延部4の遅延素子13からのストローブ信号に基づいて出力する。
そして、上記遅延素子12、13としては、例えば、図2に示すような遅延素子30を用いることができ、この遅延素子30は、複数の単位遅延素子31a〜31nと選択回路32を備えている。遅延素子30は、設定される遅延値に応じて選択回路32が、データまたはストローブ信号を出力させる単位遅延素子31a〜31nを選択して、当該選択した単位遅延素子31a〜31nの遅延させたデータまたはストローブ信号を出力する。
なお、上記構成では、ストローブ遅延部4は、遅延設定値算出回路3の出力が遅延制御回路15に接続されて、遅延制御回路15で遅延素子12と同じ遅延値を、遅延素子13に初期遅延値として設定しているが、ストローブ遅延部4の構成としては、上記構成に限るものではなく、遅延素子13の遅延値は、予め初期遅延値を、遅延素子13または遅延制御回路15等に設定またはメモリ等に保存しておくことで、設定することができるため、遅延制御回路15は、遅延設定値算出回路3に接続されていなくてもよい。
また、遅延素子13から各フリップフロップ23〜26及び位相比較器14の入力端子までの配線は、スキューを少なくするため、クロックツリーシンセシスを用いてバッファのツリー構造にしてもよい。
次に、本実施例の作用を説明する。本実施例の遅延制御装置1は、遅延素子12の入力端子から位相比較器14の入力端子までの遅延が理想的なストローブ信号の遅延値となっており、遅延素子13の入力端子から遅延素子13の出力バッファ7、8を介して位相比較器14の入力端子に至るまでの遅延値を、理想的な遅延値に再設定する。
遅延制御装置1は、通常の動作モードでは、補正モード信号が非アクティブであり、MUX11がストローブ信号を選択して、遅延素子13が、遅延制御回路15により設定される遅延値でストローブ信号を遅延させて、バッファ7、10を通してデータ遅延部5のフリップフロップ23、24に、また、バッファ7、9を通してデータ遅延部6のフリップフロップ25、26に、出力する。
フリップフロップ23、24及びフリップフロップ25、26は、それぞれ最小遅延素子21及び最小遅延素子22で遅延されたデータ0及びデータ1を、バッファ7、10またはバッファ7、10を通して遅延素子13から入力されるストローブ信号に同期して出力する。
そして、遅延制御装置1は、所定の補正タイミングで、補正モード信号がアクティブになると、MUX11が、リファレンスクロックを選択して、遅延素子12と遅延素子13に出力し、遅延素子12は、マスターDLL2が生成したリファレンスクロックの1周期分に値する遅延値と遅延設定値に基づいて遅延設定値算出回路3の算出した遅延値だけリファレンスクロックを遅延させて位相比較器14に出力する。そして、この遅延素子12の遅延値は、上述のように、遅延素子12の入力端子から位相比較器14の入力端子までの遅延が理想的なストローブ信号の遅延値となるように設定されている。
一方、遅延素子13は、遅延制御回路15により設定される遅延値でリファレンスクロックを遅延させて、バッファ7及びバッファ8を通して位相比較器14に入力する。この遅延素子13からバッファ7及びバッファ8を介した位相比較器14の入力端子までの遅延値は、ストローブ信号の経路である遅延素子13からバッファ7及びバッファ10を通してフリップフロップ23、24の入力端子までの遅延値、遅延素子13からバッファ7及びバッファ9を通してフリップフロップ25、25の入力端子までの遅延値と同じに設定されている。
そして、位相比較器14は、遅延素子12で理想的なストローブ信号の遅延値で遅延されて遅延素子12から入力されるリファレンスクロックとバッファ7及びバッファ8を通して遅延素子13から入力されるリファレンスクロックの位相を比較し、上記「+」判定、または、「−」判定して、遅延制御回路15の現在の遅延値の設定単位を一単位増やす遅延補正値、あるいは、一単位減らす遅延補正値を遅延制御回路15に出力する。
遅延制御回路15は、位相比較器14からの「+」判定または「−」判定に応じた遅延補正値に基づいて、遅延素子13への現在の遅延値を設定単位の一単位増やして設定、あるいは、一単位減らして設定する。
遅延素子13は、設定された遅延値だけ、MUX11から入力されるリファレンスクロックを回路15から遅延させて、バッファ7及びバッファ8を介して位相比較器14に出力する。
したがって、位相比較器14の判定が「+」から「−」に遷移した時が、遅延素子13及びバッファ7、9及び配線遅延を含めた遅延値が遅延素子12の遅延値と一致したことを示しており、このとき、ストローブ信号が遅延素子13からフリップフロップ23、24及びフリップフロップ25、26まで到達する遅延値が理想的な遅延値と一致することになる。
上記補正処理を定期的に行うことにより、理想的なストローブ遅延を保つことができる。
このように、補正処理を行うことで、遅延素子12の入力端子から位相比較器14までの遅延値と、遅延素子13の入力端子からバッファ7、8あるいはバッファのツリー構造を通って位相比較器14に至るまでの遅延値とが一致するとともに、遅延素子12の入力端子から位相比較器14までの遅延値と、遅延素子13の入力端子からバッファ7、10またはバッファ7、9あるいはバッファのツリー構造を通ってフリップフロップ23〜26のクロック入力端子に至るまでの遅延値とも一致することになる。
したがって、ストローブ信号を意図した遅延値でフリップフロップ23〜26のクロック入力端子まで遅延させることができる。すなわち、フリップフロップ23〜26までのストローブ信号の遅延が、従来では、図10(b)のタイミング図で、ジッタがJ2であったのが、図10(a)のタイミング図で、ジッタをJ1にすることができる。
また、遅延素子12及び遅延素子13は、最小の遅延値に設定しても0遅延にはならないが、本実施例の遅延制御装置1は、データ0及びデータ1を最小遅延素子21、22を通してフリップフロップ23、24及びフリップフロップ25、26に入力しているため、遅延素子12及び遅延素子13が最小の遅延値である場合のストローブ信号入力からフリップフロップ23〜26のクロック入力端子までの遅延値と、データ入力からフリップフロップ23〜26のデータ入力端子までの遅延値を等しくすることができる。
なお、遅延素子13の出力端子からバッファ7、9及びバッファ7、10等を介して接続されるフリップフロップ23〜26は、立ち上がりエッジあるいは立ち下がりエッジのものが混在していてもよく、また、遅延素子13の出力は、正論理、負論理の2系統の出力があってもよい。さらに、図1の最小遅延素子21、22の出力が接続されるフリップフロップ23、24、25、26は複数であってもよい。
そして、本実施例の遅延制御装置1は、ストローブ遅延部4がリファレンスクロックに基づいて遅延素子13の遅延値の補正処理を行っているが、リファレンスクロックに基づくものに限るものではなく、例えば、図3に示すように、入力クロックで、「L」から「H」、または、「H」から「L」に変化する補正信号を出力する補正信号制御回路40を設けて、補正モード信号がアクティブのときに、この補正信号をMUX11を介して遅延素子12及び遅延素子13に出力することで、上記同様に補正処理を行ってもよい。
このようにすると、遅延素子13の位相比較器14に至るまでの遅延値を遅延素子12に設定される遅延値に等しくして、遅延素子13のフリップフロップ23〜26に至るまでの遅延値を、基準となる遅延素子12の遅延値と等しくすることができ、フリップフロップ23〜26のクロック入力のジッタが遅延素子12および遅延素子13のみで決定されるようにして、データ転送を適切に行うことができる。
また、本実施例の遅延制御装置1は、遅延素子13の出力を、バッファ7〜10を通して、位相比較器14及びフリップフロップ23〜26に入力している。
したがって、遅延素子13から位相比較器14に至るまでの遅延値と遅延素子13からフリップフロップ23〜26に至るまでの遅延値を等しくして、遅延素子13からフリップフロップ23〜26までの遅延を小さく抑制することができ、スキューによるデータとストローブ信号とのタイミングのずれを適切に補正できるようにして、データとストローブ信号を適切に同期させて、データ転送を適切に行うことができる。
図4は、本発明の遅延制御装置の第2実施例を適用した遅延制御装置100の回路構成図である。
なお、本実施例は、上記第1実施例の遅延制御装置1と同様の遅延制御装置100に適用したものであり、本実施例の説明においては、上記第1実施例の遅延制御装置1と同様の構成部分には、同一の符号を付して、その詳細な説明を省略する。
図4において、遅延制御装置100は、上記第1実施例の遅延制御装置1と同様のマスターDLL2、遅延設定値算出回路3、ストローブ遅延部4を備えているとともに、データ遅延設定値算出回路(遅延値算出手段)101、102及びデータ遅延部103、104を備えている。
データ遅延部103は、遅延素子(データ遅延素子)105と上記第1実施例の遅延制御装置1のデータ遅延部5と同様のフリップフロップ23、24を備えており、データ遅延部104は、遅延素子(データ遅延素子)106と上記第1実施例の遅延制御素子1のデータ遅延部6と同様のフリップフロップ25、26を備えている。
データ遅延部103の遅延素子105及びデータ遅延部104の遅延素子106は、上記第1実施例の遅延制御装置1の遅延素子12、13と同様の構成であり、複数のデータ遅延部103、104に入力されるデータ入力信号のスキューを調整するためのものである。したがって、これらの遅延素子105、106の設定できる遅延単位の最大値は、遅延素子12、13よりも少なくてもよい。
データ遅延設定値算出回路101、102には、マスターDLL2からリファレンスクロックの1周期分に値する遅延値とデータ遅延設定値が入力され、データ遅延設定値算出回路101、102は、マスターDLL2からの遅延値に基づいてデータ遅延設定値に対応する遅延値を算出して、遅延素子105及び遅延素子106に設定する。
この遅延素子105及び遅延素子106に設定される遅延値は、上述のように、複数のデータ遅延部103、104に入力されるデータ入力信号のスキューを調整する遅延値であり、遅延素子105及び遅延素子106は、それぞれ入力されるデータ0及びデータ1を設定された遅延値で遅延させて、フリップフロップ23、24及びフリップフロップ25、26に出力する。
このように、本実施例の遅延制御装置100は、フリップフロップ23〜26のデータの入力端子に、遅延素子105、106を接続し、クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出する複数の遅延設定値算出回路3、101、102が設けられ、1つの遅延設定値算出回路3が当該算出した遅延値を遅延素子12に設定し、他の遅延設定値算出回路101、102が、当該算出した遅延値を遅延素子105、106に設定している。
したがって、複数のデータの遅延を、例えば、クロック周期のM%分の遅延にさせるような制御を、それぞれのデータ信号毎に個別で設定することができ、データ信号のスキューを補正することができるとともに、クロックツリーを採用することなく、遅延素子13から各フリップフロップ23〜26までの伝送路にスキューがあっても補正できるようにして、安価かつ適切にデータ転送を行うことができる。
図5は、本発明の遅延制御装置の第3実施例を適用した遅延制御装置200の回路構成図である。
なお、本実施例は、上記第1実施例の遅延制御装置1と同様の遅延制御装置200に適用したものであり、本実施例の説明においては、上記第1実施例の遅延制御装置1と同様の構成部分には、同一の符号を付して、その詳細な説明を省略する。
図5において、遅延制御装置200は、上記第1実施例の遅延制御装置1と同様のマスターDLL2及び4つのバッファ7〜10を備えているとともに、入力用の遅延設定値算出回路(遅延値算出手段)201、出力用の遅延設定値算出回路(遅延値算出手段)202、ストローブ遅延部203及び2つのデータ遅延部204、205を備えている。
ストローブ遅延部203は、上記第1実施例のストローブ遅延部4と同様のMUX11、2つの遅延素子12、13、位相比較器14及び遅延制御回路15を備えているとともに、遅延素子(ストローブ遅延素子)211とストローブ制御回路212を備えている。
また、データ遅延部204は、上記第1実施例のデータ遅延部5と同様の最小遅延素子21及びフリップフロップ23、24を備えているとともに、フリップフロップ221と最小遅延素子(第2データ遅延素子)222を備えており、データ遅延部205は、上記第1実施例のデータ遅延部6と同様の最小遅延素子22及びフリップフロップ25、26を備えているとともに、フリップフロップ223と最小遅延素子(第2データ遅延素子)224を備えている。
上記遅延設定値算出回路201には、マスターDLL2からリファレンスクロックの1周期分に値する遅延値と入力用遅延設定値が入力され、遅延設定値算出回路201は、マスターDLL2からの遅延値と入力用遅延設定値に基づいて入力用の遅延値を算出して、ストローブ遅延部203の遅延素子12と遅延制御回路15に出力する。
上記遅延設定値算出回路202には、マスターDLL2からリファレンスクロックの1周期分に値する遅延値と出力用遅延設定値が入力され、遅延設定値算出回路202は、マスターDLL2からの遅延値と出力用遅延設定値に基づいて出力用の遅延値を算出して、ストローブ遅延部203の遅延素子211に出力する。
上記ストローブ遅延部203のストローブ制御回路212には、出力回路用クロックが入力され、ストローブ制御回路212は、出力回路用クロックに基づいてストローブ出力タイミング信号を遅延素子211に出力する。
遅延素子211は、ストロ−ブ制御回路212からのストローブ出力タイミング信号を遅延設定値算出回路202からの遅延値だけ遅延させて、バッファBf1bを介してストローブ信号の入力に戻す。
また、データ遅延部204のフリップフロップ221及びデータ遅延部205のフリップフロップ223には、上記出力回路用クロックが入力され、フリップフロップ221及びフリップフロップ223は、出力用クロック毎に、データ出力タイミング信号を最小遅延素子222及び最小遅延素子224に出力する。
最小遅延素子222及び最小遅延素子224は、最小遅延素子21及び最小遅延素子22と同様の機能を備えており、フリップフロップ221及びフリップフロップ223からのデータ出力タイミング信号を、最小遅延素子21及び最小遅延素子22と同じ遅延値だけ遅延させて、それぞれバッファBf2b及びバッファBf3bを介してデータ0及びデータ1の入力に戻す。
したがって、ストローブ出力信号もデータ出力信号に対して一定の遅延を持たせることができ、さらに、データ出力信号とストローブ出力信号とのタイミング差(遅延差)を遅延素子211に遅延設定値算出回路202により設定される遅延分とすることができる。 このように、本実施例の遅延制御装置200は、ロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出する複数の遅延設定値算出回路201、202のうち、1つの遅延設定値算出回路202が、当該算出した遅延値を、入力されるストローブ信号を所定の遅延値で遅延させる遅延素子211に設定している。
したがって、ストローブ出力信号にデータ出力信号に対して一定の遅延を持たせることができ、スキューによるデータとストローブ信号とのタイミングのずれを適切に補正できるようにして、データとストローブ信号を適切に同期させて、データ転送を適切に行うことができる。
図6は、本発明の遅延制御装置の第4実施例を適用した遅延制御装置300の回路構成図である。
なお、本実施例は、上記第3実施例の遅延制御装置200と同様の遅延制御装置300に適用したものであり、本実施例の説明においては、上記第3実施例の遅延制御装置200と同様の構成部分には、同一の符号を付して、その詳細な説明を省略する。
図6において、遅延制御装置300は、上記第3実施例の遅延制御装置200と同様のマスターDLL2、遅延設定値算出回路201、202及びストローブ遅延部203を備えているとともに、4つのデータ遅延設定値算出回路(遅延値算出手段)301〜304及びデータ遅延部305、306を備えている。
データ遅延部305は、上記第1実施例のデータ遅延部5と同様のフリップフロップ23、24を備えているとともに、遅延素子(データ遅延素子)311、遅延素子(第2データ遅延素子)312及びフリップフロップ313を備えており、データ遅延部306は、上記第1実施例のデータ遅延部5と同様のフリップフロップ25、26を備えているとともに、遅延素子(データ遅延素子)314、遅延素子(第2データ遅延素子)315及びフリップフロップ316を備えている。
データ遅延設定値算出回路301〜304には、それぞれマスターDLL2からリファレンスクロックの1周期分に値する遅延値とデータ遅延設定値が入力され、データ遅延設定値算出回路301〜304は、マスターDLL2からの遅延値に基づいてデータ遅延設定値に対応する遅延値を算出して、データ遅延部305の遅延素子311と遅延素子312及びデータ遅延部305の遅延素子314と遅延素子315に設定する。
遅延素子311は、データ遅延設定値算出回路301により設定される遅延値だけバッファBf2を介して入力されるデータ0を遅延させてフリップフロップ23、24に出力し、遅延素子314は、データ遅延設定値算出回路302により設定される遅延値だけバッファBf3を介して入力されるデータ1を遅延させてフリップフロップ25、26に出力する。
遅延設定値算出回路201は、上述のように、マスターDLL2からの遅延値と入力用遅延設定値に基づいて入力用の遅延値を算出して、ストローブ遅延部203の遅延素子12と遅延制御回路15に出力する。
また、遅延設定値算出回路202は、マスターDLL2からの遅延値と出力用遅延設定値に基づいて出力用の遅延値を算出して、ストローブ遅延部203の遅延素子211に出力する。
ストローブ遅延部203のストローブ制御回路212には、出力回路用クロックが入力され、ストローブ制御回路212は、出力回路用クロックに基づいてストローブ出力タイミング信号を遅延素子211に出力する。
遅延素子211は、ストロ−ブ制御回路212からのストローブ出力タイミング信号を遅延設定値算出回路202からの遅延値だけ遅延させて、バッファBf1bを介してストローブ信号の入力に戻す。
また、データ遅延部305のフリップフロップ313及びデータ遅延部306のフリップフロップ316には、上記出力回路用クロックが入力され、フリップフロップ313及びフリップフロップ316は、出力用クロック毎に、データ出力タイミング信号を遅延素子312及び遅延素子315に出力する。
遅延素子312及び遅延素子315は、遅延素子311及び遅延素子314と同様の機能を備えており、フリップフロップ313及びフリップフロップ316からのデータ出力タイミング信号を、遅延素子311及び遅延素子314と同じ遅延値だけ遅延させて、それぞれバッファBf2b及びバッファBf3bを介してデータ0及びデータ1の入力に戻す。
そして、上記遅延素子311と遅延素子312及び遅延素子314と遅延素子315に設定される遅延値は、上述のように、複数のデータ遅延部305、306に入力されるデータ入力信号のスキューを調整する遅延値である。
したがって、遅延制御装置300をASICと記憶装置等の間に配設すると、ASICと記憶装置等の間のデータスキューを調整することができる。
また、本実施例の遅延制御素子300は、クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出する複数のデータ遅延設定値算出回路301〜304のうち、遅延値算出回路302、304が、当該算出した遅延値を第2データ遅延素子である遅延素子312、315に設定している。
したがって、データ出力信号毎に遅延値を設定できるようにすることができ、データ出力以降の伝送路のスキューを補正して、より一層適切にデータ転送を行うことができる。
図7は、本発明の遅延制御装置の第5実施例を適用した遅延制御装置400の適用される電子機器500の要部ブロック構成図である。
電子機器500は、CPU(Central Processing Unit )501、ROM(Read Only Memory)502及びレジスタ503〜507等がバス508に接続されており、CPU(外部の制御手段)501が、バス508に接続されているレジスタ503〜507及び遅延制御装置400を介して記憶装置(記憶手段)509へのデータの書き込みや記憶装置509からのデータの読み出しを行う。この記憶装置509は、例えば、DDR―SDRAMである。
遅延制御装置400は、上記第1実施例の遅延制御装置1から第4実施例の遅延制御装置300を用いることができ、いま、ストローブ遅延部401と複数(図7では、4つ)のデータ遅延部402〜405を備えている。
ストローブ遅延部401へのストローブ遅延設定値及びデータ遅延部402〜405のデータ遅延設定値は、CPU501によりレジスタ503及びレジスタ504〜507を介して設定される。
そして、このストローブ遅延設定値及びデータ遅延設定値は、ROM(外部の不揮発性メモリ)502に予め格納されており、電子機器500のパワーオン時やリセット時にCPU501がROM502のストローブ遅延設定値及びデータ遅延設定値を読み出して、レジスタ503〜507にに設定する。このストローブ遅延設定値及びデータ遅延設定値は、電子機器500のボード設計時に、CPU501から記憶装置509までのデータの配線スキューやストローブ信号との遅延を考慮して決定され、ROM502に書き込まれる。
このように、本実施例では、ストローブ遅延部401へのストローブ遅延設定値及びデータ遅延部402〜405のデータ遅延設定値を、外部の制御手段であるCPU501から設定可能としている。
したがって、遅延設定値をソフトウェア等で設定できるようにすることができ、ASIC設計やボード設計の差異により異なる値を機器毎に自由に設定することができる。
また、ストローブ遅延部401へのストローブ遅延設定値及びデータ遅延部402〜405のデータ遅延設定値を、外部の不揮発性メモリであるROM502に格納されている当該遅延設定値を外部の制御手段であるCPU501が読み出して設定可能としている。
したがって、機器毎に異なるボード上のデータスキューに対応した遅延設定値を、メインのソフトウェアを変更することなく、適切な遅延設定値を設定できるようにすることができ、ASIC設計やボード設計の差異により異なる値を機器毎に自由にかつ安価に設定することができる。
以上、本発明者によってなされた発明を好適な実施の形態に基づき具体的に説明したが、本発明は上記のものに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
電子機器等のLSI間の高速インターフェース、信号間のタイミング規定が厳しいデータ転送のタイミング補正を適切に行う遅延制御装置に適用することができる。
本発明の遅延制御装置の第1実施例を適用した遅延制御装置の回路構成図。 図1の遅延素子の一例を示す回路構成図。 図1のストローブ遅延部の他の例の回路構成図。 本発明の遅延制御装置の第2実施例を適用した遅延制御装置の回路構成図。 本発明の遅延制御装置の第3実施例を適用した遅延制御装置の回路構成図。 本発明の遅延制御装置の第4実施例を適用した遅延制御装置の回路構成図。 本発明の遅延制御装置の第5実施例を適用した遅延制御装置の適用される電子機器の要部ブロック構成図。 従来のDLLを用いた信号遅延装置の要部回路ブロック構成図。 図8のデータの入力タイミングを示す図。 ストローブ信号の遅延が理想的な場合のタイミング(a)と理想的なタイミングに対してマージンが生じている実際のタイミング(b)を示す図。 配線距離のデータ転送タイミングに対するデータスキューの影響の説明図。
符号の説明
1 遅延制御装置
2 マスターDLL
3 遅延設定値算出回路
4 ストローブ遅延部
5、6 データ遅延部
7〜10 バッファ
11 MUX
12、13 遅延素子
14 位相比較器
15 遅延制御回路
21、22 最小遅延素子
23、24、25、26 フリップフロップ
Bf1〜Bf3 バッファ
30 遅延素子
31a〜31n 単位遅延素子
32 選択回路
100 遅延制御装置
101、102 データ遅延設定値算出回路
103、104 データ遅延部
105 遅延素子
106 遅延素子
200 遅延制御装置
201、202 遅延設定値算出回路
203 ストローブ遅延部
204、205 データ遅延部
211 遅延素子
212 ストローブ制御回路
221 フリップフロップ
222 最小遅延素子
223 フリップフロップ
224 最小遅延素子
Bf1b〜Bf3b バッファ
300 遅延制御装置
301〜304 データ遅延設定値算出回路
305、306 データ遅延部
311、312 遅延素子
313 フリップフロップ
314、315 遅延素子
316 フリップフロップ
400 遅延制御装置
500 電子機器
501 CPU
502 ROM
503〜507 レジスタ
508 バス
509 記憶装置
401 ストローブ遅延部
402〜405 データ遅延部

Claims (15)

  1. データの数に対応する数だけ設けられそれぞれ当該データをストローブ信号に基づいて取り込むフリップフロップと、選択信号に応じてストローブ信号とクロックを選択して出力する選択手段と、前記選択手段の選択するストローブ信号またはクロックが入力され遅延値が可変である第1遅延素子と第2遅延素子と、当該第1遅延素子と当該第2遅延素子の出力の位相を比較する位相比較手段と、当該位相比較手段の比較結果に基づいて前記第2遅延素子の遅延値を制御する遅延制御手段と、を備え、前記選択手段が前記ストローブ信号を選択しているとき、前記第2遅延素子が当該ストローブ信号を前記遅延値だけ遅延させて前記フリップフロップに出力する遅延制御装置であって、
    入力された前記データを、入力された遅延値だけ遅延させて前記フリップフロップに出力するデータ遅延素子と、
    前記クロックの1周期分の遅延値及び入力されたデータ遅延設定値に基づいて前記データ遅延素子に対する前記遅延値を算出して出力するデータ遅延設定値算出部と、
    を備え、
    前記選択手段が前記クロックを選択すると、当該クロックの前記第1遅延素子と前記第2遅延素子の遅延出力を前記位相比較手段で比較し、前記遅延制御手段が、当該位相比較手段の比較結果に基づいて前記第2遅延素子の遅延値を制御することを特徴とする遅延制御装置。
  2. 前記遅延制御装置は、前記第2遅延素子の出力が、1つのバッファまたは複数のバッファのツリー構造を通して、前記位相比較手段及び前記フリップフロップに入力されていることを特徴とする請求項1記載の遅延制御装置。
  3. 前記遅延制御装置は、前記フリップフロップの前記データの入力端子に、少なくとも前記第1遅延素子及び第2遅延素子に設定可能な遅延値のうち最小の遅延値を有するデータ遅延素子が接続されていることを特徴とする請求項1または請求項2記載の遅延制御装置。
  4. 前記遅延制御装置は、前記クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出して前記第1遅延素子に設定するとともに、前記遅延制御手段に出力する遅延値算出手段を、さらに備え、前記遅延制御手段が、当該遅延値算出手段から入力される遅延値と前記位相比較手段の比較結果に基づいて前記第2遅延素子の遅延値を制御することを特徴とする請求項1から請求項3のいずれかに記載の遅延制御装置。
  5. データの数に対応する数だけ設けられそれぞれ当該データをストローブ信号に基づいて取り込むフリップフロップと、選択信号に応じてストローブ信号とクロックを選択して出力する選択手段と、前記選択手段の選択するストローブ信号またはクロックが入力され遅延値が可変である第1遅延素子と第2遅延素子と、第1遅延素子と第2遅延素子の出力の位相を比較する位相比較手段と、前記クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出して前記第1遅延素子に設定する遅延値算出手段と、前記位相比較手段の比較結果に基づいて前記第2遅延素子の遅延値を制御する遅延制御手段と、を備え、前記選択手段が前記ストローブ信号を選択しているとき、前記第2遅延素子が当該ストローブ信号を前記遅延値だけ遅延させて前記フリップフロップに出力する遅延制御装置であって、
    入力された前記データを、入力された遅延値だけ遅延させて前記フリップフロップに出力するデータ遅延素子と、
    前記クロックの1周期分の遅延値及び入力されたデータ遅延設定値に基づいて前記データ遅延素子に対する前記遅延値を算出して出力するデータ遅延設定値算出部と、
    を備え、
    前記選択手段が前記クロックを選択すると、当該クロックを前記第1遅延素子が前記遅延値算出手段の算出する遅延値で遅延させた遅延出力と当該クロックを前記第2遅延素子が遅延させた遅延出力とを前記位相比較手段で比較し、前記遅延制御手段が、当該位相比較手段の比較結果に基づいて前記第2遅延素子の遅延値を制御することを特徴とする遅延制御装置。
  6. 前記遅延制御装置は、前記第2遅延素子の出力が、1つのバッファまたは複数のバッファのツリー構造を通して、前記位相比較手段及び前記フリップフロップに入力されていることを特徴とする請求項5記載の遅延制御装置。
  7. 前記遅延制御装置は、前記フリップフロップの前記データの入力端子に、少なくとも前記第1遅延素子及び第2遅延素子に設定可能な遅延値のうち最小の遅延値を有するデータ遅延素子が接続されていることを特徴とする請求項5または請求項6記載の遅延制御装置。
  8. 前記遅延制御装置は、前記クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出する複数の遅延値算出手段を、さらに備え、当該1つの遅延値算出手段が、当該算出した遅延値を前記第1遅延素子に設定し、当該他の遅延値算出手段が、当該算出した遅延値を前記データ遅延素子に設定することを特徴とする請求項7記載の遅延制御装置。
  9. 前記遅延制御装置は、前記選択手段に入力される前記ストローブ信号を所定の遅延値で遅延させるストローブ遅延素子と、前記クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出する複数の遅延値算出手段を、さらに備え、当該遅延値算出手段の1つが、当該算出した遅延値を前記ストローブ遅延素子に設定することを特徴とする請求項5から請求項8のいずれかに記載の遅延制御装置。
  10. 前記遅延制御装置は、少なくとも前記データ遅延素子に設定可能な遅延値のうち最小の遅延値を有するとともに当該データ遅延素子に入力されるデータを遅延させる第2データ遅延素子を前記データ遅延素子と同じ数だけ備えていることを特徴とする請求項9記載の遅延制御装置。
  11. 前記遅延制御装置は、前記クロックの整数倍の周期に相当する遅延値と当該遅延値を増減させる量を示す遅延設定値に基づいて遅延値を算出する複数の遅延値算出手段を、さらに備え、当該遅延値算出手段の1つが、当該算出した遅延値を前記第2データ遅延素子に設定することを特徴とする請求項10記載の遅延制御装置。
  12. 前記遅延制御装置は、前記選択手段に、前記ストローブ信号と補正信号制御回路の出力する補正信号が入力され、当該補正信号制御回路が、所定周期でハイとローに変化する補正信号を出力し、前記選択手段が、前記選択信号に応じて当該ストローブ信号と当該補正信号を選択して出力することを特徴とする請求項1から請求項11のいずれかに記載の遅延制御装置。
  13. 前記遅延制御装置は、前記遅延値算出手段の前記遅延設定値が、外部の制御手段から設定可能であることを特徴とする請求項4、請求項8、請求項9、請求項11のいずれかに記載の遅延制御装置。
  14. 前記遅延制御装置は、前記遅延値算出手段の前記遅延設定値が、外部の不揮発性メモリに格納されている当該遅延設定値を外部の制御手段が読み出して設定可能であることを特徴とする請求項4、請求項8、請求項9、請求項11のいずれかに記載の遅延制御装置。
  15. 前記遅延制御装置は、記憶手段としてのDDR−SDRAMに接続され、当該DDR−SDRAMへのアクセス時のデータ及びストローブ信号の遅延制御を行うことを特徴とする請求項1から請求項14のいずれかに記載の遅延制御装置。
JP2004189213A 2004-06-28 2004-06-28 遅延制御装置 Expired - Fee Related JP4416580B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004189213A JP4416580B2 (ja) 2004-06-28 2004-06-28 遅延制御装置
US11/167,627 US7161854B2 (en) 2004-06-28 2005-06-27 Jitter and skew suppressing delay control apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004189213A JP4416580B2 (ja) 2004-06-28 2004-06-28 遅延制御装置

Publications (2)

Publication Number Publication Date
JP2006013990A JP2006013990A (ja) 2006-01-12
JP4416580B2 true JP4416580B2 (ja) 2010-02-17

Family

ID=35505505

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004189213A Expired - Fee Related JP4416580B2 (ja) 2004-06-28 2004-06-28 遅延制御装置

Country Status (2)

Country Link
US (1) US7161854B2 (ja)
JP (1) JP4416580B2 (ja)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4583088B2 (ja) * 2004-06-29 2010-11-17 株式会社リコー ストローブ信号遅延装置及び同装置を備える半導体装置
US7692598B1 (en) 2005-10-26 2010-04-06 Niitek, Inc. Method and apparatus for transmitting and receiving time-domain radar signals
JP4795032B2 (ja) * 2006-01-30 2011-10-19 エルピーダメモリ株式会社 タイミング調整回路及び半導体装置
JP5005928B2 (ja) * 2006-02-21 2012-08-22 株式会社リコー インタフェース回路及びそのインタフェース回路を備えた記憶制御装置
JP5013768B2 (ja) 2006-08-03 2012-08-29 ルネサスエレクトロニクス株式会社 インターフェイス回路
JP4976086B2 (ja) * 2006-09-14 2012-07-18 株式会社リコー 昇降圧dc−dcコンバータ
JP4959264B2 (ja) * 2006-09-15 2012-06-20 株式会社リコー メモリ制御装置
JP4836724B2 (ja) * 2006-09-15 2011-12-14 株式会社リコー 位相調整回路およびテスト装置
KR100771551B1 (ko) * 2006-10-17 2007-10-31 주식회사 하이닉스반도체 반도체 소자의 컬럼경로 제어신호 생성회로 및 컬럼경로제어신호 생성방법
CN101536310B (zh) * 2006-12-05 2012-04-25 富士通半导体股份有限公司 数字dll电路
US7649492B2 (en) * 2007-05-25 2010-01-19 Niitek, Inc. Systems and methods for providing delayed signals
AU2012247023A1 (en) * 2007-05-25 2012-11-29 Niitek, Inc. Systems and methods for providing delayed signals
US9316729B2 (en) 2007-05-25 2016-04-19 Niitek, Inc. Systems and methods for providing trigger timing
US7652619B1 (en) 2007-05-25 2010-01-26 Niitek, Inc. Systems and methods using multiple down-conversion ratios in acquisition windows
JP5113433B2 (ja) * 2007-06-11 2013-01-09 キヤノン株式会社 メモリコントローラ
US7675454B2 (en) 2007-09-07 2010-03-09 Niitek, Inc. System, method, and computer program product providing three-dimensional visualization of ground penetrating radar data
US8207885B2 (en) * 2007-09-19 2012-06-26 Niitek, Inc. Adjustable pulse width ground penetrating radar
JP5160856B2 (ja) * 2007-10-24 2013-03-13 ルネサスエレクトロニクス株式会社 Ddrメモリコントローラ及び半導体装置
JP2010171826A (ja) * 2009-01-23 2010-08-05 Ricoh Co Ltd メモリモジュールのコントローラ
JP5231289B2 (ja) 2009-03-02 2013-07-10 ルネサスエレクトロニクス株式会社 デューティ比補正回路及びデューティ比補正方法
JP5577776B2 (ja) 2010-03-17 2014-08-27 株式会社リコー メモリ制御装置及びマスクタイミング制御方法
KR20110121185A (ko) * 2010-04-30 2011-11-07 주식회사 하이닉스반도체 반도체 메모리 장치
US8645743B2 (en) * 2010-11-22 2014-02-04 Apple Inc. Mechanism for an efficient DLL training protocol during a frequency change
US8830783B2 (en) * 2011-01-03 2014-09-09 Arm Limited Improving read stability of a semiconductor memory
US8687441B2 (en) * 2011-04-13 2014-04-01 Himax Technologies Limited Method for searching optimum value of memory
TWI474334B (zh) * 2011-04-26 2015-02-21 Himax Tech Ltd 記憶體的最佳化數值搜尋方法
US8929164B2 (en) * 2012-03-05 2015-01-06 Micron Technology, Inc. Apparatuses and methods for adjustment of data strobe signals
US8976596B1 (en) * 2013-08-23 2015-03-10 Kabushiki Kaisha Toshiba Controller
US9148157B2 (en) 2014-01-30 2015-09-29 Sandisk Technologies Inc. Auto-phase synchronization in delay locked loops
JP6171066B1 (ja) * 2016-09-01 2017-07-26 ウィンボンド エレクトロニクス コーポレーション 半導体記憶装置
KR102520259B1 (ko) * 2018-03-09 2023-04-11 에스케이하이닉스 주식회사 반도체시스템
US10395702B1 (en) 2018-05-11 2019-08-27 Micron Technology, Inc. Memory device with a clocking mechanism
CN114553207B (zh) * 2022-03-02 2022-11-25 成都芯翼科技有限公司 一种低抖动接收器电路

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6570944B2 (en) * 2001-06-25 2003-05-27 Rambus Inc. Apparatus for data recovery in a synchronous chip-to-chip system
JP4181847B2 (ja) * 2002-10-25 2008-11-19 エルピーダメモリ株式会社 タイミング調整回路、半導体装置及びタイミング調整方法

Also Published As

Publication number Publication date
JP2006013990A (ja) 2006-01-12
US7161854B2 (en) 2007-01-09
US20050286320A1 (en) 2005-12-29

Similar Documents

Publication Publication Date Title
JP4416580B2 (ja) 遅延制御装置
JP5537568B2 (ja) 信号受信回路、メモリコントローラ、プロセッサ、コンピュータ及び位相制御方法
US7535270B2 (en) Semiconductor memory device
KR100910853B1 (ko) 반도체 메모리 장치 및 그 구동방법
KR20120030354A (ko) 메모리 시스템 내에서 쓰기 레벨링을 위한 시작 값들을 조정하는 방법
JP2010182149A (ja) メモリ制御装置、及びメモリ制御方法
US10146251B2 (en) Semiconductor device
JP4930593B2 (ja) データ転送装置およびデータ転送方法
US9058898B1 (en) Apparatus for reducing read latency by adjusting clock and read control signals timings to a memory device
US8514639B2 (en) Semiconductor memory device and method for operating the same
JP5005928B2 (ja) インタフェース回路及びそのインタフェース回路を備えた記憶制御装置
KR20190137947A (ko) 메모리 디바이스에서 일정한 dqs-dq 지연을 제공하기 위한 장치들 및 방법들
US7733129B2 (en) Method and circuit for generating memory clock signal
KR20120085824A (ko) 신호 복원 회로, 레이턴시 조정 회로, 메모리 컨트롤러, 프로세서, 컴퓨터, 신호 복원 방법, 및 레이턴시 조정 방법
JP2009043342A (ja) 半導体記憶装置
US20150146477A1 (en) Semiconductor device
JP5105978B2 (ja) 半導体メモリ装置
US8681575B2 (en) Semiconductor device
JP2004185608A (ja) データのラッチタイミング調整装置
JP4583088B2 (ja) ストローブ信号遅延装置及び同装置を備える半導体装置
JP2010079520A (ja) メモリモジュールのコントローラ及びメモリモジュールのコントローラの制御方法
JP2008225956A (ja) 半導体集積回路装置およびタイミング調整方法
KR100845784B1 (ko) 지연 고정 루프의 지연 장치
JP2005094597A (ja) 遅延制御装置
JP2007193658A (ja) 半導体装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060914

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20060926

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20060926

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080821

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081007

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090407

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090604

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: 20091117

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091124

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121204

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131204

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees