次に、本発明の実施の形態について、図面を参照しつつ説明する。
図1は、本発明の一実施形態に係る画像通信システムの概略構成を示す図である。同図に示すように、本実施形態に係る画像通信システム1は、例えば、送信装置10と、受信装置20とを含む装置構成により実現される。
送信装置10は、例えば、DisplayPortのソース機器である。送信装置10は、例えば、制御装置11と、データ変換部12と、LSクロック生成部13と、クロック変換部14とを含んで構成される。送信装置10は、典型的には、画像データを送信するスタンバイ状態と、ストリームクロックST_CLK1に関する情報を送信するクロック情報送信状態と、該クロックに関する情報の訂正ビットを送信する訂正ビット送信状態との3つの状態を有する。
スタンバイ状態において、送信装置10は、ストリームデータ信号ST_DATA1から画像データを抽出し、該画像データを送信データとして選択する。また、クロック情報送信状態において、送信装置10は、転送すべきクロックであるストリームクロックST_CLK1から該クロックに関する情報を抽出し、該情報を送信データとして選択する。また、訂正ビット送信状態において、送信装置10は、ストリームクロックST_CLK1から該クロックに関する情報を抽出し、該抽出した情報から該情報の訂正ビットを生成し、該訂正ビットを送信データとして選択する。そして、送信装置10は、所定のクロックCLKに従ってLSクロックを生成し、該クロックに基づいて、該選択した送信データを転送データ信号TR_DATAとして受信装置20に出力する。なお、送信装置10は、ストリームクロックST_CLK1の交番回数に基づいて、その状態を該3つの状態のいずれかに遷移させるが、その詳細に関しては後述する。
制御装置11は、送信装置10の各コンポーネントを統括的に制御する。具体的には、制御装置11は、画像データに基づいてストリームデータ信号ST_DATA1を生成し、該信号をデータ変換部12に出力する。また、制御装置11は、ストリームクロックST_CLK1を生成し、該クロックをデータ変換部12及びクロック変換部14に出力する。さらに、制御装置11は、例えば予め定められたカウント値Nに従って、カウント設定信号N_VALを生成し、該信号をクロック変換部14に出力する。
データ変換部12は、制御装置11から出力されるデータ信号から該信号が示す画像データに関する情報を抽出する。また、データ変換部12は、送信装置10の状態を判断し、該判断結果に基づいて、該抽出した画像データに関する情報と、クロック変換部14が抽出したストリームクロックST_CLK1に関する情報と、該クロックに関する情報の訂正ビットとのうち、いずれか一つを選択し、LSクロック生成部13が生成するLSクロックLS_CLK1に基づいて、該選択結果を転送データ信号TR_DATAとして受信装置20に出力する。データ変換部12は、例えば、データ入力部120と、送信部121とを含んで構成される。
データ入力部120は、制御装置11から出力されるデータ信号から画像データに関する情報を抽出する。具体的には、データ入力部120は、該制御装置11から出力されるストリームクロックST_CLK1に従って、該制御装置11より出力されるストリームデータ信号ST_DATA1から画像データに関する情報を抽出し、データ信号DATA1として送信部121に出力する。
送信部121は、送信装置10の状態を判断し、該判断の結果に基づいて、データ入力部120が抽出した画像データに関する情報と、クロック変換部14が抽出したストリームクロックST_CLK1に関する情報と、該クロックに関する情報の訂正ビットとのうちいずれか一つを選択する。送信部121は、LSクロック生成部13から出力されるLSクロックLS_CLK1に基づいて、該選択結果を転送データ信号TR_DATAとして受信装置20に出力する。
具体的には、送信部121は、制御装置11から出力されるストリームクロックST_CLK1の交番回数に基づいて、送信装置10の状態を判断する。送信部121は、送信装置10の状態がスタンバイ状態であると判断する場合、データ入力部120から出力されるデータ信号DATA1が示す画像データに関する情報を選択する。また、送信部121は、送信装置10がクロック情報送信状態であると判断する場合、クロック変換部14から出力されるクロック設定信号MSA1が示すストリームクロックST_CLK1に関する情報を選択する。さらに、送信部121は、送信装置10の状態が訂正ビット送信状態であると判断する場合、クロック変換部14から出力されるクロック設定信号MSA1からカウント値Mを抽出し、該カウント値Mのうち下位LビットをストリームクロックST_CLK1に関する情報の訂正ビットとして選択する。そして、送信部121は、LSクロック生成部13から出力されるLSクロックLS_CLK1に基づいて、該選択結果を転送データ信号TR_DATAとして受信装置20に出力する。なお、値Lは、カウント値Mの桁数以下の整数である。
LSクロック生成部13は、例えば、PLL(Phase Locked Loop)シンセサイザである。LSクロック生成部13は、所定のクロックCLKを予め決定された周波数(例えば、DisplayPortのメインクロックの周波数である162MHzや270MHz)に周波数変調し、該クロックをLSクロックLS_CLK1としてデータ変換部12及びクロック変換部14に出力する。具体的には、LSクロック生成部13は、クロック生成回路(図示せず)から出力される所定のクロックCLKが予め定められた周波数に変調されるようにその周波数を逓倍し、該クロックをLSクロックLS_CLK1としてデータ変換部12と、クロック変換部14におけるクロック倍率算出部140のLSクロック端子LS_CKとに出力する。
クロック変換部14は、LSクロック生成部13が生成するLSクロックLS_CLK1と、制御装置11から出力されるカウント設定信号N_VALが示すカウント値Nとに基づいて、制御装置11から出力されるストリームクロックST_CLK1から該クロックに関する情報を抽出し、抽出した該情報をデータ変換部12に出力する。クロック変換部14は、例えば、クロック倍率算出部140と、情報生成部141とを含んで構成される。
クロック倍率算出部140は、LSクロック生成部13が生成するLSクロックLS_CLK1に従う所定の期間において、制御装置11から出力されるストリームクロックST_CLK1が交番する回数をカウントし、該カウント値を情報生成部141に出力する。具体的には、クロック倍率算出部140は、該制御装置11からカウント端子VALに出力されるカウント設定信号N_VALが示すカウント値Nを所定の値kで除算した回数であるn回だけ、LSクロック生成部13から出力されるLSクロックLS_CLK1が交番する間に、該制御装置11から出力されるストリームクロックST_CLK1が交番する回数をカウントする。クロック倍率算出部140は、該カウント値をk個分だけ順次に記憶するとともに、該k個のカウント値の合計を算出し、該算出した値(即ちカウント値M)をカウント設定信号M_VALとして加算端子ADDから情報生成部141に出力する。
なお、カウント値Mとカウント値Nとの比は、LSクロックLS_CLK1の周波数とストリームクロックST_CLK1の周波数との比を示す。カウント値Nの値が大きい程、カウント値M及びNが示す該周波数の比は正確になる。また、所定の値kは、クロック倍率算出部140がカウント値Mを算出する間隔を決定するための値である。所定の値kは、送信装置10が自身の状態を訂正ビット送信状態に遷移させる間隔よりも、カウント値Mを算出する間隔の方が短くなるように決定される。また、所定の値kは、チップ面積の削減のために、上述した条件を満たした上で、2のべき乗の値に決定されても良い。
情報生成部141は、制御装置11及びクロック倍率算出部140から出力されるストリームクロックST_CLK1に関する情報に基づいて、クロック設定信号MSA1を生成し、該信号をデータ変換部12に出力する。具体的には、情報生成部141は、制御装置11から出力されるカウント設定信号N_VALが示すカウント値Nと、クロック倍率算出部140から出力されるカウント設定信号M_VALが示すカウント値Mとに基づいて、クロック設定信号MSA1を生成し、該信号をデータ変換部12に出力する。
受信装置20は、例えば、DisplayPortのシンク機器である。受信装置20は、送信装置10から出力される転送データ信号TR_DATAに基づいて、ストリームデータ信号ST_DATA2と、ストリームクロックST_CLK2とを生成し、該クロックに基づいて、該信号に従う画像を表示する。受信装置20は、例えば、データ復元部21と、クロック復元部22と、表示部23とを含んで構成される。なお、ストリームデータ信号ST_DATA2及びストリームクロックST_CLK2は、それぞれ送信装置10のストリームデータ信号ST_DATA1及びストリームクロックST_CLK1の内容を示す。
データ復元部21は、送信装置10から出力される転送データ信号TR_DATAに基づいて画像データ及びストリームクロックST_CLK1に関する情報を復元する。また、データ復元部21は、該復元した画像データに関する情報に従うストリームデータ信号ST_DATA2を生成し、クロック復元部22から出力されるストリームクロックST_CLK2に基づいて、該信号を表示部23に出力する。データ復元部21は、例えば、受信部210と、データ出力部211とを含んで構成される。
受信部210は、送信装置10から出力される転送データ信号TR_DATAに基づいて画像データ及びストリームクロックST_CLK1に関する情報を復元する。具体的には、受信部210は、送信装置10から出力される転送データ信号TR_DATAが画像データに関する情報と、ストリームクロックST_CLK1に関する情報及び該クロックに関する情報の訂正ビットとのうち、いずれを示しているかを判断する。受信部210は、転送データ信号TR_DATAが画像データに関する情報を示していると判断する場合、該画像データに関する情報を復元し、データ信号DATA2としてデータ出力部211に出力する。また、受信部210は、転送データ信号TR_DATAがストリームクロックST_CLK1に関する情報又は該クロックに関する情報の訂正ビットを示すと判断する場合、該クロックに関する情報又は該クロックに関する情報の訂正ビットをクロック設定信号MSA2としてクロック復元部22に出力する。
データ出力部211は、クロック復元部22が復元したストリームクロックST_CLK2に基づいて、受信部210が復元した画像データに関する情報をストリームデータ信号ST_DATA2として表示部23に出力する。具体的には、データ出力部211は、クロック復元部22から出力されるストリームクロックST_CLK2に基づいて、受信部210から出力されるデータ信号DATA2をストリームデータ信号ST_DATA2として表示部23に出力する。
クロック復元部22は、データ復元部21から出力されるストリームクロックST_CLK1に関する情報に従いストリームクロックST_CLK2を復元し、該クロックをデータ復元部21及び表示部23に出力する。クロック復元部22は、例えば、情報検出部220と、LSクロック復元部221と、ストリームクロック復元部222とを含んで構成される。
情報検出部220は、データ復元部21から出力されるストリームクロックST_CLK1に関する情報又は該クロックに関する情報の訂正ビットに基づいて、カウント値M及びNを検出する。具体的には、情報検出部220は、データ復元部21から出力されるクロック設定信号MSA2がストリームクロックST_CLK1に関する情報及び該クロックに関する情報の訂正ビットのうちのいずれを示しているかを判断する。情報検出部220は、クロック設定信号MSA2がストリームクロックST_CLK1に関する情報を示していると判断する場合、該信号が示すカウント値M及びNを検出し、カウント設定信号MN_VALとしてストリームクロック復元部222に出力する。一方、情報検出部220は、クロック設定信号MSA2がストリームクロックST_CLK1に関する情報の訂正ビットを示していると判断する場合、該信号が示すカウント値Mの下位L桁に従ってカウント値Mを更新し、該更新したカウント値Mと、カウント値Nとをカウント設定信号MN_VALとしてストリームクロック復元部222に出力する。
LSクロック復元部221は、例えば、CDR(Clock Data Recovery)回路である。LSクロック復元部221は、受信部210から出力されるストリームクロックST_CLK1に関する情報に従いLSクロックLS_CLK2を復元する。具体的には、LSクロック復元部221は、受信部210から出力されるクロック設定信号MSA2が示すストリームクロックST_CLK1に関する情報又は該クロックに関する情報の訂正ビットに従うLSクロックLS_CLK2を生成し、該信号をストリームクロック復元部222に出力する。
ストリームクロック復元部222は、例えば、PLLシンセサイザである。ストリームクロック復元部222は、情報検出部220から出力されるカウント値M及びNに従う倍率で、LSクロック復元部221によって復元されたLSクロックLS_CLK2の周波数を逓倍することによって、ストリームクロックST_CLK2を復元する。具体的には、ストリームクロック復元部222は、情報検出部220から出力されるカウント設定信号MN_VALが示すカウント値M及びNに従う倍率(例えば、M/N倍)で、LSクロック復元部221から出力されるLSクロックLS_CLK2の周波数を逓倍し、ストリームクロックST_CLK2としてデータ復元部21及び表示部23に出力する。
表示部23は、例えば、液晶表示パネル、プラズマ表示パネル及び有機エレクトロルミネッセンス表示パネルであるが、これらに限られない。表示部23は、復元されたストリームクロックST_CLK2に基づいて、該クロックに従う表示位置に、復元されたストリームデータST_DATA2に従う画像データを表示する。具体的には、表示部23は、クロック復元部22から出力されるストリームクロックST_CLK2に基づいて、該クロックに従う表示位置に、データ復元部21から出力されるストリームデータST_DATA2に従う画像データを表示する。なお、表示部23におけるストリームクロックST_CLK2と、表示位置との関係の詳細については、後述する。また、本例において、表示部23は、受信装置20内に設けられているが、これに限られるものではなく、表示部23は、受信装置20とは別体として設けられても良い。
図2は、本発明の一実施形態に係る画像通信システムの送信装置におけるクロック倍率算出部を示す図である。同図に示すように、本実施形態に係る画像通信システム1の送信装置10におけるクロック倍率算出部140は、例えば、カウンタ1400及び1403と、除算器1401と、比較器1402と、出力制御回路FFと、加算回路1405とを含む構成により実現される。
カウンタ1400は、LSクロックLS_CLK1の交番回数をカウントし、該カウント値を比較器1402に出力するとともに、トリガ信号TRIGに基づいて、該カウント値をリセットする。具体的には、カウンタ1400は、LSクロック生成部13から出力されるLSクロックLS_CLK1の交番回数をカウントし、該カウント値をLSカウント信号LS_CNTとして比較器1402に出力する。また、カウンタ1400は、比較器1402から出力されるトリガ信号TRIGの状態を判断し、トリガ信号TRIGの状態が例えば“1”であると判断する場合、該カウント値をリセットする。
除算器1401は、制御装置11から出力されるカウント設定信号N_VALが示すカウント値Nを所定の値kで除算し、カウント値nを算出する。具体的には、除算器1401は、該制御装置11から出力されるカウント設定信号N_VALが示すカウント値Nを所定の値kで除算することによってカウント値nを算出し、該カウント値nをカウント信号n_VALとして比較器1402に出力する。
比較器1402は、LSクロックLS_CLK1がカウント値n回交番するたびに、その状態を“1”とするトリガ信号TRIGを生成し、該信号をクロック倍率算出部140の各コンポーネントに出力する。具体的には、比較器1402は、カウンタ1400から出力されるLSカウント信号LS_CNTが示すLSクロックLS_CLK1の交番回数が、除算器1401から出力されるカウント設定信号n_VALが示すカウント値nと一致するか否かを判断する。比較器1402は、該値同士が一致すると判断する場合、その状態を“1”とするトリガ信号TRIGを生成する。一方、比較器1402は、該値同士が一致しないと判断する場合、その状態を“0”とするトリガ信号TRIGを生成する。比較器1402は、該生成したトリガ信号TRIGをカウンタ1400及び1403と、シフトレジスタ1404における出力制御回路FFのクロック端子CKとに出力する。
カウンタ1403は、ストリームクロックST_CLK1の交番回数をカウントし、該カウント値をシフトレジスタ1404に出力するとともに、トリガ信号TRIGに基づいて、該カウント値をリセットする。具体的には、カウンタ1403は、制御装置11から出力されるストリームクロックST_CLK1の交番回数をカウントし、該カウント値をストリームカウント信号ST_CNT(0)としてシフトレジスタ1404の出力制御回路FF(1)のデータ端子Dに出力する。また、カウンタ1403は、比較器1402から出力されるトリガ信号TRIGの状態を判断し、トリガ信号TRIGの状態が例えば“1”であると判断する場合、該カウント値をリセットする。
出力制御回路FFは、シフトレジスタ1404を構成し、比較器1402から出力されるトリガ信号TRIGに基づいて、ストリームクロックST_CLK1の交番回数を順次に記憶するとともに、該記憶した交番回数を加算回路1405に出力する。具体的には、出力制御回路FFは、クロック倍率算出部140において、上述した所定の値k以上の数だけ(例えばz個)設けられ、出力制御回路FF(1)乃至FF(z)のそれぞれは、そのデータ端子Dが、前段の出力制御回路FFの出力端子Qに接続され、出力端子Qが次段の出力制御回路FFのデータ端子Dに接続され、クロック端子CKがノードaを介して互いに接続されることによって、シフトレジスタ1404を構成する。該シフトレジスタ1404において、出力制御回路FF(i)は、比較器1402からクロック端子CKに出力されるトリガ信号TRIGに基づいて、出力制御回路FF(i―1)又はカウンタ1403からデータ端子Dに出力されるストリームカウント信号ST_CNT(i−1)が示すストリームクロックST_CLK1の交番回数を記憶する。出力制御回路FF(i)は、該記憶した交番回数をストリームカウント信号ST_CNT(i)として加算回路1405の入力端子I(i)と、出力制御回路FF(i+1)のデータ端子Dとに出力する。なお、iは1以上かつ所定の値z以下の整数である。
加算回路1405は、シフトレジスタ1404から出力されるストリームクロックST_CLK1の交番回数のそれぞれを加算することによって、LSクロックLS_CLK1がN回カウントする間のストリームクロックST_CLK1の交番回数(即ちM回)を算出し、該算出した交番回数を情報生成部141に出力する。具体的には、加算回路1405は、該シフトレジスタ1404を構成する出力制御回路FF(1)乃至FF(z)から入力端子I(1)乃至I(z)に出力されるストリームカウント信号ST_CNT(1)乃至ST_CNT(z)が示すカウント値のそれぞれを加算し、該加算結果をカウント設定信号M_VALとして情報生成部141に出力する。
なお、加算回路1405は、出力制御回路FF(1)乃至FF(z)から出力されるストリームカウント信号ST_CNT(1)乃至ST_CNT(z)のうち、k個の信号を選択し、該選択したk個のストリームカウント信号ST_CNT(1)乃至ST_CNT(k)が示すカウント値のそれぞれを加算し、該加算結果をカウント設定信号M_VALとして情報生成部141に出力するように構成されても良い。
以上のように構成される画像通信システム1は、送信装置10が自身を訂正ビット送信状態に遷移させる間隔よりも短い間隔でカウント値Mを算出し、カウント設定信号M_VALとして出力する。従って、画像通信システム1は、送信装置10が自身を訂正ビット状態に遷移させるたびに、送信装置10がカウント値Mを算出する際に発生する計算誤差を逐一解消することによって、安定して高精度でストリームクロックST_CLK1に関する情報を転送することができる。
図3は、本発明の一実施形態に係る画像通信システムにおけるクロック倍率算出部の各種の信号のタイミングチャートである。同図に示すようなLSクロックLS_CLK1及びストリームクロックST_CLK1がクロック倍率算出部140に入力された場合、クロック倍率算出部140は、LSクロックLS_CLK1がn回交番する間に、ストリームクロックST_CLK1が交番する回数をカウントする。クロック倍率算出部140は、該カウント値を順次にk個記憶し、該記憶したk個のカウント値の合計を算出し、カウント設定信号M_VALとして情報生成部141に出力する。なお、同図において、カウント設定信号n_VALが示す値はn回であるものとする。また、同図において、ストリームカウント信号ST_CNTのカウント値は、m回であるものとする。また、出力制御回路FFはk個設けられているものと仮定する。
同図に示すように、LSクロックLS_CLK1は、カウンタ1400によってその交番回数がカウントされる。LSカウント信号LS_CNTは、カウンタ1400から出力され、LSクロックLS_CLK1のカウント値を示す。LSカウント信号LS_CNTが示すカウント値は、比較器1402から出力されるトリガ信号TRIGに基づいて、カウンタ1400によってリセットされる。
ストリームクロックST_CLK1は、カウンタ1403によってその交番回数がカウントされる。ストリームカウント信号ST_CNT(0)は、カウンタ1403から出力される。また、ストリームカウント信号ST_CNT(0)は、ストリームクロックST_CLK1のカウント値を示す。ストリームカウント信号ST_CNT(0)が示すカウント値は、比較器1402から出力されるトリガ信号TRIGに基づいて、カウンタ1403によってリセットされる。
トリガ信号TRIGは、LSカウント信号LS_CNTのカウント値とカウント設定信号n_VALが示す値nとが一致するたびに、比較器1402から出力される。ストリームカウント信号ST_CNT(1)乃至ST_CNT(k)は、出力制御回路FF(1)乃至FF(k)からそれぞれ出力される。ストリームカウント信号ST_CNT(1)乃至ST_CNT(k)の値は、比較器1402からトリガ信号TRIGが出力されるたびに、出力制御回路FF(1)乃至FF(k)によって、前段の出力制御回路FF(0)乃至FF(k−1)から出力されるストリームカウント信号ST_CNT(0)乃至ST_CNT(k−1)の値にそれぞれ更新される。
カウント設定信号M_VALは、加算回路1405から出力される。カウント設定信号M_VALが示すカウント値Mは、比較器1402からトリガ信号TRIGが出力されるたびに、加算回路1405によって、ストリームカウント信号ST_CNT(1)乃至ST_CNT(k)が示す値を合計した値に更新される。
上述したように、クロック倍率算出部140は、LSクロック信号LS_CLK1がn回交番するたびに、ストリームカウント信号ST_CNT(1)乃至ST_CNT(k)が示すストリームクロックST_CLK1のカウント値のうち、最も古いカウント値を消去するとともに、最新のカウント値を記憶する。従って、クロック倍率算出部140は、LSクロックLS_CLK1がN回交番する間にストリームクロックST_CLK1が交番する回数を示す設定信号M_VALが示すカウント値MをLSクロックLS_CLK1がn回(即ちN/k回)交番するたびに更新することとなる。
図4は、本実施形態に係る画像通信システムにおける走査タイミングと画像通信システムが実行する処理との関係を示す概念図である。同図において、画像フレーム400は、水平方向がストリームクロックST_CLK2の交番回数を示す水平方向クロック数H_NUMに対応し、垂直方向が該水平方向の走査の繰り返し回数を示す垂直方向クロック数V_NUMに対応する仮想領域である。画像フレーム400は、(水平方向クロック数H_NUM)×(垂直方向クロック数V_NUM)個の単位領域を有する。また、画像フレーム400は、画像表示領域401と、クロック情報送信領域402と、訂正ビット送信領域403とを含んで構成される。画像通信システム1は、ストリームクロックST_CLK2の交番回数に対応する該単位領域において、該単位領域が属する領域(即ち、画像表示領域401、クロック情報送信領域402及び訂正ビット送信領域403)に対応する処理を実行する。
同図において、画像データブロックαは、ストリームデータST_DATA2が示す表示部23に表示されるべき画像データである。画像データブロックαは、ストリームクロックST_CLK2に基づいて、画像フレーム400における各単位領域を走査する。同図に示すように、画像フレーム400における一つのラインの各単位領域は、典型的には、ストリームクロックST_CLK2に基づくタイミングで、画像データブロックαによって、水平方向に走査される。画像フレーム400の他のラインにおける各単位領域は、該一つのラインが走査された後に、順次に同様に走査される。また、他の画像フレーム400における各単位領域は、一つの画像フレーム400の全ての単位領域が走査された後に順次に同様に走査される。なお、上述したように、送信装置10は、ストリームクロックST_CLK1の交番回数によって、画像データブロックαがある画像フレーム400の領域を検出し、該検出結果に基づいて自身の状態を判断する。
画像表示領域401は、水平方向が表示部23のピクセル数PCT_NUMに対応して、垂直方向が表示部23のライン数LN_NUMに対応する仮想領域である。画像表示領域401は、(ピクセル数PCT_NUM)×(ライン数LN_NUM)個の単位領域を有する。画像表示領域401における各単位領域は、それぞれ、表示部23における画像データの表示位置に対応する。画像データブロックαが画像表示領域401にある場合、送信装置10は、自身の状態をスタンバイ状態に遷移させ、画像データを受信装置20に送信する一方で、受信装置20は、画像データブロックαに従う画像を表示部23の対応する位置に表示する。
クロック情報送信領域402は、送信装置10をクロック情報送信状態に遷移させるタイミングを示す領域である。クロック情報送信領域402は、典型的には、画像フレーム400において、画像データブロックαで走査される最初の領域に設けられる。画像データブロックαが該領域にある場合、送信装置10は、自身をクロック情報送信状態に遷移させ、ストリームクロックST_CLK1に関する情報を受信装置20に送信する。
訂正ビット送信領域403は、送信装置10を訂正ビット送信状態に遷移させるタイミングを示す領域である。訂正ビット送信領域403は、典型的には、画像フレーム400において、画像表示領域401の各ラインの終端の次の単位領域と、該単位領域を通る垂直方向に延びる直線上にある単位領域とを含んで構成される。画像データブロックαが、該領域にある場合、送信装置10は、自身を訂正ビット送信状態に遷移させ、ストリームクロックST_CLK1に関する情報の訂正ビットを送信する。
例えば、表示部23がフルHD(High Definition)規格に対応していると仮定する。また、カウント値Nの値は“0h8000(即ち32768)”であると仮定する。さらに、LSクロックLS_CLK1及びストリームクロックST_CLK1の周波数は、それぞれ270MHz及び133MHzであると仮定する。斯かる場合において、画像フレーム400は、水平方向に2000個の単位領域の長さを有し、垂直方向に1111個の単位領域の長さを有する。また、カウント値Mの値は、カウント値N×(ストリームクロックST_CLK1の周波数)/(LSクロックLS_CLK1の周波数)であることから、16141に略等しい値となる。
所定の値kが、例えば1に決定されたと仮定する。画像フレーム400の水平方向の長さは単位領域2000個分の長さであるため、斯かる場合、カウント値M/2000≒8.07であることから、送信装置10は、8回又は9回自身の状態を訂正ビット送信状態に遷移するたびに、1回カウント値Mを更新することとなる。
上述したように、所定の値kは、送信装置10が自身の状態を訂正ビット送信状態に遷移させる間隔よりも、ストリームクロックに関する情報を算出する間隔が短くなるように、決定される。また、所定の値kは、チップ面積の削減のために、2のべき乗の値に設定されても良い。斯かる条件を満たすために、所定の値kが16に決定されたと仮定する。斯かる場合、送信装置10は、カウント値M/(2000×16)≒0.504であることから、送信装置10が1回自身の状態を訂正ビット送信状態に遷移するごとに1回又は2回カウント値Mを更新することとなる。従って、送信装置10は、送信装置10が自身の状態を訂正ビット送信状態に遷移させるたびに、カウント値Mを更新することができるため、送信装置10は、安定して高精度でストリームクロックST_CLK1に関する情報を送信することができる。
図5Aは、従来の画像通信システムにおける各種の信号のタイミングチャートである。従来の画像通信システムは、本実施形態に係る画像通信システム1におけるクロック倍率算出部140から除算器1401、シフトレジスタ1404及び加算回路1405を除去することによって構成される。
同図において、従来の画像通信システムの送信装置におけるクロック設定信号をクロック設定信号MSA1(0)と定義する。また、同図において、従来の画像通信システムの受信装置におけるカウント設定信号をカウント設定信号MN_VAL(0)と定義する。また、クロック設定信号MSA1(0)の状態をmnと定義する。また、同図において、クロック倍率算出部がクロック設定信号MSA1(0)を更新するタイミングを時刻t0と定義する。また、同図において、送信装置の状態が訂正ビット送信状態に遷移するタイミングを時刻t1と定義する。
同図に示すように、時刻t0(0)で、従来の画像通信システムにおけるクロック倍率算出部は、クロック設定信号MSA(0)の内容をmn(j)として、該内容を維持する。これにより、受信装置は、時刻t1(0)から時刻t1(2)までの間、カウント設定信号MN_VAL(0)の内容をmn(j)に維持する。ここでjは1以上の整数である。
時刻t0(1)で、従来の画像通信システムにおけるクロック倍率算出部は、クロック設定信号MSA(0)の内容をmn(j+1)に更新する。これにより、受信装置は、時刻t1(3)で、カウント設定信号MN_VAL(0)の内容をmn(j+1)に更新する。
従来の画像通信システムは、クロック倍率算出部がクロック設定信号MSA1(0)を更新する間隔(即ち、時刻t0が訪れる間隔)が、送信装置の状態が訂正ビット送信状態に遷移する間隔(即ち、時刻t1が訪れる間隔)よりも長い。従って、従来の画像通信システムにおいては、送信装置の状態が訂正ビット送信状態に遷移しても、送信装置が送信するストリームクロックに関する情報の訂正ビットに変化がないことによって、受信装置が生成するカウント設定信号MN_VAL(0)の状態が更新されず、ストリームクロックに関する情報が訂正されない場合がある。
図5Bは、本発明の一実施形態に係る画像通信システムにおける各種の信号のタイミングチャートである。同図において、クロック設定信号MSA1の状態をmnと定義する。同図において、クロック倍率算出部140がクロック設定信号MSA1を更新するタイミングを時刻t0と定義する。また、同図において、送信装置10の状態が訂正ビット送信状態に遷移するタイミングを時刻t1と定義する。
同図に示すように、時刻t0(0)で、本実施形態に係る画像通信システム1におけるクロック倍率算出部140は、クロック設定信号MSA1の内容をmn(1)に更新する。また、時刻t0(1)乃至時刻t0(3)で、クロック倍率算出部140は、該信号の内容をそれぞれmn(2)乃至mn(4)に更新する。これにより、受信装置20は、時刻t1(0)でカウント設定信号MN_VALの内容をmn(2)に更新し、時刻t1(1)で該信号の内容をmn(4)に更新する。
時刻t0(4)で、クロック倍率算出部140は、クロック設定信号MSA1の内容をmn(j−1)に更新する。また、時刻t0(5)乃至時刻t0(8)で、クロック倍率算出部140は、該信号の内容をそれぞれmn(j)乃至mn(j+3)に更新する。これにより、受信装置20は、時刻t1(2)で、カウント設定信号MN_VALの内容をmn(j−1)に更新し、時刻t1(3)で該信号の内容をmn(j+2)に更新する。
本実施形態に係る画像通信システム1は、クロック倍率算出部140がクロック設定信号MSA1を更新する間隔(即ち、時刻t0が訪れる間隔)が、送信装置10の状態が訂正ビット送信状態に遷移する間隔(即ち、時刻t1が訪れる間隔)よりも短い。従って、本実施形態に係る画像通信システム1においては、送信装置10の状態が訂正ビット送信状態に遷移するたびに、送信装置10が送信するストリームクロックST_CLK1に関する情報の訂正ビットに変化があることによって、受信装置20が生成するカウント設定信号MN_VALの状態が更新され、該信号に基づいてストリームクロックST_CLK2が更新されることとなる。
図6Aは、従来の画像通信システムにおいて送信装置が生成するストリームクロックに関する情報の累積誤差のタイミングチャートである。同図において、トリガ信号TRIGが出力されるタイミングをそれぞれ時刻t10乃至時刻t12と定義する。
同図に示すように、時刻t10で、送信装置は、カウント値Mを更新することで、ストリームクロックに関する情報を更新する。上述したように、ストリームクロックに関する情報の訂正ビットは、カウント値Mの下位L桁である。また、カウント値M及びNの比は、LSクロック及びストリームクロックの周波数の比である。従って、該周波数の比が整数であって、かつ、他の要因(例えば、電気的ノイズなど)による信号の変化が一切ない場合を除いて、カウント値Mは誤差を含み、さらに、カウント値Mは、更新されるたびに、該周波数の比及びカウント値Nに基づく所定の2値の間を前後することとなる。
時刻t10から時刻t11までの間、送信装置はカウント値Mを維持するため、該期間においてカウント値Mの誤差は蓄積される。時刻t11で、送信装置は、時刻t10から時刻t11の間に蓄積された該誤差を解消するようにカウント値Mを更新する。時刻t11から時刻t12までの間、送信装置はカウント値Mを維持するため、該期間において該誤差は減少する。時刻t12で、該誤差は解消される。時刻t12より後の期間において、送信装置は、上述した時刻t10から時刻t12までの動作を繰り返す。
上述したように、従来の画像通信システムにおいては、ストリームクロックに関する情報を更新する間隔(即ち、トリガ信号TRIGが出力される間隔)が、送信装置が訂正ビット送信状態にその状態を遷移させる間隔よりも長い。従って、従来の画像通信システムにおいては、送信装置が算出するカウント値Mに生じる誤差が蓄積する期間が発生することとなる。
図6Bは、本発明の一実施形態に係る画像通信システムにおいて送信装置が生成するストリームクロックの累積誤差のタイミングチャートである。同図において、トリガ信号TRIGが出力されるタイミングをそれぞれ時刻t10乃至時刻t21と定義する。
同図に示すように、時刻t10で、送信装置10は、カウント値Mを更新することで、ストリームクロックST_CLK1に関する情報を更新する。時刻t10でカウント値Mの誤差が発生する。時刻t11で、送信装置10は、該誤差が解消されるようにカウント値Mを更新し、該誤差は解消される。時刻t11より後の期間において、送信装置10は、上述した時刻t10から時刻t11までの動作を繰り返す。
上述したように、本実施形態に係る画像通信システム1においては、ストリームクロックST_CLK1に関する情報を更新する間隔(即ち、トリガ信号TRIGが出力される間隔)が、送信装置10が訂正ビット送信状態にその状態を遷移させる間隔よりも短い。従って、本実施形態に係る画像通信システム1は、送信装置10が訂正ビット送信状態にその状態を遷移させる前にカウント値Mを更新するため、送信装置10が訂正ビット送信状態のその状態を遷移させるたびに、カウント値Mに生じる誤差を解消することができる。
図7は、本発明の一実施形態に係る画像通信システムにおける送信装置の動作を概略的に説明するための状態遷移図である。同図を参照して、スタンバイ状態(即ちS701)において、送信装置10は、ストリームクロックST_CLK1の交番回数に基づいて、画像データブロックαの画像フレーム400における位置を判断する。送信装置10は、画像データブロックαがクロック情報送信領域402にあると判断する場合、その状態をクロック情報送信状態(即ちS702)に遷移させる。また、送信装置10は、画像データブロックαが訂正ビット送信領域403にあると判断する場合、その状態を訂正ビット送信状態(即ちS703)に遷移させる。さらに、送信装置10は、画像データブロックαがクロック情報送信領域402及び訂正ビット送信領域403以外の領域にあると判断する場合、スタンバイ状態を維持する。なお、スタンバイ状態における送信装置10の処理の詳細については、図8を参照して説明される。
クロック情報送信状態において、送信装置10は、ストリームクロックST_CLK1に関する情報に従う転送データ信号TR_DATAを生成し、該信号を受信装置20に出力する。送信装置10は、該転送データ信号TR_DATAを出力した後に、その状態をスタンバイ状態に遷移させる。
訂正ビット送信状態において、送信装置10は、更新したストリームクロックST_CLK1に関する情報の訂正ビットに従う転送データ信号TR_DATAを生成し、該信号を受信装置20に出力する。送信装置10は、該転送データ信号TR_DATAを出力した後に、その状態をスタンバイ状態に遷移させる。
図8は、本発明の一実施形態に係る画像通信システムにおける送信装置の動作を概略的に説明するためのフローチャートであり、図7におけるスタンバイ状態S701の処理の詳細を示している。同図を参照して、送信装置10は、まず、ストリームクロックST_CLK1のカウント値を示すストリームカウント信号ST_CNT(0)と、LSクロックLS_CLK1のカウント値を示すLSカウント信号LS_CNTの状態を初期化する(S801)。
次に、送信装置10は、カウンタ1400及び1403によるストリームクロックST_CLK1及びLSクロックLS_CLK1に基づくカウントをそれぞれ開始する(S802)。送信装置10は、LSカウント信号LS_CNTが示すLSクロックLS_CLK1に基づくカウント値が値nと一致するか否かを判断する(S803)。送信装置10は、該カウント値が値nと一致しないと判断する場合(S803のNo)、ストリームクロックST_CLK1及びLSクロックLS_CLK1に基づくカウントを続行し、ステップS803の処理に進む。一方、送信装置10は、該カウント値が値nの値と一致すると判断する場合(S803のYes)、ステップS804の処理に進む。
送信装置10は、既に記憶しているストリームクロックST_CLK1に基づくカウント値が所定の値k以上であるか否かを判断する(S804)。送信装置10は、記憶している該カウント値が所定の値k以上であると判断する場合(S804のYes)、記憶している該カウント値のうち、最も古い該カウント値を削除し(S805)、ステップS806の処理に進む。一方、送信装置10は、記憶している該カウント値が所定の値k以上でないと判断する場合(S804のNo)、ステップS806の処理に進む。
送信装置10は、ストリームカウント信号ST_CNTが示すストリームクロックST_CLK1に基づくカウント値を記憶する(S806)。そして、送信装置10は、記憶しているストリームクロックST_CLK1に基づくカウント値の合計を算出し(S807)、スタンバイ状態において送信装置10が行う処理を終了し、スタンバイ状態に戻る。
上述したように、本実施形態に係る画像通信システム1は、送信装置10が自身を訂正ビット送信状態に遷移させる間隔よりも短い間隔で、カウント設定信号M_VALを算出する。従って、本実施形態に係る画像通信システム1は、送信装置10が自身を訂正ビット状態に遷移させるたびに、送信装置10がカウント値Mを算出する際に発生する誤差を解消することによって、安定して高精度でストリームクロックST_CLK1に関する情報を転送することができる。
上記各実施形態は、本発明を説明するための例示であり、本発明をこれらの実施形態にのみ限定する趣旨ではない。本発明は、その要旨を逸脱しない限り、さまざまな形態で実施することができる。
例えば、本明細書に開示される方法においては、その結果に矛盾が生じない限り、ステップ、動作又は機能を並行して又は異なる順に実施しても良い。説明されたステップ、動作及び機能は、単なる例として提供されており、ステップ、動作及び機能のうちのいくつかは、発明の要旨を逸脱しない範囲で、省略でき、また、互いに結合させることで一つのものとしてもよく、また、他のステップ、動作又は機能を追加してもよい。
また、本明細書では、さまざまな実施形態が開示されているが、一の実施形態における特定のフィーチャ(技術的事項)を適宜改良しながら、他の実施形態に追加し、又は該他の実施形態における特定のフィーチャと置換することができ、そのような形態も本発明の要旨に含まれる。