(57)【要約】【課題】スレーブ装置でマスタ装置との時刻同期化を高精度で実現する。【解決手段】時刻補正を２段階で行う。第１段階では、マスタ装置１１０で第１の時刻ｔ１に発行されたメッセージを受信した第２の時刻ｔ２から当該時刻ｔ１を減算して得られた第１の補正値を使用し、時刻Ｓｔ（ｘ）を第１の補正値だけ減算した値に補正する。補正後の時刻Ｓｔ（ｘ）′は、マスタ装置１１０の時刻Ｍｔ（ｘ）から伝送遅延成分（Delay）が差し引かれた値となり、オフセット成分（Offset）が除かれた状態となる（(a)〜(e)）。第２段階では、第３の時刻ｔ３に送信したメッセージがマスタ装置１１０で受信された第４の時刻ｔ４から当該時刻ｔ３を減算し、さらに１／２にして得られた第２の補正値を使用し、時刻Ｓｔ（ｘ）′を、第２の補正値だけ加算した値に補正する。補正後の時刻Ｓｔ（ｘ）″は、マスタ装置１１０の時刻Ｍｔ（ｘ）と一致し、同期化が図られる（(f)〜（ｊ））。【選択図】図２
2010190635.tif 000002
【特許請求の範囲】
【請求項１】
時刻情報を出力する時計部と、
マスタ装置から送られてくるメッセージを受信するメッセージ受信部と、
上記マスタ装置にメッセージを送信するメッセージ送信部と、
上記時計部の時刻の補正に必要な補正値を求める演算部と、
上記演算部で求められた補正値に基づいて、上記時計部の時刻を補正する補正部を備え、
上記メッセージ受信部は、上記マスタ装置において第１の時刻に発行された第１のメッセージと、上記マスタ装置において上記第１の時刻の後に発行された、該第１の時刻を示す時刻情報を含む第２のメッセージを受信し、
上記演算部は、上記メッセージ受信部で上記第１のメッセージが受信された時刻を第２の時刻とし、該第２の時刻から上記メッセージ受信部で受信された上記第２のメッセージに含まれる時刻情報が示す上記第１の時刻を減算して第１の補正値を求め、
上記補正部は、上記時計部の時刻を、上記演算部で求められた上記第１の補正値だけ減算した値となるように第１段階の補正を行い、
上記メッセージ送信部は、上記補正部で上記第１段階の補正が行われた後、第３の時刻に上記マスタ装置に第３のメッセージを発行し、
上記メッセージ受信部は、上記マスタ装置において上記第３のメッセージが受信された後に発行された、該第３のメッセージが受信された第４の時刻を示す時刻情報を含む第４のメッセージを受信し、
上記演算部は、上記メッセージ受信部で受信された上記第４のメッセージに含まれる時刻情報が示す上記第４の時刻から上記メッセージ送信部で上記第３のメッセージが発行された上記第３の時刻を減算し、該減算結果を１／２にして第２の補正値を求め、
上記補正部は、上記第１段階の補正を行った後、上記時計部の時刻を、上記演算部で求められた上記第２の補正値だけ加算した値となるように第２段階の補正を行う
スレーブ装置。
【請求項２】
上記時計部は、所定の周波数のクロックでカウントアップされるカウンタにより構成され、
上記メッセージ受信部で受信される上記第２のメッセージおよび上記第４のメッセージに含まれる時刻情報はカウンタ値である
請求項１に記載のスレーブ装置。
【請求項３】
マスタ装置において第１の時刻に発行された第１のメッセージを受信する第１のメッセージ受信ステップと、
上記マスタ装置において上記第１の時刻の後に発行された、該第１の時刻を示す時刻情報を含む第２のメッセージを受信する第２のメッセージ受信ステップと、
上記第１のメッセージ受信ステップで上記第１のメッセージが受信された時刻を第２の時刻とし、該第２の時刻から上記第２のメッセージ受信ステップで受信された上記第２のメッセージに含まれる時刻情報が示す上記第１の時刻を減算して第１の補正値を求める第１の演算ステップと、
時計部の時刻を、上記第１の演算ステップで求められた上記第１の補正値だけ減算した値となるように第１段階の補正を行う第１の補正ステップと、
上記第１の補正ステップで上記第１段階の補正が行われた後、第３の時刻に上記マスタ装置に第３のメッセージを発行するメッセージ送信ステップと、
上記マスタ装置において上記第３のメッセージが受信された後に発行された、該第３のメッセージが受信された第４の時刻を示す時刻情報を含む第４のメッセージを受信する第３のメッセージ受信ステップと、
上記第３のメッセージ受信ステップで受信された上記第４のメッセージに含まれる時間情報が示す上記第４の時刻から上記メッセージ送信ステップで上記第３のメッセージが発行された上記第３の時刻を減算し、該減算結果を１／２にして第２の補正値を求める第２の演算ステップと、
上記時計部の時刻を、上記第２の演算ステップで求められた上記第２の補正値だけ加算した値となるように第２段階の補正を行う第２の補正ステップ
を備えるスレーブ装置の時刻同期化方法。
【請求項４】
マスタ装置とスレーブ装置とからなる電子機器システムであって、
上記マスタ装置は、
時刻情報を出力する時計部と、
上記スレーブ装置にメッセージを送信するメッセージ送信部と、
上記スレーブ装置から送られてくるメッセージを受信するメッセージ受信部を備え、
上記メッセージ送信部は、第１の時刻に、上記スレーブ装置に、第１のメッセージを発行すると共に、上記第１の時刻の後に、上記スレーブ装置に、該第１の時刻を示す時刻情報を含む第２のメッセージを発行し、
上記メッセージ受信部は、上記スレーブ装置において第３の時刻に発行された第３のメッセージを受信し、
上記メッセージ送信部は、上記メッセージ受信部で上記第３のメッセージを受信した後に、上記スレーブ装置に、該第３のメッセージを受信した第４の時刻を示す時刻情報を含む第４のメッセージを発行し、
上記スレーブ装置は、
時刻情報を出力する時計部と、
マスタ装置から送られてくるメッセージを受信するメッセージ受信部と、
上記マスタ装置にメッセージを送信するメッセージ送信部と、
上記時計部の時刻の補正に必要な補正値を求める演算部と、
上記演算部で求められた補正値に基づいて、上記時計部の時刻を補正する補正部を備え、
上記メッセージ受信部は、上記マスタ装置において上記第１の時刻に発行された上記第１のメッセージと、上記マスタ装置において上記第１の時刻の後に発行された、該第１の時刻を示す時刻情報を含む上記第２のメッセージを受信し、
上記演算部は、上記メッセージ受信部で上記第１のメッセージが受信された時刻を第２の時刻とし、該第２の時刻から上記メッセージ受信部で受信された上記第２のメッセージに含まれる時刻情報が示す上記第１の時刻を減算して第１の補正値を求め、
上記補正部は、上記時計部の時刻を、上記演算部で求められた上記第１の補正値だけ減算した値となるように第１段階の補正を行い、
上記メッセージ送信部は、上記補正部で上記第１段階の補正が行われた後、上記第３の時刻に上記マスタ装置に上記第３のメッセージを発行し、
上記メッセージ受信部は、上記マスタ装置において上記第３のメッセージが受信された後に発行された、該第３のメッセージが受信された上記第４の時刻を示す時刻情報を含む上記第４のメッセージを受信し、
上記演算部は、上記メッセージ受信部で受信された上記第４のメッセージに含まれる時刻情報が示す上記第４の時刻から上記メッセージ送信部で上記第３のメッセージが発行された上記第３の時刻を減算し、該減算結果を１／２にして第２の補正値を求め、
上記補正部は、上記第１段階の補正を行った後、上記時計部の時刻を、上記演算部で求められた上記第２の補正値だけ加算した値となるように第２段階の補正を行う
電子機器システム。
【請求項５】
所定の周波数のクロックでカウントアップされるカウンタにより構成され、時刻情報としてカウンタ値を出力する時計部と、
スレーブ装置にメッセージを送信するメッセージ送信部と、
上記スレーブ装置から送られてくるメッセージを受信するメッセージ受信部を備え、
上記メッセージ送信部は、第１の時刻に、上記スレーブ装置に、第１のメッセージを発行すると共に、上記第１の時刻の後に、上記スレーブ装置に、該第１の時刻を示す上記カウンタのカウンタ値を含む第２のメッセージを発行し、
上記メッセージ受信部は、上記スレーブ装置において第３の時刻に発行された第３のメッセージを受信し、
上記メッセージ送信部は、上記メッセージ受信部で上記第３のメッセージを受信した後に、上記スレーブ装置に、該第３のメッセージを受信した第４の時刻を示す上記カウンタのカウンタ値を含む第４のメッセージを発行する
マスタ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、スレーブ装置、スレーブ装置の時刻同期化方法、マスタ装置および電子機器システムに関し、特に、マスタ装置との時刻同期化を高精度で実現するスレーブ装置等に関する。
【背景技術】
【０００２】
近年、メディアのデジタル化が進み、ビデオカメラに代表されるように、映像ストリームをデジタルで記録する装置が多く商品化されている。また、映像ストリームのデジタル化に伴って、編集を容易に行う環境が広まってきている。
【０００３】
複数のビデオカメラで撮影された映像ストリームを組み合わせて一つの映像ストリームを構成するような編集を行う場合、映像ストリームのタイムスタンプを参照し、複数のストリームの撮影時刻の対応付けを行い、同一時刻の映像を切り替えることで撮影時刻が前後することのない映像ストリームを構築するという手法がとられる。
【０００４】
そのためには、使用するすべてのビデオカメラの内蔵時計を常に合わせておく必要がある。従来、例えば、イーサネット（登録商標）で接続された複数のビデオカメラ等の電子機器システムにおいて、各電子機器の内蔵時計の時刻同期化のために、ＩＥＥＥ１５８８プロトコルを利用することが知られている。
【０００５】
このＩＥＥＥ１５８８プロトコル（非特許文献１参照）では、既知の通り、スレーブ装置が、マスタ装置とスレーブ装置の時刻差(Offset)とネットワークや装置間のレイテンシを含めた経路による遅延(Delay)を演算、補正することにより、スレーブ装置の時刻をマスタ装置の時刻に同期させる。
【０００６】
図５は、ＩＥＥＥ１５８８プロトコルによる時刻同期化が行われる電子機器システム２００の構成例を示している。この電子機器システム２００は、マスタ装置２１０とスレーブ装置２２０により構成されている。例えば、電子機器システム２００が複数のビデオカメラからなるカメラシステムである場合には、マスタ装置２１０は親機としてのビデオカメラであり、スレーブ装置２２０は子機としてのビデオカメラである。また、例えば、電子機器システム２００が制御機器（コンピュータ）および複数の被制御機器からなる制御システムである場合、マスタ装置２１０は制御機器であり、スレーブ装置２２０は被制御機器である。
【０００７】
なお、図５には、説明を簡単にするため、スレーブ装置２２０が１台の場合を示している。また、図５には、マスタ装置２１０およびスレーブ装置２２０の構成として、時刻同期化に関係する部分のみを示しており、その他の部分は省略している。
【０００８】
マスタ装置２１０は、時計部２１１と、マスタクロック発生部２１２と、メッセージ送信部２１３と、メッセージ受信部２１４を有している。
【０００９】
時計部２１１は、マスタクロック発生部２１２で発生されるマスタクロックＣＬＫｍでカウントアップされるカウンタにより構成されている。カメラシステム等の映像システムの場合、マスタクロックＣＬＫｍの周波数は、例えば、ビデオ伝送の基準として採用されている２７ＭＨｚとされる。この時計部２１１より出力される時刻情報（カウンタ値）は、メッセージ送信部２１３およびメッセージ受信部２１４に供給されている。
【００１０】
メッセージ送信部２１３は、スレーブ装置２２０に、イーサネット（登録商標）等の伝送路２３０を介して、ＰＴＰ（Precision Time Protocol）メッセージを送信する。ここで、ＰＴＰメッセージに時刻情報を含める際には、時刻情報としてのカウンタ値をナノセコンド（ｎｓ：nano second）単位の値に変換することが必要となる。そのため、メッセージ送信部２１３は、カウンタ値からナノセコンド（ｎｓ）単位の値への変換を行うカウンタ値／ｎｓ変換部２１３ａを備えている。メッセージ受信部２１４は、スレーブ装置２２０から伝送路２３０を介して送られてくるＰＴＰメッセージを受信する。
【００１１】
メッセージ送信部２１３がスレーブ装置２２０に送信するＰＴＰメッセージとしては、同期化（Sync）メッセージと、フォローアップ（FollowUp）メッセージと、遅延応答（DelayResponse）メッセージがある。同期化メッセージは、時刻同期化の動作を開始するために送信される。フォローアップメッセージは、同期化メッセージが送信された後に、マスタ装置２１０の時刻情報を送るために送信される。遅延応答メッセージは、メッセージ受信部２１４でスレーブ装置２２０からの後述する遅延要求（DelayRequest）メッセージを受信した後に、その応答として送信される。
【００１２】
スレーブ装置２２０は、時計部２２１と、スレーブクロック発生部２２２と、メッセージ受信部２２３と、メッセージ送信部２２４と、演算部２２５と、補正部２２６を有している。
【００１３】
時計部２２１は、スレーブクロック発生部２２２で発生されるスレーブクロックＣＬＫｓでカウントアップされるカウンタにより構成されている。カメラシステム等の映像システムの場合、スレーブクロックＣＬＫｓの周波数は、上述のマスタクロックＣＬＫｍの周波数と同様に、例えば、ビデオ伝送の基準として採用されている２７ＭＨｚとされる。この時計部２２１より出力される時刻情報（カウンタ値）は、メッセージ受信部２２３およびメッセージ送信部２２４に供給されている。
【００１４】
メッセージ受信部２２３は、マスタ装置２１０から伝送路２３０を介して送られてくるＰＴＰメッセージを受信する。上述したように、マスタ装置２１０から送られてくるＰＴＰメッセージに含まれる時刻情報は、ナノセコンド（ｎｓ）単位の値の情報である。そのため、メッセージ受信部２２３は、ナノセコンド（ｎｓ）単位の値からカウンタ値への変換を行うｎｓ／カウンタ値変換部２２３ａを備えている。メッセージ送信部２２４は、マスタ装置２１０に、伝送路２３０を介して、ＰＴＰメッセージを送信する。
【００１５】
メッセージ送信部２２４がマスタ装置２１０に送信するＰＴＰメッセージとしては、遅延要求（DelayRequest）メッセージがある。この遅延要求メッセージは、メッセージ受信部２２３でマスタ装置２１０からのフォローアップメッセージが受信された後に、マスタ装置２１０に遅延応答メッセージを要求するために送信される。
【００１６】
演算部２２５は、時計部２２１の時刻の補正に必要な補正値を求める。この演算部２２５は、以下の（１）式により、補正値として、マスタ装置２１０の時計部２１１の時刻Ｍｔ（ｘ）に対する、スレーブ装置２２０の時計部２２１の時刻Ｓｔ（ｘ）のオフセット（Offset）を求める。
Offset＝｛（ｔ２−ｔ１）−（ｔ４−ｔ３）｝／２      ・・・（１）
【００１７】
ここで、時刻ｔ２は、メッセージ受信部２２３で同期化メッセージが受信された時刻である。時刻ｔ１は、メッセージ受信部２２３で受信されたフォローアップメッセージの時刻情報が示す時刻である。時刻ｔ４は、メッセージ受信部２２３で受信された遅延応答メッセージの時刻情報が示す時刻である。さらに、時刻ｔ３は、メッセージ送信部２２４がマスタ装置２１０に遅延要求メッセージを送信（発行）した時刻である。
【００１８】
補正部２２６は、演算部２２５で求められた補正値であるオフセット（Offset）に基づいて、時計部２２１の時刻を補正する。補正前の時計部２２１の時刻Ｓｔ（ｘ）は、マスタ装置２１０の時計部２１１の時刻Ｍｔ（ｘ）にオフセット（Offset）が加わった状態となっている。そこで、補正部２２６は、時計部２２１の時刻Ｓｔ（ｘ）を、オフセット（Offset）だけ減算した値となるように、スレーブクロック発生部２２２から発生されるスレーブクロックＣＬＫｓに同期したタイミングで補正する。
【００１９】
図６は、図５に示す電子機器システム２００における時刻同期化の動作を示すシーケンス図を示している。
【００２０】
（ａ）マスタ装置２１０のメッセージ送信部２１３からスレーブ装置２２０に、同期化（Sync）メッセージが送信されて、時刻同期化の動作が開始される。この場合、メッセージ送信部２１３では、当該同期化メッセージの発行（送信）時刻ｔ１が時計部２１１の出力であるカウンタ値で記憶される。
【００２１】
（ｂ）スレーブ装置２２０のメッセージ受信部２２３では、マスタ装置２１０から送られた同期化メッセージが受信され、当該同期化メッセージの受信時刻ｔ２が時計部２２１の出力であるカウンタ値で記憶される。
【００２２】
（ｃ）次に、マスタ装置２１０のメッセージ送信部２１３からスレーブ装置２２０に、フォローアップ（FollowUp）メッセージが送信される。このフォローアップメッセージには、同期化メッセージを発行した時刻ｔ１を示す時刻情報がナノセコンド（ｎｓ）単位の値で含まれている。この場合、メッセージ送信部２１３のカウンタ値／ｎｓ変換部２１３ａで、時刻ｔ１を示すカウンタ値がナノセコンド（ｎｓ）単位の値に変換される。
【００２３】
（ｄ）スレーブ装置２２０のメッセージ受信部２２３では、マスタ装置２１０から送られたフォローアップメッセージが受信され、時刻ｔ１を示すナノセコンド（ｎｓ）単位の値が取得される。そして、この値は、ｎｓ／カウンタ値変換部２２３ａで、時刻ｔ１を示す時計部２２１の出力であるカウンタ値に変換されて記憶される。
【００２４】
（ｅ）次に、スレーブ装置２２０のメッセージ送信部２２４からマスタ装置２１０に、遅延要求（DelayRequest）メッセージが送信される。この場合、メッセージ送信部２２４では、当該遅延要求メッセージの発行（送信）時刻ｔ３が時計部２２１の出力であるカウンタ値で記憶される。
【００２５】
（ｆ）マスタ装置２１０のメッセージ受信部２１４では、スレーブ装置２２０から送られた遅延要求メッセージが受信され、当該遅延要求メッセージの受信時刻ｔ４が時計部２１１の出力であるカウンタ値で記憶される。
【００２６】
（ｇ）次に、マスタ装置２１０のメッセージ送信部２１３からスレーブ装置２２０に、遅延応答（DelayResponse）メッセージが送信される。この遅延応答メッセージには、上述のメッセージ受信部２１４が遅延要求メッセージを受信した時刻ｔ４を示す時刻情報がナノセコンド（ｎｓ）単位の値で含まれている。この場合、メッセージ送信部２１３のカウンタ値／ｎｓ変換部２１３ａで、時刻ｔ４を示すカウンタ値がナノセコンド（ｎｓ）単位の値に変換される。
【００２７】
（ｈ）スレーブ装置２２０のメッセージ受信部２２３では、マスタ装置２１０から送られた遅延応答メッセージが受信され、時刻ｔ４を示すナノセコンド（ｎｓ）単位の値が取得される。そして、この値は、ｎｓ／カウンタ値変換部２２３ａで、時刻ｔ４を示す時計部２２１の出力であるカウンタ値に変換されて記憶される。
【００２８】
（ｉ）次に、スレーブ装置２２０の演算部２２５では、メッセージ受信部２２３に記憶されている時刻ｔ１，ｔ２，ｔ４を示すカウンタ値と、メッセージ送信部２２４に記憶されている時刻ｔ３を示すカウンタ値が用いられて、上述の（１）式により、補正値としてのオフセット（Offset）が求められる。そして、補正部２２６により、時計部２２１の時刻Ｓｔ（ｘ）が、オフセット（Offset）だけ減算した値となるように補正される。補正後の時計部２２１の時刻Ｓｔ（ｘ）′は、マスタ装置２１０の時計部２１１の時刻Ｍｔと一致し、同期したものとなる。
【先行技術文献】
【非特許文献】
【００２９】
【非特許文献１】" Precision Clock Synchronization Protocol for NetworkedMeasurement and Control System "、ＩＥＥＥ１５８８規格
【発明の概要】
【発明が解決しようとする課題】
【００３０】
上述した時刻同期化の処理において、スレーブ装置２２０の演算部２２５では、マスタ装置２１０の時計部２１１の時刻Ｍｔ（ｘ）に対する、スレーブ装置２２０の時計部２２１の時刻Ｓｔ（ｘ）のオフセット（Offset）が、（１）式により算出されている。この場合、｛（ｔ２−ｔ１）−（ｔ４−ｔ３）｝を２で割っているので、当該オフセットの演算結果には０．５の誤差が必ず含まれる。したがって、このように誤差が含まれるオフセットの演算結果を用いて時計部２２１の時刻補正を行う場合には、スレーブ装置２２０ではマスタ装置２１０との時刻同期化を高精度で実現できない。
【００３１】
この発明の目的は、スレーブ装置においてマスタ装置との時刻同期化を高精度で実現することにある。
【課題を解決するための手段】
【００３２】
この発明の概念は、
時刻情報を出力する時計部と、
マスタ装置から送られてくるメッセージを受信するメッセージ受信部と、
上記マスタ装置にメッセージを送信するメッセージ送信部と、
上記時計部の時刻の補正に必要な補正値を求める演算部と、
上記演算部で求められた補正値に基づいて、上記時計部の時刻を補正する補正部を備え、
上記メッセージ受信部は、上記マスタ装置において第１の時刻に発行された第１のメッセージと、上記マスタ装置において上記第１の時刻の後に発行された、該第１の時刻を示す時刻情報を含む第２のメッセージを受信し、
上記演算部は、上記メッセージ受信部で上記第１のメッセージが受信された時刻を第２の時刻とし、該第２の時刻から上記メッセージ受信部で受信された上記第２のメッセージに含まれる時刻情報が示す上記第１の時刻を減算して第１の補正値を求め、
上記補正部は、上記時計部の時刻を、上記演算部で求められた上記第１の補正値だけ減算した値となるように第１段階の補正を行い、
上記メッセージ送信部は、上記補正部で上記第１段階の補正が行われた後、第３の時刻に上記マスタ装置に第３のメッセージを発行し、
上記メッセージ受信部は、上記マスタ装置において上記第３のメッセージが受信された後に、該第３のメッセージが受信された第４の時刻を示す時刻情報を含む第４のメッセージを受信し、
上記演算部は、上記メッセージ受信部で受信された上記第４のメッセージに含まれる時刻情報が示す上記第４の時刻から上記メッセージ送信部で上記第３のメッセージが発行された上記第３の時刻を減算し、該減算結果を１／２にして第２の補正値を求め、
上記補正部は、上記第１段階の補正を行った後、上記時計部の時刻を、上記演算部で求められた上記第２の補正値だけ加算した値となるように第２段階の補正を行う
スレーブ装置にある。
【００３３】
この発明において、スレーブ装置の時計部の時刻の補正は２段階で行われる。第１段階の補正では、マスタ装置において第１の時刻に発行されたメッセージを受信した第２の時刻から当該第１の時刻を減算して求められた第１の補正値が使用され、スレーブ装置の時計部の時刻は、この第１の補正値だけ減算した値となるように補正される。これにより、スレーブ装置の時計部の補正後の時刻は、マスタ装置の時計部の時刻から、マスタ装置とスレーブ装置との間の伝送遅延成分（Delay）が差し引かれた値となり、オフセット成分が除かれた状態となる。
【００３４】
また、第２段階の補正では、第３の時刻に送信したメッセージがマスタ装置で受信された第４の時刻から当該第３の時刻を減算し、さらに１／２にして求められた第２の補正値（Delay）が使用され、スレーブ装置の時計部の時刻は、この第２の補正値だけ加算した値となるよう補正される。これにより、スレーブ装置の時計部の時刻は、マスタ装置の時刻と一致し、同期化が図られる。
【００３５】
このように、この発明においては、スレーブ装置の時計部の時刻補正を、従来のように誤差が含まれるオフセット（Offset）の演算結果を使用して行うものではなく、スレーブ装置ではマスタ装置との時刻同期化を高精度で実現できる。
【００３６】
この発明において、例えば、時計部は、所定の周波数のクロックでカウントアップされるカウンタにより構成され、メッセージ受信部で受信される第２のメッセージおよび第４のメッセージに含まれる時刻情報はカウンタ値であってもよい。
【００３７】
このようにマスタ装置からスレーブ装置に時刻情報がカウンタ値で送られることで、マスタ装置でカウンタ値を例えばナノセコンド（ｎｓ）単位の値に変換する処理、およびスレーブ装置でナノセコンド（ｎｓ）単位の値をカウンタ値に変換する処理は行われない。そのため、マスタ装置からスレーブ装置に供給される時刻情報は、変換時の演算誤差を含まない正確な時刻情報となる。これにより、スレーブ装置ではマスタ装置との時刻同期化をより高精度に実現できる。
【発明の効果】
【００３８】
この発明によれば、スレーブ装置の時計部の時刻補正を、従来のように誤差が含まれるオフセット（Offset）の演算結果を使用して行うものではなく、スレーブ装置ではマスタ装置との時刻同期化を高精度で実現できる。
【図面の簡単な説明】
【００３９】
【図１】この発明の第１の実施の形態としての電子機器システムの構成例を示す概略ブロック図である。
【図２】第１の実施の形態としての電子機器システムにおける時刻同期化動作を説明するためのシーケンス図である。
【図３】この発明の第２の実施の形態としての電子機器システムの構成例を示す概略ブロック図である。
【図４】第２の実施の形態としての電子機器システムにおける時刻同期化動作を説明するためのシーケンス図である。
【図５】ＩＥＥＥ１５８８プロトコルによる時刻同期化が行われる電子機器システムの構成例を示す概略ブロック図である。
【図６】電子機器システムにおけるＩＥＥＥ１５８８プロトコルによる時刻同期化動作を説明するためのシーケンス図である。
【発明を実施するための形態】
【００４０】
以下、発明を実施するための形態（以下、「実施の形態」とする）について説明する。なお、説明は以下の順序で行う。
１．第１の実施の形態
２．第２の実施の形態
３．変形例
【００４１】
＜１．第１の実施の形態＞
［電子機器システムの構成例］
図１は、第１の実施の形態としての電子機器システム１００の構成例を示している。この電子機器システム１００は、マスタ装置１１０とスレーブ装置１２０により構成されている。例えば、電子機器システム１００が複数のビデオカメラからなるカメラシステムである場合には、マスタ装置１１０は親機としてのビデオカメラであり、スレーブ装置１２０は子機としてのビデオカメラである。また、例えば、電子機器システム１００が制御機器（コンピュータ）および複数の被制御機器からなる制御システムである場合、マスタ装置１１０は制御機器であり、スレーブ装置１２０は被制御機器である。
【００４２】
なお、図１には、説明を簡単にするため、スレーブ装置１２０が１台の場合を示している。また、図１には、マスタ装置１１０およびスレーブ装置１２０の構成として、時刻同期化に関係する部分のみを示しており、その他の部分は省略している。
【００４３】
マスタ装置１１０は、時計部１１１と、マスタクロック発生部１１２と、メッセージ送信部１１３と、メッセージ受信部１１４を有している。
【００４４】
時計部１１１は、マスタクロック発生部１１２で発生されるマスタクロックＣＬＫｍでカウントアップされるカウンタにより構成されている。カメラシステム等の映像システムの場合、マスタクロックＣＬＫｍの周波数は、例えば、ビデオ伝送の基準として採用されている２７ＭＨｚとされる。この時計部１１１より出力される時刻情報（カウンタ値）は、メッセージ送信部１１３およびメッセージ受信部１１４に供給されている。
【００４５】
メッセージ送信部１１３は、スレーブ装置１２０に、イーサネット（登録商標）等の伝送路１３０を介して、ＰＴＰ（Precision Time Protocol）メッセージを送信する。ここで、ＰＴＰメッセージに時刻情報を含める際には、時刻情報としてのカウンタ値をナノセコンド（ｎｓ：nano second）単位の値に変換することが必要となる。そのため、メッセージ送信部１１３は、カウンタ値からナノセコンド（ｎｓ）単位の値への変換を行うカウンタ値／ｎｓ変換部１１３ａを備えている。メッセージ受信部１１４は、スレーブ装置１２０から伝送路１３０を介して送られてくるＰＴＰメッセージを受信する。
【００４６】
メッセージ送信部１１３がスレーブ装置１２０に送信するＰＴＰメッセージとしては、同期化（Sync）メッセージと、フォローアップ（FollowUp）メッセージと、遅延応答（DelayResponse）メッセージがある。同期化メッセージは、時刻同期化の動作を開始するために送信される。フォローアップメッセージは、同期化メッセージが送信された後に、マスタ装置１１０の時刻情報を送るために送信される。遅延応答メッセージは、メッセージ受信部１１４でスレーブ装置１２０からの後述する遅延要求（DelayRequest）メッセージを受信した後に、その応答として送信される。
【００４７】
スレーブ装置１２０は、時計部１２１と、スレーブクロック発生部１２２と、メッセージ受信部１２３と、メッセージ送信部１２４と、演算部１２５と、補正部１２６を有している。
【００４８】
時計部１２１は、スレーブクロック発生部１２２で発生されるスレーブクロックＣＬＫｓでカウントアップされるカウンタにより構成されている。カメラシステム等の映像システムの場合、スレーブクロックＣＬＫｓの周波数は、上述のマスタクロックＣＬＫｍの周波数と同様に、例えば、ビデオ伝送の基準として採用されている２７ＭＨｚとされる。この時計部１２１より出力される時刻情報（カウンタ値）は、メッセージ受信部１２３およびメッセージ送信部１２４に供給されている。
【００４９】
メッセージ受信部１２３は、マスタ装置１１０から伝送路１３０を介して送られてくるＰＴＰメッセージを受信する。上述したように、マスタ装置１１０から送られてくるＰＴＰメッセージに含まれる時刻情報は、ナノセコンド単位の値の情報である。そのため、メッセージ受信部１２３は、ナノセコンド（ｎｓ）単位の値からカウンタ値への変換を行うｎｓ／カウンタ値変換部１２３ａを備えている。メッセージ送信部１２４は、マスタ装置１１０に、伝送路１３０を介して、ＰＴＰメッセージを送信する。
【００５０】
メッセージ送信部１２４がマスタ装置１１０に送信するＰＴＰメッセージとしては、遅延要求（DelayRequest）メッセージがある。この遅延要求メッセージは、メッセージ受信部１２３でマスタ装置１１０からのフォローアップメッセージが受信され、さらに、後述するように補正部１２６で第１段階の補正が行われた後に、マスタ装置１１０に遅延応答メッセージを要求するために送信される。
【００５１】
演算部１２５は、時計部１２１の時刻の補正に必要な補正値を求める。この補正値には、第１段階の補正で使用する第１の補正値と、第２の段階の補正で使用する第２の補正値とがある。この演算部１２５は、第１の補正値として、（ｔ２−ｔ１）を求める。ここで、時刻ｔ２は、メッセージ受信部１２３で同期化メッセージが受信された時刻である。また、時刻ｔ１は、メッセージ受信部１２３で受信されたフォローアップメッセージの時刻情報が示す時刻である。また、この演算部１２５は、第２の補正値として、（ｔ４−ｔ３）／２を求める。ここで、時刻ｔ４は、メッセージ受信部１２３で受信された遅延応答メッセージの時刻情報が示す時刻である。また、時刻ｔ３は、メッセージ送信部１２４がマスタ装置１１０に遅延要求メッセージを送信（発行）した時刻である。
【００５２】
補正部１２６は、第１段階の補正および第２段階の補正を行う。すなわち、補正部１２６は、第１段階の補正において、演算部１２５で求められた第１の補正値に基づいて、時計部１２１の時刻Ｓｔ（ｘ）を補正する。この場合、補正部１２６は、時計部１２１の時刻Ｓｔ（ｘ）を、第１の補正値「（ｔ２−ｔ１）」だけ減算した値となるように、スレーブクロック発生部１２２から発生されるスレーブクロックＣＬＫｓに同期したタイミングで補正する。
【００５３】
この場合、時計部１２１の補正後の時刻Ｓｔ（ｘ）′は、マスタ装置１１０の時計部１１１の時刻Ｍｔ（ｘ）から、マスタ装置１１０とスレーブ装置１２０との間の伝送遅延成分（Delay）が差し引かれた値となり、オフセット成分（Offset）が除かれた状態となる。
【００５４】
すなわち、スレーブ装置１２０の時計部１２１の補正前の時刻Ｓｔ（ｘ）とマスタ装置１１０の時計部１１１の時刻Ｍｔ（ｘ）との差をオフセット(Offset)とすると、（２）式が成り立つ。
Ｓｔ（ｘ）−Ｍｔ（ｘ）＝Offset      ・・・（２）
この（２）式を変形すると、（３）式が得られる。
Ｓｔ（ｘ）＝Offset＋Ｍｔ（ｘ）      ・・・（３）
【００５５】
マスタ装置１１０とスレーブ装置１２０との間の伝送遅延をディレイ（Delay）とすると、第１の補正値である（ｔ２−ｔ１）は、（４）式に示すように、オフセット(Offset)とディレイ（Delay）を加算したものとなる。
（ｔ２−ｔ１）＝Offset＋Delay      ・・・（４）
【００５６】
上述した第１段階の補正は、以下の（５）式で表される。
Ｓｔ（ｘ）′＝Ｓｔ（ｘ）−（ｔ２−ｔ１）      ・・・（５）
この（５）式に、上述の（３）式および（４）式を適用すると、（６）式が得られる。
Ｓｔ（ｘ）′＝（Offset＋Ｍｔ（ｘ））−（Offset＋Delay）
＝Ｍｔ（ｘ）−Delay            ・・・（６）
【００５７】
このように、第１段階の補正後の時刻Ｓｔ（ｘ）′は、マスタ装置１１０の時計部１１１の時刻Ｍｔ（ｘ）から、マスタ装置１１０とスレーブ装置１２０との間の伝送遅延成分（Delay）が差し引かれた値となり、オフセット成分（Offset）が除かれた状態となる。
【００５８】
また、補正部１２６は、第２段階の補正において、演算部１２５で求められた第２の補正値に基づいて、時計部１２１の時刻Ｓｔ（ｘ）′を補正する。この場合、補正部１２６は、時計部１２１の時刻Ｓｔ（ｘ）′を、第２の補正値「（ｔ４−ｔ３）／２」だけ加算した値となるように、スレーブクロック発生部１２２から発生されるスレーブクロックＣＬＫｓに同期したタイミングで補正する。
【００５９】
この場合、時計部１２１の補正後の時刻Ｓｔ（ｘ）″は、マスタ装置１１０の時計部１１１の時刻Ｍｔ（ｘ）と一致し、マスタ装置１１０との時刻同期化が図られる。
【００６０】
すなわち、上述の（６）式より、ｔ３が（Ｍｔ（ｘ）−Delay）であるとき、ｔ４は（Ｍｔ（ｘ）＋Delay）となる。そのため、（ｔ４−ｔ３）／２は、（７）式に示すように、ディレイ（Delay）となる。
【００６１】
（ｔ４−ｔ３）／２
＝｛（Ｍｔ（ｘ）＋Delay）−（Ｍｔ（ｘ）−Delay）｝／２
＝２＊Delay／２
＝Delay                ・・・（７）
【００６２】
上述した第２段階の補正は、以下の（８）式で表される。
Ｓｔ（ｘ）″＝Ｓｔ（ｘ）′＋（ｔ４−ｔ３）／２      ・・・（８）
この（８）式に、上述の（６）式および（７）式を適用すると、（９）式が得られる。
Ｓｔ（ｘ）″＝（Ｍｔ（ｘ）−Delay）＋Delay
＝Ｍｔ（ｘ）                ・・・（９）
【００６３】
このように、第２の段階の補正後の時刻Ｓｔ（ｘ）″は、マスタ装置１１０の時計部１１１の時刻Ｍｔ（ｘ）と一致し、マスタ装置１１０との時刻同期化が図られる。
【００６４】
［時刻同期化の動作］
図２は、図１に示す電子機器システム１００における時刻同期化の動作を示すシーケンス図を示している。
【００６５】
（ａ）マスタ装置１１０のメッセージ送信部１１３からスレーブ装置１２０に、同期化（Sync）メッセージが送信されて、時刻同期化の動作が開始される。この場合、メッセージ送信部１１３では、当該同期化メッセージの発行（送信）時刻ｔ１が時計部１１１の出力であるカウンタ値で記憶される。
【００６６】
（ｂ）スレーブ装置１２０のメッセージ受信部１２３では、マスタ装置１１０から送られた同期化メッセージが受信され、当該同期化メッセージの受信時刻ｔ２が時計部１２１の出力であるカウンタ値で記憶される。
【００６７】
（ｃ）次に、マスタ装置１１０のメッセージ送信部１１３からスレーブ装置１２０に、フォローアップ（FollowUp）メッセージが送信される。このフォローアップメッセージには、同期化メッセージを発行した時刻ｔ１を示す時刻情報がナノセコンド（ｎｓ）単位の値で含まれている。この場合、メッセージ送信部１１３のカウンタ値／ｎｓ変換部１１３ａで、時刻ｔ１を示すカウンタ値がナノセコンド（ｎｓ）単位の値に変換される。
【００６８】
（ｄ）スレーブ装置１２０のメッセージ受信部１２３では、マスタ装置１１０から送られたフォローアップメッセージが受信され、時刻ｔ１を示すナノセコンド（ｎｓ）単位の値が取得される。そして、この値は、ｎｓ／カウンタ値変換部１２３ａで、時刻ｔ１を示す時計部１２１の出力であるカウンタ値に変換されて記憶される。
【００６９】
（ｅ）次に、スレーブ装置１２０の演算部１２５では、メッセージ受信部１２３に記憶されている時刻ｔ１，ｔ２を示すカウンタ値が用いられて、第１の補正値として（ｔ２−ｔ１）が求められる。そして、補正部１２６により、時計部１２１の時刻Ｓｔ（ｘ）が、第１の補正値「（ｔ２−ｔ１）」だけ減算した値となるように補正される（（５）式参照）。補正後の時計部１２１の時刻Ｓｔ（ｘ）′は、マスタ装置１１０の時計部１１１の時刻Ｍｔ（ｘ）から、マスタ装置１１０とスレーブ装置１２０との間の伝送遅延成分（Delay）が差し引かれた値となり、オフセット成分（Offset）が除かれた状態となる（（６）式参照）。
【００７０】
（ｆ）次に、スレーブ装置１２０のメッセージ送信部１２４からマスタ装置１１０に、遅延要求（DelayRequest）メッセージが送信される。この場合、メッセージ送信部１２４では、当該遅延要求メッセージの発行（送信）時刻ｔ３が時計部１２１の出力であるカウンタ値で記憶される。
【００７１】
（ｇ）マスタ装置１１０のメッセージ受信部１１４では、スレーブ装置１２０から送られた遅延要求メッセージが受信され、当該遅延要求メッセージの受信時刻ｔ４が時計部１１１の出力であるカウンタ値で記憶される。
【００７２】
（ｈ）次に、マスタ装置１１０のメッセージ送信部１１３からスレーブ装置１２０に、遅延応答（DelayResponse）メッセージが送信される。この遅延応答メッセージには、上述のメッセージ受信部１１４が遅延要求メッセージを受信した時刻ｔ４を示す時刻情報がナノセコンド（ｎｓ）単位の値で含まれている。この場合、メッセージ送信部１１３のカウンタ値／ｎｓ変換部１１３ａで、時刻ｔ４を示すカウンタ値がナノセコンド（ｎｓ）単位の値に変換される。
【００７３】
（ｉ）スレーブ装置１２０のメッセージ受信部１２３では、マスタ装置１１０から送られた遅延応答メッセージが受信され、時刻ｔ４を示すナノセコンド（ｎｓ）単位の値が取得される。そして、この値は、ｎｓ／カウンタ値変換部１２３ａで、時刻ｔ４を示す時計部１２１の出力であるカウンタ値に変換されて記憶される。
【００７４】
（ｊ）次に、スレーブ装置１２０の演算部１２５では、メッセージ受信部１２３に記憶されている時刻ｔ４を示すカウンタ値と、メッセージ送信部１２４に記憶されている時刻ｔ３を示すカウンタ値が用いられて、第２の補正値「（ｔ４−ｔ３）／２」が求められる。そして、補正部１２６により、時計部１２１の時刻Ｓｔ（ｘ）′が、第２の補正値「（ｔ４−ｔ３）／２」だけ加算した値となるように補正される（（８）式参照）。補正後の時計部１２１の時刻Ｓｔ（ｘ）″は、マスタ装置１１０の時計部１１１の時刻Ｍｔと一致したものとなる（（９）式参照）。
【００７５】
以上説明したように、図１に示す電子機器システム１００においては、時刻同期化の動作において、スレーブ装置１２０の時計部１２１の時刻の補正は２段階で行われる。
【００７６】
第１段階の補正では、マスタ装置１１０において第１の時刻ｔ１に発行されたメッセージを受信した第２の時刻ｔ２から当該第１の時刻ｔ１を減算して求められた第１の補正値「（ｔ２−ｔ１）」が使用される。そして、スレーブ装置１２０の時計部１２１の時刻Ｓｔ（ｘ）は、この第１の補正値だけ減算した値となるように補正される。これにより、補正後の時刻Ｓｔ（ｘ）′は、マスタ装置１１０の時計部１１１の時刻Ｍｔ（ｘ）から、マスタ装置１１０とスレーブ装置１２０との間の伝送遅延成分（Delay）が差し引かれた値となり、オフセット成分（Offset）が除かれた状態となる。
【００７７】
また、第２段階の補正では、第３の時刻ｔ３に送信したメッセージがマスタ装置１１０で受信された第４の時刻ｔ４から当該第３の時刻ｔ３を減算し、さらに１／２にして求められた第２の補正値「（ｔ４−ｔ３）／２」が使用される。そして、スレーブ装置１２０の時計部１２１の時刻Ｓｔ（ｘ）′は、この第２の補正値だけ加算した値となるよう補正される。これにより、スレーブ装置１２０の時計部１２１の補正後の時刻Ｓｔ（ｘ）″は、マスタ装置１１０の時計部１１１の時刻Ｍｔ（ｘ）と一致し、同期化が図られる。
【００７８】
従って、図１に示す電子機器システム１００においては、スレーブ装置１２０の時計部１２１の時刻補正が、従来のように誤差が含まれるオフセット（Offset）の演算結果を用いて行われるものではない。そのため、スレーブ装置ではマスタ装置１１０との時刻同期化を高精度で実現できる。
【００７９】
＜２．第２の実施の形態＞
［電子機器システムの構成例］
図３は、第２の実施の形態としての電子機器システム１００Ａの構成例を示している。この電子機器システム１００Ａは、上述の図１に示す電子機器システム１００と同様に、マスタ装置１１０Ａとスレーブ装置１２０Ａにより構成されている。この図３において、図１と対応する部分には、同一符号を付して示し、その詳細説明は省略する。
【００８０】
マスタ装置１１０Ａは、時計部１１１と、マスタクロック発生部１１２と、メッセージ送信部１１３Ａと、メッセージ受信部１１４を有している。
【００８１】
メッセージ送信部１１３Ａは、スレーブ装置１２０に、伝送路１３０を介して、ＰＴＰ（Precision Time Protocol）メッセージを送信する。メッセージ送信部１１３Ａがスレーブ装置１２０に送信するＰＴＰメッセージとしては、上述した同期化（Sync）メッセージと、フォローアップ（FollowUp）メッセージと、遅延応答（DelayResponse）メッセージの他に、Messageメッセージがある。
【００８２】
メッセージ送信部１１３Ａは、スレーブ装置１２０に、フォローアップメッセージの送信に続いて、Messageメッセージを送信する。上述したように、フォローアップメッセージには、同期化メッセージを発行（送信）した時刻ｔ１を示す時刻情報がナノセコンド（ｎｓ）単位の値で含まれている。フォローアップメッセージに続くMessageメッセージにも時刻ｔ１を示す時刻情報が含まれるが、この時刻情報は時刻ｔ１を示すカウンタ値とされる。
【００８３】
また、メッセージ送信部１１３Ａは、スレーブ装置１２０に、遅延応答メッセージの送信に続いて、Messageメッセージを送信する。上述したように、遅延応答メッセージには、メッセージ受信部１１４が遅延要求メッセージを受信した時刻ｔ４を示す時刻情報がナノセコンド（ｎｓ）単位の値で含まれている。遅延応答メッセージに続くMessageメッセージにも時刻ｔ４を示す時刻情報が含まれるが、この時刻情報は時刻ｔ４を示すカウンタ値とされる。
【００８４】
このマスタ装置１１０Ａのその他は、図１に示す電子機器システム１００におけるマスタ装置１１０と同様に構成されている。
【００８５】
スレーブ装置１２０Ａは、時計部１２１と、スレーブクロック発生部１２２と、メッセージ受信部１２３Ａと、メッセージ送信部１２４と、演算部１２５と、補正部１２６を有している。
【００８６】
スレーブクロック発生部１２２で発生されるスレーブクロックＣＬＫｓの周波数は、上述したマスタ装置１１０Ａのマスタクロック発生部１１２で発生されるマスタクロックＣＬＫｍの周波数と等しくされる。例えば、カメラシステム等の映像システムの場合、クロックＣＬＫｍ，ＣＬＫｓの周波数は、双方とも、例えば、ビデオ伝送の基準として採用されている２７ＭＨｚとされる。
【００８７】
メッセージ受信部１２３Ａは、マスタ装置１１０Ａから伝送路１３０を介して送られてくるＰＴＰメッセージを受信する。上述したように、マスタ装置１１０のメッセージ送信部１１３Ａからは、フォローアップメッセージの送信に続いて、Messageメッセージが送信される。メッセージ受信部１２３Ａは、フォローアップメッセージおよびそれに続くMessageメッセージを受信する。
【００８８】
フォローアップメッセージには、時刻ｔ１を示す時刻情報としてナノセコンド（ｎｓ）単位の値が含まれている。一方、Messageメッセージには、時刻ｔ１を示す時刻情報としてカウンタ値が含まれている。この実施の形態において、メッセージ受信部１２３Ａは、Messageメッセージに含まれる時刻ｔ１を示すカウンタ値を取得して、記憶しておく。演算部１２５は、第１の補正値「（ｔ２−ｔ１）」を求める際に、この時刻ｔ１［カウンタ値］を用いる。
【００８９】
また、上述したように、マスタ装置１１０のメッセージ送信部１１３Ａからは、遅延応答メッセージの送信に続いて、Messageメッセージが送信される。メッセージ受信部１２３Ａは、遅延応答メッセージおよびそれに続くMessageメッセージを受信する。
【００９０】
遅延応答メッセージには、時刻ｔ４を示す時刻情報としてナノセコンド（ｎｓ）単位の値が含まれている。一方、Messageメッセージには、時刻ｔ４を示す時刻情報としてカウンタ値が含まれている。この実施の形態において、メッセージ受信部１２３Ａは、Messageメッセージに含まれる時刻ｔ４を示すカウンタ値を取得して、記憶しておく。演算部１２５は、第２の補正値「（ｔ４−ｔ３）／２」を求める際に、この時刻ｔ４［カウンタ値］を用いる。
【００９１】
このスレーブ装置１２０Ａのその他は、図１に示す電子機器システム１００におけるスレーブ装置１２０と同様に構成されている。
【００９２】
［時刻同期化の動作］
図４は、図３に示す電子機器システム１００Ａにおける時刻同期化の動作を示すシーケンス図を示している。
【００９３】
（ａ）マスタ装置１１０Ａのメッセージ送信部１１３Ａからスレーブ装置１２０Ａに、同期化（Sync）メッセージが送信されて、時刻同期化の動作が開始される。この場合、メッセージ送信部１１３Ａでは、当該同期化メッセージの発行（送信）時刻ｔ１が時計部１１１の出力であるカウンタ値で記憶される。
【００９４】
（ｂ）スレーブ装置１２０Ａのメッセージ受信部１２３Ａでは、マスタ装置１１０Ａから送られた同期化メッセージが受信され、当該同期化メッセージの受信時刻ｔ２が時計部１２１の出力であるカウンタ値で記憶される。
【００９５】
（ｃ）次に、マスタ装置１１０Ａのメッセージ送信部１１３Ａからスレーブ装置１２０Ａに、フォローアップ（FollowUp）メッセージが送信される。このフォローアップメッセージには、同期化メッセージを発行した時刻ｔ１を示す時刻情報がナノセコンド（ｎｓ）単位の値で含まれている。この場合、メッセージ送信部１１３Ａのカウンタ値／ｎｓ変換部１１３ａで、時刻ｔ１を示すカウンタ値がナノセコンド（ｎｓ）単位の値に変換される。
【００９６】
スレーブ装置１２０Ａのメッセージ受信部１２３Ａでは、マスタ装置１１０Ａから送られるフォローアップメッセージが受信される。しかし、この実施の形態において、メッセージ受信部１２３Ａでは、時刻ｔ１を示すナノセコンド（ｎｓ）単位の値を取得し、それをカウンタ値に変換して記憶することは、行われない。
【００９７】
（ｄ）次に、マスタ装置１１０Ａのメッセージ送信部１１３Ａからスレーブ装置１２０Ａに、Messageメッセージが送信される。このMessageメッセージには、同期化メッセージを発行した時刻ｔ１を示す時刻情報がカウンタ値で含まれている。
【００９８】
（ｅ）スレーブ装置１２０Ａのメッセージ受信部１２３Ａでは、マスタ装置１１０Ａから送られたMessageメッセージが受信され、時刻ｔ１を示すカウンタ値が取得されて、そのまま記憶される。
【００９９】
（ｆ）次に、スレーブ装置１２０Ａの演算部１２５では、メッセージ受信部１２３Ａに記憶されている時刻ｔ１，ｔ２を示すカウンタ値が用いられて、第１の補正値として（ｔ２−ｔ１）が求められる。そして、補正部１２６により、時計部１２１の時刻Ｓｔ（ｘ）が、第１の補正値「（ｔ２−ｔ１）」だけ減算した値となるように補正される（（５）式参照）。補正後の時計部１２１の時刻Ｓｔ（ｘ）′は、マスタ装置１１０Ａの時計部１１１の時刻Ｍｔ（ｘ）から、マスタ装置１１０Ａとスレーブ装置１２０Ａとの間の伝送遅延成分（Delay）が差し引かれた値となり、オフセット成分（Offset）が除かれた状態となる（（６）式参照）。
【０１００】
（ｇ）次に、スレーブ装置１２０Ａのメッセージ送信部１２４からマスタ装置１１０Ａに、遅延要求（DelayRequest）メッセージが送信される。この場合、メッセージ送信部１２４では、当該遅延要求メッセージの発行（送信）時刻ｔ３が時計部１２１の出力であるカウンタ値で記憶される。
【０１０１】
（ｈ）マスタ装置１１０Ａのメッセージ受信部１１４では、スレーブ装置１２０Ａから送られた遅延要求メッセージが受信され、当該遅延要求メッセージの受信時刻ｔ４が時計部１１１の出力であるカウンタ値で記憶される。
【０１０２】
（ｉ）次に、マスタ装置１１０Ａのメッセージ送信部１１３Ａからスレーブ装置１２０Ａに、遅延応答（DelayResponse）メッセージが送信される。この遅延応答メッセージには、上述のメッセージ受信部１１４が遅延要求メッセージを受信した時刻ｔ４を示す時刻情報がナノセコンド（ｎｓ）単位の値で含まれている。この場合、メッセージ送信部１１３Ａのカウンタ値／ｎｓ変換部１１３ａで、時刻ｔ１を示すカウンタ値がナノセコンド（ｎｓ）単位の値に変換される。
【０１０３】
スレーブ装置１２０Ａのメッセージ受信部１２３Ａでは、マスタ装置１１０Ａから送られる遅延応答メッセージが受信される。しかし、この実施の形態において、メッセージ受信部１２３Ａでは、時刻ｔ４を示すナノセコンド（ｎｓ）単位の値を取得し、それをカウンタ値に変換して記憶することは、行われない。
【０１０４】
（ｊ）次に、マスタ装置１１０Ａのメッセージ送信部１１３Ａからスレーブ装置１２０Ａに、Messageメッセージが送信される。このMessageメッセージには、上述のメッセージ受信部１１４が遅延要求メッセージを受信した時刻ｔ４を示す時刻情報がカウンタ値で含まれている。
【０１０５】
（ｋ）スレーブ装置１２０Ａのメッセージ受信部１２３Ａでは、マスタ装置１１０Ａから送られたMessageメッセージが受信され、時刻ｔ４を示すカウンタ値が取得されて、そのまま記憶される。
【０１０６】
（ｍ）次に、スレーブ装置１２０Ａの演算部１２５では、メッセージ受信部１２３Ａに記憶されている時刻ｔ４のカウンタ値と、メッセージ送信部１２４に記憶されている時刻ｔ３のカウンタ値が用いられて、第２の補正値「（ｔ４−ｔ３）／２」が求められる。そして、補正部１２６により、時計部１２１の時刻Ｓｔ（ｘ）′が、第２の補正値「（ｔ４−ｔ３）／２」だけ加算した値となるように補正される（（８）式参照）。補正後の時計部１２１の時刻Ｓｔ（ｘ）″は、マスタ装置１１０の時計部１１１の時刻Ｍｔと一致したものとなる（（９）式参照）。
【０１０７】
以上説明したように、図３に示す電子機器システム１００Ａにおいては、図１に示す電子機器システム１００と同様に、時刻同期化の動作において、スレーブ装置１２０Ａの時計部１２１の時刻の補正は２段階で行われる。従って、図３に示す電子機器システム１００Ａにおいても、スレーブ装置１２０Ａの時計部１２１の時刻補正が、従来のように誤差が含まれるオフセット（Offset）の演算結果を用いて行われるものではない。そのため、スレーブ装置１２０Ａではマスタ装置１１０Ａとの時刻同期化を高精度で実現できる。
【０１０８】
また、図３に示す電子機器システム１００Ａにおいては、マスタ装置１１０Ａからスレーブ装置１２０Ａに、Messageメッセージが使用されて、時刻ｔ１，ｔ４の時刻情報がカウンタ値で送られる。このようにマスタ装置１１０Ａからスレーブ装置１２０Ａに時刻情報をカウンタ値で送ることで、これらの時刻情報に関しては、マスタ装置でカウンタ値を例えばナノセコンド（ｎｓ）単位の値に変換する処理、およびスレーブ装置でナノセコンド（ｎｓ）単位の値をカウンタ値に変換する処理が行われない。そのため、マスタ装置１１０Ａからスレーブ装置１２０Ａに供給される時刻ｔ１，ｔ４の時刻情報は、変換時の演算誤差を含まない正確な時刻情報となる。したがって、演算部１２５では、第１の補正値「（ｔ２−ｔ１）」および第２の補正値「（ｔ４−ｔ３）／２」を精度よく求めることができる。これにより、スレーブ装置１２０Ａではマスタ装置１１０Ａとの時刻同期化をより高精度に実現できる。
【０１０９】
＜３．変形例＞
なお、上述実施の形態においては、マスタ装置１１０，１１０Ａとスレーブ装置１２０，１２０Ａとの間で伝送されるメッセージとしてＰＴＰメッセージを用いたものを示したが、この発明は、これに限定されない。
【０１１０】
また、上述実施の形態においては、スレーブ装置１２０，１２０Ａに演算部１２５および補正部１２６を別個に設けたが、スレーブ装置１２０，１２０Ａのブロック構成は、これに限定されない。例えば、演算部１２５および補正部１２６の部分が１つの処理ブロックで構成されていてもよい。
【産業上の利用可能性】
【０１１１】
この発明は、スレーブ装置においてマスタ装置との時刻同期化を高精度で実現できるものであり、例えば、複数のビデオカメラの時刻同期化が必要なカメラシステム、制御機器と被制御機器との時刻同期化が必要な制御システム等に適用できる。
【符号の説明】
【０１１２】
１００，１００Ａ・・・電子機器システム
１１１・・・時計部
１１２・・・マスタクロック発生部
１１３，１１３Ａ・・・メッセージ送信部
１１３ａ・・・カウンタ値／ｎｓ変換部
１１４・・・メッセージ受信部
１２０，１２０Ａ・・・スレーブ装置
１２１・・・時計部
１２２・・・スレーブクロック発生部
１２３，１２３Ａ・・・メッセージ受信部
１２３ａ・・・ｎｓ／カウンタ値変換部
１２４・・・メッセージ送信部
１２５・・・演算部
１２６・・・補正部
１３０・・・伝送路
【図１】
2010190635.tif 000003
【図２】
2010190635.tif 000004
【図３】
2010190635.tif 000005
【図４】
2010190635.tif 000006
【図５】
2010190635.tif 000007
【図６】
2010190635.tif 000008