(57)【特許請求の範囲】
【請求項１】
基準クロックに対して所定の位相差を有するシフトクロックを発生するシフトクロック発生装置であって、
所定の遅延時間を有する単位遅延素子を多数直列接続することにより構成され、前記基準クロックを前記各単位遅延素子を介して順次遅延しながら伝送する遅延線と、
一端が前記各単位遅延素子の出力に接続され、他端が前記シフトクロック出力経路に接続された複数のスイッチからなり、該複数のスイッチの一つである特定スイッチが選択的にオンされることにより、前記基準クロックを所定時間だけ遅延させた遅延クロックを前記シフトクロックとして前記シフトクロック出力経路上に送出するスイッチ群と、
前記シフトクロックの前記基準クロックに対する位相差を表すデータに基づき、前記スイッチ群において選択的にオンさせる特定スイッチを決定し、該特定スイッチをオンさせるスイッチ制御手段と、
を備え、
前記スイッチ制御手段は、前記遅延線を構成する単位遅延素子の遅延時間を時間分解能として前記基準クロックの周期を数値化した周期データと、生成すべきシフトクロックの前記基準クロックに対する遅延時間と前記基準クロックの周期との比率を表す比率データと、に基づき、前記特定スイッチを決定することを特徴とするシフトクロック発生装置。
【請求項２】
前記比率データは、前記基準クロックを遅延させることにより生成すべきシフトクロックの数ｘに値１を加えた値を分母とし、値１から値ｘを分子とするｘ個のデータからなることを特徴とする請求項１に記載のシフトクロック発生装置。
【請求項３】
前記遅延線を構成する単位遅延素子と特性が同じ単位遅延素子をループ状に接続することにより構成され、該ループ内にてパルス信号を周回させるリング遅延線と、
前記基準クロックの一周期内に前記リング遅延線にて前記パルス信号が前記単位遅延素子を通過した回数をカウントし、該カウント結果を前記基準クロックの周期を表す周期データとして出力する時間Ａ／Ｄ変換手段と、
を備え、前記スイッチ制御手段は、前記時間Ａ／Ｄ変換手段から出力される周期データを用いて、前記特定スイッチを決定することを特徴とする請求項１又は請求項２に記載のシフトクロック発生装置。
【請求項４】
前記遅延線を構成する単位遅延素子の遅延時間を時間分解能として信号の出力周期を制御可能なデジタル制御発振回路を備え、
前記遅延線は、該デジタル制御発振回路からの出力信号を前記基準クロックとして受けて伝送し、
前記スイッチ制御手段は、前記デジタル制御発振回路において出力信号の周期を制御するのに用いられた制御データを、前記基準クロックの周期データとして取り込み、前記特定スイッチを決定することを特徴とする請求項１又は請求項２に記載のシフトクロック発生装置。
【請求項５】
前記遅延線を構成する単位遅延素子の遅延時間を時間分解能として信号の出力周期を制御可能なデジタル制御発振回路と、
該デジタル制御発振回路からの出力信号を１／２分周することにより、デューティ比５０％の基準クロックを生成する分周回路と、
を備え、前記遅延線には、前記分周回路から前記基準クロックが入力され、
前記スイッチ制御手段は、前記デジタル制御発振回路において出力信号の周期を制御するのに用いられた制御データを取り込み、該制御データが表す出力信号の周期を２倍することにより、前記基準クロックの周期データを演算し、該周期データを用いて、前記特定スイッチを決定することを特徴とする請求項１又は請求項２に記載のシフトクロック発生装置。
【請求項６】
前記デジタル制御発振回路は、
前記遅延線を構成する単位遅延素子と特性が同じ単位遅延素子をループ状に接続することにより構成され、該ループ内にてパルス信号を周回させるリング遅延線と、
前記基準クロックの一周期内に前記リング遅延線にて前記パルス信号が前記単位遅延素子を通過した回数をカウントし、該カウント結果を前記基準クロックの周期を表す周期データとして出力する時間Ａ／Ｄ変換手段と、
該時間Ａ／Ｄ変換手段から出力された周期データを予め設定された逓倍数で除算することにより、当該デジタル制御発振回路にて生成すべき出力信号の周期を表す制御データを生成する除算手段と、
該除算手段にて生成された制御データと、前記リング遅延線にて前記パルス信号が前記単位遅延素子を通過した通過回数とを比較し、該通過回数が前記制御データと一致する度に、所定パルス幅の出力信号を発生する信号出力手段と、
を備えたことを特徴とする請求項４又は請求項５に記載のシフトクロック発生装置。
【請求項７】
前記シフトクロックとして、位相差が互いに異なる複数のシフトクロックを生成するために、該シフトクロックの数に応じて、前記遅延線、前記スイッチ群、前記シフトクロック出力経路、及び、前記スイッチ制御手段を複数備えたことを特徴とする請求項１〜請求項６の何れか１項に記載のシフトクロック発生装置。
【請求項８】
前記シフトクロックとして、位相差が互いに異なる複数のシフトクロックを生成するために、該シフトクロックの数に応じて、前記スイッチ群、前記シフトクロック出力経路、及び、前記スイッチ制御手段を複数備え、該複数のスイッチ群を構成する各スイッチを、共通の遅延線に夫々接続したことを特徴とする請求項１〜請求項６の何れか１項に記載のシフトクロック発生装置。
【請求項９】
前記複数のスイッチ群は、夫々、生成すべきシフトクロックの基準クロックに対する位相差に対応して、前記共通の遅延線を構成する複数の単位遅延素子の一部に接続されていることを特徴とする請求項８に記載のシフトクロック発生装置。
【請求項１０】
前記共通の遅延線を構成する複数の単位遅延素子は、生成すべきシフトクロックの数に対応した複数のグループに区分され、
前記複数のスイッチ群は、対応するグループの単位遅延素子に接続されていることを特徴とする請求項９に記載のシフトクロック発生装置。
【請求項１１】
前記スイッチ群の特定スイッチを介して選択的に入力されるシフトクロックを外部に出力するシフトクロック出力経路に加えて、前記基準クロックをそのまま外部に出力する基準クロック出力経路を備えたことを特徴とする請求項１〜請求項１０の何れか１項に記載のシフトクロック発生装置。
【請求項１２】
前記単位遅延素子は、所定のゲート遅延時間を有するゲート回路からなることを特徴とする請求項１〜請求項１１の何れか１項に記載のシフトクロック発生装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、基準クロックに対して所定の位相差を有するシフトクロックを発生するシフトクロック発生装置に関する。
【０００２】
【従来の技術】
従来より、制御装置や信号処理装置には、装置を構成する各種機能回路を夫々異なるタイミングで順に動作させることで、所定の機能を実現できるようにしたものが知られている。この種の装置では、各機能回路の動作タイミングを設定するために、基準となるクロック（基準クロック）に対して所定の位相差を有する１又は複数のシフトクロックを生成し、その生成したシフトクロック（若しくはシフトクロックと基準クロック）を各機能回路に動作クロックとして供給することで、各機能回路の動作タイミングを制御している。
【０００３】
そして、この種の装置において、シフトクロックを生成するのに使用される従来のシフトクロック発生装置は、一般に、アナログＰＬＬを用いて、生成すべきシフトクロックの位相差を一周期とする高周波信号を生成し、この高周波信号を利用してシフトクロックを生成するようにされている。
【０００４】
例えば、図１０（ｂ）に示すように、基準クロックＭＣＫの一周期の１／８の位相差を有する８相シフトクロックＣＫａ〜ＣＫｈを生成する場合には、図１０（ａ）に示すように、アナログＰＬＬ５０にて基準クロックＭＣＫの８倍の周波数の動作クロックを生成し、この動作クロックでシフトレジスタ５６を駆動することにより、シフトレジスタ５６から８相シフトクロックＣＫａ〜ＣＫｈを出力するように構成されたシフトクロック発生装置が使用される。
【０００５】
即ち、図１０（ａ）に例示する従来のシフトクロック発生装置において、アナログＰＬＬ５０は、発振周波数を電圧制御可能な発振器（ＶＣＯ）５１と、ＶＣＯ５１からの出力を１／８分周する分周器５２と、この分周器５２からの出力（ＶＣＯ５１の発振周波数の１／８の周波数の信号）と、基準クロックＭＣＫとを位相比較し、その位相差に応じた制御信号を発生する位相比較器５３と、位相比較器５３からの制御信号にフィルタ処理（積分処理）を施し、ＶＣＯ５１の発振周波数制御電圧として出力するループフィルタ５４と、から構成されている。このため、ＶＣＯ５１の発振周波数は、基準クロックＭＣＫの周波数の８倍に制御される。
【０００６】
一方、シフトレジスタ５６は、ループ状に接続された８個のラッチ回路５６ａ，５６ｂ，…５６ｈから構成されている。各ラッチ回路５６ａ〜５６ｈは、夫々、外部から２値データをプリセットできるようになっており、アナログＰＬＬ５０のＶＣＯ５１から出力される高周波信号（動作クロック）を受けて、ラッチした２値データを順次シフトさせる。また、各ラッチ回路５６ａ〜５６ｈにプリセットされる２値データは、「００００１１１１」となっており、ラッチ回路５６ａ〜５６ｄには値０の２値データが、ラッチ回路５６ｅ〜５６ｈには値１の２値データが、夫々、プリセットされる。
【０００７】
この結果、アナログＰＬＬ５０からシフトクロック生成部２０に動作クロックが入力されると、各ラッチ回路５６ａ〜５６ｈからは、基準クロックＭＣＫと周期が同じで、その周期の１／８だけ位相がずれた８個のシフトクロックＣＫａ〜ＣＫｈが出力されることになる。
【０００８】
【発明が解決しようとする課題】
ところで、従来のシフトクロック発生装置では、基準クロックに対するシフトクロックの位相差若しくはシフトクロック同士の位相差を制御するために、その位相差に対応した周期の動作クロックをアナログＰＬＬを用いて生成し、その生成した動作クロックを用いてシフトクロックを生成することから、アナログＰＬＬを構成する発振器（ＶＣＯ）の発振周波数を、基準クロックの何倍もの周波数にしなければない。
【０００９】
このため、基準クロックに対するシフトクロックの位相差やシフトクロック同士の位相差を小さくするには、発振器（ＶＣＯ）の制御可能発振周波数を充分高くし、しかも、アナログＰＬＬを構成する各部の動作速度を高速にしなければならず、シフトクロック発生装置のコストアップを招くといった問題があった。
【００１０】
また、制御装置等に組み込まれるシフトクロック発生装置には小型化が要求されることから、回路規模の制限等により、アナログＰＬＬを用いて生成可能な信号周波数を周波数を高めるにも限界があるという問題もある。
本発明は、こうした問題に鑑みなされたもので、基準クロックを所定の位相差分シフト（遅延）させたシフトクロックを生成するに当たって、生成すべきシフトクロックの基準クロックに対する位相差に対応した高周波クロックを生成することなく、所望のシフトクロックを生成し得るシフトクロック発生装置を提供することを目的とする。
【００１１】
【課題を解決するための手段】
かかる目的を達成するためになされた請求項１に記載のシフトクロック発生装置においては、遅延線に入力された基準クロックが、遅延線を構成する単位遅延素子にて順次遅延されながら、遅延線の終端方向へと伝送される。また、遅延線を構成する各単位遅延素子の出力側には、夫々、スイッチが接続されている。そして、スイッチ制御手段が、シフトクロックの基準クロックに対する位相差を表すデータに基づき、各単位遅延素子の出力に接続されたスイッチからなるスイッチ群の中の特定スイッチをオンさせることにより、特定スイッチを介して、基準クロックを所定時間遅延させた遅延クロックをシフトクロック出力経路へと出力させる。
【００１２】
この遅延クロックは、遅延線の基準クロックの入力側から特定スイッチの接続点までの遅延経路を形成している単位遅延素子を通過した基準クロックであることから、シフトクロック出力経路から外部に出力されるシフトクロックは、その遅延回路を形成している単位遅延素子の個数ｘと各単位遅延素子の遅延時間△Ｔとで決まる遅延時間「ｘ・△Ｔ」だけ基準クロックを遅延させたものとなる。
【００１３】
従って、本発明のシフトクロック発生装置によれば、従来のようにアナログＰＬＬを用いることなく、基準クロックに対して所望の位相差を有するシフトクロックを生成できることになる。よって、本発明によれば、従来装置に比べて構成が簡単で、低コストで実現し得るシフトクロック発生装置を提供できる。
【００１４】
また、本発明のシフトクロック発生装置によれば、シフトクロックの基準クロックに対する位相差は、スイッチ制御手段への入力データによって、任意に設定することができ、しかも、その設定可能な位相差の時間分解能は、遅延線を構成する単位遅延素子一個当たりの遅延時間で決まる。
【００１５】
このため、遅延線を構成する単位遅延素子に、遅延時間の短い遅延素子を用いるようにすれば、シフトクロックの基準クロックに対する位相差を極めて簡単に小さくすることができ、ＰＬＬ回路を用いた従来装置では生成不可能であったシフトクロックでも、容易に生成できることになる。
【００１６】
また、本発明のシフトクロック発生装置においては、スイッチ制御手段が、遅延線を構成する単位遅延素子の遅延時間を時間分解能として基準クロックの周期を数値化した周期データと、生成すべきシフトクロックの基準クロックに対する遅延時間と基準クロックの周期との比率を表す比率データと、に基づき、特定スイッチを決定するよう構成されている。
このため、スイッチ制御手段は、周期データと比率データとに基づき、基準クロックに対するシフトクロックの位相差（遅延時間）が所望時間となる単位遅延素子の個数（延いては特定スイッチの位置）を、簡単且つ正確に決定することができるようになる。よって、本発明のシフトクロック発生装置によれば、基準クロックに対して所望の位相差を有するシフトクロックを精度よく生成できる。
【００１７】
ここで、基準クロックの一周期を等分割した時間を位相差とする複数のシフトクロックを生成するような場合には、請求項２に記載のように、上記比率データを、基準クロックを遅延させることにより生成すべきシフトクロックの数ｘに値１を加えた値を分母とし、値１から値ｘを分子とするｘ個のデータとして予め設定しておけばよい。
【００１８】
即ち、このように比率データを設定すれば、例えば、上述した８相シフトクロックを生成する場合、生成すべきシフトクロックの数ｘは７個となるため、各スイッチ群での特定スイッチは、周期データＣＤを値８（＝ｘ＋１）で除算した値「ＣＤ／８」を単位遅延素子の連結段数の最小単位として、基準信号の入力側から、「ＣＤ／８」個目，「２×ＣＤ／８」個目，…「７×ＣＤ／８」個目、というように決定されることになる。
そして、このようにすれば、例えば、基準クロックの周期が変動したとしても、基準クロックと周期が同じで位相が互いに異なる複数相のシフトクロックを精度よく生成できるようになる。
【００１９】
一方、請求項１又は請求項２に記載のシフトクロック発生装置において、スイッチ制御手段が特定スイッチを決定するのに用いる周期データとしては、請求項３に記載のように、リング遅延線と時間Ａ／Ｄ変換手段とを用いて生成するようにするとよい。
【００２０】
即ち、請求項３に記載のシフトクロック発生装置において、リング遅延線は、シフトクロック生成用の遅延線を構成する単位遅延素子と特性が同じ単位遅延素子をループ状に接続することにより構成されており、そのループ内にてパルス信号を周回させる。
そして、時間Ａ／Ｄ変換手段は、基準クロックの一周期内にリング遅延線にてパルス信号が単位遅延素子を通過した回数をカウントし、そのカウント結果を、基準クロックの周期を表す周期データとして出力する。
【００２１】
従って、時間Ａ／Ｄ変換手段にて生成される周期データは、シフトクロック生成用の遅延線を構成している単位遅延素子の遅延時間を時間分解能として基準クロックの周期を数値化したものとなり、しかも、温度変化等によって遅延線での遅延特性が変化した場合でも、その遅延特性に対応した周期データを正確に生成することが可能となる。
【００２２】
つまり、基準クロックの周期は、設計時に設定されることから、周期データとしては、その設計時に設定された既知の周期を、遅延線を構成する単位遅延素子の遅延時間で除算することにより、簡単に設定できる。
しかし、このように周期データを設定すると、遅延線を構成する単位遅延素子の遅延時間は素子温度等によって変化することから、シフトクロック発生装置が温度変化が生じる環境下（例えば、自動車等）で使用されるような場合には、周期データ１ビット当たりの時間が単位遅延素子の遅延時間に対応しなくなり、この周期データを用いて特定スイッチを決定しても、基準クロックに対するシフトクロックの位相差を所望時間に設定することができないことがある。
【００２３】
しかし、請求項３に記載のように、シフトクロック生成用の遅延線と同じ特性の単位遅延素子をループ状に接続したリング遅延線を用いて、基準クロックの周期を数値化するようにすれば、得られる周期データは、遅延線を構成する単位遅延素子の遅延特性に対応して変化することになるため、スイッチ制御手段において、その生成された周期データを用いて遅延線からのシフトクロックの取り出し位置（換言すれば特定スイッチ）を決定すれば、基準クロックに対するシフトクロックの位相差は常に正確に所望時間に制御されることになるのである。
【００２４】
ところで、請求項３に記載のシフトクロック発生装置は、外部から入力される基準クロックの周期をリング遅延線と時間Ａ／Ｄ変換手段とを用いて数値化するようにしているが、シフトクロック発生装置において、基準クロック自体を生成するようにしてもよい。
そして、この場合には、請求項４に記載のように、遅延線を構成する単位遅延素子の遅延時間を時間分解能として出力信号の周期を制御可能なデジタル制御発振装置を用いて、基準クロックを生成するようにするとよい。
【００２５】
つまり、このようにすれば、デジタル制御発振回路において出力信号の周期（換言すれば発振周波数）を制御するのに用いられる制御データが、基準クロックの周期を単位遅延素子の遅延時間を時間分解能として数値化したデータとなるため、この制御データをそのまま周期データとしてスイッチ制御手段に入力すれば、スイッチ制御手段にて特定スイッチを決定することができるようになる。
【００２６】
ところで、デジタル制御発振装置は、出力信号（換言すれば基準クロック）の周期を単位遅延素子の遅延時間を時間分解能として制御するものであるため、基準クロックの周期自体は所望周期に制御されるものの、そのデューティ比は５０％にならないことがあり、生成した基準クロックやシフトクロックの用途が制限されることがある。
【００２７】
つまり、クロックのデューティ比が５０％であれば、その立上がりタイミングと立下がりタイミングとの両方を利用して各種タイミング制御を実行できるが、クロックのデューティ比が定まらない場合には、クロックの立上がりタイミングと立下がりタイミングとの何れか一方でしかタイミング制御を行うことができないことから、生成したクロックを利用できる範囲が制限されてしまうのである。
【００２８】
このため、上記のようにデジタル制御発振回路を用いて基準クロックを生成する場合、基準クロック及びシフトクロックとして、デューティ比５０％のクロックが必要なときには、シフトクロック発生装置を、請求項５に記載のように構成するとよい。
【００２９】
即ち、請求項５に記載のシフトクロック発生装置には、デジタル制御発振回路からの出力信号を１／２分周することにより、デューティ比５０％の基準クロックを生成する分周回路が設けられ、この分周回路にて生成されたデューティ比５０％の基準クロックを、遅延線に入力するようにされている。
このため、この装置によれば、生成した基準クロック及びシフトクロックのデューティ比を確実に５０％にすることができ、その用途を拡大できる。
【００３０】
尚、シフトクロック発生装置をこのように構成した場合、遅延線に入力される基準クロックの周期は、デジタル制御発振回路からの出力信号の周期の２倍になるため、スイッチ制御手段としては、デジタル制御発振回路において出力信号の周期を制御するのに用いられた制御データを取り込み、その制御データが表す出力信号の周期を２倍することにより、基準クロックの周期データを演算し、その周期データを用いて、特定スイッチを決定するように構成する必要はある。
【００３１】
次に、デジタル制御発振回路としては、例えば、上述したリング遅延線と、リング遅延線内でパルス信号が単位遅延素子を通過した回数をカウントし、そのカウント値が、生成すべき出力信号の周期に対応した設定値（制御データ）に達する度に、所定パルス幅の出力信号（クロック）を発生する信号出力手段と、を用いて構成することができる。
【００３２】
つまり、このようにすれば、リング遅延線を構成する単位遅延素子の遅延時間を分解能として出力信号の周期を制御でき、しかも、その周期は、信号出力手段が信号の出力タイミングを決定するのに用いる設定値に対応するため、リング遅延線を構成する単位遅延素子に、シフトクロック生成用の遅延線を構成する単位遅延素子と同じ特性のものを用いるようにすれば、基準クロックに対して所望の位相差を有するシフトクロックを精度よく生成することができるようになる。
【００３３】
ところが、デジタル制御発振回路をこのように構成した場合、デジタル制御発振回路からの出力信号の周期は、リング遅延線を構成する単位遅延素子の遅延時間だけで決まり、その遅延時間が、装置の使用環境の変化（例えば温度変化等）によって変化すると、基準クロックやシフトクロックの周期が変化してしまうことになる。
【００３４】
そこで、これら各クロックの周期変化を防止するには、請求項６に記載のように、デジタル制御発振回路を所謂デジタルＰＬＬとして構成し、これに、温度変化等のない安定したクロックを入力することにより、所望周期の出力信号を生成するようにするとよい。
【００３５】
即ち、請求項６に記載のシフトクロック発生装置において、デジタル制御発振回路は、請求項１０に記載のシフトクロック発生装置と同様のリング遅延線及び時間Ａ／Ｄ変換手段を備え、これらを用いて、外部から一定周期で入力される低周波クロックの周期を単位遅延素子の遅延時間を時間分解能として数値化するようにされている。
【００３６】
そして、除算手段により、その数値化された低周波クロックの周期データを予め設定された逓倍数で除算することで、デジタル制御発振回路にて生成すべき出力信号の周期を表す制御データを生成し、信号出力手段にて、その生成された制御データと、リング遅延線内でパルス信号が単位遅延素子を通過した通過回数とを比較し、その通過回数が制御データと一致する度に、所定パルス幅の出力信号を発生する。
【００３７】
従って、デジタル制御発振回路をこのように構成した場合には、デジタル制御発振回路からの出力信号は、外部から入力される低周波クロックを所定の逓倍値で逓倍したクロックとなり、この低周波クロックを温度特性等のない安定した発振器を用いて生成するようにすれば、周期変動の少ない安定した基準クロック及びシフトクロックを生成することができるようになる。
【００３８】
また、このように、デジタル制御発振回路（デジタルＰＬＬ）を用いて低周波クロックを逓倍したクロックを生成するようにした場合、シフトクロック発生装置の動作クロックを生成する発振器には、低周波クロックを発生する低周波発振器を用いることができるので、その発振器自体を比較的安価に実現でき、しかも、シフトクロック発生装置に高周波クロックを入力する必要がないので、その入力経路から漏れ出す高周波信号成分がノイズとなって他の装置に影響を与えるのを防止することもできる。
【００３９】
ところで、本発明のシフトクロック発生装置は、遅延線を構成する単位遅延素子を介して順次遅延されながら伝送される基準クロックの中から、遅延線内での遅延時間が、生成すべきシフトクロックの基準クロックに対する位相差となる基準クロックを選択的に取り出すことにより、シフトクロックを生成するものであることから、複数のシフトクロックを生成するのにスイッチ群やスイッチ制御手段を共用することができない。
【００４０】
このため、本発明のシフトクロック発生装置を用いて、複数のシフトクロックを生成するには、請求項７に記載のように、遅延線、スイッチ群、シフトクロックの出力経路、及び、スイッチ制御手段を、夫々、生成すべきシフトクロックの数に応じて複数設けるようにするか、或いは、請求項８に記載のように、スイッチ群、シフトクロックの出力経路、及び、スイッチ制御手段については、生成すべきシフトクロックの数に応じて複数設け、遅延クロック取出用の遅延線については、各スイッチ群共通の一つの遅延線にて構成し、各スイッチ群を構成するスイッチを、その共通の遅延線に夫々接続するようにする必要はある。
【００４１】
尚、請求項８に記載の装置によれば、請求項７に記載のものに比べて、遅延線の数を減らすことができるので、複数のシフトクロックを生成可能なシフトクロック発生装置を、より簡単に構成できる。
また、請求項８に記載のようにシフトクロック発生装置を構成する場合、各スイッチ群を構成するスイッチは、共通の遅延線を構成している全ての単位遅延素子に対して設ける必要はなく、請求項９に記載のように、生成すべきシフトクロックの基準クロックに対する位相差（遅延時間）に対応した一部の単位遅延素子に対して設けるようにしてもよい。
【００４２】
そして、特に、シフトクロック発生装置を請求項９に記載のように構成する場合には、請求項１０に記載のように、共通の遅延線を構成する単位遅延素子を、生成すべきシフトクロックの数に応じて複数グループに区分し、各スイッチ群を構成する各スイッチを、対応するグループの単位遅延素子に対して設けるようにするとよい。つまり、このようにすれば、遅延線を構成する各単位遅延素子毎に、スイッチを一個設けるだけでよく、装置構成を簡単にし、シフトクロック発生装置の小型化を図ることができる。
【００４３】
また、図１０（ｂ）に示した８相シフトクロックのように、基準クロックの一周期を等分割した時間を位相差とする複数のシフトクロックを生成するような場合には、その複数のシフトクロックの内の一つには、基準クロックをそのまま用いればよいため、シフトクロック発生装置において、各シフトクロックを生成するスイッチ群や制御手段の数は、シフトクロックの相数から値１を減じた数にすればよい。
【００４４】
そして、この場合、シフトクロック発生装置から、各相のシフトクロックを全て出力させるようにするには、請求項１１に記載のように、スイッチ群の特定スイッチを介して入力される遅延クロックをシフトクロックとして出力する出力経路に加えて、基準クロックをそのままシフトクロックとして出力する出力経路を設けるようにすればよい。
【００４５】
一方、本発明のシフトクロック発生装置において、基準クロックに対するシフトクロックの位相差（遅延時間）をより高い時間分解能で調整できるようにするには、上述したように、遅延線を構成する単位遅延素子の遅延時間をできるだけ短くすればよいが、そのためには、請求項１２に記載のように、単位遅延素子として、所定のゲート遅延時間を有するゲート回路（詳しくは、インバータ、ＯＲゲート、ＡＮＤゲート等の各種ゲート回路）を用いることが望ましい。
つまり、ゲート回路のゲート遅延時間は、ゲート回路を構成する半導体素子の動作特性により決まり、数ｎｓｅｃ．以下と極めて短い時間であるので、単位遅延素子をゲート回路にて構成すれば、基準クロックに対するシフトクロックの位相差（遅延時間）をより高精度に設定できることになる。
【００４６】
【発明の実施の形態】
以下に本発明の実施形態を図面に基づき説明する。
図１は、本発明が適用された実施例のスペクトル拡散方式の距離測定装置全体の構成を表す構成図である。
【００４７】
図１に示す如く、本実施例の距離測定装置は、例えば、自動車に搭載されて、前方を走行する他の車両までの距離を測定するためのものであり、所定周波数（例えば２０ＭＨｚ）の基準クロックＭＣＫを発生する基準クロック発生部１０と、基準クロックＭＣＫに同期して、所定ビット長のＰＮ符号（例えば、Ｍ系列符号からなる３１ビット長の疑似ランダム符号）に応じたパルス列を発生するパルス発生部１２と、パルス発生部１２が発生したパルス列（以下、発光パルスという）に応じて測距用の電磁波であるレーザ光を車両前方に向けて出射する発光部１４とを備える。
【００４８】
尚、発光部１４は、発光素子としてレーザダイオードＬＤを備え、このレーザダイオードＬＤへの通電・非通電が、パルス発生部１２からの出力（発光パルス）を受ける駆動回路１５によって切り換えられることにより、ＰＮ符号に応じたレーザ光を出射する。
【００４９】
また、パルス発生部１２には、基準クロックＭＣＫに同期して、マイクロコンピュータ（以下、単にＣＰＵという）２からＰＮ符号が入力され、パルス発生部１２は、そのＰＮ符号に従いＰＮ符号に対応した発光パルスを発生する。
一方、本実施例の距離測定装置には、発光部１４から出射されたレーザ光が車両前方の測定対象物に当たって反射してくる反射光を受光する受光部１６と、受光部１６からの受光信号を増幅する増幅器１７と、増幅器１７により増幅された受光信号と予め設定された基準電圧Ｖｒｅｆとを比較し、受光信号が基準電圧Ｖｒｅｆよりも大きいときにＨｉｇｈレベルとなり、受光信号が基準電圧Ｖｒｅｆ以下であるときにＬｏｗレベルとなる受光パルスＰＢｒを出力するコンパレータ１８とが備えられている。
【００５０】
尚、受光部１６は、電流検出用の抵抗等を介して電源ラインに逆バイアス状態で接続されたフォトダイオードＰＤを備え、フォトダイオードＰＤにレーザ光（測定対象物からの反射光）が入射することにより流れた光電流を電圧値として検出する。
【００５１】
次に、本実施例の距離測定装置には、基準クロック発生部１０が発生する基準クロックＭＣＫに基づき、基準クロックＭＣＫに同期し、且つ、互いに位相が異なる８種類のクロックＣＫａ，ＣＫｂ，…ＣＫｈ（所謂８相シフトクロック）を生成するシフトクロック生成部２０が備えられている。
【００５２】
このシフトクロック生成部２０は、基準パルス発生部１０と共に本発明のシフトクロック発生装置を構成するものであり、図１０（ａ）に示した従来のシフトクロック発生装置と同様、各クロックＣＫａ〜ＣＫｈの位相差が、夫々、基準クロックＭＣＫの周期の１／８となるように、各クロックＣＫａ〜ＣＫｈを生成する。
【００５３】
即ち、シフトクロック生成部２０において、クロックＣＫａは基準クロックＭＣＫと位相が一致し、クロックＣＫｂは基準クロックＭＣＫに対して位相が４５度遅れ、クロックＣＫｃは基準クロックＭＣＫに対して位相が９０度遅れ、クロックＣＫｄは基準クロックＭＣＫに対して位相が１３５度遅れ、クロックＣＫｅは基準クロックＭＣＫに対して位相が１８０遅れ、クロックＣＫｆは基準クロックＭＣＫに対して位相が２２５度遅れ、クロックＣＫｇは基準クロックＭＣＫに対して位相が２７０度遅れ、クロックＣＫｈは基準クロックＭＣＫに対して位相が３１５度遅れるように生成される。
【００５４】
ここで、本実施例において、シフトクロック生成部２０を用いて８相シフトクロックを生成するのは、以下の理由による。
つまり、まず、ＳＳ方式の距離測定装置では、通常、発光パルスを生成するのに用いた基準クロックＭＣＫを用いて受光パルスＰＢｒを順次サンプリングし、そのサンプリングにより得られた所定ビット長（ＰＮ符号と同じビット長）のデータと、発光パルスを生成するのに用いたＰＮ符号との相関値を演算し、その相関値が最大となる時刻を、反射光の受光時刻として検出することにより、発光部１４からのレーザ光の送信開始時刻から反射光の受光時刻までの時間を測定するようにされている。
【００５５】
このため、従来装置では、レーザ光の送受信に要した測定対象時間を、基準クロックＭＣＫの一周期を時間分解能として測定することになり、図２に示すように、真の測定対象時間に対する測定誤差が大きくなってしまう（図２の従来測定結果参照）。
【００５６】
尚、図２は、基準クロックＭＣＫ（＝ＣＫａ）のクロック周波数が２０ＭＨｚの場合を表しており、基準クロックＭＣＫを用いて得られる従来測定結果は、５０ｎｓｅｃ．、１００ｎｓｅｃ．、１５０ｎｓｅｃ．、…となり、その時間分解能は、５０ｎｓｅｃ．となる。
【００５７】
そこで、本実施例では、上記のようにシフトクロック生成部２０を用いて８相シフトクロックＣＫａ〜ＣＫｈを生成することで、図２に示すように、測定対象時間を、上記各クロックＣＫａ〜ＣＫｈの位相差で決まる、従来の１／８の時間分解能（６．２５ｎsec.）で測定できるようにするのである（図２の実施例測定結果参照）。
【００５８】
そして、こうした高分解能の時間測定（延いては距離測定）を実現するために、シフトクロック生成部２０で生成された８種類のクロックＣＫａ〜ＣＫｈは、夫々、受光パルスＰＢｒをラッチするラッチ部２２に入力される。
ラッチ部２２は、８個のＤーフリップフロップ（以下、ＤＦＦと記載する）２２ａ，２２ｂ，…２２ｈからなり、上記各クロックＣＫａ〜ＣＫｈは、これら８個のＤＦＦ２２ａ〜２２ｈの動作クロックとして、各ＤＦＦ２２ａ〜２２ｈに夫々入力される。
【００５９】
この結果、ラッチ部２２において、各ＤＦＦ２２ａ〜２２ｈは、夫々、各クロックＣＫａ〜ＣＫｈの立上がりタイミングで受光パルスＰＢｒをラッチすることになり、図３に示すように、ラッチ部２２からは、受光パルスＰＢｒの信号レベルを表す８種類の２値データＤ１ａ，Ｄ１ｂ，…Ｄ１ｈが夫々出力されることになる。
【００６０】
次に、ラッチ部２２から出力される８種類の２値データＤ１ａ〜Ｄ１ｈは、同期部２４に入力される。同期部２４は、ラッチ部２２から出力される８種類の２値データＤ１ａ〜Ｄ１ｈを、夫々、８個のＤＦＦ２４ａ，２４ｂ，…２４ｈを用いて、基準クロックＭＣＫ（＝クロックＣＫａ）の立上がりタイミングで同時にラッチすることにより、図３に示すように、基準クロックＭＣＫに同期して変化する２値データＤ２ａ，Ｄ２ｂ，…Ｄ２ｈに変換するためのものである。
【００６１】
そして、この同期部２４にて同期が取られた８種類の２値データＤ２ａ〜Ｄ２ｈは、夫々、８個のバッファ２６ａ，２６ｂ，…２６ｈを介して、８個の相関器３０ａ，３０ｂ，…３０ｈに入力される。
これら各相関器３０ａ〜３０ｈは、対応するバッファ２６ａ〜２６ｈから入力される２値データＤ２ａ〜Ｄ２ｈを、基準クロックＭＣＫに同期して順次取り込み、その取り込んだ２値データＤ２ａ〜Ｄ２ｈの内、パルス発生部１２が発光パルスを発生するのに使用するＰＮ符号のビット長に対応したデータ列分と、パルス発生部１２が発光パルスを発生するのに実際に使用したＰＮ符号との相関値を演算するものである。
【００６２】
そして、これら各相関器３０ａ〜３０ｈによる演算結果は、夫々、８個の２相加算部４０ａ，４０ｂ，…４０ｈに入力される。
２相加算部４０ａ〜４０ｈは、夫々、対応する相関器３０ａ〜３０ｈによる演算結果と、対応するＤＦＦ２２ａ〜２２ｈの動作クロックＣＫａ〜ＣＫｈとは位相が最も異なる（換言すれば位相が１８０度異なる、すなわちクロック半周分遅れた）クロックＣＫｅ〜ＣＫｈ及びＣＫａ〜ＣＫｄにより動作するＤＦＦ２２ｅ〜２２ｈ及び２２ａ〜２２ｄに対応した相関器３０ｅ〜３０ｈ及び３０ａ〜３０ｄの演算結果と、を互いに加算することにより、対応する相関器３０ａ〜３０ｈによる演算結果の平均化を図り、各相関器３０ａ〜３０ｈによる演算結果がノイズの影響を受けて大きく変動するのを防止するためのものである。
【００６３】
尚、本実施例において、２相加算部４０ａ〜４０ｈを用いて各相関器３０ａ〜３０ｈの演算結果を平均化するのは、以下の理由による。
即ち、本実施例の距離測定装置では、上記の通り、受光パルスＰＢｒを８相シフトクロックＣＫａ〜ＣＫｈを用いて夫々ラッチすることにより、各相関器３０ａ〜３０ｈに入力される２値データのラッチタイミング（ＤＦＦ２２ａ〜２２ｈのラッチタイミング）を、基準クロックＭＣＫの周期の１／８の時間分だけ順次シフトさせ、これによって、受光パルスＰＢｒのパルス列とＰＮ符号との相関値が最大となる時刻を、基準クロックＭＣＫの周期の１／８の時間を時間分解能として検出できるようにする。
【００６４】
そして、図２に示すように、受光パルスＰＢｒが発光パルスに完全に対応していれば、ラッチ部２２から出力される２値データＤ１ａ〜Ｄ１ｈは、反射光の受光開始タイミング以降に最初に立ち上がる特定クロック（図２では、クロックＣＫｅ）により動作するＤＦＦからの出力（図２の場合ＤＦＦ２２ｅから出力される２値データＤ１ｅとなる）を起点として、同一の値に順次変化することになり、各相関器３０ａ〜３０ｈでの演算結果も、その特定クロックに対応した相関器（図２の場合、相関器３０ｅ）を起点として、全て同一の値に変化することになる。
【００６５】
しかし、実際には、受光部１６にて光電変換される受光信号は、ノイズの影響を受けて変動することから、受光パルスＰＢｒも、そのノイズの影響を受けて変動し、発光パルスに対応した綺麗な波形にならない。従って、ラッチ部２２の各ＤＦＦ２２ａ〜２２ｈでラッチされる２値データＤ１ａ〜Ｄ１ｈが、図２に示すように基準クロックＭＣＫに同期して順に変化することは少なく、各相関器３０ａ〜３０ｈによる演算結果も、ノイズの影響を受けてばらつくことになる。
【００６６】
従って、各相関器３０ａ〜３０ｈの演算結果をそのまま用いて、受光パルスＰＢｒのパルス列とＰＮ符号との相関が最大となる時刻を検出するようにすると、検出時刻に誤差が生じ、時間測定精度（換言すれば距離測定精度）が低下することが考えられる。
【００６７】
ところで、受光信号に重畳されるノイズの幅は、通常、極めて短く、基準クロックＭＣＫの一周期に渡って同一ノイズが重畳されることはない。そして、例えば、ＤＦＦ２２ａの動作タイミング（換言すればクロックＣＫａの立上がりタイミング）とノイズのピークとが重なった場合、ＤＦＦ２２ａは勿論のこと、その前後の動作タイミングで受光パルスＰＢｒをラッチするＤＦＦ２２ｈ，ＤＦＦ２２ｂも、ノイズの影響を受けた誤った２値データをラッチすることが考えられ、ノイズの影響を最も受けないのは、クロックＣＫａとの位相差が最も大きい（換言すれば位相差１８０度の）クロックＣＫｅにて動作するＤＦＦ２２ｅとなる。
【００６８】
そこで、本実施例では、８相シフトクロックＣＫａ〜ＣＫｈの内、位相差が互いに１８０度異なる２つのクロック（ＣＫａとＣＫｅ，ＣＫｂとＣＫｆ，ＣＫｃとＣＫｇ，ＣＫｄとＣＫｈ）をペアとし、２相加算部４０ａ〜４０ｈにて、これらペアとなるクロックに対応した相関器による演算結果（相関器３０ａと３０ｅの演算結果、相関器３０ｂと３０ｆの演算結果、相関器３０ｃと３０ｇの演算結果、相関器３０ｄと３０ｈの演算結果）の和をとることにより、各相関器３０ａ〜３０ｈの演算結果を平均化するようにしているのである。
【００６９】
以下、相関器３０ａ〜３０ｈ及び２相加算部４０ａ〜４０ｈの具体的例について図４を用いて説明する。
尚、図４は、基準クロックＭＣＫと同じクロックＣＫａにて動作するＤＦＦ２２ａからの出力に基づき相関演算及び平均化を行う相関器３０ａ及び２相加算部４０ａの構成を表している。
【００７０】
図４に示すように、相関器３０ａには、ＰＮ符号のビット長に対応したｎ個（例えば３１個）のラッチ回路３２ａ１，３２ａ２，…３２ａｎからなるシフトレジスタ３２が備えられている。そして、各ラッチ回路３２ａ１〜３２ａｎには、ＣＰＵ２により、距離測定開始前に、ＰＮ符号の各ビットの２値データが予めプリセットされ、各ラッチ回路３２ａ１〜３２ａｎは、距離測定開始後に入力される基準クロックＭＣＫに同期して、プリセットされた２値データを次段のラッチ回路へと順次シフトさせる。
【００７１】
尚、各ラッチ回路３２ａ１〜３２ａｎは、閉ループを形成しており、最終段のラッチ回路３２ａｎから出力される２値データ（初期値は最初に発光パルスを発生するのに用いられる２値データとなる）は、初段のラッチ回路３２ａ１へと出力される。
【００７２】
また、相関器３０ａには、ラッチ回路３２ａ１〜３２ａｎと同じ個数（ｎ個）の排他的論理和回路（以下、ＥＸＯＲという）３４ａ１，３４ａ２，…３４ａｎが備えられており、各ＥＸＯＲ２４ａ１〜３４ａｎの一方の入力端子には、シフトレジスタ３２を構成する各ラッチ回路３２ａ１〜３２ａｎへの入力データが入力される。
【００７３】
具体的には、ＥＸＯＲ３４ａ１には初段のラッチ回路３２ａ１への入力（換言すれば最終段のラッチ回路３２ａｎからの出力）が入力され、ＥＸＯＲ３４ａ２には二段目のラッチ回路３２ａ２への入力（換言すれば初段のラッチ回路３２ａ１からの出力）が入力される、というように、各ＥＸＯＲ２４ａ１〜３４ａｎに、各ラッチ回路３２ａ１〜３２ａｎへの入力データが入力される。
【００７４】
一方、ＥＸＯＲ３４ａ１〜３４ａｎの他方の入力端子には、同期部２４を構成するＤＦＦ２４ａを介して、ＤＦＦ２２ａにてクロックＣＫａの立上がりタイミングでラッチされた２値データが入力される。
この結果、ＥＸＯＲ３４ａ１〜３４ａｎからの出力は、ＤＦＦ２２ａ及び２４ａを介して入力される受光パルスＰＢｒの信号レベルを表す２値データと、シフトレジスタ３２を構成する各ラッチ回路３２ａ１〜３２ａｎへの入力データとが一致しているときにLow レベルとなり、一致していなければHighレベルとなる。
【００７５】
そして、このように変化する各ＥＸＯＲ３４ａ１〜３４ａｎからの出力は、夫々、ｎ個（３１個）のアップダウンカウンタ（Ｕ／Ｄカウンタ）３６ａ１，３６ａ２，…３６ａｎに入力される。各アップダウンカウンタ３６ａ１〜３６ａｎは、基準クロックＭＣＫを受けて動作し、そのカウント値は、ＥＸＯＲ３４ａ１〜３４ａｎの出力が連続的にLow レベルとなることにより増加する。
【００７６】
従って、測定対象物からの反射光が受光部１６にて受光され、その受光信号を２値化した受光パルスＰＢｒがＤＦＦ２２ａ，２４ａを介して相関器３０ａに入力されると、３１個のアップダウンカウンタ３６ａ１〜３６ａｎの内の一つがカウントアップされ続けることになり、このカウンタの位置から、反射光の受光時刻を特定できる。
【００７７】
しかし、上述したように、受光信号にはノイズが重畳されることから、反射光の受光開始後、その受光時刻に対応したアップダウンカウンタだけがカウントアップされるとは限らず、他のアップダウンカウンタがカウントアップされることもあるし、受光時刻に対応したアップダウンカウンタがカウントダウンされることもある。
【００７８】
そこで、２相加算部４０ａでは、相関器３０ａから出力されるｎ個（３１個）のカウント値のノイズによる誤差を相殺するために、ペアとなる相関器３０ｅから出力されるｎ個のカウント値を取り込み、ｎ個の加算器４２ａ１，４２ａ２，…４２ａｎを用いて、相関器３０ａから出力される各カウント値に、相関器３０ｅから取り込んだ各カウント値を夫々加算する。
【００７９】
そして、２相加算部４０ａは、各加算器４２ａ１〜４２ａｎからの出力を、基準クロックＭＣＫの立上がりタイミングで動作するｎ個の出力回路４４ａ１，４４ａ２，…４４ａｎでラッチし、後段の検出処理部４６へと出力する。
尚、図４は相関器３０ａ及び２相加算部４０ａの構成を表しているが、他の相関器３０ｂ〜３０ｈ及び２相加算部４０ｂ〜４０ｈも、相関器３０ａ及び２相加算部４０ａと全く同様に構成されている。
【００８０】
そして、２相加算部４０ａにおいて、各加算器４２ａ１〜４２ａｎは、相関器３０ａから出力される各カウント値に対して、クロックＣＫａとクロックＣＫｅとの位相差（１８０度、換言すれば基準クロックＭＣＫの周期の１／２の時間）分だけ遅れたタイミングでのカウント値を加算する。
【００８１】
つまり、２相加算部４０ａにおいては、相関器３０ａの１番目のアップダウンカウンタ３６ａ１から出力されるカウント値に対しては、相関器３０ｅの１番目のアップダウンカウンタ３６ｅ１（図示せず）から出力されるカウント値が加算され、相関器３０ａのｎ番目のアップダウンカウンタ３６ａｎから出力されるカウント値に対しては、相関器３０ｅのｎ番目のアップダウンカウンタ３６ｅｎ（図示せず）から出力されるカウント値が加算される。
【００８２】
また、２相加算部４０ａのペアとなる２相加算部４０ｅ側では、相関器３０ａから出力されるｎ個のカウント値を取り込み、相関器３０ｅから出力されるｎ個のカウント値に夫々加算するが、この加算時には、相関器３０ａから出力される各カウント値に対して、クロックＣＫｅとクロックＣＫａとの位相差分だけ遅れたタイミングでのカウント値を加算する。
【００８３】
つまり、２相加算部４０ｅにおいては、相関器３０ｅの１番目のアップダウンカウンタ３６ｅ１（図示せず）から出力されるカウント値に対しては、相関器３０ａの２番目のアップダウンカウンタ３６ｅ２から出力されるカウント値が加算され、相関器３０ｅのｎ番目のアップダウンカウンタ３６ａｎ（図示せず）から出力されるカウント値に対しては、相関器３０ａの１番目のアップダウンカウンタ３６ａ１から出力されるカウント値が加算される。
【００８４】
また、上記以外の２相加算部４０ｂ〜４０ｄ及び４０ｆ〜４０ｈの内、基準クロックＭＣＫの立上がりタイミングを基準とする一周期の前半部分で立ち上がるクロックＣＫｂ〜ＣＫｄに対応した２相加算部４０ｂ〜４０ｄは、上記２相加算部４０ａと同様に動作し、基準クロックＭＣＫの一周期の後半部分で立ち上がるクロックＣＫｆ〜ＣＫｈに対応した２相加算部４０ｂ〜４０ｄは、上記２相加算部４０ｅと同様に動作する。
【００８５】
従って、本実施例において、ペアとなる相関器の演算結果を平均化する２つの２相加算部（４０ａと４０ｅ、４０ｂと４０ｆ、４０ｃと４０ｇ、４０ｄと４０ｈ）からの出力が一致することはない。
次に、上記各２相加算部４０ａ〜４０ｈからの出力（８×ｎ個のカウント値）を受ける検出処理部４６では、各２相加算部４０ａ〜４０ｈから出力されたｎ個のカウント値の中から、所定のしきい値を最初に越えたカウント値を夫々検出し、そのカウント値に対応したアップダウンカウンタの位置（換言すれば測定対象物からの反射光の受光時刻）を表すデータを、次段の近場優先処理部４７に出力する。
【００８６】
つまり、各２相加算部４０ａ〜４０ｈから出力されるｎ個のカウント値は、夫々、各クロックＣＫａ〜ＣＫｈの立上がりタイミング毎にサンプリングした受光パルスＰＢｒとＰＮ符号との相関を表す相関値であることから、検出処理部４６では、何れかのカウント値がしきい値を越えたときに相関値が最大となったと判断して、そのカウント値を出力したアップダウンカウンタの位置（換言すれば受光時刻）を表すデータを出力するのである。
【００８７】
次に、検出処理部４６からの出力を受ける近場優先処理部４７は、検出処理部４６から同時に複数のデータが出力された際に、それらの中から受光時刻が最も早くなるデータ（換言すれば、基準クロックＭＣＫとの位相差が最も小さいクロックに対応した相関器に対応するデータ）を選択し、測距結果出力部４８に出力する。
【００８８】
つまり、本実施例では、同期部２４を設けることにより、相関器３０ａ〜３０ｈ及び２相加算部４０ａ〜４０ｈを基準クロックＭＣＫに同期した同タイミングで動作させることから、各２相加算部４０ａ〜４０ｈから夫々出力されるカウント値が同時にしきい値を越え、検出処理部４６から同時に複数のデータが出力されることがある。
【００８９】
そして、検出処理部４６から出力されるデータは、各相関器３０ａ〜３０ｈに設けられたアップダウンカウンタの内、カウント値がしきい値を越えたアップダウンカウンタの位置（換言すれば反射光の受光時刻）を特定するためのものであることから、検出処理部４６から複数のデータが出力されると、反射光の受光時刻を特定することができなくなってしまう。
【００９０】
そこで、本実施例では、近場優先処理部４７において、これら複数のデータの内、反射光の受光時刻が最も早くなるデータを選択して、測距結果出力部４８に出力するようにしているのである。
尚、近場優先処理部４７は、検出処理部４６から一つのデータが出力された際には、これをそのまま測距結果出力部４８に出力する。
【００９１】
そして、測距結果出力部４８においては、近場優先処理部４７からの入力データを、発光部１４からのレーザ光の送信開始時刻から反射光の受光時刻までの時間を表す測距データに変換して、ＣＰＵ２に出力する。
ここで、近場優先処理部４７からの入力データは、相関器３０ａ〜３０ｈに設けられた全てのアップダウンカウンタの内、カウント値が最も早くしきい値を越えたアップダウンカウンタの位置（換言すれば反射光の受光時刻）を表し、ラッチ部２２から同期部２４を介して各相関器３０ａ〜３０ｈに入力される２値データのラッチタイミングは、８相シフトクロックにより基準クロックＭＣＫの周期の１／８の時間分だけずれていることから、測距結果出力部４８からＣＰＵ２に出力される測距データの時間分解能は、基準クロックＭＣＫの周期の１／８の時間となる。
【００９２】
従って、ＣＰＵ２側では、測距結果出力部４８から測距データを取り込むことにより、測定対象物までの距離を基準クロックＭＣＫの周期で決まる分解能よりも高い分解能で測定することができるようになり、その測定結果に基づき、車両の駆動系や制動系を制御することにより自車両を前方車両に追従させる追従制御や、車両前方に存在する障害物を検出して警報を発生する障害物検出制御を良好に実行することが可能となる。
【００９３】
尚、ＣＰＵ２は、実際に距離測定を行う際には、発光部１４からのレーザ光を水平（若しくは水平及び垂直）方向に光走査し、車両前方の所定角度範囲内に存在する測定対象物（先行車両若しくは障害物）までの距離を測定する。また、ＣＰＵ２は、レーザ光を光走査しているときに、各測距ポイント毎に複数回距離測定を行い、測定結果を平均化することで、距離測定精度を向上する。
【００９４】
以上説明したように、本実施例の距離測定装置においては、ラッチ部２２を構成する８個のＤＦＦ２２ａ〜２２ｈに対して、シフトクロック生成部２０で生成した８相シフトクロックＣＫａ〜ＣＫｈを夫々入力することにより、受光パルスＰＢｒを、夫々、基準クロックＭＣＫの周期の１／８の時間間隔で順次ラッチし、そのラッチした受光パルスＰＢｒのパルス列と、ＰＮ符号との相関値を、各ＤＦＦ２２ａ〜２２ｈに対応した８個の相関器３０ａ〜３０ｈで求め、これら各相関器３０ａ〜３０ｈで求められた相関値が最初にしきい値を越えた時刻を、測定対象物からの反射光を受光した時刻として、車両−測定対象物間でレーザ光が往復するのに要した時間を測定するようにされている。
【００９５】
このため、本実施例によれば、この測距用の時間を、基準クロックＭＣＫの周波数を高くすることなく、基準クロックＭＣＫの周期の１／８の時間分解能で測定ことになり、延いては、測定対象物までの距離測定を高精度に実行できる。
また、このように、本実施例によれば、測定可能な時間分解能を高くするために、基準クロックＭＣＫの周波数を高くする必要がなく、時間計測用の各回路は、基準クロックＭＣＫと同じ周期で動作させればよいため、計測用回路を構成する回路素子を高速動作可能なものにする必要がない。よって、本実施例によれば、相関器等、時間計測用の回路の数は多くなるものの、各回路を安価に実現できることから、装置全体のコストアップを招くことなく、測定可能な時間分解能を高くすることができる。
【００９６】
また、特に、本実施例では、ラッチ部２２のＤＦＦ２２ａ〜２２ｈでラッチされた２値データを相関器３０ａ〜３０ｈにそのまま入力するのではなく、これら各２値データを、同期部２４を構成するＤＦＦ２４ａ〜２４ｈを用いて、基準クロックＭＣＫに同期して再度ラッチし、そのラッチした２値データを、対応する相関器３０ａ〜３０ｈに入力することで、相関器３０ａ〜３０ｈ及び相関器３０ａ〜３０ｈよりも後段の処理回路（２相加算部４０ａ〜４０ｈ、検出処理部４６、近場優先処理部４７、測距結果出力部４８）を、全て、共通の基準クロックＭＣＫで動作させることができるようにしている。
【００９７】
このため、８相シフトクロックＣＫａ〜ＣＫｈは、ラッチ部２２を構成するＤＦＦ２２ａ〜２２ｈに入力するだけでよく、これら各クロックＣＫａ〜ＣＫｈを他の処理回路に伝送する必要がない。よって、本実施例によれば、時間計測用の回路をプリント基板に組み付けるための配線パターン設計を容易に行うことができ、しかも、配線パターンを簡単にすることができるので、プリント基板に基板面積の大きなものをする必要がなく、装置の大型化を防止できる。
【００９８】
また更に、本実施例では、各相関器３０ａ〜３０ｈによる演算結果をそのまま用いて反射光の受光時刻を特定するのではなく、２相加算部４０ａ〜４０ｈを用いて各相関器３０ａ〜３０ｈの演算結果を２相加算し、２相加算後の各演算結果を用いて反射光の受光時刻を特定するようにしていることから、時間測定の際の耐ノイズ性を向上でき、受光信号のＳ／Ｎ（信号対雑音比）が悪い条件化でも、時間測定（延いては距離測定）を良好に実行できる。
【００９９】
一方、ＣＰＵ２は、各測距ポイントでの距離測定を行う際に、ＰＮ符号に対応したレーザ光を発光部１４から出射させて、反射光が受光される迄の時間を測定する測距動作を、複数回行い、その測距動作により得られた複数の測距データの平均値（平均時間）から、測定対象物までの距離を演算する。また、ＣＰＵ２は、複数の測距データの平均値を算出する際には、複数の測距データの中心から大きくずれた測距データを不良データとして削除する。このため、本実施例によれば、このＣＰＵ２の動作によっても、耐ノイズ性を向上して、距離測定精度を高くすることができる。
【０１００】
次に、本実施例において、８相シフトクロックＣＫａ〜ＣＫｈを生成するのに用いられるシフトクロック生成部２０、及び、基準クロックＭＣＫを生成するのに用いられる基準クロック発生部１０の構成を図５を用いて説明する。尚、これら各部１０，２０は、本発明のシフトクロック発生装置の一実施例である。
【０１０１】
図５に示すように、まず、シフトクロック生成部２０は、基準クロック発生部１０が発生した基準クロックＭＣＫを遅延線に入力することで、遅延線を構成する単位遅延素子としての多数（ｋ個）の遅延ユニット８０(1) 〜８０(k) を用いて順に遅延させるようになっている。
【０１０２】
また、これら各遅延ユニット８０(1) 〜８０(k) の出力側には、夫々、基準クロックＭＣＫと位相がずれたクロックＣＫｂ〜ＣＫｈを取り出すための７個のスイッチＳＷｂ(1) 〜ＳＷｂ(k) ，ＳＷｃ(1) 〜ＳＷｃ(k) ，…ＳＷｈ(1) 〜ＳＷｈ(k) が接続されている。そして、これら各クロック取出用のスイッチ群ＳＷｂ，ＳＷｃ，…ＳＷｈには、夫々、スイッチ制御手段としてのデコーダ９０ｂ〜９０ｈが設けられている。
【０１０３】
デコーダ９０ｂ〜９０ｈは、各スイッチ群ＳＷｂ〜ＳＷｈを構成するｋ個のスイッチの中から、クロックＣＫｂ〜ＣＫｈを取り出すスイッチＳＷｂ(?) 〜ＳＷｈ(?) の位置を設定し、その設定したスイッチＳＷｂ(?) 〜ＳＷｈ(?) をオンする駆動信号をデータ線Ｌｂ〜Ｌｈを介して各スイッチ群ＳＷｂ〜ＳＷｈに出力することにより、各スイッチＳＷｂ(?) 〜ＳＷｈ(?) を選択的にオンさせ、これらのスイッチＳＷｂ(?) 〜ＳＷｈ(?) を介して、基準クロックＭＣＫの周期のｘ／８（ｘ：１，２，…７）の時間だけ基準クロックＭＣＫを遅延させた７種類のシフトクロックＣＫｂ〜ＣＫｈが取り出されるようにするためのものである。
【０１０４】
つまり、各デコーダ９０ｂ〜９０ｈには、単位遅延素子である各遅延ユニット８０(1) 〜８０(k) の遅延時間（詳しくは平均遅延時間）を時間分解能として、基準クロックＭＣＫの一周期を数値化した周期データＣＤが入力され、各デコーダ９０ｂ〜９０ｈは、その周期データＣＤと、基準クロックＭＣＫに対する各クロックＣＫｂ〜ＣＫｈの遅延割合ｘ／８（ｘ：１，２，…７）を表す比率データＳＤｂ，ＳＤｃ，…ＳＤｈとを用いて、各クロックＣＫｂ〜ＣＫｈの取り出しに用いるスイッチＳＷｂ(?) 〜ＳＷｈ(?) の位置を演算し、そのスイッチＳＷｂ(?) 〜ＳＷｈ(?) をオンさせる。
【０１０５】
例えば、基準クロックＭＣＫの周期が遅延ユニット８０の遅延時間の８０倍であるとすると、各デコーダ９０ｂ〜９０ｈには、値８０を表す周期データＣＤが入力され、各デコーダ９０ｂ〜９０ｈは、予め設定された比率データＳＤｂ〜ＳＤｈを用いて、基準クロックＭＣＫの遅延量（詳しくは遅延ユニット８０の接続段数）を、「８０／８」，「８０×２／８」，…「８０×７／８」というように演算し、その演算結果１０，２０，…７０に対応したスイッチＳＷｂ(10)，ＳＷｃ(20)，…ＳＷｈ(70)をオンする。
【０１０６】
この結果、各スイッチ群ＳＷｂ〜ＳＷｈからは、基準クロックＭＣＫを夫々基準クロックＭＣＫの周期の１／８の時間で順次遅延させた７種類のクロックＣＫｂ〜ＣＫｈが選択的に出力されることになる。
尚、遅延ユニット８０としては、インバータ２段で構成してもよく、或いは他のゲート回路（ＡＮＤゲート，ＮＡＮＤゲート）等を用いて構成してもよい。また、上記数値「８０」は説明を簡単にするために例示したものであり、実際の値とは異なる。例えば、遅延ユニット８０の遅延時間が１ｎsec.であり、基準クロックＭＣＫの周波数が２０ＭＨｚであるとすれば、基準クロックＭＣＫの一周期は５０ｎsec.となるので、周期データＣＤは、値５０を表すデータとなる。
【０１０７】
また、シフトクロック生成部２０において、各スイッチ群ＳＷｂ〜ＳＷｈから選択的に取り出された７種類のクロックＣＫｂ〜ＣＫｈを外部（本実施例ではラッチ回路２２に出力する出力経路（シフトクロック出力経路）には、各クロックＣＫｂ〜ＣＫｈの駆動能力を向上するためのバッファ９２ｂ〜９２ｈが設けられている。
【０１０８】
また、シフトクロック生成部２０には、基準クロック発生部１０から入力された基準クロックＭＣＫをそのままクロックＣＫａとしてラッチ回路２２に出力するための出力経路（基準クロック出力経路）も設けられており、この経路にも、クロックＣＫａの駆動能力を向上するためのバッファ９２ａが設けられている。
【０１０９】
従って、シフトクロック生成部２０からは、基準クロックＭＣＫ及び７種類のクロックＣＫｂ〜ＣＫｈが、各クロックの出力経路に設けられたバッファ９２ａ〜９２ｈにより駆動能力が向上された後、８相シフトクロックＣＫａ〜ＣＫｈとして、外部（すなわちラッチ回路２２）に出力されることになる。
【０１１０】
このように、本実施例のシフトクロック生成部２０は、多数の遅延ユニット８０からなる遅延線により基準クロックＭＣＫを順次遅延させつつ伝送し、その経路上から、７個のスイッチ群ＳＷｂ〜ＳＷｈを介して、基準クロックＭＣＫとの位相差が所望の位相差となる７個の遅延クロックＣＫｂ〜ＣＫｈを取り出し、これら各遅延クロックＣＫｂ〜ＣＫｈと基準クロックＭＣＫ（＝ＣＫａ）とからなる８相シフトクロックＣＫａ〜ＣＫｈを出力するようにされている。
【０１１１】
そして、このシフトクロック生成部２０によれば、各デコーダ９０ｂ〜９０ｈに入力する周期データＣＤを生成する必要はあるものの、図１０に示した従来のシフトクロック発生装置のように、シフトクロックを生成するために、アナログＰＬＬ５０を用いて基準クロックＭＣＫを逓倍した高周波信号（動作クロック）を生成する必要がないので、回路構成を簡単にすることができ、しかも、ＶＣＯ５１を動作させることにより、不要な高周波ノイズが発生することもないので、時間（距離）測定の信頼性を向上することもできる。
【０１１２】
次に、基準クロック発生部１０は、外部から入力される基準クロックＭＣＫよりも低周波数のクロック（低周波クロック）ＰＲＥＦをデジタル処理にて逓倍することにより基準クロックＭＣＫを生成するものであり、シフトクロック生成部２０の遅延線を構成する遅延ユニット（単位遅延素子）８０と同じ遅延ユニットをリング状に連結したリング遅延線（ＲＧＤ）６０を備える。
【０１１３】
ＲＧＤ６０は、外部から入力された起動パルスをリング状に連結された遅延ユニットを介して周回させるものであり、各遅延ユニットからの出力は、次段の遅延ユニットだけでなく、時間Ａ／Ｄ変換器（ＴＡＤ）６２及びデジタル制御発振器（ＤＣＯ）にも出力される。
【０１１４】
ＴＡＤ６２は、ＲＧＤ６０内でのパルスの周回回数をカウントするカウンタと、低周波クロックＰＲＥＦの立上がりエッジ（又は立下がりエッジ）でＲＧＤ６０内でのパルスの周回位置を検出するエンコーダとを備え、カウンタによるカウント値を上位ビットデータ、エンコーダにより得られた周回位置を下位ビットデータとする所定ビットのデジタルデータを出力する。
【０１１５】
つまり、ＴＡＤ６２は、ＲＧＤ６０を用いて、ＲＧＤ６０を構成する遅延ユニットの遅延時間を時間分解能とする低周波クロックＰＲＥＦの立上がり時刻（又は立下がり時刻）を順次計時し、その時刻を表すデジタルデータ（時刻データ）を出力するのである。
【０１１６】
そして、このようにＴＡＤ６２から順次出力される時刻データは、データ処理部６６に入力され、データ処理部６６では、その入力された時刻データの差から、低周波クロックＰＲＥＦの周期を表す周期データが生成される。尚、この周期データの時間分解能は、ＲＧＤ６０を構成する遅延ユニット（延いては、シフトクロック生成部２０内の遅延線を構成する遅延ユニット）の遅延時間となる。
【０１１７】
また、基準クロック発生部１０には、低周波クロックＰＲＥＦから基準クロックＭＣＫを生成するのに必要な逓倍値データが予め記憶されたレジスタ６８と、データ処理部６６で求められた低周波クロックＰＲＥＦの周期を表す周期データをレジスタ６８に記憶された逓倍値データにて除算することにより、生成すべき基準クロックＭＣＫの周期を算出する除算器７０とが備えられており、この除算器７０による除算結果（詳しくは除算結果の内の正数部）は、データラッチ回路７２に出力される。
【０１１８】
そして、データラッチ回路７２は、除算器７０にて求められた基準クロックＭＣＫの周期を制御データ（＝周期データＣＤ）としてラッチし、これをＤＣＯ６４に出力する。
ＤＣＯ６４は、ＴＡＤ６２と同様にＲＧＤ６０内でのパルスの周回回数及び周回位置を監視することにより、データラッチ回路７２から出力された制御データ（＝周期データＣＤ）に対応した時間を、ＲＧＤ６０を構成する遅延ユニットの遅延時間を時間分解能として計時（カウント）し、時間計時１回当たりに１回の割でパルス信号を発生することにより、基準クロックＭＣＫを生成する。
【０１１９】
尚、除算器７０による除算結果の内、逓倍値データで割り切れなかった小数点以下の値（小数部）は、周波数微調回路７４に出力され、周波数微調回路７４は、この小数部に対応した割合でデータラッチ回路７２がラッチした制御データに値１を加えることで、基準クロックＭＣＫの低周波クロックＰＲＥＦに対する微小な位相誤差が蓄積されて、大きな位相誤差になるのを防止する。
【０１２０】
このように、基準クロック発生部１０は、ＲＧＤ６０、ＴＡＤ６２、ＤＣＯ６４等を用いて、所謂デジタルＰＬＬとして構成されており、データラッチ回路７２からＤＣＯ６４に出力される制御データは、周期データＣＤとして、シフトクロック生成部２０に入力される。
【０１２１】
従って、シフトクロック生成部２０のデコーダ９０ｂ〜９０ｈには、基準クロックＭＣＫの周期を、遅延線を構成する遅延ユニット８０(1) 〜８０(k) の遅延時間を時間分解能として数値化した周期データＣＤが入力されることになり、シフトクロック生成部２０では、基準クロックＭＣＫに対応したシフトクロックＣＫｂ〜ＣＫｈが高精度に生成されることになる。
【０１２２】
また、シフトクロック生成部２０の遅延線を構成する遅延ユニットの遅延時間は、周囲環境の変化に伴う素子温度の変化によって変動するが、基準クロック発生部１０にて基準クロックＭＣＫを生成するのに用いられるリング遅延線６０も、シフトクロック生成部２０の遅延線と同じ遅延ユニットを用いて構成されているため、基準クロックＭＣＫに対するシフトクロックＣＫｂ〜ＣＫｈの位相が周囲温度等の環境変化によって変動することはなく、シフトクロック生成部２０からは、常時安定した８相シフトクロックＣＫａ〜ＣＫｈが出力されることになる。
【０１２３】
尚、基準クロック発生部１０の詳細構成（デジタルＰＬＬの構成）については、特開平７−１８３８００号公報等に開示されており、従来より周知であるため、ここではこれ以上の詳細説明は省略する。また、本実施例の基準クロック発生部１０は、請求項４，６に記載のデジタル制御発振回路に相当するものであり、ＴＡＤ６２は、請求項６に記載の時間Ａ／Ｄ変換手段として機能し、除算器７０は、請求項６に記載の除算手段として機能し、ＤＣＯ６４は、請求項６に記載の信号出力手段として機能する。
【０１２４】
以上、本発明が適用されたシフトクロック発生装置（シフトクロック生成部２０及び基準クロック発生部１０）、及び、このシフトクロック発生装置を用いて距離測定を行う距離測定装置について説明したが、本発明のシフトクロック発生装置は、図５に示したものに限定されるものではなく、種々の態様を採ることができる。
【０１２５】
例えば、上記実施例では、基準クロック発生部１０をデジタルＰＬＬにて構成し、シフトクロック生成部２０には、このデジタルＰＬＬにて基準クロックＭＣＫの周期を制御するのに用いられた制御データを、そのまま周期データＣＤとして入力するものとして説明したが、基準クロック発生部１０が発振器等で構成されている場合には、請求項３に記載の発明を適用することにより、その発振器から出力される基準クロックＭＣＫの周期を、時間Ａ／Ｄ変換手段としての時間Ａ／Ｄ変換器（ＴＡＤ）を用いて数値化し、その数値化した周期データＣＤをシフトクロック生成部２０に入力するようにすればよい。
【０１２６】
但し、このように基準クロックＭＣＫの周期を時間Ａ／Ｄ変換器を用いて数値化する場合、周期データＣＤの時間分解能は、遅延線を構成する遅延ユニット８０(1) 〜８０(k) の遅延時間に対応させる必要があるため、時間Ａ／Ｄ変換器（ＴＡＤ）としては、上述した基準クロック発生部１０内のＴＡＤ６２と同様、遅延線を構成する遅延ユニット８０(1) 〜８０(k) と同じ遅延ユニットを用いて構成されたリング遅延線（ＲＧＤ）６０でのパルス信号の周回回数及び周回位置に基づき（換言すればパルス信号が通過した遅延ユニットの数に基づき）、基準クロックＭＣＫの周期を数値化するように構成する必要はある。
【０１２７】
また、上記実施例では、シフトクロック生成部２０において、基準クロックＭＣＫを遅延させたシフトクロックＣＫｂ〜ＣＫｈを取り出すためのスイッチ群ＳＷｂ〜ＳＷｈは、遅延ユニット８０(1) 〜８０(k) からなる一つの（換言すれば共通）の遅延線に対して設けられるものとして説明したが、例えば、図６に示すように、遅延ユニット８０(1) 〜８０(k) からなる遅延線を、生成すべきシフトクロックＣＫｂ〜ＣＫｈに対応した数だけ設け、各遅延線毎にスイッチ群ＳＷｂ〜ＳＷｈを設けるようにしてもよい。
【０１２８】
また、上記実施例では、各スイッチ群ＳＷｂ〜ＳＷｈは、遅延線を構成する遅延ユニット８０(1) 〜８０(k) に対応した数のスイッチから構成され、そのうちの一つを選択的にオンすることにより、遅延線を構成する何れかの遅延ユニット８０(1) 〜８０(k) からの出力（遅延クロック）を、シフトクロックとして、シフトクロックの出力経路側に取り出すものとして説明したが、本実施例のように、基準クロックＭＣＫの周期を等分した時間を位相差とするシフトクロックを生成する際には、各スイッチ群ＳＷｂ〜ＳＷｈを、遅延線を構成する全ての遅延ユニット８０(1) 〜８０(k) からの出力を選択的に取り出せるようにする必要はない。
【０１２９】
このため、上記各スイッチ群ＳＷｂ〜ＳＷｈは、図７に示すように、遅延線を構成するｋ個の遅延ユニット８０(1) 〜８０(k) を、生成すべきシフトクロックの数（この場合７個）に応じて、基準クロックＭＣＫの入力側から７グループに分け、各グループの遅延ユニット８０(1) 〜８０(m) に対して、各スイッチ群ＳＷｂ〜ＳＷｈを設けるようにしてもよく、或いは、図８に示すように、各スイッチ群ＳＷｂ〜ＳＷｈにおいて、遅延ユニット８０(1) 〜８０(k) に接続するスイッチを上記実施例のものから間引くようにしてもよい。
【０１３０】
つまり、このようにすれば、図５に示したシフトクロック生成部２０に比べて、各スイッチ群ＳＷｂ〜ＳＷｈを構成するスイッチの数を減らすことができ、回路構成を簡単にすることができる。また特に、図７に示したシフトクロック生成部２０のように、遅延線を構成する遅延ユニット８０(1) 〜８０(k) をグループ分けして、各グループの遅延ユニット８０(1) 〜８０(m) に対して各スイッチ群ＳＷｂ〜ＳＷｈを設けるようにした場合には、各遅延ユニット８０(1) 〜８０(k) にはスイッチが１個接続されるだけであるので、単にスイッチの数を減らすことができるだけでなく、シフトクロック生成部が組み付けられる基板に形成する配線パターンを少なくして、装置全体の小型化を図ることができる。
【０１３１】
尚、図８に示したように、各スイッチ群ＳＷｂ〜ＳＷｈにおいて、遅延ユニット８０(1) 〜８０(k) に接続するスイッチを間引く場合には、基準クロックＭＣＫに対して最も位相差が小さいシフトクロックＣＫｂを生成するためのスイッチ群ＳＷｂについては、遅延線における終端側の遅延ユニットに接続されるスイッチを間引き、基準クロックＭＣＫに対して最も位相差が大きいシフトクロックＣＫｈを生成するためのスイッチ群ＳＷｈについては、遅延線におけるクロック入力側の遅延ユニットに接続されるスイッチを間引き、他のスイッチ群ＳＷｃ〜ＳＷｇについては、遅延線の信号入力側と終端側の遅延ユニットに接続されるスイッチを間引く、というように、生成すべきシフトクロックと基準クロックとの位相差に応じて、遅延ユニット８０(1) 〜８０(k) に接続するスイッチを間引くようにすればよい。
【０１３２】
一方、上記実施例では、８相シフトクロックを生成するシフトクロック発生装置について説明したが、本発明のシフトクロック発生装置は、基準クロックを遅延線に流し、遅延線にて所望の遅延時間だけ遅延された遅延クロックを、スイッチ群を介して、取り出すものであることから、例えば、シフトクロック生成部を、図５に示した遅延線とスイッチ群ＳＷｂとデコーダ９０ｂとを用いて構成すれば、基準クロックに対して所望の位相差を有するシフトクロックを生成する位相シフト回路として利用することができる。
【０１３３】
また、上記実施例では、基準クロック発生部１０をデジタルＰＬＬにて構成することにより、外部から入力される低周波クロックＰＲＥＦを逓倍した基準クロックを生成するものとして説明したが、デジタルＰＬＬでは、出力信号（基準クロックＭＣＫ）の周期については、正確に制御できるものの、そのデューティ比は、ＤＣＯが基準クロックＭＣＫとして出力するパルス信号のパルス幅と、基準クロックＭＣＫの周期とで決まることから、基準クロックＭＣＫを、デューティ比５０％の綺麗な波形にすることは困難であり、デューティ比５０％のクロックが必要な場合には、デジタルＰＬＬにて生成した基準クロックを更に信号処理する必要がある。
【０１３４】
そこで、次に、上記実施例の基準クロック発生部１０と同様に構成されたデジタルＰＬＬにて所望周波数の高周波クロックを生成し、この高周波クロックを本発明を適用した位相シフト回路を用いて、デューティ比５０％の高周波クロックに変換するクロック生成装置について、図９を用いて説明する。
【０１３５】
尚、図９において、（ａ）は、このクロック生成装置の構成を表すブロック図であり、（ｂ）は、このクロック生成装置各部の信号波形を表すタイムチャートである。
図９（ａ）に示すように、この装置では、上述の基準クロック発生部１０と同様に構成されたデジタルＰＬＬ９４にて、低周波クロックＰＲＥＦを逓倍することにより、所定周波数（例えば８０Ｍ）の基準クロックＰout を生成する。図９（ｂ）に示すように、この基準クロックＰout のパルス幅は、デジタルＰＬＬ９４を構成するＤＣＯ６４の信号出力特性で決まることから、基準クロックＰout のデューティ比（ｄｕｔｙ）は５０％よりも小さくなる。
【０１３６】
そこで、この装置では、デジタルＰＬＬ９４にて生成された基準クロックＰout を、分周回路９６に入力することにより、分周回路９６にて基準クロックＰout を１／２分周させる。この結果、分周回路９６からは、図９（ｂ）に示すように、デジタルＰＬＬ９４からの基準クロックＰout の立上がりタイミングで信号レベルが反転する、周波数４０ＭＨｚ、ｄｕｔｙ５０％のクロックＣＫ０が出力されることになる。尚、この分周回路９６は、請求項５に記載の分周回路に相当するものである。
【０１３７】
次に、この分周回路９６からの出力クロックＣＫ０は、入力クロックを１／４周期分だけ位相シフト（遅延）させる位相シフト回路９８に入力される。この位相シフト回路９８は、本発明を適用することにより、上述のシフトクロック生成部２０における遅延線（遅延ユニット８０(1) 〜８０(k) ）と、スイッチ群ＳＷｃと、デコーダ９０ｃと、バッファ９２ｃとから構成されている。
【０１３８】
そして、この位相シフト回路９８には、デジタルＰＬＬ９４にて基準クロックＰout を生成するのに用いられた制御データの内、最下位ビットを除く制御データが、クロックＣＫ０の周期を表す周期データＣＤとして入力され、デコーダ９０ｃは、この周期データＣＤと、予め設定された比率データ（値１／４）とから、クロックＣＫ０を１／４周期分だけ位相シフトさせるのに必要な遅延ユニットの数（延いては、スイッチ群９０ｃにおいてオンすべき特定スイッチの位置）を決定し、このスイッチを選択的にオンさせる。この結果、位相シフト回路９８からは、クロックＣＫ０を１／４周期分だけ位相シフトさせたシフトクロックＣＫ１が出力されることになる。
【０１３９】
また、このシフトクロックＣＫ１は、分周回路９６からの出力クロックＣＫ０と共に、排他的論理和回路（ＥＸＯＲ）９９に入力される。ＥＸＯＲ９９は、２つの入力信号が同一レベルであるとき、Low レベルの信号を出力し、２つの入力信号が異なる信号レベルであるとき（一方がLow レベルで他方がHighレベルであるとき）に、Highレベルの信号を出力するものである。このため、ＥＸＯＲ９９からは、デジタルＰＬＬ９４から出力される基準クロックＰout と位相同期し（換言すれば、周波数が８０ＭＨｚで）、且つ、デューティ比（ｄｕｔｙ）が５０％となるクロック信号が出力されることになる。
【０１４０】
このように、本発明のシフトクロック発生装置によれば、デューティ比５０％のクロック信号を生成するクロック生成回路（換言すればデューティ変換回路）としても使用することができる。
そして、この場合、位相シフト回路９８を構成するデコーダがオンすべき特定スイッチを決定するのに用いる比率データを変更すれば、ＥＸＯＲ９９から出力されるクロックのデューティ比が変化することから、本発明を、こうしたクロック生成回路に適用すれば、デューティ比を任意に設定可能なクロック発生装置をも極めて簡単に構成することができる。
【図面の簡単な説明】
【図１】  実施例の距離測定装置全体の構成を表す構成図である。
【図２】  実施例の距離測定装置における時間測定動作を表す説明図である。
【図３】  実施例のラッチ部及び同期部の動作を表すタイムチャートである。
【図４】  実施例の相関器及び２相加算部の構成を表す構成図である。
【図５】  実施例の基準クロック発生部及びシフトクロック生成部の構成を表す構成図である。
【図６】  シフトクロック生成部の第１の変形例を表す構成図である。
【図７】  シフトクロック生成部の第２の変形例を表す構成図である。
【図８】  シフトクロック生成部の第３の変形例を表す構成図である。
【図９】  デューティ比５０％のクロックを発生する装置に本発明を適用した場合の説明図である。
【図１０】  アナログＰＬＬを用いて構成された従来のシフトクロック発生装置を表す構成図である。
【符号の説明】
１０…基準クロック発生部、２０…シフトクロック生成部、６０…リング遅延線（ＲＧＤ）、６２…時間Ａ／Ｄ変換器（ＴＡＤ）、６４…デジタル制御発振器（ＤＣＯ）、６６…データ処理部、６８…レジスタ、７０…除算器、７２…データラッチ回路、７４…周波数微調回路、８０(1) 〜８０(k) …遅延ユニット（単位遅延素子）、ＳＷｂ〜ＳＷｈ…スイッチ群、９０ｂ〜９０ｈ…デコーダ、９２ｂ〜９２ｈ…バッファ。
【図１】
0004810738.tif 000002
【図２】
0004810738.tif 000003
【図３】
0004810738.tif 000004
【図４】
0004810738.tif 000005
【図５】
0004810738.tif 000006
【図６】
0004810738.tif 000007
【図７】
0004810738.tif 000008
【図８】
0004810738.tif 000009
【図９】
0004810738.tif 000010
【図１０】
0004810738.tif 000011