(57)【特許請求の範囲】
【請求項１】
第１のクロックの第１のタイミングで、入力データの振幅レベルの中央に相当する第１の閾値より大きい第２の閾値と、前記入力データとの第１の比較結果を出力する第１の比較回路と、
前記第１のタイミングで、前記第１の閾値より小さい第３の閾値と、前記入力データとの第２の比較結果を出力する第２の比較回路と、
前記第１のクロックに対し、位相がずれている第２のクロックの第２のタイミングで、前記入力データと、前記第１の閾値との第３の比較結果を出力する第３の比較回路と、
前記第１の比較結果、前記第２の比較結果及び前記第３の比較結果に基づき、前記入力データのエッジが、１ビット幅の時間における位相を３つの領域に分けたうちのどの領域に位置するか検出する位相検出部と、
前記位相検出部での検出結果の変化に基づき前記位相の回転方向を検出することで、前記入力データの第１の周波数に対して、前記第１のクロックまたは前記第２のクロックの第２の周波数が高いか低いかを検出する位相回転検出部と、
を有することを特徴とする周波数検出回路。
【請求項２】
前記３つの領域のうち、第１の領域は、第２の領域と第３の領域の間に、前記入力データのスルーレートと、前記第２の閾値と、前記第３の閾値とに基づく広さで設定される、ことを特徴とする請求項１に記載の周波数検出回路。
【請求項３】
前記位相回転検出部は、前記位相検出部での前記検出結果の変化から、前記エッジが同一の前記回転方向で前記３つの領域を跨る変化を検出したとき、前記回転方向に基づき、前記第２の周波数を変える信号を出力する、ことを特徴とする請求項１または２に記載の周波数検出回路。
【請求項４】
前記位相回転検出部は、前記位相検出部での前記検出結果を受ける度に、前記回転方向を検出していき、前記回転方向が変わるまでは、前記検出結果が変わらなくても、前記回転方向に基づき、前記第２の周波数を変える信号を出力し続ける、ことを特徴とする請求項１または２に記載の周波数検出回路。
【請求項５】
第１のクロックの第１のタイミングで、入力データの振幅レベルの中央に相当する第１の閾値より大きい第２の閾値と、前記入力データとの第１の比較結果を出力する第１の比較回路と、
前記第１のタイミングで、前記第１の閾値より小さい第３の閾値と、前記入力データとの第２の比較結果を出力する第２の比較回路と、
前記第１のクロックに対し、位相がずれている第２のクロックの第２のタイミングで、前記入力データと、前記第１の閾値との第３の比較結果を出力する第３の比較回路と、
前記第１の比較結果、前記第２の比較結果及び前記第３の比較結果に基づき、前記入力データのエッジが、１ビット幅の時間における位相を３つの領域に分けたうちのどの領域に位置するか検出する位相検出部と、
前記位相検出部での検出結果の変化に基づき前記位相の回転方向を検出することで、前記入力データの第１の周波数に対して、前記第１のクロックまたは前記第２のクロックの第２の周波数が高いか低いかを検出する位相回転検出部と、
前記第１のタイミングで、前記入力データと前記第１の閾値との第４の比較結果を出力する第４の比較回路と、
前記第３の比較結果及び前記第４の比較結果に基づき、前記入力データと前記第１のクロックまたは前記第２のクロックの位相差を検出する位相制御部と、
前記位相差と前記回転方向に基づき、前記第１のクロック及び前記第２のクロックを生成するクロック生成部と、
を有することを特徴とする受信回路。
【請求項６】
第１のクロックの第１のタイミングで、入力データの振幅レベルの中央に相当する第１の閾値より大きい第２の閾値と、前記入力データとの第１の比較結果を出力する第１の比較回路と、
前記第１のタイミングで、前記第１の閾値より小さい第３の閾値と、前記入力データとの第２の比較結果を出力する第２の比較回路と、
前記第１のクロックに対し、位相がずれている第２のクロックの第２のタイミングで、前記入力データと、前記第１の閾値との第３の比較結果を出力する第３の比較回路と、
前記第１の比較結果、前記第２の比較結果及び前記第３の比較結果に基づき、前記入力データのエッジが、１ビット幅の時間における位相を３つの領域に分けたうちのどの領域に位置するか検出する位相検出部と、
前記位相検出部での検出結果の変化に基づき前記位相の回転方向を検出することで、前記入力データの第１の周波数に対して、前記第１のクロックまたは前記第２のクロックの第２の周波数が高いか低いかを検出する位相回転検出部と、
前記第１の比較結果または前記第２の比較結果の何れかを第１のデータ判定結果として選択する際に、前記１ビット幅の時間前の第２のデータ判定結果に基づいて選択する選択部と、
前記第３の比較結果及び前記第１のデータ判定結果に基づき、前記入力データと前記第１のクロックまたは前記第２のクロックの位相差を検出する位相制御部と、
前記位相差と前記回転方向に基づき、前記第１のクロック及び前記第２のクロックを生成するクロック生成部と、
を有することを特徴とする受信回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、周波数検出回路及び受信回路に関する。
【背景技術】
【０００２】
近年、情報処理装置の性能向上に伴い、装置内外で送受信されるデータ信号のデータレートが高速化されてきている。
受信回路では、伝送されてきたデータ信号から、データとクロックを再生するＣＤＲ（Clock and Data Recovery）が行われる。
【０００３】
ＣＤＲの手法の１つとして、リファレンスクロックの位相を補間してサンプリングクロックを生成し、そのサンプリングクロックを用いてデータの再生を行う手法がある。この手法では、精度のよいリファレンスクロックを用いることで、高精度の位相調整が可能となるが、精度のよいリファレンスクロックを生成するためのクロック源を用いるため、コストや回路規模が増大する。
【０００４】
一方、リファレンスクロックを用いず、入力データから再生したクロックを用いてデータのサンプリングを行い、ジッタが削減されたデータを出力する手法がある。この手法では、クロックと入力データとの位相差や周波数差を検出し、クロックの調整が行われる。ここで、クロックの位相は、１ＵＩ（Unit Interval）区間に２回のサンプリングを行う２ｘサンプリング方式を用いて検出される。一方、クロックの周波数は、１ＵＩに４回のサンプリングを行う４ｘサンプリング方式を用いて検出される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−２１４８２５号公報
【特許文献２】特開２００４−１５３３９６号公報
【特許文献３】米国特許第６０５５２８６号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
リファレンスクロックを用いないＣＤＲでは、上記のような４ｘサンプリング方式で周波数を検出すると、サンプリングを行う回路の面積が比較的大きいものになってしまう。
【課題を解決するための手段】
【０００７】
発明の一観点によれば、第１のクロックの第１のタイミングで、入力データの振幅レベルの中央に相当する第１の閾値より大きい第２の閾値と、前記入力データとの第１の比較結果を出力する第１の比較回路と、前記第１のタイミングで、前記第１の閾値より小さい第３の閾値と、前記入力データとの第２の比較結果を出力する第２の比較回路と、前記第１のクロックに対し、位相がずれている第２のクロックの第２のタイミングで、前記入力データと、前記第１の閾値との第３の比較結果を出力する第３の比較回路と、前記第１の比較結果、前記第２の比較結果及び前記第３の比較結果に基づき、前記入力データのエッジが、１ビット幅の時間における位相を３つの領域に分けたうちのどの領域に位置するか検出する位相検出部と、前記位相検出部での検出結果の変化に基づき前記位相の回転方向を検出することで、前記入力データの第１の周波数に対して、前記第１のクロックまたは前記第２のクロックの第２の周波数が高いか低いかを検出する位相回転検出部と、を有する周波数検出回路が提供される。
【０００８】
また、発明の一観点によれば、第１のクロックの第１のタイミングで、入力データの振幅レベルの中央に相当する第１の閾値より大きい第２の閾値と、前記入力データとの第１の比較結果を出力する第１の比較回路と、前記第１のタイミングで、前記第１の閾値より小さい第３の閾値と、前記入力データとの第２の比較結果を出力する第２の比較回路と、前記第１のクロックに対し、位相がずれている第２のクロックの第２のタイミングで、前記入力データと、前記第１の閾値との第３の比較結果を出力する第３の比較回路と、前記第１の比較結果、前記第２の比較結果及び前記第３の比較結果に基づき、前記入力データのエッジが、１ビット幅の時間における位相を３つの領域に分けたうちのどの領域に位置するか検出する位相検出部と、前記位相検出部での検出結果の変化に基づき前記位相の回転方向を検出することで、前記入力データの第１の周波数に対して、前記第１のクロックまたは前記第２のクロックの第２の周波数が高いか低いかを検出する位相回転検出部と、前記第１のタイミングで、前記入力データと前記第１の閾値との第４の比較結果を出力する第４の比較回路と、前記第３の比較結果及び前記第４の比較結果に基づき、前記入力データと前記第１のクロックまたは前記第２のクロックの位相差を検出する位相制御部と、前記位相差と前記回転方向に基づき、前記第１のクロック及び前記第２のクロックを生成するクロック生成部と、を有する受信回路が提供される。
【０００９】
また、発明の一観点によれば、第１のクロックの第１のタイミングで、入力データの振幅レベルの中央に相当する第１の閾値より大きい第２の閾値と、前記入力データとの第１の比較結果を出力する第１の比較回路と、前記第１のタイミングで、前記第１の閾値より小さい第３の閾値と、前記入力データとの第２の比較結果を出力する第２の比較回路と、前記第１のクロックに対し、位相がずれている第２のクロックの第２のタイミングで、前記入力データと、前記第１の閾値との第３の比較結果を出力する第３の比較回路と、前記第１の比較結果、前記第２の比較結果及び前記第３の比較結果に基づき、前記入力データのエッジが、１ビット幅の時間における位相を３つの領域に分けたうちのどの領域に位置するか検出する位相検出部と、前記位相検出部での検出結果の変化に基づき前記位相の回転方向を検出することで、前記入力データの第１の周波数に対して、前記第１のクロックまたは前記第２のクロックの第２の周波数が高いか低いかを検出する位相回転検出部と、前記第１の比較結果または前記第２の比較結果の何れかを第１のデータ判定結果として選択する際に、前記１ビット幅の時間前の第２のデータ判定結果に基づいて選択する選択部と、前記第３の比較結果及び前記第１のデータ判定結果に基づき、前記入力データと前記第１のクロックまたは前記第２のクロックの位相差を検出する位相制御部と、前記位相差と前記回転方向に基づき、前記第１のクロック及び前記第２のクロックを生成するクロック生成部と、を有する受信回路が提供される。
【発明の効果】
【００１０】
開示の周波数検出回路及び受信回路によれば、回路面積の増大を抑制できる。
【図面の簡単な説明】
【００１１】
【図１】第１の実施の形態の周波数検出回路の一例を示す図である。
【図２】位相検出部が実現する真理値表の一例を示す図である。
【図３】入力データのエッジが領域Ａに位置する場合の一例を示す図である。
【図４】入力データのエッジが領域Ｂに位置する場合の一例を示す図である。
【図５】入力データのエッジが領域Ｃに位置する場合の一例を示す図である。
【図６】位相回転検出部による周波数制御の一例を示す図である。
【図７】受信回路の比較例を示す図である。
【図８】入力データとサンプリングタイミングの関係の一例を示す図である。
【図９】位相回転の一例を示す図である。
【図１０】受信回路の一例を示す図である。
【図１１】位相制御部の一例を示す図である。
【図１２】位相制御部が実現する真理値表の一例を示す図である。
【図１３】“＋１”となる位相情報ＰＨUDが出力される場合の、データ信号と比較結果及び判定データの関係の一例を示す図である。
【図１４】“−１”となる位相情報ＰＨUDが出力される場合の、データ信号と比較結果及び判定データの関係の一例を示す図である。
【図１５】周波数制御部の一例を示す図である。
【図１６】位相回転検出部による周波数制御の一例を示す図である。
【図１７】位相回転検出部の周波数制御方法の一例を示す状態遷移図である。
【図１８】受信回路の他の例を示す図である。
【図１９】選択部の一例を示す図である。
【図２０】周波数検出回路の変形例を示す図である。
【発明を実施するための形態】
【００１２】
以下、発明を実施するための形態を、図面を参照しつつ説明する。
（第１の実施の形態）
図１は、第１の実施の形態の周波数検出回路の一例を示す図である。
【００１３】
周波数検出回路１は、比較回路２，３，４、周波数制御部５を有する。
比較回路２は、サンプリングクロック（以下単にクロックという）ＣＬＫ０のタイミングで、入力データＤiと閾値ＶHとの比較を行い、その比較結果ＤHを出力する。閾値ＶHは、入力データＤiの振幅レベルの中央に相当する閾値Ｖ0より大きい閾値である。
【００１４】
例えば、比較回路２は、入力データＤiが、閾値ＶHより大きい場合は“１”となる比較結果ＤHを出力し、閾値ＶHより小さい場合は“０”となる比較結果ＤHを出力する。
比較回路３は、比較回路２での比較タイミングと同じタイミングで、入力データＤiと閾値ＶLとの比較を行い、その比較結果ＤLを出力する。閾値ＶLは、閾値Ｖ0より小さい閾値である。
【００１５】
例えば、比較回路３は、入力データＤiが、閾値ＶLより大きい場合は“１”となる比較結果ＤLを出力し、閾値ＶLより小さい場合は“０”となる比較結果ＤLを出力する。
比較回路４は、クロックＣＬＫ１８０のタイミングで、入力データＤiと閾値Ｖ0との比較を行い、その比較結果Ｅを出力する。
【００１６】
例えば、比較回路４は、入力データＤiが、閾値Ｖ0より大きい場合は“１”となる比較結果Ｅを出力し、閾値Ｖ0より小さい場合は“０”となる比較結果Ｅを出力する。
なお、クロックＣＬＫ０，ＣＬＫ１８０は、入力データＤiに基づき、例えば、後述のＶＣＯ（Voltage Controlled Oscillator）によって生成される。クロックＣＬＫ１８０は、クロックＣＬＫ０に対して位相がずれている。例えば、クロックＣＬＫ１８０の立ち上がり（または立ち下り）タイミングは、クロックＣＬＫ０の立ち上がり（または立ち下り）タイミングから１ビット幅の時間（以下１ＵＩという）の半分だけずれている。入力データＤiのデータレート（ボーレート）に対応する周波数（ボー周波数）で処理が行われる場合、クロックＣＬＫ１８０は、クロックＣＬＫ０に対して、１８０度の位相差がある。また、入力データＤiの周波数は、重畳されたクロックに基づくものとなっており、この周波数にクロックＣＬＫ０，ＣＬＫ１８０の周波数を一致させることで、クロックが再生される。
【００１７】
周波数制御部５は、位相検出部６、位相回転検出部７を有する。
位相検出部６は、比較結果ＤH，ＤL，Ｅに基づき、入力データＤiのエッジが、入力データＤiの１ＵＩにおける位相を３つの領域に分けたうちのどの領域に位置するか検出する。以下では、１ＵＩにおける位相の３つの領域を、それぞれ、領域Ａ，Ｂ，Ｃとする。
【００１８】
図１には、領域Ａ，Ｂ，Ｃの設定例が示されている。横軸は時間を示し、縦軸は入力データの振幅レベルを示している。タイミングｔ１，ｔ３は、クロックＣＬＫ１８０の立ち上がり（または立ち下がり）タイミングであり、タイミングｔ２は、クロックＣＬＫ０の立ち上がり（または立ち下がり）タイミングである。
【００１９】
領域Ａは、領域Ｃの終点を始点とし、クロックＣＬＫ１８０のタイミングｔ１，ｔ３を終点とする範囲である。領域Ｂは、クロックＣＬＫ１８０のタイミングｔ１，ｔ３（領域Ａの終点）を始点とし、領域Ｃの始点を終点とする範囲である。図１の例では、領域Ｂの始点及び領域Ａの終点の位相を０度としている。
【００２０】
領域Ｃは、領域Ａ，Ｂの間に、クロックＣＬＫ０のタイミングｔ２を中心にした範囲で設定されている。領域Ｃの広さは、入力データＤiのスルーレートと上記の閾値ＶH，ＶLに応じて変化する。例えば、入力データＤiの、スルーレートが小さいと領域Ｃは広くなり、スルーレートが大きいと領域Ｃは狭くなる。また、例えば、閾値ＶHが大きいほど、または閾値ＶLが小さいほど、領域Ｃは広くなり、その逆では、領域Ｃは狭くなる。領域Ｃの広さに応じて、領域Ａ，Ｂの広さも変わる。
【００２１】
ここで、領域Ｃの広さに応じて検出可能なクロックＣＬＫ０，ＣＬＫ１８０の周波数の範囲や検出率が変化する。領域Ｃが狭すぎると、クロックＣＬＫ０，ＣＬＫ１８０の周波数が変化しても領域Ａ〜Ｃ間を跨ぐ変化（位相の回転）が検出されない可能性があるためである。そのため、入力データＤiのスルーレート等の特性に応じて、比較回路２，３の閾値ＶH，ＶLを設定し、領域Ｃの範囲を設定することで、所望の周波数の検出率を実現することができる。
【００２２】
位相検出部６は、比較結果ＤH，ＤL，Ｅに基づき、例えば、後述のような真理値表（図２参照）の関係から、上記のような領域Ａ〜Ｃのどこに、入力データＤiのエッジが位置するか検出する。
【００２３】
位相検出部６は、例えば、入力データＤiのエッジが、領域Ａにいると検出した場合は“１”となる信号ＰＨAを、領域Ｂにいると検出した場合は“１”となる信号ＰＨBを、領域Ｃにいると検出した場合は“１”となる信号ＰＨCを出力する。
【００２４】
位相回転検出部７は、位相検出部６の検出結果の変化に基づき、入力データＤiの位相の回転方向を検出することで、入力データＤiの周波数に対して、クロックＣＬＫ０，ＣＬＫ１８０の周波数が高いか低いかを検出する。
【００２５】
位相回転検出部７は、例えば、位相検出部６から出力される信号ＰＨA，ＰＨB，ＰＨCの状態の変化から、入力データＤiに対するクロックＣＬＫ０，ＣＬＫ１８０の位相の回転方向を検出する。この回転方向から、入力データＤiの周波数と、クロックＣＬＫ０，ＣＬＫ１８０の周波数との差を検出する。位相の回転方向により、入力データＤiの周波数に対して、クロックＣＬＫ０，ＣＬＫ１８０の周波数が高いのか低いのかがわかる（その理由は後述する）。位相回転検出部７は、検出結果に基づき、クロックＣＬＫ０，ＣＬＫ１８０の周波数を制御する周波数情報ＦＲUDを出力する。
【００２６】
なお、図１において、周波数制御部５等に入力される制御用のクロックについては図示を省略している。また、周波数情報ＦＲUDに基づく周波数のクロックＣＬＫ０，ＣＬＫ１８０を生成する部分についても図示を省略している。
【００２７】
以下、本実施の形態の周波数検出回路１の動作例を説明する。
（周波数検出回路の動作例）
まず、比較回路２，３は、クロックＣＬＫ０のタイミングで、それぞれ、入力データＤiと閾値ＶH，ＶLとの比較を行い、その比較結果ＤH，ＤLを出力する。また、比較回路４は、クロックＣＬＫ１８０のタイミングで、入力データＤiと閾値Ｖ0との比較を行い、その比較結果Ｅを出力する。
【００２８】
例えば、比較回路４は、クロックＣＬＫ１８０のタイミングｔ１，ｔ３で、入力データＤiと閾値Ｖ0との比較を行う。また、例えば、比較回路２，３は、クロックＣＬＫ０のタイミングｔ２で、それぞれ、入力データＤiと閾値ＶH，ＶLとの比較を行う。
【００２９】
その後、位相検出部６は、比較結果ＤH，ＤL，Ｅから、例えば、以下に示す真理値表を実現する演算を行い、入力データＤiのエッジが、領域Ａ，Ｂ，Ｃのどの領域に位置するか検出し、信号ＰＨA，ＰＨB，ＰＨCを出力する。
【００３０】
図２は、位相検出部が実現する真理値表の一例を示す図である。
比較結果Ｅ，ＤH，ＤLの添え字ｎは、時系列を示している。例えば、比較結果Ｅn-1は、比較結果Ｅnに対して１ＵＩ前の比較結果Ｅであることを示している。また、図２に示す真理値表には、６通りの比較結果Ｅn-1，ＤHn，ＤLn，Ｅnの値の組み合わせに対応して出力される、信号ＰＨA，ＰＨB，ＰＨCの値が示されている。以下、それぞれ“１”となる信号ＰＨA，ＰＨB，ＰＨCが出力される入力データＤiのエッジの状態の一例について説明する。
【００３１】
図３は、入力データのエッジが領域Ａに位置する場合の一例を示す図である。
図３には、入力データＤiが領域Ａにおいて、“０”から“１”へと遷移する場合の波形が示されている。このような波形では、比較結果Ｅn-1，ＤH，ＤLは“０”となり、比較結果Ｅnは“１”となる。このとき、図２に示す真理値表から、信号ＰＨAが“１”となり、入力データＤiのエッジが領域Ａに位置すると検出される。
【００３２】
なお、入力データＤiが領域Ａにおいて、“１”から“０”へと遷移する場合は、比較結果Ｅn-1，ＤH，ＤLは“１”となり、比較結果Ｅnは“０”となる。このとき、図２に示す真理値表のように、信号ＰＨAが“１”となり、上記と同様に、入力データＤiのエッジが領域Ａに位置すると検出される。
【００３３】
図４は、入力データのエッジが領域Ｂに位置する場合の一例を示す図である。
図４には、入力データＤiが領域Ｂにおいて、“０”から“１”へと遷移する場合の波形が示されている。このような波形では、比較結果Ｅn-1は“０”となり、比較結果ＤH，ＤL，Ｅnは“１”となる。このとき、図２に示す真理値表から、信号ＰＨBが“１”となり、入力データＤiのエッジが領域Ｂに位置すると検出される。
【００３４】
なお、入力データＤiが領域Ｂにおいて、“１”から“０”へと遷移する場合は、比較結果Ｅn-1は“１”となり、比較結果ＤH，ＤL，Ｅnは“０”となる。このとき、図２に示す真理値表のように、信号ＰＨBが“１”となり、上記と同様に、入力データＤiのエッジが領域Ｂに位置すると検出される。
【００３５】
図５は、入力データのエッジが領域Ｃに位置する場合の一例を示す図である。
図５には、入力データＤiが領域Ｃにおいて、“０”から“１”へと遷移する場合の波形が示されている。このような波形では、比較結果Ｅn-1は“０”となり、比較結果Ｅnは“１”となる。さらに、比較結果ＤH，ＤLは、比較の際の入力データＤiの電位レベルが閾値ＶLより高く閾値ＶHより低いため、それぞれ、“０”，“１”となる。このとき、図２に示す真理値表から、信号ＰＨCが“１”となり、入力データＤiのエッジが領域Ｃに位置すると検出される。
【００３６】
なお、入力データＤiが領域Ｃにおいて、“１”から“０”へと遷移する場合は、比較結果Ｅn-1は“１”となり、比較結果Ｅnは“０”となる。さらに、比較結果ＤH，ＤLは、比較の際の入力データＤiの電位レベルが閾値ＶLより高く閾値ＶHより低いため、それぞれ、“１”，“０”となる。このとき、図２に示す真理値表から、信号ＰＨCが“１”となり、入力データＤiのエッジが領域Ｃに位置すると検出される。
【００３７】
なお、位相検出部６は、図２に示す６通りの比較結果Ｅn-1，ＤHn，ＤLn，Ｅnの値の組み合わせ以外を検出した場合は、“０”を出力する。
次に、位相回転検出部７は、信号ＰＨA〜ＰＨCの変化に基づいて、クロックＣＬＫ０，ＣＬＫ１８０の位相の回転方向を検出する。例えば、位相回転検出部７は、以下に示す表を実現する演算を行い、位相の回転方向に基づく周波数情報ＦＲUDを出力する。
【００３８】
図６は、位相回転検出部による周波数制御の一例を示す図である。
図６に示す表には、信号ＰＨA〜ＰＨCの変化前の状態（以下、前の状態と表記する）と、信号ＰＨA〜ＰＨCの変化後の状態（以下、今の状態と表記する）に対応して出力される周波数情報ＦＲUDが示されている。なお、図６に示す表の、“前の状態”は、“今の状態”より、１ＵＩ以上前の状態であってもよい。例えば、“前の状態”が“ＰＨB＝１”で、“今の状態”が“ＰＨC＝１”の場合、“今の状態”である“ＰＨC＝１”の前に、複数回の“１”となる信号ＰＨBが入力されていてもよい。
【００３９】
図６の表に示すように、入力される信号ＰＨA〜ＰＨCの、“前の状態”が“ＰＨB＝１”で、“今の状態”が“ＰＨC＝１”であるとする。このとき、クロックＣＬＫ０，ＣＬＫ１８０の位相の回転方向は、図１に示すように、領域Ｂから領域Ｃである。これは、時間とともに入力データＤiに対するクロックＣＬＫ０，ＣＬＫ１８０の位相が遅れていく状態であり、クロックＣＬＫ０，ＣＬＫ１８０の周期が１ＵＩより長い状態である。つまり、入力データＤiに対してクロックＣＬＫ０，ＣＬＫ１８０の周波数が低い状態となる。そのため、位相回転検出部７は、クロックＣＬＫ０，ＣＬＫ１８０の周波数を上げるために“＋１”となる周波数情報ＦＲUDを出力する。
【００４０】
“前の状態”が“ＰＨC＝１”で、“今の状態”が“ＰＨA＝１”であるときは、クロックＣＬＫ０，ＣＬＫ１８０の位相の回転方向は、図１に示すように、領域Ｃから領域Ａである。このときも同様に、入力データＤiに対してクロックＣＬＫ０，ＣＬＫ１８０の周波数が低い状態となる。そのため、位相回転検出部７は、クロックＣＬＫ０，ＣＬＫ１８０の周波数を上げるために“＋１”となる周波数情報ＦＲUDを出力する。
【００４１】
一方、図６の表に示すように、信号ＰＨA〜ＰＨCの、“前の状態”が“ＰＨA＝１”で、“今の状態”が“ＰＨC＝１”であるとする。このとき、クロックＣＬＫ０，ＣＬＫ１８０の位相の回転方向は、図１に示すように、領域Ａから領域Ｃである。これは、時間とともに入力データＤiに対するクロックＣＬＫ０，ＣＬＫ１８０の位相が早くなっていく状態であり、クロックＣＬＫ０，ＣＬＫ１８０の周期が１ＵＩより短い状態である。つまり、入力データＤiに対してクロックＣＬＫ０，ＣＬＫ１８０の周波数が高い状態となる。そのため、位相回転検出部７は、クロックＣＬＫ０，ＣＬＫ１８０の周波数を下げるために“−１”となる周波数情報ＦＲUDを出力する。
【００４２】
“前の状態”が“ＰＨC＝１”で、“今の状態”が“ＰＨB＝１”であるときは、クロックＣＬＫ０，ＣＬＫ１８０の位相の回転方向は、図１に示すように、領域Ｃから領域Ｂである。このときも同様に、入力データＤiに対してクロックＣＬＫ０，ＣＬＫ１８０の周波数が高い状態となる。そのため、位相回転検出部７は、クロックＣＬＫ０，ＣＬＫ１８０の周波数を下げるために“−１”となる周波数情報ＦＲUDを出力する。
【００４３】
また、位相回転検出部７は、入力される信号ＰＨA〜ＰＨCが、上記の組み合わせ以外（Ｏｔｈｅｒ）である場合は周波数情報ＦＲUDを“０”とする。なお、位相回転検出部７は、周波数情報ＦＲUDの“＋１”、“−１”、“０”を、２ビット値として出力するようにしてもよい。
【００４４】
また、入力データＤiは、等化処理を行った後に、比較回路２〜４に入力してもよい。
また、位相回転検出部７は、信号ＰＨA〜ＰＨCの状態を、図示しない記憶部に保持しておき、図６に示す“前の状態”として用いることもできる。このような場合に信号ＰＨA〜ＰＨCの状態が変化したとき、信号ＰＨA〜ＰＨCの状態の変化後の“今の状態”を、記憶部の“前の状態”として更新して用いることができる。
【００４５】
以下、本実施の形態の周波数検出回路１の効果を説明する前に、１ＵＩ区間に４回のサンプリングを行い、データ信号とクロックの周波数差を検出する受信回路の例を比較例として説明する。
【００４６】
（比較例）
図７は、受信回路の比較例を示す図である。また、図７において、位相周波数制御部１３等に入力される制御用のクロックについては図示を省略している。
【００４７】
受信回路１０は、バッファ１１、比較回路１２、位相周波数制御部１３、ＱＶＣＯ（Quadrature Voltage Controlled Oscillator）１６、フィルタ１５、ＣＰ（チャージポンプ）１４を有する。
【００４８】
バッファ１１は、入力データＤiに対して等化処理を行う。
比較回路１２は、位相周波数制御部１３において再生されたクロックのサンプリングタイミングで、バッファ１１から出力されるデータ信号と、データ信号の振幅レベルの中央に相当する閾値との比較を行い、その比較結果を、判定データＤОとして出力する。
【００４９】
例えば、比較回路１２は、データ信号が、データ信号の振幅レベルの中央に相当する閾値より、高い場合は“１”となる判定データＤОを出力し、低い場合は“０”となる判定データＤОを出力する。
【００５０】
位相周波数制御部１３は、ＱＶＣＯ１６から出力される４相のクロックを用いて、クロックとバッファ１１から出力されるデータ信号の位相差及び周波数差を検出する。さらに、位相周波数制御部１３は、クロックの位相を制御するための位相情報ＰＨUDと、クロックの周波数を制御するための周波数情報ＦＲUDを、ＣＰ１４に出力する。
【００５１】
ＣＰ１４は、入力される位相情報ＰＨUD、周波数情報ＦＲUDに応じて電流値を調整し、さらに、フィルタ１５は、ＣＰ１４が調整した電流値を電圧値に変換して制御電圧Ｖｃｔｒｌを出力する。
【００５２】
ＱＶＣＯ１６は、制御電圧Ｖｃｔｒｌの電圧値に応じて、発振周波数を変化させた４相のクロックを出力する。
（比較例の動作例）
以下、受信回路１０の動作例について説明する。
【００５３】
図８は、入力データとサンプリングタイミングの関係の一例を示す図、図９は、位相回転の一例を示す図である。なお、図８、図９において、１象限は０度から９０度までの範囲、２象限は９０度から１８０までの範囲、３象限は１８０度から２７０度までの範囲、４象限は２７０度から３６０度までの範囲とする。
【００５４】
図８には、データ信号とクロックの周波数差を検出するために、位相周波数制御部１３が行うサンプリングタイミングｔ１１，ｔ１２，ｔ１３，ｔ１４が示されている。
このような受信回路１０では、データ信号のエッジが１〜４象限のどこにいるかを検出するために、１ＵＩ区間に４回のサンプリングが行われ、データ信号とクロックの周波数差が検出される。
【００５５】
例えば、データ信号のエッジが２象限にいることが検出され、その後、データ信号のエッジが３象限にいることが検出されたとする。このときのクロックの位相の回転方向は、図９に示すように、２象限から３象限の方向である。これは、時間とともにデータ信号に対するクロックの位相が遅れていく状態であり、クロックの周波数が１ＵＩより長い状態、つまり、データ信号に対してクロックの周波数が低い状態である。そのため、クロックの周波数を上げるために“＋１”となる周波数情報ＦＲUDが出力される。
【００５６】
一方、例えば、データ信号のエッジが３象限にいることが検出され、その後、データ信号のエッジが２象限にいることが検出されたとする。このときのクロックの位相の回転方向は、図９に示すように、クロックの位相が３象限から２象限の方向である。これは、時間とともにデータ信号に対するクロックの位相が早くなっていく状態であり、クロックの周期が１ＵＩより短い状態、つまり、データ信号に対するクロックの周波数が高い状態である。そのため、クロックの周波数を下げるために“−１”となる周波数情報ＦＲUDが出力される。
【００５７】
このように受信回路１０では、４相のクロックを用いた４回のサンプリングにより、クロックの位相の回転方向を検出し、データ信号に対するクロックの周波数差を検出する。このため、４回のサンプリングに伴う判定回路や、４相のクロックを生成する回路ブロック等により、回路面積が増大してしまう。
【００５８】
これに対し、本実施の形態の周波数検出回路１は、２相のクロックＣＬＫ０，ＣＬＫ１８０を用いた２回のサンプリングと３回の比較判定で、入力データＤiに対し、クロックＣＬＫ０，ＣＬＫ１８０の周波数が高いか低いかを検出できる。このため、サンプリング数を減らせ、クロックの増加に伴う回路等を削減することができ、回路面積の増大を抑制することができる。また、回路を削減することができることから、消費電力を削減することができる。
【００５９】
（第２の実施の形態）
以下、第２の実施の形態として、上記のような周波数検出回路１を適用した受信回路の一例を説明する。
【００６０】
図１０は、受信回路の一例を示す図である。
図１に示した周波数検出回路１と同様の要素については同一符号を付し、その説明を省略する。また、図１０において、周波数制御部５ａ等に入力される制御用のクロックについては図示を省略している。
【００６１】
受信回路２０は、バッファ２１、比較回路２，３，４，２２、周波数制御部５ａ、位相制御部２３、ＣＰ２４、フィルタ２５、ＶＣＯ２６を有する。
バッファ２１は、入力データＤiに対して等化処理を行う。
【００６２】
比較回路２２は、クロックＣＬＫ０のタイミングで、バッファ２１から出力されるデータ信号と、データ信号の振幅レベルの中央に相当する閾値との比較を行い、その比較結果を、判定データＤОとして出力する。
【００６３】
例えば、比較回路２２は、データ信号が、データ信号の振幅レベルの中央に相当する閾値より高い場合は“１”となる判定データＤОを出力し、その閾値より低い場合は“０”となる判定データＤОを出力する。
【００６４】
位相制御部２３は、判定データＤО、比較結果Ｅから、データ信号とクロックＣＬＫ０，ＣＬＫ１８０の位相差を検出し、クロックＣＬＫ０，ＣＬＫ１８０の位相を制御するために、位相情報ＰＨUDを出力する。
【００６５】
周波数制御部５ａは、比較結果ＤH，ＤL，Ｅから、データ信号とクロックＣＬＫ０，ＣＬＫ１８０の周波数差を検出し、クロックＣＬＫ０，ＣＬＫ１８０の周波数を制御するために、周波数情報ＦＲUDを出力する。
【００６６】
ＣＰ２４は、入力される位相情報ＰＨUD、周波数情報ＦＲUDに応じて電流値を調整し、さらに、フィルタ２５は、ＣＰ２４が調整した電流値を電圧値に変換して制御電圧Ｖｃｔｒｌを出力する。
【００６７】
ＶＣＯ２６は、クロック生成部として機能し、制御電圧Ｖｃｔｒｌの電圧値に応じて発振周波数を変え、２相のクロックＣＬＫ０，ＣＬＫ１８０を出力する。
（位相制御部の一例）
図１１は、位相制御部の一例を示す図である。
【００６８】
位相制御部２３は、ＸＯＲ回路２７，２８、演算部２９を有する。
ＸＯＲ回路２７，２８に入力される比較結果Ｅ、判定データＤОの添え字ｎは、時系列を示している。例えば、判定データＤОn-1は、判定データＤОnに対して１ＵＩ前の判定データＤОであることを示している。
【００６９】
ＸＯＲ回路２７は、判定データＤОnと比較結果ＥnとのＸＯＲ演算を行い、その演算結果を演算部２９に出力する。
ＸＯＲ回路２８は、判定データＤОn-1と比較結果ＥnとのＸＯＲ演算を行い、その演算結果を演算部２９に出力する。
【００７０】
演算部２９は、ＸＯＲ回路２７から出力される演算結果と、ＸＯＲ回路２８から出力される演算結果に基づき、例えば、以下のような真理値表を実現する演算を行い、位相情報ＰＨUDを出力する。
【００７１】
（位相制御部の動作例）
図１２は、位相制御部が実現する真理値表の一例を示す図である。
図１２に示す真理値表には、４通りの判定データＤОn-1、比較結果Ｅn、判定データＤОnの値の組み合わせに対応して出力される位相情報ＰＨUDが示されている。
【００７２】
以下、位相情報ＰＨUDとして“＋１”または“−１”が出力される場合の、データ信号とクロックＣＬＫ０，ＣＬＫ１８０の関係の一例を説明する。
図１３は、“＋１”となる位相情報ＰＨUDが出力される場合の、データ信号と比較結果及び判定データの関係の一例を示す図である。
【００７３】
図１３には、データ信号が“０”から“１”へと遷移する場合のデータ信号の波形が示されている。
データ信号に対してクロックＣＬＫ０，ＣＬＫ１８０の位相が遅れていると、図１３に示すように、判定データＤОn-1が“０”となり、比較結果Ｅnと判定データＤОnが同一の値の“１”となる。この場合、クロックＣＬＫ０，ＣＬＫ１８０の位相を進ませるため、図１２に示す真理値表のように、“＋１”となる位相情報ＰＨUDが出力される。
【００７４】
また、データ信号が“１”から“０”へと遷移する場合であって、データ信号に対してクロックＣＬＫ０，ＣＬＫ１８０の位相が遅れている場合には、判定データＤОn-1が“１”となり、比較結果Ｅnと判定データＤОnが同一の値の“０”となる。この場合も、図１２に示す真理値表のように、クロックＣＬＫ０，ＣＬＫ１８０の位相を進ませるために、“＋１”となる位相情報ＰＨUDが出力される。
【００７５】
図１４は、“−１”となる位相情報ＰＨUDが出力される場合の、データ信号と比較結果及び判定データの関係の一例を示す図である。
図１４には、データ信号が“１”から“０”へと遷移する場合のデータ信号の波形が示されている。
【００７６】
データ信号に対してクロックＣＬＫ０，ＣＬＫ１８０の位相が進んでいると、図１３に示すように、データ信号の遷移前の判定データＤОn-1、比較結果Ｅnが同一の値の“１”となり、データ信号の遷移後の判定データＤОnが“０”となる。この場合、クロックＣＬＫ０，ＣＬＫ１８０の位相を遅らせるため、図１２に示す真理値表のように、“−１”となる位相情報ＰＨUDが出力される。
【００７７】
また、データ信号が“０”から“１”へと遷移する場合であって、データ信号に対してクロックＣＬＫ０，ＣＬＫ１８０の位相が進んでいる場合には、判定データＤОn-1、比較結果Ｅnが同一の値の“０”となり、判定データＤОnが“１”となる。この場合も、図１２に示す真理値表のように、クロックＣＬＫ０，ＣＬＫ１８０の位相を遅らせるために、“−１”となる位相情報ＰＨUDが出力される。
【００７８】
また、位相制御部２３は、判定データＤОn-1、比較結果Ｅn、判定データＤОnが、図１２に示す組み合わせ以外（Ｏｔｈｅｒ）である場合、位相情報ＰＨUDを“０”とする。なお、位相制御部２３は、位相情報ＰＨUDの“＋１”、“−１”、“０”を、２ビット値として出力するようにしてもよい。
【００７９】
（周波数制御部の一例）
図１５は、周波数制御部の一例を示す図である。
図１に示した周波数制御部５と同様の要素については同一符号を付し、その説明を省略する。
【００８０】
周波数制御部５ａは、位相検出部６、位相回転検出部７ａを有する。
位相回転検出部７ａは、信号ＰＨA〜ＰＨCの変化に基づいて、クロックＣＬＫ０，ＣＬＫ１８０の位相の回転方向を検出する。例えば、位相回転検出部７ａは、以下に示す表を実現する演算を行いクロックＣＬＫ０，ＣＬＫ１８０の位相の回転方向を検出して、クロックＣＬＫ０，ＣＬＫ１８０の周波数を制御するための周波数情報ＦＲUDを出力する。
【００８１】
（周波数制御部の動作例）
図１６は、位相回転検出部による周波数制御の一例を示す図である。
図１６に示す表には、信号ＰＨA〜ＰＨCの、１回目の変化前の状態（以下、２つ前の状態と表記する）、１回目の変化後の状態であり２回目の変化前の状態（以下、１つ前の状態と表記する）、２回目の変化後の状態（以下、今の状態と表記する）が示されている。さらに、これらの状態に対応して出力される周波数情報ＦＲUDが示されている。なお、信号ＰＨA〜ＰＨCの、“２つ前の状態”、“１つ前の状態”は、それぞれ、“１つ前の状態”、“今の状態”より、１ＵＩ以上前の信号ＰＨA〜ＰＨCの状態であってもよい。例えば、“２つ前の状態”が“ＰＨB＝１”で、“１つ前の状態”が“ＰＨC＝１”の場合、“１つ前の状態”の“ＰＨC＝１”の前に、複数回の“１”となる信号ＰＨB（ＰＨB＝１）が入力されていてもよい。例えば、“１つ前の状態”が“ＰＨC＝１”で、“今の状態”が“ＰＨA＝１”の場合、“今の状態”の“ＰＨA＝１”の前に、複数回の“１”となる信号ＰＨCが入力されていてもよい。
【００８２】
図１６の表に示すように、信号ＰＨA〜ＰＨCの、“２つ前の状態”が“ＰＨB＝１”、“１つ前の状態”が“ＰＨC＝１”、“今の状態”が“ＰＨA＝１”であるとする。このとき、クロックＣＬＫ０，ＣＬＫ１８０の位相は、領域Ｃを介して領域Ｂから領域Ａへと回転している状態である。これは、時間とともに入力データＤiに対するクロックＣＬＫ０，ＣＬＫ１８０の位相が遅れていく状態であり、クロックＣＬＫ０，ＣＬＫ１８０の周期が１ＵＩより長い状態である。つまり、入力データＤiに対してクロックＣＬＫ０，ＣＬＫ１８０の周波数が低い状態となる。そのため、位相回転検出部７ａは、クロックＣＬＫ０，ＣＬＫ１８０の周波数を上げるために“＋１”となる周波数情報ＦＲUDを出力する。
【００８３】
図１６の表に示すように、信号ＰＨA〜ＰＨCの、“２つ前の状態”が“ＰＨA＝１”、“１つ前の状態”が“ＰＨC＝１、”今の状態“が”ＰＨB＝１“であるとする。このとき、クロックＣＬＫ０，ＣＬＫ１８０の位相は、領域Ｃを介して領域Ａから領域Ｂへと回転している状態である。これは、時間とともに入力データＤiに対するクロックＣＬＫ０，ＣＬＫ１８０の位相が早くなっていく状態であり、クロックＣＬＫ０，ＣＬＫ１８０の周期が１ＵＩより短い状態である。つまり、入力データＤiに対してクロックＣＬＫ０，ＣＬＫ１８０の周波数が高い状態となる。そのため、位相回転検出部７ａは、クロックＣＬＫ０，ＣＬＫ１８０の周波数を下げるために“−１”となる周波数情報ＦＲUDを出力する。
【００８４】
また、位相回転検出部７ａは、入力される信号ＰＨA〜ＰＨCが、上記の組み合わせ以外（Ｏｔｈｅｒ）である場合は周波数情報ＦＲUDを“０”とする。なお、位相回転検出部７ａは、周波数情報ＦＲUDの“＋１”、“−１”、“０”を、２ビット値として出力するようにしてもよい。
【００８５】
このように、位相回転検出部７ａは、領域Ｃを介して領域Ｂから領域Ａ（または領域Ｂから領域Ａ）へのクロックＣＬＫ０，ＣＬＫ１８０の位相の回転方向を検出したときに、周波数情報ＦＲUDを＋１（または−１）とする。
【００８６】
例えば、クロックＣＬＫ０，ＣＬＫ１８０とデータ信号の周波数差が小さいときに、データ信号のエッジが領域Ｂと領域Ｃとの間を振動することがあり、信号ＰＨB，ＰＨCが繰り返し“１”となる可能性がある。このような場合、領域Ｂから領域Ｃへの位相の回転が検出される際に出力される周波数情報ＦＲUDの“＋１”と、領域Ｃから領域Ｂへの位相の回転が検出される際に出力される周波数情報ＦＲUDの“−１”が同程度出力されれば周波数差は維持される。しかし、データ信号のデータパタン等の関係で、周波数情報ＦＲUDの“＋１”または“−１”の一方しか出力されない場合には、クロックＣＬＫ０，ＣＬＫ１８０とデータ信号の周波数差が広がる。上記のように、位相回転検出部７ａでは、同一回転方向で３つの領域Ａ〜Ｃを跨ぐような位相の変化を検出したときに、周波数を制御する＋１または−１の周波数情報ＦＲUDを出力することで、上記のような誤った周波数制御が行われることを防ぐことができる。
【００８７】
また、位相回転検出部７ａは、信号ＰＨA〜ＰＨCの状態を、図示しない記憶部に保持しておき、図１６に示す“２つ前の状態”、“１つ前の状態”として用いることもできる。このような場合に信号ＰＨA〜ＰＨCの状態が変化したとき、信号ＰＨA〜ＰＨCの状態の変化後の“今の状態”を記憶部の“１つ前の状態”に、“１つ前の状態”を記憶部の“２つ前の状態”に更新して用いることができる。
【００８８】
ところで、位相回転検出部７ａは、位相検出部６での検出結果を受ける度に、位相の回転方向を検出していき、回転方向が変わるまでは、検出結果が変わらなくても、回転方向に基づき、“＋１”または“−１”の周波数情報ＦＲUDを出力し続けてもよい。以下にその周波数制御の例を説明する。
【００８９】
図１７は、位相回転検出部の周波数制御方法の一例を示す状態遷移図である。
位相回転検出部７ａの各制御状態ＳＴ１〜ＳＴ１１の遷移の一例が示されている。制御状態ＳＴ１〜ＳＴ３において図１７中に表記されている“Ａ”、“Ｂ”、“Ｃ”は、制御状態ＳＴ１〜ＳＴ３において、データ信号のエッジが位置する領域（領域Ａ〜Ｃの何れか）を示している。また、制御状態ＳＴ４〜ＳＴ１１において図１７中に表記されている“ＡＣ”、“ＡＣＢ”等は、データ信号のエッジがどの領域を遷移して今の領域にきたかを示している。例えば、“ＡＣＢ”の場合は、データ信号のエッジが、領域Ａ、領域Ｃを介して領域Ｂにきたことを示している。
【００９０】
制御状態ＳＴ１のとき信号ＰＨCが“１”となると、制御状態は、制御状態ＳＴ４に遷移し、また、制御状態ＳＴ４のとき信号ＰＨAが“１”となると、制御状態は、制御状態ＳＴ１に戻る。また、制御状態ＳＴ１のとき信号ＰＨBが“１”となると、制御状態は、制御状態ＳＴ２に遷移する。
【００９１】
制御状態ＳＴ２のとき信号ＰＨCが“１”となると、制御状態は、制御状態ＳＴ５に遷移し、また、制御状態ＳＴ５のとき信号ＰＨBが“１”となると、制御状態は、制御状態ＳＴ２に戻る。また、制御状態ＳＴ２のとき信号ＰＨAが“１”となると、制御状態は、制御状態ＳＴ１に遷移する。
【００９２】
制御状態ＳＴ３のとき信号ＰＨAが“１”となると、制御状態は、制御状態ＳＴ１に遷移し、また、制御状態ＳＴ３のとき信号ＰＨBが“１”となると、制御状態は、制御状態ＳＴ２に遷移する。
【００９３】
制御状態ＳＴ１〜ＳＴ５では、位相回転検出部７ａは、周波数情報ＦＲUDを“０”として、クロックＣＬＫ０，ＣＬＫ１８０の周波数の変更を行わない。
制御状態ＳＴ４のとき信号ＰＨBが“１”となると、制御状態は、制御状態ＳＴ６に遷移する。
【００９４】
制御状態ＳＴ６のとき信号ＰＨCが“１”となると、制御状態は、制御状態ＳＴ３に遷移する。また、制御状態ＳＴ６のとき信号ＰＨAが“１”となると、制御状態は、制御状態ＳＴ７に遷移する。
【００９５】
制御状態ＳＴ７のとき信号ＰＨBが“１”となると、制御状態は、制御状態ＳＴ２に遷移する。また、制御状態ＳＴ７のとき信号ＰＨCが“１”となると、制御状態は、制御状態ＳＴ８に遷移する。
【００９６】
制御状態ＳＴ８のとき信号ＰＨAが“１”となると、制御状態は、制御状態ＳＴ１に遷移する。また、制御状態ＳＴ８のとき信号ＰＨBが“１”となると、制御状態は、制御状態ＳＴ６に遷移する。
【００９７】
制御状態ＳＴ６〜ＳＴ８は、クロックＣＬＫ０，ＣＬＫ１８０の周期が１ＵＩより短い状態、すなわち、データ信号に対してクロックＣＬＫ０，ＣＬＫ１８０の周波数が高い状態である。そのため、位相回転検出部７ａは、周波数を下げるために周波数情報ＦＲUDを“−１”とする。
【００９８】
制御状態が、制御状態ＳＴ６〜ＳＴ８を繰り返すとき、すなわちエッジが検出される領域が、領域Ｂ、領域Ａ、領域Ｃ、領域Ｂ、…、の順番で同一方向に回転し続けている間は、位相回転検出部７ａは、“−１”となる周波数情報ＦＲUDを出力し続ける。
【００９９】
制御状態ＳＴ５のとき信号ＰＨAが“１”となると、制御状態は、制御状態ＳＴ９に遷移する。
制御状態ＳＴ９のとき信号ＰＨCが“１”となると、制御状態は、制御状態ＳＴ３に遷移する。また、制御状態ＳＴ９のとき信号ＰＨBが“１”となると、制御状態は、制御状態ＳＴ１０に遷移する。
【０１００】
制御状態ＳＴ１０のとき信号ＰＨAが“１”となると、制御状態は、制御状態ＳＴ１に遷移する。また、制御状態ＳＴ１０のとき信号ＰＨCが“１”となると、制御状態は、制御状態ＳＴ１１に遷移する。
【０１０１】
制御状態ＳＴ１１のとき信号ＰＨBが“１”となると、制御状態は、制御状態ＳＴ２に遷移する。また、制御状態ＳＴ１１のとき信号ＰＨAが“１”となると、制御状態は、制御状態ＳＴ９に遷移する。
【０１０２】
制御状態ＳＴ９〜ＳＴ１１は、クロックＣＬＫ０，ＣＬＫ１８０の周期が１ＵＩより長い状態、すなわち、データ信号に対してクロックＣＬＫ０，ＣＬＫ１８０の周波数が低い状態である。そのため、位相回転検出部７ａは、周波数を上げるために周波数情報ＦＲUDを“＋１”とする。
【０１０３】
制御状態が、制御状態ＳＴ９〜ＳＴ１１を繰り返すとき、すなわちエッジが検出される領域が、領域Ａ、領域Ｂ、領域Ｃ、領域Ａ、…、の順番で同一方向に回転し続けている値は、位相回転検出部７ａは、“＋１”となる周波数情報ＦＲUDを出力し続ける。
【０１０４】
上記のような制御では、エッジが検出される領域が変化しなくても、制御状態ＳＴ６〜ＳＴ８または制御状態ＳＴ９〜ＳＴ１１のときは、信号ＰＨA〜ＰＨCが入力される度（更新される度）に“−１”または“＋１”となる周波数情報ＦＲUDを出力し続ける。これにより、“−１”または“＋１”となる周波数情報ＦＲUDを出力する頻度が上がり、周波数を調整する速度を速めることができる。
【０１０５】
（第３の実施の形態）
以下、第３の実施の形態として、受信回路の他の例を説明する。
図１８は、受信回路の他の例を示す図である。
【０１０６】
図１０に示した受信回路２０と同様の要素については同一符号を付し、その説明を省略する。また、図１８において、周波数制御部５ａ等に入力される制御用のクロックについては図示を省略している。
【０１０７】
受信回路３０は、投機型ＤＦＥ（Speculative Decision Feedback Equalizer）の機能を有する受信回路であり、バッファ２１、比較回路２，３，４、周波数制御部５ａ、位相制御部２３ａ、ＣＰ２４、フィルタ２５、ＶＣＯ２６、選択部３１を有する。
【０１０８】
図１９は、選択部の一例を示す図である。
選択部３１は、セレクタ３２、ＦＦ（フリップフロップ）３３を有する。
セレクタ３２は、選択信号として入力される判定データＤОに基づき、比較回路２，３からそれぞれ入力される比較結果ＤH，ＤLのいずれかを選択し、ＦＦ３３に出力する。例えば、セレクタ３２は、１ＵＩ前の判定データＤОが“１”なら比較結果ＤHを出力し、１ＵＩ前の判定データＤОが“０”なら比較結果ＤLを出力する。
【０１０９】
ＦＦ３３は、クロックＣＬＫに同期して、セレクタ３２から出力される値を保持し、また、保持した値を判定データＤОとして出力する。また、クロックＣＬＫには、例えば、クロックＣＬＫ０を用いることもできる。
【０１１０】
位相制御部２３ａは、選択部３１から出力される判定データＤОと、前述の比較結果Ｅから、データ信号とクロックＣＬＫ０，ＣＬＫ１８０の位相差を検出し、クロックＣＬＫ０，ＣＬＫ１８０の位相を制御するために、位相情報ＰＨUDを出力する。
【０１１１】
このように受信回路３０では、比較回路２，３、選択部３１により投機型ＤＦＥが実現される。このような受信回路３０でも、図１０に示した受信回路２０と同様の効果が得られる。
【０１１２】
さらに、受信回路３０では、比較回路２，３の比較結果ＤH，ＤLを用いて投機型ＤＦＥの機能を実現させている。そのため、投機型ＤＦＥの機能の追加に伴う回路面積の増大を抑制することができる。
【０１１３】
なお、周波数検出回路及び受信回路は、上記の例に限定されるものではない。例えば、上記の周波数検出回路及び受信回路は、インターリーブ動作の際にも用いることができる。以下では、第１の実施の形態の周波数検出回路１の変形例を図２０に示す。
【０１１４】
（変形例）
図２０は、周波数検出回路の変形例を示す図である。
図１に示した周波数検出回路１と同様の要素については同一符号を付し、その説明を省略する。
【０１１５】
周波数検出回路１ａは、比較回路２ａ，３ａ，４ａ，２ｂ，３ｂ，４ｂ、デマルチプレクサ（以下ＤＭＸと表記する）３４、周波数制御部５ｂを有する。
インターリーブ動作を可能とするため、周波数検出回路１ａは、比較回路２ａ〜４ａと、比較回路２ｂ〜４ｂの並列構造となっている。これにより入力データＤiが高周波であるときも、並列処理を行うことで動作可能となる。
【０１１６】
比較回路２ａ，２ｂは、それぞれ、クロックＣＬＫａ０，ＣＬＫａ１８０のタイミングで、入力データＤiと閾値ＶHとの比較を行い、その比較結果ＤH0，ＤH1を出力する。
比較回路３ａ，３ｂは、それぞれ、クロックＣＬＫａ０，ＣＬＫａ１８０のタイミングで、入力データＤiと閾値ＶLとの比較を行い、その比較結果ＤL0，ＤL1を出力する。
【０１１７】
比較回路４ａ，４ｂは、それぞれ、クロックＣＬＫａ９０，ＣＬＫａ２７０のタイミングで、入力データＤiと閾値Ｖ0との比較を行い、その比較結果Ｅ0，Ｅ1を出力する。
また、クロックＣＬＫａ０〜ＣＬＫａ２７０の周波数は、第１の実施の形態のクロックＣＬＫ０，ＣＬＫ１８０の周波数の半分である。また、クロックＣＬＫａ０〜ＣＬＫａ２７０の位相関係は、例えば、クロックＣＬＫａ０の位相を基準（０度）とすると、クロックＣＬＫａ９０は、クロックＣＬＫａ０に対して９０度の位相差がある。また、クロックＣＬＫａ１８０は、クロックＣＬＫａ０に対して１８０度の位相差がある。また、クロックＣＬＫａ２７０は、クロックＣＬＫａ０に対して２７０度の位相差がある。
【０１１８】
ＤＭＸ３４は、２ビットをｎビットに逆多重化して出力する。ＤＭＸ３４は、それぞれ１ビットである比較結果ＤH0，ＤH1の２ビットを逆多重化しｎビットの比較結果ＤHとして出力し、それぞれ１ビットである比較結果ＤL0，ＤL1の２ビットを逆多重化しｎビットの比較結果ＤLとして出力する。さらに、ＤＭＸ３４は、それぞれ１ビットである比較結果Ｅ0，Ｅ1の２ビットを逆多重化しｎビットの比較結果Ｅとして出力する。
【０１１９】
このように周波数検出回路１ａは、入力データＤiの周波数が高くても、並列処理を行うことで動作が可能となる。
その他の動作については、第１の実施の形態の周波数検出回路１と同様であり、第１の実施の形態の周波数検出回路と同様の効果が得られる。
【０１２０】
なお、周波数検出回路１ａは、２並列でインターリーブ動作を行う回路であったが、並列数に制限はなく、３並列以上としてもよい。並列数に応じてクロック信号の周波数を下げ、異なる位相関係をもつクロック信号を増加させることで、より低速な回路で、周波数検出処理を実現することが可能となる。
【０１２１】
以上、実施の形態に基づき、本発明の周波数検出回路及び受信回路の一観点について説明してきたが、これらは一例にすぎず、上記の記載に限定されるものではない。例えば、上記の各実施の形態を組み合わせてもよい。
【符号の説明】
【０１２２】
１  周波数検出回路
２，３，４  比較回路
５  周波数制御部
６  位相検出部
７  位相回転検出部
Ａ，Ｂ，Ｃ  領域
ＣＬＫ０，ＣＬＫ１８０  クロック
Ｄi  入力データ
Ｖ0，ＶH，ＶL  閾値
ＤH，ＤL，Ｅ  比較結果
ＰＨA，ＰＨB，ＰＨC  信号
ＦＲUD  周波数情報
【図１】
0006361433.tif 000002
【図２】
0006361433.tif 000003
【図３】
0006361433.tif 000004
【図４】
0006361433.tif 000005
【図５】
0006361433.tif 000006
【図６】
0006361433.tif 000007
【図７】
0006361433.tif 000008
【図８】
0006361433.tif 000009
【図９】
0006361433.tif 000010
【図１０】
0006361433.tif 000011
【図１１】
0006361433.tif 000012
【図１２】
0006361433.tif 000013
【図１３】
0006361433.tif 000014
【図１４】
0006361433.tif 000015
【図１５】
0006361433.tif 000016
【図１６】
0006361433.tif 000017
【図１７】
0006361433.tif 000018
【図１８】
0006361433.tif 000019
【図１９】
0006361433.tif 000020
【図２０】
0006361433.tif 000021