(57)【要約】【課題】従来の半導体装置では、クロック信号の周波数のずれ量に時間がかかる問題があった。【解決手段】一実施の形態によれば、半導体装置では、周波数精度の低い第１のクロック信号ＣＬＫＡの周波数の理論値ＣＬＫＡ＿ｆと、周波数精度の高い入力信号の周波数の理論値ＳＣＬと、の比に基づき入力信号ＳＣＬのクロッククロックエッジが入力される期間を示す第１の期間の理論値を算出する。また、半導体装置は、第１の期間の理論値を第１のクロック信号ＣＬＫＡのクロックエッジが入力される毎に算出する。そして、半導体装置は、当該第１の期間に入力信号ＳＣＬのクロックエッジが入力されたか否かに基づき第１のクロック信号ＣＬＫＡの周波数の理論値からのずれ量を算出する。【選択図】図１
2014033413.tif 000002
【特許請求の範囲】
【請求項１】
第１のクロック生成部により生成された第１のクロック信号の理論値を示す第１の周波数値を格納する第１のレジスタと、
前記第１のクロック生成部よりも周波数の絶対値精度が高い第２のクロック生成部により生成された第２のクロック信号のクロックエッジと同期したクロックエッジを有する入力信号の周波数の理論値を示す第２の周波数値を格納する第２のレジスタと、
前記第１のクロック信号に同期して動作し、前記第１のクロック信号の周期のうち前記入力信号のクロックエッジが入力される可能性のある周期を示す第１の期間と、前記第１の期間における前記第１のクロック信号のクロックエッジと前記入力信号のクロックエッジのとの時間差の理論値を示す位相誤差値と、を前記第１の周波数値及び前記第２の周波数値の比から計算する位相差計算部と、
前記入力信号のクロックエッジが前記第１の期間中に発生したか、前記第１の期間以外の第２の期間に発生したかを示す遷移判定信号を出力する遷移判定部と、
前記遷移判定信号及び前記位相誤差値に基づき前記第１のクロック信号の周波数の理論値からの周波数誤差量を算出する周波数誤差計算部と、
前記周波数誤差量の上限値と下限値とに基づき前記第１のクロック信号の周波数の理論値からのずれ量を算出する周波数判定部と、
を有する半導体装置。
【請求項２】
前記入力信号は、前記第１のクロック信号の周波数の２分の１以下の周波数を有する請求項１に記載の半導体装置。
【請求項３】
前記入力信号は、異なる半導体装置において前記第２のクロック信号に基づき生成される同期クロック信号と、前記同期クロック信号と同期したクロックエッジを有する制御信号と、のいずれか一方である請求項１に記載の半導体装置。
【請求項４】
前記周波数誤差計算部は、前記遷移判定信号に基づき前記第１のクロック信号の位相の理論値からのずれ方向を判定し、前記位相誤差値に基づき前記第１のクロック信号の周波数の理論値からの前記ずれ量を算出する請求項１に記載の半導体装置。
【請求項５】
前記第１の期間の発生回数をカウントして遷移カウント値を生成するカウンタを有し、
前記周波数誤差計算部は、前記第１の期間毎に前記位相誤差値に基づき算出される値を前記遷移カウント値で除算して前記第１のクロック信号の周波数の理論値との前記周波数誤差量を算出する請求項１に記載の半導体装置。
【請求項６】
前記周波数誤差計算部は、前記入力信号のクロックエッジが前記第１の期間中に入力された後に、前記第１の期間の直前の前記第２の期間に前記入力信号のクロックエッジが入力された場合は前記第１のクロック信号の位相が理論値に対して進んでいると判断し、前記第１の期間の直後の前記第２の期間に前記入力信号のクロックエッジが入力された場合は前記第１のクロック信号の位相が理論値に対して遅れていると判断する請求項１に記載の半導体装置。
【請求項７】
前記遷移判定部は、前記第１の期間中に前記入力信号のクロックエッジが入力され場合に前記遷移判定信号を第１の状態とし、前記第２の期間に前記入力信号のクロックエッジが入力され場合に前記遷移判定信号を第２の状態とし、前記入力信号のクロックエッジが入力されない場合に前記遷移判定信号を第３の状態とする請求項１に記載の半導体装置。
【請求項８】
前記周波数判定部は、前記周波数誤差量の前記上限値と前記下限値との差が予め設定した所定値以下となった時点での前記上限値と前記下限値との間の値を前記ずれ量として算出する請求項１に記載の半導体装置。
【請求項９】
前記第１のクロック信号に基づき動作信号を生成する内部発振回路と、
前記動作信号に基づき所定の機能を実現する機能回路と、を有し、
前記周波数判定部は、前記内部発振回路に算出した前記ずれ量を与えて前記動作信号の周波数を補正する請求項１に記載の半導体装置。
【請求項１０】
前記第１のクロック生成部は、セラミック発振子により生成されたクロック信号を前記第１のクロック信号として生成し、
前記第２のクロック生成部は、水晶発振子により生成されたクロック信号に基づき前記第２のクロック信号を生成する請求項１に記載の半導体装置。
【請求項１１】
第１のクロック生成部により生成された第１のクロック信号の理論値を示す第１の周波数値を格納する第１のレジスタと、
前記第１のクロック生成部よりも周波数の絶対値精度が高い第２のクロック生成部により生成された第２のクロック信号のクロックエッジと同期したクロックエッジを有する入力信号の周波数の理論値を示す第２の周波数値を格納する第２のレジスタと、
前記第１のクロック信号に基づき演算処理を行う演算回路と、を有する半導体装置において前記演算回路により実行され、前記第１のクロック信号の周波数の理論値とのずれ量を算出する周波数誤差算出プログラムであって、
前記第１のクロック信号に同期して、前記第１のクロック信号の周期のうち前記入力信号のクロックエッジが入力される可能性のある周期を示す第１の期間を前記第１の周波数値及び前記第２の周波数値の比から算出し、
前記第１の期間における前記第１のクロック信号のクロックエッジと前記入力信号のクロックエッジとの時間差の理論値を示す位相誤差値を前記第１の周波数値及び前記第２の周波数値の比から算出し、
前記入力信号のクロックエッジが前記第１の期間中に発生したか、前記第１の期間以外の第２の期間に発生したかを判定して遷移判定値を生成し、
前記遷移判定値及び前記位相誤差値に基づき前記第１のクロック信号の周波数の理論値からの周波数誤差量を算出し、
前記周波数誤差量の上限値と下限値とに基づき前記第１のクロック信号の周波数の理論値からの前記ずれ量を算出する周波数誤差算出プログラム。
【請求項１２】
前記入力信号は、前記第１のクロック信号の周波数の２分の１以下の周波数を有する請求項１１に記載の周波数誤差算出プログラム。
【請求項１３】
前記入力信号は、異なる半導体装置において前記第２のクロック信号に基づき生成される同期クロック信号と、前記同期クロック信号と同期したクロックエッジを有する制御信号と、のいずれか一方である請求項１１に記載の周波数誤差算出プログラム。
【請求項１４】
前記周波数誤差算出プログラムは、前記遷移判定信号に基づき前記第１のクロック信号の位相の理論値からのずれ方向を判定し、前記位相誤差値に基づき前記第１のクロック信号の周波数の理論値からの前記周波数誤差量を算出する請求項１１に記載の周波数誤差算出プログラム。
【請求項１５】
前記周波数誤差算出プログラムは、
前記第１の期間の発生回数をカウントして遷移カウント値を生成し、
前記第１の期間毎に前記位相誤差値を前記遷移カウント値で除算して前記第１のクロック信号の周波数の理論値との前記周波数誤差量を算出する請求項１１に記載の周波数誤差算出プログラム。
【請求項１６】
前記周波数誤差算出プログラムは、前記入力信号のクロックエッジが前記第１の期間中に入力された後に、前記第１の期間の直前の前記第２の期間に前記入力信号のクロックエッジが入力された場合は前記第１のクロック信号の位相が理論値に対して進んでいると判断し、前記第１の期間の直後の前記第２の期間に前記入力信号のクロックエッジが入力された場合は前記第１のクロック信号の位相が理論値に対して遅れていると判断する請求項１１に記載の周波数誤差算出プログラム。
【請求項１７】
前記周波数誤差算出プログラムは、前記周波数誤差量の前記上限値と前記下限値との差が予め設定した所定値以下となった時点での前記上限値と前記下限値との間の値を前記ずれ量として算出する請求項１１に記載の半導体装置。
【請求項１８】
前記周波数誤差算出プログラムは、前記第１の期間中に前記入力信号のクロックエッジが入力され場合に前記遷移判定値を第１の状態とし、前記第２の期間に前記入力信号のクロックエッジが入力され場合に前記遷移判定値を第２の状態とし、前記入力信号のクロックエッジが入力されない場合に前記遷移判定値を第３の状態とする請求項１１に記載の周波数誤差算出プログラム。
【請求項１９】
前記半導体装置は、
前記第１のクロック信号に基づき動作信号を生成する内部発振回路と、
前記動作信号に基づき所定の機能を実現する機能回路と、を有し、
前記周波数誤差算出プログラムは、前記内部発振回路に算出した前記ずれ量を与えて前記動作信号の周波数を補正する請求項１１に記載の周波数誤差算出プログラム。
【請求項２０】
前記第１のクロック生成部は、セラミック発振子により生成されたクロック信号を前記第１のクロック信号として生成し、
前記第２のクロック生成部は、水晶発振子により生成されたクロック信号に基づき前記第２のクロック信号を生成する請求項１１に記載の周波数誤差算出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は半導体装置及び周波数誤差算出プログラムに関し、例えば、外部から与えられるクロック信号を動作ロックとして動作する半導体装置及び当該半導体装置において実行される周波数誤差算出プログラムに関する。
【背景技術】
【０００２】
デジタル放送の受信装置では、受信信号のチューニング処理及び復調処理を行う第１の半導体装置と復調された信号のデコード処理を行う第２の半導体装置とを組み合わせて受信装置を構築することがある。このとき、第１の半導体装置及び第２の半導体装置は、それぞれ動作クロック信号の基準となる基準クロック信号を必要とする。この基準クロック信号には、周波数の絶対値誤差が小さいことと、ジッタが小さいことが要求される。
【０００３】
例えば、第１の半導体装置では、基準クロック信号の周波数の絶対値誤差が大きくなると、チューニング処理に用いるローカル信号の周波数ずれが大きくなり復調処理でキャリアを補足できなくなる問題が生じる。また、第１の半導体装置では、基準クロック信号の周波数の絶対値誤差が大きくなると、クロック再生系のＰＬＬ（Phase Locked Loop）が復調信号にロックできない問題が発生する。さらに、第２の半導体装置においても、基準クロック信号の周波数の絶対値誤差が大きくなると、適切なデコード速度を維持できない問題が発生する。また、基準クロック信号のジッタ特性が悪化すると第１の半導体装置の受信特性が悪化する問題が発生する。
【０００４】
このように、基準クロック信号の周波数精度及びジッタ精度は、受信装置の性能に大きな影響を及ぼす。そのため、デジタル放送の受信装置では、基準クロック信号の信号源に水晶発振子が多く用いられる。しかし、水晶発振子は高価であるため、受信装置のコストアップを抑制するためには水晶発振子の個数を削減することが求められる。
【０００５】
水晶発振子の個数を削減する１つの方法は、１つの水晶発振子で生成した基準クロック信号を一方の半導体装置に与え、他方の半導体装置には一方の半導体装置において基準クロック信号から生成したクロック信号を与えることが考えられる。しかし、この場合、２つの半導体装置間の信号線が増加する問題や、追加した信号線によるジッタ増加などの問題が生じる。また、水晶発振子の個数を削減する別の方法として水晶発振子に代えて、低ジッタ特性を有するものの周波数精度の劣るセラミック発振子等を用いることが考えられる。このようにセラミック発振子を用いた場合、周波数精度を確保するために周波数誤差を検出して周波数誤差を補正する必要がある。そこで、特許文献１に、周波数誤差検出回路の一例が開示されている。
【０００６】
特許文献１に記載の周波数誤差検出回路は、時分割方向制御伝送方式の通信装置において、複数バースト期間のＤＰＬＬ制御回数を求めてこれを平均化する。これにより、特許文献１に記載の周波数誤差検出回路は、周波数誤差により生ずる位相ずれに応じてマスタクロックに対するパルスを増減させることでＤＰＬＬ回路内のマスタクロックのカウント数を増減させて受信信号とマスタクロックの位相を合わせて周波数誤差を検出することができる。そして、特許文献１に記載の周波数誤差検出回路は、バースト毎のばらつきの影響を受けることなく精度良く周波数誤差を検出することができる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特公平６−８１０４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献１に記載の技術では、バースト信号が入力される毎に周波数誤差を計算するため、所定の範囲内に周波数誤差を収束させるためには多くのバースト信号を受信しなければならず、精度の高い周波数誤差を得るために多くの時間を要する問題がある。
【０００９】
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１０】
一実施の形態によれば、半導体装置では、周波数精度の低い第１のクロック信号の周波数の理論値と、周波数精度の高い入力信号の周波数の理論値と、の比に基づき入力信号の論理レベルが遷移する期間を示す第１の期間の理論値を算出する。また、半導体装置は、第１の期間の理論値を第１のクロック信号のクロックエッジが入力される毎に算出する。そして、半導体装置は、当該第１の期間に入力信号の論理レベルが遷移したか否かに基づき第１のクロック信号の周波数の理論値からのずれ量を算出する。
【発明の効果】
【００１１】
一実施の形態によれば、周波数精度が低い第２のクロック信号の周波数の理論値からのずれ量を高速かつ高精度に算出することができる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態１にかかる半導体装置を含む受信システムのブロック図である。
【図２】実施の形態１にかかる位相差計算部の図である。
【図３】実施の形態１にかかる半導体装置の動作を説明するタイミングチャートである。
【図４】キャリー発生期間中に入力信号のクロックエッジが入力された場合の周波数誤差量を説明する図である。
【図５】キャリー発生期間の直前のキャリー非発生期間中に入力信号のクロックエッジが入力された場合の周波数誤差量を説明する図である。
【図６】キャリー発生期間中に入力信号のクロックエッジが入力された場合の周波数誤差量を説明する図である。
【図７】キャリー発生期間の直後のキャリー非発生期間中に入力信号のクロックエッジが入力された場合の周波数誤差量を説明する図である。
【図８】第１のクロック信号の周波数が理想値である場合において実施の形態１にかかる半導体装置が算出するずれ量を説明するための図である。
【図９】第１のクロック信号の周波数が理想値よりも高い場合において実施の形態１にかかる半導体装置が算出するずれ量を説明するための図である。
【図１０】第１のクロック信号の周波数が理想値よりも低い場合において実施の形態１にかかる半導体装置が算出するずれ量を説明するための図である。
【図１１】実施の形態２にかかる半導体装置を含む受信システムのブロック図である。
【図１２】実施の形態３にかかる半導体装置を含む受信システムのブロック図である。
【図１３】実施の形態４にかかる半導体装置を含む受信システムのブロック図である。
【発明を実施するための形態】
【００１３】
実施の形態１
以下、図面を参照して実施の形態について説明する。実施の形態１では、外部で生成された基準クロック信号の周波数の理論値からのずれ量を算出する周波数誤差計算部を有する半導体装置について説明する。この半導体装置は、基準クロック信号に基づき動作するものであればどのような機能を有するものであっても良いが、実施の形態１では、半導体装置の一例としてデジタル放送の受信システムにおいてダウンコンバート処理及び復調処理を行う半導体装置（例えば、受信回路）を説明する。
【００１４】
図１に、実施の形態１にかかる受信システムのブロック図を示す。図１に示すように、受信システムは、受信回路１とホストＩＣ２とを有する。受信回路１は、１つ半導体チップ上に回路が形成される半導体装置である。また、ホストＩＣ２は、受信回路１とは別の半導体チップ上に回路が形成される半導体装置である。
【００１５】
また、受信回路１は、低精度クロック信号生成部３により生成された第１のクロック信号ＣＬＫＡに基づき動作する。受信回路１は、アンテナＡＮＴを介して受信した受信信号に対してダウンコンバート処理及び復調処理を施して、データ信号を再生する。ホストＩＣ２は、受信回路１からデータ信号に基づき処理を行う。実施の形態１では、ホストＩＣ２は、データ信号に対するデコード処理と、受信回路１の制御とを行う。このホストＩＣ２は、高精度クロック信号生成部４により生成された基準クロック信号ＣＬＫＲに基づき動作する。
【００１６】
ここで、クロック信号生成部について説明する。実施の形態１にかかる受信システムでは、精度の異なる２つのクロック信号生成部を用いる。クロック信号の精度には、ジッタ特性に対する精度と、周波数の絶対値に対する精度とがある。低精度クロック信号生成部３は、周波数の絶対値に対する精度が低く、ジッタ特性に対する精度は高い第１のクロック信号ＣＬＫＡを生成する。また、高精度クロック信号生成部４は、低精度クロック信号生成部３よりも周波数の絶対値に対する精度は高く、ジッタ特性に対する精度は第１のクロック信号ＣＬＫＡと同様に高い。つまり、実施の形態では、周波数の絶対値について言及する場合に、クロック信号生成部及びクロック信号の精度が高い或いは低いとの表現を用いる。低精度クロック生成部３としては、セラミック発振子等を用いることができる。また、高精度クロック生成部４としては、水晶発振子等を用いることができる。なお、水晶発振子は高価でありコストアップの原因となる。
【００１７】
続いて、実施の形態１にかかる受信システムについて詳細に説明する。図１に示すように、受信回路１は、クロック補正部１０、アナログＰＬＬ回路１１、チューナー部１２、デジタルＰＬＬ回路１３、復調処理部１４を有する。
【００１８】
クロック補正部１０は、第１のクロック信号ＣＬＫＡに基づき動作する。そして、クロック補正部１０は、第１のクロック信号ＣＬＫＡと制御信号（シリアルデータＳＤＡ及びシリアルクロックＳＣＬを含む信号）とに基づき第１のクロック信号ＣＬＫＡの周波数の絶対値と理想値との誤差を補正するずれ量ＭＯＤを算出する。
【００１９】
アナログＰＬＬ回路１１は、第１のクロック信号ＣＬＫＡに基づき動作信号（例えば、ローカル信号ＣＬＫＡ）を生成する。このとき、アナログＰＬＬ回路１１は、アナログ値に基づきローカル信号ＣＬＫＬの周波数を制御する。また、アナログＰＬＬ回路１１は、クロック補正部１０が生成したずれ量ＭＯＤを参照して、ローカル信号ＣＬＫＬの周波数を調整する。
【００２０】
チューナー部１２は、ローカル信号に基づきアンテナＡＮＴから入力される受信信号とローカル信号ＣＬＫＬとに基づき受信信号よりも周波数の低いベースバンド信号或いは中間周波数信号ＩＦを生成するダウンコンバート処理を行う。
【００２１】
デジタルＰＬＬ回路１３は、第１のクロック信号ＣＬＫＡに基づき動作信号（例えば、動作クロック信号ＣＬＫＤ）を生成する。このとき、デジタルＰＬＬ回路１３は、デジタル値に基づき動作クロック信号ＣＬＫＤの周波数を制御する。また、デジタルＰＬＬ回路１３は、クロック補正部１０が生成したずれ量ＭＯＤを参照して、動作クロック信号ＣＬＫＤの周波数を調整する。
【００２２】
復調処理部１４は、動作クロック信号Ｄに基づきベースバンド信号に対する復調処理を行う。そして、復調後の信号は、データ信号としてホストＩＣ２に出力される。
【００２３】
ホストＩＣ２は、信号処理部３１、分周回路３２、通信インタフェース回路３３を有する。信号処理部３１は、例えば、ＣＰＵ等の演算部であって、プログラムに応じた処理を行うものである。実施の形態１では、信号処理部３１は、復調処理部１４の復調処理により生成されたデータ信号に対するデコード処理等を行う。この信号処理部３１は、高精度クロック信号生成部４で生成された基準クロック信号ＣＬＫＲに基づき動作する。図１に示す例では、信号処理部３１は、内部に設けられたＰＬＬ回路で基準クロック信号ＣＬＫＲを逓倍したクロック信号を生成し、当該クロック信号に基づき各種処理を行う基づき動作する。また、信号処理部３１は、受信回路１に対する制御データＤＡ０を生成する。
【００２４】
分周回路３２は、高精度クロック信号生成部４で生成された基準クロック信号ＣＬＫＲを分周して第２のクロック信号ＣＬＫＢを生成する。通信インタフェース回路３３は、第２のクロック信号ＣＬＫＢに基づきシリアルクロックＳＣＬを生成し、制御データＤＡ０に基づきシリアルデータＳＤＡを生成する。通信インタフェース回路３３は、例えば、Ｉ２Ｃ規格に従った通信を行うためのインタフェース回路である。
【００２５】
ここで、実施の形態１にかかる受信システムでは、受信回路１のクロック補正部１０に特徴の一つを有するため、クロック補正部１０についてさらに詳細に説明する。図１に示すように、クロック補正部１０は、通信インタフェース回路２１、クロックエッジサンプリング回路２２、位相差計算部２３、カウンタ２４、遷移判定部２５、周波数誤差計算部２６、周波数判定部２７を有する。
【００２６】
通信インタフェース回路２１は、例えば、ホストＩＣ２の通信インタフェース回路３３と通信を行うためのインタフェース回路である。つまり、通信インタフェース回路２１は、Ｉ２Ｃ規格に従った通信を行う。通信インタフェース回路２１はシリアルクロックＳＣＬを用いてシリアルデータＳＤＡを受信し、クロック補正部１０に含まれる回路或いはアナログＰＬＬ回路１１及びデジタルＰＬＬ回路１３に制御データＤＡ１を与える。
【００２７】
クロックエッジサンプリング回路２２は、ずれ量ＭＯＤの算出に用いる入力信号として利用するシリアルクロックＳＣＬのクロックエッジを検出してクロックエッジが入力されたことを示すクロック検出信号ＣＬＫＳを出力する。ここで、クロックエッジは、シリアルクロックの論理レベルの遷移に伴い生じるものである。そこで、以下では、クロックエッジサンプリング回路２２がシリアルクロックＳＣＬの論理レベルが遷移したことを検出した状態をクロックエッジが入力されたと表現する。
【００２８】
位相差計算部２３は、第１のクロック信号ＣＬＫＡに同期して動作し、第１のクロック信号ＣＬＫＡの周期のうち第２のクロック信号（例えば、シリアルクロックＳＣＬ）のクロックエッジが入力される可能性のある周期を示す第１の期間（例えば、キャリー発生期間）を第１の周波数値ＣＬＫＡ＿ｆ及び第２の周波数値ＣＬＫＢ＿ｆの比から計算する。また、位相差計算部２３は、キャリー発生期間における第１のクロック信号ＣＬＫＡのクロックエッジとシリアルクロックＳＣＬのクロックエッジのとの時間差の理論値を示す位相誤差値Ｐを第１の周波数値ＣＬＫＡ＿ｆ及び第２の周波数値ＣＬＫＢ＿ｆの比から計算する。
【００２９】
また、図１に示す実施の形態１にかかる受信回路１では、位相差計算部２３が第１のレジスタ（例えば、レジスタ２３１）及び第２のレジスタ（例えば、レジスタ２３２）を有する。レジスタ２３１には、低精度クロック生成部３により生成された第１のクロック信号ＣＬＫＡの周波数の理論値を示す第１の周波数値ＣＬＫＡ＿ｆが格納される。レジスタ２３２には、高精度クロック生成部４により生成された基準クロック信号ＣＬＫＲから生成された第２のクロック信号ＣＬＫＢのクロックエッジと同期したクロックエッジを有する入力信号（例えば、シリアルクロックＳＣＬ）の周波数の理論値を示す第２の周波数値ＣＬＫＢ＿ｆが格納される。
【００３０】
ここで、クロック補正部１０で用いる入力信号について説明する。実施の形態１にかかる受信システムでは、入力信号としてシリアルクロックＳＣＬを用いる。このシリアルクロック信号ＳＣＬは、補正対象の第１のクロック信号ＣＬＫＡの２分の１以下の周波数である。第１のクロック信号ＣＬＫＡと、シリアルクロックＳＣＬとの周波数をこのような関係とすることで、後述する位相差計算処理における誤判定を防止することができる。また、入力信号は、異なる半導体装置（実施の形態１にかかる受信システムでは、ホストＩＣ２）に供給される基準クロック信号ＣＬＫＲと同期したクロックエッジを有する信号であればよい。そこで、実施の形態１にかかる受信システムでは、信号線の数を減らすために、基準クロック信号ＣＬＫＲを分周して生成される第２のクロック信号ＣＬＫＢに基づき生成される同期クロック信号（例えば、シリアルクロックＳＣＬ）と、シリアルクロックＳＣＬと同期したクロックエッジを有する制御信号（例えば、シリアルデータＳＤＡ）と、のうちシリアルクロック信号ＳＣＬを用いる。なお、入力信号としては、シリアルデータＳＤＡを用いることも可能である。
【００３１】
また、位相差計算部２３の具体的な回路の一例を図２に示す。図２に示すように、位相差計算部２３は、加算器４１、遅延回路４２を有する。加算器４１は、遅延回路４２を介して得た前回の加算結果と周波数比Ｔとの加算値を出力する。加算器４１が出力する加算値が位相誤差値Ｐとなる。加算器４１が出力する加算値は、最大値が１であり、加算値が１以上となる場合は加算後の値のうち小数点以下の数値を加算値として出力する。また、加算器４１は、加算値が１を超える場合、キャリー信号ＣＡを第１の論理レベルとする。また、加算器４１は、第１のクロック信号ＣＬＫＡのクロックエッジが入力される毎に演算を実行する。遅延回路４２は、加算器４１が出力する加算値を遅延させて加算器４１に出力する。位相差計算部２３は、このような構成を有することで、第１のクロック信号ＣＬＫＡのクロックエッジが入力される毎に位相誤差値Ｐ及びキャリー信号ＣＡの値を更新する。なお、キャリー信号ＣＡが第１の論理レベル（例えば、ハイレベル）となっている期間がキャリー発生期間となる。
【００３２】
カウンタ２４は、第１の期間（例えば、キャリー発生期間）の発生回数をカウントして遷移カウント値を生成する。なお、カウンタ２４は、電源投入時に生成されるパワーオンリセット信号等により遷移カウント値をリセットする。
【００３３】
遷移判定部２５は、入力信号（例えば、シリアルクロックＳＣＬ）のクロックエッジが第１の期間（例えば、キャリー発生期間）中に発生したか、キャリー発生期間以外の第２の期間（例えば、キャリー非発生期間）に発生したかを示す遷移判定信号ＳＴを出力する。より具体的には、遷移判定部２５は、キャリー発生期間中にシリアルクロックＳＣＬのクロックエッジが入力され場合に遷移判定信号ＳＴを第１の状態（例えば、正常状態）とする。また、遷移判定部２５は、キャリー非発生期間にシリアルクロックＳＣＬのクロックエッジが入力され場合に遷移判定信号ＳＴを第２の状態（例えば、異常状態）とする。さらに、遷移判定部２５は、シリアルクロックＳＣＬのクロックエッジが入力されない場合に遷移判定信号を第３の状態（例えば、遷移非検出状態）とする。これら３つの状態は、例えば、遷移判定信号として２ビットの信号を用いることで表現できる。
【００３４】
周波数誤差計算部２６は、遷移判定信号ＳＴ及び位相誤差値Ｐに基づき第１のクロック信号ＣＬＫＡの周波数の理論値からの周波数誤差量を算出する。周波数判定部２６は、遷移判定信号ＳＴに基づき第１のクロック信号ＣＬＫＡの位相の理論値からのずれ方向を判定し、位相誤差値ＳＴに基づき第１のクロック信号ＣＬＫＡの周波数の理論値からのずれ量を算出する。より具体的には、周波数誤差計算部２６は、シリアルクロックＳＣＬのクロックエッジがキャリー発生期間中に入力された後に、キャリー発生期間の直前のキャリー非発生期間にシリアルクロックＳＣＬのクロックエッジが入力された場合は第１のクロック信号ＣＬＫＡの位相が理論値に対して進んでいると判断する。また、周波数誤差計算部２６は、シリアルクロックＳＣＬのクロックエッジがキャリー発生期間中に入力された後に、キャリー発生期間の直後のキャリー非発生期間にシリアルクロックＳＣＬのクロックエッジが入力された場合は第１のクロック信号ＣＬＫＡの位相が理論値に対して遅れていると判断する。そして、周波数誤差計算部２６は、キャリー発生期間毎に位相誤差値Ｐに基づき算出される値を遷移カウント値で除算して第１のクロック信号ＣＬＫＡの周波数の理論値との誤差量を算出する。さらに具体的な周波数誤差計算部２６の動作は後述する。
【００３５】
周波数判定部２７は、周波数誤差計算部２６が算出した周波数誤差量の上限値と下限値とに基づき前記第１のクロック信号の周波数の理論値からのずれ量を算出する。より具体的には、周波数判定部２７は、周波数誤差計算部２６が算出した周波数誤差量の上限値と下限値との差が予め設定した所定値以下となった時点での上限値と下限値との間の値（実施の形態１では、上限値と下限値との中心値）をずれ量として算出する。周波数判定部２７が算出したずれ量は、レジスタ２７１に格納される。ここで、実施の形態１にかかる受信回路１は、第１のクロック信号に基づき動作信号を生成する内部発振回路としてアナログＰＬＬ回路１１及びデジタルＰＬＬ回路１３を有し、動作信号に基づき所定の機能を実現する機能回路としてチューナー部１２及び復調処理部１４を有する。周波数判定部２７は、算出したずれ量を内部発振回路に与えて前記動作信号の周波数を補正する。
【００３６】
続いて、第１のクロック信号ＣＬＫＡの位相とシリアルクロックＳＣＬの位相とのずれについて説明する。そこで、実施の形態１にかかる受信回路１の動作を説明するタイミングチャートを図３に示す。図３では、シリアルクロックＳＣＬに対して３つの位相を有する第１のクロック信号ＣＬＫＡを示した。まず、［１］で示される第１のクロック信号ＣＬＫＡは、理想とする位相と同じ位相を有するものであり、［２］で示される第１のクロック信号ＣＬＫＡは、理想とする位相に対して進んだ位相を有するものであり、［３］で示される第１のクロック信号ＣＬＫＡは、理想とする位相に対して遅れた位相を有するものである。つまり、［１］で示される第１のクロック信号ＣＬＫＡは、理想する周波数を有するものであり、［２］で示される第１のクロック信号ＣＬＫＡは、理想とする周波数よりも高い周波数を有するものであり、［３］で示される第１のクロック信号ＣＬＫＡは、理想とする周波数よりも低い周波数を有するものである。
【００３７】
また、図３で示す例では、第１のクロック信号ＣＬＫＡの周波数の理論値を示す第１の周波数値ＣＬＫＡ＿ｆと、シリアルクロックＳＣＬの周波数の理論値を示す第２の周波数値ＣＬＫＢ＿ｆと、の比が０．１１である場合を示すものである。さらに、図３に示す例では、位相差計算部２３で計算される位相誤差値Ｐと、キャリー発生期間及びキャリー非発生期間を示した。
【００３８】
図３に示すように、第１のクロック信号ＣＬＫＡの周波数が理論値と同じであれば、キャリー発生期間にシリアルクロックＳＣＬのクロックエッジが入力される。一方、第１のクロック信号ＣＬＫＡの周波数が理論値に対して高い或いは低い場合、キャリー非発生期間にシリアルクロックＳＣＬのクロックエッジが入力される可能性がある。
【００３９】
シリアルクロックＳＣＬのクロックエッジがキャリー非発生期間に入力される確率は、第１のクロック信号ＣＬＫＡの周波数の理論値との周波数誤差量の大きさによって異なる。クロック補正部１０では、シリアルクロックＳＣＬのクロックエッジの入力タイミングとキャリー発生期間との関係と、位相誤差値Ｐの大きさとに基づき第１のクロック信号ＣＬＫＡの周波数誤差量を算出する。
【００４０】
そこで、周波数誤差計算部２６における周波数誤差量の計算方法について詳細に説明する。図４にキャリー発生期間中に入力信号のクロックエッジが入力された場合の周波数誤差量を説明する図を示す。図４に示すように、キャリー発生期間のうち前半にシリアルクロックＳＣＬの理論的な遷移タイミングがあり、かつ、キャリー発生期間中にシリアルクロックＳＣＬのクロックエッジが入力された場合、周波数誤差計算部２６は、周波数誤差量として１からキャリー発生期間の開始時点の位相誤差値Ｐを引いた値（Δｔ１＝１−Ｐ）を、遷移カウント値ｎで除算した値（Δｔ１／ｎ）を算出する。この場合、＋Δｔ１／ｎ以下の周波数誤差が発生していると判定できる。
【００４１】
次いで、図５にキャリー発生期間の直前のキャリー非発生期間中に入力信号のクロックエッジが入力された場合の周波数誤差量を説明する図を示す。図５に示すように、キャリー発生期間の直前のキャリー発生期間にシリアルクロックＳＣＬのクロックエッジが入力された場合、周波数誤差計算部２６は、キャリー発生期間の開始時点の位相誤差値Ｐを用いて、周波数誤差量として１から位相誤差値Ｐを引いた値（Δｔ２＝１−Ｐ）を、遷移カウント値ｎで除算した値（Δｔ２／ｎ）を算出する。この場合、＋Δｔ２／ｎ以上の周波数誤差が発生していると判定できる。
【００４２】
次いで、図６にキャリー発生期間中に入力信号のクロックエッジが入力された場合の周波数誤差量を説明する図を示す。図６に示すように、キャリー発生期間のうち後半にシリアルクロックＳＣＬの理論的な遷移タイミングがあり、かつ、キャリー発生期間中にシリアルクロックＳＣＬのクロックエッジが入力された場合、周波数誤差計算部２６は、周波数誤差量としてキャリー発生期間の終了時点の位相誤差値Ｐ（Δｔ３＝Ｐ）を、遷移カウント値ｎで除算した値（Δｔ３／ｎ）を算出する。この場合、−Δｔ３／ｎ以下の周波数誤差が発生していると判定できる。
【００４３】
次いで、図７にキャリー発生期間の直後のキャリー非発生期間中に入力信号のクロックエッジが入力された場合の周波数誤差量を説明する図を示す。図７に示すように、キャリー発生期間の直後のキャリー発生期間にシリアルクロックＳＣＬのクロックエッジが入力された場合、周波数誤差計算部２６は、周波数誤差量としてキャリー発生期間の終了時点の位相誤差値Ｐ（Δｔ４＝Ｐ）を、遷移カウント値ｎで除算した値（Δｔ４／ｎ）を算出する。この場合、−Δｔ４／ｎ以上の周波数誤差が発生していると判定できる。
【００４４】
なお、周波数誤差計算部２６は、キャリー発生期間及びその前後のキャリー非発生期間中にシリアルクロックＳＣＬが入力されなかった場合周波数誤差値の計算は行わないものとする。
【００４５】
続いて、上記のような計算方法によって算出された周波数誤差値に基づくずれ量ＭＯＤの算出方法について説明する。上記計算方法では、位相誤差値Ｐにより算出される値を遷移カウント値ｎによって除算する。つまり、周波数誤差計算部２６で算出される周波数誤差量は、遷移カウント値ｎが大きくなるほど小さくなるという特徴を有する。また、図４〜図７を参照して説明したように、周波数誤差計算部２６は、実際の周波数誤差が算出された周波数誤差値以上であるか以下であるかを示すものである。このようなことから、周波数誤差計算部２６において反復して周波数誤差値を算出することで周波数誤差値が所定の範囲に収束する。そこで、周波数判定部２７では、周波数誤差値の範囲の上限値と下限値とが所定の範囲に収束した時点における周波数誤差値の範囲の中心値をずれ量として算出する。そこで、図８〜図１０に実施の形態１にかかる半導体装置が算出するずれ量を説明する図を示す。この図８〜図１０では、縦方向に時間が経過するものとする。
【００４６】
図８にシリアルクロックＳＣＬの周波数が理想値である場合において実施の形態１にかかる半導体装置が算出するずれ量を説明するための図を示す。図８に示すように、タイミング（ａ）において、周波数判定部２７は、その時点で算出された周波数誤差値Ｘ１を取得する。図８では、タイミング（ａ）において算出される周波数誤差値Ｘ１は、Δｔ１／ｎａの大きさを有する。
【００４７】
続いて、タイミング（ｂ）において、周波数判定部２７は、その時点で算出された周波数誤差値Ｘ２を取得する。図８では、タイミング（ｂ）において算出される周波数誤差値Ｘ１は、Δｔ１／ｎｂの大きさを有する。これにより、周波数誤差値の範囲としてＸ２〜Ｘ１の範囲が算出される。このタイミング（ｂ）では、周波数誤差値の範囲の大きさが予め設定した所定の範囲Ｘよりも大きいため、クロック補正部１０はずれ量の算出処理を継続する。
【００４８】
続いて、タイミング（ｃ）において、周波数判定部２７は、その時点で算出された周波数誤差値Ｘ３を取得する。図８では、タイミング（ｃ）において算出される周波数誤差値Ｘ３は、Δｔ１／ｎｃの大きさを有する。これにより、周波数誤差値の範囲としてＸ２〜Ｘ３の範囲が算出される。この周波数誤差値Ｘ３は、遷移カウント値ｎがタイミング（ａ）の時点よりも大きいため、タイミング（ａ）で算出される周波数誤差値Ｘ１よりも小さくなる。このタイミング（ｃ）では、周波数誤差値の範囲の大きさが予め設定した所定の範囲Ｘよりも大きいため、クロック補正部１０はずれ量の算出処理を継続する。
【００４９】
続いて、タイミング（ｄ）において、周波数判定部２７は、その時点で算出された周波数誤差値Ｘ４を取得する。図８では、タイミング（ｄ）において算出される周波数誤差値Ｘ４は、Δｔ３／ｎｄの大きさを有する。この周波数誤差値Ｘ４は、遷移カウント値ｎがタイミング（ｂ）の時点よりも大きいため、タイミング（ｂ）で算出される周波数誤差値Ｘ２よりも小さくなる。このタイミング（ｄ）では、周波数誤差値の範囲の大きさが予め設定した所定の範囲Ｘ以下の大きさとなるため、クロック補正部１０はずれ量の算出処理を停止し、ずれ量ＭＯＤの大きさを確定する。図８に示す例では、周波数誤差値の範囲（Ｘ４〜Ｘ３）の中心値が０ｐｐｍとなっているため、第１のクロック信号ＣＬＫＡの理論値に対するずれ量は０ｐｐｍと算出される。
【００５０】
次いで、図９にシリアルクロックＳＣＬの周波数が理想値よりも高い場合において実施の形態１にかかる半導体装置が算出するずれ量を説明するための図を示す。図９に示すように、タイミング（ａ）において、周波数判定部２７は、その時点で算出された周波数誤差値Ｘ１を取得する。図９では、タイミング（ａ）において算出される周波数誤差値Ｘ１は、Δｔ１／ｎａの大きさを有する。
【００５１】
続いて、タイミング（ｂ）において、周波数判定部２７は、その時点で算出された周波数誤差値Ｘ２を取得する。図９では、タイミング（ｂ）において算出される周波数誤差値Ｘ１は、Δｔ３／ｎｂの大きさを有する。これにより、周波数誤差値の範囲としてＸ２〜Ｘ１の範囲が算出される。このタイミング（ｂ）では、周波数誤差値の範囲の大きさが予め設定した所定の範囲Ｘよりも大きいため、クロック補正部１０はずれ量の算出処理を継続する。
【００５２】
続いて、タイミング（ｃ）において、周波数判定部２７は、その時点で算出された周波数誤差値Ｘ３を取得する。図９では、タイミング（ｃ）において算出される周波数誤差値Ｘ３は、Δｔ２／ｎｃの大きさを有する。また、このタイミング（ｃ）では、キャリー発生期間の直前のキャリー非発生期間にシリアルクロックＳＣＬのクロックエッジが入力される。そのため、タイミング（ｃ）において算出される周波数誤差値により、第１のクロック信号ＣＬＫＡの周波数が高くずれていることが認識される。これにより、周波数誤差値の範囲としてＸ３〜Ｘ１の範囲が算出される。この周波数誤差値Ｘ３は、遷移カウント値ｎがタイミング（ａ）の時点よりも大きいため、タイミング（ａ）で算出される周波数誤差値Ｘ１よりも小さくなる。このタイミング（ｃ）では、周波数誤差値の範囲の大きさが予め設定した所定の範囲Ｘよりも大きいため、クロック補正部１０はずれ量の算出処理を継続する。また、タイミング（ｃ）において、第１のクロック信号ＣＬＫＡの周波数が理論値よりも高いことが認識されるため、これ以降周波数誤差計算部２６及び周波数判定部２７は、クロック信号ＣＬＫＡの周波数が高い方向にずれていることを前提に計算を進める。
【００５３】
続いて、タイミング（ｄ）において、周波数判定部２７は、その時点で算出された周波数誤差値Ｘ４を取得する。図９では、タイミング（ｄ）において算出される周波数誤差値Ｘ４は、Δｔ１／ｎｄの大きさを有する。この周波数誤差値Ｘ４は、遷移カウント値ｎがタイミング（ａ）の時点よりも大きいため、タイミング（ａ）で算出される周波数誤差値Ｘ１よりも小さくなる。このタイミング（ｄ）では、周波数誤差値の範囲の大きさが予め設定した所定の範囲Ｘ以下の大きさとなるため、クロック補正部１０はずれ量の算出処理を停止し、ずれ量ＭＯＤの大きさを確定する。図９に示す例では、周波数誤差値の範囲（Ｘ３〜Ｘ４）の中心値が＋Ｙｐｐｍとなっているため、第１のクロック信号ＣＬＫＡの理論値に対するずれ量は＋Ｙｐｐｍと算出される。
【００５４】
次いで、図１０にシリアルクロックＳＣＬの周波数が理想値よりも低い場合において実施の形態１にかかる半導体装置が算出するずれ量を説明するための図を示す。図１０に示すように、タイミング（ａ）において、周波数判定部２７は、その時点で算出された周波数誤差値Ｘ１を取得する。図１０では、タイミング（ａ）において算出される周波数誤差値Ｘ１は、Δｔ１／ｎａの大きさを有する。
【００５５】
続いて、タイミング（ｂ）において、周波数判定部２７は、その時点で算出された周波数誤差値Ｘ２を取得する。図１０では、タイミング（ｂ）において算出される周波数誤差値Ｘ２は、Δｔ３／ｎｂの大きさを有する。これにより、周波数誤差値の範囲としてＸ２〜Ｘ１の範囲が算出される。このタイミング（ｂ）では、周波数誤差値の範囲の大きさが予め設定した所定の範囲Ｘよりも大きいため、クロック補正部１０はずれ量の算出処理を継続する。
【００５６】
続いて、タイミング（ｃ）において、周波数判定部２７は、その時点で算出された周波数誤差値Ｘ３を取得する。図１０では、タイミング（ｃ）において算出される周波数誤差値Ｘ３は、Δｔ４／ｎｃの大きさを有する。また、このタイミング（ｃ）では、キャリー発生期間の直後のキャリー非発生期間にシリアルクロックＳＣＬのクロックエッジが入力される。そのため、タイミング（ｃ）において算出される周波数誤差値により、第１のクロック信号ＣＬＫＡの周波数が低くずれていることが認識される。これにより、周波数誤差値の範囲としてＸ３〜Ｘ２の範囲が算出される。この周波数誤差値Ｘ３は、遷移カウント値ｎがタイミング（ａ）の時点よりも大きいため、タイミング（ａ）で算出される周波数誤差値Ｘ１よりも小さくなる。このタイミング（ｃ）では、周波数誤差値の範囲の大きさが予め設定した所定の範囲Ｘよりも大きいため、クロック補正部１０はずれ量の算出処理を継続する。また、タイミング（ｃ）において、第１のクロック信号ＣＬＫＡの周波数が理論値よりも低いことが認識されるため、これ以降周波数誤差計算部２６及び周波数判定部２７は、クロック信号ＣＬＫＡの周波数が低い方向にずれていることを前提に計算を進める。
【００５７】
続いて、タイミング（ｄ）において、周波数判定部２７は、その時点で算出された周波数誤差値Ｘ４を取得する。図１０では、タイミング（ｄ）において算出される周波数誤差値Ｘ４は、Δｔ３／ｎｄの大きさを有する。この周波数誤差値Ｘ４は、遷移カウント値ｎがタイミング（ｂ）の時点よりも大きいため、タイミング（ｂ）で算出される周波数誤差値Ｘ２よりも小さくなる。このタイミング（ｄ）では、周波数誤差値の範囲の大きさが予め設定した所定の範囲Ｘ以下の大きさとなるため、クロック補正部１０はずれ量の算出処理を停止し、ずれ量ＭＯＤの大きさを確定する。図１０に示す例では、周波数誤差値の範囲（Ｘ３〜Ｘ４）の中心値が−Ｙｐｐｍとなっているため、第１のクロック信号ＣＬＫＡの理論値に対するずれ量は−Ｙｐｐｍと算出される。
【００５８】
上記説明より、実施の形態１にかかる受信回路１では、クロック補正部１０が自半導体装置に供給される第１のクロック信号ＣＬＫＡに基づき予め設定される周波数の理論値に基づきシリアルクロックＳＣＬのクロックエッジが入力されるキャリー発生期間を計算する。つまり、クロック補正部１０において算出されるキャリー発生期間は、第１のクロック信号ＣＬＫＡの周波数に応じて時間的に前後し、かつ、期間の長さが変化する。また、クロック補正部１０は、第１のクロック信号ＣＬＫＡよりも精度の高い第２のクロック信号ＣＬＫＢに基づき生成されるシリアルクロックＳＣＬのクロックエッジがキャリー発生期間に入力されたか、キャリー非発生期間に入力されたかを認識する。そして、クロック補正部１０は、シリアルクロックＳＣＬが入力されるタイミングと、キャリー発生期間に算出される位相誤差値Ｐと、遷移カウント値ｎとに基づき周波数誤差の範囲を算出し、当該周波数誤差の範囲に基づき第１のクロック信号ＣＬＫＡの周波数の理論値からのずれ量ＭＯＤを算出する。
【００５９】
これにより、実施の形態１にかかる受信回路１では、チューナー部等に入力される受信信号を待つことなく、受信システムの内部で生成されるシリアルクロックＳＣＬに基づき早期にずれ量ＭＯＤを算出することができる。また、受信回路１は、当該ずれ量に基づきアナログＰＬＬ回路１１及びデジタルＰＬＬ回路１３が生成する動作信号の周波数を補正することができる。
【００６０】
一方、受信回路１と共に用いられるホストＩＣ２等の他の半導体装置において生成した基準信号と、受信回路１に供給される第１のクロック信号ＣＬＫＡと、のクロック数を比較して第１のクロック信号ＣＬＫＡの誤差を算出することもできる。しかし、この場合、１０ｐｐｍの誤差を検出するために１０万クロックのクロック数を有するため、実施の形態１にかかる受信回路１ほど高速に第１のクロック信号ＣＬＫＡの周波数のずれ量を算出することができない。
【００６１】
また、他の半導体装置から別途基準信号を受信し、当該基準信号と第１のクロック信号ＣＬＫＡとのクロック数の差に基づき第１のクロック信号ＣＬＫＡの周波数のずれ量を算出する場合、受信システムの信号線及び受信回路１等の端子数が増加数する問題が発生する。しかし、実施の形態１にかかる受信回路１は、ずれ量ＭＯＤの算出に用いる高精度な入力信号として制御信号の伝達に用いられる信号の１つとして用いられるシリアルクロックＳＣＬを用いる。これにより、実施の形態１にかかる受信回路１は、入力信号を伝達する信号線を別途準備する必要がないため、受信システムの基盤面積及び半導体装置の端子数を削減することができる。
【００６２】
また、クロック数の比較により第１のクロック信号ＣＬＫＡの周波数のずれ量を算出する場合、基準信号として第１のクロック信号ＣＬＫＡと同等の周波数のクロック信号を伝達する必要がある。この場合、基準信号の周波数が高くなる傾向にあり、受信システムの不要輻射が増加する問題が生じる。しかし、実施の形態１にかかる受信システムでは、受信回路１において周波数のずれ量の算出に用いられるシリアルクロックＳＣＬは、第１のクロック信号ＣＬＫＡの周波数の２分の１以下の周波数である。より具体的には、第１のクロック信号ＣＬＫＡの周波数は２８ＭＨｚ程度であり、シリアルクロックＳＣＬの周波数は４００Ｈｚ程度である。このようなことから、実施の形態１にかかる受信システムでは、ずれ量の算出に用いられる入力信号の周波数を低く設定し、不要輻射を抑制することができる。
【００６３】
また、実施の形態１にかかる受信回路１では、ずれ量の算出に用いるシリアルクロックＳＣＬの周波数を第１のクロック信号ＣＬＫＡの周波数の２分の１以下とすることで、シリアルクロックＳＣＬの遷移が発生するタイミングの理論値がキャリー発生期間の前半から後半、或いは、後半から前半にランダムに飛び越えて発生することを防止することが出来る。シリアルクロックＳＣＬの遷移が発生するタイミングの理論値が前半から後半、或いは、後半から前半にランダムに飛び越えて発生した場合、第１のクロック信号ＣＬＫＡの周波数が高いか低いかを認識することが困難になる問題がある。
【００６４】
また、ホストＩＣ２等の他の半導体装置で生成された基準信号を受信し、当該基準信号に基づき受信回路１内で利用されるクロック信号等を生成した場合、ホストＩＣ２における電源変動の影響により基準信号の生成過程において基準信号のジッタ特性が悪化する恐れがある。しかし、実施の形態１にかかる受信回路１は、供給される第１のクロック信号ＣＬＫＡの周波数の理論値からのずれ量ＭＯＤを算出して、当該ずれ量ＭＯＤに基づき内部で生成するクロック信号等の周波数を補正することができる。これにより、実施の形態１にかかる受信システムでは、第１のクロック信号ＣＬＫＡを生成するクロック生成部としてセラミック発振子等の低精度クロック生成素子を用いることができる。このセラミック発振子は、周波数の絶対値に対する精度は低いものの良好なジッタ特性を有するクロック信号を生成することができる。つまり、実施の形態１にかかる受信システムでは、このようなクロック生成部を用いることで、アナログＰＬＬ回路１１及びデジタルＰＬＬ回路１３が生成するクロック信号等のジッタ特性を高めることができる。そして、受信システムのチューナー等に低ジッタの動作信号（例えば、ローカル信号）を供給することで、受信特性を向上させることができる。
【００６５】
また、ホストＩＣ２等の他の半導体装置で生成された基準信号を受信し、当該基準信号に基づき受信回路１内で利用されるクロック信号等を生成した場合、他の半導体装置において基準信号を生成する発振回路等が必要になる。しかしながら、実施の形態１にかかる受信回路１を用いることで、他の半導体装置に基準信号を生成する発振回路等を別途設ける必要がない。つまり、実施の形態１にかかる受信回路１を用いることで、他の半導体装置の回路面積を小さくすることができる。
【００６６】
また、他の半導体装置等から供給される基準信号等に基づき受信回路１内で利用されるクロック信号等を生成した場合、いずれか一方の回路を停止させると受信システム全体が停止してしまし、いずれか一方の回路を停止状態として消費電力を削減することができない。しかし、実施の形態１にかかる受信システムでは、ずれ量ＭＯＤを算出した後は、受信回路１とホストＩＣ２がそれぞれ独立したクロック生成部により生成されたクロック信号に基づき動作する。そのため、実施の形態１にかかる受信システムでは、いずれか一方の回路を停止し、必要な回路のみを動作させて受信システムの消費電力を削減することができる。
【００６７】
実施の形態２
実施の形態２では、クロック補正部がずれ量ＭＯＤの算出に用いる入力信号としてシリアルデータＳＤＡを用いる形態について説明する。そこで、図１１に実施の形態２にかかる受信回路１ａを含む受信システムのブロック図を示す。なお、実施の形態２の説明において実施の形態１と同じ構成要素については実施の形態１と同じ符号を付して説明を省略する。
【００６８】
図１１に示すように、受信回路１ａは、実施の形態１にかかる受信回路１のクロック補正部１０に代えてクロック補正部１０ａを有する。このクロック補正部１０ａは、実施の形態１にかかるクロック補正部１０のクロックエッジサンプリング回路２２に代えてクロックエッジサンプリング回路２２ａを有する。そして、クロックエッジサンプリング回路２２ａは、ずれ量ＭＯＤの算出に用いる入力信号として利用するシリアルデータＳＤＡのクロックエッジを検出してクロックエッジが入力されたことを示すクロック検出信号ＣＬＫＳを出力する。
【００６９】
つまり、実施の形態２にかかる受信回路１ａでは、入力信号として、シリアルクロックＳＣＬと同様に第２のクロック信号ＣＬＫＢに基づき生成されるシリアルデータＳＤＡを用いるものであり、実施の形態１にかかる受信回路１と同様の演算処理によりずれ量ＭＯＤを算出することができる。
【００７０】
実施の形態３
実施の形態３では、クロック補正部がずれ量ＭＯＤの算出に用いる入力信号として第２のクロック信号ＣＬＫＢを用いる形態について説明する。そこで、図１２に実施の形態３にかかる受信回路１ｂを含む受信システムのブロック図を示す。なお、実施の形態３の説明において実施の形態１と同じ構成要素については実施の形態１と同じ符号を付して説明を省略する。
【００７１】
図１２に示すように、受信回路１ｂは、実施の形態１にかかる受信回路１のクロック補正部１０に代えてクロック補正部１０ｂを有する。このクロック補正部１０ｂは、実施の形態１にかかるクロック補正部１０のクロックエッジサンプリング回路２２に代えてクロックエッジサンプリング回路２２ｂを有する。そして、クロックエッジサンプリング回路２２ｂは、ずれ量ＭＯＤの算出に用いる入力信号として利用する第２のクロック信号ＣＬＫＢのクロックエッジを検出してクロックエッジが入力されたことを示すクロック検出信号ＣＬＫＳを出力する。
【００７２】
つまり、実施の形態３にかかる受信回路１ｂでは、入力信号として、シリアルクロックＳＣＬの生成に用いられる第２のクロック信号ＣＬＫＢを用いるものであり、実施の形態１にかかる受信回路１と同様の演算処理によりずれ量ＭＯＤを算出することができる。
【００７３】
この実施の形態３にかかる受信回路１ｂでは、第２のクロック信号ＣＬＫＢを伝達するための信号線を新たに追加する必要があるが、シリアルクロックＳＣＬよりも周波数の高い第２のクロック信号ＣＬＫＢを用いることで実施の形態１にかかる受信回路１よりも高速にずれ量ＭＯＤを算出することができる。なお、第２のクロック信号ＣＬＫＢは、第１のクロック信号ＣＬＫＡの周波数の２分の１以下の周波数を有するものであるため、実施の形態１と同様に不要輻射を削減することは可能である。
【００７４】
実施の形態４
実施の形態４では、演算回路において周波数誤差算出プログラムを実行することでクロック補正部１０における演算処理を行う形態について説明する。そこで、図１３に実施の形態４にかかる受信回路１ｃを含む受信システムのブロック図を示す。なお、実施の形態４の説明において実施の形態１と同じ構成要素については実施の形態１と同じ符号を付して説明を省略する。
【００７５】
図１３に示すように、受信回路１ｃは、実施の形態１にかかるクロック補正部１０に代えてクロック補正部５０を有する。このクロック補正部５０は、周波数誤差算出プログラムにより位相差計算部２３、カウンタ２４、遷移判定部２５、周波数誤差計算部２６及び周波数判定部２７を実現する演算回路５１を有する。また、クロック補正部５０は、演算回路５１で実行される周波数誤差算出プログラムを格納するプログラム格納部５２を有する。なお、クロック補正部５０においても、通信インタフェース回路２１及びクロックエッジサンプリング回路２２を有する。
【００７６】
なお、実施の形態４にかかる受信回路１ｃは、実施の形態１と同様に第１のレジスタ（例えば、レジスタ２３１）と、第２のレジスタ（例えば、レジスタ２３２）とをクロック補正部５０に含む。レジスタ２３１には、第１のクロック生成部（例えば、低精度クロック信号生成部３）により生成された第１のクロック信号ＣＬＫＡの理論値を示す第１の周波数値が格納される。また、レジスタ２３２には、低精度クロック信号生成部３よりも周波数の絶対値精度が高い第２のクロック生成部（例えば、高精度クロック信号生成部４）により生成された第２のクロック信号第２のクロック信号ＣＬＫＢのクロックエッジと同期したクロックエッジを有する入力信号の周波数の理論値を示す第２の周波数値が格納される。そして、演算回路５１は、第１のクロック信号ＣＬＫＡに基づき演算処理を行う。
【００７７】
演算回路５１は、周波数誤差算出プログラムに基づき第１のクロック信号の周波数の理論値とのずれ量を算出する。より具体的には、演算回路５１は、第１のクロック信号ＣＬＫＡに同期して、第１のクロック信号ＣＬＫＡの周期のうちシリアルクロックＳＣＬのクロックエッジが入力される可能性のある周期を示す第１の期間（例えば、キャリー発生期間）を第１の周波数値及び前記第２の周波数値の比から算出する。この処理は、実施の形態１にかかる位相差計算部２３における処理と同等の演算処理である。演算回路５１は、キャリー発生期間における第１のクロック信号ＣＬＫＡのクロックエッジとシリアルクロックＳＣＬのクロックエッジとの時間差の理論値を示す位相誤差値Ｐを第１の周波数値ＣＬＫＡ＿ｆ及び第２の周波数値ＣＬＫＢ＿ｆの比から算出する。この処理は、実施の形態１にかかる位相差計算部２３における処理と同等の演算処理である。演算回路５１は、シリアルクロックＳＣＬのクロックエッジがキャリー発生期間中に発生したか、キャリー発生期間以外の第２の期間（例えば、キャリー非発生期間）に発生したかを判定して遷移判定値ＳＴを生成する。この処理は、実施の形態１にかかる遷移判定部２５における処理と同等の演算処理である。演算回路５１は、遷移判定値ＳＴ及び位相誤差値Ｐに基づき第１のクロック信号ＣＬＫＡの周波数の理論値からの周波数誤差量を算出する。この処理は、実施の形態１にかかる周波数誤差計算部２６における処理と同等の演算処理である。演算回路５１は、周波数誤差量の上限値と下限値とに基づき第１のクロック信号ＣＬＫＡの周波数の理論値からのずれ量ＭＯＤを算出する。この処理は、実施の形態１にかかる周波数判定部２７と同等の処理である。なお、実施の形態４においても、ずれ量ＭＯＤは、レジスタ２７１に格納される。
【００７８】
また、周波数誤差算出プログラムを実行する演算回路５１は、遷移判定信号ＳＴに基づき第１のクロック信号ＣＬＫＡの位相の理論値からのずれ方向を判定し、位相誤差値Ｐに基づき第１のクロック信号ＣＬＫＡの周波数の理論値からの周波数誤差量を算出する。この処理は、実施の形態１にかかる周波数誤差計算部２６における処理と同等の演算処理である。
【００７９】
また、周波数誤差算出プログラムを実行する演算回路５１は、キャリー発生期間の発生回数をカウントして遷移カウント値を生成する。そして、演算回路５１は、キャリー発生期間毎に位相誤差値Ｐを遷移カウント値ｎで除算して第１のクロック信号の周波数の理論値との周波数誤差量を算出する。この処理は、実施の形態１にかかるカウンタ２４及び周波数誤差計算部２６における処理と同等の演算処理である。
【００８０】
また、周波数誤差算出プログラムを実行する演算回路５１は、シリアルクロックＳＣＬのクロックエッジがキャリー発生期間中に入力された後に、キャリー発生期間の直前のっキャリー非発生期間にシリアルクロックＳＣＬのクロックエッジが入力された場合は第１のクロック信号ＣＬＫＡの位相が理論値に対して進んでいると判断する。また、演算会と５１は、キャリー発生期間の直後のキャリー非発生期間にシリアルクロックＳＣＬのクロックエッジが入力された場合は第１のクロック信号ＣＬＫＡの位相が理論値に対して遅れていると判断する。この処理は、実施の形態１にかかる周波数誤差計算部２６の処理と同等の演算処理である。
【００８１】
また、周波数誤差算出プログラムを実行する演算回路５１は、周波数誤差計算部２６で算出された周波数誤差量の上限値と下限値との差が予め設定した所定値以下となった時点での上限値と下限値との間の値を前記ずれ量として算出する。この処理は、実施の形態１にかかる周波数判定部２７の処理と同等の演算処理である。
【００８２】
また、周波数誤差算出プログラムを実行する演算回路５１は、キャリー発生期間中にシリアルクロックＳＣＬのクロックエッジが入力され場合に遷移判定信号ＳＴを第１の状態（例えば、正常状態）とする。また、演算回路５１は、キャリー非発生期間にシリアルクロックＳＣＬのクロックエッジが入力され場合に遷移判定信号ＳＴを第２の状態（例えば、異常状態）とする。さらに、演算回路５１は、シリアルクロックＳＣＬのクロックエッジが入力されない場合に遷移判定信号を第３の状態（例えば、遷移非検出状態）とする。この処理は、実施の形態１にかかる遷移判定部２５の処理と同等の演算処理である。
【００８３】
そして、周波数誤差算出プログラムを実行する演算回路５１は、アナログＰＬＬ回路１１及びデジタルＰＬＬ回路１３に算出したずれ量ＭＯＤを与えて動作信号の周波数を補正する。この処理は、実施の形態１にかかる周波数判定部２７の処理と同等の演算処理である。
【００８４】
上記説明より、実施の形態１にかかるクロック補正部１０における処理は、周波数誤差算出プログラム等のソフトウェアにより演算処理によっても実現することが可能である。このように、ソフトウェアによりクロック補正部１０の処理を実施することで、ＣＰＵコア等を含む半導体装置により実施の形態１にかかる受信回路１を実現することができる。
【００８５】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は既に述べた実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において種々の変更が可能であることはいうまでもない。例えば、クロック補正部１０は、ホストＩＣ２に組み込むことが可能である。この場合、受信回路１側に高精度クロック信号生成部４を設け、ホストＩＣ２側に訂正後クロック信号生成部３を設ける。
【符号の説明】
【００８６】
１、１ａ、１ｂ、１ｃ  受信回路
２  ホストＩＣ
３  低精度クロック信号生成部
４  高精度クロック信号生成部
１０、１０ａ、１０ｂ、１０ｃ、５０  クロック補正部
１１  アナログＰＬＬ回路
１２  チューナー部
１３  デジタルＰＬＬ回路
１４  復調処理部
２１  通信インタフェース回路
２２  クロックエッジサンプリング回路
２３  位相差計算部
２３１  レジスタ
２３２  レジスタ
２４  カウンタ
２５  遷移判定部
２６  周波数誤差計算部
２７  周波数判定部
２７１  レジスタ
３１  信号処理部
３２  分周回路
３３  通信インタフェース回路
４１  加算器
４２  遅延回路
５１  演算回路
５２  プログラム格納部
ＣＡ  キャリー信号
Ｐ  位相誤差値
ｎ  遷移カウント値
ＳＴ  遷移判定信号
ＤＡ１  制御データ
ＳＣＬ  シリアルクロック
ＳＤＡ  シリアルデータ
ＣＬＫＡ  第１のクロック信号
ＣＬＫＢ  第２のクロック信号
ＣＬＫＲ  基準クロック信号
【図１】
2014033413.tif 000003
【図２】
2014033413.tif 000004
【図３】
2014033413.tif 000005
【図４】
2014033413.tif 000006
【図５】
2014033413.tif 000007
【図６】
2014033413.tif 000008
【図７】
2014033413.tif 000009
【図８】
2014033413.tif 000010
【図９】
2014033413.tif 000011
【図１０】
2014033413.tif 000012
【図１１】
2014033413.tif 000013
【図１２】
2014033413.tif 000014
【図１３】
2014033413.tif 000015