JP2012065252A - クロック抽出回路及び受信装置 - Google Patents
クロック抽出回路及び受信装置 Download PDFInfo
- Publication number
- JP2012065252A JP2012065252A JP2010209506A JP2010209506A JP2012065252A JP 2012065252 A JP2012065252 A JP 2012065252A JP 2010209506 A JP2010209506 A JP 2010209506A JP 2010209506 A JP2010209506 A JP 2010209506A JP 2012065252 A JP2012065252 A JP 2012065252A
- Authority
- JP
- Japan
- Prior art keywords
- value
- counter value
- received data
- cycle
- change
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
【課題】デジタルロジック回路で安定したクロック抽出を可能とするクロック抽出回路の提供。
【解決手段】クロック抽出回路は部クロック信号で駆動されるカウンタ(CNT)と、前記内部クロック信号の各サイクルについて、カウンタ値と受信データの変化の有無の監視結果から、前記受信データの変化の進み、遅れ具合に応じて、次のサイクルでのカウンタ値を、通常の1つよりも余計に進めるか、現在のカウンタ値を保持し、前記カウンタ値の予め定められた所定のデータ変化許容範囲内の中心側で前記受信データが変化するように制御し、前記カウンタ値が予め定められた所定値のとき、次のサイクルでの抽出クロック信号の反転の有無を決定するデジタルロジックで構成された制御回路(CTRL)を備える。
【選択図】図1
【解決手段】クロック抽出回路は部クロック信号で駆動されるカウンタ(CNT)と、前記内部クロック信号の各サイクルについて、カウンタ値と受信データの変化の有無の監視結果から、前記受信データの変化の進み、遅れ具合に応じて、次のサイクルでのカウンタ値を、通常の1つよりも余計に進めるか、現在のカウンタ値を保持し、前記カウンタ値の予め定められた所定のデータ変化許容範囲内の中心側で前記受信データが変化するように制御し、前記カウンタ値が予め定められた所定値のとき、次のサイクルでの抽出クロック信号の反転の有無を決定するデジタルロジックで構成された制御回路(CTRL)を備える。
【選択図】図1
Description
本発明は、入力デジタルデータからクロックを抽出するクロック抽出回路と該クロック抽出回路を備えた受信装置に関する。
受信データからクロック信号を抽出するクロック抽出回路ではPLL(Phase Locked Loop:位相同期ループ)回路を用い、受信データに位相同期したクロック信号を抽出し、該抽出したクロック信号で受信データをサンプリングする構成が多用されている。図9は、クロック抽出回路の典型的な構成の一例を示す図である。図9において、受信装置100は無線受信回路101、アナログPLL回路102、フリップフロップ(FF)103を備えている。無線受信回路101は、送信装置200の無線送信回路201から無線送信された無線信号(例えば可視光、電波等)を光電気変換器、RF(Radio Frequency)受信機等で受信し、アナログ受信信号をアナログデジタル変換器(不図示)でデジタル信号に変換し受信データを出力する。アナログPLL回路102は、無線受信回路101からの受信データを基準信号として受け、該基準信号に位相同期した抽出クロック信号を出力する。フリップフロップ103は、無線受信回路101から出力される受信データを、アナログPLL回路102からの抽出クロック信号でサンプルし抽出データとして出力する。アナログPLL回路102において位相同期しない場合、同期エラーを出力する。
アナログPLLは、例えば図10に示すように、受信データ(FREF)と帰還分周信号(FCKV)の位相・周波数の差を検出する位相周波数比較器(PFD:Phase Frequency Detector)及びPFDで検出された位相差に応じた電圧を生成するチャージポンプ(CP)と、チャージポンプ(CP)の電圧を平滑化するループフィルタ(LF)と、ループフィルタ(LF)の出力電圧を制御電圧として受け、制御電圧に応じて発振周波数が可変される電圧制御発振器(VCO)と、VCOの出力クロック(FVCO)をN分周したPFDに帰還させる分周器(÷N)を備えている。なお、図10は非特許文献1のFig.1から引用したものである。
アナログPLLは、例えばループフィルタ(LF)等が抵抗や容量といったアナログ素子を用いて構成されるため、素子数(部品点数)が多くなり、回路面積の増加等の問題のほか、電源電圧の低下(低電圧化)による特性の劣化等の問題がある。近年の装置は、小型化が進み、そのためには部品点数を少なくすることが必須である。PLL等をデジタル回路で実現することで、FPGA(Floating Programmable Logic Array)等のデジタル半導体デバイスで実現することができるため、部品点数が格段に少なくなる。
アナログPLLの上記問題点を解消するために、アナログPLLの素子をすべてデジタル構成に置き換えた全デジタルPLL(All Digital PLL:ADPLL)の開発も進められている。全デジタルPLL(ADPLL)は、例えば図11に示すように、図10のPFDのかわりに、位相差をデジタル符号に変換するP2D(Phase to Digital Convertor)、P2Dの出力を平滑化するデジタルループフィルタ(Digital LF)、デジタルループフィルタからのデジタル信号に応じて発振周波数を可変させるデジタル制御発振器(Digitally Controlled Oscillator :DCO)を備え、DCOの出力クロックをN分周してP2Dに帰還させる分周器(÷N)を備えている。
デジタル方式のクロック抽出回路は有線通信等の通信環境の安定した受信ジッタの小さい通信システムでは実現されているが、例えば無線通信で使用する場合、外的要因の少ない受信ジッタの小さな安定した環境でしか使用することができない。その理由は以下の通りである。
通常の有線による通信と比較して、例えば電波無線通信や赤外線通信、可視光通信等は、磁場影響、外乱光や反射光などの影響を受けやすい。このため、受信データのジッタが大きくなりやすい。このようにジッタの大きな受信データからクロック抽出を行うことはデジタル方式のクロック抽出回路では困難であった。
例えば図11に示した全デジタルPLLのP2Dを用いてクロック抽出回路を構成した場合、P2DはTDC(Time To Digital Converter)を備えている。TDCは、位相差を検出する二つの信号の一方を遅延させる遅延回路列を備え、遅延回路列の各単位遅延回路の信号を二つの信号の他方で共通にサンプルする複数のフリップフロップを備え、複数のフリップフロップのうち隣接フリップフロップのサンプル値が異なる箇所を検出することで、二つの信号の位相差を単位遅延回路何段分であるかを測定している。このため、測定精度を維持しつつ位相差測定範囲を広げる場合、TDCの遅延回路列の単位遅延回路1段あたりの遅延時間を短縮し(高速化し)、単位遅延回路の段数を増大し、単位遅延回路の各段の出力をサンプルするフリップフロップの個数、遷移点検出用の論理回路の回路規模を増大させることが必要とされる。このため、位相同期可能な受信データのジッタ等が制限される。なお、図11は非特許文献1のFig.2から引用したものである。
本願についてサーチされた先行技術文献の特許文献1には、6相クロックを用いて入力データをラッチし6相クロックのうち特定の位相にてリタイミングを行うサンプリング部と、サンプリング部からの出力データの立ち上り/立下りエッジの合った位相を検出し検出結果を出力するエッジ検出部、立ち上り/立下りエッジの合った位相と現在の選択データ位置との比較結果に応じて後段カウンタ部のカウント値を増減させる信号を出力する位相判定部と、カウンタのカウンタ値がしきい値を超えた場合には、データ選択位置を前後に動かすカウンタ部と、サンプリング部の出力データのうち、カウンタ部の出力データに該当するものを後段に出力するデータ選択部を備え、ランダムジッタと周波数ずれに対応可能としたクロック抽出回路とした構成が開示されている。また特許文献2には、データ信号の遷移間の最小時間インターバルを推定し、データ信号の遷移にそれぞれ対応する複数のパルスを生成し、これらパルスの各々の持続時間を推定された最小時間インターバルに基づいて調整し、調整されたパルスを狭帯域フィルタに入力し、推定された最小時間インターバルに基づいて、狭帯域フィルタの中心周波数を判定し、調整されたパルスから狭帯域フィルタを用いてクロック信号を抽出する構成が開示されている。後述されるように、本発明は、上記特許文献等とは相違した設計方式のクロック抽出回路を提案するものである。
Volodymyr Kratyuk, et al., "A Design Procedure for All-Digital Phase-Locked Loops Based on a Charge-Pump Phase-Locked-Loop Analogy", IEEE TRANSACTION ON CIRCUITS AND SYSTEMS II: EXPRESS BRIEFS, VOL. 54, NO.3, MARCH, 2007, pp. 247-251
以下に関連技術の分析を与える。
上記したように、受信装置のクロック抽出回路において、受信データから安定したクロック信号を抽出するには、外的要因の少ない安定した環境下でデータを受信し、アナログPLL回路を用いる必要がある。このため、回路面積や部品点数が多くなる。
また、デジタル方式のクロック抽出回路において、ジッタの大きな受信データから安定したクロック抽出を行うことは困難である。
したがって、本発明の目的は、受信データからクロックを抽出する回路であって、デジタルロジック回路で安定したクロック抽出を可能とするクロック抽出回路と該クロック抽出回路を備えた受信装置を提供することにある。
本願で開示される発明は概略以下の構成とされる。
本発明によれば、第1のクロック信号でサンプリングされ同期化された受信データから第2のクロック信号を抽出するクロック抽出回路であって、
前記第1のクロック信号で駆動され、カウンタ値を巡回的に変化させるカウンタと、
前記第1のクロック信号と、前記受信データと、前記カウンタのカウンタ値を受け、前記第2のクロック信号を出力するデジタルロジックで構成された制御回路と、
を備え、
前記制御回路は、
前記第1のクロック信号の各サイクルについて、
前記カウンタ値と、
前記受信データの変化の有無と
の監視結果から、
前記サイクルの次のサイクルで、
前記カウンタ値を1つ進める、
前記カウンタ値を1よりも多く進める、
前記カウンタ値をそのまま保持する、
のいずれとするかを決定し、前記受信データの変化の進み・遅れ具合に応じて、次の受信データの変化が、前記カウンタ値の予め定められた所定範囲に対応するデータ変化許容範囲内の中心側に位置するように制御し、
さらに、前記サイクルでのカウンタ値が予め定められた所定の値であるとき、次のサイクルでの前記第2のクロック信号の反転の有無を決定するクロック抽出回路が提供される。
前記第1のクロック信号で駆動され、カウンタ値を巡回的に変化させるカウンタと、
前記第1のクロック信号と、前記受信データと、前記カウンタのカウンタ値を受け、前記第2のクロック信号を出力するデジタルロジックで構成された制御回路と、
を備え、
前記制御回路は、
前記第1のクロック信号の各サイクルについて、
前記カウンタ値と、
前記受信データの変化の有無と
の監視結果から、
前記サイクルの次のサイクルで、
前記カウンタ値を1つ進める、
前記カウンタ値を1よりも多く進める、
前記カウンタ値をそのまま保持する、
のいずれとするかを決定し、前記受信データの変化の進み・遅れ具合に応じて、次の受信データの変化が、前記カウンタ値の予め定められた所定範囲に対応するデータ変化許容範囲内の中心側に位置するように制御し、
さらに、前記サイクルでのカウンタ値が予め定められた所定の値であるとき、次のサイクルでの前記第2のクロック信号の反転の有無を決定するクロック抽出回路が提供される。
本発明によれば、デジタルロジック回路で安定したクロック抽出することができる。
本発明に係るクロック抽出回路は、例えば、電波無線通信や赤外線通信、可視光通信などの無線通信システムにおいて、受信したデータからクロックを抽出して受信処理を行う受信回路に配設される。本発明の一形態においては、第1のクロック信号(抽出用内部クロック信号)でサンプリングされ同期化された受信データから第2のクロック信号(抽出クロック信号)を抽出するクロック抽出回路は、第1のクロック信号(抽出用内部クロック信号)で駆動されるカウンタ(CNT)と、前記第1のクロック信号と、前記受信データと、前記カウンタのカウンタ値を受け、前記第2のクロック信号を出力するデジタルロジックで構成された制御回路とを備えている。カウンタ(CNT)は、第1のクロック信号(抽出用内部クロック信号)をカウンタクロックとして、下限値と上限値の間で巡回的にカウント動作する。例えば下限値からカウントアップし、上限値に達した場合、次のカウンタクロックで下限値に戻り、再び、カウントアップ動作する。あるいは上限値からカウントダウンし、下限値に達した場合、次のカウンタクロックで上限値に戻り、再び、カウントダウン動作する制御回路(CTRL)は、第1のクロック信号(抽出用内部クロック信号)と、同期化された受信データと、前記カウンタのカウンタ値とを入力し、第1のクロック信号(抽出用内部クロック信号)の各サイクルでのカウンタ値と、受信データの変化の有無との監視結果から、前記受信データの変化の進み・遅れ具合に応じて、次のサイクルでの前記カウンタ値の進め方として、
・次のサイクルでは、現在のサイクルのカウンタ値を、通常通り1つ進めるか、
・次のサイクルでは、現在のサイクルのカウンタ値をそのまま保持するか、あるいは、
・次のサイクルでが、現在のサイクルのカウンタ値を1つよりも余計に進めるか、
を決定し、次の受信データの変化が、前記カウンタ値の所定範囲に対応するデータ変化許容範囲の中心側に位置するように制御する(受信データの変化がデータ変化許容範囲の中心に位置するように、データ変化許容範囲の受信データの変化に対する位置を相対的に移動させる)。
・次のサイクルでは、現在のサイクルのカウンタ値を、通常通り1つ進めるか、
・次のサイクルでは、現在のサイクルのカウンタ値をそのまま保持するか、あるいは、
・次のサイクルでが、現在のサイクルのカウンタ値を1つよりも余計に進めるか、
を決定し、次の受信データの変化が、前記カウンタ値の所定範囲に対応するデータ変化許容範囲の中心側に位置するように制御する(受信データの変化がデータ変化許容範囲の中心に位置するように、データ変化許容範囲の受信データの変化に対する位置を相対的に移動させる)。
すなわち、本発明の一実施形態において、制御回路は、第1のクロック信号(抽出用内部クロック信号)の各サイクルでのカウンタ値と、受信データの変化の有無と、の監視結果に基づき、受信データの変化がデータ変化許容範囲から外れそうな場合には、受信データの変化が、該データ変化許容範囲の中心側に位置するように、次のサイクルのカウンタ値を制御する。さらに、制御回路は、カウンタ値が予め定められた所定値のサイクルにおいて、次のサイクルでの前記第2のクロック信号の反転の有無を決定する。
本発明の一態様において、前記制御回路は、前記カウンタ値が予め定められた所定の値をとるサイクルで、前記受信データの変化があり、且つ、前記サイクルから、過去、予め定められた所定サイクル以内で受信データの変化が検出されている場合には、同期エラーと判断し、同期エラー信号を出力するとともに、前記カウンタ値を零にリセットする制御を行う構成としてもよい。
本発明の一態様において、前記制御回路は、前記カウンタ値が予め定められた第1の所定値となるサイクル(現在のサイクル)で、前記受信データの変化があり、且つ、前記サイクルから、過去予め定められた所定サイクル以内に受信データの変化が検出されず、現在のサイクルから過去m回(mは予め定められた正整数)の受信データの変化が、全て、前記カウンタ値が前記第1の所定値のときに生じている場合、次のサイクルで、現在のサイクルのカウンタ値をそのまま保持させる(次の受信データの変化はデータ変化許容範囲の中心側に1サイクル移動)。一方、過去m回の受信データの変化が、前記カウンタ値が前記第1の所定値以外の値でも生じている場合、次のサイクルで前記カウンタ値を1つ進める(次のサイクルの受信データとデータ変化許容範囲の相対位置を移動させない)制御を行う。
本発明の一態様において、前記制御回路は、前記カウンタ値が予め定められた第2の所定値となるサイクルで、前記受信データの変化があり、且つ、過去m回の受信データの変化が、全て前記カウンタ値が前記第2の所定値のときに生じている場合、次のサイクルで、前記カウンタ値を2つ進めさせ(次の受信データの変化はデータ変化許容範囲に中心側に1サイクルに移動)、過去m回の受信データの変化が、前記カウンタ値が前記第2の所定値以外の値でも生じている場合、次のサイクルで前記カウンタ値を1つ進める(次のサイクルの受信データの変化とデータ許容範囲の相対位置を移動させない)制御を行う。
本発明の一態様において、前記制御回路は、前記カウンタ値が予め定められた所定値となるサイクルで、前記受信データの変化がない場合、次のサイクルで前記第2のクロック信号を、第1の論理値から第2の論理値に反転させ、前記カウンタ値が前記所定の値とは異なる予め定められた別の所定の値となるサイクルで、前記第2のクロック信号を前記第2の論理値から前記第1の論理値に反転させる構成としてもよい。以下、具体的な実施形態に即して説明する。
図1は、本発明の一実施形態の構成を示す図である。図1において、送信装置20は、無線送信回路21からデータを無線で送信出力する。受信装置10の無線受信回路11は例えばアンテナで受信した無線信号(RF信号)を所定周波数帯にダウンコンバートし、アナログデジタル変換したデジタル信号を出力する。あるいは、赤外線通信、可視光通信の場合、無線受信回路11は、赤外線又は可視光を検出し電気信号に変換する光電気変換器の出力をアナログデジタル変換したデジタル信号を出力する。
データ同期化回路として機能する2段のフリップフロップ12、13は、無線受信回路11から非同期で入力される受信データを、抽出クロック信号の周波数よりも高い周波数の内部クロック信号である抽出用内部クロック信号CLKで同期化する。
クロック抽出回路14は、2段のフリップフロップ12、13で同期化された受信データからクロック信号を抽出する。クロック抽出回路14は、受信データを、抽出用内部クロック信号CLKでサンプリングし、受信データの変化点と、受信データの変化の周期から、次の受信データの変化点を予測し、受信データのジッタを考慮した抽出クロック信号を生成する。
フリップフロップ15は、フリップフロップ13の出力端子Qからの同期化された受信データをデータ端子Dに入力し、クロック抽出回路14からの抽出クロック信号の立ち上がりエッジでサンプリングし出力端子Qから出力する。なお、本発明において、フリップフロップ15は、クロック抽出回路14からの抽出クロック信号の立ち上がりエッジでサンプルする構成に限定されるものでないことは勿論である。クロック抽出回路14からの抽出クロック信号は、受信装置10内の受信データに同期したクロックの供給を必要とする回路(不図示)に供給される。
本実施形態において、クロック抽出回路14は、全デジタル回路で構成され、電波無線通信や赤外線通信、可視光通信のような、ジッタの大きい受信データから安定したクロックの抽出を可能としている。
本発明によれば、受信側でクロック抽出を行なう際に、受信データのジッタが大きい場合に対応すべく、デジタル回路のみで安定したクロック抽出を可能とする全く新規のアルゴリズムを創案し、このアルゴリズムをハードウエア記述言語で記述し、クロック抽出回路14をハードウエアロジック(デジタルロジック)で実装した。ハードウエア回路の構成は、ハードウエア記述言語による記述の仕方、合成ツール等でバリエーションはあるが、図1に示すように、クロック抽出回路14は、抽出用内部クロック信号CLKで駆動されるカウンタ(CNT)と、同期化された受信データと、抽出用内部クロック信号CLKと、カウンタ(CNT)のカウンタ値とを入力し、次のサイクルのカウント動作を制御する制御信号を出力してカウンタ(CNT)を制御し、抽出クロック信号を出力し、正常なクロック信号が抽出できない場合等、同期エラー検出時に、同期化エラー信号を出力する制御を行うデジタルロジック回路(説明のため、制御回路(CTRL)という)を備えている。
クロック抽出回路14は、受信装置10の不図示のクロック生成回路で生成された抽出用内部クロック信号CLKを用いて、受信データをサンプリングし、受信データの変化点(HighからLow、LowからHighへの変化)と、その変化の周期から、クロック信号を抽出する。クロック抽出回路14は、抽出クロック信号を駆動出力する不図示の出力バッファ(CMOS(Complementary MOS(Metal Oxide Semicondutor))ドライバ)を備えている。
本実施形態において、クロック抽出回路14は、受信データのジッタの大きい時でも、正しくクロック信号を抽出できるように、過去の受信データの変化の監視結果から、次に受信データが変化するタイミング(サイクル)を予測し、クロック信号の抽出を行う。例えば、1回前の受信データの変化の周期が期待値よりも短ければ、次の受信データの周期は期待値通りか、あるいは期待値よりも長くなることを予測し、カウンタ値の進め方を制御し、受信データの変化が、カウンタの所定のカウンタ値の範囲に対応するデータ変化許容範囲の中心側に位置するように制御し(データ変化許容範囲の受信データの変化に対する相対的な位置を移動させる)、抽出クロック信号の抽出を行う。抽出クロック信号を活性化(例えばHighレベル)とするタイミングは、データ変化許容範囲の一端に対して相対的に予め定められた相対位置のカウンタ値とされ、抽出クロックの立ち上がりエッジが同期化された受信データの中心に位置するように制御される。このため、本実施形態によれば、受信ジッタの大きい無線通信においても、デジタル回路で安定したクロック抽出が可能としている。
カウンタ(CNT)、制御回路(CTRL)は、フリップフロップ等の順序回路、組み合わせ回路からなるデジタルロジック回路で構成され、同期化された受信データの変化と、カウンタ値によって抽出クロック信号を生成する。
カウンタ(CNT)は、抽出用内部クロック信号(CLK)で駆動され、現在のカウンタ値と、受信データの変化によって、制御回路(CTRL)の制御のもと、次のカウンタ値が決定される。なお、特に制限されないが、カウンタ(CNT)は、カウンタ値として0からn−1までの値をとり、n−1の次のクロックサイクルで0に戻るアップカウンタとする。
図7は、図1のクロック抽出回路14の詳細な動作を一覧で示す図である。図7には、クロック抽出回路14の動作仕様(機能及びタイミング動作仕様)の一例が規定されており、実際のハードウエア回路は、この動作仕様をハードウエア記述言語で記述し、論理合成することで構成されている。抽出用内部クロック信号CLKは、抽出クロック信号をn逓倍相等のクロック信号(周波数がn倍)とする。特に制限されないが、抽出用内部クロック信号CLKのデューティは50%とし、抽出クロック信号も、安定時(ロック時)等では、デューティは50%とする。
図7において、カウンタ値欄は、抽出用内部クロック信号CLKのあるサイクルにおけるクロック抽出回路14内部のカウンタ値を示している。カウンタ値は0〜n−1をとる。特に制限されないが、以下では、カウンタ値が、n−1の時に、受信データが安定的に変化しているものとする。なお、図7において、受信データは、図1のフリップフロップ13の出力(同期化された受信データ)である。同期化された受信データが予め定められた所定時間以上変化しなかった場合、同期エラーとする。
受信データの変化欄は、カウンタ値が同一エントリのカウンタ値欄の値のときに(当該クロックサイクルで)、クロック抽出回路14に入力される受信データ(同期化された受信データ)が変化したか否かを示す。
動作欄は、カウンタ値が同一エントリのカウンタ値欄の値のときに、制御回路が出力する信号(制御信号、抽出クロック信号、同期エラー信号)、カウンタ(CNT)の値の変化を示している。なお、図6の動作欄の動作は、カウンタ(CNT)を駆動する抽出用内部クロック(CLK)の1クロックサイクル内で決定され、カウンタインクリメント、+2、カウンタ値保持、カウンタリセット、抽出クロック信号=1/0は、当該サイクルの次のサイクルの抽出用内部クロック(CLK)の立ち上がりエッジに同期して実行される。また、受信データは一定時間で必ず変化するため、予め定められた規定時間以上、受信データが変化しなかった場合にも、同期エラーとする。図7の仕様にしたがって、カウンタ値、受信データの有無に応じて抽出クロック信号を生成することで受信データからクロックの抽出が可能となる。
はじめに、図7のカウンタ値0について説明する。
(A1)カウンタ値=0の当該サイクル(抽出用内部クロック信号CLKの現在のサイクル)で受信データが変化しない場合、カウンタインクリメントが選択される。すなわち、次のサイクルの抽出用内部クロック信号CLKのクロックパルスの立ち上がりエッジで1つカウントアップし(カウンタインクリメント)、カウント値=1となる。
(A2)カウンタ値=0の当該サイクルで受信データが変化した場合、
(A3)過去2クロックサイクル(CLK)以内に受信データの変化未検出の場合、且つ、
(A4)過去m回の受信データ変化が全てカウンタ0の場合、
カウンタ値保持が選択される。すなわち、制御回路(CTRL)は、(A2)且つ(A3)0且つ(A4)の状態を検出すると、カウンタ(CNT)をカウントディスエーブル状態とし、これを受け、カウンタ(CNT)は、次のサイクルの抽出用内部クロック信号CLKのクロックパルス(立ち上がりエッジ)を受けても、カウントアップ動作せず、カウント値0を保持する。カウンタ(CNT)のカウントディスエーブル状態は次のサイクルでのカウンタインクリメント等の選択による解除される。
(A3)過去2クロックサイクル(CLK)以内に受信データの変化未検出の場合、且つ、
(A4)過去m回の受信データ変化が全てカウンタ0の場合、
カウンタ値保持が選択される。すなわち、制御回路(CTRL)は、(A2)且つ(A3)0且つ(A4)の状態を検出すると、カウンタ(CNT)をカウントディスエーブル状態とし、これを受け、カウンタ(CNT)は、次のサイクルの抽出用内部クロック信号CLKのクロックパルス(立ち上がりエッジ)を受けても、カウントアップ動作せず、カウント値0を保持する。カウンタ(CNT)のカウントディスエーブル状態は次のサイクルでのカウンタインクリメント等の選択による解除される。
(A2)カウンタ値=0の当該サイクルで受信データが変化した場合、且つ、
(A3)過去2クロックサイクル(CLK)以内に受信データの変化未検出の場合、且つ、
(A5)過去m回の受信データ変化が全てカウンタ0以外にもある場合、カウンタ(CNT)は、カウンタインクリメントが選択される。この場合、次のサイクルの抽出用内部クロック信号CLKのクロックパルス(立ち上がりエッジ)で、1つカウントアップし(カウンタインクリメント)、カウンタ値=1となる。
(A3)過去2クロックサイクル(CLK)以内に受信データの変化未検出の場合、且つ、
(A5)過去m回の受信データ変化が全てカウンタ0以外にもある場合、カウンタ(CNT)は、カウンタインクリメントが選択される。この場合、次のサイクルの抽出用内部クロック信号CLKのクロックパルス(立ち上がりエッジ)で、1つカウントアップし(カウンタインクリメント)、カウンタ値=1となる。
(A2)カウンタ値=0の当該サイクルで、受信データが変化した場合、
(A6)過去2クロックサイクル(CLK)以内に、受信データの変化が検出された場合、同期エラー発生と判定し、カウンタリセットが選択される。クロック抽出回路14は同期エラー信号を活性化し、次のサイクルでカウンタ値は0とされる。なお、同期エラー検出時のカウンタリセットは、次のサイクルでなく現在のサイクルで非同期で行う強制リセットとしてもよい。
(A6)過去2クロックサイクル(CLK)以内に、受信データの変化が検出された場合、同期エラー発生と判定し、カウンタリセットが選択される。クロック抽出回路14は同期エラー信号を活性化し、次のサイクルでカウンタ値は0とされる。なお、同期エラー検出時のカウンタリセットは、次のサイクルでなく現在のサイクルで非同期で行う強制リセットとしてもよい。
カウンタ値が0となるとは、
a)数CLK前に受信データの変化があり、カウンタ値=0となった場合と、
b)数CLK前に受信データの変化がなく、カウンタ値=0となった場合
がある。
a)数CLK前に受信データの変化があり、カウンタ値=0となった場合と、
b)数CLK前に受信データの変化がなく、カウンタ値=0となった場合
がある。
a)の状態でカウンタ値=0となったときに、カウンタ値=0で受信データに再度変化があれば、同期エラーとなる。
b)の状態で、カウンタ値=0のときに、カウンタ値=0で受信データに再度変化があっても同期エラーとはならない。
カウンタ(CNT)のカウンタ値が0となるのは、例えば制御回路(CTRL)からのカウンタリセット、又は、直前のサイクルのカウンタ値がn−1でカウンタインクリメント動作、直前のサイクルのカウンタ値がn−2でカウンタ+2とする場合等である。
例えばn=8の時、カウンタ(CNT)のカウント値が0になるのは、図7より、
1)カウンタ値が0〜4の時に、受信データに変化があった場合、カウンタリセット動作により、カウンタ値=0、
2)カウンタ値が5の時に受信データに変化があり、カウンタ値を+2して7とし、次のクロックサイクルで受信データに変化がなかった場合、カウンタリセット動作によりカウンタ値=0、
3)カウンタ値が6の時に、受信データに変化があった場合、カウンタ+2として、カウンタ値=0、
4)カウンタ値が6の時に、受信データに変化がなく、カウンタインクリメントによりカウンタ値を7とし、次のクロックサイクルで、受信データに変化がなかった場合、カウンタリセット動作により、カウンタ値=0、
5)カウンタ値が7の時、カウンタリセット動作により、カウンタ値=0、
となる場合である。
1)カウンタ値が0〜4の時に、受信データに変化があった場合、カウンタリセット動作により、カウンタ値=0、
2)カウンタ値が5の時に受信データに変化があり、カウンタ値を+2して7とし、次のクロックサイクルで受信データに変化がなかった場合、カウンタリセット動作によりカウンタ値=0、
3)カウンタ値が6の時に、受信データに変化があった場合、カウンタ+2として、カウンタ値=0、
4)カウンタ値が6の時に、受信データに変化がなく、カウンタインクリメントによりカウンタ値を7とし、次のクロックサイクルで、受信データに変化がなかった場合、カウンタリセット動作により、カウンタ値=0、
5)カウンタ値が7の時、カウンタリセット動作により、カウンタ値=0、
となる場合である。
1)、3)、5)が発生して、カウンタ値が0になった場合、過去1クロックサイクル(抽出用内部クロック信号CLK)で受信データの変化があったか否かで、抽出用内部クロック信号CLKの当該サイクルで受信データに変化があり、カウンタ値が0になったことの判断が可能であるのに対して、2)や4)では、判断できない。このため、抽出用内部クロック信号CLKの当該サイクルで受信データに変化があり、カウンタ値が0になったことを検出するために、過去2クロックサイクル(CLK)以内に受信データが変化したか否かに基づいて判断を行う。
カウンタ値=0の当該サイクルで受信データに変化があり、当該サイクルの過去2クロックサイクル以内に受信データの変化が検出された場合、同期エラーとなる(A6)。
本実施形態においては、クロック抽出回路14の制御回路(CTRL)内には、過去2クロックサイクル(CLK)以内に受信データの変化が未検出であるか否かを示すフラグビット(不図示)を備え、このフラグビットは、受信データの変化があるとオンにセットされ、抽出用内部クロック信号CLKの2クロックサイクルの間、受信データの変化状態が変化無の場合、オフにリセットされる構成とされる。
n=8の場合、例えばカウンタ値が7の時に受信データが安定的に変化しているものとする。過去m回(m≧1)の受信データの変化が、全てカウンタ値=0のサイクルで生じるとは、受信データの位相が遅れ気味(1クロックサイクル遅れる)であることに対応する。そこで、受信装置側において受信データの位相の遅れに追従するために、クロック抽出回路14では、カウンタ値を0に保持する。このように、カウンタ値をずらすことで、データ変化許容範囲の真ん中で受信データが変化するようにしている。すなわち、受信データの変化が現在のサイクルも含めて連続してm回カウンタ値=0で生じた場合、図8(A)に示すように、次のサイクルでカウンタ値=0を保持し、カウンタ値=0を2サイクル分連続させることで、次の受信データdataN+1の変化が、カウンタ値=7で変化し、データ変化許容範囲(特に制限されないが、カウンタ値=5〜0)の中心側に位置するようにしている。
図8(A)では、n=8とされ、図7の仕様に規定されるように、受信データdataN−1についてカウンタ値=6のサイクルで、抽出クロック信号=0が選択され、次のサイクルでカウンタ値=7、抽出クロック信号=0(Low)となり、次のサイクルのカウンタ値=0で受信データdataNとなり、次のサイクルでカウンタ値=0が保持され、カウンタ値=2のサイクルで、抽出クロック信号=1が選択され、カウンタ値=3となる次のサイクル(CLK)で抽出クロック信号=1(High)となる。受信データdataN+1はカウンタ値=7で変化している。抽出クロック信号はLowが5サイクル(カウンタ値=7、0、0、1、2)、Highが4サイクル(カウンタ値=3、4、5、6)となる。
安定時、カウンタ値=7で変化する受信データが、無線伝送路によるジッタ等により、カウンタ値=6又は0に変化するが、送信側と受信側の周波数誤差等により、受信データの変化がカウンタ値=0で生じるようになったとする。過去m回(m≧1)連続して受信データ変化がカウンタ値=0で変化しているかをチェックすることで、一時的なジッタ等により、カウンタ値=0で受信データが変化したのか、あるいは、送信側と受信側の周波数誤差等によりカウンタ値=0で受信データが変化するようになったのかを判別している。mは、送信側と受信側のクロック周波数許容誤差によって決められる。本実施形態において、m(≧1)の値は、特に制限されないが、例えばm=16とされる。
なお、過去m回(m≧1)の受信データ変化が全てカウンタ値=0であるか、カウンタ値=0以外でも受信データの変化があるかの判定は、特に制限されないが、制御回路(CTRL)において、連続カウンタ(不図示)で構成される。この連続カウンタは、受信データがカウンタ値=0で変化した場合、カウントアップし、それ以外で変化した場合、連続カウンタは0にリセットされる構成とされる。連続カウンタの値がm以上であれば、過去m回(m≧1)の受信データ変化が全てカウンタ0であることに対応し、連続カウンタの値が0からm−1であれば、過去m回(m≧1)の受信データ変化がカウンタ0以外にもあることを示している。
次に、図7のカウンタ値1について説明する。
(B1)カウンタ値が1の当該サイクル(抽出用内部クロック信号CLK)で受信データが変化しない場合、カウンタインクリメントが選択される。カウンタ(CNT)は次のサイクルの抽出用内部クロック信号CLKの立ち上がりエッジで1つカウントアップする(カウンタインクリメント)。
(B2)カウンタ値1の当該サイクルで受信データが変化した場合、
(B3)過去3クロックサイクル(CLK)以内に受信データの変化未検出の場合、
カウンタ値を保持する。すなわち、制御回路(CTRL)は、(B2)且つ(B3)の状態を検出すると、カウンタ(CNT)をカウントディスエーブル状態とし、カウンタ(CNT)は次の抽出用内部クロック信号CLKのクロックパルス(立ち上がりエッジ)でもカウントアップ動作しない。
(B3)過去3クロックサイクル(CLK)以内に受信データの変化未検出の場合、
カウンタ値を保持する。すなわち、制御回路(CTRL)は、(B2)且つ(B3)の状態を検出すると、カウンタ(CNT)をカウントディスエーブル状態とし、カウンタ(CNT)は次の抽出用内部クロック信号CLKのクロックパルス(立ち上がりエッジ)でもカウントアップ動作しない。
(B2)カウンタ値1の状態で受信データが変化した場合、
(B4)過去3クロックサイクル(CLK)以内に受信データの変化を検出した場合、同期エラーと判断する。
(B4)過去3クロックサイクル(CLK)以内に受信データの変化を検出した場合、同期エラーと判断する。
抽出用内部クロック信号CLKの当該サイクルで受信データに変化があり、カウンタ値が1になったことが同期エラーでないか否かの判断は、過去3クロックサイクル(CLK)以内に受信データの変化未検出であるかによる。これは、カウンタ値=0で受信データの変化が有りの場合に、過去2クロックサイクル(CLK)以内に受信データの変化未検出であるかを判断したことと同じ理由である。すなわち、カウンタ値が1となるとは、
a)数クロックサイクル(CLK)前に受信データの変化があり、カウンタ値=1となった場合と、
b)数クロックサイクル(CLK)前に受信データの変化がなく、カウンタ値=1となった場合とがある。
a)数クロックサイクル(CLK)前に受信データの変化があり、カウンタ値=1となった場合と、
b)数クロックサイクル(CLK)前に受信データの変化がなく、カウンタ値=1となった場合とがある。
a)の状態で、カウンタ値=1のときに、受信データに再度変化があれば、同期エラーとなる。
b)の状態で、カウンタ値=1のときに、受信データに再度変化があっても同期エラーとはならない。カウンタ値=1は、カウンタ値=0の場合よりも、抽出用内部クロック信号CLKで1クロック分遅れることに対応し、3クロックサイクルとなっている。
次に、図7のカウンタ値=2について説明する。
カウンタ値=2の当該サイクルで、
(C1)受信データの変化があった場合、同期エラーと判断し、カウンタをリセットする。次のサイクルでカウンタ値=0となる。
(C1)受信データの変化があった場合、同期エラーと判断し、カウンタをリセットする。次のサイクルでカウンタ値=0となる。
(C2)受信データの変化がなかった場合、カウンタをインクリメントする。さらに、抽出クロック信号=1とし、次のサイクルの抽出用内部クロック信号CLKのクロックパルス(立ち上がりエッジ)でカウンタ値=3、抽出クロック信号=1(High)となる。なお、データ変化許容範囲の後端は、抽出クロック信号=1(High)となるサイクルよりも前に位置するように設定される。
次に、図7のカウンタ値=3〜n−4について説明する。
カウンタ値=3〜n−4の当該サイクルで、
(D1)受信データの変化があった場合、同期エラーと判断し、抽出クロックを0(Low)とし、カウンタをリセットする。次のサイクルでカウンタ値=0となる。
(D1)受信データの変化があった場合、同期エラーと判断し、抽出クロックを0(Low)とし、カウンタをリセットする。次のサイクルでカウンタ値=0となる。
(D2)受信データの変化がなかった場合、カウンタをインクリメントする。次のサイクルでカウンタ値=4〜n−3となる。
次に、図7のカウンタ値=n−3について説明する。
カウンタ値=n−3の当該サイクルで、
(E1)受信データの変化があった場合、カウンタ+2、抽出クロック信号=0とする。次のサイクルの抽出用内部クロック信号の立ち上がりエッジでカウンタ値はn−1、抽出クロック信号は0(Low)となる。
(E1)受信データの変化があった場合、カウンタ+2、抽出クロック信号=0とする。次のサイクルの抽出用内部クロック信号の立ち上がりエッジでカウンタ値はn−1、抽出クロック信号は0(Low)となる。
(E2)受信データの変化がなかった場合、カウンタをインクリメントする。次のサイクルの抽出用内部クロック信号の立ち上がりエッジでカウンタ値はn−2となる。
例えばn=8の例において、通常、カウンタ値=7で受信データの変化がある場合において、カウンタ値=5で受信データの変化があった場合、カウンタ値を+2させ、次のサイクルの抽出用内部クロック信号の立ち上がりエッジでカウンタ値は7となり、カウンタ値を通常の1つよりも余計に進めて、次に続く受信データの変化が、データ変化許容範囲の中心に位置するように制御する。図8(B)に示すように、受信データdataNは、カウンタ値=5で立ち上がり変化しており、カウンタ値=5の次のサイクルで7となる。次の周期の受信データdataN+1はカウンタ値=6で変化している。このように、受信データの変化の進み具合に応じて、カウンタ値を通常よりも余計に進めることで、次の周期の受信データdataN+1の変化がデータ変化許容範囲の中心側に位置するように制御している(データ変化許容範囲を受信データの変化に対して時間的により前にくるように移動させる)。これにより、図1のフリップフロップ15は、抽出クロック信号によって、受信データ(フリップフロップ13の出力データ)のデータ期間(data period)の中心付近の値をサンプルすることができる。
次に図7のカウンタ値=n−2について説明する。
カウンタ値=n−2のサイクルで、
(F1)受信データの変化があった場合、
(F2)過去m回の受信データ変化が全てカウンタn−2の場合、カウンタ+2、抽出クロック信号=0とする。次のサイクルの抽出用内部クロック信号の立ち上がりエッジでカウンタ値は6+2(mod 8)=0となり、抽出クロック信号=0(Low)となる。
(F1)受信データの変化があった場合、
(F2)過去m回の受信データ変化が全てカウンタn−2の場合、カウンタ+2、抽出クロック信号=0とする。次のサイクルの抽出用内部クロック信号の立ち上がりエッジでカウンタ値は6+2(mod 8)=0となり、抽出クロック信号=0(Low)となる。
(F3)過去m回の受信データ変化がカウンタn−2以外にもある場合、カウンタ値n−2での受信データの変化は一時的なものと判断し、カウンタインクリメントとする。また抽出クロック信号=0とする。次のサイクルの抽出用内部クロック信号の立ち上がりエッジでカウンタ値はn−1となり、抽出クロック信号=0(Low)となる。
例えばn=8の例において、通常、カウンタ値=7で受信データの変化がある場合において、カウンタ値=6で受信データの変化があった場合、カウンタ値を+2させ、カウンタ値=6の次にCLKでカウンタ値=0となり、カウンタ(CNT)を通常より余計に進めて、次に続く受信データの変化が、データ変化許容範囲の真ん中に近づくように、データ変化許容範囲を移動させる。図8(C)に示すように、受信データdataNは、カウンタ値=6で変化しており、カウンタ値=6の次のクロックサイクルでカウンタ値=0となる。このため、次周期の受信データdataN+1は、カウンタ値=7(データ変化許容範囲に中心)で変化している。このように、カウンタ値=n−2のとき、受信データの変化の進み具合に応じて、カウンタ値を通常よりも余計に進めることで、次の周期の受信データdataN+1の変化がデータ変化許容範囲の中心に位置するように制御している。
過去m回の受信データ変化が全てカウンタ値n−2であるか否かは、受信データの変化のタイミングのずれが、ジッタ等による一時的な変化か送信側と受信側の周波数誤差によるものかを判定するものである。
次に図7のカウンタ値=n−1について説明する。
カウンタ値=n−1のクロックサイクル(CLK)で、
(G1)受信データの変化があった場合、カウンタをリセットする。
(G1)受信データの変化があった場合、カウンタをリセットする。
カウンタ値=n−1で、
(G1)受信データの変化があった場合、且つ
(G3)過去1クロックサイクル以内に受信データ変化が検出された場合、同期エラー発生とする。
(G1)受信データの変化があった場合、且つ
(G3)過去1クロックサイクル以内に受信データ変化が検出された場合、同期エラー発生とする。
カウンタ値=n−1で、
(G4)受信データの変化がない場合、カウンタをリセットする。
(G4)受信データの変化がない場合、カウンタをリセットする。
図2から図6は、図7の示した動作仕様にタイミング動作例を示すタイムチャートである。抽出用内部クロックは抽出クロック信号の8速度(n=8)とする。
図2は、カウンタ値=7の時に受信データが安定的に変化している場合のタイムチャートである。カウンタ値=6で受信データに変化が無く、カウンタインクリメント、抽出クロック信号=0が選択され、次のサイクルの抽出用内部クロック信号の立ち上がりエッジでカウンタ値=7となり、受信データが変化しているため、カウンタをリセットし、また、抽出クロック信号が1(High)から0(Low)となる。カウンタ値=2で受信データに変化が無く、カウンタインクリメント、抽出クロック信号=1が選択され、次のサイクルの抽出用内部クロック信号の立ち上がりエッジでカウンタ値=3となり、抽出クロック信号が0(Low)から1(High)となる。送信側のクロックと受信側のクロックの周波数誤差がほとんどない場合や、無線受信部での受信ジッタがほとんどない場合でも、同期化による誤差により、図2の状態から、1クロック早くなったり遅くなったりする可能性がある。
図3は、受信データdataNの変化が、図2よりも、1クロック早くなった場合のタイムチャートである。カウンタ値=6で受信データdataNが変化し、カウンタインクリメント、抽出クロック信号=0が選択され、次のサイクルの抽出用内部クロック信号CLKの立ち上がりエッジでカウンタ値=7、抽出クロック信号が1(High)から0(Low)となる。カウンタ値=2で受信データに変化が無く、カウンタインクリメント、抽出クロック信号=1が選択され、次のサイクルの抽出用内部クロック信号CLKの立ち上がりエッジで、カウンタ値=3、抽出クロック信号が0(Low)から1(High)となる。
カウンタ(CNT)は、通常のインクリメント動作を行い、dataNからdataN+1への変化は、dataNの変化が1クロックサイクル早くなる前のタイミングの間許容される。カウンタ値=5、6、7、0までの範囲がデータ変化許容範囲となる。ただし、カウンタ値=6で受信データの変化がm回連続して1クロック早くなった場合、この状態で安定したものと判断し、カウンタ(CNT)を+2して、次の受信データの変化の許容範囲を変更する。受信データの変化のタイミングが前回の周期より1クロックサイクル早くなった場合では、次の受信データの変化が2クロックサイクル遅くなることはあるが、2クロックサイクル早くなることはない。すなわち、受信データdataN−1がカウンタ値=6で変化しており、次のdataNは、カウンタ値=0で変化することはあるが、カウンタ値=4で変化することはない。
図4は、dataNの変化が、図2より2クロック早くなった場合のタイムチャートである。カウンタ値=5で受信データが変化し、カウンタ+2、抽出クロック信号=0が選択され、次のサイクルの抽出用内部クロック信号CLKの立ち上がりエッジで、カウンタ値=7となり、抽出クロック信号が1(High)から0(Low)となる。カウンタ値=7で受信データに変化がなく、カウンタリセットが選択され、次の抽出用内部クロック信号CLKの立ち上がりエッジでカウンタ値=0となる。カウンタ値=2で受信データに変化が無く、カウンタインクリメント、抽出クロック信号=1が選択され、次のサイクルの抽出用内部クロック信号CLKの立ち上がりエッジで、カウンタ値=3、抽出クロック信号が0(Low)から1(High)となる。
受信データの変化が前回の周期より2クロックサイクル早くなった場合でも、次の受信データの変化が2クロックサイクル遅くなることはあるが、2クロックサイクル早くなることはない。受信データdataN−1がカウンタ値=5で変化しており(通常8サイクルがdataN−1は6サイクルで変化)、次のdataNの変化のタイミングは、カウンタ値=7で変化することはあるが、カウンタ値=3で変化することはない。よって、内部カウンタ(CNT)を+2して(カウンタ値=5→7)、次の受信データ変化の許容範囲を、図4のように変更する。
図5は、dataNの変化が、図2より1クロック遅くなった場合のタイムチャートである。カウンタ値=6で受信データの変化が無く、カウンタインクリメント、抽出クロック信号=0が選択され、次のクロックサイクルで、カウンタ値=7、抽出クロック信号が1(High)から0(Low)となる。カウンタ値=7のとき、受信データに変化があり、カウンタリセットとなり、次のサイクルの抽出用内部クロック信号CLKの立ち上がりエッジで、カウンタ値=0となる。カウンタ値=2で受信データに変化が無く、カウンタインクリメント、抽出クロック信号=1が選択され、次のサイクルの抽出用内部クロック信号CLKの立ち上がりエッジでカウンタ値=3、抽出クロック信号が0(Low)から1(High)となる。受信データの変化が前回の周期よりも1クロック遅くなった場合では、次の受信データの変化が2クロックサイクル早くなることはあるが、2クロックサイクル遅くなることはない。dataN−1のサイクルが9となり、カウンタ=0で変化した場合、次の受信データの変化はカウンタ値=6で変化することはあるが、カウンタ値=1で変化することはない。
カウンタ(CNT)は、通常のインクリメントを行い、dataNからdataN+1への変化は、dataNの変化が1クロック遅くなる前のタイミングの間、許容される。ただし、受信データの変化がm回連続して1クロック遅くなった場合は、この状態で安定したものと判断し、カウンタ値を保持して、次の受信データの変化の許容範囲を変更する。
図6は、dataNの変化が図2より2クロック遅くなった場合のタイムチャートである。カウンタ値=5で受信データの変化が無く、カウンタインクリメントが選択され、次のサイクルの抽出用内部クロック信号CLKの立ち上がりエッジでカウンタ値=6で受信データの変化がなく、カウンタインクリメント、抽出クロック信号=0が選択され、次のサイクルの抽出用内部クロック信号CLKの立ち上がりエッジでカウンタ値=7、抽出クロック信号が1(High)から0(Low)となる。カウンタ値=7のとき、カウンタリセットとなり、次のサイクルの抽出用内部クロック信号CLKの立ち上がりエッジでカウンタ値=0となる。次のクロックサイクルのカウンタ値=1で受信データ(dataN)が変化し、カウンタ保持が選択され、次のサイクルの抽出用内部クロック信号CLKの立ち上がりエッジでカウンタ値=1とされる。このとき、受信データに変化が無く、カウンタインクリメントが選択され、次のクロックサイクルでカウンタ値=2で、カウンタインクリメント、抽出クロック信号=1が選択され、次のクロックサイクルでカウンタ値=3、抽出クロックは0(Low)から1(High)となる。受信データの変化が、前回の周期より2クロック遅くなった場合(受信データの変化の周期=6サイクル)でも、次の受信データの変化が2クロック早くなることはあるが、2クロック遅くなることはない。カウンタ値を保持して(カウンタ値=1→1)、次の受信データ変化の許容範囲を変更する。このような制御を適用することにより、送信側と受信側のクロック周波数誤差や入力ジッタを吸収し、正常にクロック抽出を行うことを可能としている。
同期化された受信データは、図1のフリップフロップにて、抽出クロック信号の立ち上がりエッジでサンプルされる。図3乃至図6に示すように、抽出クロック信号の立ち上がりエッジは、受信データ(dataN、dataN+1・・・)の期間の中央付近に位置しており、送信側と受信側のクロック周波数誤差やジッタの影響を抑制し、抽出データを正確に取得することができる。
本実施形態においては、以下に記載するような効果を奏する。
過去のデータ変化周期から次にデータが変化するタイミングを予測して抽出を行なっているので、無線通信のような入力ジッタの大きい通信でも、安定したクロック抽出ができる。
受信回路のクロック抽出部をデジタル回路で実現しているので、受信回路にアナログ回路を必要とせず、回路面積や部品点数を削減できることである。
なお、上記実施形態では、無線送/受信回路として、赤外線送/受信回路や可視光送/受信回路の他に、有線のシリアル通信送/受信回路等のようにクロックを併走しない通信受信装置のクロック抽出回路(例えば受信シリアルデータからクロック及びデータを復元するクロックデータリカバリ回路)にも適用することができる。
なお、上記の特許文献、非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
10、100 受信装置
11、101 無線受信回路
12、13、15、103 フリップフロップ
14 クロック抽出回路
20、200 送信装置
21、201 無線送信回路
102 アナログPLL回路
11、101 無線受信回路
12、13、15、103 フリップフロップ
14 クロック抽出回路
20、200 送信装置
21、201 無線送信回路
102 アナログPLL回路
Claims (10)
- 第1のクロック信号でサンプリングされ同期化された受信データから第2のクロック信号を抽出するクロック抽出回路であって、
前記第1のクロック信号で駆動され、カウンタ値を巡回的に変化させるカウンタと、
前記第1のクロック信号と、前記受信データと、前記カウンタのカウンタ値を受け、前記第2のクロック信号を出力するデジタルロジックで構成された制御回路と、
を備え、
前記制御回路は、
前記第1のクロック信号の各サイクルで、
前記カウンタ値と、
前記受信データの変化の有無と、
の監視結果から、
前記サイクルの次のサイクルで、
前記カウンタ値を1つ進める、
前記カウンタ値を1よりも多く進める、
前記カウンタ値をそのまま保持する、
のいずれとするかを決定し、前記受信データの変化の進み・遅れ具合に応じて、次の受信データの変化が、前記カウンタ値の予め定められた所定範囲に対応するデータ変化許容範囲内の中心側に位置するように制御し、
さらに、前記サイクルの前記カウンタ値が予め定められた所定の値であるとき、次のサイクルでの前記第2のクロック信号の反転の有無を決定する、ことを特徴とするクロック抽出回路。 - 前記制御回路は、
前記カウンタ値が予め定められた所定の値となるサイクルで、前記受信データの変化があり、且つ、
前記サイクルから、過去、予め定められた所定数のサイクル以内で受信データの変化が検出されている場合、
同期エラーと判定し、前記カウンタをリセットする制御を行う、ことを特徴とする請求項1記載のクロック抽出回路。 - 前記制御回路は、
前記カウンタ値が予め定められた第1の所定値となるサイクルで、前記受信データの変化があり、且つ、
前記サイクルから、過去、予め定められた所定数のサイクル以内に受信データの変化が検出されず、
過去m回(mは予め定められた正整数)の受信データの変化が全て前記カウンタ値が前記第1の所定値のときに生じている場合、
次のサイクルで、前記第1の所定値のカウンタ値をそのまま保持させ、
過去m回の受信データの変化が、前記カウンタ値が前記第1の所定値以外の値でも生じている場合、
次サイクルで、前記カウンタ値を1つ進め、
前記カウンタ値が予め定められた第2の所定値となるサイクルで、
前記受信データの変化があり、且つ、
過去m回の受信データの変化が全て前記カウンタ値が前記第2の所定値のときに生じている場合、
次のサイクルで前記カウンタ値を2つ進めさせ、
過去m回の受信データの変化が前記カウンタ値が前記第2の所定値以外の値でも生じている場合、
次のサイクルで、前記カウンタ値を1つ進める、制御を行う、ことを特徴とする請求項1又は2に記載のクロック抽出回路。 - 前記制御回路は、
前記カウンタ値が予め定められた所定値となるサイクルで、前記受信データの変化がない場合、次のサイクルで前記第2のクロック信号を第1の論理値から第2の論理値に反転させ、
前記カウンタ値が前記所定の値とは異なる、予め定められた別の所定の値となるサイクルにおいて、次のサイクルで前記第2のクロック信号を前記第2の論理値から前記第1の論理値に反転させる、ことを特徴とする請求項1乃至3のいずれか1項に記載のクロック抽出回路。 - 前記制御回路は、
次のサイクルで前記カウンタ値が零となるサイクルにおいて、カウンタリセットを選択する、ことを特徴とする請求項1乃至4のいずれか1項に記載のクロック抽出回路。 - 前記第1のクロック信号は、前記第2のクロック信号よりも周波数が高い、ことを特徴とする請求項1乃至5のいずれか1項に記載のクロック抽出回路。
- 前記カウンタ値が、第1の値から第nの値を巡回的にとり、前記第1の値から第nの値の1つが零であり、
前記受信データは、安定時、前記カウンタ値が第nの値で変化するものとし、
前記制御回路は、
前記カウンタ値が、前記第1の値となるサイクルにおいて、
前記受信データの変化がある場合、
前記カウンタ値が前記第1の値となる前記サイクルから、過去、予め定められた所定数のサイクル以内に、受信データの変化が検出された場合、
同期エラーと判定し、カウンタをリセットし、
前記カウンタ値が前記第1の値となる前記サイクルにおいて、
前記受信データの変化があるとき、前記カウンタ値が前記第1の値となる前記サイクルから、過去、予め定められた所定サイクル以内に、受信データの変化が未検出であり、且つ、
過去m回(mは予め定められた正整数)の受信データの変化が、全てカウンタ値が前記第1の値のときである場合、
次のサイクルで、前記サイクルのカウンタ値である第1の値を保持し、
前記カウンタ値が前記第1の値となる前記サイクルから、過去、予め定められた所定サイクル以内に受信データの変化が未検出であり、且つ、
過去m回の受信データの変化が、カウンタ値が前記第1の値のとき以外にもある場合、
次のサイクルで、前記カウンタ値を1つインクリメントし、
前記カウンタ値が、前記第1の値となるサイクルにおいて、
前記受信データの変化が無いとき、
次のサイクルでカウンタ値を1つインクリメントする制御を行い、
前記制御回路は、
前記カウンタ値が第2の値となるサイクルにおいて、
前記受信データの変化があるとき、
前記カウンタ値が第2の値となる前記サイクルから過去、予め定められた所定サイクル以内に受信データの変化が未検出である場合、
カウンタ値を保持し、
前記カウンタ値が第2の値となる前記サイクルから過去、予め定められた所定サイクル以内に受信データの変化が検出された場合、
同期エラーと判定し、次のサイクルでカウンタをリセットし、
前記カウンタ値が第2の値となる前記サイクルにおいて、
前記受信データの変化が無いとき、
次のサイクルでカウンタ値を1つインクリメントする制御を行い、
前記制御回路は、
前記カウンタ値が第3の値となるサイクルにおいて、
前記受信データの変化があるとき、
同期エラーと判定し、次のサイクルでカウンタをリセットし、
前記カウンタ値が前記第3の値となるサイクルにおいて、
前記受信データの変化が無いとき、
次のサイクルでカウンタ値を1つインクリメントし、前記第2のクロック信号を第2の論理値とし、
前記制御回路は、
前記カウンタ値が第4乃至第(n−3)のいずれかの値となる各サイクルにおいて、
前記受信データの変化があるとき、
同期エラーと判定し、次のサイクルで、カウンタをリセットし、
前記第2のクロック信号を第1の論理値とし、
前記カウンタ値が第4乃至第(n−3)のいずれかの値となる前記サイクルにおいて、
前記受信データの変化が無いとき、
次のサイクルでカウンタ値を1つインクリメントする制御を行い、
前記制御回路は、
前記カウンタ値が、第(n−2)の値となるサイクルにおいて、
前記受信データの変化があるとき、
次のサイクルでカウンタ値を2つ進め、前記第2のクロック信号を第1の論理値とし、
前記サイクルで前記カウンタ値が前記第(n−2)の値であり、前記受信データの変化が無いとき、
次のサイクルでカウンタ値を1つインクリメントする制御を行い、
前記制御回路は、
前記カウンタ値が第(n−1)の値となるサイクルにおいて、
前記受信データの変化が有る場合、
過去m回(mは予め定められた正整数)の受信データに関して受信データの変化が全てカウンタ値が前記第(n−1)の値のときである場合、
次のサイクルでカウンタ値を2つ進め、第2のクロック信号を第1の論理値とし、
過去m回の受信データの変化が、カウンタ値が第(n−1)の値のとき以外にもある場合、
次のサイクルでカウンタ値を1つインクリメントし、前記第2のクロック信号を第1の論理値とし、
前記カウンタ値が第(n−1)の値となるサイクルにおいて、
前記受信データの変化が無い場合、
次のサイクルでカウンタ値を1つインクリメントし、前記第2のクロック信号を第1の論理値とする制御を行い、
前記カウンタ値が第nの値となるサイクルにおいて、
受信データの変化が有る場合と無い場合のいずれの場合も、次のサイクルでカウンタ値を第1の値とし、
前記カウンタ値が第nの値となるサイクルにおいて、
前記受信データの変化が有る場合、前記サイクルから過去、予め定められた所定サイクル以内に受信データの変化が検出された場合、同期エラーを出力する請求項1乃至6のいずれか1項に記載のクロック抽出回路。 - 送信回路から送信された信号を受信し、デジタル信号の受信データを出力する受信回路と、
前記受信回路から出力される受信データを、前記第1のクロック信号でサンプルして同期化させる複数段のフリップフロップと、
前記複数段のフリップフロップから出力される同期化された受信データを入力するクロック抽出回路と、
前記複数段のフリップフロップから出力される前記同期化された受信データを、前記クロック抽出回路から出力された第2のクロック信号でサンプルするフリップフロップと、
を備え、
前記クロック抽出回路が、請求項1乃至7のいずれか1項のクロック抽出回路からなる受信装置。 - 前記受信回路は、無線信号を受信する無線受信回路からなる、請求項8記載の受信装置。
- 前記受信回路は、有線シリアル信号を受信する受信回路からなる、請求項8記載の受信装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010209506A JP2012065252A (ja) | 2010-09-17 | 2010-09-17 | クロック抽出回路及び受信装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010209506A JP2012065252A (ja) | 2010-09-17 | 2010-09-17 | クロック抽出回路及び受信装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012065252A true JP2012065252A (ja) | 2012-03-29 |
Family
ID=46060488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010209506A Pending JP2012065252A (ja) | 2010-09-17 | 2010-09-17 | クロック抽出回路及び受信装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012065252A (ja) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02216513A (ja) * | 1988-11-25 | 1990-08-29 | Nec Corp | シリアルクロック発生回路 |
JPH08125648A (ja) * | 1994-10-27 | 1996-05-17 | Nec Shizuoka Ltd | ディジタルpll回路 |
JPH09181709A (ja) * | 1995-12-27 | 1997-07-11 | Meidensha Corp | Cmi符号用クロック抽出回路 |
JPH118629A (ja) * | 1997-06-17 | 1999-01-12 | Meidensha Corp | 光リピータ |
JP2001230765A (ja) * | 2000-02-17 | 2001-08-24 | Fujikura Ltd | クロック信号抽出回路 |
JP2002300141A (ja) * | 2001-03-30 | 2002-10-11 | Anritsu Corp | データ取り込みタイミング制御装置および方法 |
JP2005020172A (ja) * | 2003-06-24 | 2005-01-20 | Denso Corp | 通信装置 |
-
2010
- 2010-09-17 JP JP2010209506A patent/JP2012065252A/ja active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02216513A (ja) * | 1988-11-25 | 1990-08-29 | Nec Corp | シリアルクロック発生回路 |
JPH08125648A (ja) * | 1994-10-27 | 1996-05-17 | Nec Shizuoka Ltd | ディジタルpll回路 |
JPH09181709A (ja) * | 1995-12-27 | 1997-07-11 | Meidensha Corp | Cmi符号用クロック抽出回路 |
JPH118629A (ja) * | 1997-06-17 | 1999-01-12 | Meidensha Corp | 光リピータ |
JP2001230765A (ja) * | 2000-02-17 | 2001-08-24 | Fujikura Ltd | クロック信号抽出回路 |
JP2002300141A (ja) * | 2001-03-30 | 2002-10-11 | Anritsu Corp | データ取り込みタイミング制御装置および方法 |
JP2005020172A (ja) * | 2003-06-24 | 2005-01-20 | Denso Corp | 通信装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101632657B1 (ko) | 타임투디지털 컨버터 및 디지털 위상 고정 루프 | |
US8754713B2 (en) | PLL circuit with improved phase difference detection | |
KR101797625B1 (ko) | 저전력 고해상도 타임투디지털 컨버터 | |
EP3327461B1 (en) | Digital synthesizer, radar device and method therefor | |
JP5347534B2 (ja) | 位相比較器、pll回路、及び位相比較器の制御方法 | |
CN208353312U (zh) | 时钟同步电路和异步数据同步电路 | |
US20100052752A1 (en) | Lock detection circuit and lock detecting method | |
US9455725B2 (en) | Phase detector and associated phase detecting method | |
CN110912554A (zh) | 鉴频电路和方法 | |
JP5815999B2 (ja) | 位相固定ループ | |
EP2466755A1 (en) | Frequency acquisition utilizing a training pattern with fixed edge density | |
US20110133795A1 (en) | Digital phase-locked loop with reduced loop delay | |
JP5520128B2 (ja) | クロックアンドデータリカバリ回路 | |
US11115031B2 (en) | Phase-locked loop | |
KR102509984B1 (ko) | 클락 신호의 주파수 및 위상을 감지하는 집적 회로 및 이를 포함하는 클락 및 데이터 복원 회로 | |
EP2804323B1 (en) | Phase-detector circuit and clock-data recovery circuit | |
JP2005252447A (ja) | ロック検出回路、ロック検出方法 | |
JP2014225874A (ja) | クロック・データ・リカバリ回路で受信データ信号を取得するためのシステム及び方法 | |
JP2012065252A (ja) | クロック抽出回路及び受信装置 | |
JP2013077869A (ja) | 時間−デジタル変換器及びpll回路 | |
US7580496B2 (en) | Device for receiving series data | |
CN108011620B (zh) | 基于fpga的快速时钟恢复电路 | |
JP2010200064A (ja) | Pll回路、pll回路無線通信機、及びpll回路のロック検出方法 | |
JP3994545B2 (ja) | データ受信装置 | |
JP5861507B2 (ja) | データ通信回路、及び、電子装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130802 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140303 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140408 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20140729 |