以下、実施形態に係る情報通信システム及び情報通信装置について、図面を参照して説明する。
[構成]
図1は、実施形態に係る情報通信システム100の模式図である。図2は、実施形態に係る情報通信システム100を構成する情報通信装置1の機能ブロック図である。図3は、図2の制御部70の機能ブロック図である。
本実施形態に係る情報通信システム100は、複数の情報通信装置1からなり、各情報通信装置1が情報通信により同期を図る。マスター装置となる情報通信装置1に対し、スレーブ装置となる情報通信装置1が同期する。マスター装置とは、情報通信システム100において、他の情報通信装置1と同期される対象となる情報通信装置1である。スレーブ装置とは、情報通信システム100において、マスター装置である他の情報通信装置1に対して同期する情報通信装置1である。マスター装置からスレーブ装置への時刻同期を図るための情報である同期情報の送受信を介して、スレーブ装置がマスター装置に同期する。
以下では、マスター装置となる情報通信装置1をマスター装置1aとし、スレーブ装置となる情報通信装置1をスレーブ装置1bとする。マスター装置1aに対するスレーブ装置1bは少なくとも1台が存在すればよいが、図1に示すように、複数台のスレーブ装置1bを備えるシステムであってもよい。
マスター装置1aとスレーブ装置1bは、有線又は無線で情報を通信する。ここでは、情報通信装置1は、有線で情報を送信及び受信することで、同期を図る例を説明する。
なお、情報通信装置1は、マスター装置1aとスレーブ装置1bの双方の機能を有する同期中継装置として構成されていてもよい。同期中継装置は、PTPにおけるバウンダリークロックに相当する。この場合、スレーブ装置1b側に接続されたネットワークを上位同期ネットワーク、マスター装置1a側に接続されたネットワークを下位同期ネットワークとする。スレーブ装置1b側の上位同期ネットワークにおいて同期したタイミング情報を、マスター装置1aを介して、下位同期ネットワークに伝送する。
(情報通信装置)
情報通信装置1は、コンピュータを含み構成されており、あらかじめHDDやSSD等の記憶部に記憶されたプログラムを、CPUなどを含むプロセッサが実行することにより、後述する制御部において必要な演算を行う。
具体的には、図2に示すように、情報通信装置1は、通信部10、クロック20、時計30、記憶部50、外部インターフェイス60、制御部70を有する。例えば、各部10~70は、ハードウェアとして構成される。制御部70の各部は、プログラム及びデータを含むソフトウェアにより構成しても良い。制御部70のどの部分をソフトウェアとして構成するかは適宜設計変更可能である。
通信部10は、他の情報通信装置1との間で情報を送受信する。通信部10は、送信器11、受信器12、送信タイミング検出部13、受信タイミング検出部14を有する。
送信器11は、入力された情報を送信する機器である。具体的には、送信器11は、情報を最小構成要素に時系列に分解の上、当該情報を外部へ送信する。情報のパケット長(通信情報量)は任意であり、通信毎に異なっていても良い。例えば、マイクから入力された音声信号を音声データに変換する入力部が情報通信装置1に接続され、入力部から情報としての音声データが情報通信装置1に入力される。
受信器12は、外部から情報を受信する機器である。具体的には、受信器12は、情報通信装置1外部から受信した、最小構成要素に時系列に分解された情報を再構成し、情報通信装置1内の他の構成部へ出力する。例えば、音声を出力するイヤーレシーバやスピーカなどの再生部が情報通信装置1に接続され、受信器12が音声データを音声信号に変換して再生部に出力する。
ここで、情報通信装置1が通信する情報、つまり、送信器11により送信される情報、受信器12により受信される情報には、後述する同期情報、タイミング情報、クロック品質情報が含まれる。
情報通信装置1は、送信器11および受信器12の双方を有している。なお、無線による通信を行う場合には、送信器11及び受信器12にそれぞれアンテナを設けても良いし、切り替えスイッチを設けて1本のアンテナを共有しても良い。
送信タイミング検出部13は、送信タイミングを検出する。送信タイミングは、送信器11により送信される情報の所定の情報要素位置が、本情報通信装置1の外部へ送信されるタイミングである。この送信タイミングは、後述するクロック20のクロック周期(換言すれば、クロック20の発振するパルスの周期)をベースとして検出される。つまり、送信タイミングは、クロック周期の整数倍に基づいて表現される。
また、送信タイミング検出部13は、その検出結果を情報通信装置1内の他の構成へ出力する。ここでいう情報は、例えばパケットであり、この場合、所定の情報要素位置(以下、所定情報要素位置とする)は、ビット位置である。例えば、送信タイミング検出部13は、情報が8個の最小構成要素のビットに時系列に分解される場合、3番目の情報要素位置(ビット位置)が送信されるタイミングを検出し、3番目の情報要素位置(ビット位置)が送信されたタイミングを外部へ出力する。
受信タイミング検出部14は、受信器12により受信される情報の所定情報要素位置が、情報通信装置1の外部から受信されるタイミングである受信タイミングを検出する。この受信タイミングは、後述するクロック20のクロック周期をベースとして検出される。つまり、受信タイミングは、クロック周期の整数倍として表現される。
また、受信タイミング検出部14は、その検出結果を情報通信装置1内の他の構成へ出力する。例えば、受信タイミング検出部14は、情報が8個の最小構成要素であるビットに時系列に分解される場合、3番目の情報要素位置(ビット位置)が受信されるタイミングを検出し、3番目の情報要素位置(ビット位置)が受信されたタイミングを外部へ出力する。
なお、上記の送信タイミング及び受信タイミングの例では、何れも同じ最小構成要素の位置を検出することとしたが、例えば、送信機となる情報通信装置1の送信タイミング検出部13は5番目の要素を検出し、受信機となる情報通信装置1の受信タイミング検出部14は8番目の要素を検出するなど、送受信する情報通信装置1間において各タイミング検出で所定関係(例えば間隔(ここでは3つ))を保つのであれば、必ずしも同じ位置を検出しなくても良い。
また、送信タイミングは実際に送信されるタイミングから規定時間前後して検出されても良い。受信タイミングは実際に受信されるタイミングから規定時間前後して検出されても良い。これらの既定値は通信部内にて固定的でも、外部から静的または動的に設定されても良い。なお、「規定」とは、「あらかじめ設定された」、「所定の」と同義である。
クロック20は、所定の周波数を発振し、情報通信装置1の各部に動作タイミングを与えるための信号を出力する。これにより、情報通信装置1内の各部は、クロック20に同期して動作する。情報通信装置1の全体が単一のクロック20に一斉に同期しても良いし、複数のクロック20にて複数の機能部毎に独立して同期しても良い。このクロック20は、固有の有限な発振周波数許容偏差を有する。つまり、クロック20は、所定の発振周波数(例えば10MHz)に対する誤差(例えば20ppm)を有する。クロック20としては、例えば、水晶振動子などの周波数固定の発振器を用いることができる。
クロック20は、マスター装置1aとスレーブ装置1bとで公称周波数が同じでも、実際には個体差が存在する。すなわち、マスター装置1aとスレーブ装置1bのクロック20の周波数間には周波数偏差が存在する。クロック20は外部より周波数制御信号を入力し、同信号に対応して発振周波数を可変制御しても良い。
時計30は、クロック20の出力信号を源振として刻時し、情報通信装置1の起動からの相対的な時刻を出力する。刻時は入力されたクロック信号の分周波に同期しても良い。また、刻時は、1クロックあたりの進み幅が可変であってもよく、クロック周波数が固定であっても間欠的に時計の駆動周波数を制御可能としてもよい。時刻は規定の単位にて参照されるが、この規定値は時計内にて固定的でも、外部から静的または動的に設定されても良い。時計30の相対的な時刻の出力は、例えば外部からの参照要求に応じて行う。
記憶部50は、HDD、SSD、メモリ、レジスタなどの記録媒体である。記憶部50は、制御部70で演算を行うのに必要な情報を記憶する。後述の送信タイミング又は受信タイミングに対応する時計30の時刻は、CPU又はソフトウェアを介さず、ハードウェアのみのアクセスで保持できる記録媒体に保持すると良い。ソフトウェアに起因するジッターを排除できるからである。なお、送受信タイミングと時刻との対応付けにおいてソフトウェアのジッターを受けないことが重要であり、送受信タイミングと時刻とが対応付けられた後は、低速なアクセス領域に記憶されても良い。
記憶部50としてのメモリは、任意の情報を入出力し、当該情報を指定された記憶領域へ記憶する。情報の記憶は、外部からの記憶要求により行われるが、その際に記憶する情報と記憶領域が入力される。情報の参照は、外部からの参照要求により行われるが、その際に参照情報の記憶領域が入力され、その入力により指定された記憶領域の情報を出力する。情報の記憶の保持は、本装置の動作中のみであっても、動作停止時も含めて永続的であっても良い。
外部インターフェイス60(以下、外部I/F60ともいう。)は、本情報通信装置1内部と外部を接続し、任意の情報を入出力する。情報は、送受信データや時計30の時刻を含む。外部I/F60は、例えば、記憶部50に記憶させる情報を外部から取得する。また、外部I/F60は、受信タイミング検出部14により検出した受信タイミングから送信タイミング検出部13が検出する送信タイミングまでの時間を外部から取得し、当該時間を後述するスケジューラ77で用いても良い。
なお、マスター装置1aは、少なくとも同期情報を送信する外部I/F60を有する。スレーブ装置1bは、少なくとも同期情報を受信する外部I/F60を有する。但し、マスター装置1aは、同期情報を受信する外部I/F60を有してもよく、スレーブ装置1bは、同期情報を送信する外部I/F60を有しても良い。さらに、情報通信装置1は、内部状態を制御および表示可能な表示装置等のユーザーインターフェイスを有しても良い。
制御部70は、情報通信装置1の各部の動作全般を制御する。図3は、制御部70の機能ブロック図である。図3に示すように、制御部70は、主制御部71、送受信データI/F72、通信制御部73、時刻記録部74、スケジューラ77、周波数偏差演算部78、同期制御部79、タイミング情報参照部80、慣性同期処理部81、準同期処理部82、変動制御部83、クロック品質情報出力部84、選出部85、抑制部86、再選出部87、役割決定部88、順位リスト生成部89、プレゼンス情報配信部90、マスター決定部91を有する。
主制御部71は、制御部70内の各部と連携されており、制御部70内の各部の動作を統制する。送受信データI/F72は、記憶部50や外部I/F60の情報を装置外部へ送信可能な形式にする。また、送受信データI/F72は、装置外部から受信した情報を制御部70及び記憶部50に適した形式にする。
通信制御部73は、通信部10の動作を統制する。通信制御部73は、通信部10と制御部70との間で送受信情報の入出力をする。
時刻記録部74は、送信タイミング検出部13により送信された情報の所定情報要素位置の送信タイミングと、当該送信タイミングにおける時計30の時刻とを対応付けて、記憶部50のメモリに記憶させる。この対応付けは、例えば、時刻記録部74が、送信タイミング検出部13から、送信された情報の所定情報要素位置の送信タイミングか検出された旨の信号を受けて、時計30の時刻を参照し、当該時刻と送信タイミングとを対応付ける。
また、時刻記録部74は、送信タイミングに対応する時刻を、当該送信する情報に載せる時刻付加部でもある。時刻記録部74は、送信と同様に、受信タイミング検出部14により受信された情報の所定要素位置の受信タイミングと、当該受信タイミングにおける時計30の時刻とを対応付けて、メモリに記憶させる。また、時刻記録部74は、受信タイミングに対応する時刻を、情報に載せて送信器11に送信させる。
このように、本実施形態において、「時刻」は、情報の所定情報要素位置の検出された送信タイミング又は受信タイミングに対応する時計30の時刻をいい、「時間」は、当該時刻の差分をいう。
スケジューラ77は、情報を送信又は受信するスケジュール(時間)を制御する。例えば、情報を一方向に通信する場合において、送信側のスケジューラ77は、情報の送信間隔を制御したり、情報の送信タイミングが所定時刻に検出されるスケジュールを設定したりする。また、スケジューラ77は、情報を受信してから送信するまでの時間を制御しても良い。通信制御部73は、情報を送信する際、予め設定されたスケジュールの送信タイミング又は検出した送信タイミングに対応する時刻を、その情報に含めることができる。
周波数偏差演算部78は、被同期対象の情報通信装置1(マスター装置1a)のクロック周波数と、同期対象の情報通信装置1(スレーブ装置1b)のクロック周波数の相違を演算する。このクロック周波数(以下、単に「周波数」ともいう。)の違いは、周波数比又は周波数偏差である。本実施形態の周波数偏差演算部78は、情報通信装置1間のクロック20の時差と、情報通信装置1間の情報の伝搬時間から、周波数比又は周波数偏差を求める。
本実施形態では、周波数比は、マスター機のクロック周波数に対するスレーブ機のクロック周波数の比r(以下、クロック周波数比といい、単に周波数比ともいう場合がある。)である。周波数偏差は、マスター機のクロック周波数とスレーブ機のクロック周波数のずれであり、周波数偏差eは、e=r-1により求めることができる。
同期制御部79は、周波数偏差演算部78により求めた周波数比又は周波数偏差に基づいて、クロック20又は時計30を制御する。
つまり、同期制御部79は、周波数偏差演算部78により求めた周波数比又は周波数偏差に基づいて、被同期装置(マスター機)となる情報通信装置1との時間のズレを演算し、そのズレに基づいて時計30の刻時する値を補正する。例えば、時計30自体を制御して刻時を補正しても良い。或いは、時計30が時刻を出力する際に時間のズレに基づいて補正しても良い。すなわち、時計30の刻時自体は補正せず、時計30が時刻を出力する際にズレ分を補正した時刻を出力するように時計30を制御しても良い。
タイミング情報参照部80は、同期制御部79から出力されるタイミング情報を参照し、これに同期するように所望の処理を実行する。タイミング情報は、周期的なタイミング信号と、指定されたタイミングに一意に対応する時刻情報により構成される。同期制御部79は、タイミング情報に基づいて、他の情報通信装置1と同期することができる。同期中継装置においては、上位同期ネットワークの同期されたタイミング情報を、下位同期系統へ伝送する。
慣性同期処理部81は、同期を失わせる要因が発生した場合に、タイミング情報参照部80がタイミング情報に同期した処理を行っている間、同期位相に基づいて、同期状態から同期を失う非同期状態への遷移を保留して、連続した同期を維持する慣性同期状態に遷移させる。慣性同期状態は、システムが要求する同期位相が維持できてはいないが、非同期状態には遷移しない状態をいう。慣性同期処理部81は、同期状態と慣性同期状態との相互の状態の遷移、慣性同期状態と非同期状態との相互の状態の遷移を制御する。
準同期処理部82は、非同期状態において、同期制御部79による同期制御を開始してから、所定の同期位相となるまで、同期状態への遷移を保留する準同期状態とする。準同期状態とは、同期位相が安定するまで、同期状態とするのを待つ状態である。つまり、準同期状態は、時刻同期をするために必要な上記の4つの計測値が受信できて、クロックの周波数制御も問題なくできている状態ではあるが、システムが要求する同期精度にまで至っていない過渡的状態である。準同期処理部82は、非同期状態と準同期状態との相互の状態の遷移、準同期状態と同期状態との相互の状態の遷移を制御する。
変動制御部83は、同期のための同期位相変化の速度を所定の範囲内に制限するとともに、同期位相変化の加速度が連続関数に従って変動するように制御する。つまり、変動制御部83は、同期位相を変動の速度及び加速度に制約を課すことにより、同期位相の非連続な切り替えを回避させる。
クロック品質情報出力部84は、クロック品質情報を出力する。クロック品質情報は、クロックの精度や優先順位などの静的に設定された値の集合であり、PTPのANNOUNCEパケットに相当する。
選出部85は、クロック品質情報に基づいて、いずれかの情報通信装置1を、マスター装置1a及びスレーブ装置1bの少なくとも一方として選出する。抑制部86は、起動時の情報通信装置1のクロック品質情報出力部84に、クロック品質情報の出力を保留させることにより、選出部85の選出によるマスター装置1aのスレーブ装置1bへの切り替えを抑制する。再選出部87は、マスター装置1aの情報通信システム100からの離脱を検出した場合に、同期状態又は慣性同期状態に遷移させるとともに、いずれかの情報通信装置1を、マスター装置1aとして再選出する。
役割決定部88は、優先順位情報に基づいて、役割が未定の情報通信装置1の役割を決める。この優先順位情報は、マスター装置1aとして選出される可能性が高位か低位かの優先順位に関する情報を含む情報である。優先順位は、低位と高位にそれぞれ割り当てられた2値の情報としても良いし、低位から高位までを2値より大きな多値の情報にして、複数の順位を設定してもよい。
マスター装置1a及びスレーブ装置1bとしての役割が未定の情報通信装置1が起動により同期ネットワークに接続された場合に、役割が未定の情報通信装置1が自装置を低位とした優先順位情報を他の情報通信装置1に送信する。役割決定部88は、自装置の優先順位情報と、他の情報通信装置1から受信する優先順位情報とに基づいて、役割を決定する。自装置の優先順位が他装置の優先順位よりも低位であれば、自装置はスレーブ装置1bとなる。自装置の優先順位が他装置の優先順位よりも高位であれば、自装置はマスター装置1aとなる。規定期間を経過しても、他装置からの優先順位情報を受信しない場合には、自装置の優先順位情報を高位として、他の情報通信装置1に送信し、上記のように、スレーブ装置1b、マスター装置1aを決定する。
順位リスト生成部89は、スレーブ装置1bがマスター装置1aとして選択される順位を示すマスター順位リストを生成する。マスター順位リストは、各スレーブ装置1bから受信する同期品質に基づいて生成される。プレゼンス情報配信部90は、各スレーブ装置1bが同期ネットワークに接続されていることを明示するプレゼンス情報を配信する。マスター決定部91は、マスター順位リストとプレゼンス情報に基づいて、新たなマスター装置1aとすべきスレーブ装置1bを決定する。
[動作]
上記の構成を有する情報通信システム100の動作を説明する。本実施形態の情報通信システム100は、情報通信を用いて、情報通信装置1間のクロックの時差と、情報通信装置1間の情報通信の伝搬時間を計測し、この時差を補正することにより、情報通信装置1間の時刻同期を実現する。
さらに、同期品質に対して外乱が存在する環境下における基本的な同期連続性、マスター装置とスレーブ装置との役割を切り替える際の同期連続性、同期中継装置における同期系統間の同期連続性の維持を可能としている。
[時刻同期]
まず、周波数偏差演算部78、同期制御部79による時刻同期の一例について説明する。この時刻同期は、情報通信装置1間のクロック20の時差と、情報通信装置1間の情報の伝搬時間を計測し、この時差を補正することにより行う。
図4に示すように、マスター装置1aがスレーブ装置1bに同期情報を送信し、伝搬時間を経て当該情報をスレーブ装置1bが受信し、当該受信をしてからマスター装置1aに別の同期情報を送信し、同じ伝搬時間を経てマスター装置1aで受信する状況を考え、伝搬時間と時差を定式化する。なお、ここでのマスター装置1aが送信する同期情報、及び、スレーブ装置1bが送信する別の同期情報とは、同期するためにタイミングを計る目的のものであり、当該同期情報にはマスター装置1aの当該同期情報の送信時刻が載せられていても良いが、当該同期情報及び当該別の同期情報の中身は任意である。
図4では、マスター装置1aから情報を時刻tm,Tに送信し、伝搬時間tdを経て時刻ts,Rにスレーブ装置1bで受信する。Δts後に別の情報を、スレーブ装置1bから時刻ts,Tに送信し、同じく伝搬時間tdを経てマスター装置で時刻tm,Rに受信する動作タイミングを示している。
ここで、マスター装置1aにおける送信から受信までの間隔をΔt
mとし、スレーブ装置1bにおける受信から送信までの間隔をΔt
sとし、マスター装置1aの送信タイミングt
m,Tと同一のタイミングが、スレーブ装置1bではt´
m,Tとして観測されるものとする。このため、マスター装置1aを基準としたスレーブ装置1bとの、クロック20間の時差t
0は式(1)のとおり求めることができる。
なお、伝搬時間t
dは、情報通信の方向において、対照的であることを前提としている。
これらの条件から、伝搬時間t
dは、式(2)の通り、求めることができる。
よって、クロック20間の時差t
0は、式(2)を用いて、式(3)の通り求めることができる。
スレーブ装置1bの同期制御部79は、t0が0となるようにクロック周波数や時刻を繰り返し調整することにより、マスター装置1aに対して時刻同期することができる。
マスター装置1aとスレーブ装置1bのクロック周波数が同一であれば、すなわち、クロックドメインが単一であれば、時刻を一旦調整するのみで時刻同期可能であるが、一般的に2クロック間には周波数偏差が存在するため、時刻同期にはクロック周波数の調整が必須となる。クロック周波数を直接的に調整できないシステムであっても、1クロックあたりの刻時の進み幅を繰り返し調整することにより、時計の駆動周波数を制御し、時刻同期できる。
これらの周波数調整には、同期位相を入力とし、周波数調整値を出力とする、閉ループ制御を定期的に行い、入力される同期位相が0となるように出力値を制御する。
なお、送受信タイミング間にある、伝搬時間や内部遅延は、システムの要求条件などにより無視または補正可能である。また、マスター装置1aから同期情報の送信を開始するのではなく、スレーブ装置1bから同期情報を送信するようにしてもよい。さらに、情報通信に必要なインターフェイス数は1で必要十分であるが、例えば、送信と受信のインターフェイスを独立して実装するなど、複数インターフェイスを同時に使用する構成としてもよい。
[サブシステムが連携した同期]
(慣性同期)
サブシステムが連携して行う同期について、図5の状態遷移図を参照して説明する。この同期には、慣性同期状態を含む。なお、準同期状態については後述する。サブシステムは、情報通信システム100の一部であって、時刻同期と情報出力を行うハードウェアとアプリケーションプログラムにより構成されるシステムである。本実施形態では、情報通信装置1において、時刻同期を行って音声を伝送するシステムが、サブシステムに相当する。
また、以下の説明でステートマシンとは、入力条件と現在の状態によって次の状態を決定し、入力条件に応じて状態が遷移する論理回路であって、所定のプログラムによって、情報通信装置1が機能することによって実行される。本実施形態では、スレーブ装置1bにおける同期制御部79等が、発生した要因に応じて各種の状態が切り替わるステートマシンとして機能する。
図5は、サブシステムが連携することにより実行される時刻同期制御のステートマシンを、状態遷移図でモデル化したものである。この連携は、上位階層の2状態、タイミング情報非参照状態とタイミング情報参照状態との間の状態遷移で行う。サブシステムのタイミング情報の参照開始/終了イベントを契機にいずれかの状態へ遷移する。
図5の上枠に示すタイミング情報非参照の状態は、単にPTPが動作している通常の稼働状態に相当する。図5の下枠に示すタイミング情報参照の状態は、慣性同期処理部81よる慣性同期状態が含まれる点が、タイミング情報非参照の状態と相違する。慣性同期処理部81が慣性同期状態に遷移させる場合としては、同期位相が不安定であったり、計算できない場合であっても、短時間に回復し、即座に非同期状態にして同期連続性を失わせる必要性がない要因が発生した場合である。このような場合としては、同期情報の通信にノイズが乗る、ケーブルの接続不良等が考えられる。この場合にも、タイミング情報の送信は継続している。
慣性同期処理部81は、慣性同期状態において、これらの要因が解消して、同期位相が安定した場合には、非同期状態を経由しないで同期に遷移する。これにより、安易に非同期状態に遷移して音声が途切れるといったことがなく、同期連続性を維持したまま通信を継続することができる。慣性同期状態において、サブシステムの許容条件を逸脱してしまった場合には、時刻同期制御情報をリセットして、非同期状態に遷移する。
より具体的には、例えば、PTPでは非同期状態となるしきい値を超える同期位相(時刻のズレ)であっても、慣性同期処理部81は、非同期状態とせずに、慣性同期状態とする。但し、しきい値を超える同期位相が、所定の時間継続した場合には、非同期状態とする。所定の時間は、しきい値を超えた同期位相がゼロになるまでに要する時間とする。
上位階層の各状態には、時刻同期制御を主とする下位階層のステートマシンが包括されており、同一名称の状態は透過である。すなわち、タイミング情報非参照状態の下位階層が同期状態であった場合、タイミング情報参照状態へ遷移しても、下位階層の状態は同期状態となる。ただし、下位階層が慣性同期状態であるときに、上位がタイミング情報非参照状態へ遷移する場合は、時刻同期制御情報をリセットして非同期状態へ遷移する。装置起動時には、下位階層のステートマシンは他装置から送信される情報を待ち受けるなどの初期化を行い、非同期状態へ遷移する。
同期状態では、同期連続性の観点から、上位階層の状態により、状態遷移動作が異なる。同期状態において、同期精度要求を満足できないほど同期位相が不安定となるか、同期情報を受信できないなど何らかの要因により同期位相を求められない場合、サブシステムがタイミング情報を参照しているならば、慣性同期状態へ遷移する。この際、同期連続性を維持するために、タイミング情報の送信は継続する。
一方、サブシステムがタイミング情報を参照していない場合、例えば、音声を出力していない場合には、同期連続性を維持する必要がないため、通常のPTPと同様に、時刻同期制御情報をリセットして非同期状態へ遷移する。
慣性同期状態では、再び同期位相が同期精度要求を満足できるほどに同期位相が安定したら、同期状態へ遷移する。
このように、図5のステートマシンに従って時刻同期制御を行うことで、同期連続性を確保でき、サブシステムを安定して運用できる。
サブシステムがタイミング情報を参照していたとしても、同期連続性の許容条件を外れることにより、非同期状態へ遷移する。この許容条件は、同期連続性を確保してもサブシステムが安定動作を維持できない異常状態を定義して設定する。例えば、規定期間を超えて不安定な同期状態が持続した、同期位相が規定値以上ずれた等の異常状態を定義して設置する。
(準同期)
本実施形態では、準同期処理部82が、非同期状態から同期状態に遷移する前に、準同期状態へ遷移させて、タイミング情報を参照するサブシステムの同期精度要求を満足する程度に同期位相が安定した場合に、同期状態へ遷移させる。例えば、誤った伝搬時間が求まって、これに同期位相をゼロとするように同期制御を行った場合、誤った伝搬時間や同期位相によって同期しても、同期連続性が維持できなくなる。
準同期状態に遷移直後は、同期情報の通信にバーストノイズが乗る等により、誤った伝搬時間が求まり、これに基づいて誤った同期位相が算出される可能性がある。このまま同期状態へ遷移してしまうと、誤った同期位相で同期状態となる。このような場合、バーストノイズが解消すると、本来の同期位相へ非連続に変化するため、同期連続性を確保できない。一旦同期状態となると、正しい同期位相での同期が回復するまでには、長い時間がかかってしまう。
このような誤った同期状態への遷移を回避するために、準同期処理部82は、同期制御部79により制御される同期位相に応じて、重み付けの値を付与し、重み付けの値の累積値が所定の値となった場合に、準同期状態から同期状態へ遷移させる。
より具体的には、準同期処理部82は、準同期状態において、伝搬時間に基づいて同期位相が求まるたびに呼び出される関数として、図6に示す処理フローを動作させる。すなわち、累積同期位相という変数を設定し、4つの伝搬時間に基づいて同期位相を求める毎に処理が開始され、累積同期位相が規定値を超えるか否かを判定する(ステップS101)。
累積同期位相が規定値以下の場合(ステップS101のNO)、同期位相の値に応じてランク分けして、そのランクに応じて設定された重みの値を、累積同期位相という変数に加算して(ステップS102~S104、S107~S109)、処理を終了する。つまり、例えば、ゼロを正しい同期位相の値として、これよりも大きな値を所定の値の幅で区切ったランクで区別して、それぞれのランクに、正しい同期位相に近い順に重み1からNにそれぞれ値を設定する。
累積同期位相が規定値を超えたら(ステップS101のYES)、誤った伝搬時間に基づいて同期位相を求めたと判断して、累積同期位相をクリアして(ステップS110)、非同期状態へ遷移する(ステップS111)。つまり、同期位相を破棄して、非同期状態へ遷移する。正しい伝搬時間に基づく同期位相ゼロが求まった場合(ステップS104のNO)、累積同期位相をクリアして(ステップS105)、同期状態に遷移する(ステップS106)。
[同期位相変動制御]
同期の状態遷移に関する原理を導入して同期連続性を確保したとしても、同期位相の大きさによっては、タイミング情報を参照するサブシステムから、非連続に同期位相が変化したと見えてしまうケースもある。これは、同期位相の変動速度、変動加速度が、急激に変化してしまうことによる。
同期位相の変動速度、変動加速度の急激な変化は、例えば、タイミング情報をサブシステム内のPLLに入力した場合、PLLの入力周波数変動速度の許容範囲を超えると、PLLのアンロックを招いてしまい、サブシステムの異常発生につながる。
これに対処するため、同期位相変動速度に上限を設定し、サブシステムの許容範囲に収まるように制御することが考えられる。しかし、同期位相変動加速度の連続性は考慮されないため、サブシステムの異常発生につながる可能性が残ってしまう。
本実施形態では、同期位相の変動速度の範囲制限に加えて、同期位相の変動加速度が連続関数となるように構成している。すなわち、現在の同期位相φ
Sから目的の同期位相φ
Dへ同期制御する場合、例えば、二次微分まで連続させるシグモイド関数である式(4)のように、同期位相変動関数f
φ(t)用いて、連続的に同期位相を制御する。
ここで、式(4)のVは、サブシステムが規定する同期位相変動速度の絶対値の最大値以下の正数となるように設定する。つまり、速度制限をしつつ、加速度の連続性を維持することにより、非連続な切換を回避している。
なお、同期位相変動関数は式(4)には限定されず、時間tの二次微分が連続であり、一次微分の値域の範囲を制御するパラメーターを設定可能な関数であればよい。さらに、サブシステムが許容するならば、同期位相変動関数を折れ線近似することにより、同期位相の計算量を低減させてもよい。
[役割を切り替える際の同期連続性]
例えば、当初マスター装置1aであった装置が失われて、スレーブ装置1bであった他の装置がマスター装置1aとなる場合に、マスター装置1aとスレーブ装置1bとの切り替えが行われる。いずれかのスレーブ装置1bのうちの条件の良いものがマスター装置1aとなり、その他は再びスレーブ装置1bとなって、マスター装置1aと同期する。つまり、全体の同期がリセットされてから、新たなマスター装置1a及びスレーブ装置1bが決まる。
このようにマスター装置1aとスレーブ装置1bの役割が切り替わるシステムにおいては、役割が切り替わる時に、特有の同期連続性を確保することが望ましい。しかし、PTPにおいては、マスター装置1aとスレーブ装置1bの役割が切り替わる際に、非同期状態への遷移を経由することにより、非連続に同期位相が変化してしまうため、同期連続性を確保できない。本実施形態における同期連続性は、スレーブ装置1bからマスター装置1aに役割を切り替える際に、タイミング情報を参照するサブシステムが定常的で安定動作する性質を含む。
同一もしくは同種の複数装置が、同期ネットワークを組み、時刻同期を行うシステムにおいて、任意期間中に動的に、いずれかの装置がマスター装置1aとして動作し、他装置はすべてスレーブ装置1bとして動作する運用ケースを考える。
このとき、各装置のクロック性能は同質であるとしても、一般性を欠かない。すなわちクロック性能の側面からは、いかなる装置がマスター装置1aとして動作しても、同期品質は同等になるものと考えてよい。ここで、同期品質とは、一定期間の同期位相の平均値および分散を組み合わせて表すものとする。さらに、クロック品質情報などの受信品質(誤り率や情報欠落数など)を組み合わせても良い。装置の役割を切り替える際の同期連続性の確保が主題であるならば、多種多様な複数の装置が同期ネットワークを組むケースであっても差し支えない。
(同時起動)
役割を切り替え可能な各装置において同期連続性を確保するための、時刻同期制御のステートマシンを、図7に示す。図7は、上位階層であるスレーブ装置1bがタイミング情報参照状態であって、その下位階層であるマスター装置1aのステートマシンを示しているが、タイミング情報非参照状態の場合も、同様であるため省略する。また、図7において、非同期状態、準同期状態、同期状態、慣性同期状態については、上記と同様である。
起動時に自装置の役割が未定の場合、自装置は非同期状態において、他装置のクロック品質情報出力部84から出力されたクロック品質情報を待ち受けるが、自装置は抑制部86によりクロック品質情報の配信が抑制される。規定期間内にクロック品質情報を受信した場合は、スレーブ装置1bとして動作を開始して、準同期状態へ遷移することにより、既存のマスター装置1aを維持する。つまり、自装置が、マスター装置1aが切り替わる契機となるクロック品質情報の配信をしないため、マスター装置1aとしての動作を継続できる。
ANNOUNCEパケットは、その値の大小によって、その装置が最良のマスターとなるかの指標となる。その優劣によって、現在、マスター装置1aとして作動していても、スレーブ装置1bに切り替わって、サブシステムの状態にかかわらず、静的な情報に基づいて、より良い装置がマスター装置1aに切り替わる。このため、起動時に自装置からクロック品質情報の配信を行って、受信したクロック品質情報との比較により、マスター装置1aを選出すると、既存のマスター装置1aがスレーブ装置1bに切り替わって、同期連続性が失われる場合がある。
そこで、本実施形態においては、起動時に、他装置からのクロック品質情報を待ち受けつつ、自装置からクロック品質情報を配信しないことにより、自装置のクロック品質情報に基づいて、既存のマスター装置1aが自装置に切り替わってしまうことを防止する。
そして、規定期間を経過しても、クロック品質情報を受信しない場合は、クロック品質情報の待ち受けを継続するとともに、各装置は定期的なクロック品質情報の送信を開始し、準時刻配信状態へ遷移する。
準時刻配信状態において、規定期間を経過してもクロック品質情報を受信しない場合は、自装置がマスター装置1aとしての動作を開始し、サブシステムへのタイミング情報の送信を開始し、時刻配信状態へ遷移する。
規定期間内にクロック品質情報を受信した場合は、選出部85が、受信したすべてのクロック品質情報と自装置のクロック品質情報とを比較し、最良のマスター装置1aを選出しておく。規定期間経過後に、選出した最良のマスター装置1aが自装置であれば、マスター装置1aとしての動作を開始し、サブシステムへのタイミング情報の送信を開始し、時刻配信状態へ遷移する。他装置が最良のマスター装置1aである場合は、自装置はスレーブ装置1bとしての動作を開始し、非同期状態へ遷移する。
この状態遷移により、自装置のみが単独で起動し、他装置が同期ネットワークに接続されていない場合は、マスター装置1aとして動作する。既に動作しているマスター装置1aが存在する同期ネットワークに、自装置が接続してから起動した場合には、自装置はスレーブ装置1bとして動作する。このため、動作中のマスター装置1aが不用意に切り替わることなく、同期連続性を維持できる。
また、同期ネットワークAのマスター装置1aを、同期ネットワークBのマスター装置1aに接続した場合、すなわち、同期ネットワークAと同期ネットワークBを結合した場合は、時刻配信状態もしくは同期状態においては状態遷移せず、再選出部87が、最良のマスター装置1aを再選出する。他装置がマスター装置1aとして選出された場合は、スレーブ装置1bとして役割を切り替え、準同期状態へ遷移する。最良のマスター装置1aの選出手段は任意であるが、たとえばPTPのBMCA(Best Master Clock Algorithm)が挙げられる。
再選出の結果、マスター装置1aが切り替わる場合は、新たなマスター装置1aに対して同期を取り直すが、この際も同期連続性を確保する。すなわち、上記のように、同期位相を連続的に変動させる。しかし、サブシステムの許容条件を満足できないほどにマスター装置1a間の時刻差があった場合には、同期連続性を放棄して再同期するか、異常イベントと解釈し、異常状態へ遷移してもよい。
なお、動作中のマスター装置1a同士の同期ネットワーク接続は活線挿入であるため、時刻同期システムによっては、異常イベントと解釈し、異常状態へ遷移してもよい。また、自装置がマスター装置1aとなり、時刻配信状態となった後においても、特定の指令によりマスター装置1aからスレーブ装置1bへ役割が切り替わる場合がある。例えば、同期ネットワークにおいて、定期的にマスター装置1aを切り替えることにより、公称周波数からの周波数偏差を平均化させる場合が考えられる。
(マスター装置の交代)
単一の同期ネットワークにおいて、マスター装置1aが同期ネットワークから離脱した場合、またはマスター装置1aがスレーブ装置1bへ役割を転じる場合、再選出部87が、マスター装置1aを選出し直し、いずれかのスレーブ装置1bがマスター装置1aへ役割を切り替え、他のスレーブ装置1bは新たなマスター装置1aに対して同期を取り直す必要がある。この場合の状態遷移についても、図7のステートマシンに従って説明する。
正常に動作して同期状態にある場合、サブシステムが要求する同期位相を維持するように制御している。例えば、装置間の平均周波数偏差がゼロ又はゼロ近傍となっている。そこでマスター装置1aが一定期間いなくなったとして、スレーブ装置1bが自走となったとしても、同期位相がほぼゼロに維持された状態となっている。再選出までに時間がかかっても、同期が維持される可能性は高い。つまり、新たなマスター装置1aの選出がなされても、同期位相が大きくずれる可能性は低い。しかし、PTPにおいてでは、UNCALIBRATEDの状態になり、一旦リセットされて非同期状態に遷移して、再度同期を行っていた。
ここで、自装置は、離脱した旧マスター装置1aに対して同期が取れているため、サブシステムが許容する同期位相範囲内であれば、一時的に同期制御を停止しても、同期位相は連続的に変動する。このため、自装置が異なるマスター装置1aと同期を取り直したとしても、非同期状態を経由する状態遷移を行わなければ、同期連続性を確保することができる。
そこで、マスター装置1aの離脱等により、クロック品質情報の受信がなくなった場合、同期状態もしくは慣性同期状態から再選出状態へ遷移する。この際、同期連続性を維持するために、タイミング情報の送信は継続し、非同期状態には遷移しない。
再選出状態では、他装置のクロック品質情報を受信し、PTPのBMCA等の手段により再選出部87がマスター装置1aを選出する。自装置がマスター装置1aに選出された場合は、時刻配信状態へ遷移する。他装置がマスター装置1aに選出された場合は、当該装置をマスター装置1aとして同期を取り直し、再選出状態へ遷移する前の状態、つまり同期状態もしくは慣性同期状態へ遷移する。この際も、同期連続性を維持するために、タイミング情報の送信は継続し、非同期状態には遷移しない。
マスター装置1aの選出に時間を要し、サブシステムの許容条件を満足できない場合は、同期連続性を放棄して、再同期するか、異常イベントと解釈し、異常状態へ遷移してもよい。
同期位相が安定した同期ネットワークにおいて、マスター装置1aがスレーブ装置1bへ役割を切り替える場合においても、同期連続性を確保したい場合は、時刻同期制御情報をリセットせずにタイミング情報の送信を継続したまま、非同期状態へ遷移しても良い。
[同期系統間の同期連続性]
PTPのシステムにおけるバウンダリークロックのように、一つの装置でマスター装置1aとスレーブ装置1bの二つの役割を同時に機能させる同期中継装置においては、同期系統間において、特有の同期連続性を確保するのが望ましい。
従来の同期中継装置においては、上位同期ネットワークと下位同期ネットワークが独立して同期状態を管理している。例えば、同期中継装置の起動時には、マスター装置1aとスレーブ装置1bが同時に起動して、それぞれが独立に同期制御を行う。このため、スレーブ装置1bとしては、マスター装置1aに対して同期しなければならないので、時間がかかる。
つまり、バウンダリークロックは、下位同期系統に対してはマスター装置1aとして機能する。マスター装置1aは、既にマスター装置1aとしての地位を確立しているので、ANNOUNCEパケット等を流して下位同期ネットワークの同期を図ればよい。このようにバウンダリークロックを起動した際には、マスター装置1aとしての機能によって、下位同期ネットワーク系統の同期位相は確定する。一方、スレーブ装置1bとしては、グランドマスタークロックに近い側の上位同期ネットワークのマスターに対して同期位相を確定する必要があるため、確定までに時間がかかる。
しかし、下位同期ネットワークに伝送される同期情報は、上位同期ネットワークのタイミング情報に基づいて生成される。このため、下位同期ネットワークが先行して同期状態を確定してしまうと、上位同期ネットワークの同期状態が確定する過程で、下位同期ネットワークの同期位相が非連続となり、下位同期ネットワークでは、同期連続性を維持できなくなる可能性がある。
そこで、同期中継装置となる情報通信装置1においては、同期ネットワーク間で連携して同期状態を管理し、上位同期ネットワークの同期状態が確定するまで、下位同期ネットワークへのタイミング情報の伝送を保留し、かつ下位同期ネットワークでのクロック品質情報や同期情報の配信を保留する。つまり、同期中継装置のスレーブ装置1bによって上位同期ネットワークにおける同期が確立した後、同期したタイミング情報を下位同期ネットワークへ伝送することにより、同期中継装置のマスター装置1aが下位同期ネットワークにおける同期を制御する。これにより下位同期ネットワークに接続するマスター装置1aにおいて、f位相変動は解消し、同期連続性が確保される。
[先取式マスター装置選出]
上記のように、スレーブ装置1bとマスター装置1aとが役割を切り替える際に、同期連続性を維持することにより、複数の情報通信装置1が、単一の同期ネットワークにおいて、動的にマスター装置1aを繰り返し選出する場合であっても、各スレーブ装置1bが同期連続性を維持することができる。
しかし、マスター装置1aが交代する手法は任意であるため、この交代に要する時間が制御できず安定しない。よって、サブシステムの許容条件を満足できず、再同期または異常状態へ遷移する可能性もある。さらに、スレーブ装置1bの起動直後や非同期状態へ遷移直後の規定期間は、クロック品質情報を配信しないため、マスター装置1aの選出に時間を要してしまう。
これに対処するため、本実施形態は、上記のクロック品質情報によるマスター装置1aの選出に代えて、いくつかのマスター装置選出原理に基づく選出機能を備える。ここでは、これらの原理を統合して、PMCA(Preemptive Master Clock Algorithm)と称することとする。
(優先順位情報)
PTPのBMCAによるマスター装置1aの選出では、静的な情報であるクロック品質情報(ANNOUNCEパケットの各要素)を、情報通信装置1の起動直後から配信する。このため、MACアドレスなどの静的な情報の序列に応じて、後から同期ネットワークに接続した装置がマスター装置1aとなり、既存のマスター装置1aがスレーブ装置1bへと役割が切り替わる可能性があり、同期連続性を維持できない場合がある。
役割が未定の自装置は、上記のように、起動直後にクロック品質情報の配信を行わなければ、BMCAによって自装置が既存のマスター装置1aに代わってマスター装置1aになることはない。しかし、この場合にも、他装置からのクロック品質情報の受信を待って、受信したクロック品質情報に基づいてスレーブ装置1bとしての動作を開始する。また、自装置の起動時には、マスター装置1aが失われていて、先に接続された装置同士においてマスター装置1aが決定されていない場合等にも、他装置からのクロック品質情報を待って、役割の決定を行う必要がある。その場合、クロック品質情報の静的な序列に応じて役割を決定するので、役割の決定に要する時間が長くなる。
本実施形態は、これに対処するため、情報通信装置1の起動直後から、動的に更新可能な要素を含む優先順位情報を定期的に配信する。この情報はクロック品質情報に新たな要素として追加しても良いし、既存の要素を動的に更新しても良い。そして、優先順位情報の配信と同時に、他の情報通信装置1が配信する優先順位情報を待ち受ける。優先順位情報には配信装置を識別可能な要素が含まれる。
(マスター装置の先取)
役割決定部88は、この優先順位情報に基づいて、マスター装置1aを決定する。これは、後から接続する情報通信装置1が、マスター装置1aに交代しない、すなわち最初に起動した装置がマスター装置1aとしての役割を先取りする処理である。この処理フローを、図8に示す。
図8の処理フローにおいて、情報通信装置1は、起動直後、つまり非同期状態において、優先順位情報における自装置の優先順位を低位とする(ステップS201)。自装置の役割が未定である場合には(ステップS202)、優先順位情報を配信する(ステップS203)。
他装置から優先順位情報を受信せずに(ステップS204のNO)、規定期間が経過した場合には(ステップS205のYES)、自装置はマスター装置1aとして役割を確定し、自装置の優先順位を高位に更新して、優先順位情報を配信する(ステップS206)。そして、他装置の優先順位情報を受信しない場合には(ステップS207のNO)、マスター装置1aとして動作する。他装置の優先順位情報を受信し(ステップS207のYES)、他装置の優先順位が自装置よりも低い場合にも(ステップS208のNO)、マスター装置1aとして動作する。他装置の優先順位が自装置以上の場合には(ステップS208のYES)、マスター装置1aを再選出するか、異常イベントとして処理する(ステップS209)。
ステップS202において、既にマスター装置1aとして動作している情報通信装置1の場合にも、優先順位情報を配信せずにマスター装置1aとして動作し(ステップS206)、ステップS207以降の処理に移行する。つまり、自装置がマスター装置1aとして役割が確定している場合は、それぞれがマスター装置1aを有する同期ネットワーク同士が活線挿入されたものと解釈できるため、マスター装置1aを再選出するか、異常イベントとして取り扱っても良い。
マスター装置1aを再選出する場合は、同期連続性の維持を試みる。異常イベントとして取り扱う場合は、異常状態へ遷移する。これは、役割を切り替える際の同期連続性の同時起動のケースと同様である。
他装置から優先順位情報を受信し(ステップS204のYES)、他装置の優先順位が自装置よりも高い場合は(ステップS210のNO)、スレーブ装置1bとして役割を確定し、優先順位情報の配信を停止する(ステップS211)。他装置の優先順位が自装置以下の場合には(ステップS210のYES)、所定期間が経過したら(ステップS205のYES)、マスター装置1aとして動作し(ステップS206)、ステップS207以降の処理に移行する。
また、既にスレーブ装置1bとして動作している情報通信装置1の場合には(ステップS202)、優先順位情報を配信せずにスレーブ装置1bとして動作する(ステップS211)。
以上のように、動的な優先順位情報を用いることにより、先に起動した装置がマスター装置1aとしての役割を先取りし、既にマスター装置1aとして動作している情報通信装置1が存在している場合に、後から接続する情報通信装置1がマスター装置1aに交代することを防ぐことができる。
(マスター順位リストの生成)
上記のように、優先順位情報により、迅速にマスター装置1aを確定でき、同期ネットワークへの装置接続に対して、マスター装置1aを安定化できた。しかし、マスター装置1aが同期ネットワークから離脱する場合、もしくはスレーブ装置1bへ役割を転じる場合、残されたスレーブ装置1bの中から新たなマスター装置1aを選出する必要がある。
たとえば、PTPのBMCAによるマスター装置1aの選出では、すべてのスレーブ装置1bがマスター装置1aの候補となる。このため、複数の情報伝送シーケンスが発生し、一度のクロック品質情報の配信ではマスター装置1aを選出できない可能性もあり、選出完了までに相当の時間を要する。
また、装置間(クロック間)の周波数偏差は時系列に非線形に変動するため、その予測は困難である。さらに時刻同期システムでは、各装置がおかれる環境(周囲温度・加速度・電磁界)は独立し同一ではないことが一般的であるため、クロックの公称精度など静特性を比較する最良のマスター装置選出手段では、動的に最良なマスター装置1aが選出されない可能性がある。
これに対処するため、本実施形態では、図9のシーケンス図に示すように、順位リスト生成部89が、スレーブ装置1bの同期品質情報を受信することにより、マスター順位リストを生成する。図9では、複数のスレーブ装置1bを(1、2、3、…、N)で示す。各スレーブ装置1bは、マスター装置1aから送信されるクロック品質情報、同期情報を受信することにより同期制御を行い、同期品質を算出している。
各スレーブ装置1bは定期的に現在の同期品質情報をマスター装置1aへ送信する。この際、新たな電文を定義して送信してもよいし、時刻同期制御で使用している電文に同期品質を追加してもよい。
各スレーブ装置1bから同期品質情報を受信したマスター装置1aは、同期品質の順位付けを行い、マスター装置1aに役割を切り替えるべきスレーブ装置1bの順位を定期的に求める。つまり、各スレーブ装置1bがマスター装置1aとして選択される順位を決定する。
スレーブ装置1bの順位付けを行うにあたり、短期安定度の視点からは、同期品質の同期位相の分散を昇順に整列しても良いし、通信された情報の誤り率や欠落数を昇順に整列しても良い。また、同期品質の同期位相の平均について、全スレーブ装置1bを統計し、外れ値を有するスレーブ装置1bを順位付けから除外してもよい。長期安定度の視点からは、同期品質の同期位相の平均をスレーブ装置1bごとに順次統計し、その分散を昇順に整列しても良い。この順位付けは、時間の経過により変化する動的な情報と言える。
順位リスト生成部89は、スレーブ装置1bの順位とスレーブ装置1bの識別情報からマスター順位リストを作成する。マスター順位リストは、全スレーブ装置1bが順位付けられた完全な形式であっても良いし、最上位もしくは上位数件のみの部分的な形式であってもよい。
(マスター順位リストの配信)
マスター装置1aは、マスター順位リストを、定期的に各スレーブ装置1bへ配信する。
スレーブ装置1bはマスター順位リストを受信し、記憶しておく。また、マスター順位リスト受信の都度、その受信からの経過時間を計測する。また、マスター順位リストを受信した時点で、最上位もしくは上位数件のスレーブ装置1bのプレゼンス情報配信部90は、同期ネットワークに接続していることを明示するプレゼンス情報を配信する。このプレゼンス情報は時刻同期制御に必要な情報によって代用しても良い。
マスター装置1aは、同期ネットワークを離脱する、もしくはスレーブ装置1bへ役割を転じる際に、離脱宣言をスレーブ装置1bへ配信する。離脱宣言にはマスター順位リストが含まれていても良い。
離脱宣言を受信したスレーブ装置1bのマスター決定部91は、最新のマスター順位リストとプレゼンス情報から、同期ネットワークに接続しているリスト最上位のスレーブ装置1bを新たなマスター装置1aとして決定する。決定されたスレーブ装置1bは、マスター装置1aへ役割を切り替え、他のスレーブ装置1bは新たなマスター装置1aに対して時刻同期制御を切り替える。この際も、同期連続性の維持を試みる。その後は、新たなマスター装置1a、スレーブ装置1bにおいて、上記と同様に同期品質の算出、マスター順位リストの生成、プレゼンス情報の配信が行われる。
マスター装置1aから離脱宣言を受信せず、マスター順位リスト等の情報を規定期間受信できなかった場合、マスター装置1aが、同期ネットワークから離脱したものと解釈し、各スレーブ装置1bは離脱宣言を受信した際と同様に、マスター装置1aの交代を行う。この際も、同期連続性の維持を試みる。
マスター装置1aの交代を行う際、規定期間新たなマスター装置1aから配信されるべき情報を受信できなかった場合、同期ネットワークに接続しているマスター順位リスト第2位のスレーブ装置1bをマスター装置1aとして選出し直しても良い。マスター装置1aの交代が完了するまで、さらに下位順位のスレーブ装置1bをマスター装置1aとして選出し直す動作を繰り返してもよい。
マスター順位リストを用いたマスター装置1aの交代に失敗した場合、すべてのスレーブ装置1bは同期品質を配信し合い、同期品質が最上位のスレーブ装置1bをマスター装置1aとして選出しても良いし、PTPのBMCAなど従来のマスター装置選出手段を講じても良い。
[効果]
(1)本実施形態は、複数の情報通信装置1がマスター装置1a又はスレーブ装置1bとして情報の通信を行う情報通信システム100であって、情報は、マスター装置1aとスレーブ装置1bとの間で時刻を同期させるために通信する情報である同期情報と、マスター装置1aとして選出される可能性が高位か低位かの情報を含む優先順位情報と、を含む。
また、本実施形態は、同期情報に基づいて、マスター装置1aとスレーブ装置1bとの同期位相を制御することにより時刻が同期した同期状態とする同期制御部79と、同期制御部79から出力される同期したタイミングを示すタイミング情報を参照し、タイミング情報に同期した処理を行うタイミング情報参照部80と、同期を失わせる要因が発生した場合に、タイミング情報参照部80が同期した処理を行っている間、同期位相に基づいて、同期状態から同期を失う非同期状態への遷移を保留して、連続した同期を維持する慣性同期状態に遷移させる慣性同期処理部81と、を有する。
さらに、本実施形態は、マスター装置1a及びスレーブ装置1bとしての役割が未定の情報通信装置1が起動した場合に、役割が未定の情報通信装置1が自らを低位として他の情報通信装置1に送信する優先順位情報と、他の情報通信装置1から受信する優先順位情報とに基づいて、役割が未定の情報通信装置1の役割を決める役割決定部88を有する。
また、本実施形態は、マスター装置1a又はスレーブ装置1bの役割で他の情報通信装置1と情報の通信を行う情報通信装置1であって、同期情報に基づいて、他の情報通信装置1との同期位相を制御することにより時刻が同期した同期状態とする同期制御部79と、同期制御部79から出力される同期したタイミングを示すタイミング情報を参照し、タイミング情報に同期した処理を行うタイミング情報参照部80と、同期を失わせる要因が発生した場合に、タイミング情報参照部80が同期した処理を行っている間、同期位相に基づいて、同期状態から同期を失う非同期状態への遷移を保留して、連続した同期を維持する慣性同期状態に遷移させる慣性同期処理部81と、を有する。
さらに、本実施形態の情報通信装置1は、マスター装置1a及びスレーブ装置1bとしての役割が未定の情報通信装置1が起動した場合に、役割が未定の情報通信装置1が自らを低位として他の情報通信装置1に送信する優先順位情報と、他の情報通信装置1から受信する優先順位情報とに基づいて、役割が未定の情報通信装置1の役割を決める役割決定部88を有する。
このように、タイミング情報参照部80が同期した処理を行っている間、同期状態において同期を失わせる要因が発生しても、慣性同期処理部81が、同期位相に応じて慣性同期状態に遷移させることにより、非同期状態への遷移を保留して連続した同期を維持できる。このため、同期が非連続となることによって、音声に位相ノイズが発生する、音声が途切れる等、動作品質の低下を招く事態を低減できる。
また、 装置固有のクロック品質情報等の静特性の情報の参照によるのではなく、動的に生成される優先順位情報に基づいて、情報通信システム100に接続した順序により、マスター装置1aを決定することができる。このように先取式にマスター装置1aを迅速に決定できるため、非同期状態へ遷移する可能性を低減でき、BMCAによるマスター装置1aの切り換え時における非連続な同期位相の変化を抑制できる。
(2)複数のスレーブ装置1bからの同期品質情報に基づいて、スレーブ装置1bがマスター装置1aとして選択される順位を示すマスター順位リストを生成する順位リスト生成部89と、マスター順位リストを受信した各スレーブ装置1bが、情報通信システム100に接続されていることを明示するプレゼンス情報を配信するプレゼンス情報配信部90と、マスター装置1aの情報通信システム100からの離脱があった場合に、マスター順位リストとプレゼンス情報に基づいて、新たなマスター装置1aとすべきスレーブ装置1bを決定するマスター決定部91と、を有する。
このため、マスター装置1aが情報通信システム100から離脱する場合、もしくはスレーブ装置1bへ役割を転じる場合、残されたスレーブ装置1bの中から新たなマスター装置1aを選出する際に、静特性の情報の参照によるのではなく、動的に生成されるマスター順位リストに基づいて、迅速にマスター装置1aを決定できる。このため、非同期状態への遷移する可能性を低減でき、BMCAによるマスター装置1aの切り換え時における非連続な同期位相の変化を抑制できる。
(3)非同期状態において、同期制御部79による同期制御を開始してから、所定の同期位相となるまで、同期状態への遷移を保留する準同期状態とする準同期処理部82を有する。従って、同期位相が安定してから同期状態とすることができるため、誤った伝搬時間及びこれに基づく同期位相によって同期位相が非連続に切り替わる可能性を低減できる。
(4)同期のための同期位相変化の速度を所定の範囲内に制限するとともに、同期位相変化の加速度が連続関数に従って変動するように制御する変動制御部83を有する。このため、変動速度及び変動加速度が装置の許容範囲を超えて、異常発生となる事態を防止できる。
(5)クロック品質情報を出力するクロック品質情報出力部84と、クロック品質情報に基づいて、いずれかの情報通信装置1を、マスター装置1a及びスレーブ装置1bの少なくとも一方として選出する選出部85と、起動時の情報通信装置1のクロック品質情報出力部84に、クロック品質情報の出力を保留させることにより、選出部85の選出による既存のマスター装置1aのスレーブ装置1bへの切り替えを抑制する抑制部86と、を有する。このため、新たにシステムに接続された情報通信装置1があっても、既存のマスター装置1aがマスターとしての地位を維持できる可能性が高くなり、同期連続性が失われる可能性を低減できる。
(6)スレーブ装置1bが、マスター装置1aの情報通信システム100からの離脱を検出した場合に、同期状態又は慣性同期状態から、いずれかの情報通信装置1をマスター装置1aとして再選出する再選出状態へ遷移させる再選出部87を有する。このため、マスター装置1aを再選出する際に、同期状態又は慣性同期状態を維持するため、同期の連続性が維持される可能性を高めることができる。
(7)いずれかの情報通信装置1は、マスター装置1a及びスレーブ装置1bの双方の機能を有する同期中継装置となる情報通信装置1を含み、スレーブ装置1b側を上位同期ネットワーク、マスター装置1a側を下位同期ネットワークとした場合に、スレーブ装置1bによって上位同期ネットワークにおける同期が確立した後、同期したタイミング情報を下位同期ネットワークへ伝送することにより、マスター装置1aが下位同期ネットワークにおける同期を制御する。このため、下位同期ネットワークが先に同期を確立した後に、上位同期ネットワークが確立した同期に従って、下位同期ネットワークが再度同期を確立することによって、同期連続性が失われる可能性を低減できる。
[他の実施形態]
本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。