説明

クロック信号発生装置、クロック信号発生方法及びプログラム

【課題】位相の変化に迅速に追従しつつ、クロックスリップが起こり難い(安定した)クロック信号を再生するクロック信号発生装置等を提供することである。
【解決手段】位相比較器1Aは、データ信号と、デジタルVCO1Cの再生クロック信号を基準としたデータ信号の位相の遅れ及び進みを検出する。ランダムウォークフィルタ1Bは、この遅れ進みの回数差を計測して、回数差の絶対値が所定値に達すると、差を打ち消す方向に再生クロック信号の位相を変化させるようデジタルVCO1Cを制御し、計測結果をリセットして計測を再開する。再生位相比較器3は、デジタルVCO1C及び2Cの各再生クロック信号の位相差を検出してランダムウォークフィルタ1Bに通知する。ランダムウォークフィルタ1Bは、通知された位相差が所定量に達している間は、計測結果のリセットやデジタルVCO1Cの再生クロック信号の位相の変更を行わない。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、クロック信号発生装置、クロック信号発生方法及びプログラムに関し、特に、変調波の復調に用いるクロック信号を再生するためのクロック信号発生装置、クロック信号発生方法及びプログラムに関する。
【背景技術】
【0002】
デジタルデータを用いた情報の伝送においては、一般的に、発振器等が発生するクロック信号が用いられる。具体的には、伝送する対象の情報が、このクロック信号を基準として特定される所定のタイミングにおけるデジタルデータの値によって表されるような手法でデジタルデータが生成され、変調された上、伝送が行われる。
【0003】
従って、このような手法により送信側で変調されたデジタルデータを受信して、このデジタルデータが表す情報を正確に再現するためには、デジタルデータの生成に用いたものと実質上同一と見なせるような正確なクロック信号が、デジタルデータの受信側で得られる必要がある。
ところで、無線通信の伝送路においては、送信側が発した電波は、直接波と複数の反射波とが入り交じって受信側のアンテナに届くため、受信機には互いに異なった位相ないし振幅を有する複数の変調波が入力されることとなる。このような、電波が直接波以外の色々な経路を通ってくる現象、すなわちマルチパスの影響を受けて、最悪の場合、受信側で再生したクロック信号にクロックスリップが発生するといった問題が生じる。
そこで従来より、デジタルデータの生成に用いたクロック信号をこのデジタルデータの受信側で正確に再生するための手法が種々考えられてきた(例えば、特許文献1、2及び3参照)。
【0004】
特許文献1に開示されている手法は、復調信号とこれを半タイムスロット分遅延させた信号との排他的論理和を求めることによりクロック信号を再生し、これを原発振入力信号としてPLL(Phase Locked Loop)回路に入力することによりクロック信号の位相を制御するというものである。
【0005】
特許文献2に開示されている手法は、PLL回路を用いてクロック信号の位相の制御を行うのみでは1クロック分以上のずれを補正できないことに鑑み、復調信号から再生されたクロック信号と、PLL回路内のVCO(Voltage Controlled Oscillator)から得られるクロック信号とを継続して監視し、両者間に1クロック分以上のずれが生じたときこれを検出して、検出結果をVCOの補正に用いる、というものである。
【0006】
特許文献3に開示されている手法は、再生されたクロック信号をなすパルスの一部に欠落がある場合、PLL回路の内部で異常に大きな値の誤差信号が生じてクロック信号の位相の制御が狂うことがある点を解決するためのものである。具体的には、復調信号から再生されたクロック信号と、PLL回路内のVCOから得られるクロック信号との同期が失われた場合に、再生されたクロック信号をなすパルスのハイレベル側又はローレベル側のいずれが欠落しているかに従い、VCOが発するパルスのハイレベル側又はローレベル側の幅を狭くして誤差信号の値の増大を抑える、というものである。
【特許文献1】特開昭58−95447号公報
【特許文献2】特開2003−258783号公報
【特許文献3】特開平9−275396号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかし、特許文献2の手法を用いてVCOの補正を行うには、再生されたクロック信号とVCOより得られるクロック信号との間に1クロック分以上のずれが生じたことを検出するのに必要な時間監視を継続する必要があり、この期間は、一般的には数十クロック分にも及ぶ。従って、特許文献2の手法では、クロック信号の位相を迅速に補正することができず、クロック信号の再生を正確に行うことが困難な場合が多い。
【0008】
また、特許文献3の手法は再生されるクロック信号のパルス幅を局所的に変化させる手法ではあるものの、当該クロック信号の位相を補正するものではない。
【0009】
本発明は、このような従来の問題点に鑑みてなされたもので、位相の変化に迅速に追従しつつ、クロックスリップが起こり難い(安定した)クロック信号を再生するクロック信号発生装置、クロック信号発生方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0010】
この目的を達成するため、この発明の第1の観点に係るクロック信号発生装置は、
出力クロック信号を発生し、当該出力クロック信号の位相を、自己に供給される出力クロック制御信号が示す方向に変化させる出力クロック発振手段と、
内部クロック信号を発生する内部クロック発振手段と、
データ信号、及び、前記出力クロック信号を取得し、当該出力クロック信号を基準とした場合における当該データ信号の位相の遅れ及び進みを検出し、検出結果を示す第1の進み遅れ検出信号を生成する第1のデータ進み遅れ検出手段と、
前記第1の進み遅れ検出信号を取得して、前記遅れ又は進みの累積量を、当該第1の進み遅れ検出信号に基づいて計測し、当該累積量が第1の所定値に達したとき、当該累積量に至った遅れ又は進みの発生を打ち消す方向に前記出力クロック信号の位相を変化させるよう指示する前記出力クロック制御信号を生成して前記出力クロック発振手段に供給し、新たに計測を開始する出力クロック制御手段と、
前記出力クロック信号及び前記内部クロック信号を取得し、当該出力クロック信号と当該内部クロック信号との位相差を検出し、特定した位相差を示すクロック間位相差信号を生成するクロック間位相差検出手段と、を備え、
前記出力クロック制御手段は、前記クロック間位相差信号を更に取得し、当該クロック間位相差信号が示す位相差が所定量に達している間、前記出力クロック制御信号の生成を停止する、
ことを特徴とする。
【0011】
このようなクロック信号発生装置によれば、出力クロック信号は位相の変化に迅速に追従する一方、出力クロック信号と内部クロック信号との位相差は所定量以内に保たれるので、内部クロック信号が高安定なものである限り、クロックスリップの発生を防止でき出力クロック信号の安定性が確保される。
【0012】
前記内部クロック発振手段は、当該内部クロック信号の位相を、自己に供給される内部クロック制御信号が示す方向に変化させる手段を備えてよい。
この場合、前記クロック信号発生装置は、
前記データ信号、及び、前記内部クロック信号を取得し、当該内部クロック信号を基準とした場合における当該データ信号の位相の遅れ及び進みを検出し、検出結果を示す第2の進み遅れ検出信号を生成する第2のデータ進み遅れ検出手段と、
前記第2の進み遅れ検出信号を取得して、前記遅れ又は進みの累積量を、当該第2の進み遅れ検出信号に基づいて計測し、当該累積量が、第1の所定値より大きな第2の所定値に達したとき、当該累積量に至った遅れ又は進みの発生を打ち消す方向に前記内部クロック信号の位相を変化させるよう指示する前記内部クロック制御信号を生成して前記内部クロック発振手段に供給し、新たに計測を開始する内部クロック制御手段と、を更に備えるものであってもよい。
このような構成を有していれば、高安定な内部クロック信号が得られるので出力クロック信号の安定性が確保される。
【0013】
前記出力クロック制御手段は、例えば、前記第1の進み遅れ検出信号を取得して、前記遅れが検出された回数と前記進みが検出された回数との差を、当該第1の進み遅れ検出信号に基づいて計測し、計測を開始して以降の計測結果を表すデータを記憶し、当該差の絶対値が第1の所定値に達したとき、当該差の発生を打ち消す方向に前記出力クロック信号の位相を変化させるよう指示する前記出力クロック制御信号を生成して前記出力クロック発振手段に供給し、当該計測結果を表すデータの値を初期化し、新たに計測を開始する手段を備えることにより、進み又は遅れの累積量の計測等を行えばよい。
【0014】
前記第1のデータ進み遅れ検出手段は、例えば、前記データ信号の値が遷移するタイミングを検出し、当該タイミングが、前記出力クロック信号の遷移のタイミングの前後いずれにあるかを判別することにより、当該データ信号の位相の遅れ及び進みを検出すればよい。
【0015】
また、この発明の第2の観点に係るクロック信号発生方法は、
出力クロック信号を発生し、当該出力クロック信号の位相を、自己に供給される出力クロック制御信号が示す方向に変化させる出力クロック発振ステップと、
内部クロック信号を発生する内部クロック発振ステップと、
データ信号、及び、前記出力クロック信号を取得し、当該出力クロック信号を基準とした場合における当該データ信号の値の遷移のタイミングの遅れ及び進みを検出し、検出結果を示す第1の進み遅れ検出信号を生成する第1のデータ進み遅れ検出ステップと、
前記第1の進み遅れ検出信号を取得して、前記遅れ又は進みの累積量を、当該第1の進み遅れ検出信号に基づいて計測し、当該累積量が第1の所定値に達したとき、当該累積量に至った遅れ又は進みの発生を打ち消す方向に前記出力クロック信号の位相を変化させるよう指示する前記出力クロック制御信号を生成して前記出力クロック発振ステップに供給し、新たに計測を開始する出力クロック制御ステップと、
前記出力クロック信号及び前記内部クロック信号を取得し、当該出力クロック信号と当該内部クロック信号との位相差を検出し、特定した位相差を示すクロック間位相差信号を生成するクロック間位相差検出ステップと、より構成されており、
前記出力クロック制御ステップでは、前記クロック間位相差信号を更に取得し、当該クロック間位相差信号が示す位相差が所定量に達している間、前記出力クロック制御信号の生成を停止する、
ことを特徴とする。
【0016】
このようなクロック信号発生方法によれば、出力クロック信号は位相の変化に迅速に追従する一方、出力クロック信号と内部クロック信号との位相差は所定量以内に保たれるので、内部クロック信号が高安定なものである限り、クロックスリップの発生を防止でき出力クロック信号の安定性が確保される。
【0017】
また、この発明の第3の観点に係るプログラムは、
コンピュータを、
出力クロック信号を発生し、当該出力クロック信号の位相を、自己に供給される出力クロック制御信号が示す方向に変化させる出力クロック発振手段と、
内部クロック信号を発生する内部クロック発振手段と、
データ信号、及び、前記出力クロック信号を取得し、当該出力クロック信号を基準とした場合における当該データ信号の値の遷移のタイミングの遅れ及び進みを検出し、検出結果を示す第1の進み遅れ検出信号を生成する第1のデータ進み遅れ検出手段と、
前記第1の進み遅れ検出信号を取得して、前記遅れ又は進みの累積量を、当該第1の進み遅れ検出信号に基づいて計測し、当該累積量が第1の所定値に達したとき、当該累積量に至った遅れ又は進みの発生を打ち消す方向に前記出力クロック信号の位相を変化させるよう指示する前記出力クロック制御信号を生成して前記出力クロック発振手段に供給し、新たに計測を開始する出力クロック制御手段と、
前記出力クロック信号及び前記内部クロック信号を取得し、当該出力クロック信号と当該内部クロック信号との位相差を検出し、特定した位相差を示すクロック間位相差信号を生成するクロック間位相差検出手段と、して機能させるためのプログラムであって、
前記出力クロック制御手段は、前記クロック間位相差信号を更に取得し、当該クロック間位相差信号が示す位相差が所定量に達している間、前記出力クロック制御信号の生成を停止する、
ことを特徴とする。
【0018】
このようなプログラムを実行するコンピュータによれば、出力クロック信号は位相の変化に迅速に追従する一方、出力クロック信号と内部クロック信号との位相差は所定量以内に保たれるので、内部クロック信号が高安定なものである限り、クロックスリップの発生を防止でき出力クロック信号の安定性が確保される。
【発明の効果】
【0019】
本発明によれば、位相の変化に迅速に追従しつつ、クロックスリップが起こり難い(安定した)クロック信号を再生するクロック信号発生装置、クロック信号発生方法及びプログラムが実現される。
【発明を実施するための最良の形態】
【0020】
以下、本発明の実施の形態を、クロック再生装置を例とし、図面を参照して説明する。図1は、この発明の実施の形態に係るクロック再生装置の構成を示す図である。図示するように、このクロック再生装置は、PLL(Phase Locked Loop)回路1と、PLL回路2と、再生位相比較器3とより構成されている。
また、図2は、このクロック再生装置の後述する各部が生成する信号の波形又は値について、その時間変化の一例を示すグラフである。
【0021】
PLL回路1は、位相比較器1Aと、ランダムウォークフィルタ1Bと、デジタルVCO(Voltage Controlled Oscillator)1Cとより構成されている。
PLL回路2は、位相比較器2Aと、ランダムウォークフィルタ2Bと、デジタルVCO2Cとより構成されている。
【0022】
位相比較器1Aは、例えば外部の復調器がFSK(Frequency Shift Keying)変調信号を復調するなどして得た2値のデータ信号を外部より取得し、また、デジタルVCO1Cが連続的に発生する後述の再生クロック信号を取得する。そして、取得したデータ信号の値が零クロスしたか否かを判別し、零クロスしたと判別したタイミングで零クロス検出信号を生成し、ランダムウォークフィルタ1Bに供給する。
また、位相比較器1Aは、データ信号が零クロスしたタイミングにおけるこのデータ信号の位相が本来の位相より進んでいるか又は遅れているかを判別し、判別の結果を示す進み遅れ検出信号を生成し、ランダムウォークフィルタ1Bに供給する。
【0023】
より具体的には、位相比較器1Aは、例えば図3に示すように、データ信号入力端と、再生クロック信号入力端と、零クロス検出信号出力端と、進み遅れ検出信号出力端と、DラッチD1〜D4と、インバータINVと、XOR(排他的論理和)ゲートX1及びX2とより構成されている。
【0024】
DラッチD1〜D4はそれぞれ、クロック入力端CKと、データ入力端Dと、データ出力端Qとを備えている。
各々のDラッチは、自己のクロック入力端CKに供給されている信号がローレベルからハイレベルへと立ち上がった時点に自己のデータ入力端Dに供給されている信号の論理値を記憶し、記憶している論理値を示す信号を、クロック入力端CKに供給されている信号が再び立ち上がるまで、自己のデータ出力端Qから出力し続ける。
インバータINVは入力端及び出力端を備え、自己の入力端に供給された信号の論理値を反転させた信号を生成して自己の出力端より出力する。
XORゲートX1及びX2はそれぞれ、2個の入力端と、1個の出力端とを備える。そしてそれぞれ、自己の2個の入力端に供給された信号の各論理値の排他的論理和を示す信号を生成して、自己の出力端より出力する。
【0025】
DラッチD1及びD3のデータ入力端D同士は互いに結合されて位相比較器1Aのデータ信号入力端をなしている。DラッチD2のデータ入力端DはDラッチD1のデータ出力端Qに接続されており、DラッチD4のデータ入力端DはDラッチD3のデータ出力端Qに接続されている。
DラッチD1、D2及びD4のクロック入力端CK同士は互いに結合されて位相比較器1Aの再生クロック信号入力端をなしている。DラッチD3のクロック入力端CKはインバータINVの出力端に接続され、インバータINVの入力端は位相比較器1Aの再生クロック信号入力端に接続されている。
XORゲートX1の一方の入力端はDラッチD1のデータ出力端Qに接続され、他方の入力端はDラッチD2のデータ出力端Qに接続され、出力端は零クロス検出信号出力端をなす。XORゲートX2の一方の入力端はDラッチD2のデータ出力端Qに接続され、他方の入力端はDラッチD4のデータ出力端Qに接続され、出力端は進み遅れ検出信号出力端をなす。
【0026】
図3に示す構成において、再生クロック信号入力端に再生クロック信号が供給され、データ信号入力端にデータ信号が入力されると、DラッチD1は、再生クロック信号が立ち上がる毎に、当該立ち上がりの時点で入力されているデータ信号の論理値を記憶する。
また、DラッチD2は、再生クロック信号が立ち下がる毎に、当該立ち下がりの時点にデータ信号入力端に供給されているデータ信号の論理値を記憶する。
また、DラッチD3は、再生クロック信号が立ち上がる毎に、当該立ち上がりの時点でDラッチD1が出力している信号の論理を記憶する。この論理値は、再生クロック信号が前回立ち上がった時点にデータ信号入力端に供給されていたデータ信号の論理値にあたる。
また、DラッチD4は、再生クロック信号が立ち上がる毎に、当該立ち上がりの時点でDラッチD2が出力している信号の論理を記憶する。この論理値は、再生クロック信号が前回立ち下がった時点にデータ信号入力端に供給されていたデータ信号の論理値にあたる。
【0027】
そして、XORゲートX1は、DラッチD1及びD2が記憶する2個の値の排他的論理和を示す信号を零クロス検出信号として出力する。また、XORゲートX2は、DラッチD2及びD4が記憶する2個の値の排他的論理和を示す信号を進み遅れ検出信号として出力する。
【0028】
従って、例えば、再生クロック信号が最初に立ち上がった時点にデータ信号入力端に供給されたデータ信号の論理値を1番目のデータとし、次に再生クロック信号が立ち下がった時点における当該論理値を2番目のデータとして、以下、再生クロック信号がn回目(nは自然数)に立ち上がった時点の当該論理値を{(2・n)−1}番目のデータ、再生クロック信号がn回目に立ち下がった時点の当該論理値を(2・n)番目のデータとすると、DラッチD2がk番目(kは正の奇数)のデータを記憶している時点で、DラッチD1は(k+2)番目のデータを記憶し、DラッチD4は(k+1)番目のデータを記憶する。そして、XORゲートX1は、k番目及び(k+2)番目の2個のデータの論理値の排他的論理和を示す信号を零クロス検出信号として出力する。また、XORゲートX2は、k番目及び(k+1)番目の2個のデータの論理値の排他的論理和を示す信号を進み遅れ検出信号として出力する。
【0029】
図2にも示す通り、零クロス検出信号の論理値が“1”であることは、k番目及び(k+2)番目のデータの論理値が互いに異なることを意味する。従ってこの場合、位相比較器1Aに供給されたデータ信号は、(k+1)番目のデータが採取された時点付近で零クロスしている(論理値の遷移が起きている)といえる。零クロス検出信号の論理値が“0”である場合は、k番目及び(k+2)番目のデータの論理値は等しい。従ってこの場合、両データが採取された2個の時点の間ではデータ信号は零クロスしていないといえる。
【0030】
また、進み遅れ検出信号の論理値が“1”であることは、k番目及び(k+1)番目のデータの論理値が互いに異なることを意味し、“0”であることは、k番目及び(k+1)番目のデータの論理値が等しいことを意味する。
従って、零クロス検出信号の論理値が“1”である(つまり、(k+1)番目のデータ採取時点付近でデータ信号の零クロスが起こっている)場合において、進み遅れ検出信号の論理値も“1”である場合、当該零クロスは、より正確にはk番目のデータ採取時点と(k+1)番目のデータ採取時点との間で起きているといえる。すなわち、データ信号の位相は進んでいるといえる。
一方、零クロス検出信号の論理値が“1”である場合において、進み遅れ検出信号の論理値は“0”であった場合、零クロスは、(k+1)番目のデータ採取時点と(k+2)番目のデータ採取時点との間で起きているといえる。すなわち、データ信号の位相は遅れているといえる。
【0031】
ランダムウォークフィルタ1Bは、例えば、値のカウントアップ、カウントダウン及びリセットが可能に構成されたカウンタ回路より構成されている。
ランダムウォークフィルタ1Bは、動作を開始すると、まずカウント値の初期値(例えば、0)を記憶する。次いで、位相比較器1Aより零クロス検出信号及び進み遅れ検出信号を取得し、また、デジタルVCO1Cより再生クロック信号も取得する。一方、再生位相比較器3より、後述するVCO位相差信号も取得する。
【0032】
そしてランダムウォークフィルタ1Bは、取得した零クロス検出信号の論理値が“1”である間において、進み遅れ検出信号の論理値が“1”である場合、自己に供給されている再生クロック信号が立ち上がる毎に、所定の上限値(カウント値の上限値)に至るまで、自己の記憶しているカウント値を1だけ増加させる(カウントアップする)。また、取得した零クロス検出信号の論理値が“1”である間において、進み遅れ検出信号の論理値が“0”である場合は、自己に供給されている再生クロック信号が立ち上がる毎に、所定の下限値(カウント値の下限値)に至るまで、当該カウント値を1だけ減少させる(カウントダウンする)。なお、カウント値の上限値及び下限値は、カウント値の上限値が正の値で、カウント値の下限値が負の値であり、両者の絶対値は等しい、という関係にあるものとする。一方、取得した零クロス検出信号の論理値が“0”である間は、当該カウント値を変化させずに保持する。
【0033】
そして、ランダムウォークフィルタ1Bは、当該カウント値がその上限値に達している状態では、カウント値のカウントアップを行う代わりに当該カウント値をリセットし(すなわち、初期値に戻し)、デジタルVCO1Cに、再生クロック信号の位相を進ませることを指示するためのup制御信号を供給する。一方、当該カウント値がその下限値に達している状態では、カウントダウンを行う代わりに当該カウント値をリセットして、再生クロック信号の位相を遅らせることを指示するためのdown制御信号をデジタルVCO1Cに供給する。なお、図2は、ランダムウォークフィルタ1Bのカウント値の上限値が(+3)、下限値が(−3)である場合を例示するものである。
【0034】
上述した動作を行うことにより、ランダムウォークフィルタ1Bは、データ信号の位相の遅れ又は進みの累積量(ないしは、位相の遅れが検出された回数と位相の進みが検出された回数との差)を、進み遅れ検出信号に基づいて計測する。そして、累積量を示すカウント値の絶対値が所定の値に達したとき、そのような累積量にまで至った遅れ又は進みの発生を打ち消す方向に再生クロック信号の位相を変化させるよう、up制御信号あるいはdown制御信号を発してデジタルVCO1Cを制御する。そしてこの制御を行った際は計測結果を初期化し、新たな計測をまた始める。
【0035】
ただし、ランダムウォークフィルタ1Bは、再生位相比較器3より供給されるVCO位相差信号の値が所定の上限値(位相差の上限値)に達している場合、ランダムウォークフィルタ1Bは、当該カウント値がその上限値に達してもリセットを行わず、この値をそのまま保持する。また、VCO位相差信号の値が所定の下限値(位相差の下限値)に達している場合は、当該カウント値がその下限値に達してもリセットを行わず、この値をそのまま保持する。なお、図2は、位相差の上限値が10である場合を例示するものである。
【0036】
デジタルVCO1Cは、発振器と、カウンタ回路とにより構成されている。
デジタルVCO1Cの発振器は、生成する対象の再生クロック信号より十分高い一定の周波数を有する発振信号を生成する。
デジタルVCO1Cのカウンタ回路は、発振信号のカウント値を記憶する一方、発振信号を取得し、この発振信号をなすパルスを検出する毎に発振信号のカウント値をカウントアップすることにより、発振信号のパルス数を連続的にカウントし、また、自己が現在記憶するカウント値を、再生位相比較器3へと連続的に通知する。また、当該カウンタ回路は、後述する動作を行うことにより再生クロック信号を生成し、位相比較器1A及びランダムウォークフィルタ1Bに供給する。
【0037】
初期状態においてデジタルVCO1Cのカウンタ回路は、発振信号のカウント値として任意の初期値(例えば0)を記憶する。次いで、発振信号のカウント値が所定値になるたびに再生クロック信号の論理値をトグルし(すなわち、現在ハイレベルであればローレベルに、また現在ローレベルであればハイレベルに変化させ)、発振信号のカウント値をリセットする(すなわち発振信号のカウント値を0にする)、という動作を繰り返すことにより、所定の周波数を有する再生クロック信号を生成する。そしてデジタルVCO1Cは、再生クロック信号の生成を開始すると、PLL回路2の後述するデジタルVCO2Cに、自己が記憶するカウント値を通知する。
【0038】
ランダムウォークフィルタ1BからデジタルVCO1Cへとup制御信号を供給されると、デジタルVCO1Cのカウンタ回路はこのup制御信号に応答し、発振信号のカウント値に1を加算する。加算の結果、発振信号のカウント値が上述の所定値に達した場合は、再生クロック信号の論理値のトグル及びカウント値のリセットを行う。この結果、再生クロック信号の位相は従前より進む。
【0039】
一方、ランダムウォークフィルタからdown制御信号を供給されると、デジタルVCO1Cのカウンタ回路はこのdown制御信号に応答し、現在のカウント値のカウントアップを、発振信号のパルス1個分の時間停止する。この結果、再生クロック信号の位相は従前より遅れる。
【0040】
PLL回路2は、PLL回路1と実質的に同一の構成を有している。具体的には、PLL回路2は、位相比較器2Aと、ランダムウォークフィルタ2Bと、デジタルVCO2Cとより構成されており、位相比較器2Aは位相比較器1Aと、ランダムウォークフィルタ2Bはランダムウォークフィルタ1Bと、デジタルVCO2CはデジタルVCO1Cと、それぞれ実質的に同一の構成を有している。また、位相比較器2A、ランダムウォークフィルタ2B及びデジタルVCO2C相互間の接続関係は、位相比較器1A、ランダムウォークフィルタ1B及びデジタルVCO1C相互間の接続関係と実質的に同一である。
【0041】
ただし、PLL回路2は、以下(1)〜(3)として示す3点において、PLL回路1と異なっている。
【0042】
(1) ランダムウォークフィルタ2Bのカウント値の上限値及び下限値の絶対値は、ランダムウォークフィルタ1Bの当該値より大きい(なお、図2は、ランダムウォークフィルタ2Bのカウント値の上限値が10以上の値である場合を例示するものである)。このため、データ信号の遅れ又は進みが連続して検出された場合において、ランダムウォークフィルタ2Bはランダムウォークフィルタ1Bよりカウント値のリセットを発生しにくく、従ってデジタルVCO2CはデジタルVCO1Cより、up制御信号及びdown制御信号の供給を受けにくい。すなわち、デジタルVCO2Cの方が高安定である。
【0043】
(2) ランダムウォークフィルタ2Bは、再生位相比較器3よりVCO位相差信号の供給を受けない。従ってランダムウォークフィルタ2Bは、自己が記憶するカウント値がその上限値又は下限値に達すれば必ずリセットを行う。
【0044】
(3) デジタルVCO2Cは、デジタルVCO1Cより発振信号のカウント値が通知された後、再生クロック信号の発生を開始する。具体的には、デジタルVCO1Cより発振信号のカウント値を通知されると、このカウント値を初期値として記憶し、デジタルVCO2C自身が発生する発振信号のパルス数のカウントを開始する。一方、デジタルVCO2Cは、自己が記憶するカウント値をデジタルVCO1Cへと通知する必要はない。
【0045】
再生位相比較器3は、例えば減算回路などより構成されている。再生位相比較器3は、デジタルVCO1C及びデジタルVCO2Cより、各々が記憶する発振信号のカウント値の通知を受け、同時に通知されたカウント値の差(デジタルVCO1Cのカウント値からデジタルVCO2Cのカウント値を差し引いた値、又は、デジタルVCO2Cのカウント値からデジタルVCO1Cのカウント値を差し引いた値)を表すデータを生成し、このデータをVCO位相差信号としてランダムウォークフィルタ1Bに供給する。
【0046】
以上説明した動作を行うことにより、デジタルVCO1Cは再生クロック信号を生成する(また、デジタルVCO2CもPLL回路2の内部で用いるための再生クロック信号を生成する)。
【0047】
デジタルVCO1Cが生成する再生クロック信号は、当該再生クロック信号を基準としたデータ信号の位相の進み(又は遅れ)が連続すると、これに追従して、自己の位相を従前より進める(又は遅らせる)。再生クロック信号の位相の変化は、データ信号の位相の進み(又は遅れ)が比較的少数回(図2に示した例では、4回)でも起こるので、データ信号の変化に迅速に追従する。
一方、デジタルVCO2Cが生成する再生クロック信号が位相の変化を起こすのは、データ信号の位相の進み(又は遅れ)が比較的多数回(図2の例では、10回以上)に渡った場合に限られるので、デジタルVCO2Cが生成する再生クロック信号は高安定である。
そして、デジタルVCO1Cが生成する再生クロック信号は、デジタルVCO2Cが生成する再生クロック信号との位相差が所定量(図2の例では、発振信号のカウント数にして10カウント分)を超えることがないように制御される。従って、デジタルVCO1Cが生成する再生クロック信号のクロックスリップの発生が防止でき、安定性も確保される。
また、このクロック再生装置はその全体をデジタル回路より構成することができるため、FPGA(Field Programmable Gate Array)等の中に組み込むことが容易である。また、少量の加減算回路、比較回路、カウンター等の論理回路で簡単に構成できる。
【0048】
なお、このクロック再生装置の構成は、上述のものに限られない。
例えば、位相比較器1A、位相比較器2A、ランダムウォークフィルタ1B、ランダムウォークフィルタ2B、デジタルVCO1C、デジタルVCO2C、及び再生位相比較器3の一部又は全部は、DSP(Digital Signal Processor)やCPU(Central Processing Unit)等のプロセッサや、このプロセッサが実行するためのプログラムを記憶するメモリなどより構成されていてもよい。その場合、単一のプロセッサが、位相比較器1A、位相比較器2A、ランダムウォークフィルタ1B、ランダムウォークフィルタ2B、デジタルVCO1C、デジタルVCO2C、及び再生位相比較器3の一部又は全部の機能を行うようにしてもよい。
【0049】
また、デジタルVCO2Cのカウント値の初期値は、必ずしもデジタルVCO1Cより通知される値でなくてもよい。従って、例えばデータ信号が、既知のパターンをとる値の列を表すプリアンブル部を含む場合は、位相比較器2Aによりラッチされたデータ信号の値がとるパターンとこの既知のパターンとの相関を公知の手法により求め、得られる相関が最も高くなるように、デジタルVCO2Cのカウント値の初期値を選んでもよい。
【0050】
また、デジタルVCO1C及びデジタルVCO2Cは、各自のカウント値の初期値を外部の任意の装置からリロードすることが可能な構成を有していてもよい。また、ランダムウォークフィルタ1B及びランダムウォークフィルタ2Bも、各自のカウント値の初期値、上限値及び下限値と、位相差の上限値及び下限値とのうち一部又は全部を外部の任意の装置からリロードすることが可能な構成を有していてよい。
デジタルVCO1C及びデジタルVCO2Cやランダムウォークフィルタ1B及びランダムウォークフィルタ2Bがこれらの値をリロード可能な構成を有していれば、再生クロック信号の位相の安定性の高さと、データ信号の変化への追従の迅速さ(追従性)とを、このクロック信号発生装置の利用者の必要に応じて様々に変化させることができる。
【0051】
また、ランダムウォークフィルタ2Bがカウント値の上限値及び下限値をリロード可能に構成されていれば、例えば、初期状態においてはカウント値の上限値及び下限値として絶対値が比較的小さな値をロードすることでデジタルVCO2Cの再生クロック信号の追従性を高くしておき、当該再生クロック信号の位相が十分安定した時点で、絶対値が比較的大きな値をカウント値の新たな上限値及び下限値としてリロードすることで当該再生クロック信号の安定性を高くする、といった動作をPLL回路2に行わせることも可能となる。この場合、デジタルVCO2Cは、そのカウント値の初期値を、必ずしもデジタルVCO1Cより通知される値としなくてもよい。
【0052】
以上、この発明の実施の形態を説明したが、この発明にかかるクロック信号発生装置は、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。
例えば、パーソナルコンピュータに上述の位相比較器1A、位相比較器2A、ランダムウォークフィルタ1B、ランダムウォークフィルタ2B、デジタルVCO1C、デジタルVCO2C、及び再生位相比較器3の動作を実行させるためのプログラムを格納した記録媒体(CD−ROM、MO、フレキシブルディスク等)から該プログラムをインストールすることにより、上述したクロック再生装置を構成することができる。
【0053】
また、例えば、通信回線の掲示板(BBS)にこのプログラムをアップロードし、これを通信回線を介して配信してもよく、また、このプログラムを表す信号により搬送波を変調し、得られた変調波を伝送し、この変調波を受信した装置が変調波を復調してこれらのプログラムを復元するようにしてもよい。
そして、このプログラムを起動し、OSの制御下に、他のアプリケーションプログラムと同様に実行することにより、上述の処理を実行することができる。
【0054】
なお、OSが処理の一部を分担する場合、あるいは、OSが本願発明の1つの構成要素の一部を構成するような場合には、記録媒体には、その部分を除いたプログラムを格納してもよい。この場合も、この発明では、その記録媒体には、コンピュータが実行する各機能又はステップを実行するためのプログラムが格納されているものとする。
【図面の簡単な説明】
【0055】
【図1】本発明の実施形態に係るクロック再生装置の構成を示す図である。
【図2】図1のクロック再生装置の各部が生成する信号の波形又は値の時間変化の一例を示すグラフである。
【図3】位相比較器の構成を示す図である。
【符号の説明】
【0056】
1,2 PLL回路
1A,2A 位相比較器
1B,2B ランダムウォークフィルタ
1C,2C VCO
3 再生位相比較器
D1〜D4 Dラッチ
X1,X2 XORゲート
INV インバータ

【特許請求の範囲】
【請求項1】
出力クロック信号を発生し、当該出力クロック信号の位相を、自己に供給される出力クロック制御信号が示す方向に変化させる出力クロック発振手段と、
内部クロック信号を発生する内部クロック発振手段と、
データ信号、及び、前記出力クロック信号を取得し、当該出力クロック信号を基準とした場合における当該データ信号の位相の遅れ及び進みを検出し、検出結果を示す第1の進み遅れ検出信号を生成する第1のデータ進み遅れ検出手段と、
前記第1の進み遅れ検出信号を取得して、前記遅れ又は進みの累積量を、当該第1の進み遅れ検出信号に基づいて計測し、当該累積量が第1の所定値に達したとき、当該累積量に至った遅れ又は進みの発生を打ち消す方向に前記出力クロック信号の位相を変化させるよう指示する前記出力クロック制御信号を生成して前記出力クロック発振手段に供給し、新たに計測を開始する出力クロック制御手段と、
前記出力クロック信号及び前記内部クロック信号を取得し、当該出力クロック信号と当該内部クロック信号との位相差を検出し、特定した位相差を示すクロック間位相差信号を生成するクロック間位相差検出手段と、を備え、
前記出力クロック制御手段は、前記クロック間位相差信号を更に取得し、当該クロック間位相差信号が示す位相差が所定量に達している間、前記出力クロック制御信号の生成を停止する、
ことを特徴とするクロック信号発生装置。
【請求項2】
前記内部クロック発振手段は、当該内部クロック信号の位相を、自己に供給される内部クロック制御信号が示す方向に変化させる手段を備え、
前記データ信号、及び、前記内部クロック信号を取得し、当該内部クロック信号を基準とした場合における当該データ信号の位相の遅れ及び進みを検出し、検出結果を示す第2の進み遅れ検出信号を生成する第2のデータ進み遅れ検出手段と、
前記第2の進み遅れ検出信号を取得して、前記遅れ又は進みの累積量を、当該第2の進み遅れ検出信号に基づいて計測し、当該累積量が、第1の所定値より大きな第2の所定値に達したとき、当該累積量に至った遅れ又は進みの発生を打ち消す方向に前記内部クロック信号の位相を変化させるよう指示する前記内部クロック制御信号を生成して前記内部クロック発振手段に供給し、新たに計測を開始する内部クロック制御手段と、を更に備える、
ことを特徴とする請求項1に記載のクロック信号発生装置。
【請求項3】
前記出力クロック制御手段は、前記第1の進み遅れ検出信号を取得して、前記遅れが検出された回数と前記進みが検出された回数との差を、当該第1の進み遅れ検出信号に基づいて計測し、計測を開始して以降の計測結果を表すデータを記憶し、当該差の絶対値が第1の所定値に達したとき、当該差の発生を打ち消す方向に前記出力クロック信号の位相を変化させるよう指示する前記出力クロック制御信号を生成して前記出力クロック発振手段に供給し、当該計測結果を表すデータの値を初期化し、新たに計測を開始する手段を備える、
ことを特徴とする請求項1又は2に記載のクロック信号発生装置。
【請求項4】
前記第1のデータ進み遅れ検出手段は、前記データ信号の値が遷移するタイミングを検出し、当該タイミングが、前記出力クロック信号の遷移のタイミングの前後いずれにあるかを判別することにより、当該データ信号の位相の遅れ及び進みを検出する、
ことを特徴とする請求項1、2又は3に記載のクロック信号発生装置。
【請求項5】
出力クロック信号を発生し、当該出力クロック信号の位相を、自己に供給される出力クロック制御信号が示す方向に変化させる出力クロック発振ステップと、
内部クロック信号を発生する内部クロック発振ステップと、
データ信号、及び、前記出力クロック信号を取得し、当該出力クロック信号を基準とした場合における当該データ信号の値の遷移のタイミングの遅れ及び進みを検出し、検出結果を示す第1の進み遅れ検出信号を生成する第1のデータ進み遅れ検出ステップと、
前記第1の進み遅れ検出信号を取得して、前記遅れ又は進みの累積量を、当該第1の進み遅れ検出信号に基づいて計測し、当該累積量が第1の所定値に達したとき、当該累積量に至った遅れ又は進みの発生を打ち消す方向に前記出力クロック信号の位相を変化させるよう指示する前記出力クロック制御信号を生成して前記出力クロック発振ステップに供給し、新たに計測を開始する出力クロック制御ステップと、
前記出力クロック信号及び前記内部クロック信号を取得し、当該出力クロック信号と当該内部クロック信号との位相差を検出し、特定した位相差を示すクロック間位相差信号を生成するクロック間位相差検出ステップと、より構成されており、
前記出力クロック制御ステップでは、前記クロック間位相差信号を更に取得し、当該クロック間位相差信号が示す位相差が所定量に達している間、前記出力クロック制御信号の生成を停止する、
ことを特徴とするクロック信号発生方法。
【請求項6】
コンピュータを、
出力クロック信号を発生し、当該出力クロック信号の位相を、自己に供給される出力クロック制御信号が示す方向に変化させる出力クロック発振手段と、
内部クロック信号を発生する内部クロック発振手段と、
データ信号、及び、前記出力クロック信号を取得し、当該出力クロック信号を基準とした場合における当該データ信号の値の遷移のタイミングの遅れ及び進みを検出し、検出結果を示す第1の進み遅れ検出信号を生成する第1のデータ進み遅れ検出手段と、
前記第1の進み遅れ検出信号を取得して、前記遅れ又は進みの累積量を、当該第1の進み遅れ検出信号に基づいて計測し、当該累積量が第1の所定値に達したとき、当該累積量に至った遅れ又は進みの発生を打ち消す方向に前記出力クロック信号の位相を変化させるよう指示する前記出力クロック制御信号を生成して前記出力クロック発振手段に供給し、新たに計測を開始する出力クロック制御手段と、
前記出力クロック信号及び前記内部クロック信号を取得し、当該出力クロック信号と当該内部クロック信号との位相差を検出し、特定した位相差を示すクロック間位相差信号を生成するクロック間位相差検出手段と、して機能させるためのプログラムであって、
前記出力クロック制御手段は、前記クロック間位相差信号を更に取得し、当該クロック間位相差信号が示す位相差が所定量に達している間、前記出力クロック制御信号の生成を停止する、
ことを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate


【公開番号】特開2007−150973(P2007−150973A)
【公開日】平成19年6月14日(2007.6.14)
【国際特許分類】
【出願番号】特願2005−345345(P2005−345345)
【出願日】平成17年11月30日(2005.11.30)
【出願人】(000100746)アイコム株式会社 (273)
【Fターム(参考)】