(57)【要約】  【課題】  目標遅延量に対する誤差を低減するデジタルＤＬＬ装置を提供することを目的とする。  【解決手段】  入力クロック信号に対して、クロック周期ＴをＮ等分するように遅延を与えるデジタルＤＬＬ装置であって、任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する第１可変遅延部２１ａ，２１ｂ，２１ｃ，２１ｄと、第２可変遅延部２２ａ，２２ｂ，２２ｃ，２２ｄと、入力クロック信号と、入力クロック信号が全ての第１可変遅延部と第２可変遅延部を経て遅延された信号との位相を比較する位相比較部１２と、位相比較結果に基づいて必要な全単位遅延バッファ数Ｓを算出し、ＳをＮで割った商Ｑをそれぞれの第１可変遅延部の単位遅延バッファ数とし、ＳをＮで割った余りＲをそれぞれの第２可変遅延部に割り振るように制御する遅延制御部２３とを備えた。  【選択図】  図１
2005286467.tif 000002
【特許請求の範囲】
【請求項１】
入力クロック信号に対して、クロック周期ＴをＮ等分（Ｎは整数）するように遅延を与えるデジタルＤＬＬ装置であって、
任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成するＮ個の可変遅延部と、
前記入力クロック信号と、前記入力クロック信号が全ての前記可変遅延部を経て遅延された信号との位相を比較し、位相比較結果を出力する位相比較部と、
前記位相比較結果に基づいて必要な全単位遅延バッファ数を算出し、前記全単位遅延バッファ数をそれぞれの前記可変遅延部に割り振るように制御する遅延制御部と、
を備えてなるデジタルＤＬＬ装置。
【請求項２】
入力クロック信号に対して、クロック周期ＴをＮ等分（Ｎは整数）するように遅延を与えるデジタルＤＬＬ装置であって、
任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する、Ｎ個の第１可変遅延部と、
それぞれの前記第１可変遅延部の後段に接続され、任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する、Ｎ個の第２可変遅延部と、
前記入力クロック信号と、前記入力クロック信号が全ての前記第１可変遅延部と前記第２可変遅延部を経て遅延された信号との位相を比較し、位相比較結果を出力する位相比較部と、
前記位相比較結果に基づいて必要な全単位遅延バッファ数Ｓを算出し、ＳをＮで割った商Ｑをそれぞれの前記第１可変遅延部の単位遅延バッファ数とし、ＳをＮで割った余りＲを前記第２可変遅延部の合計の単位遅延バッファ数とし、Ｒをそれぞれの前記第２可変遅延部に割り振るように制御する遅延制御部と、
を備えてなるデジタルＤＬＬ装置。
【請求項３】
請求項２に記載のデジタルＤＬＬ装置であって、
Ｎが２のＭ乗（Ｍは整数）であるとき、前記遅延制御部は、Ｓを２進数で表し、下位Ｍビットにより表されるＲに基づいて前記第２可変遅延部を制御し、残りの上位ビットにより表されるＱに基づいて前記第１可変遅延部を制御することを特徴とするデジタルＤＬＬ装置。
【請求項４】
入力クロック信号に対して、クロック周期ＴをＮ等分（Ｎは整数）するように遅延を与えるデジタルＤＬＬ制御方法であって、
任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する、Ｎ個の第１可変遅延ステップと、
それぞれの前記第１可変遅延ステップの後段に接続され、任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する、Ｎ個の第２可変遅延ステップと、
前記入力クロック信号と、前記入力クロック信号が全ての前記第１可変遅延ステップと前記第２可変遅延ステップを経て遅延された信号との位相を比較し、位相比較結果を出力する位相比較ステップと、
前記位相比較結果に基づいて必要な全単位遅延バッファ数Ｓを算出し、ＳをＮで割った商Ｑをそれぞれの前記第１可変遅延ステップの単位遅延バッファ数とし、ＳをＮで割った余りＲを前記第２可変遅延ステップの合計の単位遅延バッファ数とし、Ｒをそれぞれの前記第２可変遅延ステップに割り振るように制御する遅延制御ステップと、
を備えてなるデジタルＤＬＬ制御方法。
【請求項５】
入力クロック信号に対して、クロック周期ＴをＮ等分（Ｎは整数）するように遅延を与えるデジタルＤＬＬ制御方法をコンピュータに実行させるデジタルＤＬＬ制御プログラムであって、
任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する、Ｎ個の第１可変遅延ステップと、
それぞれの前記第１可変遅延ステップの後段に接続され、任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する、Ｎ個の第２可変遅延ステップと、
前記入力クロック信号と、前記入力クロック信号が全ての前記第１可変遅延ステップと前記第２可変遅延ステップを経て遅延された信号との位相を比較し、位相比較結果を出力する位相比較ステップと、
前記位相比較結果に基づいて必要な全単位遅延バッファ数Ｓを算出し、ＳをＮで割った商Ｑをそれぞれの前記第１可変遅延ステップの単位遅延バッファ数とし、ＳをＮで割った余りＲを前記第２可変遅延ステップの合計の単位遅延バッファ数とし、Ｒをそれぞれの前記第２可変遅延ステップに割り振るように制御する遅延制御ステップと、
をコンピュータに実行させるデジタルＤＬＬ制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力されたクロック信号に対して、クロック周期を等分するように遅延を与えるデジタルＤＬＬ装置、デジタルＤＬＬ制御方法、デジタルＤＬＬ制御プログラムに関するものである。
【背景技術】
【０００２】
まず、ＤＬＬ装置を用いる例としてＤＤＲ（Double Data Rate）メモリやＤＤＲ２メモリに用いられるメモリインタフェイスについて説明する。図５は、ＤＤＲメモリインタフェイスにおけるＤＱＳ（読み出しデータストローブ）信号とＤＱ（読み出しデータ）信号のタイミングの一例を示すタイミングチャートである。ＤＱＳ信号はクロック周期Ｔを持つ。ＤＤＲメモリからＡＳＩＣへ渡されるＤＱＳ信号とＤＱ信号はその変化点の位相が一致しており、かつＤＱ信号はＴ／２毎に変化することから、正確にＤＱ信号のデータを読みとるためにはＤＱＳ信号にＴ／４の遅延を与える必要がある。このように、任意のクロック周期Ｔを正確に等分するように遅延を得るためにＤＬＬ（Delay Locked Loop）装置が用いられる。
【０００３】
次に、従来のＤＬＬ装置の構成について説明する。ここでは、クロック周期をＴ、クロック周期を等分する数をＮとするとき、Ｔ／Ｎの整数倍の遅延を得るＤＬＬ装置について説明する。例として、上述したＤＤＲメモリインタフェイスに用いられるような、Ｎが４であるＤＬＬ装置について説明する。
【０００４】
図６は、従来のＤＬＬ装置の構成の一例を示すブロック図である。このＤＬＬ装置は、直列に接続された４つの可変遅延部１ａ，１ｂ，１ｃ，１ｄ、位相比較部２、遅延制御部３を備える。それぞれの可変遅延部の出力である第１出力クロック信号はＴ／４、第２出力クロック信号は２Ｔ／４、第３出力クロック信号は３Ｔ／４、第４出力クロック信号は４Ｔ／４の遅延が与えられたクロック信号となる。
【０００５】
次に、従来のＤＬＬ装置の動作について説明する。可変遅延部１ａ，１ｂ，１ｃ，１ｄは、約Ｔ／４の遅延量を持ち、遅延制御部３からの制御信号により遅延量を調整することができる。位相比較部２は、外部から入力された入力クロック信号の位相と、第４出力クロック信号の位相を比較し、位相差情報として遅延制御部３へ出力する。遅延制御部３は、位相差情報に従って可変遅延部１ａ，１ｂ，１ｃ，１ｄの遅延量を決定し、遅延量を表す制御信号を全ての可変遅延部へ出力することにより、可変遅延部１ａ，１ｂ，１ｃ，１ｄの遅延量を一度に調整する。
【０００６】
ＤＬＬ装置にはアナログ方式とデジタル方式がある。アナログＤＬＬ装置は、遅延制御部３から可変遅延部１ａ，１ｂ，１ｃ，１ｄへの制御信号がアナログ量であり無段階に遅延量を調整することができるが、微妙な制御信号の変化が遅延量の変化につながるためノイズに弱い。一方、デジタルＤＬＬ装置は、単位遅延バッファを直列に複数接続したものを可変遅延部１ａ，１ｂ，１ｃ，１ｄとし、単位遅延バッファ段数を調整することにより遅延量を調整するため、飛び飛びの遅延量しか得ることができないが、制御信号がデジタル量であるためノイズに強い。そのため、メモリインタフェイス用のＤＬＬ装置としては、デジタルＤＬＬ装置が用いられている。
【０００７】
図７は、従来のデジタルＤＬＬ装置の構成の一例を示すブロック図である。このデジタルＤＬＬ装置は、直列に接続された４つの可変遅延部１１ａ，１１ｂ，１１ｃ，１１ｄ、位相比較部１２、遅延制御部１３を備える。可変遅延部１１ａ，１１ｂ，１１ｃ，１１ｄは複数の単位遅延バッファを直列に接続したものであり、遅延制御部１３からの制御信号に従って、接続する単位遅延バッファの段数を変化させる。図７の可変遅延部１１ａ，１１ｂ，１１ｃ，１１ｄにおいて、接続している単位遅延バッファ１５を黒い正方形で表し、接続していない単位遅延バッファ１５ａを白い正方形で表している。
【０００８】
位相比較部１２は、位相差情報として＋１，０，−１のいずれかを出力する。入力クロック信号の位相に対して第４出力クロック信号の位相が進んでいる場合、位相差情報が＋１とする。入力クロック信号の位相と第４出力クロック信号の位相が一致している場合、位相差情報が０とする。入力クロック信号の位相に対して第４出力クロック信号の出力の位相が遅れている場合、位相差情報が−１とする。
【０００９】
遅延制御部１３は位相比較部１２からの位相差情報に従って、可変遅延部１１ａ，１１ｂ，１１ｃ，１１ｄにおける単位遅延バッファの段数を決定し、制御信号として全ての可変遅延部へ出力する。位相差情報が＋１の場合、全ての可変遅延部の単位遅延バッファの段数を１増加させる。位相差情報が０の場合、全ての可変遅延部の単位遅延バッファの段数を変化させない。位相差情報が−１の場合、全ての可変遅延部の単位遅延バッファの段数を１減少させる。
【００１０】
ここで、実際のデジタルＤＬＬ装置における単位遅延バッファの遅延量は、例えば０．１３μｍＣＭＯＳプロセスを用いる場合、電源電圧や動作温度によって変動するが３０〜８０ｐｓ（ピコ秒）程度となる。
【００１１】
なお、本発明の関連ある従来技術として、例えば、下記に示す特許文献１〜４が知られている。
【特許文献１】特開平１１−８６５４５号公報  （第４−９頁、第１図）
【特許文献２】特開平１１−８８１５３号公報
【特許文献３】特開２００３−１３３９４８号公報
【特許文献４】特開２００１−２８５２６６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかしながら、従来のデジタルＤＬＬ装置では、クロック周期Ｔを等分するために遅延制御部１３から全ての可変遅延部へ同一の制御信号が出力されていた。上述した例のように、Ｔ／４の整数倍の遅延を得るデジタルＤＬＬ装置の場合、単位遅延バッファの遅延量の４倍がデジタルＤＬＬ装置全体の調整の単位となってしまう。具体例として、単位遅延バッファの遅延量が７５ｐｓである場合を考える。このときデジタルＤＬＬ装置全体の遅延量の調整の最小単位は、３００ｐｓとなる。
【００１３】
さらに、４００ＭｂｐｓＤＤＲに適用する場合、すなわちデジタルＤＬＬ装置全体の目標遅延量であるクロック周期Ｔを５０００ｐｓとする場合を考える。このとき、７５ｐｓの単位遅延バッファをデジタルＤＬＬ装置全体で５０００／７５＝６６．７個使用すれば、目標遅延量Ｔを得ることになる。
【００１４】
しかし実際には、デジタルＤＬＬ装置全体の単位遅延バッファの段数は必ず４の倍数となる。従って、遅延制御部１３が制御を開始してから十分時間が経過すると、デジタルＤＬＬ装置全体の単位遅延バッファの段数は６４個と６８個の間を行き来する。このとき、第１出力クロック信号に用いる単位遅延バッファの段数は６４個／４＝１６個と６８個／４＝１７個の間を行き来することにより、第１出力クロック信号の遅延量は７５ｐｓ×１６個＝１２００ｐｓと７５ｐｓ×１７個＝１２７５ｐｓの間を行き来する。第１出力クロック信号の遅延量において目標遅延量Ｔ／４＝１２５０ｐｓと比較すると、誤差は最大で５０ｐｓとなる。さらに、第４出力クロック信号の遅延量は、７５ｐｓ×６４個＝４８００ｐｓと７５ｐｓ×６８個＝５１００ｐｓの間を行き来することから、誤差は最大で２００ｐｓとなる。
【００１５】
本発明は上述した問題点を解決するためになされたものであり、目標遅延量に対する誤差を低減するデジタルＤＬＬ装置、デジタルＤＬＬ制御方法、デジタルＤＬＬ制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１６】
上述した課題を解決するため、本発明に係るデジタルＤＬＬ装置は、入力クロック信号に対して、クロック周期ＴをＮ等分（Ｎは整数）するように遅延を与えるデジタルＤＬＬ装置であって、任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成するＮ個の可変遅延部と、前記入力クロック信号と、前記入力クロック信号が全ての前記可変遅延部を経て遅延された信号との位相を比較し、位相比較結果を出力する位相比較部と、前記位相比較結果に基づいて必要な全単位遅延バッファ数を算出し、前記全単位遅延バッファ数をそれぞれの前記可変遅延部に割り振るように制御する遅延制御部とを備えてなるものである。
【００１７】
また、本発明に係るデジタルＤＬＬ装置は、入力クロック信号に対して、クロック周期ＴをＮ等分（Ｎは整数）するように遅延を与えるデジタルＤＬＬ装置であって、任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する、Ｎ個の第１可変遅延部と、それぞれの前記第１可変遅延部の後段に接続され、任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する、Ｎ個の第２可変遅延部と、前記入力クロック信号と、前記入力クロック信号が全ての前記第１可変遅延部と前記第２可変遅延部を経て遅延された信号との位相を比較し、位相比較結果を出力する位相比較部と、前記位相比較結果に基づいて必要な全単位遅延バッファ数Ｓを算出し、ＳをＮで割った商Ｑをそれぞれの前記第１可変遅延部の単位遅延バッファ数とし、ＳをＮで割った余りＲを前記第２可変遅延部の合計の単位遅延バッファ数とし、Ｒをそれぞれの前記第２可変遅延部に割り振るように制御する遅延制御部とを備えてなるものである。
【００１８】
また、本発明に係るデジタルＤＬＬ装置において、Ｎが２のＭ乗（Ｍは整数）であるとき、前記遅延制御部は、Ｓを２進数で表し、下位Ｍビットにより表されるＲに基づいて前記第２可変遅延部を制御し、残りの上位ビットにより表されるＱに基づいて前記第１可変遅延部を制御することを特徴とするものである。
【００１９】
また、本発明に係るデジタルＤＬＬ制御方法は、入力クロック信号に対して、クロック周期ＴをＮ等分（Ｎは整数）するように遅延を与えるデジタルＤＬＬ制御方法であって、任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成するＮ個の可変遅延ステップと、前記入力クロック信号と、前記入力クロック信号が全ての前記可変遅延ステップを経て遅延された信号との位相を比較し、位相比較結果を出力する位相比較ステップと、前記位相比較結果に基づいて必要な全単位遅延バッファ数を算出し、前記全単位遅延バッファ数をそれぞれの前記可変遅延ステップに割り振るように制御する遅延制御ステップとを備えてなるものである。
【００２０】
また、本発明に係るデジタルＤＬＬ制御方法は、入力クロック信号に対して、クロック周期ＴをＮ等分（Ｎは整数）するように遅延を与えるデジタルＤＬＬ制御方法であって、任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する、Ｎ個の第１可変遅延ステップと、それぞれの前記第１可変遅延ステップの後段に接続され、任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する、Ｎ個の第２可変遅延ステップと、前記入力クロック信号と、前記入力クロック信号が全ての前記第１可変遅延ステップと前記第２可変遅延ステップを経て遅延された信号との位相を比較し、位相比較結果を出力する位相比較ステップと、前記位相比較結果に基づいて必要な全単位遅延バッファ数Ｓを算出し、ＳをＮで割った商Ｑをそれぞれの前記第１可変遅延ステップの単位遅延バッファ数とし、ＳをＮで割った余りＲを前記第２可変遅延ステップの合計の単位遅延バッファ数とし、Ｒをそれぞれの前記第２可変遅延ステップに割り振るように制御する遅延制御ステップとを備えてなるものである。
【００２１】
また、本発明に係るデジタルＤＬＬ制御プログラムは、入力クロック信号に対して、クロック周期ＴをＮ等分（Ｎは整数）するように遅延を与えるデジタルＤＬＬ制御方法をコンピュータに実行させるデジタルＤＬＬ制御プログラムであって、任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成するＮ個の可変遅延ステップと、前記入力クロック信号と、前記入力クロック信号が全ての前記可変遅延ステップを経て遅延された信号との位相を比較し、位相比較結果を出力する位相比較ステップと、前記位相比較結果に基づいて必要な全単位遅延バッファ数を算出し、前記全単位遅延バッファ数をそれぞれの前記可変遅延ステップに割り振るように制御する遅延制御ステップとをコンピュータに実行させるものである。
【００２２】
また、本発明に係るデジタルＤＬＬ制御プログラムは、入力クロック信号に対して、クロック周期ＴをＮ等分（Ｎは整数）するように遅延を与えるデジタルＤＬＬ制御方法をコンピュータに実行させるデジタルＤＬＬ制御プログラムであって、任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する、Ｎ個の第１可変遅延ステップと、それぞれの前記第１可変遅延ステップの後段に接続され、任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する、Ｎ個の第２可変遅延ステップと、前記入力クロック信号と、前記入力クロック信号が全ての前記第１可変遅延ステップと前記第２可変遅延ステップを経て遅延された信号との位相を比較し、位相比較結果を出力する位相比較ステップと、前記位相比較結果に基づいて必要な全単位遅延バッファ数Ｓを算出し、ＳをＮで割った商Ｑをそれぞれの前記第１可変遅延ステップの単位遅延バッファ数とし、ＳをＮで割った余りＲを前記第２可変遅延ステップの合計の単位遅延バッファ数とし、Ｒをそれぞれの前記第２可変遅延ステップに割り振るように制御する遅延制御ステップとをコンピュータに実行させるものである。なお、このプログラムはコンピュータにより読取可能な媒体に記憶されることができ、この読取可能な媒体には、ＣＤ−ＲＯＭやフレキシブルディスク、ＤＶＤディスク、光磁気ディスク、ＩＣカード等の可搬型記憶媒体や、コンピュータプログラムを保持するデータベース、或いは、他のコンピュータ並びにそのデータベースや、更に回線上の伝送媒体をも含まれる。
【発明の効果】
【００２３】
本発明によれば、デジタルＤＬＬ装置における遅延量の精度の向上を、わずかな回路規模の増加と容易な制御方法により実現することができる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明の実施の形態について図面を参照しつつ説明する。本実施の形態では従来と同様に、クロック周期をＴ、クロック周期を等分する数をＮとするとき、Ｔ／Ｎの整数倍の遅延を得るデジタルＤＬＬ装置について説明する。例として、Ｎ＝４の場合について説明する。
【００２５】
実施の形態１．
まず、実施の形態１に係るデジタルＤＬＬ装置の構成について説明する。図１は、実施の形態１に係るデジタルＤＬＬ装置の構成の一例を示すブロック図である。図１において、図７と同一符号は図７に示された対象と同一又は相当物を示しており、ここでの説明を省略する。実施の形態１では、遅延制御部１３の代わりに遅延制御部２３を備える。また、可変遅延部１１ａの代わりに第１可変遅延部２１ａと第２可変遅延部２２ａ、可変遅延部１１ｂの代わりに第１可変遅延部２１ｂと第２可変遅延部２２ｂ、可変遅延部１１ｃの代わりに第１可変遅延部２１ｃと第２可変遅延部２２ｃ、可変遅延部１１ｄの代わりに第１可変遅延部２１ｄと第２可変遅延部２２ｄを備える。
【００２６】
第１可変遅延部２１ａ，２１ｂ，２１ｃ，２１ｄと第２可変遅延部２２ａ，２２ｂ，２２ｃ，２２ｄは、少なくとも１つの単位遅延バッファを直列に接続したものであり、遅延制御部２３からの制御信号に従って、接続する単位遅延バッファの段数を変化させる。図１の第１可変遅延部２１ａ，２１ｂ，２１ｃ，２１ｄと第２可変遅延部２２ａ，２２ｂ，２２ｃ，２２ｄにおいて、接続している単位遅延バッファ１５を黒い正方形で表し、接続していない単位遅延バッファ１５ａを白い正方形で表している。
【００２７】
次に、実施の形態１に係るデジタルＤＬＬ装置の動作について説明する。遅延制御部２３は位相比較部１２からの位相差情報に従って、デジタルＤＬＬ装置全体の単位遅延バッファの段数の合計Ｓに位相差情報を加算し、新たなＳを決定する。つまり、位相差情報が＋１の場合、Ｓを１増加させる。位相差情報が０の場合、Ｓを変化させない。位相差情報が−１の場合、Ｓを１減少させる。
【００２８】
次に、遅延制御部２３はＳに応じて、それぞれの第１可変遅延部の単位遅延バッファの段数Ｑと、第２可変遅延部の単位遅延バッファの段数の合計Ｒを決定する。ＱはＳをＮで割った商、ＲはＳをＮで割った余り、すなわち、Ｓ＝Ｑ×Ｎ＋Ｒとする。
【００２９】
次に、遅延制御部２３はテーブルを参照し、単位遅延バッファの段数の合計がＲになるように、それぞれの第２可変遅延部２２ａ，２２ｂ，２２ｃ，２２ｄに単位遅延バッファの段数を割り当てる。図２は、第２可変遅延部に対する単位遅延バッファ数の割り当てのテーブルの一例を示す表である。この例では、第２可変遅延部２２ａ，２２ｂ，２２ｃ，２２ｄにそれぞれの単位遅延バッファの段数であるＥ１，Ｅ２，Ｅ３，Ｅ４をＲに応じて割り当てる、即ち、Ｅ１＋Ｅ２＋Ｅ３＋Ｅ４＝Ｒとなるように割り当てる。
【００３０】
次に、遅延制御部２３は、全ての第１可変遅延部へ単位遅延バッファの段数Ｑを制御信号として出力するとともに、第２可変遅延部２２ａ，２２ｂ，２２ｃ，２２ｄへそれぞれの単位遅延バッファの段数Ｅ１、Ｅ２、Ｅ３、Ｅ４を制御信号として出力する。第１可変遅延部２１ａ，２１ｂ，２１ｃ，２１ｄと第２可変遅延部２２ａ，２２ｂ，２２ｃ，２２ｄは制御信号に従って単位遅延バッファの段数を変化させる。
【００３１】
次に、遅延量の具体例について説明する。上述した従来のデジタルＤＬＬ装置の具体例と同様に、デジタルＤＬＬ装置全体の目標遅延量Ｔを５０００ｐｓとし、単位遅延バッファの遅延量が７５ｐｓである場合を考える。このとき、７５ｐｓの単位遅延バッファをデジタルＤＬＬ装置全体で５０００／７５＝６６．７個使用すれば、目標遅延量Ｔを得ることになる。
【００３２】
実施の形態１においては、デジタルＤＬＬ装置全体の単位遅延バッファの段数Ｓは１個単位で制御することができるため、遅延制御部２３が制御を開始してから十分時間が経過すると、Ｓ＝６６個（１６個×４＋２個）とＳ＝６７個（１６個×４＋３個）の間を行き来することになる。このとき、第１可変遅延部１個の単位遅延バッファの段数Ｑと第２可変遅延部の単位遅延バッファの段数の合計Ｒは、Ｑ＝１６個かつＲ＝２個（Ｅ１＝１個、Ｅ２＝０個、Ｅ３＝１個、Ｅ４＝０個）と、Ｑ＝１６個かつＲ＝３個（Ｅ１＝１個、Ｅ２＝１個、Ｅ３＝１個、Ｅ４＝０個）の間を行き来するが、第１出力クロック信号に用いる単位遅延バッファの段数は安定して、第１可変遅延部２１ａのＱ＝１６個、第２可変遅延部２２ａのＥ１＝１個となる。従って、第１出力クロック信号の遅延量は安定して７５ｐｓ×（１６個＋１個）＝１２７５ｐｓとなる。第１出力クロック信号の遅延量において目標遅延量Ｔ／４＝１２５０ｐｓと比較すると、誤差は安定して２５ｐｓに抑えられる。さらに、第４出力クロック信号の遅延量は、７５ｐｓ×６６個＝４９５０ｐｓと７５ｐｓ×６７個＝５０２５ｐｓの間を行き来することから、誤差は最大で５０ｐｓに抑えられる。
【００３３】
次に、制御信号の生成について詳細に説明する。特に、Ｍを整数とするとき、Ｎが２のＭ乗である場合について説明する。Ｓの値を２進数で表すとき、下位ＭビットはＲを表し、このＲを用いてテーブルを参照し、第２可変遅延部２２ａ，２２ｂ，２２ｃ，２２ｄの制御を行う。残りの上位ビットはＱを表し、このＱを用いて第１可変遅延部２１ａ，２１ｂ，２１ｃ，２１ｄの制御を行う。
【００３４】
上述したＮ＝４の場合、Ｍ＝２であるから、下位２ビットがＲを表し、残りの上位ビットがＱを表す。図３は、制御信号の生成の一例を示す図である。図３では、Ｓ＝６６の場合を表しており、Ｒは２進数で１０、１０進数で２を表している。また、Ｑは２進数で１００００、１０進数で１６を表している。従って、第１可変遅延部２１ａ，２１ｂ，２１ｃ，２１ｄの単位遅延バッファの段数Ｑ＝１６個、第２可変遅延部２２ａ，２２ｂ，２２ｃ，２２ｄの単位遅延バッファの段数は図２によりＥ１＝１個、Ｅ２＝０個、Ｅ３＝１個、Ｅ４＝０個となる。
【００３５】
実施の形態２．
実施の形態２では、実施の形態１における第２可変遅延部２２ａ，２２ｂ，２２ｃ，２２ｄのように、個々の単位バッファの段数を制御できる可変遅延部３１ａ，３１ｂ，３１ｃ，３１ｄだけを備えたものである。
【００３６】
まず、実施の形態２に係るデジタルＤＬＬ装置の構成について説明する。図４は、実施の形態２に係るデジタルＤＬＬ装置の構成の一例を示すブロック図である。図４において、図７と同一符号は図７に示された対象と同一又は相当物を示しており、ここでの説明を省略する。実施の形態２では、遅延制御部１３の代わりに遅延制御部３３を備える。また、可変遅延部１１ａの代わりに可変遅延部３１ａ、可変遅延部１１ｂの代わりに可変遅延部３１ｂ、可変遅延部１１ｃの代わりに可変遅延部３１ｃ、可変遅延部１１ｄの代わりに可変遅延部３１ｄを備える。
【００３７】
可変遅延部３１ａ，３１ｂ，３１ｃ，３１ｄは、少なくとも１つの単位遅延バッファを直列に接続したものであり、遅延制御部３３からの制御信号に従って、接続する単位遅延バッファの段数を変化させる。図４の可変遅延部３１ａ，３１ｂ，３１ｃ，３１ｄにおいて、接続している単位遅延バッファ１５を黒い正方形で表し、接続していない単位遅延バッファ１５ａを白い正方形で表している。
【００３８】
次に、実施の形態２に係るデジタルＤＬＬ装置の動作について説明する。実施の形態１と同様に、遅延制御部３３は位相比較部１２からの位相差情報に従って、デジタルＤＬＬ装置全体の単位遅延バッファの段数の合計Ｓに位相差情報を加算し、新たなＳを決定する。
【００３９】
次に、遅延制御部３３はテーブルを参照し、単位遅延バッファの段数の合計がＳになるように、可変遅延部３１ａ，３１ｂ，３１ｃ，３１ｄにそれぞれの単位遅延バッファの段数であるＦ１，Ｆ２，Ｆ３，Ｆ４をＳに応じて割り当てる、即ち、Ｆ１＋Ｆ２＋Ｆ３＋Ｆ４＝Ｓとなるように割り当てる。次に、遅延制御部３３は、可変遅延部３１ａ，３１ｂ，３１ｃ，３１ｄへそれぞれの単位遅延バッファの段数Ｆ１、Ｆ２、Ｆ３、Ｆ４を制御信号として出力する。可変遅延部は制御信号に従って単位遅延バッファの段数を変化させる。
【００４０】
次に、遅延量の具体例について説明する。実施の形態１の具体例と同様に、デジタルＤＬＬ装置全体の目標遅延量Ｔを５０００ｐｓとし、単位遅延バッファの遅延量が７５ｐｓである場合を考える。
【００４１】
実施の形態２においても、デジタルＤＬＬ装置全体の単位遅延バッファの段数Ｓは１個単位で制御することができるため、遅延制御部３３が制御を開始してから十分時間が経過すると、Ｓ＝６６個とＳ＝６７個の間を行き来することになる。このとき、第１出力クロック信号に用いる単位遅延バッファの段数は安定して、１７個となる。従って、実施の形態１と同様、第１出力クロック信号の遅延量は安定して７５ｐｓ×１７個＝１２７５ｐｓとなる。第１出力クロック信号の遅延量において目標遅延量Ｔ／４＝１２５０ｐｓと比較すると、誤差は安定して２５ｐｓに抑えられる。さらに、第４出力クロック信号の遅延量は、７５ｐｓ×６６個＝４９５０ｐｓと７５ｐｓ×６７個＝５０２５ｐｓの間を行き来することから、誤差は最大で５０ｐｓに抑えられる。
【００４２】
以上に詳述した本発明は、ハードウェアのみで構成することもできるし、コンピュータとソフトウェアにより構成することもでき、この場合にコンピュータにデジタルＤＬＬ方法を実行させるプログラムが本発明のデジタルＤＬＬ制御プログラムを提供する。
【００４３】
（付記１）  入力クロック信号に対して、クロック周期ＴをＮ等分（Ｎは整数）するように遅延を与えるデジタルＤＬＬ装置であって、
任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成するＮ個の可変遅延部と、
前記入力クロック信号と、前記入力クロック信号が全ての前記可変遅延部を経て遅延された信号との位相を比較し、位相比較結果を出力する位相比較部と、
前記位相比較結果に基づいて必要な全単位遅延バッファ数を算出し、前記全単位遅延バッファ数をそれぞれの前記可変遅延部に割り振るように制御する遅延制御部と、
を備えてなるデジタルＤＬＬ装置。
（付記２）  入力クロック信号に対して、クロック周期ＴをＮ等分（Ｎは整数）するように遅延を与えるデジタルＤＬＬ装置であって、
任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する、Ｎ個の第１可変遅延部と、
それぞれの前記第１可変遅延部の後段に接続され、任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する、Ｎ個の第２可変遅延部と、
前記入力クロック信号と、前記入力クロック信号が全ての前記第１可変遅延部と前記第２可変遅延部を経て遅延された信号との位相を比較し、位相比較結果を出力する位相比較部と、
前記位相比較結果に基づいて必要な全単位遅延バッファ数Ｓを算出し、ＳをＮで割った商Ｑをそれぞれの前記第１可変遅延部の単位遅延バッファ数とし、ＳをＮで割った余りＲを前記第２可変遅延部の合計の単位遅延バッファ数とし、Ｒをそれぞれの前記第２可変遅延部に割り振るように制御する遅延制御部と、
を備えてなるデジタルＤＬＬ装置。
（付記３）  付記２に記載のデジタルＤＬＬ装置であって、
Ｎが２のＭ乗（Ｍは整数）であるとき、前記遅延制御部は、Ｓを２進数で表し、下位Ｍビットにより表されるＲに基づいて前記第２可変遅延部を制御し、残りの上位ビットにより表されるＱに基づいて前記第１可変遅延部を制御することを特徴とするデジタルＤＬＬ装置。
（付記４）  入力クロック信号に対して、クロック周期ＴをＮ等分（Ｎは整数）するように遅延を与えるデジタルＤＬＬ制御方法であって、
任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成するＮ個の可変遅延ステップと、
前記入力クロック信号と、前記入力クロック信号が全ての前記可変遅延ステップを経て遅延された信号との位相を比較し、位相比較結果を出力する位相比較ステップと、
前記位相比較結果に基づいて必要な全単位遅延バッファ数を算出し、前記全単位遅延バッファ数をそれぞれの前記可変遅延ステップに割り振るように制御する遅延制御ステップと、
を備えてなるデジタルＤＬＬ制御方法。
（付記５）  入力クロック信号に対して、クロック周期ＴをＮ等分（Ｎは整数）するように遅延を与えるデジタルＤＬＬ制御方法であって、
任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する、Ｎ個の第１可変遅延ステップと、
それぞれの前記第１可変遅延ステップの後段に接続され、任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する、Ｎ個の第２可変遅延ステップと、
前記入力クロック信号と、前記入力クロック信号が全ての前記第１可変遅延ステップと前記第２可変遅延ステップを経て遅延された信号との位相を比較し、位相比較結果を出力する位相比較ステップと、
前記位相比較結果に基づいて必要な全単位遅延バッファ数Ｓを算出し、ＳをＮで割った商Ｑをそれぞれの前記第１可変遅延ステップの単位遅延バッファ数とし、ＳをＮで割った余りＲを前記第２可変遅延ステップの合計の単位遅延バッファ数とし、Ｒをそれぞれの前記第２可変遅延ステップに割り振るように制御する遅延制御ステップと、
を備えてなるデジタルＤＬＬ制御方法。
（付記６）  入力クロック信号に対して、クロック周期ＴをＮ等分（Ｎは整数）するように遅延を与えるデジタルＤＬＬ制御方法をコンピュータに実行させるデジタルＤＬＬ制御プログラムであって、
任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成するＮ個の可変遅延ステップと、
前記入力クロック信号と、前記入力クロック信号が全ての前記可変遅延ステップを経て遅延された信号との位相を比較し、位相比較結果を出力する位相比較ステップと、
前記位相比較結果に基づいて必要な全単位遅延バッファ数を算出し、前記全単位遅延バッファ数をそれぞれの前記可変遅延ステップに割り振るように制御する遅延制御ステップと、
をコンピュータに実行させるデジタルＤＬＬ制御プログラム。
（付記７）  入力クロック信号に対して、クロック周期ＴをＮ等分（Ｎは整数）するように遅延を与えるデジタルＤＬＬ制御方法をコンピュータに実行させるデジタルＤＬＬ制御プログラムであって、
任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する、Ｎ個の第１可変遅延ステップと、
それぞれの前記第１可変遅延ステップの後段に接続され、任意の数の単位遅延バッファを直列に接続することにより１つの遅延器を構成する、Ｎ個の第２可変遅延ステップと、
前記入力クロック信号と、前記入力クロック信号が全ての前記第１可変遅延ステップと前記第２可変遅延ステップを経て遅延された信号との位相を比較し、位相比較結果を出力する位相比較ステップと、
前記位相比較結果に基づいて必要な全単位遅延バッファ数Ｓを算出し、ＳをＮで割った商Ｑをそれぞれの前記第１可変遅延ステップの単位遅延バッファ数とし、ＳをＮで割った余りＲを前記第２可変遅延ステップの合計の単位遅延バッファ数とし、Ｒをそれぞれの前記第２可変遅延ステップに割り振るように制御する遅延制御ステップと、
をコンピュータに実行させるデジタルＤＬＬ制御プログラム。
【図面の簡単な説明】
【００４４】
【図１】本発明の実施の形態１に係るデジタルＤＬＬ装置の構成の一例を示すブロック図である。
【図２】第２可変遅延部に対する単位遅延バッファ数の割り当てのテーブルの一例を示す表である。
【図３】制御信号の生成の一例を示す図である。
【図４】本発明の実施の形態２に係るデジタルＤＬＬ装置の構成の一例を示すブロック図である。
【図５】ＤＤＲメモリインタフェイスにおけるＤＱＳ信号とＤＱ信号のタイミングの一例を示すタイミングチャートである。
【図６】従来のＤＬＬ装置の構成の一例を示すブロック図である。
【図７】従来のデジタルＤＬＬ装置の構成の一例を示すブロック図である。
【符号の説明】
【００４５】
２１ａ，２１ｂ，２１ｃ，２１ｄ  第１可変遅延部、２２ａ，２２ｂ，２２ｃ，２２ｄ  第２可変遅延部、１２  位相比較部、２３，３３  遅延制御部、１５，１５ａ  単位遅延バッファ、３１ａ，３１ｂ，３１ｃ，３１ｄ  可変遅延部。
【図１】
2005286467.tif 000003
【図２】
2005286467.tif 000004
【図３】
2005286467.tif 000005
【図４】
2005286467.tif 000006
【図５】
2005286467.tif 000007
【図６】
2005286467.tif 000008
【図７】
2005286467.tif 000009