(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-11
(45)【発行日】2024-11-19
(54)【発明の名称】時刻同期装置及びネットワーク
(51)【国際特許分類】
H04L 7/00 20060101AFI20241112BHJP
G04G 7/00 20060101ALI20241112BHJP
H04L 7/033 20060101ALI20241112BHJP
【FI】
H04L7/00 990
G04G7/00
H04L7/033
(21)【出願番号】P 2021063282
(22)【出願日】2021-04-02
【審査請求日】2024-03-14
(73)【特許権者】
【識別番号】301022471
【氏名又は名称】国立研究開発法人情報通信研究機構
(74)【代理人】
【識別番号】110001807
【氏名又は名称】弁理士法人磯野国際特許商標事務所
(72)【発明者】
【氏名】矢野 雄一郎
(72)【発明者】
【氏名】井戸 哲也
(72)【発明者】
【氏名】原 基揚
【審査官】阿部 弘
(56)【参考文献】
【文献】特開2014-147105(JP,A)
【文献】国際公開第2015/049479(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 7/00
G04G 7/00
H04L 7/033
(57)【特許請求の範囲】
【請求項1】
自装置と他装置との周波数差情報を用いて、前記他装置と時刻同期する時刻同期装置であって、
前記他装置からデータを受信し、受信した前記データに含まれるクロック信号を再生する通信部と、
前記自装置のクロック信号を生成し、生成した前記クロック信号をカウントするクロック部と、
前記クロック部と前記通信部とのクロック信号の周波数を比較することで、前記自装置と前記他装置との周波数差情報を生成する第1周波数比較部と、
最尤推定処理により、前記周波数差情報から各時刻同期装置の時刻情報を推定する時刻推定部と、
前記時刻推定部が推定した自装置の時刻情報に基づいて、前記クロック部のカウンタ値を補正するカウンタ値補正部と、
前記クロック部が生成したクロック信号で位相同期する位相同期部と、
前記クロック部と前記位相同期部とのクロック信号の周波数を比較する第2周波数比較部と、
前記第2周波数比較部の比較結果に基づいて、前記位相同期部の分周比を補正する分周比補正部と、
を備えることを特徴とする時刻同期装置。
【請求項2】
前記通信部は、前記他装置から前記周波数差情報を受信し、
前記第1周波数比較部は、前記自装置に接続されている他装置と前記自装置との周波数差情報を生成し、
前記時刻推定部は、前記最尤推定処理により、前記通信部が受信した周波数差情報及び前記第1周波数比較部が生成した周波数差情報から各時刻同期装置の前記時刻情報を推定することを特徴とする請求項1に記載の時刻同期装置。
【請求項3】
前記通信部は、前記周波数差情報と共に前記クロック信号のカウンタ値を受信し、
前記時刻推定部は、前記カウンタ値を参照し、同一時刻の前記周波数差情報から各時刻同期装置の前記時刻情報をカルマンフィルタで推定することを特徴とする請求項2に記載の時刻同期装置。
【請求項4】
自装置と他装置との周波数差情報を用いて、前記他装置と時刻同期する時刻同期装置であって、
前記他装置からデータを受信し、受信した前記データに含まれるクロック信号を再生する通信部と、
前記自装置のクロック信号を生成し、生成した前記クロック信号をカウントするクロック部と、
前記クロック部と前記通信部とのクロック信号の周波数を比較することで、前記自装置と前記他装置との周波数差情報を生成する第1周波数比較部と、
時刻情報を推定する時刻同期装置に前記周波数差情報を送信する周波数差情報送信部と、
前記時刻情報を推定する時刻同期装置から受信した自装置の時刻情報に基づいて、前記クロック部のカウンタ値を補正するカウンタ値補正部と、
前記クロック部が生成したクロック信号で位相同期する位相同期部と、
前記クロック部と前記位相同期部とのクロック信号の周波数を比較する第2周波数比較部と、
前記第2周波数比較部の比較結果に基づいて、前記位相同期部の分周比を補正する分周比補正部と、
を備えることを特徴とする時刻同期装置。
【請求項5】
前記通信部は、前記時刻情報を推定する時刻同期装置に、前記周波数差情報と共に前記カウンタ値を送信することを特徴とする請求項4に記載の時刻同期装置。
【請求項6】
請求項1から請求項3の何れか一項に記載された時刻同期装置と、
請求項4又は請求項5に記載された時刻同期装置と、
を備えるネットワーク。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、時刻同期を行う時刻同期装置及びネットワークに関する。
【背景技術】
【0002】
現在、各ノードの時刻の同時性を確保するために、NTP(Network Time Protocol)、PTP(Precision Time Protocol)、WhiteRabbitなどの有線を利用する方式や、GNSS(Global Navigation Satellite System)などの無線を利用する方式が提案されている(非特許文献1及び2)。
【0003】
NTP及びPTPは、簡易な構成で、多数のノードに対して時刻情報を提供できる。WhiteRabbitは、ハードウェアに実装された専用ICにより、ノード間で数ナノ秒程度の高精度な時刻情報を提供できる。GSNNは、衛星からの電波を受信することで、数十マイクロ秒程度の高精度な時刻情報を提供できる。
【先行技術文献】
【非特許文献】
【0004】
【文献】「NTPとは」、一般社団法人日本ネットワークインフォメーションセンター、[online]、[令和3年3月15日検索]、インターネット<URL:https://www.nic.ad.jp/ja/basics/terms/ntp.html>
【文献】「GNSSとは」、国土地理院、[online]、[令和3年3月15日検索]、インターネット<URL:https://terras.gsi.go.jp/geo_info/GNSS.html>
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、NTP及びPTPは、アプリケーション層の通信プロトコル方式であり、高精度な時刻同期が困難である。WhiteRabbitは、各ノードに専用ICが必要であり、マスター・スレーブの関係により多数のノードに時刻を提供するには構成が複雑になる。GNSSでは、アンテナの不具合、太陽風などの電波環境の劣化、及び、妨害電波に対して脆弱であり、信頼性の担保が困難である。
【0006】
そこで、本発明は、簡易な構成で、時刻同期の精度及び信頼性が高い時刻同期装置及びネットワークを提供することを課題とする。
【課題を解決するための手段】
【0007】
前記課題を解決するため、本発明に係る時刻同期装置は、自装置と他装置との周波数差情報を用いて、前記他装置と時刻同期する時刻同期装置であって、前記他装置からデータを受信し、受信した前記データに含まれるクロック信号を再生する通信部と、前記自装置のクロック信号を生成し、生成した前記クロック信号をカウントするクロック部と、前記クロック部と前記通信部とのクロック信号の周波数を比較することで、前記自装置と前記他装置との周波数差情報を生成する第1周波数比較部と、最尤推定処理により、前記周波数差情報から各時刻同期装置の時刻情報を推定する時刻推定部と、前記時刻推定部が推定した自装置の時刻情報に基づいて、前記クロック部のカウンタ値を補正するカウンタ値補正部と、前記クロック部が生成したクロック信号で位相同期する位相同期部と、前記クロック部と前記位相同期部とのクロック信号の周波数を比較する第2周波数比較部と、前記第2周波数比較部の比較結果に基づいて、前記位相同期部の分周比を補正する分周比補正部と、を備える構成とした。
【0008】
また、前記課題を解決するため、本発明に係る時刻同期装置は、自装置と他装置との周波数差情報を用いて、前記他装置と時刻同期する時刻同期装置であって、前記他装置からデータを受信し、受信した前記データに含まれるクロック信号を再生する通信部と、前記自装置のクロック信号を生成し、生成した前記クロック信号をカウントするクロック部と、前記クロック部と前記通信部とのクロック信号の周波数を比較することで、前記自装置と前記他装置との周波数差情報を生成する第1周波数比較部と、時刻情報を推定する時刻同期装置に前記周波数差情報を送信する周波数差情報送信部と、前記時刻情報を推定する時刻同期装置から受信した自装置の時刻情報に基づいて、前記クロック部のカウンタ値を補正するカウンタ値補正部と、前記クロック部が生成したクロック信号で位相同期する位相同期部と、前記クロック部と前記位相同期部とのクロック信号の周波数を比較する第2周波数比較部と、前記第2周波数比較部の比較結果に基づいて、前記位相同期部の分周比を補正する分周比補正部と、を備える構成とした。
【0009】
かかる構成によれば、ノードは、時刻を単純に比較するのではなく、専用ICを用いずに、物理層ベースでクロック信号の周波数を比較する。また、ノードは、GNSSのように衛星からの電波を利用しないので、電波環境の劣化や妨害電波の影響を受けにくくなる。従って、ノードは、簡易な構成を実現し、時刻同期の精度及び信頼性を向上させることができる。
【0010】
なお、本発明は、前記した時刻同期装置で構成されたネットワークで実現することもできる。
【発明の効果】
【0011】
本発明によれば、簡易な構成で、時刻同期の精度及び信頼性が高い時刻同期装置及びネットワークを提供することができる。
【図面の簡単な説明】
【0012】
【
図1】実施形態に係るネットワークの概略構成図である。
【
図2】実施形態において、時刻情報を推定するノードの構成を示すブロック図である。
【
図3】実施形態において、時刻情報を推定しないノードの構成を示すブロック図である。
【
図4】
図2のノードの動作を示すフローチャートである。
【
図5】
図3のノードの動作を示すフローチャートである。
【
図6】比較例におけるシミュレーション結果を示すグラフである。
【
図7】実施例におけるシミュレーション結果を示すグラフである。
【発明を実施するための形態】
【0013】
以下、本発明の実施形態について図面を参照して説明する。但し、以下に説明する各実施形態は、本発明の技術思想を具体化するためのものであって、特定的な記載がない限り、本発明を以下のものに限定しない。また、同一の手段には同一の符号を付し、説明を省略する場合がある。
【0014】
[ネットワークの全体構成]
図1を参照し、実施形態に係るネットワーク1の全体構成について説明する。
ネットワーク1は、複数のノード(時刻同期装置)2で構成されており、各ノード2が時刻同期を行って通信するものである。ここで、ネットワーク1は、有線通信回線又は無線通信回線を介して、隣接するノード2が多対一で接続されており、片方向通信及び双方向通信の何れも可能である。また、ネットワーク1は、後記するように物理層ベースで各ノード2が時刻同期を行う。
【0015】
図1に示すように、ネットワーク1は、時刻情報を推定するノード2Aを少なくとも1台備えている。
図1の例では、ネットワーク1は、時刻情報を推定する1台のノード2A、時刻情報を推定しない4台のノード2B(2B
1~2B
4)、計5台のノード2で構成されている。ノード2Aは、ノード2B
1~2B
3に接続されているが、ノード2B
4には接続されていない。また、ノード2Aは、他のネットワークに属するノード9(例えば、絶対時刻源)にも接続されており、このノード9と片方向通信を行う。また、ノード2B
1~2B
4は、同一の構成である。
【0016】
ノード2は、自ノードと他ノードとの周波数差情報を用いて他ノードと時刻同期し、データを通信するものである。例えば、ノード2は、チップスケール原子時計、コンパクトな光時計などの原子時計や分子時計を搭載したコンピュータや携帯端末である。
【0017】
なお、「自ノード(自装置)」とはそのノード2自体を指し、「他ノード(他装置)と」はそのノード2以外のノード2を指すこととする。
また、ノード9は、ネットワーク1に属さない一般的なノードであるため、詳細な説明を省略する。
【0018】
[時刻情報を推定するノードの構成]
図2を参照し、時刻情報を推定するノード2Aの構成について説明する。
ノード2Aは、自ノードの時刻情報と、自ノードに接続されている他ノードの時刻情報と、自ノードに接続されていない他ノードの時刻情報とを推定するノードである。以後、自ノードに接続されている他ノードを「接続ノード」と略記し、自ノードに接続されていない他ノードを「非接続ノード」と略記する場合がある。
【0019】
図2に示すように、ノード2Aは、通信モジュール(通信部)10と、高精度クロックモジュール(クロック部)20と、第1位相・周波数比較モジュール(第1周波数比較部)30と、メモリ40と、CPU(Central Processing Unit)50と、フラクショナルPLL回路(位相同期部)60と、第2位相・周波数比較モジュール(第2周波数比較部)70とを備える。
【0020】
通信モジュール10は、接続ノード(例えば、ノード2B1~2B3)と通信を行うものである。ここで、通信モジュール10は、接続ノードからデータを受信し、受信したデータに含まれるクロック信号を再生する。
【0021】
また、通信モジュール10は、他ノードに周波数差情報を要求する。例えば、通信モジュール10は、後記するカウンタ210が予め設定された回数だけカウントされた場合、周波数差情報を要求する。ここで、ネットワーク1が初期状態の場合、通信モジュール10は、ネットワーク1の全ノード2に周波数差情報の要求をブロードキャストする。一方、ネットワーク1が構築されている場合、通信モジュール10は、接続ノードに周波数差情報を要求する。さらに、通信モジュール10は、非接続ノードの周波数差情報を、その非接続ノードに隣接する接続ノード(例えば、ノード2B3)に要求する。
【0022】
その後、通信モジュール10は、周波数差情報の要求に応じて他ノードから周波数差情報を受信し、CPU50を介して又はDMA(Direct Memory Access)によって、受信した周波数差情報をメモリ40に書き込む。
【0023】
図2に示すように、通信モジュール10は、PHY(Physical Layer)11と、MAC(Medium Access Controller)12とを備える。
PHY11は、物理層の機能を実装したものであり、有線通信回線又は無線通信回線にMAC12を接続する。また、PHY11は、クロックデータリカバリ(CDR:Clock and Data Recovery)110を備える。
【0024】
クロックデータリカバリ110は、接続ノード(例えば、ノード2B1~2B3)から受信したデータに含まれるクロック信号を再生(リカバリ)ものである。例えば、クロックデータリカバリ110は、PLL(Phase Locked Loop)回路やインターポレータを用いて、クロック信号を再生する。この再生したクロック信号は、接続ノードに位相同期している。そして、クロックデータリカバリ110は、再生した接続ノードのクロック信号を第1位相・周波数比較モジュール30に出力する。
【0025】
MAC12は、接続ノードとの通信制御を行うものであり、一般的なものである。例えば、MAC12は、通信モジュール10が受信したデータ(非接続ノードであるノード2B4についての周波数差情報を含む)をCPU50に出力する。
【0026】
高精度クロックモジュール20は、自ノードのクロック信号を生成し、生成したクロック信号をカウントするものである。
図2に示すように、高精度クロックモジュール20は、安定化クロック200と、カウンタ210とを備える。
【0027】
安定化クロック200は、例えば、自ノードのクロック信号を生成するチップスケール原子時計、コンパクトな光時計などの原子時計又は分子時計である。そして、安定化クロック200は、生成した自ノードのクロック信号を第1位相・周波数比較モジュール30及び第2位相・周波数比較モジュール70に出力する。
カウンタ210は、安定化クロック200が生成したクロック信号の個数をカウントする一般的なものである。また、カウンタ210は、後記するカウンタ値補正部510からの指示に基づいて、そのカウンタ値を変更する。
【0028】
第1位相・周波数比較モジュール30は、通信モジュール10と高精度クロックモジュール20とのクロック信号の周波数を比較することで、自ノードと接続ノードとの周波数差情報を生成するものである。つまり、第1位相・周波数比較モジュール30は、安定化クロック200から入力された自ノードのクロック信号と、クロックデータリカバリ110から入力された接続ノードのクロック信号との周波数の差分を求め、周波数差情報を生成する。例えば、第1位相・周波数比較モジュール30としては、DMTD(Dual Mixer Time Difference System)があげられる。そして、第1位相・周波数比較モジュール30は、CPU50を介して又はDMAによって、生成した周波数差情報をメモリ40に書き込む。
【0029】
メモリ40は、所定期間(例えば、0.1秒~1.0秒)の周波数差情報を蓄積するHDD(Hard Disk Drive)、SSD(Solid State Drive)などの記憶装置である。
【0030】
CPU50は、ノード2Aでの各種演算を行うものであり、時刻推定部500と、カウンタ値補正部510と、分周比補正部520とを備える。
【0031】
時刻推定部500は、最尤推定処理により、メモリ40に蓄積されている周波数差情報から各ノード2(ノード2A及びノード2B1~2B4)の時刻情報を推定するものである。本実施形態では、時刻推定部500は、最尤推定処理として、カルマンフィルタを用いることとする。
【0032】
<時刻情報の推定>
以下、時刻推定部500による時刻情報の推定について具体的に説明する。
ノード2Bからノード2Aに周波数差情報を送信するときに遅延が発生するので、その影響を抑制するように、同一時刻の周波数差情報を用いることが好ましい。この際、クロック信号のカウンタ値は、各ノード2の時刻を示す情報として利用できる。そこで、通信モジュール10は、ノード2Bについての周波数差情報と共にノード2Bのカウンタ値を受信し、受信した周波数差情報及びカウンタ値をメモリ40に書き込む。そして、時刻推定部500は、周波数差情報の受信時刻を表すカウンタ値を参照し、同一時刻の周波数差情報から各ノード2の時刻情報をカルマンフィルタで推定する。
【0033】
カルマンフィルタは、内部状態を記述する状態方程式(1)と、観測値を記述する観測方程式(2)とで構成されており、実際の観測値から最も確かな内部状態x(t)を推定する。本実施形態では、内部状態x(t)が各ノード2の時刻情報を表し、実際の観測値が周波数差情報を表す。従って、時刻推定部500は、式(1)及び式(2)を解くことで、各ノード2の時刻情報を推定できる。なお、v(t)がシステムノイズであり、w(t)が観測ノイズであり、fi(t)-fj(t)がノード2i,2j間のクロック信号の周波数差である(但し、i≠j≧1)。
【0034】
【0035】
図2に戻り、ノード2Aの構成について説明を続ける。
カウンタ値補正部510は、時刻推定部500が推定した自ノードの時刻情報に基づいて、高精度クロックモジュール20のカウンタ値を補正するものである。つまり、カウンタ値補正部510は、時刻推定部500で推定されたノード2Aの時刻に一致するように、カウンタ210のカウンタ値を補正する。
【0036】
分周比補正部520は、後記する第2位相・周波数比較モジュール70の比較結果に基づいて、フラクショナルPLL回路60の分周比を補正するものである。つまり、分周比補正部520は、第2位相・周波数比較モジュール70から入力された比較結果が、カウンタ値補正部510で補正されたカウンタ値に一致するように、フラクショナルPLL回路60の分周比を補正する。
【0037】
フラクショナルPLL回路60は、高精度クロックモジュール20が生成したクロック信号で位相同期するものである。また、フラクショナルPLL回路60は、分周比補正部520からの指示に基づいて、その分周比を変更する。
【0038】
なお、ノード2Aは、他ノードなどの外部から時刻の問い合わせがあった場合、フラクショナルPLL回路60が生成するクロック信号を、ノード2Aの時刻情報としてデジタル出力してもよい。一方、ノード2Aは、スペクトルアナライザやオッシロスコープなどの測定器に高い精度の時刻情報を提供する場合、カウンタ210のカウンタ値をノード2Aの時刻情報としてアナログ出力してもよい。
【0039】
第2位相・周波数比較モジュール70は、高精度クロックモジュール20とフラクショナルPLL回路60とのクロック信号の周波数を比較するものである。つまり、第2位相・周波数比較モジュール70は、安定化クロック200から入力されたクロック信号と、フラクショナルPLL回路60から入力されたクロック信号との周波数の差分を求める。例えば、第2位相・周波数比較モジュール70としては、DMTDがあげられる。そして、第2位相・周波数比較モジュール70は、求めた周波数の差分を比較結果として分周比補正部520に出力する。
【0040】
[時刻情報を推定しないノードの構成]
図3を参照し、時刻情報を推定しないノード2Bの構成について、ノード2Aと異なる点を説明する。
ノード2Bは、ノード2Aが推定した時刻情報を用いて、時刻同期を行うノードである。
図1の例では、ノード2Bは、ノード2Aからの周波数差情報の要求に応じて、自ノードと他ノードとの周波数差情報を生成し、生成した周波数差情報をノード2Aに送信する。そして、ノード2Bは、ノード2Aから受信したノード2Bの時刻情報を用いて、時刻同期を行う。
【0041】
図3に示すように、ノード2Bは、通信モジュール(通信部)10Bと、高精度クロックモジュール20と、第1位相・周波数比較モジュール30と、メモリ40と、CPU50Bと、フラクショナルPLL回路60と、第2位相・周波数比較モジュール70とを備える。なお、通信モジュール10B及びCPU50B以外は、
図2のノード2Aと同様のため、説明を省略する。
【0042】
通信モジュール10Bは、周波数差情報をノード2Aに送信すると共に、ノード2Aから時刻情報を受信する。このとき、通信モジュール10Bは、周波数差情報と共に、カウンタ210のカウンタ値を送信してもよい。
【0043】
また、通信モジュール10Bは、ノード2Aに対する周波数差情報の送信タイミングを制御する。具体的には、通信モジュール10Bは、周波数差情報を連続的又は断続的に送信する制御を行う。例えば、有線シリアル通信の通常モードの場合、通信モジュール10Bは、周波数差情報を連続的に送信する。その一方、通信モジュール10Bは、通信モジュール10Bのリンクが確立できた場合に周波数差情報を送信し、休止又は省電力モードの場合に周波数差情報の送信を中断する(断続的な送信)。
他の点、通信モジュール10Bは、
図2のノード2Aと同様のため、これ以上の説明を省略する。
【0044】
CPU50Bは、ノード2Bでの各種演算を行うものであり、周波数差情報送信部530と、カウンタ値補正部510Bと、分周比補正部520とを備える。なお、分周比補正部520は、ノード2Aと同様のため、説明を省略する。
【0045】
周波数差情報送信部530は、時刻情報を推定するノード2Aに周波数差情報を送信するものである。具体的には、周波数差情報送信部530は、ノード2Aから周波数差情報が要求された場合、通信モジュール10Bを介して、ノード2Aに周波数差情報を送信する。
【0046】
カウンタ値補正部510Bは、時刻情報を推定するノード2Aから受信した自ノードの時刻情報に基づいて、高精度クロックモジュール20のカウンタ値を補正するものである。つまり、カウンタ値補正部510Bは、ノード2Aが推定したノード2Bの時刻に一致するように、カウンタ210のカウンタ値を補正する。
【0047】
<周波数差情報及び時刻情報の送受信>
図1を参照し、時刻情報を推定するノード2Aと時刻情報を推定しないノード2Bとの間における周波数差情報及び時刻情報の送受信を説明する。
【0048】
図1の例では、ノード2Aは、第1位相・周波数比較モジュール30によって、ノード2Aとノード2B
1との周波数差情報、ノード2Aとノード2B
2との周波数差情報、及び、ノード2Aとノード2B
3との周波数差情報を生成する。また、ノード2B
1は、第1位相・周波数比較モジュール30によって、ノード2B
1とノード2Aとの周波数差情報、及び、ノード2B
1とノード2B
2との周波数差情報を生成する(ノード2B
2及びノード2B
3も同様)。また、ノード2B
4は、第1位相・周波数比較モジュール30によって、ノード2B
4とノード2B
2との周波数差情報、及び、ノード2B
4とノード2B
3との周波数差情報を生成する。
【0049】
ノード2Aは、通信モジュール10によって、ノード2B1に周波数差情報を要求する。この要求に応じて、ノード2B1は、周波数差情報送信部530によって、ノード2B1とノード2Aとの周波数差情報、及び、ノード2B1とノード2B2との周波数差情報をノード2Aに送信する(ノード2B2及びノード2B3も同様)。
【0050】
次に、ノード2Aは、通信モジュール10によって、ノード2B4に隣接するノード2B3を介して、ノード2B4の周波数差情報を要求する。この要求に応じて、ノード2B4は、周波数差情報送信部530によって、ノード2B4に隣接するノード2B3を介して、ノード2B4とノード2B2との周波数差情報、及び、ノード2B4とノード2B3との周波数差情報をノード2Aに送信する。
【0051】
次に、ノード2Aは、時刻推定部500によって、各周波数差情報を用いて、ノード2A及びノード2B1~2B4の時刻情報を推定する。そして、ノード2Aは、推定したノード2B1~2B4の時刻情報をノード2B1~2B4に送信する。
【0052】
ここで、ネットワーク1では、同一区間の周波数差情報を異なるノード2が生成している。
図1の例では、ノード2Aがノード2Aとノード2B
1との周波数差情報を生成し、ノード2B
1もノード2B
1とノード2Aとの周波数差情報を生成している。これら同一区間の周波数差情報は、同一の周波数差を表した情報ではなく、ある不確かさの範囲内で一致した異なる周波数差を表す情報である。従って、ノード2Aは、これら同一区間の周波数差情報を別々の周波数差情報として扱って、時刻情報を推定すればよい。
【0053】
[時刻情報を推定するノードの動作]
図4を参照し、時刻情報を推定するノード2Aの動作について説明する。
図4に示すように、ステップS1において、第1位相・周波数比較モジュール30は、安定化クロック200とクロックデータリカバリ110とのクロック信号の周波数を比較し、周波数差情報を生成する。また、通信モジュール10は、他ノードの周波数差情報を要求する。
【0054】
ステップS2において、第1位相・周波数比較モジュール30は、CPU50を介して又はDMAによって、周波数差情報をメモリ40に書き込む。そして、メモリ40は、所定期間の周波数差情報を蓄積する。
【0055】
ステップS3において、時刻推定部500は、最尤推定処理により、メモリ40に蓄積されている周波数差情報から各ノード2の時刻情報を推定する。例えば、時刻推定部500は、最尤推定処理として、カルマンフィルタを用いる。
ステップS4において、カウンタ値補正部510は、時刻推定部500が推定した自ノードの時刻情報に基づいて、高精度クロックモジュール20のカウンタ値を補正する。
【0056】
ステップS5において、第2位相・周波数比較モジュール70は、安定化クロック200とフラクショナルPLL回路60とのクロック信号との周波数を比較する。
ステップS6において、分周比補正部520は、第2位相・周波数比較モジュール70の比較結果に基づいて、フラクショナルPLL回路60の分周比を補正する。
ステップS7において、フラクショナルPLL回路60は、このフラクショナルPLL回路60が生成したクロック信号をノード2Aの時刻情報として出力する。
【0057】
[時刻情報を推定するノードの動作]
図5を参照し、時刻情報を推定するノード2Bの動作について説明する。
なお、ステップS2B~S4B以外の処理は、
図4と同様のため、説明を省略する。
【0058】
図5に示すように、ステップS2Bにおいて、周波数差情報送信部530は、ノード2Aからの要求に応じて、通信モジュール10Bを介して、ノード2Aに周波数差情報を送信する。
ステップS3Bにおいて、通信モジュール10Bは、ノード2Aから時刻情報を受信する。
ステップS4Bにおいて、カウンタ値補正部510Bは、通信モジュール10Bが受信した自ノードの時刻情報に基づいて、高精度クロックモジュール20のカウンタ値を補正する。
【0059】
なお、ノード2A及びノード2Bは、周波数差情報を連続的に送受信する場合、
図4及び
図5の処理を繰り返し実行する。一方、ノード2A及びノード2Bは、周波数差情報を断続的に送受信する場合、通信モジュール10,10Bのリンクが確立しているタイミングで
図4及び
図5の処理を実行する。
【0060】
[作用・効果]
実施形態に係るネットワーク1において、ノード2は、時刻を単純に比較するのではなく、専用ICを用いずに、物理層ベースでクロック信号の周波数を比較する。また、ノード2は、GNSSのように衛星からの電波を利用しないので、電波環境の劣化や妨害電波の影響を受けにくくなる。従って、ノード2は、簡易な構成を実現し、時刻同期の精度及び信頼性を向上させることができる。
【0061】
すなわち、ネットワーク1は、専用ICを用いないので、次世代通信で想定される多数のノード2で時刻同期が可能となる。このため、ネットワーク1は、簡易な構成を実現し、部品コストと、運用・保守・管理コストとを大きく抑えることができる。また、ネットワーク1は、各ノード2の間で周波数差情報を収集し、最尤推定処理を行うことで、ノード2の異常検出も可能となるため、より信頼性の高い時刻同期ネットワークを構築することができる。また、ネットワーク1は、何れかのノード2が絶対時刻源に接続されている場合、最尤推定処理を行うことで、より高精度な時刻同期が可能となる。
【0062】
(実施例)
図6及び
図7を参照し、実施例として、ノード2による時刻同期の精度について説明する。
図6には、比較例として、チップスケール原子時計を搭載した従来の小型原子時計について、時刻同期の精度のシミュレーション結果を図示した。
図6の縦軸は、精度が非常に高い仮想的な時計が刻む時刻と、単体の原子時計が刻む時刻との時刻差を表す。また、
図7には、実施例として、ノード2による時刻同期の精度のシミュレーション結果を図示した。
図7の縦軸は、単体の原子時計が刻む時刻と、周波数差情報による最尤推定処理で推定した時刻との時刻差を表す。
【0063】
図6に示すように、比較例では、231.5日後に、理想的な原子時計の時刻(絶対時刻)に対して、約15ミリ秒の誤差が生じる。一方、
図7に示すように、実施例では、絶対周波数源に基づいて周波数差情報を収集することで、小型原子時計の時刻を高精度に推定可能となり、約1.5ナノ秒以下の誤差に収まることがわかった。
【符号の説明】
【0064】
1 ネットワーク
2,2A,2B,2B1~2B4 ノード(時刻同期装置)
9 ノード
10,10B 通信モジュール(通信部)
11 PHY
12 MAC
20 高精度クロックモジュール(クロック部)
30 第1位相・周波数比較モジュール(第1周波数比較部)
40 メモリ
50,50B CPU
60 フラクショナルPLL回路(位相同期部)
70 第2位相・周波数比較モジュール(第2周波数比較部)
110 クロックデータリカバリ
200 安定化クロック
210 カウンタ
500 時刻推定部
510,510B カウンタ値補正部
520 分周比補正部
530 周波数差情報送信部