(57)【要約】【課題】ＬＳＩ化に適し且つ従来のＰＬＬを用いたのと同等の特性を設定できるシリアルデータインターフェースのＣＤＲ回路を提供する。【解決手段】本発明のＣＤＲ回路は、所定周波数のクロックの周期Ｔ１をＮ分割したＴ２時間ずつずらしたＮ相のクロックを出力する手段、シリアル転送されたデータをＴ２時間毎にサンプリングする手段、サンプリングしたデータを周期Ｔ１毎に第１のＮビットパラレルデータに変換する手段、サンプリングしたデータのデータ変化点を示す第２のＮビットパラレルデータに変換する手段、及び、第２のＮビットパラレルデータを位相情報入力としてシリアルデータのデータ変化点の略中間位置を示す第３のＮビットパラレルデータを出力する手段を有し、第３のＮビットパラレルデータが示したビット位置と同じ、第１のＮビットパラレルデータのビット位置データを復元データとすることを特徴とする。【選択図】図１
2008235985.tif 000002
【特許請求の範囲】
【請求項１】
所定周波数のクロックの周期Ｔ１をＮ（Ｎは３以上の整数）分割したＴ２（＝Ｔ１／Ｎ）時間ずつずらしたＮ相のクロックを出力する手段と、
シリアル転送されたデータを、前記Ｔ２時間毎にサンプリングする手段と、
前記サンプリングしたデータを、周期Ｔ１毎に、第１のＮビットパラレルデータに変換する手段と、
前記サンプリングしたデータのデータ変化点を示す、第２のＮビットパラレルデータに変換する手段と、
前記第２のＮビットパラレルデータを位相情報入力として、前記シリアルデータのデータ変化点の略中間位置を示す、第３のＮビットパラレルデータを出力する手段と
を有し、
前記第３のＮビットパラレルデータが示したビット位置と同じ、前記第１のＮビットパラレルデータのビット位置データを復元データとすることを特徴とするシリアルデータインターフェースのクロックデータリカバリー回路。
【請求項２】
請求項１に記載のクロックデータリカバリー回路であって、
前記第２のＮビットパラレルデータは、（Ｎ＋２）通りのデータのみとなるように限定して変換する手段を有し、
前記第３のＮビットパラレルデータを出力する手段も、（Ｎ＋２）通りのデータのみを出力することを特徴とするクロックデータリカバリー回路。
【請求項３】
請求項１又は２に記載のクロックデータリカバリー回路であって、
前記第２のＮビットパラレルデータを入力として、前記シリアルデータのデータ変化点の略中間位置を示す、第３のＮビットパラレルデータを出力する手段は、
前記第２のＮビットパラレルデータを時間分解能Ｔ２の位相情報を持つ仮想シリアル入力として、時間分解能Ｔ２で変化する仮想シリアルクロックを出力するデジタルＰＬＬであって、
前記デジタルＰＬＬは、オシレータに相当するＶＣＯ回路と、位相比較器と、ＰＬＬのフィードバックを制御するループフィルター部とを有し、
前記ＶＣＯ回路は、
入力データ（ｖｃｏｉｎ）に、１からＮまでの値を、それぞれ乗算する、Ｎ個の乗算手段と、
前記Ｎ個の１からＮまでの乗算手段出力と、第１の記憶手段に記憶された第１のフィードバックデータとを加算するＮ個の第１の加算手段と、
周期Ｔ１毎に、前記第１の加算手段の出力する前記Ｎ個の第１の加算結果を記憶するＮ個の第１の記憶手段と
を有し、前記Ｎ個の第１の記憶手段のうち、Ｎを乗算した値を一方の入力とした加算結果を記憶したデータの下位ｍビット（ｍは任意の整数）を第１のフィードバックデータとして接続し、
更に、前記ＶＯＣ回路は、
前記Ｎ個の第１の記憶手段のそれぞれの出力のｍ＋１ビット以上と、第２の記憶手段に記憶された第２のフィードバックデータとを加算するＮ個の第２の加算手段と、
周期Ｔ１毎に、前記第２の加算手段の出力する前記Ｎ個の第２の加算結果のうち、Ｎを乗算した値を一方の入力とした第１の加算結果を記憶したデータのｍ＋１ビット以上を一方の入力とした前記第２の加算手段の第２の加算結果を記憶する１個の第２の記憶手段と
を有し、前記第２の記憶手段で記憶したデータを前記第２のフィードバックデータとして接続し、
前記Ｎ個の第１の記憶手段出力と、前記Ｎ個の第２の加算手段出力を、前記１からＮまでの値を乗算した乗算手段出力から連なる順に下位ビットとして並べた場合に、前記第１の記憶手段出力のｍ＋１ビット以上のデータが一つ下位のビットのデータと異なり、
且つ、前記第２の加算手段出力が決められた値となる場合をクロックエッジとして、
時間分解能Ｔ２で変化する前記仮想シリアルクロック出力とすることを特徴とするクロックデータリカバリー回路。
【請求項４】
請求項３に記載のクロックデータリカバリー回路であって、
前記位相比較部は、
前記Ｎ個の第２の加算手段の出力を、時間分解能Ｔ２の仮想シリアル出力として、前記仮想シリアル入力との位相差をＴ１周期毎に位相差データとして検出する手段から成り、検出した位相差データを出力し、
前記ループフィルター部は、
前記検出した位相差データをＴ１周期毎にＫｓｙｓ倍する手段と、
前記検出した位相差データをＴ１周期毎にＫｌｏｏｐ倍する手段と、
前記Ｋｌｏｏｐ倍した位相差データをＴ１周期毎に積算する手段と、
前記位相差データをＫｓｙｓ倍した値と前記Ｋｌｏｏｐ倍した位相差データを積算した値をＴ１周期毎に加算する手段とから成り、前記加算結果をループフィルター出力とし、
前記ＶＣＯ回路の入力データ（ｖｃｏｉｎ）は、前記ループフィルター部出力を接続することで、ＰＬＬのフィードバックループを形成し、
前記ＶＣＯ回路の出力の仮想シリアルクロックをＴ１周期毎のＮビットパラレルデータに並べ直したものを前記第３のＮビットパラレルデータとすることを特徴とするクロックデータリカバリー回路。
【請求項５】
請求項４に記載のクロックデータリカバリー回路であって、
前記デジタルＰＬＬにおいて、前記Ｋｌｏｏｐ倍した位相差データをＴ１周期毎に積算する手段の初期値を、前記仮想シリアルクロック出力がＴ１周期となる値としたことを特徴とするクロックデータリカバリー回路。
【請求項６】
請求項４に記載のクロックデータリカバリー回路であって、
前記デジタルＰＬＬが、
前記Ｋｌｏｏｐ倍した位相差データをＴ１周期毎に積算する手段の出力値を、使用するシリアル転送規格の送信側基準クロック周波数と受信側基準クロック周波数の偏差の数倍程度に相当する前記仮想シリアルクロック出力なる値とする制限手段を、更に有することを特徴とするクロックデータリカバリー回路。
【請求項７】
請求項１乃至６のうちのいずれか一に記載のクロックデータリカバリー回路であって、
前記シリアルデータインターフェースが、ＵＳＢ２．０規格であることを特徴とするクロックデータリカバリー回路。
【請求項８】
請求項７に記載のクロックデータリカバリー回路であって、
前記デジタルＰＬＬは、
受信入力シリアルデータの変化が、６×Ｔ１周期間以上無い場合に、前記Ｎ個の加算手段の出力を、時間分解能Ｔ２の仮想シリアル出力として、前記仮想シリアル入力との位相差をＴ１周期毎に位相差データとして検出する手段の出力を、位相差なしデータとすることを特徴とするクロックデータリカバリー回路。
【請求項９】
請求項１乃至８のうちのいずれか一に記載のクロックデータリカバリー回路を搭載する通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、高速シリアル通信におけるクロックデータリカバリー回路、及び該クロックデータリカバリー回路を含む通信装置に関する。
【背景技術】
【０００２】
ＵＳＢの高速転送規格であるＵＳＢ２．０の最大転送速度は、４８０Ｍｂｐｓと高速なシリアル通信規格である。このシリアル通信では、１対のデータ線（Ｄ＋、Ｄ−）における送受信が小振幅差動信号により行われるが、クロックが供給されない。従って、受信装置側では、受信データからクロックを抽出し、抽出したクロックにより受信したデータをサンプリングするなどしてデータを得るのが通常である。このように、受信データからクロックとデータとを抽出する回路を、クロックデータリカバリー（一般に、ＣＤＲと略する。）回路と称する。
【０００３】
高速シリアルインターフェースで用いるＣＤＲ回路は、受信したデータの変化を見て、クロック信号を再生する技術である。ＣＤＲ回路では、アナログ方式のＰＬＬ（Ｐｈａｓｅ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）を用いて、受信データエッジに同期したクロックを抽出し、このクロックで受信データをサンプリングするのが一般的である。
【０００４】
ところで、ＵＳＢ２．０をはじめ、近年シリアル転送速度が飛躍的に高速化し、デジタル回路ブロックも高速での動作が必要になったため、これら回路も微細プロセスでＬＳＩ化されるようになった。しかしながら、同一ＬＳＩ内に、従来のアナログ方式のＰＬＬを搭載する場合、アナログ回路部分は微細プロセスを用いてもデジタル回路部と同様の割合で微細化することが容易ではない。そのため、相対的にコストアップになるという問題がある。
【０００５】
また、近年、装置内の基盤若しくはＬＳＩ間を接続する場合においても、ＰＣＩ  Ｅｘｐｒｅｓｓなどの高速シリアルインターフェースを用いるようになってきたが、多チャンネル化した場合に、チャンネル毎にアナログＰＬＬを搭載すると、コストアップだけでなくノイズ干渉の問題も発生するようになってきた。
【０００６】
一方、アナログＰＬＬではなく、デジタル方式のＰＬＬを用いる高速シリアルインターフェース回路も提案されている。ところが、デジタルＰＬＬ自体の動作クロックとして、抽出するクロックの最低でも３倍以上の周波数が必要である。即ち、近年の高速シリアル通信に適用するには、コストアップ、消費電力の増大といった観点から実用化が困難である。
【０００７】
また、アナログＰＬＬであっても、デジタルＰＬＬであっても、抽出したクロックで受信データをサンプリングして再生データとするものであるので、ＰＬＬで抽出したクロックと受信装置側のクロックとは非同期となる。そうすると、大規模デジタルＬＳＩの設計で主流である同期設計手法を使用できず、そのため設計検証をはじめ開発期間が増大するという問題もある。そこで、近年、アナログ回路を用いずにクロックとデータを再生するＣＤＲ回路が多数、例えば、特許文献１〜３等に、提案されている。
【０００８】
しかしながら、特許文献１〜３に開示されるＣＤＲ回路のいずれも、多相クロックでデータをサンプリングする部分の回路が過大である。そのため、各部の多相クロック間の遅延量のあわせ込みが必要となり、デジタル回路ではあるがレイアウトや動作検証のシミュレーションなどの実現は容易ではない。特に高速になるほど、飛躍的に困難さは増す。
【０００９】
また、シリアル転送では、送信側のシリアルクロック周波数と受信側のシリアルクロック周波数が全く同一であるということは有り得ないので、その周波数差を吸収するバッファ（一般に、エラスティックバッファと称される。）が必要である。エラスティックバッファは、受信データから抽出したクロック（即ち、送信側のシリアルクロック）に同期して書き込みが行われ、受信側のシリアルクロックで読み出しが行われるＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）レジスタで構成される。しかし、書き込みと読み出しタイミングが異なるので、非同期回路によるタイミング調停が必要になり、回路も動作検証のシミュレーションも複雑になる。ＣＤＲと協調して１種類のクロックで動作するエラスティックバッファが提供されれば、この問題点も解決するが、このような技術は未だ開示されていない。
【００１０】
更に、アプローチ方法は異なるが、本願発明と同一の課題を解決しようとした特許文献４も存在する。但し、特許文献４に開示される技術も、多相クロックでデータをサンプリングし、サンプリングデータパターンに応じてクロックパターンを決定していくというものであるので、定性的にＣＤＲ回路の各種パラメータを決定することが困難であるという問題点がある。即ち、ＣＤＲ回路は、単に受信データの変化に応じてクロックを再生するのみならず、変化に応答する時間（ＰＬＬでいうところのループゲイン）や、受信データとの位相差（ＰＬＬでいうところの定常偏差）などがパラメータとして設定され得ることが望ましいが、特許文献４に開示される技術ではこれらの設定は不可能である。
【特許文献１】特開２００２−１９０７２４号公報
【特許文献２】特開２００３−２２４５５１号公報
【特許文献３】特開２００４−１２８９８０号公報
【特許文献４】特開２００６−２６２１６５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
本発明は、ＬＳＩ化に適し且つ従来のＰＬＬを用いたのと同等の特性を設定できるシリアルデータインターフェースのクロックデータリカバリー回路を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明は、上記の目的を達成するためになされたものである。本発明に係る請求項１に記載のクロックデータリカバリー回路は、
所定周波数のクロックの周期Ｔ１をＮ（Ｎは３以上の整数）分割したＴ２（＝Ｔ１／Ｎ）時間ずつずらしたＮ相のクロックを出力する手段と、
シリアル転送されたデータを、前記Ｔ２時間毎にサンプリングする手段と、
前記サンプリングしたデータを、周期Ｔ１毎に、第１のＮビットパラレルデータに変換する手段と、
前記サンプリングしたデータのデータ変化点を示す、第２のＮビットパラレルデータに変換する手段と、
前記第２のＮビットパラレルデータを位相情報入力として、前記シリアルデータのデータ変化点の略中間位置を示す、第３のＮビットパラレルデータを出力する手段と
を有し、
前記第３のＮビットパラレルデータが示したビット位置と同じ、前記第１のＮビットパラレルデータのビット位置データを復元データとすることを特徴とするシリアルデータインターフェースのクロックデータリカバリー回路である。
【００１３】
本発明に係る請求項２に記載のクロックデータリカバリー回路は、
請求項１に記載のクロックデータリカバリー回路であって、
前記第２のＮビットパラレルデータは、（Ｎ＋２）通りのデータのみとなるように限定して変換する手段を有し、
前記第３のＮビットパラレルデータを出力する手段も、（Ｎ＋２）通りのデータのみを出力することを特徴とする。
【００１４】
本発明に係る請求項３に記載のクロックデータリカバリー回路は、
請求項１又は２に記載のクロックデータリカバリー回路であって、
前記第２のＮビットパラレルデータを入力として、前記シリアルデータのデータ変化点の略中間位置を示す、第３のＮビットパラレルデータを出力する手段は、
前記第２のＮビットパラレルデータを時間分解能Ｔ２の位相情報を持つ仮想シリアル入力として、時間分解能Ｔ２で変化する仮想シリアルクロックを出力するデジタルＰＬＬであって、
前記デジタルＰＬＬは、オシレータに相当するＶＣＯ回路と、位相比較器と、ＰＬＬのフィードバックを制御するループフィルター部とを有し、
前記ＶＣＯ回路は、
入力データ（ｖｃｏｉｎ）に、１からＮまでの値を、それぞれ乗算する、Ｎ個の乗算手段と、
前記Ｎ個の１からＮまでの乗算手段出力と、第１の記憶手段に記憶された第１のフィードバックデータとを加算するＮ個の第１の加算手段と、
周期Ｔ１毎に、前記第１の加算手段の出力する前記Ｎ個の第１の加算結果を記憶するＮ個の第１の記憶手段と
を有し、前記Ｎ個の第１の記憶手段のうち、Ｎを乗算した値を一方の入力とした加算結果を記憶したデータの下位ｍビット（ｍは任意の整数）を第１のフィードバックデータとして接続し、
更に、前記ＶＯＣ回路は、
前記Ｎ個の第１の記憶手段のそれぞれの出力のｍ＋１ビット以上と、第２の記憶手段に記憶された第２のフィードバックデータとを加算するＮ個の第２の加算手段と、
周期Ｔ１毎に、前記第２の加算手段の出力する前記Ｎ個の第２の加算結果のうち、Ｎを乗算した値を一方の入力とした第１の加算結果を記憶したデータのｍ＋１ビット以上を一方の入力とした前記第２の加算手段の第２の加算結果を記憶する１個の第２の記憶手段
を有し、前記第２の記憶手段で記憶したデータを前記第２のフィードバックデータとして接続し、
前記Ｎ個の第１の記憶手段出力と、前記Ｎ個の第２の加算手段出力を、前記１からＮまでの値を乗算した乗算手段出力から連なる順に下位ビットとして並べた場合に、前記第１の記憶手段出力のｍ＋１ビット以上のデータが一つ下位のビットのデータと異なり、
且つ、前記第２の加算手段出力が決められた値となる場合をクロックエッジとして、
時間分解能Ｔ２で変化する前記仮想シリアルクロック出力とすることを特徴とする。
【００１５】
請求項４に記載のクロックデータリカバリー回路は、
請求項３に記載のクロックデータリカバリー回路であって、
前記位相比較部は、
前記Ｎ個の第２の加算手段の出力を、時間分解能Ｔ２の仮想シリアル出力として、前記仮想シリアル入力との位相差をＴ１周期毎に位相差データとして検出する手段から成り、検出した位相差データを出力し、
前記ループフィルター部は、
前記検出した位相差データをＴ１周期毎にＫｓｙｓ倍する手段と、
前記検出した位相差データをＴ１周期毎にＫｌｏｏｐ倍する手段と、
前記Ｋｌｏｏｐ倍した位相差データをＴ１周期毎に積算する手段と、
前記位相差データをＫｓｙｓ倍した値と前記Ｋｌｏｏｐ倍した位相差データを積算した値をＴ１周期毎に加算する手段とから成り、前記加算結果をループフィルター出力とし、
前記ＶＣＯ回路の入力データ（ｖｃｏｉｎ）は、前記ループフィルター部出力を接続することで、ＰＬＬのフィードバックループを形成し、
前記ＶＣＯ回路の出力の仮想シリアルクロックをＴ１周期毎のＮビットパラレルデータに並べ直したものを前記第３のＮビットパラレルデータとすることを特徴とする。
【００１６】
本発明に係る請求項５に記載のクロックデータリカバリー回路は、
請求項４に記載のクロックデータリカバリー回路であって、
前記デジタルＰＬＬにおいて、前記Ｋｌｏｏｐ倍した位相差データをＴ１周期毎に積算する手段の初期値を、前記仮想シリアルクロック出力がＴ１周期となる値としたことを特徴とする。
【００１７】
本発明に係る請求項６に記載のクロックデータリカバリー回路は、
請求項４に記載のクロックデータリカバリー回路であって、
前記デジタルＰＬＬが、
前記Ｋｌｏｏｐ倍した位相差データをＴ１周期毎に積算する手段の出力値を、使用するシリアル転送規格の送信側基準クロック周波数と受信側基準クロック周波数の偏差の数倍程度に相当する前記仮想シリアルクロック出力なる値とする制限手段を、更に有することを特徴とする。
【００１８】
本発明に係る請求項７に記載のクロックデータリカバリー回路は、
請求項１乃至６のうちのいずれか一に記載のクロックデータリカバリー回路であって、
前記シリアルデータインターフェースが、ＵＳＢ２．０規格であることを特徴とする。
【００１９】
本発明に係る請求項８に記載のクロックデータリカバリー回路は、
請求項７に記載のクロックデータリカバリー回路であって、
前記デジタルＰＬＬは、
受信入力シリアルデータの変化が、６×Ｔ１周期間以上無い場合に、前記Ｎ個の加算手段の出力を、時間分解能Ｔ２の仮想シリアル出力として、前記仮想シリアル入力との位相差をＴ１周期毎に位相差データとして検出する手段の出力を、位相差なしデータとすることを特徴とする。
【００２０】
本発明に係る請求項９に記載の通信装置は、
請求項１乃至８のうちのいずれか一に記載のクロックデータリカバリー回路を搭載する通信装置である。
【発明の効果】
【００２１】
本発明を利用することにより、ＬＳＩ化が容易で、且つ、シリアルデータインターフェースのクロックデータリカバリーとして最適な回路及び装置を提供することができる。
【発明を実施するための最良の形態】
【００２２】
以下、図面を参照して、本発明に係る好適な実施形態を説明する。
【００２３】
［第１の実施形態］
図１は、本発明の第１の実施形態に係るＣＤＲ回路２のブロック図である。図１に示す差動レシーバ４は、ＤＰ、ＤＭの電位差に応じて０又１を出力する。また、図１に示すＮ相アナログＰＬＬ８は、受信装置側基準クロック（ＵＳＢ２．０の場合、４８０Ｍｈｚ）と、これをＮ分割した時間精度で夫々位相のずれたクロックとを発生させる。なお、このＮ相アナログＰＬＬ８は、一般的なものでよい。
【００２４】
図１に示す高速サンプル回路６は、シリアル転送されたデータをＮ相の多相クロックでサンプリングし、Ｎビットのパラレルデータに変換するブロックである。図１に示すデジタルフィルター１０は、Ｎビットパラレルデータをイコライズしたｐａｒａｄａｔ信号と、そのｐａｒａｄａｔ信号のエッジ位置を示すｐａｒａｃｋ信号を生成するブロックである。図１に示すデジタルＰＬＬ１２は、受信データの変化点、即ちｐａｒａｃｋ信号が示すエッジ位置の略中間位置を示すｏｕｔ＿ｐａｒａｃｋ信号を生成するブロックである。なお、ｐａｒａｄａｔ信号、ｐａｒａｃｋ信号、及び、ｏｕｔ＿ｐａｒａｃｋ信号の全て、Ｎビットのパラレルデータである。更に、図１に示すＥｌａｓｔｅｃＢｕｆｆｅｒ（エラスティックバッファ）１４は、ｐａｒａｄａｔ信号とｏｕｔ＿ｐａｒａｃｋ信号とにより、受信データを再生する回路（一般に、データ打ち抜き回路とも称される。）と、受信データから抽出したクロック（即ち、送信装置側基準クロック）と受信装置側基準クロックの周波数偏差を吸収するためのバッファとからなるブロックである。
【００２５】
図２は、４相クロックを用いた場合の高速サンプル回路６の回路図である。図３は、図２の高速サンプル回路６の動作の一例を示すタイミングチャートである。なお、図３には、デジタルフィルター１０で出力するｐａｒａｄａｔ信号とｐａｒａｃｋ信号も示している。ここで、ｐａｒａｄａｔ信号は、ｐａｒａ信号を３値移動平均フィルターでフィルタリングした場合で示している。
【００２６】
なお、デジタルフィルター１０の構成は、本願発明では特段限定されないが、後で説明するデジタルＰＬＬ１２が急峻なＢＰＦ（バンドパスフィルター）と等価な特性であるので、その前段のデジタルフィルター１０は、入力データのデグリッジを目的とした移動平均フィルターなどの簡単なＬＰＦ（ロウパスフィルター）であれば良い。デジタルフィルター１０の出力するｐａｒａｃｋ信号は、ｐａｒａｄａｔ信号のエッジ位置、すなわち０から１、又は１から０に変化したビットで１となる信号であるので、ＥＸＯＲ（イクスクルーシブＯＲ）回路で簡単に作成できる信号である。
【００２７】
図４左部は、４相クロックを用いた場合のｐａｒａｃｋ信号が取り得るパターン６通りを示す図である。即ち、図４左部は、クロック周期中にエッジがない場合、夫々の多相クロック相当位置でエッジがある場合、及び、クロック周期中に２個エッジがある場合のｐａｒａｃｋ信号を示している。また、図４は、左部の６通りのパターンが、送信装置側基準クロックが受信装置側基準クロックより速い場合（ＣＫ４８０Ｍ＋α）（図４中部）と、遅い場合（ＣＫ４８０Ｍ−α）（図４右部）とに、どのように出現するかの例も、示している。
【００２８】
同様に、図５は、８相クロックを用いた場合のｐａｒａｃｋ信号が取り得るパターンを示す図である。図４及び図５に示すように、Ｎ相クロックを用いる場合は、Ｎ＋２通りのパターンで送信側基準クロック位相を仮想的に表現できる。なお、突発的なノイズなどにより、Ｎ＋２通り以外のパターンが出現する可能性はあるが、このようなパターンは前述のデジタルフィルター１０で除去すればよい。
【００２９】
次に、図６は、本発明の第１の実施形態に係るデジタルＰＬＬ１２の構成を示すブロック図である。このようにブロック図で表すと一般的なＰＬＬの構成と何ら変らないが、入力のｐａｒａｃｋ信号、出力のｏｕｔ＿ｐａｒａｃｋ信号、及び、位相情報表すｐｈｄａｔ信号が、Ｎビットのパラレルデータで表現されるのが特徴である。図７は、４相クロックを用いた場合のＶＣＯ回路１８の回路図例である。
【００３０】
図６に示すデジタルＰＬＬ１２は、オシレータに相当するＶＣＯ回路１８と、位相検出器（ＰＤ）２０と、ＰＬＬのフィードバックを制御するループフィルター部とを有する。
【００３１】
図７に示すように、デジタルＰＬＬ１２のＶＣＯ回路１８は、
・入力データ（ｖｃｏｉｎ）に、１からＮ（図７では、Ｎ＝４である。）までの値を、それぞれ乗算する、Ｎ個の乗算手段（累算器）、
・Ｎ個の１からＮまでの乗算手段（累算器）の出力と、（以下で示す）第１の記憶手段（Ｄ−ＦＦ）に記憶された第１のフィードバックデータとを加算するＮ個の第１の加算器、及び、
・基準クロック周期毎に、第１の加算器の出力するＮ個の第１の加算結果を記憶するＮ個の第１の記憶手段（Ｄ−ＦＦ）
を有する。図７に示すように第１の加算器はｓｕｍ１〜４を出力する。
ここで、図７に示すように、Ｎ個の第１の記憶手段（Ｄ−ＦＦ）の出力のうち、Ｎを乗算した値を一方の入力とした加算結果を記憶したデータの下位ｍビット（ｍは任意の整数）は、第１のフィードバックデータとして接続されている。
【００３２】
更に、図７に示すＶＣＯ回路１８は、
・Ｎ個の第１の記憶手段（Ｄ−ＦＦ）のそれぞれの出力のｍ＋１ビット以上と、（以下で示す）第２の記憶手段（Ｄ−ＦＦ）に記憶された第２のフィードバックデータとを加算するＮ個の第２の加算器、及び、
・基準クロック周期毎に、第２の加算器の出力するＮ個の第２の加算結果のうち、Ｎを乗算した値を一方の入力とした第１の加算結果を記憶したデータのｍ＋１ビット以上を一方の入力とした第２の加算器の第２の加算結果を記憶する１個の第２の記憶手段（Ｄ−ＦＦ）
を有する。図７に示すように、第２の加算器は、ｐｈｄａｔ  ＭＳＢ（Most Significant Bit）を出力する。第２の記憶手段（Ｄ−ＦＦ）は、ｐｈｄａｔ４  ＭＳＢを記憶する。ここで、第２の記憶手段（Ｄ−ＦＦ）で記憶したデータは、第２の加算器に対して第２のフィードバックデータとして接続されている。
【００３３】
更に、図７に示すＶＣＯ回路１８においては、Ｎ個の第１の記憶手段（Ｄ−ＦＦ）の出力と、Ｎ個の第２の加算器の出力を、１からＮまでの値を乗算した累算器出力から連なる順に下位ビットとして並べた場合に、第１の記憶手段（Ｄ−ＦＦ）の出力のｍ＋１ビット以上のデータが一つ下位のビットのデータと異なり、且つ、第２の加算器の出力が決められた値となる場合を、クロックエッジとして、時間分解能（基準クロック周期／Ｎ）で変化する仮想シリアルクロック出力としている。ここで、第１の記憶手段（Ｄ−ＦＦ）の出力のｍ＋１ビット以上のデータが一つ下位のビットのデータと異なるか否かの判定は、図７中央上部の比較器で行われる。更に、第２の加算器の出力が決められた値となるか否かの判定は、図７右下部の比較器で行われる。図７に示す比較器では、“決められた値”を“０”としているが、例えば１かどうかを比較するものであってもよい。
【００３４】
図６に示すデジタルＰＬＬ１２の位相検出器（ＰＤ）２０は、Ｎ個の第２の加算器の出力を、時間分解能（基準クロック周期／Ｎ）の仮想シリアル出力として、仮想シリアル入力との位相差を基準クロック周期毎に位相差データとして検出する手段から成り、検出した位相差データを出力する。図８には、ＶＣＯ回路１８から出力する仮想出力クロックの位相情報ｐｈｄａｔ信号と仮想入力クロックｐａｒａｃｋ信号とで位相検出する様子、即ち、この位相検出器（ＰＤ）２０の動作例を示している。
更に、図６に示すデジタルＰＬＬ１２のループフィルター部は、
・上記の検出した位相差データを基準クロック周期毎にＫｓｙｓ倍する手段２２、
・上記の検出した位相差データを基準クロック周期毎にＫｌｏｏｐ倍する手段２４、
・Ｋｌｏｏｐ倍した位相差データを基準クロック周期毎に積算する手段２６、及び、
・位相差データをＫｓｙｓ倍した値と、Ｋｌｏｏｐ倍した位相差データを積算した値を基準クロック周期毎に加算する手段
を有する。そして、ループフィルター部は、ここでの加算結果をループフィルター出力としている。
【００３５】
更に、図６に示すデジタルＰＬＬ１２では、ＶＣＯ回路１８の入力データ（ｖｃｏｉｎ）としてループフィルター出力を接続することで、ＰＬＬのフィードバックループが形成される。そして、このデジタルＰＬＬ１２により、ＣＤＲ回路２は、ＶＣＯ回路１８の出力の仮想シリアルクロックを基準クロック周期毎のＮビットパラレルデータに並べ直すことができる。
【００３６】
図９は、図６乃至図８で示したデジタルＰＬＬ１２が、どのように動作するかの一例を各信号の数値の変化で示した図である。なお、位相ゲインに相当する“Ｋｓｙｓ”は１／１６倍、積分ゲインに相当する“Ｋｌｏｏｐ”は、１／６４倍として計算している。図９における１行が、１クロック周期に相当している。仮想入力クロックｐａｒａｃｋ信号の位相に速やかに追従して、仮想出力クロックｏｕｔ＿ｐａｒａｃｋ信号の位相は、ｐａｒａｃｋ信号の略中間位置になるように制御されることを示している。
【００３７】
図１０には、より解りやすくするために、横軸に時間ｔ、縦軸に位相検出器出力ｐｄｄａｔをとったグラフを示している。なお、図１０のグラフで、十分時間が経った後も、ｐｄｄａｔ信号が一定値に収束していない（このことは、一般に、ＰＬＬのハンチングと言われる）。これは、入力データを４相クロックの時間分解能で丸めること、及び、各種演算の有効桁数に限度があることにより発生するハンチング現象である。より多相のクロックを用い、より各種演算の有効桁数を多くとれば、このハンチングを小さくすることはできる。しかし、クロックデータリカバリーにおいては、出力クロックで入力データをサンプリング（一般に、打ち抜きと称する。）するだけであるので、誤打ち抜きしなければ、多少のハンチングがあっても問題にはならない。したがって、このような４相クロック程度の簡易な回路のものでも十分実用化可能である。
【００３８】
図１１は、図６乃至図１０で示したデジタルＰＬＬの伝達関数表現のブロック図である。このブロック図の一巡伝達関数Ｇ(s)は、
【数１】
2008235985.tif 000003
と表せる。ここで、簡単化のために、Ｋ＝Ｋｐｄ・Ｋｓｙｓ・Ｋｖｃｏ、ａ＝Ｋｌｏｏｐとおくと、
【数２】
2008235985.tif 000004
となる。
【００３９】
閉ループ伝達関数Ｈ(ｓ)は、
【数３】
2008235985.tif 000005
となる。ここで、
【数４】
2008235985.tif 000006
とおくと、
【数５】
2008235985.tif 000007
となり、よく知られた完全積分２次制御系の一般式となる。
ここで、ξは応答の減衰率（ダンピング定数）、ωｎは固有周波数と言われるものである。
【００４０】
また、代入式より、
【数６】
2008235985.tif 000008
【数７】
2008235985.tif 000009
となる。
即ち、Ｋ（＝Ｋｐｄ・Ｋｓｙｓ・Ｋｖｃｏ）及びａ（＝Ｋｌｏｏｐ）を適切に選べば安定なフィードバックループを構成できることを示している。
【００４１】
次に、図１２に、本発明に係るＥｌａｓｔｅｃＢｕｆｆｅｒ（エラスティックバッファ）１４の回路例を示す。図１３は、図１２に示すＳＤＯＳＥＬ回路３０の詳細な真理値表である。図１４（１）は、図１２に示すＥＬＣＢＵＦ部３２の詳細回路図である。図１４（２）は、図１２に示すＷｒｉｔｅＣｏｕｎｔｅｒ部３４の詳細回路図である。
【００４２】
図１２に示すＲｅａｄＣｏｕｎｔｅｒ部３６の詳細は示していないが、ＲＤＳＴＡＲＴ信号をイネーブル信号として、受信装置側基準クロック毎にインクリメントする単純なカウンター回路であれば良い。図１２に示すＳｅｌｅｃｔｅｒ３８は、ＲｅａｄＣｏｕｎｔｅｒ部３６の値によって、ｅｌｃｂｕｆ０〜ｋのいずれかを選択するセレクターである。
【００４３】
図１２に示すＷＲＳＴＡＲＴ信号は、転送データが始まった時アクティブになるような信号、例えば、アンスケルチ状態でアクティブになる信号でよい。また、ＲＤＳＴＡＲＴ信号は、ＷＲＳＴＡＲＴ信号でＷｒｉｔｅＣｏｕｎｔｅｒ部３４がカウント開始しＷｒｉｔｅＣｏｕｎｔｅｒ値がフルカウント値の半分になった時に、アクティブに変化する信号であればよい。
【００４４】
ここで、ＥｌａｓｔｅｃＢｕｆｆｅｒ１４のバッファの深さ（個数）は、インターフェース規格で定められている一度の転送で転送する最大データ数（ＵＳＢの場合はパケット長と言う。）送る時間で、送信装置側基準クロック周波数と受信装置側基準周波数の周波数偏差が規格上許される最大（ＵＳＢ２．０の場合は＋‐５００ｐｐｍ）あっても、バッファがフル又はエンプティにならないだけの深さにする。即ち、バッファの深さはＷｒｉｔｅＣｏｕｎｔｅｒ３４のフルカウント値であり、その半分になった時にＲｅａｄＣｏｕｎｔｅｒ３６をスタートさせるならば、
（１）「送信装置側基準クロック周波数＞受信装置側基準周波数」であっても、
（２）「送信装置側基準クロック周波数＜受信装置側基準周波数」であっても、
バッファがフル又はエンプティになることがないからである。
【００４５】
以上説明したように、本発明の第１の実施形態に係るＣＤＲ回路では、多相クロックでデータをサンプリングする部分の回路が、各相のクロックでサンプリングし所定周期毎のパラレルデータに変換するだけなので、多相クロック間の遅延量のあわせ込みが容易である。また、受信データを再生するための動作クロックが、受信装置側基準クロックのみであるので、大規模デジタルＬＳＩ設計で主流である同期設計手法が使用でき、設計検証をはじめ開発期間が短縮可能である。
【００４６】
なお、（Ｎ相の）Ｎは３以上の整数としているが、デジタル回路の構成上、２のｎ乗（４、８、１６、等）であるのが望ましい。
【００４７】
また、シリアルデータインターフェースのクロックデータリカバリーに使用するＰＬＬは、高々、送信側基準クロックと受信側基準クロックの周波数偏差を吸収するだけの変化範囲（ＰＬＬでは、“ロックレンジ”若しくは“キャプチャーレンジ”等と言う。）でよい。例えば、ＵＳＢ２．０規格では、＋−５００ｐｐｍ以内と規定されているので、最大でも周波数偏差は０．１％である。従って、本発明で使用するＮビットパラレルデータの種類を、上述のようにＮ＋２通りに限定しても、その変化範囲は十分である。このように、Ｎビットパラレルデータの種類をＮ＋２通りに限定することで、デジタルＰＬＬやエラスティックバッファの回路を簡単化することができる。
【００４８】
更に、本発明のデジタルＰＬＬは、受信装置側基準クロックＴ１で動作するにもかかわらず、時間分解能Ｔ２＝Ｔ１／Ｎの仮想的な出力を得ることができる。また、本発明のデジタルＰＬＬでは、一巡伝達関数を完全積分２次制御系の一般式とすることができるので、ＰＬＬ特性を自由に制御できる。
【００４９】
［第２の実施形態］
本発明の第２の実施形態に係るＣＤＲ回路は、本発明の第１の実施形態に係るＣＤＲ回路と略同様のものである。従って、両者の差異であるデジタルＰＬＬ回路を中心に説明する。
【００５０】
第１の実施形態に係るＣＤＲ回路で使用されるデジタルＰＬＬ回路の機能に加えて、第２の実施形態に係るＣＤＲ回路で使用されるデジタルＰＬＬ回路は、受信入力データの変化がない場合にも、受信側基準クロックから大きく外れることのない周波数で自走し、受信入力データの変化があった場合には、その位相に速やかにロックする。
【００５１】
即ち、図６に示すデジタルＰＬＬにおいて、Ｋｌｏｏｐ倍した位相差データを積算する手段２６の初期値を、基準クロック周期となる値としている。
【００５２】
一般にＰＬＬにおいて、受信入力データに変化が無い場合は、位相差データは位相差なしを出力するので、過去の位相差データを積算した値（一般に、ＰＬＬでは積分成分と言う。）のみで出力クロックが決まる。このことを、一般にＰＬＬでは“積分成分で自走する”と称する。本発明の第２の実施形態に係るＣＤＲ回路のデジタルＰＬＬにおいては、
過去の位相差データをＫｌｏｏｐ倍して積算した値の初期値を、基準クロック周期に相当する値とするので、受信入力データに変化が無い場合、受信装置側基準クロック周波数で自走することになる。
【００５３】
［第３の実施形態］
本発明の第３の実施形態に係るＣＤＲ回路は、本発明の第１の実施形態に係るＣＤＲ回路と略同様のものである。従って、両者の差異であるデジタルＰＬＬ回路を中心に説明する。
【００５４】
第１の実施形態に係るＣＤＲ回路で使用されるデジタルＰＬＬ回路の機能に加えて、第２の実施形態に係るＣＤＲ回路で使用されるデジタルＰＬＬ回路は、ノイズなどの影響で、突発的な入力データの変化があった場合にも、受信側基準クロックから大きく外れることがないものである。
【００５５】
即ち、デジタルＰＬＬ回路は、Ｋｌｏｏｐ倍した位相差データを積算する手段２６の出力値を、使用するシリアル転送規格の送信側基準クロック周波数と受信側基準クロック周波数との偏差の数倍程度に相当する値とする制限手段を備える。
【００５６】
一般にシリアルインターフェースに用いる基準クロックは、送信装置側、受信装置側ともに、かなり安定した周波数規格が要求される。従って、受信したデータから抽出されるクロックの周波数が突発的に大きく変化することは生じ得ない。本発明の第３の実施形態に係るＣＤＲ回路のデジタルＰＬＬにおいては、前記積分成分値に対して、実際に起り得る変動幅（規格上許される偏差に余裕を持たせて数倍程度）でリミットが掛けられる。従って、ノイズなどの影響で、突発的な入力データの変化があった場合にも、出力値は受信装置側基準クロックから大きく外れることはない。
【００５７】
［第４の実施形態］
本発明の第４の実施形態に係るＣＤＲ回路は、本発明の第１、２又は３の実施形態に係るＣＤＲ回路と略同様のものである。ここで、本発明の第４の実施形態に係る通信装置におけるシリアルデータインターフェースが、ＵＳＢ２．０規格である。
【００５８】
つまり、第１、２、又は３の実施形態に係るＣＤＲ回路は、代表的なシリアルデータインターフェース規格であるＵＳＢ２．０のクロックデータリカバリーにおいても全て利用することができる。
【００５９】
［第５の実施形態］
本発明の第５の実施形態に係るＣＤＲ回路は、本発明の第４の実施形態に係るＣＤＲ回路と略同様のものである。従って、両者の差異であるデジタルＰＬＬ回路を中心に説明する。
【００６０】
第１の実施形態に係るＣＤＲ回路で使用されるデジタルＰＬＬ回路の機能に加えて、第２の実施形態に係るＣＤＲ回路で使用されるデジタルＰＬＬ回路は、受信データ無しから有りへの変化（アンスケルチ状態への遷移）、及び、受信データ有りから無しへの変化（スケルチ状態への遷移）タイミングにおいて、出力クロックの位相乱れが生じないものである。
【００６１】
即ち、デジタルＰＬＬは、受信入力シリアルデータの変化が、「“６”×“基準クロック周期”」の間以上無い場合に、Ｎ個の加算手段の出力を時間分解能（基準クロック周期／Ｎ）の仮想シリアル出力として、（サンプリングデータのデータ変化点を示す）仮想シリアル入力との位相差をクロック周期毎に位相差データとして検出する手段の出力を、“位相差なし”データとする。
【００６２】
ＵＳＢ２．０は、一対の小振幅差動信号でデータを転送する規格である。従って、送信側と受信側とは転送するデータによって入れ替わる。また、転送するデータが無い場合は、無信号状態（スケルチ状態）となる。ここで、受信データ無しから有りへの変化（アンスケルチ状態への遷移）、及び受信データ有りから無しへの変化（スケルチ状態への遷移）タイミングにおいて、差動レシーバ出力だけでなく、スケルチ検出レシーバ出力をイネーブル信号として用いるのが一般的である。しかし、差動レシーバ出力の応答時間とスケルチ検出レシーバ出力の応答時間が同じであるということは生じ得ないので、アンスケルチ状態への遷移又はスケルチ状態への遷移タイミングに、ＰＬＬに入力される受信データの位相が乱れることになる。本発明の第５の実施形態に係るＣＤＲ回路のデジタルＰＬＬにおいては、この期間、位相差データとして検出する手段の出力を、“位相差なし”データとする。従って、出力クロックの位相乱れが生じない。
【００６３】
なお、ＵＳＢ２．０規格では、転送データ（パケット）の終わりを示すパターンは、７クロック周期以上変化のないデータパターンと定義されている。従って、本発明では、送信側と受信側の周波数偏差を考慮して、受信入力シリアルデータの変化が、「６×基準クロック周期」の間以上無い場合に、位相差検出データをマスクする（即ち、位相差なしデータとする）。
【図面の簡単な説明】
【００６４】
【図１】本発明の第１の実施形態に係るＣＤＲ回路のブロック図である。
【図２】４相クロックを用いた場合の高速サンプル回路の回路図である。
【図３】図２の高速サンプル回路の動作の一例を示すタイミングチャートである。
【図４】図４左部は、４相クロックを用いた場合のｐａｒａｃｋ信号が取り得るパターン６通りを示す図である。図４中部は、左部の６通りのパターンが、送信装置側基準クロックが受信装置側基準クロックより速い場合（ＣＫ４８０Ｍ＋α）、どのように出現するかの例を示している。図４右部は、左部の６通りのパターンが、送信装置側基準クロックが受信装置側基準クロックより遅い場合（ＣＫ４８０Ｍ−α）、どのように出現するかの例を示している。
【図５】図５左部は、８相クロックを用いた場合のｐａｒａｃｋ信号が取り得るパターン１０通りを示す図である。図５中部は、左部の１０通りのパターンが、送信装置側基準クロックが受信装置側基準クロックより速い場合（ＣＫ４８０Ｍ＋α）、どのように出現するかの例を示している。図５右部は、左部の１０通りのパターンが、送信装置側基準クロックが受信装置側基準クロックより遅い場合（ＣＫ４８０Ｍ−α）、どのように出現するかの例を示している。
【図６】本発明の第１の実施形態に係るデジタルＰＬＬの構成を示すブロック図である。
【図７】４相クロックを用いた場合のＶＣＯ回路の回路図例である。
【図８】ＶＣＯ回路から出力する仮想出力クロックの位相情報ｐｈｄａｔ信号と仮想入力クロックｐａｒａｃｋ信号とで位相検出する様子、即ち、位相検出器（ＰＤ）の動作例を示している。
【図９】図６乃至図８で示したデジタルＰＬＬが、どのように動作するかの一例を各信号の数値の変化で示した図である。
【図１０】横軸に時間ｔ、縦軸に位相検出器出力ｐｄｄａｔをとったグラフを示している。
【図１１】図６乃至図１０で示したデジタルＰＬＬの伝達関数表現のブロック図である。
【図１２】本発明に係るＥｌａｓｔｅｃＢｕｆｆｅｒブロックの回路例を示す。
【図１３】図１２に示すＳＤＯＳＥＬ回路３０の詳細な真理値表である。
【図１４】図１４（１）は、図１２に示すＥＬＣＢＵＦ部の詳細回路図である。図１４（２）は、図１２に示すＷｒｉｔｅＣｏｕｎｔｅｒ部の詳細回路図である。
【符号の説明】
【００６５】
２・・・クロックデータリカバリー回路、６・・・高速サンプル回路、８・・・Ｎ相アナログＰＬＬ、１０・・・デジタルフィルター、１２・・・デジタルＰＬＬ、１４・・・Ｅｌａｓｔｅｃ  Ｂｕｆｆｅｒ（エラスティックバッファ）。
【図１】
2008235985.tif 000010
【図２】
2008235985.tif 000011
【図３】
2008235985.tif 000012
【図４】
2008235985.tif 000013
【図５】
2008235985.tif 000014
【図６】
2008235985.tif 000015
【図７】
2008235985.tif 000016
【図８】
2008235985.tif 000017
【図９】
2008235985.tif 000018
【図１０】
2008235985.tif 000019
【図１１】
2008235985.tif 000020
【図１２】
2008235985.tif 000021
【図１３】
2008235985.tif 000022
【図１４】
2008235985.tif 000023