(57)【特許請求の範囲】
【請求項１】
クロック信号の位相を調整するクロック補正回路であって、
出力すべきクロック信号のＮ倍の周波数を持った入力周期信号の立上りエッジを利用してその入力周期信号をＮ分周する第１の分周回路と、
上記入力周期信号の立下りエッジを利用してその入力周期信号をＮ分周することにより上記第１の分周回路の出力信号に対して１／２Ｎ位相だけシフトした信号を生成する第２の分周回路と、
上記第１および第２の分周回路の状態を調整する調整回路と、
上記第１および第２の分周回路の出力信号の論理和を取ることにより出力クロックを生成する生成手段、を有し、
上記調整回路は、上記出力クロックの位相を１／２Ｎ周期だけ進めるための前進指示が与えられたときは、上記第１および第２の分周回路のうちの一方が上記分周動作を実行しており且つ他方が上記分周動作を停止している状態から、上記第１および第２の分周回路のうちの上記一方が上記分周動作を停止しており且つ上記他方が上記分周動作を実行している状態に切替える
ことを特徴とするクロック補正回路。
【請求項２】
クロック信号の位相を調整するクロック補正回路であって、
出力すべきクロック信号のＮ倍の周波数を持った入力周期信号の立上りエッジを利用してその入力周期信号をＮ分周する第１の分周回路と、
上記入力周期信号の立下りエッジを利用してその入力周期信号をＮ分周することにより上記第１の分周回路の出力信号に対して１／２Ｎ位相だけシフトした信号を生成する第２の分周回路と、
上記第１および第２の分周回路の状態を調整する調整回路と、
上記第１および第２の分周回路の出力信号の論理和を取ることにより出力クロックを生成する生成手段、を有し、
上記調整回路は、
上記第１の分周回路が分周動作を実行しており且つ上記第２の分周回路が分周動作を停止している状態において上記出力クロックの位相を１／２Ｎ周期だけ遅らせるための遅延指示が与えられたときは、上記第１の分周回路の分周動作を停止すると共に、上記入力周期信号の１周期時間が経過した後に上記第２の分周回路の分周動作を開始させ、
上記第１の分周回路が分周動作を停止しており且つ上記第２の分周回路が分周動作を実行している状態において上記遅延指示が与えられたときは、上記入力周期信号の１周期時間が経過した後に、上記第１の分周回路の分周動作を開始させると共に上記第２の分周回路の分周動作を停止する
ことを特徴とするクロック補正回路。
【請求項３】
上記入力周期信号の立上りエッジまたは立下りエッジに同期して上記前進指示または遅延指示を検出する検出回路をさらに備え、
上記調整回路は、上記入力周期信号の立上りエッジまたは立下りエッジを利用して、上記検出回路により検出された指示の種別に従って上記第１および第２の分周回路の状態を調整する
ことを特徴とする請求項１または２に記載のクロック補正回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、クロックの位相またはタイミングを補正する回路に係わる。
【０００２】
【従来の技術】
従来から、様々な分野において、クロックの位相またはタイミングを補正する回路（クロック補正回路）が知られている。例えば、クロック補正回路は、通信システムの受信装置において、その受信装置内で生成されるクロックの位相を受信信号のそれに一致させる場合などに利用されている。そして、一例として、特開平９−１５３８８７号（米国特許５６５４９９１）に開示される構成が知られている。
【０００３】
図８は、既存のクロック補正回路の一例（特開平９−１５３８８７号に開示されている回路）の回路図である。このクロック補正回路は、要求に応じて入力クロック（CLK-IN）の位相を補正することによって出力クロック（CLK ）を生成する。以下、この回路の構成および動作を簡単に説明する。
【０００４】
入力クロック（CLK-IN）は、排他的論理和回路１０１のＡ端子に与えられる。ここで、排他的論理和回路１０１は、そのＢ端子に「Ｌ」が入力されると、信号（CLK-EO）として入力クロック（CLK-IN）をそのまま出力する。一方、排他的論理和回路１０１は、そのＢ端子に「Ｈ」が入力されると、信号（CLK-EO）として入力クロック（CLK-IN）の論理を反転させた信号を出力する。このとき、ＯＲ回路１０２のＢ端子に「Ｌ」が与えられているものとすると、このクロック補正回路は、クロック（CLK ）として、入力クロック（CLK-IN）と同一の信号または入力クロック（CLK-IN）の論理を反転させた信号を出力する。
【０００５】
図９は、図８に示すクロック補正回路の動作を示すタイミング図である。図９において、時刻Ｔ1 以前および時刻Ｔ2 以降は、排他的論理和回路１０１のＢ端子に「Ｌ」が与えられている。このため、この期間は、排他的論理和回路１０１は、入力クロック（CLK-IN）と同じ信号を出力する。一方、時刻Ｔ1 〜時刻Ｔ2 は、排他的論理和回路１０１のＢ端子に「Ｈ」が与えられている。このため、この期間は、排他的論理和回路１０１は、入力クロック（CLK-IN）の論理を反転させた信号を出力する。ここで、入力クロック（CLK-IN）の論理を反転させると、その入力クロック（CLK-IN）の位相を１８０度シフトさせた信号が得られる。すなわち、排他的論理和回路１０１は、そのＢ端子に与えられる信号に応じて、入力クロック（CLK-IN）と同じ信号、または入力クロック（CLK-IN）の位相を１８０度シフトさせた信号を出力する。そして、この排他的論路和回路１０１の出力と信号（FORCEONE）との論路和がクロック（CLK ）として出力される。
【０００６】
この結果、入力クロック（CLK-IN）の位相は、時刻Ｔ1 および時刻Ｔ2 において、それぞれ１８０度（１／２周期）ずつシフトされる。すなわち、図８に示すクロック補正回路は、クロックの位相を１／２周期だけ補正できる。
【０００７】
【発明が解決しようとする課題】
上述のように、図８に示したクロック補正回路は、クロックの位相を１／２周期単位で補正できる。しかし、換言すれば、上記クロック補正回路は、クロックの位相を１／２周期よりも細かい単位で補正することは出来ない。
【０００８】
また、図８に示したクロック補正回路では、入力クロックとその入力クロックの位相補正を指示するための信号（JUMPCLK ）とが互いに同期していないので、以下の問題が生じる可能性がある。即ち、信号（JUMPCLK ）が与えられると、フリップフロップ１０３における遅延の後にノードＡの信号が変化する。また、このノードＡの信号が変化すると、フリップフロップ１０４における遅延の後に信号（FORCEONE）が変化する。そして、この信号（FORCEONE）に起因して排他的論路和回路１０１のＢ端子に与えられる信号が生成される。ここで、上記遅延時間は一定ではない。したがって、信号（JUMPCLK ）が与えられると、そのことに起因して排他的論理和回路１０１の出力が乱れることがある。図９に示す例では、時刻Ｔ1 および時刻Ｔ2 の近傍において、それぞれパルス幅の小さいパルスが生成されているが、上記遅延時間によっては、このパルスが生成されない可能性もある。この場合、クロック補正回路の全体動作が不安定になる。
【０００９】
本発明の課題は、クロックの位相を１／２周期よりも細かい精度で補正できる回路を提供することである。また、本発明の他の課題は、クロック補正回路の動作を安定させることである。
【００１０】
【課題を解決するための手段】
本発明のクロック補正回路は、クロック信号の位相を調整するものであり、出力すべきクロック信号のＮ倍の周波数を持った入力周期信号の立上りエッジを利用してその入力周期信号をＮ分周する第１の分周回路と、上記入力周期信号の立下りエッジを利用してその入力周期信号をＮ分周することにより上記第１の分周回路の出力信号に対して１／２Ｎ位相だけシフトした信号を生成する第２の分周回路と、上記第１および第２の分周回路の状態を調整する調整回路と、上記第１および第２の分周回路の出力信号の論理和を取ることにより出力クロックを生成する生成手段、を有する。
そして、上記調整回路は、上記出力クロックの位相を１／２Ｎ周期だけ進めるための前進指示が与えられたときは、上記第１および第２の分周回路のうちの一方が上記分周動作を実行しており且つ他方が上記分周動作を停止している状態から、上記第１および第２の分周回路のうちの上記一方が上記分周動作を停止しており且つ上記他方が上記分周動作を実行している状態に切替える。
また、上記調整回路は、上記第１の分周回路が分周動作を実行しており且つ上記第２の分周回路が分周動作を停止している状態において上記出力クロックの位相を１／２Ｎ周期だけ遅らせるための遅延指示が与えられたときは、上記第１の分周回路の分周動作を停止すると共に、上記入力周期信号の１周期時間が経過した後に上記第２の分周回路の分周動作を開始させ、上記第１の分周回路が分周動作を停止しており且つ上記第２の分周回路が分周動作を実行している状態において上記遅延指示が与えられたときは、上記入力周期信号の１周期時間が経過した後に、上記第１の分周回路の分周動作を開始させると共に上記第２の分周回路の分周動作を停止する。
【００１１】
上記構成によれば、第１の分周回路により生成される周期信号および第２の分周回路により生成される周期信号の位相は、互いにシフトしている。ここで、第１および第２の分周回路による分周比がそれぞれＮであるものとすると、上記２つの周期信号の位相差の最小値は、その周期信号の周期の１／２Ｎである。したがって、第１および第２の分周回路の出力信号の論理和を取ることにより出力クロックを生成する構成において、それら第１および第２の分周回路の動作を適切に制御すれば、出力クロックの位相をそのクロックの１／２Ｎ周期単位で補正できる。
【００１２】
上記クロック補正回路において、上記入力周期信号の立上りエッジまたは立下りエッジに同期して上記前進指示または遅延指示を検出する検出回路をさらに備え、上記調整回路は、上記入力周期信号の立上りエッジまたは立下りエッジを利用して、上記検出回路により検出された指示の種別に従って上記第１および第２の分周回路の状態を調整するようにしてもよい。この構成によれば、出力クロックの信号源である第１および第２の分周回路だけでなく、前進指示および遅延指示を検出する検出回路および上記第１および第２の分周回路を制御する制御手段も入力周期信号に同期して動作する。したがって、クロック補正回路の動作が安定する。
【００１３】
【発明の実施の形態】
本発明の実施形態について図面を参照しながら説明する。
図１は、本発明の一実施形態のクロック補正回路のブロック図である。このクロック補正回路１０は、入力クロック（CLK-IN）に基づいて出力クロック（CLK-OUT ）を生成すると共に、要求に応じてその出力クロックの位相を補正する。以下、この回路の構成および動作を説明する。
【００１４】
入力クロック（CLK-IN）は、フリップフロップ回路１１のＣＫ端子に与えられると共に、インバート回路１２を介してフリップフロップ回路１３のＣＫ端子に与えられる。
フリップフロップ回路１１は、入力クロック（CLK-IN）の立上りエッジを検出する毎に、そのＤ端子に与えられている信号をＱ端子から出力する。ここで、フリップフロップ回路１１のＤ端子には、そのフリップフロップ回路１１の／Ｑ端子の信号が与えられる。したがって、フリップフロップ回路１１は、／Ｑ端子から「Ｌ」を出力している期間に入力クロック（CLK-IN）の立上りエッジを検出すると、その／Ｑ端子の信号を「Ｌ」から「Ｈ」に遷移させ、また、／Ｑ端子から「Ｈ」を出力している期間に上記立上りエッジを検出すると、その／Ｑ端子の信号を「Ｈ」から「Ｌ」に遷移させる。即ち、入力クロック（CLK-IN）は、リップフロップ回路１１により２分周される。具体的には、フリップフロップ回路１１は、入力クロック（CLK-IN）の立上りエッジに同期してその入力クロック（CLK-IN）を２分周する。以下、このフリップフロップ回路１１の出力を、「クロック（CLK-A ）」と呼ぶことにする。
【００１５】
フリップフロップ回路１３の構成および動作は、基本的に、フリップフロップ回路１１と同じである。ただし、フリップフロップ回路１３のＣＫ端子には、入力クロック（CLK-IN）の反転信号が与えられる。したがって、フリップフロップ回路１３は、入力クロック（CLK-IN）の立下りエッジに同期してその入力クロック（CLK-IN）を２分周することになる。以下、このフリップフロップ回路１３の出力を、「クロック（CLK-B ）」と呼ぶことにする。
【００１６】
図２は、フリップフロップ回路１１および１３による分周動作を説明する図である。ただし、図２では、フリップフロップ１１および１３にリセット信号が与えられていないと仮定した場合の信号が描かれている。なお、フリップフロップ１１および１３は、そのリセット端子（／ＣＬＲ）に「Ｌ」が与えられると、リセットされ、「Ｌ」を出力する。一方、そのリセット端子に「Ｈ」が与えられると、そのリセットは解除され、図２に示す分周信号を出力する。
【００１７】
フリップフロップ１１および１３は、上述したように、それぞれ入力クロック（CLK-IN）の立上りエッジおよび立下りエッジに同期してその入力クロック（CLK-IN）を２分周する。したがって、フリップフロップ１１および１３によりそれぞれ生成されるクロック（CLK-A ）およびクロック（CLK-B ）は、互いにその位相が１／４周期ずれている。
【００１８】
ＯＲ回路１４は、フリップフロップ回路１１により生成されるクロック（CLK-A ）およびフリップフロップ回路１３により生成されるクロック（CLK-B ）の論理和を出力する。ただし、フリップフロップ回路１１および１３は、それぞれ後述するリセット信号により制御される。例えば、フリップフロップ回路１３にリセット指示が与えられている場合には、フリップフロップ回路１３は「Ｌ」を出力する。この場合、ＯＲ回路１４は、クロック（CLK-A ）をそのまま出力することになる。一方、フリップフロップ回路１１にリセット信号が与えられている場合には、フリップフロップ回路１１は「Ｌ」を出力する。この場合、ＯＲ回路１４は、クロック（CLK-B ）をそのまま出力することになる。以下では、ＯＲ回路１４の出力を「出力クロック（CLK-OUT ）」と呼ぶことにする。
【００１９】
検出回路１５は、クロック補正回路１０の外部から与えられる位相補正指示信号を検出する。位相補正指示信号としては、出力クロック（CLK-OUT ）の位相を１／４周期進めるためのadvance 信号、および出力クロック（CLK-OUT ）の位相を１／４周期遅らせるためのretard信号が使用される。なお、advance 信号およびretard信号は、それぞれ出力クロック（CLK-OUT ）の立上りエッジに同期して変化するものとする。
【００２０】
検出回路１５は、入力クロック（CLK-IN）の立上りエッジを検出するごとに、advance 信号及びretard信号のレベルをモニタする。そして、検出回路１５は、上記タイミングにおいてadvance 信号またはretard信号が「Ｈ」であった時は、その出力を反転する。なお、以下では、advance 信号が「Ｈ」になることを「前進指示」と呼び、また、retard信号が「Ｈ」になることを「遅延指示」と呼ぶことがある。また、検出回路１５の出力を「信号（rst ）」と呼ぶことにする。
【００２１】
例えば、検出回路１５は、信号（rst ）が「Ｌ」である期間に前進指示または遅延指示を検出すると、その出力を「Ｌ」から「Ｈ」に切り換え、信号（rst ）が「Ｈ」である期間に前進指示または遅延指示を検出すると、その出力を「Ｈ」から「Ｌ」に切り換える。ただし、検出回路１５は、advance 信号またはretard信号が「Ｈ」レベルに保持されている期間は、次の前進指示または遅延指示を受け付けない。また、advance 信号またはretard信号が「Ｈ」レベルに保持されている期間に入力クロック（CLK-IN）の立上りエッジを繰り返し検出した場合は、検出回路１５は、２回目以降の立上りエッジを無視する
図３は、検出回路１５の一例のブロック図である。検出回路１５は、advance 信号を受信するラッチ回路２１およびretard信号を受信するラッチ回路２２を備える。ラッチ回路２１および２２は、それぞれ入力クロック（CLK-IN）が与えられており、その立上りエッジを用いてadvance 信号およびretard信号をラッチする。そして、ラッチ回路２１および２２は、それぞれラッチした信号をＯＲ回路２３に対して出力する。なお、ラッチ回路２１および２２は、例えば、フリップフロップ回路により構成される。
【００２２】
ＯＲ回路２３は、ラッチ回路２１および２２の出力の論理和を生成してフリップフロップ回路２４に出力する。そして、フリップフロップ２４は、ＯＲ回路２３から与えられる信号の立上りエッジを検出すると、自分の出力信号の論理を反転させる。
【００２３】
図１に戻る。タイミング調整回路１６は、検出回路１５により生成された信号（rst ）からリセット信号（rst-a ）及びリセット信号（rst-b ）を生成する。このとき、タイミング調整回路１６の動作は以下の取りである。
(1) 前進指示を受信（advance 信号が「Ｈ」）
信号（rst-a ）：信号（rst ）
信号（rst-b ）：信号（rst ）
すなわち、タイミング調整回路１６は、前進指示を受信した時は、リセット信号（rst-a ）およびリセット信号（rst-b ）として、それぞれ検出回路１５により生成された信号（rst ）をそのまま出力する。
(2) 遅延指示を受信（retard信号が「Ｈ」）
(2a)信号（rst ）が「Ｈ」から「Ｌ」に変化した場合
信号（rst-a ）：信号（rst ）
信号（rst-b ）：信号（rst ）を１クロックサイクル遅延させた信号
すなわち、タイミング調整回路１６は、遅延指示を受信した場合であって、且つ信号（rst ）が「Ｈ」から「Ｌ」に変化した場合には、リセット信号（rst-a ）として信号（rst ）をそのまま出力すると共に、リセット信号（rst-b ）として信号（rst ）を１クロックサイクル遅延させた信号を出力する。ここで、「１クロックサイクル」とは、入力クロック（CLK-IN）の１周期である。
【００２４】
(2b)信号（rst ）が「Ｌ」から「Ｈ」に変化した場合
信号（rst-a ）：信号（rst ）を１クロックサイクル遅延させた信号
信号（rst-b ）：信号（rst ）を１クロックサイクル遅延させた信号
すなわち、タイミング調整回路１６は、遅延指示を受信した場合であって、且つ信号（rst ）が「Ｌ」から「Ｈ」に変化した場合には、リセット信号（rst-a ）およびリセット信号（rst-b ）として、それぞれ信号（rst ）を１クロックサイクル遅延させた信号を出力する。
【００２５】
図４は、タイミング調整回路１６の一例のブロック図である。
検出回路１５により生成された信号（rst ）は、セレクタ３１および３２に入力される。また、この信号（rst ）は、それぞれ遅延回路３３および３４を通過した後にセレクタ３１および３２に入力される。ここで、遅延部３３および３４の遅延量はそれぞれ入力クロック（CLK-IN）の１周期時間である。なお、遅延部３３および３４は、例えば、シフトレジスタにより実現可能である。この場合、このシフトレジスタは、入力クロック（CLK-IN）に従って動作するように構成される。
【００２６】
検出部３５は、信号（rst ）が「Ｈ」から「Ｌ」に変化したのか、「Ｌ」から「Ｈ」に変化したのかを検出する。以下、前者を「第１の変化」、後者を「第２の変化」と呼ぶことがある。そして、検出部３５は、第１の変化または第２の変化を検出すると、その旨を制御部３６に通知する。制御部３６は、検出３５からの通知、advance 信号およびretard信号に基づいてセレクト信号を生成する。セレクト信号の生成方法については、上記(1) 、(2a)、及び(2b)の通りである。
【００２７】
セレクタ３１および３２は、それぞれ制御部３６から与えられるセレクト信号に従って出力すべき信号を選択する。具体的には、advance 信号が「Ｈ」であった場合（前進指示を受信した場合）は、セレクタ３１および３２は、それぞれ信号（rst ）を選択して出力する。また、retard信号が「Ｈ」（遅延指示）であり且つ上記第１の変化が検出された場合には、セレクタ３１は信号（rst ）を選択し、セレクタ３２は遅延部３４の出力を選択する。さらに、retard信号が「Ｈ」であり且つ上記第２の変化が検出された場合には、セレクタ３１および３２は、それぞれ遅延部３３および３４の出力を選択する。
【００２８】
タイミング調整回路１６から出力されるリセット信号（rst-a ）は、フリップフロップ回路１１のリセット端子（／ＣＬＲ）に与えられる。一方、リセット信号（rst-b ）は、インバート回路１７を介してフリップフロップ回路１３のリセット端子（／ＣＬＲ）に与えられる。そして、フリップフロップ回路１１および１３は、それぞれリセット端子に「Ｌ」が与えられると、「Ｌ」を出力する。
【００２９】
上記構成のクロック補正回路１０において、advanec 信号を利用した前進指示またはretard信号を利用した遅延指示が与えられると、信号（rst ）の論理が変化し、それに対応するリセット信号（rst-a ）およびリセット信号（rst-b ）が生成される。ここで、リセット信号（rst-a ）及びリセット信号（rst-b ）は、前進指示又は遅延指示が与えられた直後を除いては、共に信号（rst ）と同じ信号である。また、リセット信号（rst-b ）は、インバータ回路１７を介してフリップフロップ回路１３に与えられる。したがって、フリップフロップ回路１１および１３は、前進信号または遅延信号が与えられた直後を除けば、いずれか一方がリセットされて「Ｌ」を出力し、他方が入力クロック（CLK-IN）の分周信号を出力するように動作する。そして、フリップフロップ回路１１または１３のいずれか一方により生成された分周信号が、ＯＲ回路１４を介して出力クロック（CLK-OUT ）として出力される。
【００３０】
このように、クロック補正回路１０においては、大雑把に言うと、前進指示または遅延指示が与えられる毎に信号（rst ）の論理が反転し、その信号（rst ）の論理に対応してクロック（CLK-A ）またはクロック（CLK-B ）が出力クロック（CLK-OUT ）として出力される。したがって、信号（rst ）の論理と、クロック（CLK-A ）またはクロック（CLK-B ）のうちの何れが使用されているのかは、一意に対応している。この実施例では、信号（rst ）が「Ｈ」の時はクロック（CLK-A ）が使用され、信号（rst ）が「Ｌ」の時はクロック（CLK-B ）が使用されている。
【００３１】
図５は、クロックの位相を進める場合のクロック補正回路の動作を示すタイミング図である。ここでは、出力クロック（CLK-OUT ）の位相を１／４周期進めるためのadvance 信号が与えられた場合の動作を説明する。
時刻Ｔ1 以前は、信号（rst ）が「Ｈ」であるものとする。このとき、出力クロック（CLK-OUT ）としてクロック（CLK-A ）が使用されている。
【００３２】
この状態において前進指示が与えられるものとする。この例では、時刻Ｔ1 においてadvance 信号が「Ｌ」から「Ｈ」に変化している。続いて、検出回路１５は、時刻Ｔ2 において入力クロック（CLK-IN）の立上りエッジを検出すると、信号（rst ）の論理を「Ｈ」から「Ｌ」に変化させる。そして、タイミング調整回路１６は、その信号（rst ）の変化に基づいてリセット信号（rst-a ）およびリセット信号（rst-b ）を生成する。ここでは、タイミング調整回路１６は、前進指示が与えられているので、受信した信号（rst ）をそのままリセット信号（rst-a ）およびリセット信号（rst-b ）として出力する。これにより、時刻Ｔ2 以降、フリップフロップ回路１１のリセット端子には「Ｌ」が与えられ、フリップフロップ回路１３のリセット端子には「Ｈ」が与えられることになる。即ち、時刻Ｔ2 以降、フリップフロップ回路１１は「Ｌ」を出力し、フリップフロップ回路１３はクロック（CLK-B ）を出力する。この結果、出力クロック（CLK-OUT ）として出力される信号は、クロック（CLK-A ）からクロック（CLK-B ）に切り替わる。
【００３３】
続いて、時刻Ｔ3 において再び前進指示が与えられるものとする。この場合、検出回路１５は、時刻Ｔ4 において入力クロック（CLK-IN）の立上りエッジを検出すると、信号（rst ）の論理を「Ｌ」から「Ｈ」に変化させる。そして、タイミング回路１６は、時刻Ｔ2 における動作と同様に、その信号（rst ）をそのままリセット信号（rst-a ）およびリセット信号（rst-b ）として出力する。これにより、時刻Ｔ4 以降、フリップフロップ回路１１のリセット端子には「Ｈ」が与えられ、フリップフロップ回路１３のリセット端子には「Ｌ」が与えられることになる。すなわち、時刻Ｔ4 以降、フリップフロップ回路１１はクロック（CLK-A ）を出力し、フリップフロップ回路１３は「Ｌ」を出力する。この結果、出力クロック（CLK-OUT ）として出力される信号は、クロック（CLK-B ）からクロック（CLK-A ）に切り替わる。
【００３４】
このように、クロック補正回路１０においては、前進指示を受信する毎にクロック（CLK-A ）またはクロック（CLK-B ）が交互に切り換えられて出力される。ここで、クロック（CLK-A ）およびクロック（CLK-B ）は、互いに１／４周期だけシフトしている。したがって、出力クロック（CLK-OUT ）の周期は、前進指示を受信した直後には、通常時の３／４倍になる。この結果、出力クロック（CLK-OUT ）の位相は、前進指示を受信する毎に、１／４周期だけ進むことになる。
【００３５】
図６は、クロックの位相を遅らせる場合のクロック補正回路の動作を示すタイミング図である。ここでは、出力クロック（CLK-OUT ）の位相を１／４周期遅らせるためのretard信号が与えられた場合の動作を説明する。
時刻Ｔ1 以前は、図５に示した場合と同様に、信号（rst ）が「Ｈ」であるものとする。そして、出力クロック（CLK-OUT ）としてクロック（CLK-A ）が使用されている。
【００３６】
この状態において遅延指示が与えられる。ここでは、時刻Ｔ1 においてretard信号が「Ｌ」から「Ｈ」に変化している。続いて、検出回路１５は、時刻Ｔ2 において入力クロック（CLK-IN）の立上りエッジを検出すると、信号（rst ）の論理を「Ｈ」から「Ｌ」に変化させる。そして、タイミング調整回路１６は、その信号（rst ）の変化に基づいてリセット信号（rst-a ）およびリセット信号（rst-b ）を生成する。ここでは、タイミング調整回路１６は、遅延指示を受信すると共に、信号（rst ）が「Ｈ」から「Ｌ」に変化したことを検出する。したがって、タイミング調整回路１６は、受信した信号（rst ）をそのままリセット信号（rst-a ）として出力するとともに、その信号（rst ）を入力クロック（CLK-IN）の１周期時間だけ遅延させた信号をリセット信号（rst-b ）として出力する。この実施例では、時刻Ｔ3 においてリセット信号（rst-b ）の論理が反転している。
【００３７】
これにより、フリップフロップ回路１１は、時刻Ｔ2 以降はそのリセット端子に「Ｌ」が与えられるので、「Ｌ」を出力する。一方、フリップフロップ回路１３のリセット端子には、時刻Ｔ2 〜時刻Ｔ3 は「Ｌ」が与えられ、時刻Ｔ3 以降は「Ｈ」が与えられることになる。すなわち、フリップフロップ回路１３は、時刻Ｔ2 〜時刻Ｔ3 は「Ｌ」を出力し、時刻Ｔ3 以降はクロック（CLK-B ）を出力する。この結果、出力クロック（CLK-OUT ）として出力される信号は、時刻Ｔ2 〜時刻Ｔ3 における遷移期間の後、クロック（CLK-A ）からクロック（CLK-B ）に切り替わる。
【００３８】
続いて、時刻Ｔ4 において再び遅延指示が与えられるものとする。この場合、検出回路１５は、時刻Ｔ5 において入力クロック（CLK-IN）の立上りエッジを検出すると、信号（rst ）の論理を「Ｌ」から「Ｈ」に変化させる。このとき、タイミング調整回路１６は、遅延指示を受信すると共に、信号（rst ）が「Ｌ」から「Ｈ」に変化したことを検出する。したがって、タイミング調整回路１６は、受信した信号（rst ）を入力クロック（CLK-IN）の１周期時間だけ遅延させた信号をリセット信号（rst-a ）およびリセット信号（rst-b ）として出力する。この実施例では、時刻Ｔ6 において、リセット信号（rst-a ）およびリセット信号（rst-b ）の論理が反転している。
【００３９】
これにより、時刻Ｔ6 以降、フリップフロップ回路１１は、そのリセット端子に「Ｈ」が与えられ、フリップフロップ回路１３は、そのリセット端子に「Ｌ」が与えられることになる。すなわち、時刻Ｔ6 以降は、フリップフロップ回路１１はクロック（CLK-A ）を出力し、フリップフロップ回路１３は「Ｌ」を出力する。この結果、出力クロック（CLK-OUT ）として出力される信号は、時刻Ｔ5 〜時刻Ｔ6 における遷移期間の後、クロック（CLK-B ）からクロック（CLK-A ）に切り替わる。
【００４０】
このように、クロック補正回路１０においては、遅延指示を受信する毎にクロック（CLK-A ）またはクロック（CLK-B ）が交互に切り換えられて出力される。そして、出力クロック（CLK-OUT ）の周期は、遅延指示を受信した直後には、通常時の５／４倍になる。この結果、出力クロック（CLK-OUT ）の位相は、遅延指示を受信する毎に、１／４周期だけ遅れることになる。
【００４１】
上述のように、クロック補正回路１０によれば、出力クロックの位相を１／４周期単位で任意に進ませることができ、また、任意に遅らせることができる。
また、このクロック補正回路１０においては、出力クロック（CLK-OUT ）の信号源（フリップフロップ回路１１、１３）、及びその信号源を制御する回路（検出回路１５、タイミング調整回路１６）が共に入力クロック（CLK-IN）に従って動作する。すなわち、上記出力クロック（CLK-OUT ）の信号原およびその信号源を制御する回路は互いに同期して動作する。したがって、クロック補正回路１０の動作は安定している。
【００４２】
なお、上記実施例では、出力クロックの位相を１／４周期単位で補正する回路を示したが、本発明はこれに限定されるものではない。即ち、例えば、図７に示すように、クロック補正回路１０のフリップフロップ回路１１および１３の代わりにＮ分周回路４１および４２を設ければ、出力クロックの位相は、１／２Ｎ周期単位で補正することができる。ただし、Ｎ分周回路４１は入力クロック（CLK-IN）の立上りエッジに同期して分周動作を行い、Ｎ分周回路４２は入力クロック（CLK-IN）の立下りエッジに同期して分周動作を行うものとする。
【００４３】
【発明の効果】
本発明によれば、クロックの位相をそのクロックの１／２周期よりも細かい単位で補正できる。また、クロック補正回路の動作が安定する。
【図面の簡単な説明】
【図１】本発明の一実施形態のクロック補正回路のブロック図である。
【図２】本実施形態のクロック補正回路における分周動作を説明する図である。
【図３】検出回路の一例のブロック図である。
【図４】タイミング調整回路の一例のブロック図である。
【図５】クロックの位相を進める場合のクロック補正回路の動作を示すタイミング図である。
【図６】クロックの位相を遅らせる場合のクロック補正回路の動作を示すタイミング図である。
【図７】本発明の他の形態のクロック補正回路のブロック図である。
【図８】既存のクロック補正回路の一例の回路図である。
【図９】図８に示すクロック補正回路の動作を示すタイミング図である。
【符号の説明】
１０        クロック補正回路
１１、１３  フリップフロップ回路
１５        検出回路
１６        タイミング調整回路
４１、４２  分周回路
【図１】
0003729041.tif 000002
【図２】
0003729041.tif 000003
【図３】
0003729041.tif 000004
【図４】
0003729041.tif 000005
【図５】
0003729041.tif 000006
【図６】
0003729041.tif 000007
【図７】
0003729041.tif 000008
【図８】
0003729041.tif 000009
【図９】
0003729041.tif 000010