(57)【特許請求の範囲】
【請求項１】
周波数が時間的に変化する第１のクロック信号を受信するとともに、該第１のクロック信号の周波数の変化の周期内の複数の時点で求めた、該第１のクロック信号の周波数に対応する数値を順番に受信する受信ブロックと、
前記受信ブロックが順番に受信した数値に基づいて該数値の変化の方向を求め、前記受信した数値を補正する補正ブロックと、
前記受信した第１のクロック信号と前記補正ブロックが補正した数値とを利用して第２のクロック信号を生成するクロック生成ブロックとを備え、
前記補正ブロックが、前記変化の方向と、前記数値が求められた時刻と前記クロック生成ブロックが第２のクロック信号を生成する時刻との間の時間差とに応じて、前記補正を行うことを特徴とする受信側装置。
【請求項２】
前記補正ブロックが、前記順番に受信した数値に基づいて、さらに、該数値の最大値および最小値を求め、該最大値および最小値と前記変化の方向と、前記時間差とに応じて前記補正を行うことを特徴とする請求項１記載の受信側装置。
【請求項３】
前記補正ブロックが、前記順番に受信した数値に基づいて該数値の変化の速度を求めることによって前記変化の方向を求め、該変化の速度と前記時間差とに応じて前記補正を行うことを特徴とする請求項１記載の受信側装置。
【請求項４】
前記第１のクロック信号を送信するとともに前記数値を順番に送信する送信側装置と、請求項１ないし３のいずれかに記載の受信側装置とからなる通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、周波数が時間的に変化する第１のクロック信号と、第１のクロック信号の周波数に対応する数値を受信し、これら第１のクロック信号と数値から第２のクロック信号を生成する受信側装置および通信システムに関するものである。
【背景技術】
【０００２】
パーソナルコンピュータ（ＰＣ）や各種映像機器等の画像供給源である送信側装置と液晶ディスプレイ等の画像表示装置である受信側装置との間は、例えば、DisplayPort（ディスプレイポート）やＨＤＭＩ（High-Definition Multimedia Interface）等の規格のデジタル映像入出力インタフェースを介して接続され、ビデオデータ、オーディオデータ、同期信号等が、送信側装置から受信側装置へパケット単位で送信される。
【０００３】
上記規格では、２種類のクロック信号（ＣＬＫ１，ＣＬＫ２）の情報を送信側装置から受信側装置に対して送信するために、一方のクロック信号（例えば、ＣＬＫ１）の情報をそのまま送信し、もう一方のクロック信号（例えば、ＣＬＫ２）の情報を、式（１）の関係が成り立つようなＮ値およびＭ値（Ｍ，Ｎは整数）を送信する。式（１）を周波数の視点で見れば式（２）となる。通常、Ｎ値は非常に大きな固定値をとる。
【０００４】
Ｎ＊ＴＣＬＫ１＝Ｍ＊ＴＣＬＫ２  …  （１）
Ｎ／ＦＣＬＫ１＝Ｍ／ＦＣＬＫ２  …  （２）
ここで、ＴＣＬＫ１、ＴＣＬＫ２はそれぞれＣＬＫ１，ＣＬＫ２の周期、ＦＣＬＫ１、ＦＣＬＫ２はそれぞれＣＬＫ１，ＣＬＫ２の周波数である。
【０００５】
受信側装置では、ＣＬＫ１とともに送信されてくるＮ値、Ｍ値からＣＬＫ２が生成（再生）され、生成されたＣＬＫ２をＣＬＫ１とともに使用する。Ｎ値、Ｍ値は、所定の頻度で定期的に送信され、ＣＬＫ１とＣＬＫ２の関係が定期的に更新される。
【０００６】
また、ＣＬＫ１にスプレッドスペクトラム（スペクトラム拡散）クロッキング（ＳＳＣ）を掛けて周波数を時間的に変化させる場合がある。ＳＳＣは、例えば、１クロック毎にクロック信号の遅延値を変化させることにより、クロック信号の周波数（すなわち、周期）を周期的に変調するものである。クロック信号の周波数を周期的に変調することにより、電磁干渉（ＥＭＩ）を低減させることができる。
【０００７】
図１１は、ＣＬＫ１，２の関係を表す概念図である。同図に示すように、ＣＬＫ１は、ＳＳＣ変調されたものであり、１クロック毎に周期ＴＣＬＫ１が変化する。一方、ＣＬＫ２の周期ＴＣＬＫ２は固定である。ＣＬＫ１のＮ周期の時間をＴｉｍｅとすると、このＴｉｍｅにはＭ周期のＣＬＫ２が含まれる。従って、ＣＬＫ２の周波数ＦＣＬＫ２は、式（３）により求めることができる。
【０００８】
ＦＣＬＫ２＝Ｍ／Ｎ＊ＦＣＬＫ１  …  （３）
【０００９】
ここで、本発明に関連性のある先行技術文献として特許文献１〜３がある。
【００１０】
特許文献１には、ピクセル／オーディオクロックレートおよびリンクレートを、２１０×３３×５７×１１１Ｈｚで表されるマスタ周波数２３．７６ＧＨｚに基づいてＡ，Ｂ，Ｃ，Ｄの４つのパラメータで表現し、リンククロックからピクセル／オーディオクロックを再生成することが記載されている。特許文献２にも同様の技術が記載されている。特許文献３の図５には、ビデオ受信機がＰＬＬ回路を備え、基準クロックから表示クロックを発生することが記載されている。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００５−４７３０号公報
【特許文献２】特開２００９−２０４９１号公報
【特許文献３】米国特許第７９５６８５６号明細書
【発明の概要】
【発明が解決しようとする課題】
【００１２】
ＣＬＫ１がＳＳＣ変調されている場合、Ｍ値は、その時のＣＬＫ１の周波数をもとに生成される。そのため、Ｍ値は、図１２に示すように、ＣＬＫ１の周波数の変化に応じて変動する。
【００１３】
図１２は、ＣＬＫ１の周波数の変化を表すグラフである。グラフの縦軸は周波数（Ｆ）、横軸は時間（Ｔ）である。このグラフに示すように、ＣＬＫ１の周波数ＦＣＬＫ１は、その最大周波数ＦＮから次第に低下して最小周波数ＦＮ−５０００ｐｐｍとなり、最小周波数ＦＮ−５０００ｐｐｍから次第に上昇して最大周波数ＦＮに戻る三角波状のプロファイルである、変化の周期を繰り返す。
【００１４】
ここで、Ｎ値は固定であるから、Ｎ／ＦＣＬＫ１の値はＦＣＬＫ１の値が低下するに従って大きくなる。Ｎ／ＦＣＬＫ１の値が大きくなると、式（２）から、Ｎ／ＦＣＬＫ１＝Ｍ／ＦＣＬＫ２であるからＭ／ＦＣＬＫ２の値も大きくなるが、送信側装置においてＦＣＬＫ２の値は固定であるからＭ値が大きくなる。つまり、グラフにおいて、Ｍ１≦Ｍ２≦Ｍ３、Ｍ４≧Ｍ５≧Ｍ６となり、Ｍ値はＣＬＫ１の周波数の変化に応じて変動する。
【００１５】
受信側装置は、送信側装置から送信されてくるＣＬＫ１とＭ値、Ｎ値とを利用してＣＬＫ２を生成する。このとき、Ｍ値と、送信側装置がそのＭ値を生成したときのＣＬＫ１の周波数とを利用することができれば、正確に、一定周波数のＣＬＫ２を生成することができる。しかしＣＬＫ１がＳＳＣ変調されている場合には、受信側装置がＣＬＫ２を生成するときに利用するＣＬＫ１の周波数は、送信側装置がＭ値を生成したときのＣＬＫ１の周波数とは異なる。そのため、受信側装置で生成するＣＬＫ２の周波数変化が発生する。
【００１６】
図１３（Ａ）は、送信側装置でＭ値を生成する様子、同図（Ｂ）は、受信側装置でＣＬＫ２を生成する様子を表すタイミングチャートである。同図（Ａ）に示すように、送信側装置でＭ値を生成するときには、図１２に示す時刻Ｔ０でのＣＬＫ１の周波数をＦＣＬＫ１Ｔ０、Ｍ値をＭＴ０とすると、時刻Ｔ０でのＣＬＫ１のＮ周期の時間ＴｉｍｅにはＭＴ０周期のＣＬＫ２が含まれる。従って、式（３）から式（４）の関係が成り立つ。
【００１７】
ＦＣＬＫ２＝ＭＴ０／Ｎ＊ＦＣＬＫ１Ｔ０  …  （４）
【００１８】
一方、受信側装置でＣＬＫ２を生成するときには、図１２に示す時刻Ｔ１でのＣＬＫ１の周波数をＦＣＬＫ１Ｔ１とすると、時刻Ｔ０でのＭ値であるＭＴ０と時刻Ｔ１でのＣＬＫ１の周波数であるＦＣＬＫ１Ｔ１を使ってＣＬＫ２が生成される。このため、時刻Ｔ１でのＣＬＫ１のＮ周期の時間ＴｉｍｅにはＭＴ０周期のＣＬＫ２が含まれる。従って、式（５）の関係が成り立つ。
【００１９】
ＦＣＬＫ２＝ＭＴ０／Ｎ＊ＦＣＬＫ１Ｔ１  …  （５）
【００２０】
図１２から分かるように、時刻Ｔ０よりも時刻Ｔ１でのＣＬＫ１の周波数の方が低いため、図１３（Ｂ）に示すように、時刻Ｔ０よりも時刻Ｔ１でのＣＬＫ１の周期の方が長くなる。このため、時刻Ｔ１でのＣＬＫ１と時刻Ｔ０でのＭ値からＣＬＫ２を生成すると、ＣＬＫ２の周期の方が長くなる。
【００２１】
このように、受信側装置において、時刻Ｔ０でのＭ値であるＭＴ０をそのまま使用してＣＬＫ２を生成すると、ＣＬＫ２の周波数がＣＬＫ１の周波数の変化に応じて変動することになる。
【００２２】
この結果、ＣＬＫ２の周波数の大きな変動が許されないアプリケーション、例えば、オーディオアプリケーションでは、再生された音声がノイジーになる等の不具合が発生する。ビデオアプリケーションでは、ＣＬＫ２の周波数変化率が５０００ｐｐｍであっても全く問題はないが、オーディオアプリケーションでは、ＣＬＫ２の周波数変化率を１０００ｐｐｍ以下にしたいという要求がある。
【００２３】
本発明の目的は、周波数が時間的に変化する第１のクロックとその周波数に対応する数値から、第１のクロック信号よりも周波数変化率の小さい第２のクロック信号を生成することができる受信側装置および通信システムを提供することにある。
【課題を解決するための手段】
【００２４】
上記目的を達成するために、本発明は、周波数が時間的に変化する第１のクロック信号を受信するとともに、該第１のクロック信号の周波数の変化の周期内の複数の時点で求めた、該第１のクロック信号の周波数に対応する数値を順番に受信する受信ブロックと、
前記受信ブロックが順番に受信した数値に基づいて該数値の変化の方向を求め、前記受信した数値を補正する補正ブロックと、
前記受信した第１のクロック信号と前記補正ブロックが補正した数値とを利用して第２のクロック信号を生成するクロック生成ブロックとを備え、
前記補正ブロックが、前記変化の方向と、前記数値が求められた時刻と前記クロック生成ブロックが第２のクロック信号を生成する時刻との間の時間差とに応じて、前記補正を行うことを特徴とする受信側装置を提供するものである。
【００２５】
ここで、前記補正ブロックが、前記順番に受信した数値に基づいて、さらに、該数値の最大値および最小値を求め、該最大値および最小値と前記変化の方向と、前記時間差とに応じて前記補正を行うことが好ましい。
【００２６】
また、前記補正ブロックが、前記順番に受信した数値に基づいて該数値の変化の速度を求めることによって前記変化の方向を求め、該変化の速度と前記時間差とに応じて前記補正を行うことが好ましい。
【００２７】
また、本発明は、前記第１のクロック信号を送信するとともに前記数値を順番に送信する送信側装置と、上記のいずれかに記載の受信側装置とからなる通信システムを提供する。
【発明の効果】
【００２８】
本発明によれば、第１のクロック信号に対応する数値を補正し、第１のクロック信号と補正した数値から第２のクロック信号を生成することにより、第２のクロック信号の周波数が第１のクロック信号の周波数の変化に応じて変動することを抑制することができ、第１のクロック信号よりも周波数の変化率が小さい第２のクロック信号を生成することができる。
【図面の簡単な説明】
【００２９】
【図１】本発明の通信システムの構成を表す一実施形態のブロック図である。
【図２】ソース回路の構成を表す回路図である。
【図３】ＣＬＫ２−２用Ｍ値補正回路の構成を表すブロック図である。
【図４】（Ａ）は、ＣＬＫ１の周波数変化を表すグラフ、（Ｂ）は、（Ａ）に示す現在のＭ値（観測値）と補正後のＭ’値（補正値）との関係を表すグラフである。
【図５】図３に示すＣＬＫ２−２用Ｍ値補正回路の動作を表すフローチャートである。
【図６】（Ａ）は、ソース回路でＭ値を生成する様子、（Ｂ）は、シンク回路でＣＬＫ２を生成する様子を表すタイミングチャートである。
【図７】ＣＬＫ２−２用Ｍ値補正回路の構成を表す別の例のブロック図である。
【図８】ＣＬＫ１の周波数変化のプロファイルが三角波状の場合のＭ値の補正方法を表す概念図である。
【図９】ＣＬＫ１の周波数変化のプロファイルがサイン波状である場合のＭ値の補正方法を表す概念図である。
【図１０】図７に示すＣＬＫ２−２用Ｍ値補正回路の動作を表すフローチャートである。
【図１１】ＣＬＫ１，２の関係を表す概念図である。
【図１２】ＣＬＫ１の周波数の変化を表すグラフである。
【図１３】（Ａ）は、送信側装置でＭ値を生成する様子、（Ｂ）は、受信側装置でＣＬＫ２を生成する様子を表すタイミングチャートである。
【発明を実施するための形態】
【００３０】
以下に、添付の図面に示す好適実施形態に基づいて、本発明の受信側装置および通信システムを詳細に説明する。
【００３１】
図１は、本発明の通信システムの構成を表す一実施形態のブロック図である。同図に示す通信システム１０は、送信側装置であるソース回路１２と、受信側装置であるシンク回路１４とによって構成されている。
【００３２】
通信システム１０は、DisplayPortやＨＤＭＩ等の規格に準拠して、クロック信号、Ｎ値およびＭ値、ビデオデータ、オーディオデータ等をソース回路１２からシンク回路１４へパケット単位で送信する。
【００３３】
通信システム１０では、２種類のクロック信号（ＣＬＫ１，ＣＬＫ２）の情報を送信するために、ＳＳＣ変調され、周波数が時間的に変化する第１のクロック信号（例えば、ＣＬＫ１）と、式（１）または式（２）の関係が成り立つ第２のクロック信号（例えば、ＣＬＫ２）を生成（再生）するためのＮ値およびＭ値を送信する。Ｎ値は固定値である。Ｍ値は、ＣＬＫ１の周波数の変化の周期内の複数の時点で求めた、ＣＬＫ１の周波数に対応する数値であり、ＣＬＫ１の周波数の変化に応じて変動する。
【００３４】
Ｎ値およびＭ値は定期的に送信され、ＣＬＫ１とＣＬＫ２の関係は定期的に更新される。例えば、ビデオデータを構成する各ラインのデータが送信される期間の間の、水平ブランキング期間ごとに、Ｎ値およびＭ値が送信される。シンク回路１４では、ＣＬＫ１、Ｍ値およびＮ値からＣＬＫ２が生成され、ＣＬＫ２を使用してビデオデータ、オーディオデータ等の処理が行われる。
【００３５】
ソース回路１２は、ＳＳＣ変調されたＣＬＫ１、シンク回路１４でＣＬＫ２を生成（再生）するためのＮ値およびＭ値、ビデオデータ、オーディオデータ等を含むデータをシンク回路１４へ送信するための、高速差動信号を生成する。
【００３６】
図２は、ソース回路１２の構成を表す回路図である。ソース回路１２は、同図に示すように、ＰＬＬ回路１８と、Ｍ値生成回路２０と、ＳＳＣ変調回路２２と、マルチプレクサ２４と、パケット生成回路２８と、フリップフロップ２６とを備えている。
【００３７】
ＰＬＬ回路１８は、ＣＬＫ１の基準信号を逓倍して固定周波数のＣＬＫ１を生成する。例えば、ＰＬＬ回路１８は、２７ＭＨｚの基準信号を１０逓倍して２７０ＭＨｚのＣＬＫ１を生成する。
【００３８】
ＳＳＣ変調回路２２は、ＰＬＬ回路１８から出力されるＣＬＫ１をＳＳＣ変調する。ＳＳＣ変調されたＣＬＫ１は、例えば、周波数の変化率５０００ｐｐｍで、三角波状のプロファイルの、ＣＬＫ１の周波数変化の周期（例えば、３０ｍｓ）を繰り返す。
【００３９】
Ｍ値生成回路２０は、ＳＳＣ変調回路２２から出力されるＳＳＣ変調されたＣＬＫ１、固定周波数のＣＬＫ２、および、固定値であるＮ値からＭ値を生成する。
【００４０】
マルチプレクサ２４は、ビデオデータ、オーディオデータ、Ｎ値、Ｍ値生成回路２０から出力されるＭ値を所定のタイミングで切り替えて、これらを含むデータを出力する。
【００４１】
パケット生成回路２８は、マルチプレクサ２４で選択されたデータを含むパケットを生成する。
【００４２】
フリップフロップ２６は、パケット生成回路２８が生成したパケットを構成する各ビットの値を、ＳＳＣ変調回路２２から出力されるＳＳＣ変調されたＣＬＫ１のタイミングで保持し、高速差動信号として出力する。本実施形態の場合、ＣＬＫ１は、図１に示すように、ビデオデータ、オーディオデータ、Ｎ値およびＭ値を含むデータに重畳されてシンク回路１４に送信される。
【００４３】
一方、シンク回路１４は、ソース回路１２から送信される高速差動信号を受信し、受信した信号からＣＬＫ１を再生し、さらに、Ｎ値およびＭ値、ビデオデータ、オーディオデータを含むパケットを再生する。そして、ＣＬＫ１と、Ｎ値およびＭ値からＣＬＫ２を生成（再生）し、ＣＬＫ２を使用してビデオデータおよびオーディオデータを処理する。
【００４４】
シンク回路１４は、図１に示すように、クロックリカバリ回路３０と、データリカバリ回路３２と、ＣＬＫ２−１用Ｎ，Ｍ値検出回路３４と、ＣＬＫ２−１生成回路３６と、ＣＬＫ２−２用Ｎ，Ｍ値検出回路３８と、ＣＬＫ２−２用Ｍ値補正回路４０と、ＣＬＫ２−２生成回路４２と、ビデオ処理回路４４と、オーディオ処理回路４６とを備えている。
【００４５】
ここで、ＣＬＫ２−１は、ビデオ処理回路４４においてビデオデータを処理するときに使用されるクロック信号であり、ＣＬＫ２−２は、オーディオ処理回路４６においてオーディオデータを処理するときに使用されるクロック信号である。
【００４６】
クロックリカバリ回路３０とデータリカバリ回路３２は、本発明の受信ブロックを構成するものである。クロックリカバリ回路３０は、ソース回路１２から送信される高速差動信号を受信し、受信した信号から、ＳＳＣ変調されたＣＬＫ１を再生する。一方、データリカバリ回路３２は、受信した信号から、Ｎ値およびＭ値、ビデオデータ、オーディオデータを含むパケットを再生する。
【００４７】
ＣＬＫ２−１用Ｎ，Ｍ値検出回路３４は、データリカバリ回路３２から出力されるＮ値およびＭ値を含むパケットから、Ｎ値およびＭ値を検出する。ＣＬＫ２−１用Ｎ，Ｍ値検出回路３４は、Ｍ値を検出する場合、Ｍ値の変更を検出するとともに、その変更後のＭ値を検出する。ＣＬＫ２−１用Ｎ，Ｍ値検出回路３４からは、Ｍ値の変更を示す検出信号と、変更後のＭ値が出力される。
【００４８】
ここで、ソース回路１２が新たなＭ値（直前のＭ値とは数値の異なるＭ値）を送信するために生成する、Ｎ値およびＭ値を含んだパケットは、そのヘッダー部分によって特定可能である。従って、シンク回路１４は、このヘッダー部分を検出することにより、Ｍ値の変更を検出し、変更後のＭ値を検出することが可能である。
【００４９】
ＣＬＫ２−１生成回路３６は、クロックリカバリ回路３０から出力されるＣＬＫ１、ＣＬＫ２−１用Ｎ，Ｍ値検出回路３４から出力されるＣＬＫ２−１用のＮ値およびＭ値を使用して、式（６）によりＣＬＫ２−１を生成する。
【００５０】
ＦＣＬＫ２＝ＭＴ０／Ｎ＊ＦＣＬＫ１Ｔ１  …  （６）
ＭＴ０は、ソース回路１２内のＭ値生成回路２０がＭ値を生成した時刻Ｔ０でのＭ値である。ＦＣＬＫ１Ｔ１は、シンク回路１４内のＣＬＫ２−１生成回路３６がＣＬＫ２を生成する時刻Ｔ１でのＣＬＫ１の周波数である。
【００５１】
ここで、少なくとも以下の（１）〜（４）の原因により、Ｔ０とＴ１とは異なった時刻となる。
（１）Ｍ値生成回路２０によるＭ値の生成に時間を要する
図１１に示されるように、Ｍ値は、Ｔｉｍｅ＝Ｎ／ＦＣＬＫ１の期間にわたるＣＬＫ２の周期のカウントを、少なくとも１回行うことによって求める。このため、Ｍ値生成回路２０が生成した時刻において既に、Ｍ値は、少なくとも概略Ｔｉｍｅ／２だけ前の時刻での値になる。前述のようにＮ値は非常に大きな固定値であり、Ｔｉｍｅも長くなる。
（２）ソース回路１２からのＭ値の送信に時間を要する
Ｍ値生成回路２０によるＭ値の生成が完了した後、Ｍ値を含んだパケットがソース回路１２から送信されるまでには、マルチプレクサ２４によるＭ値およびＮ値の選択が行われ、さらに、パケット生成回路２８によるＮ，Ｍ値を含んだパケットの生成が行われるまでの時間が必要である。
（３）シンク回路１４内でのＭ値の検出に時間を要する
ソース回路１２がＮ，Ｍ値を含んだパケットを送信した後、シンク回路１４のデータリカバリ回路３２がパケットの再生を行い、ＣＬＫ２−１用Ｎ，Ｍ値検出回路３４がＮ値およびＭ値の検出を行うまでの時間が必要である。
（４）ＣＬＫ２−１生成回路３６によるＣＬＫ２の周波数変更に時間を要する
ＣＬＫ２−１用Ｎ，Ｍ値検出回路３４がＮ値およびＭ値を検出した後、ＣＬＫ２−１生成回路３６が、新たなＭ値を利用してＣＬＫ２の周波数を変更するまでに、例えば、Ｍ／Ｎの除算演算を行う時間が必要である。
【００５２】
以上の原因により、図１３を使って説明したように、ＣＬＫ２−１は周波数変化を有したものになる。ビデオ処理回路４４での処理に利用するＣＬＫ２−１には、このような周波数変化が許容される。これに対して、オーディオデータの処理に利用するＣＬＫ２−２は、周波数変動率を、例えば１０００ｐｐｍ以下に抑制する必要がある。このため、オーディオ処理回路４６に供給するＣＬＫ２−２を生成するＣＬＫ２−２生成回路４２には、ＣＬＫ２−２用Ｎ，Ｍ値検出回路３８が検出したＭ値を、ＣＬＫ２−２用Ｍ値補正回路４０によって補正した後のＭ値が供給される。
【００５３】
ＣＬＫ２−２用Ｎ，Ｍ値検出回路３８は、データリカバリ回路３２から出力されるＮ値およびＭ値を含むパケットから、Ｎ値およびＭ値を検出する。ＣＬＫ２−２用Ｎ，Ｍ値検出回路３８は、Ｍ値を検出する場合、Ｍ値の変更を検出するとともに、その変更後のＭ値を検出する。ＣＬＫ２−２用Ｎ，Ｍ値検出回路３８からは、Ｍ値の変更を示す検出信号と、変更後のＭ値が出力される。
【００５４】
ＣＬＫ２−２用Ｍ値補正回路４０は、本発明の補正ブロックを構成するものであり、ＣＬＫ２−２用Ｎ，Ｍ値検出回路３８から出力される、順番に受信したＭ値に基づいて、Ｍ値の変化の方向を求め、求めたＭ値の変化の方向と、Ｔ０とＴ１との間の時間差ΔＴとに応じてＭ値を補正する。
【００５５】
ＣＬＫ２−２生成回路４２は、本発明のクロック生成ブロックを構成するものであり、クロックリカバリ回路３０から出力されるＣＬＫ１、ＣＬＫ２−２用Ｍ値補正回路４０から出力されるＮ値および補正後のＭ値を利用して、ＣＬＫ１に比較して周波数変化率が小さいＣＬＫ２−２を生成する。時刻Ｔ０でのＭ値であるＭＴ０の補正後のＭ値をＭ’Ｔ０とすると、ＣＬＫ２−２の周波数は式（７）により求めることができる。
【００５６】
ＦＣＬＫ２＝Ｍ’Ｔ０／Ｎ＊ＦＣＬＫ１Ｔ１  …  （７）
【００５７】
ビデオ処理回路４４は、ＣＬＫ２−１生成回路３６から出力されるＣＬＫ２−１を使用して、データリカバリ回路３２から出力されるビデオデータを処理する。処理後のビデオデータはディスプレイ７４に送信され、ビデオデータに対応する画像がディスプレイ７４に表示される。
【００５８】
オーディオ処理回路４６は、ＣＬＫ２−２生成回路４２から出力されるＣＬＫ２−２を使用して、データリカバリ回路３２から出力されるオーディオデータを処理する。処理後のオーディオデータはスピーカ７６に送信され、オーディオデータに対応する音声がスピーカ７６から再生される。
【００５９】
次に、ＣＬＫ２−２用Ｍ値補正回路４０について詳しく説明する。
【００６０】
図３は、ＣＬＫ２−２用Ｍ値補正回路４０の構成を表すブロック図である。同図に示すＣＬＫ２−２用Ｍ値補正回路４０は、Ｍ値最大最小検出回路４８と、ＳＳＣ周期検出回路５０と、上昇下降傾向検出回路５２と、Ｍ値補正回路５４とを備えている。
【００６１】
Ｍ値最大最小検出回路４８は、最大値検出回路５６および最小値検出回路５８を備えている。Ｍ値最大最小検出回路４８は、ＣＬＫ２−２用Ｎ，Ｍ値検出回路３８から出力される、順番に受信したＣＬＫ２−２用のＭ値（観測値）に基づいて、その最大値および最小値を検出する。
【００６２】
最大値検出回路５６は、比較回路６０と、最大値保持回路６２とを備えている。最大値検出回路５６は、ＣＬＫ２−２用Ｎ，Ｍ値検出回路３８からＭ値の変更を示す検出信号を受け取ると、最大値保持回路６２に保持されたＭ値の最大値の候補値と現在のＭ値（観測値）とを比較回路６０で比較し、現在のＭ値の方がＭ値の最大値の候補値よりも大きい場合に、Ｍ値の最大値の候補値を現在のＭ値に更新することを繰り返すことにより、Ｍ値の最大値を検出する。
【００６３】
最小値検出回路５８は、比較回路６４と、最小値保持回路６６とを備えている。最小値検出回路５８は、同様に、ＣＬＫ２−２用Ｎ，Ｍ値検出回路３８からＭ値の変更を示す検出信号を受け取ると、最小値保持回路６６に保持されたＭ値の最小値の候補値と現在のＭ値とを比較回路６４で比較し、現在のＭ値の方がＭ値の最小値の候補値よりも小さい場合に、Ｍ値の最小値の候補値を現在のＭ値に更新することを繰り返すことにより、Ｍ値の最小値を検出する。
【００６４】
ＳＳＣ周期検出回路５０は、ＣＬＫ２−２用Ｎ，Ｍ値検出回路３８からＭ値の変更を示す検出信号を受け取った時刻と、現在のＭ値と、Ｍ値最大最小検出回路４８から出力されるＭ値の最大値および最小値から、ＣＬＫ１の周波数の変化に応じて変動するＭ値の変化の周期を検出する。
【００６５】
ＳＳＣ周期検出回路５０は、タイマー６８を備えている。ＳＳＣ周期検出回路５０は、タイマー６８により、Ｍ値が最大値から最小値になるまでの時間（下降期間）、および、Ｍ値が最小値から最大値になるまでの時間（上昇期間）を計測する。
【００６６】
上昇下降傾向検出回路５２は、ＣＬＫ２−２用Ｎ，Ｍ値検出回路３８から受け取るＭ値の変化の方向、つまり、現在のＭ値が、Ｍ値の変化の周期のうちの上昇期間にあるのか下降期間にあるのかを検出する。
【００６７】
上昇下降傾向検出回路５２は、直前値保持回路７０と、比較回路７２とを備えている。上昇下降傾向検出回路５２は、直前値保持回路７０に保持された直前のＭ値と現在のＭ値とを比較することにより、直前のＭ値よりも現在のＭ値の方が大きい場合に、現在のＭ値が上昇傾向（上昇方向）にあることを検出し、小さい場合に、現在のＭ値が下降傾向（下降方向）にあることを検出する。
【００６８】
Ｍ値補正回路５４は、ＣＬＫ２−２用Ｎ，Ｍ値検出回路３８からＭ値の変更を示す検出信号を受け取ると、Ｍ値最大最小検出回路４８から出力されるＭ値の最大値および最小値、ＳＳＣ周期検出回路５０から出力されるＭ値の変化の上昇期間および下降期間、上昇下降傾向検出回路５２から出力されるＭ値の上昇傾向および下降傾向、および、ソース回路１２がＭ値を求めた時刻Ｔ０とＣＬＫ２−２生成回路４２がＣＬＫ２を生成する時刻との時間差ΔＴから、例えば、直線補間により、ＣＬＫ２−２用の補正後のＭ’値（補正値）を算出する。
【００６９】
本実施形態のように、ＣＬＫ１の周波数変化のプロファイルが三角波状である場合、上昇期間および下降期間をＴ、Ｍ値の最大値および最小値をそれぞれＭｍａｘ、Ｍｍｉｎとすると、補正後のＭ’値は、上昇傾向の場合には式（８）、下降傾向の場合には式（９）により算出することができる。
【００７０】
Ｍ’＝Ｍ＋（Ｍｍａｘ−Ｍｍｉｎ）＊ΔＴ／Ｔ  …  （８）
Ｍ’＝Ｍ−（Ｍｍａｘ−Ｍｍｉｎ）＊ΔＴ／Ｔ  …  （９）
【００７１】
図３に示すように、Ｍ値の最大値および最小値、Ｍ値の上昇期間および下降期間から、Ｍ値の変化の波形が分かる。また、Ｍ値の上昇傾向および下降傾向から、現在のＭ値が上昇期間にあるのか下降期間にあるのかが分かる。そして、時間差ΔＴに応じて現在のＭ値を時間的に進めることにより、補正後のＭ’値（現在のＣＬＫ１の周波数に対応するＭ値）を求めることができる。
【００７２】
図４（Ａ）は、ＣＬＫ１の周波数変化を表すグラフである。このグラフは、図１２のグラフと同じものであり、ＣＬＫ１の周波数ＦＣＬＫ１は、最大周波数ＦＮから次第に低下して最小周波数ＦＮ−５０００ｐｐｍとなり、続いて、最小周波数ＦＮ−５０００ｐｐｍから次第に上昇して最大周波数ＦＮに戻る三角波状の変化プロファイルを持つ。同図（Ｂ）は、同図（Ａ）に示す現在のＭ値（観測値）と補正後のＭ’値（補正値）との関係を表すグラフである。
【００７３】
ＣＬＫ２−２生成回路４２がＣＬＫ２を生成する時刻よりも時間差ΔＴだけ前の時刻でのＭ値がソース回路１２から送られるとすると、ＣＬＫ２生成に利用するＣＬＫ１の周波数とＭ値とのタイミングを一致させるには、時間差ΔＴだけＭ値を時間的に進める必要がある。
【００７４】
現在のＭ値が下降傾向にある場合、ＣＬＫ１が時間的に進むとその周波数が低下し、Ｍ値は大きくなる方向に変動する。従って、Ｍ値を時間的に進めるには、Ｍ値が大きくなる方向に補正する必要がある。これに対し、現在のＭ値が上昇傾向にある場合、ＣＬＫ１が時間的に進むとその周波数が上昇し、Ｍ値は小さくなる方向に変動するため、Ｍ値が小さくなる方向に補正する必要がある。
【００７５】
以下、図５に示すフローチャートを参照して、ＣＬＫ２−２用Ｍ値補正回路４０の動作を説明する。
【００７６】
まず、Ｍ値最大最小検出回路４８により、Ｍ値（観測値）の最大値および最小値を検出し（ステップＳ１１）、ＳＳＣ周期検出回路５０により、Ｍ値の変化の周期を検出する（ステップＳ１２）。そして、現在のＭ値を観測し（ステップＳ１３）、上昇下降傾向検出回路５２により、現在のＭ値が、Ｍ値の変化の周期のうちの上昇期間にあるのか下降期間にあるのかを検出する（ステップＳ１４）。
【００７７】
そして、現在のＭ値が上昇期間にある場合（ステップＳ１５でＹＥＳ）、時間差ΔＴに応じて現在のＭ値を時間的に進める、すなわち、上昇期間において現在のＭ値を上昇させるための上昇補正を行う（ステップＳ１６）。一方、現在のＭ値が下降期間にある場合（ステップＳ１５でＮＯ）、時間差ΔＴに応じて現在のＭ値を時間的に進める、すなわち、下降期間において現在のＭ値を下降させるための下降補正を行う（ステップＳ１７）。
【００７８】
これ以後、ステップＳ１３へ戻り、上記の動作を繰り返す。
【００７９】
図６（Ａ）は、ソース回路１２でＭ値を生成する様子、同図（Ｂ）は、シンク回路１４でＣＬＫ２を生成する様子を表すタイミングチャートである。同図（Ａ）に示すように、ソース回路１２でＭ値を生成する場合、図４（Ａ）に示す時刻Ｔ０でのＣＬＫ１の周波数をＦＣＬＫ１Ｔ０、Ｍ値をＭＴ０とすると、時刻Ｔ０でのＣＬＫ１のＮ周期の時間ＴｉｍｅにはＭＴ０周期のＣＬＫ２が含まれる。従って、式（１０）の関係が成り立つ。
【００８０】
ＦＣＬＫ２＝ＭＴ０／Ｎ＊ＦＣＬＫ１Ｔ０  …  （１０）
【００８１】
一方、シンク回路１４でＣＬＫ２を生成する場合、図４（Ａ）に示す時刻Ｔ１でのＣＬＫ１の周波数をＦＣＬＫ１Ｔ１とすると、時刻Ｔ０でのＭ値であるＭＴ０を時間差ΔＴに応じて補正したＭ’Ｔ０と時刻Ｔ１でのＣＬＫ１の周波数であるＦＣＬＫ１Ｔ１を使ってＣＬＫ２が生成される。同様に、時刻Ｔ１でのＣＬＫ１のＮ周期の時間ＴｉｍｅにはＭ’Ｔ０周期のＣＬＫ２が含まれる。従って、式（１１）の関係が成り立つ。
【００８２】
ＦＣＬＫ２＝Ｍ’Ｔ０／Ｎ＊ＦＣＬＫ１Ｔ１  …  （１１）
【００８３】
図４（Ａ）から分かるように、時刻Ｔ０よりも時刻Ｔ１でのＣＬＫ１の周波数の方が低いため、図６（Ｂ）に示すように、時刻Ｔ０よりも時刻Ｔ１でのＣＬＫ１の周期の方が長くなる。これに対し、時刻Ｔ０でのＭ値であるＭＴ０は時間差ΔＴに応じてＭ’Ｔ０に補正されているため、時刻Ｔ１でのＣＬＫ１のＮ周期の時間ＴｉｍｅにはＭ’Ｔ０周期のＣＬＫ２が含まれ、時刻Ｔ０と時刻Ｔ１でのＣＬＫ２の周波数はほぼ等しくなる。
【００８４】
このように、シンク回路１４において、時刻Ｔ０でのＭ値であるＭＴ０を、Ｍ値の変化の方向と時間差ΔＴに応じてＭ’Ｔ０に補正することにより、ＣＬＫ２の周波数がＣＬＫ１の周波数の変化に応じて変動することを抑制することができ、その周波数変化率を、ＣＬＫ１の周波数変化率である５０００ｐｐｍよりも小さい範囲、例えば１０００ｐｐｍ以下にすることができる。
【００８５】
ＣＬＫ２−２に許容される周波数変化率が比較的大きい場合には、ＣＬＫ２−２用Ｍ値補正回路４０で利用する時間差ΔＴを固定の値とすることも可能である。しかし、例えば、処理するビデオデータの解像度やフレームレート等によってソース回路１２およびシンク回路１４の動作条件が変化し、実際の時間差ΔＴの値が変化することがある。このため、ＣＬＫ２−２用Ｍ値補正回路４０で利用する時間差ΔＴの値を、複数から選択可能にすることが好ましい。
【００８６】
時間差ΔＴは、シンク回路１４のみではなくソース回路１２の動作状態によっても変化する。ソース回路１２で発生する時間差についての情報が得られる場合には、その情報を考慮して、シンク回路１４のＣＬＫ２−２用Ｍ値補正回路４０で利用する時間差ΔＴを選択する。ソース回路１２で発生する時間差についての情報が得られない場合には、ソース回路１２とシンク回路１４とを組み合わせて動作させて生成したＣＬＫ２の周波数変化率を測定し、変化率が許容可能な範囲内になるように、ＣＬＫ２−２用Ｍ値補正回路４０で利用する時間差ΔＴの値を調整することが好ましい。ただし、ソース回路１２で発生する時間差についての情報が得られない場合であっても、ディスプレイポート等の規格に沿って動作するソース回路１２であれば、解像度、フレームレート等が同一であれば、標準的な値を仮定して時間差ΔＴを選択することにより、許容可能な範囲の周波数変化率のＣＬＫ２が生成可能な場合も多い。
【００８７】
なお、ＣＬＫ１の周波数変化の周期、周波数変化率、周波数変化のプロファイルが既知の場合、ＣＬＫ２−２用Ｍ値補正回路４０において、Ｍ値最大最小検出回路４８、ＳＳＣ周期検出回路５０は不要である。
【００８８】
また、ＣＬＫ１の周波数変化のプロファイルは三角波状であることに限定されず、例えば、サイン波状であってもよいし、あるいは、それ以外の任意の形状であってもよい。
【００８９】
図７は、ＣＬＫ２−２用Ｍ値補正回路４０の構成を表す別の例のブロック図である。同図に示すＣＬＫ２−２用Ｍ値補正回路４０は、Ｍ値記憶回路７８と、時刻記憶回路８０と、Ｍ値補正回路８２とを備えている。
【００９０】
Ｍ値記憶回路７８は、直前値保持回路８４を備えており、常に現在のＭ値の直前のＭ値を直前値保持回路８４に保持している。そして、Ｍ値記憶回路７８は、ＣＬＫ２−２用Ｎ，Ｍ値検出回路３８からＭ値の変更を示す検出信号を受け取ると、現在のＭ値であるＭ１と、直前値保持回路８４に保持された直前のＭ値であるＭ０を出力する。
【００９１】
時刻記憶回路８０は、タイマー８６と、直前時刻保持回路８８とを備えており、常にタイマー８６により計測された直前のＭ値の変更の検出時刻を直前時刻保持回路８８に保持している。そして、時刻記憶回路８０は、Ｍ値検出回路３８からＭ値の変更を示す検出信号を受け取ると、タイマー８６により計測された現在のＭ値であるＭ１の変更の検出時刻ｔ１と、直前時刻保持回路８８に保持された直前のＭ値であるＭ０の変更の検出時刻ｔ０を出力する。
【００９２】
Ｍ値補正回路８２は、Ｍ値記憶回路７８から出力される現在のＭ値であるＭ１およびその直前のＭ値であるＭ０、時刻記憶回路８０から出力される現在のＭ値であるＭ１の変更の検出時刻ｔ１およびその直前のＭ値であるＭ０の変更の検出時刻ｔ０と、時間差ΔＴから、Ｍ値の変化の速度（Ｍ１−Ｍ０）／（ｔ１−ｔ０）を算出し、式（１２）により、ＣＬＫ２−２用の補正後のＭ１’値（補正値）を算出する。
【００９３】
Ｍ１’＝（Ｍ１−Ｍ０）／（ｔ１−ｔ０）＊ΔＴ＋Ｍ１  …  （１２）
ΔＴは、式（８）、（９）と同様に、ソース回路１２がＭ値を求めた時刻Ｔ０と、ＣＬＫ２−２生成回路４２がＣＬＫ２を生成する時刻との間の時間差である。
【００９４】
図８は、ＣＬＫ１の周波数変化のプロファイルが三角波状の場合のＭ値の補正方法を表す概念図である。同図右側には、同左側に示す三角波状の波形の丸で囲んだ部分の拡大図が示されている。現在のＭ値（現在値）をＭ１、その変更の検出時刻をｔ１、直前のＭ値（直前値）をＭ０、その変更の検出時刻をｔ０とすると、補正後のＭ値であるＭ１’は、前述の式（１２）により算出することができる。
【００９５】
図９は、ＣＬＫ１の周波数変化のプロファイルがサイン波状である場合のＭ値の補正方法を表す概念図である。同図右側には、同左側に示すサイン波状の波形の丸で囲んだ部分の拡大図が示されている。プロファイルがサイン波状の場合も、現在のＭ値とその直前のＭ値との間隔が十分に短ければ直線と見なすことができるので、同様に、補正後のＭ値であるＭ１’は、前述の式（１２）により近似的に算出することができる。
【００９６】
ＣＬＫ１の周波数変化のプロファイルが、三角波状、サイン波状以外の任意の形状である場合も同様に、補正後のＭ値であるＭ１’は、前述の式（１２）により近似的に算出することができる。
【００９７】
このように、順番に受信したＭ値に基づいてＭ値の変化の速度を求めることにより、ＣＬＫ１の周波数変化の周期、周波数変化率、周波数変化のプロファイルが分からなくても、ＣＬＫ２−２用のＭ値を補正することができる。
【００９８】
以下、図１０に示すフローチャートを参照して、ＣＬＫ２−２用Ｍ値補正回路４０の動作を説明する。
【００９９】
ＣＬＫ２−２用Ｎ，Ｍ値検出回路３８により、ＣＬＫ２−２用のＭ値（観測値）の変更とその変更後のＭ値が検出される（ステップＳ２１）。
【０１００】
Ｍ値の変更が検出されない場合（ステップＳ２１でＮＯ）、ＣＬＫ２−２用Ｎ，Ｍ値検出回路３８では、ステップＳ２１へ戻ってＭ値の変更とその変更後のＭ値の検出が繰り返される。
【０１０１】
Ｍ値の変更が検出された場合（ステップＳ２１でＹＥＳ）、ＣＬＫ２−２用Ｍ値補正回路４０では、現在のＭ値が観測され、Ｍ値記憶回路７８から、現在のＭ値であるＭ１と、直前値保持回路８４に保持された直前のＭ値であるＭ０が出力され、時刻記憶回路８０から、現在のＭ値であるＭ１の変更の検出時刻ｔ１と、直前時刻保持回路８８に保持された直前のＭ値であるＭ０の変更の検出時刻ｔ０が出力される（ステップＳ２２）。
【０１０２】
また、Ｍ値の変更が検出された場合（ステップＳ２１でＹＥＳ）、変更後のＭ値がＭ値記憶回路７８の直前値保持回路８４に保持され、その変更の検出時刻が時刻記憶回路８０の直前時刻保持回路８８に保持される（ステップＳ２３）。これらは、次にＭ値の変更が検出された場合に、直前のＭ値であるＭ０とその変更の検出時刻ｔ０として直前値保持回路８４および直前時刻保持回路８８から出力される。
【０１０３】
そして、Ｍ値補正回路８２により、Ｍ値の変化速度（Ｍ１−Ｍ０）／（ｔ１−ｔ０）が算出され（ステップＳ２４）、Ｍ値の変化速度を用いて、前述の式（１２）によりＣＬＫ２−２用のＭ値であるＭ１が補正されて補正後のＭ１’値を得る（ステップＳ２５）。
【０１０４】
これ以後、ステップＳ２１へ戻り、上記の動作を繰り返す。
【０１０５】
なお、図７に示すＣＬＫ２−２用Ｍ値補正回路４０には、図３に示すＣＬＫ２−２用Ｍ値補正回路４０の上昇下降傾向検出回路５２が設けられていないが、図７に示すＣＬＫ２−２用Ｍ値補正回路４０において、Ｍ値が上昇傾向にあるのか下降傾向にあるのかは、Ｍ値補正回路８２により算出されるＭ値の変化の速度の正負から判別できる。Ｍ値の変化の速度が正であれば上昇傾向であり、負であれば下降傾向である。
【０１０６】
また、図７に示すＣＬＫ２−２用Ｍ値補正回路４０において、図３に示すＣＬＫ２−２用Ｍ値補正回路４０のＭ値最大最小検出回路４８を追加することにより、補正後のＭ値が最大値を上回る、もしくは、最小値を下回る場合に、Ｍ値が最大値もしくは最小値になる時点で折り返す、つまり、Ｍ値の変化の速度の正負（上昇傾向と下降傾向）を反転することにより、補正後のＭ値を求めることが可能である。
【０１０７】
ただし、Ｍ値が変更される頻度が高い場合、つまり、Ｍ値の変更の間隔がＣＬＫ１の周波数変化の周期に比較してはるかに短い場合（例えば、Ｍ値の変更頻度がＣＬＫ１の周波数変化の１周期において１０００回以上の場合）には、Ｍ値の最大値／最小値での反転処理は必須ではなく、Ｍ値補正回路４０は不要である。
【０１０８】
本発明は、基本的に以上のようなものである。
以上、本発明について詳細に説明したが、本発明は上記実施形態に限定されず、本発明の主旨を逸脱しない範囲において、種々の改良や変更をしてもよいのはもちろんである。
【符号の説明】
【０１０９】
１０  通信システム
１２  ソース回路
１４  シンク回路
１８  ＰＬＬ回路
２０  Ｍ値生成回路
２２  ＳＳＣ変調回路
２４  マルチプレクサ
２６  フリップフロップ
２８  パケット生成回路
３０  クロックリカバリ回路
３２  データリカバリ回路
３４  ＣＬＫ２−１用Ｎ，Ｍ値検出回路
３６  ＣＬＫ２−１生成回路
３８  ＣＬＫ２−２用Ｎ，Ｍ値検出回路
４０  ＣＬＫ２−２用Ｍ値補正回路
４２  ＣＬＫ２−２生成回路
４４  ビデオ処理回路
４６  オーディオ処理回路
４８  Ｍ値最大最小検出回路
５０  ＳＳＣ周期検出回路
５２  上昇下降傾向検出回路
５４、８２  Ｍ値補正回路
５６  最大値検出回路
５８  最小値検出回路
６０  比較回路
６２  最大値保持回路
６４  比較回路
６６  最小値保持回路
６８、８６  タイマー
７０  直前値保持回路
７２  比較回路
７４  ディスプレイ
７６  スピーカ
７８  Ｍ値記憶回路
８０  時刻記憶回路
８４  直前値保持回路
８８  直前時刻保持回路
【図１】
0005872294.tif 000002
【図２】
0005872294.tif 000003
【図３】
0005872294.tif 000004
【図４】
0005872294.tif 000005
【図５】
0005872294.tif 000006
【図６】
0005872294.tif 000007
【図７】
0005872294.tif 000008
【図８】
0005872294.tif 000009
【図９】
0005872294.tif 000010
【図１０】
0005872294.tif 000011
【図１１】
0005872294.tif 000012
【図１２】
0005872294.tif 000013
【図１３】
0005872294.tif 000014