(57)【要約】　　　（修正有）【課題】伝送データ流れの回復バージョンを発生するデータクロック回復回路を提供する。【解決手段】データ流れを受け取り、これからもとの伝送データ流れのビット周期毎に信号レベルの評価推定値を発生する。データ回復ブロック４に信号レベルの評価推定値を記憶し、クロック回復ブロック６によってサンプリングし、もとのデータ流れを回復する。また、データ回復ブロック４については、評価推定された信号レベルの精度を表す品質係数，ワードメトリックを発生させる。クロック回復ブロック６は、受信データ流れおよびデータ回復ブロック４で発生したワードメトリックの両者を使用し、現在のサンプリング時間が正しいかどうかを決定する。正しくない場合には、現在のサンプリング時間を調節し、理想的なサンプリング時間に向けて移動させる。相関器８は、新しいデータ流れの起点をいつ受信したかを決定する。【選択図】　　図２
2004007429.tif 000002
【特許請求の範囲】
【請求項１】
（ａ）第１ビット速度でデータ処理回路に伝送され、かつ複数の信号レベルをもつ第２データ流れから誘導された第１データ流れを第１ビット速度で受信し、（ｂ）第１データ流れから、第１ビット速度のビット周期毎に伝送信号レベルの推定値を発生し、そして（ｃ）各推定信号レベルを使用して、各推定信号レベルの精度を表す品質係数を発生するように構成したデータ回復手段（ｉ）、および上記データ回復手段から上記品質係数を受信し、これから第１データ流れをサンプリングすべき時間を決定し、そしてこのようにして決定された時間に従って各推定信号レベルをサンプリングし、これによって第２データ流れの回復バージョンを表す第３データ流れを発生するように構成したクロック回収手段（ｉｉ）を有することを特徴とするデータ処理回路。
【請求項２】
第１ビット速度より大きい第２ビット速度で第１データ流れをサンプリングし、第１ビット速度の各ビット周期内で取り込んだデータサンプルを加算し、そして複数の閾値レベルの一つを占めるように加算の結果を量子化し、量子化された結果が第１ビット速度毎に推定信号レベルを表すように上記データ回復手段を構成した請求項１記載の回路。
【請求項３】
第２ビット速度が第１ビット速度の整数倍である請求項２記載の回路。
【請求項４】
加算する前に、第１ビット速度のビット周期毎にデータサンプルに重みを付け、各ビット周期の中心に実質的に向かって取り込んだデータサンプルに、各ビット周期の起点および終点に実質的に向かって取り込んだデータサンプルよりも多い量で重みを付けた請求項２または請求項３記載の回路。
【請求項５】
各ビット周期内で取り込んだデータサンプルに重みを付け、加算することによって上記品質係数を決定するように上記データ回復手段を構成し、そして各ビット周期の中心に実質的に向かって取り込んだデータサンプルに、各ビット周期の起点および終点に実質的に向かって取り込んだデータサンプルよりも多い量で重みを付けるように重みを付けた請求項１〜４のいずれか１項記載の回路。
【請求項６】
さらに第１データ流れの起点を検出する手段を有する請求項１〜５のいずれか１項記載の回路。
【請求項７】
少なくとも第２データ流れの起点を表す同期データ流れを第３データ流れと比較し、第２データ流れの推定値と上記の同期データ流れとが実質的に一致する時点を確認するように構成した相関器を上記検出手段が有する請求項６記載の回路。
【請求項８】
上記品質係数がビット周期毎に推定された最適なサンプリング時間を示すように上記データ回復手段を構成し、最適なサンプリング時間の推定値を現在のサンプリング時間と比較し、現在のサンプリング時間を進めるか、または遅らせて、上記の推定された最適サンプリング時間に向けて移動する請求項１〜７のいずれか１項記載の回路。
【請求項９】
第１ビット速度でデータ源から伝送され、かつ複数の信号レベルをもつ第２データ流れから誘導された第１データ流れを第１ビット速度で受信する工程、
第１ビット速度のビット周期毎に、上記伝送信号レベルの推定値を発生する工程、
上記伝送信号レベルの各推定値から、各推定信号レベルの精度を示す品質係数を発生する工程、そして
上記品質係数から、第１データ流れをサンプリングすべき時点を計算し、その後、決定された時間に従って推定信号レベルをサンプリングし、第２データ流れと実質的に同じである第３データ流れを発生する工程を有する伝送データ流れを回復する方法。
【請求項１０】
上記伝送信号レベルを推定値を発生する工程で、第１ビット速度より大きい第２ビット速度で第１データ流れをサンプリングし、第１ビット速度の各ビット周期内でデータサンプルを加算し、そして複数の閾値レベルの一つを占めるように加算の結果を量子化し、量子化された結果が第１ビット速度毎に推定信号レベルを表すようにした請求項９記載の方法。
【請求項１１】
第２ビット速度が第１ビット速度の整数倍である請求項１０記載の方法。
【請求項１２】
加算する前に第１ビット速度のビット周期毎にデータサンプルに重みを付け、各ビット周期の中心に実質的に向かって取り込んだデータサンプルに、各ビット周期の起点および終点に実質的に向かって取り込んだデータサンプルよりも多い量で重みを付けた請求項１０または請求項１１記載の方法。
【請求項１３】
各ビット周期内で取り込んだデータサンプルに重みを付け、加算することによって上記品質係数を決定し、そして各ビット周期の中心に実質的に向かって取り込んだデータサンプルに、各ビット周期の起点および終点に実質的に向かって取り込んだデータサンプルよりも多い量で重みを付けるように重みを付けた請求項９〜１２のいずれか１項記載の方法。
【請求項１４】
さらに劣化データ流れの起点を検出する手段を有する請求項９〜１３のいずれか１項記載の方法。
【請求項１５】
上記の劣化データ流れを検出する工程で、少なくとも非劣化データ流れの起点を表す同期データ流れを非劣化データ流れと比較し、非劣化データ流れの推定値と上記の同期データ流れとが実質的に一致する時点を確認する請求項１４記載の方法。
【請求項１６】
上記品質係数がビット周期毎に最適なサンプリング時間の推定値を示し、第１データ流れをサンプリングする時間を計算する工程で、最適なサンプリング時間の推定値を現在のサンプリング時間と比較し、現在のサンプリング時間を進めるか、または遅らせて、上記の最適サンプリング時間推定値に向けて移動させる請求項９〜１５のいずれか１項記載の方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ処理回路、特に、劣化データ流れを受信し、これから元の劣化していないデータ流れを推定するデータ処理回路に関する。
【０００２】
【従来の技術】
物理的なあるリンク、あるいは無線方式のあるリンクを介して伝送されたデジタルデータの場合、ある程度は劣化する。例えば、ノイズや電磁波干渉がデータに影響をもつと、受信されたデータにエラーが発生することがある。劣化が生じると、データの振幅および／またはデータのタイミングに影響がでる。データ振幅が激しく劣化した場合には、“高”レベル信号が“低”レベル信号と読み間違えられる傾向がある。また、クロックジッターなどのタイミングエラーが発生し、同期ロスが発生する。
【０００３】
従って、デジタル方式のデータ受信装置の場合、もとの送信データを回復するために、データ／タイミング回復回路を利用することが多い。無線ラン（ＬＡＮ）チップＷＬ１０２などの従来の回復回路では、エッジ検出方法を状態マシンと組み合わせて使用し、データパケットの開始を検出しているが、この状態マシンには、問題が多い。というのは、良好なデータパケットを確認する能力が、状態マシンが正確な初期状態にあるかに依存しているからである。
【０００４】
【発明が解決しようとする課題】
従って、本発明の目的は、受信された劣化データ流れから良好なデータパケットを回復する、信頼性の高いデジタルデータ処理回路を提供することである。
【０００５】
【課題を解決するための手段】
本発明の第１実施態様によれば、本発明は、（ａ）第１ビット速度でデータ処理回路に伝送され、かつ複数の信号レベルをもつ第２データ流れから誘導された第１データ流れを第１ビット速度で受信し、（ｂ）第１データ流れから、第１ビット速度のビット周期毎に伝送信号レベルの推定値を発生し、そして（ｃ）各推定信号レベルを使用して、各推定信号レベルの精度を表す品質係数を発生するように構成したデータ回復手段（ｉ）、および上記データ回復手段から上記品質係数を受信し、これから第１データ流れをサンプリングすべき時間を決定し、そしてこのようにして決定された時間に従って各推定信号レベルをサンプリングし、これによって第２データ流れと実質的に同じである第３データ流れを発生するように構成したクロック回収手段（ｉｉ）を有することを特徴とするデータ処理回路を提供するものである。
【０００６】
本発明のデータ処理装置は、データ／クロック回復回路として構成する。品質係数は、劣化データ流れの推定信号レベルから計算する。この品質係数を使用して、推定信号レベルのサンプリング時間を調節する。従って、元のデータ流れの（信号レベルおよびタイミングに関して）確実な回復を実現できる。
【０００７】
第３データ流れは、実質的に第２データ流れと同じでなければならない。なお、この文脈では、クロック／データ回復回路／方法の場合、伝送データ流れと受信データ流れとの間には差があることを理解すべきである。特に毎秒当たり数百万ビットを伝送する場合がそうである。重要なことは、回路／方法の効率が高いこと、すなわちこのような差が最小であることである。本発明のデータ処理回路では、一体的な構造を利用して、クロック／データ回復を効率よく実現する。
【０００８】
第１ビット速度より大きい第２ビット速度で第１データ流れをサンプリングし、第１ビット速度の各ビット周期内で取り込んだデータサンプルを加算し、そして複数の閾値レベルの一つを占めるように加算の結果を量子化し、量子化された結果が第１ビット速度毎に推定信号レベルを表すように上記データ回復手段を構成する。第２ビット速度については、第１ビット速度の整数倍であることが好ましい。また、この“オーバーサンプリング”速度については、第１ビット速度の４倍以上であるのが好ましい。
【０００９】
加算する前に、第１ビット速度のビット周期毎にデータサンプルに重みを付け、各ビット周期の中心に実質的に向かって取り込んだデータサンプルに、各ビット周期の起点および終点に実質的に向かって取り込んだデータサンプルよりも多い量で重みを付ける。実際には、データ回復手段は、有限インパルス応答（ＦＩＲ）フィルターとして構成することができる。
【００１０】
各ビット周期内で取り込んだデータサンプルに重みを付け、加算することによって上記品質係数を決定し、そして各ビット周期の中心に実質的に向かって取り込んだデータサンプルに、各ビット周期の起点および終点に実質的に向かって取り込んだデータサンプルよりも多い量で重みを付けるように重みを付ける。
【００１１】
さらに、本発明のデータ処理回路は、第１データ流れの起点を検出する手段を有す。この検出手段としては、第２データ流れの起点を表す同期データ流れを第３データ流れと比較し、第３データ流れと上記の同期データ流れとが実質的に一致する時点を確認するように構成した相関器を使用することができる。
【００１２】
上記品質係数がビット周期毎に推定された最適なサンプリング時間を示すように上記データ回復手段を構成し、最適なサンプリング時間の推定値を現在のサンプリング時間と比較し、現在のサンプリング時間を進めるか、または遅らせて、上記の推定された最適サンプリング時間に向けて移動させるように上記クロック回復手段を構成する。
【００１３】
また、本発明の第２実施態様によれば、本発明は、第１ビット速度でデータ源から伝送され、かつ複数の信号レベルをもつ第２データ流れから誘導された第１データ流れを第１ビット速度で受信する工程、
第１ビット速度のビット周期毎に、上記伝送信号レベルの推定値を発生する工程、
上記伝送信号レベルの各推定値から、各推定信号レベルの精度を示す品質係数を発生する工程、そして
上記品質係数から、第１データ流れをサンプリングすべき時点を計算し、その後、決定された時間に従って推定信号レベルをサンプリングし、第２データ流れと実質的に同じである第３データ流れを発生する工程を有する伝送データ流れを回復する方法を提供する。
【００１４】
【発明の実施の形態】
以下、例示のみを目的として、本発明を添付図面について説明する。
図１（ａ）に、伝送データ流れ１の一部を示す。このデータ流れは２つの交替信号レベル（即ち、信号レベルは“低”レベルと“高“レベルとの間で交替する）を有する。伝送データ流れのビット速度は１Ｍｂｉｔ／ｓｅｃであり、従って各ビットのビット周期は１μｓである。伝送データ流れ１が、例えば無線チャンネルなどの完全ではないデータチャンネルを介して伝送される場合、恐らくノイズやその他の大気作用によりデータ流れが劣化する。
【００１５】
図１（ｂ）に、図１（ａ）に示した伝送データ流れ１の劣化バージョンである受信データ流れ２を示す。この受信データ流れ２は、受信機の復調器回路からの出力を表す。復調器回路はいくつかのチャンネルを介して伝送データ流れ１を受信する。図示のように、図１（ａ）のパルス“ａ”が影響を受け、受信バージョン“ａ′”の振幅が劣化する。パルス“ｂ”も影響を受け、受信バージョン“ｂ′”の振幅およびタイミングの両者が劣化する。また、パルス“ｃ”および“ｄ”も影響を受け、それぞれ受信バージョン“ｃ′”および“ｄ′”のタイミングのみが劣化する。このような劣化データ流れ２がコンピュータなどの受信装置に送られると、データにエラーが発生し、コンピュータの演算に支障がでることがある。従って、復調段の後に、特殊なデータ処理回路、即ちデータ／クロック回復回路が必要になる。図２に、有利には集積システム内でデータ回復機能およびタイミング回復機能を結合したデータ／クロック回復回路３を示す。
【００１６】
図２に示すように、データ／クロック回復回路３は３つの主ブロック、即ちデータ回復ブロック４と、クロック回復ブロック６と、相関器８と有する。データ回復ブロック４は、受信データ流れ２を受信し、最初に伝送されたデータ流れ１のビット周期毎に信号レベルを評価する。すなわち、伝送データ流れ１が１Ｍｂｉｔ／ｓｅｃのビット速度で送られる場合、受信データ流れ２の１μｓおきに信号レベルが評価される。信号レベルの評価推定値をデータ回復ブロック４に記憶し、クロック回復ブロック６によってサンプリングし、元のデータ流れを回復する。
【００１７】
データ回復ブロック４は、評価された信号レベルの精度を示す品質係数であるいわゆる“ワードメトリック”を発生する。クロック回復ブロック６は、受信データ流れ２と、データ回復ブロック４で発生したワードメトリックの両者を使用し、現在のサンプリング時間が最適かどうかを判定する。最適でない場合には、現在のサンプリング時間を調整し、“理想”サンプリング時間に向けて移動する。相関器８が、新しいデータ流れの起点をいつ受信したかを判定する。
【００１８】
以下、データ回復ブロック４、クロック回復ブロック６および相関器ブロック８について詳細に説明する。
【００１９】
データ回復ブロック４は１２の“ビットサンプラー”１６ａ〜１６ｌを有するが、図２には、図示を明確にするため、６つのサンプラーのみ、即ち１６ａ〜１６ｃおよび１６ｊ〜１６ｌを示す。中間のビットサンプラー１６ｄ〜１６ｉは、中間サンプラーブロック１７で示す。第１ビットサンプラー１６ａは、（図示していない）復調器から受信データ流れ２を伝送する回路入力ライン１４に接続する。ビットサンプラー１６ａ〜１６ｌは、直列配列し、データが一つのビットサンプラーの出力から次のビットサンプラーの入力に、例えば第１ビットサンプラー１６ａの出力１８ａから第２ビットサンプラー１６ｂの入力にシフトするように構成する。ビットサンプラー１６ａ〜１６ｌのそれぞれに貯えられたデータは、相関器８に入力される。以下、より詳細に説明する。
【００２０】
各ビットサンプラー１６ａ〜１６ｌは、伝送データ流れ１におけるビット速度の５倍の速度で受信データ流れ２をオーバーサンプングする。換言すると、伝送データ流れ２は１Ｍｂｉｔ／ｓｅｃのビット速度で送られるため、１μｓのビット周期おきに５つのサンプルが取得されることになる。このために、データ回復ブロック４が伝送データ流れにおけるビット速度の５倍の速度、即ち５Ｍｂｉｔ／ｓｅｃのクロック信号を受信する。各ビットサンプラー１６ａ〜１６ｌは、クロックライン２４で５Ｍｂｉｔ／ｓｅｃクロック信号を受信する。図２には、５Ｍｂｉｔ／ｓｅｃクロックライン２４に接続した第１ビットサンプラー１６ａのみを図示する。
【００２１】
オーバーサンプリングされたデータ流れを処理し、“高”信号レベルか、あるいは“低”信号レベルである信号レベルの推定値を受信データ流れ２の１μｓビット周期おきに記憶する。また、データ流れ１μｓおきに品質係数（いわゆる“ビットメトリック”）を計算する。なお、このビットメトリックが信号レベルの推定値の精度を表す。各ビットメトリックをそれぞれのビットメトリックライン１９ａ〜１９ｌに出力し、この後各ビットメトリックを一連の加算器２０に加え、（上記）ワードメトリックを発生する。
【００２２】
図３は、第１ビットサンプラー１６ａのブロック線図である。なお、第２〜第１２ビットサンプラー１６ｂ〜１６ｌそれぞれの構成は、図３に示した構成と全く同じである。
【００２３】
図３に示すように、第１ビットサンプラー１６ａは、第１〜第５Ｄ形ラッチ３０ａ〜３０ｅと、第１演算ブロック３２、第２演算ブロック３４および排他的ＯＲ（ＸＯＲ）ブロック３６を有する。第１〜第５Ｄ形ラッチ３０ａ〜３０ｅは直列配列し、第１Ｄ形ラッチ３０ａの出力を第２Ｄ形ラッチ３０ｂの入力に接続する。以下これに準じて接続を行なう。図２に示すように、回路入力ライン１４を第１Ｄ形ラッチ３０ａの入力に接続し、第５Ｄ形ラッチ３０ｅの出力ライン１８を第２ビットサンプラー１６ｂの入力ラインに接続する。第１〜第５Ｄ形ラッチ３０ａ〜３０ｅをそれぞれ５Ｍｂｉｔ／ｓｅｃクロック信号によりクロック処理し、１Ｍｂｉｔ／ｓｅｃデータ流れの１μｓビット周期毎に入力信号について５つのサンプルを取得し、５Ｍｂｉｔ／ｓｅｃクロックのサイクル毎にサンプルを記憶し、Ｄ形ラッチにそってシフトする。
【００２４】
第１ビットサンプラー１６ａが、オーバーサンプリングされたデータについて“多数決投票”演算を行なうことによって伝送信号レベルを評価する。この演算は第１演算ブロック３２によって行なう。第１演算ブロック３２が、第１〜第５Ｄ形ラッチ３０ａ〜３０ｅに記憶されている５つのデータサンプルを受け取る。第１演算ブロックへの入力に重みを付け、第１Ｄ形ラッチ３０ａおよび第５Ｄ形ラッチ３０ｅからのデータサンプルを１倍し、第２Ｄ形ラッチ３０ｂおよび第４Ｄ形ラッチ３０ｄからのデータサンプルを２倍し、そして第３Ｄ形ラッチ３０ｃからのデータサンプルを３倍する。この重み付けの場合、ビット周期の中心に向かって取得されたデータサンプルは、（故障やクロックジッターの影響を受けやすい）ビット周期の起点および終点で取得されるデータサンプルよりも精度が高い事実を利用する。従って、単純な平均演算を行なう場合よりも、ある特定のビット周期に関して正確な信号レベルが“高”レベルにあるか“低”レベルにあるかを判定するさいには、中心データサンプルの重要性がより高くなる。重みを付けた結果を第１演算ブロック３２に加え、合計が４より大きい場合には、“高”レベル信号を出力する。重みを付けたサンプルの合計が“高”レベル信号または“低”レベル信号を示すかどうかを決定するために好適な閾値として４を選択する。状態が異なる場合には、別な閾値を選択すればよい。この“閾値決定”によりデータを量子化することができる。
【００２５】
第１ビットサンプラー１６ａが、同様な重み付け／加算演算によってビットメトリックを計算する。これは、第２演算ブロック３４によって行なう。第１演算ブロック３２と同様に、第２演算ブロックが第１〜第５Ｄ形ラッチ３０ａ〜３０ｅに記憶されている５つのデータサンプルを受け取るが、第１演算ブロック３２からの出力が“高い”場合にのみ実行可能になるＸＯＲブロック３６を介してデータサンプルを受け取る。Ｄ形ラッチ３０ｌ〜３０ｅからの信号をＸＯＲブロック３６が変調し、第２演算ブロック３４への信号が、“Ｒｅｃｏｖ−ｄａｔａ”３８と同じでない場合には“高く”なり、そして“Ｒｅｃｏｖ−ｄａｔａ”３８と同じ場合には“低く”なる。同様に、第２演算ブロック３４への入力に重みを付け、第１Ｄ形ラッチ３０ａおよび第５Ｄ形ラッチ３０ｅからのデータサンプルを１倍し、第２Ｄ形ラッチ３０ｂおよび第４Ｄ形ラッチ３０ｄからのデータサンプルを２倍し、そして第３Ｄ形ラッチ３０ｃからのデータサンプルを３倍する。第２演算ブロック３４からの出力が、“Ｒｅｃｏｖ−ｄａｔａ”３８に一致しないビットの合計を表し、その範囲は０（ビット数が一致する）〜４である。５〜９の範囲にある合計を出力する入力の組み合わせがあると、“Ｒｅｃｏｖ−ｄａｔａ”３８が極性をかえ、合計を４〜０の範囲に収めるようになる。
【００２６】
ここで第１演算ブロックおよび第２演算ブロックの演算を説明するために、ビット周期が１μｓで、信号レベルが“高”レベルである劣化していないパルスを第１ビットサンプラー１６ａに入力する場合を考える。先ず、時間ｔ１では、第１Ｄ形ラッチ３０ａのみが“高”レベル信号を保持する。従って、重み付け合計が１になるため、“低”レベル信号が出力することになる。これは４より大きくないからである。また、Ｒｅｃｏｖ−ｄａｔａ”３８がＤ形ラッチ３０ａに一致していないため、第２演算ブロック３４が１になる。時間ｔ２では、第１Ｄ形ラッチ３０ａおよび第２Ｄ形ラッチ３０ｂが“高”レベル信号を保持し、従って第１演算ブロック３２からの出力が同様に“低く”なり、第２演算ブロック３４からの出力が３に増加する。時間ｔ３では、第１〜第３Ｄ形ラッチ３０ａ〜３０ｃが“高”レベル信号を保持し、従って第１演算ブロック３２からの出力が今度は“高く”なる。６の重み付け加算が４より大きくなるからである。従って、ＸＯＲブロック３６が実行可能になり、第２演算ブロック３４が３（９−６）を出力することになる。
【００２７】
Ｄ形ラッチ３０ａ〜３０ｅのすべてが“高”レベル信号を保持する時には、第１演算ブロック３２からの出力が結果的に再度“高”レベル信号になり、従ってデータサンプルがすべて一致するため、第２演算ブロック３４からの出力がゼロになる。つまり、第２演算ブロック３４からのビットメトリックライン１９ａへの出力であるビットメトリックが最低でも、最善のあるいは最適なサンプリング時間になる（この時点では、記憶されているデータのすべてが一致する傾向がある）。ビットメトリックが最大になった場合、これは最悪のサンプリング時間になる。データサンプルがこの時点では一致しない傾向になるからである。データサンプルがＤ形ラッチ３０ａ〜３０ｅから次の第２ビットサンプラー１６ｂにシフトすると、“高”パルスに続く“低”レベル信号がＤ形ラッチにシフトする。従って、第１演算ブロック３２からの出力が、重み付け合計が４以下になると、“低”に戻り、データサンプルが一致しなくなる傾向を示すと、第２演算ブロック３４からの出力が再び増加し始める。
【００２８】
図４ａは、（周期および振幅が劣化していない）非劣化パルス４２に関する上記理想的な場合におけるビットメトリックのグラフ４０である。図４ｂは、振幅が劣化しているパルス４６のグラフ４４である。なお、ビットメトリックを示す曲線４４の極大点および極小点は接近している。実際、これらの点は、振幅劣化が大きくなるに従って、収斂する傾向を示す。パルスがクロック劣化を受けると、図４ｃに示すように、ビットメトリックを示す曲線４９がシフトする。
【００２９】
図３に戻って説明を続けると、受信データ流れ２がクロックされるに従って、第１ビットサンプラー１６ａの演算が第２〜第１１ビットサンプラー１６ｂ〜１６ｌによって繰り返される。従って、オーバーサンプリングされたデータ流れが１２ビット周期、即ち１２μｓ間保持される。既に説明したように、第２演算ブロック３４から出力される各ビットメトリックは加算器２０によって合計され、そして最後の加算器２０´がワードメトリックライン２２にワードメトリックを出力する。同様に既に説明したように、ワードメトリックは、ビットサンプラー１６ａ〜１６ｌに記憶されている信号レベル全体の精度を表す品質係数である。図示のグラフでは、ワードメトリックはビットメトリックの誇張されたバージョンである。このように、受信データ流れ２の劣化は、上記の個々のビットメトリックの場合と全く同様に、ワードメトリックの外観に影響するものである。このワードメトリックを受信品質メトリック処理装置１２に出力すると、これがデータ／クロック回復回路３の精度を数値出力する。この出力数値を“受信品質メトリック”と呼ぶ。具体的には、クロック回復ブロック６が（後述する）“ロック”フラッグを設定すると、現在のワードメトリックが３２倍され、受信品質メトリック処理装置１２にロードされる。次に、ビット周期おきに、以下のアルゴリズムが続く。
【００３０】
（“ワードメトリック×３２）＞受信品質メトリック）ならば、
“受信品質メトリック”＝“受信品質メトリック”＋３２である。
一方、“受信品質メトリック”＞０ならば、
“受信品質メトリック”＝“受信品質メトリック”−１である。
【００３１】
受信品質メトリック処理装置１２の場合、１３×４×３２＝１，６６４が成立する必要があり、従って１１ビット長さでなければならない。出力された受信品質メトリックは、受信品質メトリック処理装置１２に記憶されているデータのうち最も重要な８つのビットである。データ流れの終点では、受信品質メトリック処理装置１２は理想的なデータから“平均的な”変分の目安を保持する必要がある。
【００３２】
データ回復ブロック４の構成は、ＦＩＲフィルターの構成に相当するものである。
【００３３】
以下、相関器ブロック８の動作について説明する。上述したように、相関器ブロック８は、新しいデータ流れの起点を検出するものである。この検出のために、相関器ブロック８は、受信データ流れ２の始点に含まれる同期流れに対応する“Ｓｙｎｃ．Ｗｏｒｄ”データ流れを受け取る。この相関器ブロック８は、（ａ）データ回復回路４に記憶されている信号レベルに関する評価推定値および（ｂ）“Ｓｙｎｃ．Ｗｏｒｄ”に関して相関動作を行い、その後、両者間の最善の一致に従って受信データ流れの起点を決定する。
【００３４】
本発明のデータ回復回路をブルーツース受信機（Ｂｌｕｅｔｏｏｔｈ　ｒｅｃｅｉｖｅｒ）とともに使用する特殊な場合には、相関器８は、ブルーツースパケットの長さである６４ビットのデータを取り込む必要がある。Ｄ形ラッチ１６ａ〜１６ｌそれぞれから１ビットにつき一つのサンプルのみを取り出す場合、クロック回復ブロック６によるスリップ問題が生じる。また、（最善の結果を与える）６４ビットパケット全体に対して１ビット周期につき複数の（５の）サンプルを使用する場合には、消費電力や装置サイズの制約により深刻な問題が生じる。従って、妥協点を選ぶことによって、（第１２ビットサンプラー１６ｌに記憶されている）　最も古い回復データビットを“受信データレジスター“１０にロードする。この受信データレジスター１０に記憶されている最も古い５２ビットを受信データレジスター１０が相関器８に出力する。相関器８はまた（第１〜第１２ビットサンプラー１６ａ〜ｌに記憶されている）１２の最も新しい回復データビットを受信し、これによって６４ビットワードを構成し、これをＳｙｎｃ．Ｗｏｒｄと相関させる。相関の結果が所定の閾値を越える場合には、相関器トリガー信号“Ｃｏｒｒ＿Ｔｒｉｇ”がＣｏｒｒ＿Ｔｒｉｇライン２７に発生し、相関器結果を記録する。相関器８内部のカウンター（図示せず）が、Ｃｏｒｒ＿Ｔｒｉｇの設定後に発生するビット周期の数をカウントする。カウンターが設定数に達する前に、遅い相関結果がすぐれた結果になる場合には、新しい相関結果を記録し、Ｃｏｒｒ＿Ｔｒｉｇを再設定し、カウンターをリセットする。カウンターがその設定数に達し、相関器が実行不能になるまで上記プロセスを繰り返す。Ｃｏｒｒ＿Ｔｒｉｇ信号をクロック回復ブロック６に送り出す。
【００３５】
次に、図５についてクロック回復ブロック６を詳細に説明する。クロック回収ブロック６が５Ｍｂｉｔ／ｓｅｃクロック信号をデータ回復ブロック４に発生し、受信データ流れ２をオーバーサンプリングする。このクロック回復動作によって５Ｍｂｉｔ／ｓｅｃの周波数が変調することはない。このクロック回復ブロック６はまたデータサンプル信号を発生し、“理想的な”サンプル時間に関する現在の評価を示す“高”パルスを出す。クロック回復ブロック６に使用するデータサンプル信号ライン２８を相関器８まで延設し、ライン６０にデータ出力を出力するために使用する。クロック回復ブロック７についても、受信データ流れ２およびデータ回復ブロック４で発生したワードメトリックを解析し、現在のサンプリング時間が正しいかどうかを判定するように構成する。正しくない場合には、現在のサンプリング時間を調節し、これを“理想的な”サンプリング時間に向けて移す。
【００３６】
図５に示すように、クロック回復ブロック６は、ビット周期カウンター５０、調節ブロック５２およびメトリック処理装置５４を有する。ビット周期カウンター５０は、クロックライン２４上の５Ｍｂｉｔ／ｓｅｃクロック信号およびライン２８上のデータサンプル信号を有するだけでなく、繰り返しパターンにおいて−２から＋２（二進数字）に増分するカウンターレジスターを有する。この繰り返しパターンは、調節ブロック５２に対して“カウント”信号として出力される。ビット周期カウンター５０は、カウント信号がゼロになった時点で、データ回復ブロック６に現在記憶されているデータをサンプリングする機能をもつ。このサンプリングは、第１ビットサンプラー１６ａに接続されたデータサンプリングライン２８に“高”データサンプル信号を出力することによって実施する。第１ビットサンプラー１６ａに記憶された評価信号レベルをこの時点でデータ出力ライン６０に出力する。この信号レベルが上記特定の場合における１μｓビット周期の第１“回復”データビットを表す。ビット周期カウンター５０内の繰り返しパターンを進めるか、あるいは遅らせることによってデータサンプル信号のタイミングを調節する。これは、以下に説明するように、調節ブロック５２からの“調節”信号によって制御する。
【００３７】
メトリック処理装置５４は、ワードメトリックライン２２でワードメトリックを受信するように構成する。既に説明したように、（個々のビットメトリックの加算バージョンを示す）ワードメトリックは、ビットサンプラー１６ａ〜１６ｌに記憶されている信号レベルの精度を示す。ほとんどのデータサンプルが一致している場合には、ワードメトリックは最小である。ほとんどのデータサンプルが一致していない時点では、ワードメトリックは最大である。すべてのデータサンプルが一致し、受信データ流れ２内に多数のエッジ遷移が認められる理想的な状態では、“理想的な”サンプリング時点においてワードメトリックは非常に低く、半ビット周期後には、このワードメトリックは非常に大きくなる。エッジ遷移が少ない場合、ワードメトリックのピークは低くなるが、極小値も小さくなる。ノイズがより多いデータの場合（すなわち、隣接データサンプルに“高”レベル信号と“低”レベル信号が混在している場合）、極小値が高くなり、ピーク値が低くなる。換言すると、極大点と極小点とが収斂する傾向がでてくる。
【００３８】
各ビット周期内で、メトリック処理装置５４はワードメトリックの極大値および極小値の両者、および極小点と現在のサンプリング時間との間の相対的な時間差を取り込む。メトリック処理装置５４は、２（ワードメトリックの極大点と極小点との差が比較的大きい）と０（この差が比較的小さい）との範囲にある“有意味な”データを出力する。この相対的な時間差は、調節ブロック５２に“最小カウント”信号として出力される。
【００３９】
調節ブロック５２は、（ｉ）データ入力ライン１４上の受信データ流れ（あるいは復調器出力）、（ｉｉ）相関器８からのＣｏｒｒ＿Ｔｒｉｇ信号、（ｉｉｉ）ビット周期カウンター５０からの“カウント”データ、（ｉｖ）メトリック処理装置５４からの“有意味な”データ、および（ｖ）メトリック処理装置からの“最小カウント”データを受信する。調節ブロック５２は、上述したように、ビット周期カウンター５０に“調節”信号を出力する。
【００４０】
調節ブロック５２は、現在のサンプル時間（すなわち、データサンプル信号がライン２８上で“高く”なる時間）を変更すべきかどうかを判定し、そして変更すべき場合には、進めるかあるいは遅らせるかどうかを判定するように構成する。新しいデータ流れの起点では、サンプル時間は、データ流れに対して可能限り迅速に同期させ、そして必要な調節がある場合には、これを可能な限り迅速に行なう必要がある。一旦データ流れにサンプル時間を同期させた後は、サンプル時間を何度も調節する必要がないため、調節の回数を減らすことができる。
【００４１】
調節ブロック５２は、新しいデータ流れの起点で“低”にリセットする“ロック”フラッグを有する。ロックフラッグは、調節ブロックが、同期が生じたことを確認した時点で“高く”なる。これは、新しいデータ流れの起点で７に初期化された３ビットロックカウンターを使用して行なう。メトリック処理装置５４が（ワードメトリックの極大点と極小点との間に大きな差があることを示す）２の“有意味な”信号を示すたびに、ロックカウンターを小さく設定する。ロックカウンターがゼロに達した場合には、ロックフラッグを設定する。Ｃｏｒｒ＿Ｔｒｉｇ信号が高くなり、相関器ブロック８が新しいデータ流れの起点を検出したことを示す場合にも、ロックカウンターを設定する。
【００４２】
また、調節ブロック５２は、−２５６と２５５との間にある値を示すことができる９ビット調節カウンターも有している。周期毎に、メトリック処理装置５４が現在のサンプリング時間の前に、ワードメトリックの極大点が生じたことを示した場合には、有意味な値を４倍し、得られた値を調節カウンターから差し引く。メトリックカウンター５４が現在のサンプリング時間の後に極大点が生じたことを示した場合には、有意味な値を４倍し、得られた値を調節カウンターから差し引く。
【００４３】
上記に加えて、受信データ流れ２（入力ライン１４で受け取られる）をエッジ検出回路に入力する。エッジ検出回路（図示せず）は、回路が利用できる最も早いクロック信号によってクロックされるＤ形ラッチで構成する。Ｄ形ラッチへの入力がＤ形ラッチの出力と異なっている場合には、エッジが既に検出されたことを意味する。ビット周期カウンター５０からの“カウント”信号がエッジ検出時点で負の場合、エッジは早いと考えられ、ビット周期カウンター５０からの“カウント”信号がエッジ検出時点で正ならば、エッジは遅いと考えられる。ビット周期カウンター５０からの“カウント”信号がゼロならば、エッジは予測した時間で発生したことになる。エッジが予測時間よりも早く検出された場合には、調節カウンターを小さく設定する。エッジが予測時間よりも遅く検出された場合には、調節カウンターを大きく設定する。このエッジ検出回路は、特に５Ｍｂｉｔ／ｓｅｃよりもエッジ検出回路の動作時間が早い場合に、より微小な調節を可能にするものである。
【００４４】
ロックフラッグが低い場合には、調節カウンターが±８に達するか超えた時点で調節を開始する。ロックフラッグを高く設定した場合には、調節カウンターが±１２８に達するか超えた時点で調節を開始する。以下に説明するように、調節カウンターが負の場合には、ビット周期カウンター５０を進め、そして調節カウンターが正の場合には、ビット周期カウンターを遅らせる。同時に、調節カウンター閾値（即ち、±８および±１２８）を調節カウンターに加算するか減算する。調節カウンター初期値および調節閾値は何を実行するかに依存し、かつビット周期がどのように変動あるいは安定化するかに関係がある。
【００４５】
上述したように、調節ブロック５２からの“調節”信号は、現在のサンプル時間を進めるか、あるいは遅らせる必要があるかを示すものである。“調節”信号が、理想的なサンプリング時間が現在のサンプリング時間よりも早いことを示す場合には、単一クロックサイクルのために（通常の単一増分の代わりに）２だけ大きくビット周期カウンター５０を設定する。これは、ビット周期カウンター５０が一つのクロックサイクル分早くゼロに達し、データが一つのクロックサイクル分早くサンプリングされることを意味する。“調節”信号が、理想的なサンプル時間が現在サンプル時間よりも遅いことを示す場合には、ビット周期カウンター５０が一つのクロックサイクル分カウントを保持するため、一つのクロック分ゼロに達するのが遅くなる。このように、データは一つのクロックサイクル分だけ遅れてサンプリングされる。
【００４６】
このようにして、帰還ループまたは追跡ループが構成され、これによってデータ回復ブロック４に記憶されたデータの精度を目安として使用し、現在のサンプリング時間が正しいかどうかを判定する。正しくない場合には、サンプリング時間をどのように調節するかを決定する。クロックの回復またはタイミングの回復は、データ回復ブロック４および相関器８の両者から入力を取り出すクロック回復ブロック６で実施し、相関器が新しいデータ流れの起点を決定する。このためには、相関器８がデータ回復ブロック４の（既に）オーバーサンプリングされたデータを使用し、これによりビット周期毎にただ一つのサンプルを使用して、すぐれた相関結果を与えるようにする。すなわち、データ／クロック回復回路の動作を一体化し、受信された劣化データ流れ２から伝送データ流れ１を正確に表現するように構成する。個々の機能ブロック（データ回復ブロック４、クロック回復ブロック６および相関器８）を一つのより大きな機能ブロックに一体化すると、各サブブロックの性能を改善できる。
【００４７】
図２に示したデータ／クロック回復回路３は、ＭＴ１０２０ブルーツースベースバンドチップの特殊な要求仕様を満たすように設計する。異なる用途に対処できるように多数のパラメータを変更できる。例えば、上記回路の場合、伝送データは２レベル信号である。すなわち、“高”レベル信号か、あるいは“低”レベル信号のいずれかである。多重レベル信号（即ち、３つ以上の信号レベルをもつ信号）の場合には、中間レールからのオフセットを第２演算ブロック３４で重み付けすることによって、各ビット周期メトリックを発生する。ビット周期毎に、５つのサンプルを取り出す。これを多くすればデータ回復を改善できるが、装置面積の要求仕様が厳しくなり、第２クロック信号をより速くしなければならず、いずれも消費電力が大きくなる。
【００４８】
データ／クロック回復回路３の場合には、１２のビットサンプラーブロック１６ａ〜１６ｌを使用する。ブロックを増やすと、回復データの解像度および信頼性（およびワードメトリックの精度）を改善することが可能になる。また、相関器８に影響せずにクロック回復回路６のクロック調節に利用できる時間を増やすことも可能である。ビットサンプラーの出力をビット周期毎に一つのサンプルとして記憶する場合には、クロック信号を半ビット周期以上調節すると、相関器８内に潜在的ビットスリップを導入する結果になるため、良好な一致点を検出できなくなる。
【００４９】
既に述べたように、ブルーツースパケットの検出が必要なため、相関器８は６４ビット長さである。他のプロトコルの場合には、小形の相関器が必要である。以上は、ブルーツースシステムで受信データを回復することを対象としているが、ＩＥＥＥ８０２．１１やＨｏｍｅＲＦなどの他の無線ＬＡＮプロトコルにも適用可能である。最適な対象は、データ速度が２０ｋＨｚ〜１００ＭＨｚの範囲にある復調式データパケットの回復である。原則的には、本発明回路は任意のタイプのシリアルなデータ流れからデータを回復するために使用できる。また、以上は、公知分野におけるデータのパケットを取り出すために最適化されている。構成が複雑になっているが、これはノイズやジッターが存在する場合におけるデータ回復を改善するためである。
【図面の簡単な説明】
【図１】伝送データ流れおよび受信データ流れを説明する図である。
【図２】本発明に従って構成したデータ／クロック回復回路３を示すブロック線図である。
【図３】図２に示したビットサンプラー１６ａを示す回路図である。
【図４】図２に示したデータ／クロック回復回路から出力されたワードメトリックデータを表す３つのグラフである。
【図５】図２に示したタイミング回復回路６のブロック線図である。
【符号の説明】
１：伝送データ流れ
２：受信データ流れ
３：データ／クロック回復回路
４：データ回復ブロック
６：クロック回復ブロック
８：相関器
【図１】
2004007429.tif 000003
【図２】
2004007429.tif 000004
【図３】
2004007429.tif 000005
【図４】
2004007429.tif 000006
【図５】
2004007429.tif 000007
【手続補正書】
【提出日】平成15年7月2日(2003.7.2)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
（ａ）第１ビット速度でデータ処理回路に伝送され、かつ複数の信号レベルをもつ第２データ流れから誘導された第１データ流れを第１ビット速度で受信し、（ｂ）第１データ流れから、第１ビット速度のビット周期毎に伝送信号レベルの推定値を発生し、そして（ｃ）各推定信号レベルを使用して、各推定信号レベルの精度を表す品質係数を発生するように構成したデータ回復手段（ｉ）、および上記データ回復手段から上記品質係数を受信し、これから第１データ流れをサンプリングすべき時間を決定し、そしてこのようにして決定された時間に従って各推定信号レベルをサンプリングし、これによって第２データ流れの回復バージョンを表す第３データ流れを発生するように構成したクロック回収手段（ｉｉ）を有することを特徴とするデータ処理回路。
【請求項２】
第１ビット速度より大きい第２ビット速度で第１データ流れをサンプリングし、第１ビット速度の各ビット周期内で取り込んだデータサンプルを加算し、そして複数の閾値レベルの一つを占めるように加算の結果を量子化し、量子化された結果が第１ビット速度毎に推定信号レベルを表すように上記データ回復手段を構成した請求項１記載の回路。
【請求項３】
第２ビット速度が第１ビット速度の整数倍である請求項２記載の回路。
【請求項４】
加算する前に、第１ビット速度のビット周期毎にデータサンプルに重みを付け、各ビット周期の中心に実質的に向かって取り込んだデータサンプルに、各ビット周期の起点および終点に実質的に向かって取り込んだデータサンプルよりも多い量で重みを付けた請求項２または請求項３記載の回路。
【請求項５】
各ビット周期内で取り込んだデータサンプルに重みを付け、加算することによって上記品質係数を決定するように上記データ回復手段を構成し、そして各ビット周期の中心に実質的に向かって取り込んだデータサンプルに、各ビット周期の起点および終点に実質的に向かって取り込んだデータサンプルよりも多い量で重みを付けるように重みを付けた請求項１〜４のいずれか１項記載の回路。
【請求項６】
さらに第１データ流れの起点を検出する手段を有する請求項１〜５のいずれか１項記載の回路。
【請求項７】
少なくとも第２データ流れの起点を表す同期データ流れを第３データ流れと比較し、第２データ流れの推定値と上記の同期データ流れとが実質的に一致する時点を確認するように構成した相関器を上記検出手段が有する請求項６記載の回路。
【請求項８】
上記品質係数がビット周期毎に推定された最適なサンプリング時間を示すように上記データ回復手段を構成し、最適なサンプリング時間の推定値を現在のサンプリング時間と比較し、現在のサンプリング時間を進めるか、または遅らせて、上記の推定された最適サンプリング時間に向けて移動する請求項１〜７のいずれか１項記載の回路。
【請求項９】
第１ビット速度でデータ源から伝送され、かつ複数の信号レベルをもつ第２データ流れから誘導された第１データ流れを第１ビット速度で受信する工程、
第１ビット速度のビット周期毎に、上記伝送信号レベルの推定値を発生する工程、
上記伝送信号レベルの各推定値から、各推定信号レベルの精度を示す品質係数を発生する工程、そして
上記品質係数から、第１データ流れをサンプリングすべき時点を計算し、その後、決定された時間に従って推定信号レベルをサンプリングし、第２データ流れと実質的に同じである第３データ流れを発生する工程を有する伝送データ流れを回復する方法。