(57)【特許請求の範囲】
【請求項１】
第１のクロックと所定の位相の関係で同期する第２のクロックを生成するＤＬＬ回路において、
前記第１のクロックの開始のタイミングと同期したスタートパルスが供給される測定用遅延回路部を有し、前記第１のクロックの周期を前記測定用遅延回路部内での前記スタートパルスの遅延状態により測定し、当該測定結果を記憶し、測定した周期に基づいて遅延制御信号を生成するクロック周期測定部と、
前記第１のクロックを入力し、前記遅延制御信号により制御された遅延時間後に前記第２のクロックを出力する可変遅延回路とを有し、
前記クロック周期測定部は、前記第１のクロックの周期の測定を複数回行い、記憶された測定結果と現在の測定結果が一致する場合に、当該一致した測定結果に基づいて前記遅延制御信号を生成することを特徴とするＤＬＬ回路。
【請求項２】
請求項１において、
更に、前記クロック周期測定部が生成した前記遅延制御信号を保持する可変遅延ポインタ部を有することを特徴とするＤＬＬ回路。
【請求項３】
請求項１において、
前記クロック周期測定部は、前記測定用遅延回路部に加えて、
前記第１のクロックの終了のタイミングと同期したエンドパルスに応答して測定用遅延回路部の遅延状態をラッチする遅延状態ラッチ部と、
前記遅延状態ラッチ部がラッチした遅延測定結果を保持する遅延測定結果ラッチ部と、
遅延測定結果ラッチ部が記憶する遅延測定結果と、現在測定した遅延測定結果とを比較して一致したか否かを判定する一致判定部とを有し、
前記一致判定部で一致判定された遅延測定結果に基づいて前記遅延制御信号が生成されることを特徴とするＤＬＬ回路。
【請求項４】
請求項１または３において、
前記クロック周期測定部は、所定の複数回の測定までに、前記測定結果が一致しない場合は、最後に測定した結果に基づいて前記遅延制御信号を生成することを特徴とするＤＬＬ回路。
【請求項５】
請求項１または３において、
前記クロック周期測定部は、所定の複数回の測定までに、前記測定結果が一致しない場合は、前記複数回の測定結果のうち中間の測定値に基づいて前記遅延制御信号を生成することを特徴とするＤＬＬ回路。
【請求項６】
第１のクロックと所定の位相関係をもって同期してデータの出力をするメモリデバイスにおいて、
データを記憶するメモリセルアレイと、
前記メモリセルアレイから読み出されたデータを出力する出力バッファと、
前記基準クロックから前記出力バッファの出力タイミングを制御する出力クロックを生成するＤＬＬ回路とを有し、
該ＤＬＬ回路は、
前記第１のクロックの開始のタイミングと同期したスタートパルスが供給される測定用遅延回路部を有し、前記第１のクロックの周期を前記測定用遅延回路部内での前記スタートパルスの遅延状態により測定し、当該測定結果を記憶し、測定した周期に基づいて遅延制御信号を生成するクロック周期測定部と、
前記第１のクロックを入力し、前記遅延制御信号により制御された遅延時間後に前記第２のクロックを出力する可変遅延回路とを有し、
前記クロック周期測定部は、前記第１のクロックの周期の測定を複数回行い、記憶された測定結果と現在の測定結果が一致する場合に、当該一致した測定結果に基づいて前記遅延制御信号を生成することを特徴とするメモリデバイス。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、基準クロックと所定の位相関係をもって同期する出力クロックを生成するデレード・ロック・ループ（ＤＬＬ）回路に関し、ノイズなどの発生に伴い基準クロックに変動が発生しても短時間で正確な出力クロックの生成を可能にするＤＬＬ回路及びそれを内蔵するメモリデバイスに関する。
【０００２】
【従来の技術】
外部からの基準クロックに対して同期する内部クロックを生成するセルフ・タイミング・コントロール回路（ＳＴＣ回路）には、例えばＰＬＬ回路とＤＬＬ回路とがある。このＤＬＬ回路は、通常外部から供給される基準クロックと所定の位相関係をもって同期する出力クロックを生成する回路として知られている。
【０００３】
近年における高速のＤＲＡＭであるシンクロナスＤＲＡＭ（ＳＤＲＡＭ）等では、かかるＤＬＬ回路が内部に設けられ、メモリコントローラ側から供給される基準クロックに対して、所定の位相関係、例えば同位相或いは所定角度の位相ずれをもって同期する内部クロックが生成される。かかる内部クロックを利用して、読み出し出力のタイミングを制御することにより、メモリコントローラ側が供給する基準クロックに読み出し出力のタイミングが制御されて、ＳＤＲＡＭの高速動作を可能にする。
【０００４】
かかるＤＬＬ回路には、基準クロックに遅延を与えてレファレンスクロックを生成する可変遅延回路と、基準クロックとレファレンスクロックとの位相差を検出する位相比較回路と、その位相差がなくなる様に遅延制御信号を生成する遅延制御回路とを有するループ型のＤＬＬ回路がある。
【０００５】
かかる回路は、基準クロックとレファレンスクロックの位相が一致するロック状態を維持する様に制御されるので、ノイズの発生により基準クロックに多少の変動が発生しても、所定の長期間に供給される基準クロックに位相同期したクロックを生成することができる。但し、基準クロックが供給される毎に位相が一致するか否かの判定を行いながら遅延制御信号を生成するので、ロック状態に至るまでに長時間を要する。
【０００６】
一方、別のＤＬＬ回路として、基準クロックに遅延を与えて目的の出力クロックを生成する可変遅延回路を有し、基準クロックの周期を検出して、その周期の長さに見合った遅延制御信号を生成するクロック周期測定部を有する非ループ型のＤＬＬ回路がある。かかる回路は、上記のループ型のＤＬＬ回路の様に、ロック状態に至るまでの長時間を必要としない。
【０００７】
【発明が解決しようとする課題】
しかしながら、非ループ型のＤＬＬ回路は、供給される基準クロックの周期の長さを実際に測定するので、測定した時にたまたま発生したノイズの影響で基準クロックに変動が発生し、通常の周期と異なる周期が検出されると、誤った周期に基づく遅延制御信号が生成される。通常、消費電力を抑える目的で、かかるＤＬＬ回路における周期測定動作は、複数の基準クロックの期間毎に行われる。従って、誤った周期に基づく遅延制御信号が生成されると、その後から次の周期測定の時までは、誤ったタイミングの出力クロックが生成されることになる。
【０００８】
そこで、本発明の目的は、基準クロックの周期の長さを測定する非ループ型のＤＬＬ回路であって、より正確な周期の測定に基づく遅延制御信号の生成を可能にするＤＬＬ回路を提供することにある。
【０００９】
更に、本発明の目的は、短時間でロック状態の遅延制御信号を生成し、且つ誤差の少ない出力クロックを生成することができるＤＬＬ回路を提供することにある。
【００１０】
更に、本発明の目的は、上記のＤＬＬ回路を内蔵するメモリデバイスを提供することにある。
【００１１】
【課題を解決するための手段】
上記の目的を達成する為に、本発明のＤＬＬ回路は、基準クロックの周期を測定するクロック周期測定部と、遅延制御信号により遅延時間が制御される可変遅延回路とを有する。上記のクロック周期測定部は、基準クロックの周期の測定を複数回行い、複数の測定結果が一致する場合に、その一致した測定結果に基づいて遅延制御信号を生成する。可変遅延回路は、基準クロック、或いは基準クロックから所定の位相遅れた同一周期の内部クロック（第１のクロック）を供給され、前記の遅延制御信号に従ってその遅延時間が制御され、出力端子に前記基準クロックと所定の位相関係をもって同期する出力クロック（第２のクロック）を生成する。
【００１２】
上記の発明のＤＬＬ回路は、唯一一回の基準クロックの周期の測定に従って遅延制御信号を生成するのではなく、複数回の基準クロックの周期の測定を行い、測定結果が一致した時の測定周期に従って遅延制御信号を生成する。従って、本発明のＤＬＬ回路は、短時間で誤差の少ない遅延制御信号の生成を可能にする。
【００１３】
上記のクロック周期測定部は、より具体的には、前記第１のクロックの開始のタイミングと同期したスタートパルスが供給される測定用遅延回路部と、前記第１のクロックの終了のタイミングと同期したエンドパルスに応答して測定用遅延回路部の遅延状態をラッチする遅延状態ラッチ部と、前記遅延状態ラッチ部がラッチした遅延測定結果を保持する遅延測定結果ラッチ部と、遅延測定結果ラッチ部が記憶する遅延測定結果と、現在測定した遅延測定結果とを比較して一致したか否かを判定する一致判定部とを有する。そして、一致判定部にて一致したと判定された遅延測定結果に従って、遅延制御信号が可変遅延ポインタにラッチされる。
【００１４】
更に、別の発明によるＤＬＬ回路は、上記のＤＬＬ回路と同様に、基準クロックの周期の測定を複数回行い、測定結果が一致した場合の周期に従って遅延制御信号を生成すると共に、所定回数の測定を行っても測定結果が一致しない場合は、最後に測定した周期に従って遅延制御信号を生成する。この遅延制御信号に応答して、基準クロックと所定の位相関係を持つ出力クロックが、可変遅延制御回路により生成される。
【００１５】
かかる発明により、遅延制御信号の生成までの時間を短時間に制限することができると共に、その制限された短時間の間でより精度の高い遅延制御信号の生成を可能にする。
【００１６】
更に、別の発明によるＤＬＬ回路は、上記のＤＬＬ回路と同様に、基準クロックの周期の測定を複数回行い、測定結果が一致した場合の周期に従って遅延制御信号を生成すると共に、所定回数の測定を行っても測定結果が一致しない場合は、測定結果の中央値の周期に従って遅延制御信号を生成する。この遅延制御信号に応答して、基準クロックと所定の位相関係を持つ出力クロックが、可変遅延制御回路により生成される。
【００１７】
かかる発明により、遅延制御信号の生成までの時間を短時間に制限することができると共に、その制限された短時間の間でより精度の高い遅延制御信号の生成を可能にする。
【００１８】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して説明する。しかしながら、本発明の技術的範囲がその実施の形態に限定されるものではない。
【００１９】
図１は、本発明のＤＬＬ回路の全体構成図である。図１の例では、ＤＬＬ回路１０が、メモリセルアレイ３、センスアンプ４、コラムデコーダ５、ローデコーダ６を有するメモリデバイス内に内蔵されている。ＤＬＬ回路１０は、出力バッファ２の読み出しデータの出力のタイミングを制御する出力クロックＣＬＫ１を生成する。基準クロックＣＬＫは、入力バッファ１に供給され、入力バッファ１の遅延時間（Ｄ１）分遅れた内部クロックＣＬＫ０がＤＬＬ回路１０に供給される。
【００２０】
ＤＬＬ回路１０は、内部クロックＣＬＫ０が供給され制御パルス１１Ａを生成するＤＬＬ制御回路１１と、ＤＬＬ制御回路１１が生成する制御パルス１１Ａに応答して基準クロックＣＬＫの周期を測定するクロック周期測定部１２と、クロック周期測定部１２により測定された周期に従って生成される遅延制御信号１５をラッチする可変遅延ポインタ１３と、その遅延制御信号１５に基づいて遅延時間が制御される可変遅延回路１４とを有する。可変遅延回路１４は、内部クロックＣＬＫ０を供給され、遅延制御信号１５に応じた遅延を内部クロックＣＬＫ０に与え、基準クロックと所定の位相関係を持つ出力クロックＣＬＫ１を出力する。出力クロックＣＬＫ１は、出力バッファ２に与えられ、読み出しデータＤＡＴＡの出力ＤＱの出力タイミングを制御する。
【００２１】
図２は、ＤＬＬ回路の基準クロックＣＬＫと生成されるクロックＣＬＫ１との関係を示すタイミングチャート図である。基準クロックＣＬＫは、時刻ｔ１，ｔ２，ｔ３でそれぞれ立ち上がり、その周期を開始する。メモリデバイスの出力端子ＤＱは、読み出しデータＤＡＴＡを、基準クロックＣＬＫの立ち上がりエッジのタイミングｔ１，ｔ２，ｔ３に位相同期して出力する。そのために、ＤＬＬ回路１０内の可変遅延回路１４は、基準クロックＣＬＫの１周期の時間から、入力バッファ１の遅延時間Ｄ１と出力バッファ２の遅延時間Ｄ２とを除いた遅延時間Ｄ１４を生成する。その結果、図２に示される通り、入力バッファ１は、基準クロックＣＬＫから時間Ｄ１遅れの内部クロックＣＬＫ０を生成する。また、内部クロックＣＬＫ０が供給された可変遅延回路１４は、内部クロックＣＬＫ０に対して遅延時間Ｄ１４後に立ち上がる出力クロックＣＬＫ１を生成する。そして、出力クロックＣＬＫ１に応答して、出力バッファ２は、遅延時間Ｄ２後に、読み出しデータＤＡＴＡを出力端子ＤＱに出力する。
【００２２】
図２に示されたタイミングチャートから明らかな通り、ＤＬＬ回路１０は、基準クロックＣＬＫと同じ周期を持つ内部クロックＣＬＫ０の周期を測定し、その測定した周期から入力バッファ１の遅延時間Ｄ１と出力バッファ２の遅延時間Ｄ２とを除いた遅延時間Ｄ１４を生成することができる遅延制御信号１５を生成する。その結果、メモリデバイスの出力バッファ２は、基準クロックＣＬＫと完全に位相同期したタイミングで出力ＤＱを出力することができる。
【００２３】
ＤＬＬ回路１０により測定される基準クロックの周期は、１周期分に限定されず、例えば複数周期分を測定して、複数周期遅れで出力ＤＱのタイミングを制御することもできる。また、入力バッファ１の出力を基準クロックＣＬＫの所定角度遅延させる回路を追加することにより、出力ＤＱを基準クロックＣＬＫと所定の位相差をもって同期して出力させることもできる。
【００２４】
図３は、ＤＬＬ回路１０内のクロック周期測定部１２と可変遅延ポインタ１３とを示す概略回路図である。図３の下部に可変遅延ポインタ１３が設けられ、それ以外は、クロック周期測定部１２を構成する。クロック周期測定部１２には、図１に示した通り、ＤＬＬ制御回路１１からの制御パルス１１Ａとして、スタートパルスＳＴＡＲＴ、ストップパルスＳＴＯＰ、ゲートパルスＧＡＴＥが与えられる。
【００２５】
また、クロック周期測定部１２は、基準クロックＣＬＫまたは内部クロックＣＬＫ０の立ち上がりエッジと位相が一致するスタートパルスＳＴＡＲＴを与えられる測定用遅延回路１２１、スタートパルスＳＴＡＲＴの１周期後の立ち上がりエッジで立ち上がるストップパルスＳＴＯＰの応答して開くゲート部１２２、測定用遅延回路１２１での遅延状態を一時的にラッチする遅延状態ラッチ部１２３、そのラッチされた遅延測定結果をラッチする遅延測定結果ラッチ部１２６及び既に測定した遅延測定結果と現在測定した結果とが一致するか否かを判定する一致判定回路１２７とを有する。スイッチ１２５は、制御パルスＡ１及びＢ１にそれぞれ応答して、遅延状態ラッチ部１２３のラッチしている情報を一致判定回路１２７に供給し、及び遅延測定結果ラッチ部１２６に供給する。
【００２６】
更に、クロック周期測定部１２は、一致判定回路１２７により測定結果の一致が判定された時に生成されるゲートパルスＧＡＴＥに応答して開くゲート部１２８を有し、測定結果の一致が判定された時の遅延制御信号が、ゲート部１２８を経由して可変遅延ポインタ１３内にラッチされる。ノードＮ１１５〜Ｎ１ｍ５の信号が遅延制御信号１５に対応する。
【００２７】
測定用遅延回路１２１は、基本遅延回路２０とＮＡＮＤゲート２１，２３，２５，２９及びインバータ２２，２４，２６，３０からなる可変遅延回路とで構成される。内部クロックＣＬＫ０の立ち上がりのタイミングに同期した短いパルス幅のスタートパルスＳＴＡＲＴが、基本遅延回路２０と可変遅延回路を伝搬し、ノードＮ１１０、Ｎ１２０、Ｎ１３０を順にＨレベルにする。そして、内部クロックＣＬＫ０の次の立ち上がりタイミングに同期した短いパルス幅のストップパルスＳＴＯＰに応答して、ゲート１２２が閉じられる。ゲート部１２２は、Ｐチャネルトランジスタ３１，３３，３５，３９及びＮチャネルトランジスタ３２，３４，３６，４０からなるＣＭＯＳトランスファゲートで構成される。従って、ストップパルスＳＴＯＰに応答して、内部クロックＣＬＫ０の周期に応じた位置のノードＮ110,120,130...のいずれかのＨレベルとそれ以外のＬレベルが、遅延状態ラッチ部１２３にラッチされる。遅延状態ラッチ部１２３は、インバータ４１〜５０からなるラッチ回路と、インバータ５１〜５９と、ＮＯＲゲート５２〜６０を有し、Ｈレベルをラッチした最右側のノードに対応するＮＯＲゲートの出力Ｎ１１１，Ｎ１２１，Ｎ１３１〜Ｎ１ｍ１をＨレベルにする。
【００２８】
上記の基本遅延回路２０の遅延時間は、例えば、出力バッファ２の遅延時間Ｄ２に相当するように形成される。それにより、ゲート２１〜３０での遅延時間は、可変遅延回路１４の遅延時間Ｄ１４に対応することになる。
【００２９】
スイッチ１２５は、最初にノードＮ１１１〜Ｎ１ｍ１の信号を、一致判定回路１２７のＮＯＲゲート１２７−１〜１２７−ｍに供給し、現在測定した結果と既に測定してラッチ部１２６に記憶された結果とが一致するか否かを判定する。また、一致の判定がなされない場合は、スイッチ１２５は、ノードＮ１１１〜Ｎ１ｍ１の信号をラッチ部１２６に供給する。即ち、内部クロックＣＬＫ０の周期の長さに応じて、ノードＮ１１１〜Ｎ１ｍ１のいずれかがＨレベルとなり、その信号が次々に遅延測定結果ラッチ部１２６に供給される。そして、その後に再度同じノードＮ１１１〜Ｎ１ｍ１がＨレベルになると、そのノードに対応する一致判定回路１２７のＮＯＲゲートがノードＮ１１５〜Ｎ１ｍ５のいずれかをＨレベルにする。
【００３０】
一致判定回路１２７が一致を判定すると、図示しない一致検出信号が生成され、その信号に応答してＤＬＬ制御回路１１よりゲートパルスＧＡＴＥが出力され、ゲート部１２８のＣＭＯＳトランスファゲート６１〜７０が開かれる。その結果、ノードＮ１１５〜Ｎ１ｍ５に出力された遅延制御信号１５が可変遅延ポインタ１３にラッチされる。可変遅延ポインタ１３は、インバータ８１〜９０からなるラッチ回路と、インバータ９１〜９９を有する。測定結果が一致したノードに対応するノードＮ１１５〜Ｎ１ｍ５のいずれかがＨレベルとなり、それ以外は全てＬレベルとなる。この、遅延制御信号１５は、ノードＮ１１６〜Ｎ１ｍ６から可変遅延回路１４に供給される。可変遅延回路１４については、後述する。
【００３１】
図４は、図３に示したクロック周期測定部１２を利用したＤＬＬ回路の全体の動作のフローチャート図である。上記した通り、ＤＬＬ制御回路１１が内部クロックＣＬＫ０の立ち上がりに同期したスタートパルスＳＴＡＲＴと次の内部クロックＣＬＫ０の立ち上がりに同期したストップパルスＳＴＯＰとをクロック周期測定部１２に与え、クロック周期測定部１２は、その周期を測定する（Ｓ１）。この例では、Ｌ回測定して一致する測定遅延結果が得られない場合は、強制的に最後のＬ回目の測定結果を採用する。従って、最初の測定では、Ｌ回目に達していないので（Ｓ２）、パルスＡ１に応答して一致判定回路１２７が、以前に測定した結果と一致するか否かの判定を行う（Ｓ３）。一致しなければ、パルスＢ１に応答して、遅延測定結果ラッチ部１２６に測定結果をラッチする（Ｓ４）。そして、再度クロックの周期の測定を行う（Ｓ１）。
【００３２】
Ｌ回の周期の測定の間で、以前の測定結果と現在の測定結果とが一致すると（Ｓ３）、図示しないゲートパルスＧＡＴＥ（Ｆ１）に応答して一致した測定結果が可変遅延ポインタ１３にラッチされる（Ｓ５）。この測定結果は、前述の通り、そのまま遅延制御信号１５となる。そして、図示しないパルスＣ１により、遅延測定結果ラッチ部１２３のラッチ状態がクリアされる（Ｓ６）。そして、所定数のクロックＣＬＫの期間待機する（Ｓ７）。その間、可変遅延ポインタ１３にラッチされた遅延制御信号１５に従って、可変遅延回路１４の遅延時間が制御される。
【００３３】
また、Ｌ回の周期の測定を行っても、以前の測定結果と一致しない場合は（Ｓ２）、最後のＬ回目の遅延測定結果が、可変遅延ポインタ１３に強制的にラッチされる（Ｓ８）。この強制的なラッチは、後述する通り、同時生成されるパルスＡ１，Ｂ１により、ノードＮ１１１〜Ｎ１ｍ１の信号をラッチ部１２６と一致判定ＮＯＲゲート１２７に同時に供給することにより行うことができる。
【００３４】
上記した通り、図３に示されたクロック周期測定部１２を利用したＤＬＬ回路では、複数回のクロックの周期を測定し、その測定結果が少なくとも２回同じ結果になるとその測定結果に従う遅延制御信号を生成する。そして、その遅延制御信号により制御された可変遅延回路１４の遅延時間により、出力クロックＣＬＫ１が生成される。従って、ＤＬＬ回路は、短い期間であっても、精度の高いクロックの周期測定結果により遅延制御信号を生成することができる。そして、Ｌ回という限定された回数の測定によっても一致する結果が得られない場合は、最終回の測定結果を利用して、遅延制御信号を生成する。
【００３５】
図５は、図３のクロック周期測定部の詳細回路を示す図である。図３にも示された同じ部分には同じ引用番号を付した。図５には、スイッチ部１２５と遅延測定結果ラッチ部１２６の詳細な回路図が追加して示される。また、図５には、ゲートパルスＧＡＴＥがパルスＦ１として示され、そのパルスＦ１の生成が一致判定信号Ｅ１により生成されることも示される。
【００３６】
スイッチ部１２５は、パルスＡ１で開閉が制御されるＮＡＮＤゲート１０１、１０３，１０５，１０９と、パルスＢ１で制御されるＰチャンネルトランジスタ１０２，１０４，１０６，１１０とで構成される。また、遅延測定結果ラッチ部１２６は、インバータ１３１〜１４０からなるラッチ回路と、それぞれのラッチ回路のノードＮ１１２〜１ｍ２を反転するインバータ１４１，１４３，１４５，１４９と、そのインバータで制御されるＰ型のトランジスタ１４２，１４４，１４６，１５０とを有する。ノードＮ１１１〜Ｎ１ｍ１のＨレベルが遅延測定ラッチ部１２６のラッチ回路に保持されると、トランジスタ１４２，１４４，１４５，１５０の内、対応するトランジスタが非導通となり、その後の遅延測定結果はラッチ回路に取り込まれない。パルスＣ１で制御されるＮ型のトランジスタ１５１〜１５９は、ラッチ状態をクリアする回路である。
【００３７】
一致判定部１２７には、一致判定用のＮＯＲゲート１２７−１〜１２７−ｍに加えて、ノードＮ１１５〜Ｎ１ｍ５で制御されるＮ型トランジスタ７１〜７９と、抵抗１６０、インバータ１６１，１６２を有する。これらの回路は、一致判定が行われるとトランジスタ７１〜７９のいずれかを導通し、ノードＥ０をグランドレベルに下げて、一致判定信号Ｅ１を生成する。一致判定信号え１は、ＤＬＬ制御回路１１にも供給される。
【００３８】
図６は、図５に示した回路において、２回目の測定結果が１回目の測定結果と一致した場合のタイミングチャート図である。先ずクロックの周期の測定が行われる前の状態では、ストップパルスＳＴＯＰがＬレベルにあるので、ゲート部１２２のトランスファゲートは全て導通状態にある。そして、制御パルスＡ０，Ｂ０は、それぞれＨレベル、Ｌレベルにあり、パルスＡ１がＬレベルでＮＡＮＤゲート１０１，１０３，１０５，１０９はそれぞれ閉じた状態にある。また、パルスＢ１はＨレベルにあり、Ｐ型トランジスタ１０２，１０４，１０６，１１０は非導通状態にある。更に、遅延測定結果ラッチ部１２６のラッチ回路のノードＮ１１２〜Ｎ１ｍ２は全てＨレベルにリセットされ、ノードＮ１１４〜Ｎ１ｍ４は全てＬレベルにありＰ型トランジスタ１４２，１４４，１４６，１５０は全て導通状態にある。
【００３９】
そこで、図６のタイミングｔ１０でクロックＣＬＫの立ち上がりのタイミングに同期して、ＤＬＬ制御回路１１がスタートパルスＳＴＡＲＴを供給する。この例では、スタートパルスＳＴＡＲＴはクロックＣＬＫの２周期分のパルス幅を有する。このスタートパルスＳＴＡＲＴは、測定用遅延回路１２１の基本遅延回路２０を通過して、各ノードＮ１１０，Ｎ１ｍ０を次々にＨレベルにする。その時、ゲート１２２は全て導通状態にあるので、ノード１１０のＨレベルがラッチ部１２３のラッチ回路４１，４２によりラッチされ、ＬレベルをＮＯＲゲート５２に与える。その時、ノードＮ１２０が未だＬレベルであるので、インバータ５１の出力はＬレベルとなり、それがＮＯＲゲート５２に与えられる。そして、ＮＯＲゲート５２の他方の入力はＬレベルであり、一時的にノードＮ１１１はＨレベルとなる。しかし、スタートパルスＳＴＡＲＴがノードＮ１２０に伝搬すると、ノードＮ１２０がＨレベルとなり、ラッチ回路４３，４４でラッチされ、インバータ５１の出力はＨレベルとなり、ノードＮ１１１はＬレベルに戻る。即ち、ノードＮ１１１には、ＮＡＮＤゲート２３とインバータ２４の伝搬遅延時間分だけのパルス幅を有するＨパルスが生成される。以下、同様にして、ノードＮ１２１にも短いパルス幅のＨパルスが生成される。
【００４０】
そして、クロックＣＬＫの次の立ち上がりのタイミングｔ１１にて、ＤＬＬ制御回路１１がストップパルスＳＴＯＰを供給する。このストップパルスＳＴＯＰのＨレベルにより、ゲート部１２２のトランスファゲートが全て閉じる。図６の例では、スタートパルスＳＴＡＲＴがノードＮ１３０まで伝搬した時点で、ストップパルスＳＴＯＰが生成されている。その時、次段のノードＮ１４０はＬレベルであるのでインバータ５５の出力はＬレベルであり、インバータ４６の出力もＬレベルであり、ＮＡＮＤゲート５６の出力Ｎ１３１だけがＨレベルとなる。このＨレベルの期間は、ストップパルスＳＴＯＰがＬレベルになってゲート部１２２が開かれるまで続く。
【００４１】
以上の様に、基準クロックＣＬＫの周期の長さに応じて、ノードＮ１１１〜Ｎ１ｍ１のいずれかがＨレベルになる。基本遅延回路２０の遅延時間を適切に選択することで、ゲート２１〜３０に可変遅延回路１４と同じ遅延時間Ｄ１４を生成することができる。
【００４２】
次に、タイミングｔ１２に同期して、制御パルスＡ０のＬレベルのパルスが供給される。最初一致判定信号Ｅ１はＨレベルにあるので、ＮＡＮＤゲート１１０の出力Ａ１はＨレベルのパルスとなる。その結果、スイッチ部１２５のＮＡＮＤゲート１０１，１０３，１０５，１０９がそれぞれ開いた状態となり、ノードＮ１１１〜Ｎ１ｍ１の信号が反転して一致判定用のＮＯＲゲート１２７の入力Ｎ１１３〜Ｎ１ｍ３に供給される。図６に示される通り、ノードＮ１３３のみがＬレベルとなる。そして、ＮＯＲゲートにて、その時点で遅延測定結果ラッチ部１２６のラッチデータのノードＮ１１２〜Ｎ１ｍ２と一致するか否かの判定が行われる。一回目の測定時点では、ラッチ部１２６のノードＮ１１２〜１ｍ２は全てＨレベルであり、ノードＮ１３３のＬレベルと一致することはないので、ＮＯＲゲート１２７の出力Ｎ１１５〜Ｎ１ｍ５は全てＬレベルとなる。
【００４３】
一致判定パルスＡ０に応答して一致検出信号Ｅ１がＬレベルにならなかったので、ＤＬＬ制御回路１１が遅延測定結果をラッチする為のＨレベルパルスＢ０を、タイミングｔ１３で生成する。それに応答して、ＮＡＮＤゲート１１１がＬレベルの制御パルスＢ１を生成し、Ｐ型トランジスタ１０２，１０４，１０６，１１０を導通する。その結果、ノードＮ１１１〜Ｎ１ｍ１の遅延測定結果が、遅延測定結果ラッチ部１２６の各ラッチ回路にラッチされる。この例では、ノードＮ１３２のみがＬレベルをラッチし、他のノードＮ１１２，Ｎ１２２... Ｎ１ｍ２はＨレベルのラッチ状態を維持する。ノードＮ１３２のＬレベルのラッチに応答して、インバータ１４４はノード１３４をＨレベルにし、Ｐ型トランジスタ１４５を非導通状態にする。その結果、それ以降の測定結果は、ラッチ回路１３５，１３６には取り込まれない。
【００４４】
タイミングｔ１４で、ストップパルスＳＴＯＰが立ち下がり、ゲート１２２を全て導通し、ノードＮ１３１はＬレベルに戻る。以上で１回目のクロックＣＬＫの周期測定が終了する。
【００４５】
２回目のクロックＣＬＫの周期測定は、タイミングｔ２０に同期したスタートパルスＳＴＡＲＴで開始される。タイミングｔ２１でストップパルスＳＴＯＰがＨレベルに立ち上がると、ゲート部１２２が一斉に閉じる。図６の例では、２回目の測定でも、スタートパルスＳＴＡＲＴはノードＮ１３０まで達している。従って、１回目と同様に、ノードＮ１３１のみがＨレベルとなり、他のノードＮ１１１，Ｎ１２１，Ｎ１ｍ１はＬレベルとなる。
【００４６】
そこで、タイミングｔ２２で、一致判定パルスＡ０が、ＤＬＬ制御回路１１から生成されて、パルスＡ１のＨレベルに応答してスイッチ部１２５のＮＡＮＤゲート１０１，１０３，１０５．．．１０９が一斉に開かれる。そして、ノードＮ１１１〜Ｎ１ｍ１の遅延測定結果信号の反転信号が、ラッチ部１２６のノードＮ１１２〜Ｎ１ｍ２のラッチ信号と、Ｌレベルで一致するか否かの判定が、ＮＯＲゲート１２７にて行われる。この時、ノードＮ１３３はＬレベル、１回目の測定結果がラッチされたノードＮ１３２もＬレベルであるので、ＮＯＲゲート１２７−３の出力Ｎ１３５がＨレベルとなる。即ち、現在の測定結果がそれまでにの測定結果と一致したことが判定される。
【００４７】
ノードＮ１３５のＨレベルに応答して、Ｎ型トランジスタ７５が導通し、ノードＥ０をＬレベルに引き下げ、一致判定信号Ｅ１をＬレベルにする。この一致判定信号Ｅ１のＬレベルにより、ＮＡＮＤゲート１１０，１１１が同時に出力Ａ１，Ｂ１を共にＨレベルに固定し、一致判定状態を固定する。一方、一致判定信号Ｅ１のＬレベルに応答して、インバータ１６４とＮＯＲゲート１６３により、インバータ１６４の遅延時間分のパルス幅を有するゲートパスルＦ１が生成される。それに応答して、トランスファゲート１２８が一斉に導通し、ノードＮ１３５のＨレベルとそれ以外のノードＮ１１５、Ｎ１２５、Ｎ１ｍ５のＬレベルが可変遅延ポインタ１３にラッチされる。その結果、少なくとも１回目と２回目の測定で一致した遅延測定結果に基づいた遅延制御信号１５が、ノードＮ１１６〜Ｎ１ｍ６から可変遅延回路１４に出力される。
【００４８】
一致判定信号Ｅ１は、ＤＬＬ制御回路１１にも供給され、それに応答して、ＤＬＬ制御回路１１は、タイミングｔ２４でリセットパルスＣ１を与える。リセットパルスＣ１のＨレベルに応答して、トランジスタ１５１〜１５９が導通し、ノードＮ１１２〜Ｎ１ｍ２をＬレベルにリセットする。また、それに応答して、ノードＮ１３５はＬレベルになり、一致判定信号Ｅ１がＨレベルに戻り、パルスＡ１，Ｂ１のＨレベルの固定状態が解除される。
【００４９】
図７は、図５に示した回路において、測定制限回数Ｌ＝３の場合であって、２回目までの測定結果が一致しなかった場合の３（＝Ｌ）回目の測定時のタイミングチャート図である。３回目の測定時の測定結果に基づいて、遅延制御信号が生成される。
【００５０】
３回目の測定も、タイミングｔ３０のスタートパルスＳＴＡＲＴにより開始する。そして、タイミングｔ３１のストップパルスＳＴＯＰにより、ゲート１２２が閉じる。この場合も、スタートパルスＳＴＡＲＴがノードＮ１３０まで伝搬していた例で説明する。ストップパルスＳＴＯＰに応答して、ゲート１２２が閉じられ、ノードＮ１３１のみがＨレベルとなる。
【００５１】
ＤＬＬ制御回路１１は、過去に一致判定がなされなかったので、最終回の３回目の測定では、パルスＡ０，Ｂ０をタイミングｔ３２で同時に生成する。この制御が、図６で説明した動作と異なる点である。この制御パルスＡ０，Ｂ０の同時発生に応答して、ノードＮ１３１のＨレベルが、それぞれ反転して、ノードＮ１３３とノードＮ１３２を共にＬレベルにし、ＮＯＲゲート１２７−３の出力Ｎ１３５をＨレベルにする。その後の動作は、上記した一致判定時と同じであり、信号Ｅ１のＬレベルにより、パルスＡ１，Ｂ１が固定され、生成されるゲートパルスＦ１により、ノードＮ１３５のＨレベルとそれ以外のノードのＬレベルとが、遅延制御信号として可変遅延ポインタ１３にラッチされる。その後、リセットパルスＣ１により、最初の状態にリセットされる。但し、可変遅延ポインタ１３は、遅延制御信号をラッチし続ける。
【００５２】
図８は、別の実施の形態例のクロック周期測定部と可変遅延ポインタ１３の詳細回路図である。この回路図は、選択回路１２９とそのゲート部１３０が追加されている点で、図５の回路図と異なる。また、図５の場合と区別するために、各ノードの引用番号を２００番台に変更しているが、下２桁の番号は図５の場合と同じである。図５と同じ部分の引用番号は一部省略している。
【００５３】
図８の別の実施の形態例でも、測定用遅延回路１２１，ゲート部１２２、遅延状態ラッチ部１２３、スイッチ部１２５、遅延測定結果ラッチ部１２６、一致判定回路１２７、ゲート部１２８を有する。
【００５４】
上記した図３，５の回路例では、最大測定回数までに測定結果が一致しない場合は、最終測定結果に基づいた遅延制御信号が可変遅延ポインタ１３にラッチされた。図８の例では、２回測定結果が一致したらその測定結果に基づく遅延制御信号をラッチすることは同じであるが、最大測定回数までに測定結果が一致しない場合は、過去の測定結果の中間測定値に基づく遅延制御信号をラッチする。これにより、ノイズの発生等による誤差を最小限に抑えることが可能になる。
【００５５】
図９は、図８の回路の場合のＤＬＬ回路の全体の動作のフローチャート図である。図４のフローチャートと比較すると理解できる様に、３回目の測定結果までは、過去の測定結果と一致するか否かの判定を行い（Ｓ１３）、３回目でも測定結果が一致しない場合は、過去３回の測定結果の内、中間の測定値に基づく遅延制御信号を可変遅延ポインタ１３にラッチする（Ｓ１２、Ｓ１８）。それ以外の動作は、図４の場合と同じである。
【００５６】
図１０は、図８の回路において、３回の測定で測定結果が一致しなかった場合の３回目の測定時の動作タイミングチャート図である。図８の回路の場合も、上記した通り、３回目の測定まで過去の測定結果と一致するか否かの判定が、一致判定回路１２７で行われる。図１０の例では、１回目と２回目で、ノードＮ２２１がＨレベル、ノードＮ２３１より右側の任意のノードがＨレベルになる測定結果が、対応する遅延測定結果ラッチ部１２６にラッチされ、３回目の測定で、ノードＮ２３１がＨレベルになる測定結果がラッチ部１２６にラッチされた場合を想定する。従って、図８中の（Ｈ）、（Ｌ）は、３回目の測定結果がラッチされた時点での各ノードの状態を示すものとする。
【００５７】
選択回路１２９のＥＯＲゲート１６０、１６１，１６２．．．は、入力が一致する場合はＬレベルを出力し、入力が不一致の場合はＨレベルを出力する。そして、ＥＯＲゲート１６０の一方の入力がグランドレベルのＬレベルである。従って、過去２回の測定において、最短の周期が測定されてラッチされたノードＮ２２２のＬレベルに応じて、ＥＯＲゲート１６１の出力から左側のＥＯＲゲートの出力がＨレベルとなる。また、２番目に短い周期が測定されてラッチされたノードＮ２ｎ２（ノードＮ２３２より左側）のＬレベルに応じて、それから左側のＥＯＲゲートの出力がＬレベルとなる。
【００５８】
かかる選択回路１２９を利用することにより、３回の測定の内、中央値の周期に基づく遅延制御信号が可変遅延ポインタ１３のラッチされる。図１０に戻り、３回目の測定が、タイミングｔ３０で生成されるスタートパルスＳＴＡＲＴにより開始される。そして、タイミングｔ３１で生成されるストップパルスＳＴＯＰによりゲート部１２２が閉じられ、ノードＮ２３１のＨレベルが生成される。
【００５９】
そして、通常通り、タイミングｔ３２で制御パルスＡ０が生成され、パルスＡ２に応答してノードＮ２３３がＬレベルとなる。この場合、過去２回の測定結果と一致せず、一致判定信号Ｅ２はＨレベルを維持する。次に、タイミングｔ３３で制御パルスＢ０が生成され、パルスＢ２に応答して、ノードＮ２３１のＨレベルがラッチ部１２６にラッチされ、ノードＮ２３２がＬレベルとなる。それに応答して、インバータ１４４によりノードＮ２３４がＨレベルとなり、ＥＯＲゲート１６２はその出力Ｎ２３８をＬレベルとする。
ノードＮ２２２のＬレベルによりＥＯＲゲート１６１の出力Ｎ２２９もＨレベルであり、ノードＮ２３４のＨレベルに応答して、ＮＡＮＤゲート１６５の出力はＬレベル、インバータ１６９の出力Ｎ２３７はＨレベルとなる。選択回路１２９内のそれ以外のＮＡＮＤゲート１６３，１６４，１６６はいずれもＬレベルを出力する。
【００６０】
かくして、３回目の測定結果によっても一致しないことが一致判定信号Ｅ２により判明し、ＤＬＬ制御回路１１が制御パルスＤ１を生成し、ゲート部１３０のトランスファゲート１８１〜１８８を導通する。それにより、ノードＮ２３７のＨレベルが、遅延制御信号として、可変遅延ポインタ１３にラッチされる。即ち、ノードＮ２３６はＨレベル、それ以外のノードＮ２１６，２２６，２ｍ６はいずれもＬレベルとなる。
【００６１】
上記した通り、選択回路１２９を追加することにより、３回測定後の中間の周期に対応する遅延制御信号１５を生成し、可変遅延ポインタ１３にラッチすることができる。
【００６２】
図１１は、図１に示した可変遅延回路１４の具体的な回路図である。遅延制御信号Ｎ１１６〜Ｎ１ｍ６によりその遅延時間が選択される。この可変遅延回路は、入力端子ＩＮに印加される内部クロックＣＬＫ０を所定時間遅延させて出力端子ＯＵＴに出力クロックＣＬＫ１を出力する。この例では、ｍ段の遅延回路となり、１段目はＮＡＮＤ711 、712 及びインバータ713 で構成され、２段目は、ＮＡＮＤ721 、722 及びインバータ723 で構成され、以下同様にして、ｍ段目はＮＡＮＤ761 、762 及び763 で構成される。
【００６３】
前述の通り、遅延制御信号Ｎ１１６〜Ｎ１ｍ６は、いずれか１つがＨレベルになり、他は全てＬレベルになる。そして、Ｈレベルになった遅延制御信号により対応するＮＡＮＤ711 、721 ，...761が１つだけ開かれ、入力ＩＮに印加される内部クロックＣＬＫ０を通過させる。他のＬレベルの遅延制御信号により、対応する他のＮＡＮＤ711 、721 ，...761が全て閉じられる。図示される通り、遅延制御信号Ｎ１１６がＨレベルの時はＮＡＮＤ711 が開かれ、入力端子ＩＮから、インバータ701 、ＮＡＮＤ711 、712 及びインバータ713 を経由して出力端子ＯＵＴまでの遅延経路が形成される。従って、ゲート４段の遅延を有する。
【００６４】
遅延制御信号Ｎ１２６がＨレベルの時はＮＡＮＤ721 が開かれる。ゲート762 の入力は共にＨレベルであるので、インバータ763 の出力はＨレベル、同様にインバータ753 、743...の出力もＨレベルである。従って、ＮＡＮＤ722 も開かれた状態である。その結果、入力端子ＩＮから、インバータ701 、ゲート721 〜723 ，712 、713 を経由して出力端子ＯＵＴまでの遅延経路が形成される。従って、ゲート６段の遅延を有する。以下、図１１中に示された通り、Ｈレベルの遅延制御信号が左に移動する度に、遅延経路のゲート数が２ゲートづつ増加する。遅延制御信号Ｎ１ｍ６がＨレベルの時は、２＋２ｎ段のゲート数の遅延経路となる。従って、上記のクロック周期測定部１２により測定された遅延結果に基づく遅延制御信号により、図１１の可変遅延回路は測定された周期の長さに応じた遅延時間Ｄ１４を生成することができる。
【００６５】
【発明の効果】
以上説明した通り、本発明によれば、短時間でより精度良くクロックの周期を測定し、その周期に基づく遅延制御信号を生成することができるＤＬＬ回路を提供することができる。
【図面の簡単な説明】
【図１】、本発明のＤＬＬ回路の全体構成図である。
【図２】ＤＬＬ回路の基準クロックＣＬＫと生成されるクロックＣＬＫ１との関係を示すタイミングチャート図である。
【図３】ＤＬＬ回路内のクロック周期測定部と可変遅延ポインタとを示す概略回路図である。
【図４】図３に示したクロック周期測定部１２を利用したＤＬＬ回路の全体の動作のフローチャート図である。
【図５】図３のクロック周期測定部の詳細回路を示す図である。
【図６】図５に示した回路において、２回目の測定結果が１回目の測定結果と一致した場合のタイミングチャート図である。
【図７】図５に示した回路において、２回目までの測定結果が一致しなかった場合の３（＝Ｌ）回目の測定時のタイミングチャート図である。
【図８】別の実施の形態例のクロック周期測定部と可変遅延ポインタ１３の詳細回路図である。
【図９】図８の回路の場合のＤＬＬ回路の全体の動作のフローチャート図である。
【図１０】３回の測定で測定結果が一致しなかった場合の３回目の測定時の動作タイミングチャート図である。
【図１１】図１に示した可変遅延回路１４の具体的な回路図である。
【符号の説明】
１        入力バッファ
２        出力バッファ
３        メモリセルアレイ
１０      ＤＬＬ回路
１１      ＤＬＬ制御回路
１２      クロック周期測定部
１３      可変遅延ポインタ部
１４      可変遅延回路
１５      遅延制御信号
【図１】
0003789222.tif 000002
【図２】
0003789222.tif 000003
【図３】
0003789222.tif 000004
【図４】
0003789222.tif 000005
【図５】
0003789222.tif 000006
【図６】
0003789222.tif 000007
【図７】
0003789222.tif 000008
【図８】
0003789222.tif 000009
【図９】
0003789222.tif 000010
【図１０】
0003789222.tif 000011
【図１１】
0003789222.tif 000012