JP2023158538A - 通信装置、時刻補正方法、および、時刻補正プログラム - Google Patents

通信装置、時刻補正方法、および、時刻補正プログラム Download PDF

Info

Publication number
JP2023158538A
JP2023158538A JP2022068445A JP2022068445A JP2023158538A JP 2023158538 A JP2023158538 A JP 2023158538A JP 2022068445 A JP2022068445 A JP 2022068445A JP 2022068445 A JP2022068445 A JP 2022068445A JP 2023158538 A JP2023158538 A JP 2023158538A
Authority
JP
Japan
Prior art keywords
time
correction
communication device
reception
timing signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022068445A
Other languages
English (en)
Inventor
尚駿 坂口
Naotoshi Sakaguchi
俊明 冨澤
Toshiaki Tomizawa
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2022068445A priority Critical patent/JP2023158538A/ja
Publication of JP2023158538A publication Critical patent/JP2023158538A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

Figure 2023158538000001
【課題】タイミング信号の飛びを抑制しつつ、素早く時刻を同期させることを目的とする。
【解決手段】通信装置10は、保持する時刻である装置時刻を、ネットワークを介して接続される他の通信装置の時刻と同期させる。時刻同期部14は、装置時刻と他の通信装置から送信された時刻メッセージの受信時刻との差に基づいて、装置時刻を受信時刻に同期させるか装置時刻に補正を施すかを判定する。装置時刻に補正を施すと判定された場合、時刻同期部14は、装置時刻に基づき周期的に送信されるタイミング信号の送信タイミングに時刻飛びが発生しないように装置時刻を受信時刻に近づける補正をする。
【選択図】図4

Description

本開示は、通信装置、時刻補正方法、および、時刻補正プログラムに関する。
ネットワークを介した機器間で時刻を同期させるための通信プロトコルにgPTPがある。gPTPは、IEEE802.1AS-2020で規定されている。gPTPは、generalized Precision Time Protocolの略語である。
gPTPでは隣接する機器間で制御フレームを交換することで、ツリー構成あるいは機器間における伝搬遅延および機器内でのフレーム滞留時間の計測、さらにその他の時刻情報の配信を行う。これにより、gPTPでは機器間でマイクロ秒以下の精度の時刻同期を実現する。
特許文献1には、2系統以上の入力経路があるBC装置において、経路切り替えが原因の大幅な時刻飛びが発生した際の検出および補正方法について開示されている。なお、BCは、Boundary Clockの略語である。BC装置は、通信フレームを中継するネットワーク装置である。
特開2019-158538号公報
プロトコルに従って動作する装置は、通常、前段の装置から受信した時刻情報を信頼して時刻同期する。このため、受信した時刻情報が大幅にずれた値であっても、装置はその時刻に同期してしまう。また、ネットワークに接続する装置には、無線装置あるいはFA機器といった、タイミングに敏感な装置がある。このような装置が、同期した時刻を元に生成した周期的なタイミング信号によって通信あるいは制御を行うと、時刻の飛びに伴ってタイミング信号の飛びが発生し、通信あるいは機器の動作に障害が発生してしまう可能性がある。
特許文献1では、時刻の飛びを所定時間内に補正する方法について記載されているが、タイミング信号の飛びを抑制することはできないという課題がある。
本開示では、タイミング信号の飛びを抑制しつつ、素早く時刻を同期させることを目的とする。
本開示に係る通信装置は、
保持する時刻である装置時刻を、ネットワークを介して接続される他の通信装置の時刻と同期させる通信装置において、
前記装置時刻と前記他の通信装置から送信された時刻メッセージの受信時刻との差に基づいて、前記装置時刻を前記受信時刻に同期させるか前記装置時刻に補正を施すかを判定し、前記装置時刻に補正を施すと判定された場合、前記装置時刻に基づき周期的に送信されるタイミング信号の送信タイミングに時刻飛びが発生しないように前記装置時刻を前記受信時刻に近づける補正をする時刻同期部を備える。
本開示に係る通信装置では、受信した時刻に設定閾値以上の飛びがあった場合に、時刻を受信時刻によって更新する代わりに時刻補正を施す。よって、本開示に係る通信装置によれば、タイミング信号の飛びを抑制しつつ、素早く時刻を同期させることができる。
実施の形態1に係る通信装置における時刻同期の基本シーケンス図。 装置時刻が正常な時刻に比べて遅い場合のイメージを示す図。 時刻飛びが発生した際にタイミング信号に飛びが発生するイメージを示す図。 実施の形態1に係る通信装置の機能構成例を示す図。 実施の形態1に係る通信装置のハードウェア構成例を示す図。 実施の形態1に係る通信装置の動作を示すフローチャート。 実施の形態1に係る時刻補正方法の大きい補正のイメージを示す図である。 実施の形態1に係る時刻補正方法の小さい補正のイメージを示す図である。 実施の形態1に係る通信装置において、未来に時刻が飛び、現時刻に近い側に補正するイメージを示している。 実施の形態1に係る通信装置において、未来に時刻が飛び、現時刻から遠い側に補正するイメージを示している。 実施の形態1に係る通信装置において、過去に時刻が飛び、現時刻に近い側に補正するイメージを示している。 実施の形態1に係る通信装置において、過去に時刻が飛び、現時刻から遠い側に補正するイメージを示している。
以下、本実施の形態について、図を用いて説明する。各図中、同一または相当する部分には、同一符号を付している。実施の形態の説明において、同一または相当する部分については、説明を適宜省略または簡略化する。図中の矢印はデータの流れまたは処理の流れを主に示している。
実施の形態1.
図1は、本実施の形態に係る通信装置10から構成される通信システム500における時刻同期の基本シーケンス図である。
図1を用いて、本実施の形態に係る通信システム500におけるgPTPについて説明する。
本実施の形態に係る通信装置10は、ネットワークを介して他の通信装置10と接続される。GM、BC、およびエンドノードの各々は、通信装置10の例である。
図1では、BCがGMに同期する流れを示している。
なお、BCは、Boundary Clockの略語であり、通信フレームを中継するネットワーク装置である。
また、GMは、Grand Masterの略語であり、精度の高いクロックを持ち、時刻を配信する装置である。GMは、時刻同期システムの時刻源である。
gPTPで用いる制御フレームは以下の6種類がある。
・Announce:図1には記載がないが、自通信装置の優先度情報あるいはGMからのホップ数情報といった情報を通知する。
・Pdelay_Req:伝搬遅延測定の開始を通知するフレームである。送信時刻(図1中のtL1)を自通信装置で記録する。
・Pdelay_Resp:Pdelay_Reqを受信した通信装置が自動的に返信するフレームである。Pdelay_Reqの受信時刻(図1中のtG2)を通知する。このメッセージを受け取った通信装置(Pdelay_Reqの送り主)はこのメッセージの受信時刻を記録する(図1中のtL4)。
・Pdelay_Resp_FollowUp:常にPdelay_Respの直後に送信され、Pdelay_Respの正確な送信時刻(図1中のtG3)を通知する。
・Sync:時刻情報を配信するフレームである。
・Follow_Up:常にSyncフレームの直後に送信され、Syncフレームと合わせて正確な時刻を配信する。
上記6種類の制御フレームの交換によって以下の3段階の工程で時刻同期を行う。
(1)時刻配信経路の決定
各通信装置が、隣接する通信装置(以下、隣接装置という)に対してAnnounceメッセージを送信し、その情報を元にBMCAと呼ばれるアルゴリズムによって各通信装置の優先度を決定し、時刻配信経路を決定する。BMCAは、Best Master Clock Algorithmの略語である。
(2)隣接装置間の遅延測定
Pdelay_Req/Pdelay_Resp/Pdelay_Resp_FollowUpの交換によって収集したタイムスタンプ情報を元に隣接装置間の遅延を計算する。図1ではBCがGMとの遅延を測定する図になっているが、実際は各通信装置が常に行う。
(3)時刻情報の配信
BMCAによって決定したGMが自通信装置の時刻情報を格納したSync/Follow_Upを送信する。GM以下の時刻配信経路の各通信装置は、受け取った時刻情報に遅延測定によって得られた遅延を加えた値で自通信装置の時刻を更新すると共に、その時刻を後段の通信装置に配信する。
このように、時刻配信経路の決定後、各通信装置がGMからの時刻情報に遅延を加えながらSync/Follow_Upフレームをリレーしていく。これにより、ネットワーク内のgPTP対応の全BCおよびgPTP対応のエンドノードの時刻同期が可能となる。
上記のプロトコルに従って動作する通信装置は、通常、前段装置から受信した時刻情報を信頼して時刻同期する。このため、受信した時刻情報が大幅にずれた値であっても、その時刻に同期してしまう。このとき、タイミングに敏感な装置が、同期した時刻を元に生成した周期的なタイミング信号によって通信あるいは制御を行うと、タイミング信号の飛びが発生し、通信あるいは機器の動作に障害が発生してしまう可能性がある。
システムが正常に動作している場合でも、タイムスタンプの打刻誤差が原因でわずかな時刻飛びが発生することは避けられない。例えば125MHz動作の装置ではタイムスタンプ粒度は8nsとなるため、毎回のタイムスタンプ取得で±8nsの誤差が発生する。しかし通常は、わずかな時刻飛びといった誤差を考慮に入れてネットワーク設計を行うため、これが原因で問題が発生することは無い。
しかし上記以外の要因でも時刻が飛ぶ可能性はあり、特に以下の2つの要因では時刻が大幅に飛ぶ可能性がある。
(a)GMのGNSS同期状態が長時間悪化した後の回復時
GNSSは、Global Navigation Satellite Systemの略語である。GNSSの代表的なものにGPSがある。GPSは、Global Positioning Systemの略語である。
(b)通信ケーブルの断線といった要因によりネットワークから長時間孤立した後の回復時
上記(a)の場合、通常GMはGNSSに高精度に同期し、その時刻情報をネットワークに配信している。しかしアンテナの設置環境あるいは天候によって長時間GNSSとの同期が遮られた場合、GMは自通信装置のクロックで自走することになる。クロックには偏差があるため、自走時間が長くなるほどにGMの時刻とGNSSの時刻は乖離する。これによってGMが長時間自走した後に同期状態が回復した場合、大幅に時刻が飛ぶ可能性がある。
上記(b)に関しても(a)同様に、あるBCが前段とのネットワーク接続が切れて長時間自走した場合、前段との間にクロック偏差に起因する時刻差が蓄積する。そのため、回復時にそのBC以下のツリーの時刻が大幅に飛ぶ可能性がある。
図2は、自通信装置の時刻が、参照するべき正常な時刻に比べて遅い場合のイメージを示す図である。
図3は、時刻飛びが発生した際にタイミング信号に飛びが発生するイメージを示す図である。
***構成の説明***
図4は、本実施の形態に係る通信装置10の機能構成例を示す図である。
通信装置10は、通信インタフェース部11、通信インタフェース部12、L2プロトコル部13、時刻同期部14を備える。時刻同期部14は、PTPパラメータ計算部141、飛び幅計算部142、補正演算部143、時刻管理部144、タイミング信号生成部145を備える。なお、通信インタフェース部は一つであっても三つ以上あってもよい。
通信インタフェース部11,12は、隣接装置と通信フレームを送受信するインタフェースである。通信インタフェース部11,12で受信したフレームは、L2プロトコル部13で解析される。
L2プロトコル部13は、OSI参照モデルのレイヤ2のデータリンク層の情報を解析する機能を有する。OSIは、Open Systems Interconnectionの略語である。L2プロトコル部13は、Ethernet(登録商標)フレームを解析し、時刻を同期するために必要なgPTPの制御フレームの情報を時刻同期部14へ受け渡す。gPTPの制御フレームの情報には、各種パラメータ情報、通信インタフェース部11,12もしくはL2プロトコル部13で取得した受信タイムスタンプ、および送信タイムスタンプがある。
時刻同期部14は、L2プロトコル部13から受け取った情報に基づき、通信装置10が同期する時刻を計算し、その時刻を元にタイミング信号を生成する。
PTPパラメータ計算部141では、gPTPによって時刻を計算する。
時刻管理部144は、自通信装置の時刻を保持し、計算によって求めたGMとのクロック比により時刻を補正しながら自通信装置の時刻を進める。また、時刻管理部144で保持する時刻はL2プロトコル部13へ受け渡し、gPTPの制御フレームに格納して通信インタフェース部11,12から隣接装置へ送信することができる。
飛び幅計算部142では、PTPパラメータ計算部141で計算した時刻と、時刻管理部144で保持している時刻を基に時刻の飛び幅を計算する。以下において、PTPパラメータ計算部141で計算した時刻を受信時刻とし、時刻管理部144で保持している時刻を装置時刻とする。
補正演算部143は、飛び幅計算部142の結果を基に、装置時刻を受信時刻に同期するか、装置時刻に対し補正を施すかを判定する。
タイミング信号生成部145は、時刻管理部144の時刻情報、すなわち装置時刻を元に、タイミング信号を生成する。このタイミング信号生成部145のタイミング信号出力は、通信装置10外部もしくは内部のタイミング信号を必要とする場所(モジュール)につながる。
図5は、本実施の形態に係る通信装置10のハードウェア構成例を示す図である。
通信装置10は、コンピュータである。通信装置10は、プロセッサ101、メモリ102およびデータ転送ハードウェア104により実現することができる。これらのプロセッサ101、メモリ102およびデータ転送ハードウェア104はバス103を介して接続されている。
プロセッサ101は、CPU、システムLSIなどである。CPUは、Central Processing Unitの略語である。CPUは、中央処理装置、処理装置、演算装置、プロセッサ、マイクロプロセッサ、マイクロコンピュータ、DSPともいう。DSPは、Digital Signal Processorの略語である。また、LSIは、Large Scale Integrationの略語である。
メモリ102は、RAM、ROM、フラッシュメモリ、EPROM、またはEEPROMといった、不揮発性または揮発性の半導体メモリである。あるいは、メモリ102は、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスクまたはDVDである。RAMは、Random Access Memoryの略語である。ROMは、Read Only Memoryの略語である。EPROMは、Erasable Programmable Read Only Memoryの略語である。EEPROMは、Electrically Erasable Programmable Read-Only Memoryの略語である。DVDは、Digital Versatile Discの略語である。
通信インタフェース部11、通信インタフェース部12は、データ転送ハードウェア104により実現される。
L2プロトコル部13、時刻同期部14は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの組み合わせにより実現される。
ソフトウェアおよびファームウェアはプログラムとして記述され、メモリ102に格納される。
L2プロトコル部13および時刻同期部14をソフトウェアまたはファームウェアで実現してもよい。L2プロトコル部13および時刻同期部14は、プロセッサ101が、L2プロトコル部13および時刻同期部14のそれぞれとして動作するためのプログラムをメモリ102から読み出して実行することにより実現される。すなわち、通信装置10は、その機能がプロセッサ101により実行されるときに、L2プロトコル部13および時刻同期部14の動作を実施するステップが結果的に実行されることになるプログラムを格納するためのメモリ102を備える。また、これらのプログラムは、L2プロトコル部13および時刻同期部14が行う各種処理をコンピュータに実行させるものである。
本実施の形態に係るプログラムは、時刻補正プログラムともいう。時刻補正プログラムにより利用、処理または出力されるデータ、情報、信号値および変数値は、メモリ、または、プロセッサ内のレジスタあるいはキャッシュメモリに記憶される。
L2プロトコル部13および時刻同期部14の各部の「部」を「回路」、「工程」、「手順」、「処理」、あるいは「サーキットリー」に読み替えてもよい。時刻補正プログラムは、L2プロトコル部13および時刻同期部14の各部の各種処理を、コンピュータに実行させる。L2プロトコル部13および時刻同期部14の各部の各種処理の「処理」を「プログラム」、「プログラムプロダクト」、「プログラムを記憶したコンピュータ読取可能な記憶媒体」、または「プログラムを記録したコンピュータ読取可能な記録媒体」に読み替えてもよい。また、時刻補正方法は、通信装置10が時刻補正プログラムを実行することにより行われる方法である。
時刻補正プログラムは、コンピュータ読取可能な記録媒体に格納されて提供されてもよい。また、時刻補正プログラムは、プログラムプロダクトとして提供されてもよい。
L2プロトコル部13および時刻同期部14は、専用のハードウェアで実現されてもよい。専用のハードウェアとしては、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC、FPGA、またはこれらを組み合わせたものが該当する。ASICは、Application Specific Integrated Circuitの略語である。FPGAは、Field Programmable Gate Arrayの略語である。L2プロトコル部13および時刻同期部14の一方を専用のハードウェアで実現し、残りを上記のプロセッサ101およびメモリ102で実現するようにしてもよい。
なお、プロセッサと専用のハードウェアである電子回路の各々は、プロセッシングサーキットリとも呼ばれる。つまり、通信装置10の機能は、プロセッシングサーキットリにより実現される。
***動作の説明***
次に、本実施の形態に係る通信装置10の動作に相当する時刻補正処理について説明する。通信装置10の動作手順は、時刻補正方法に相当する。また、通信装置10の動作を実現するプログラムは、時刻補正プログラムに相当する。
本実施の形態に係る通信装置10は、保持する時刻である装置時刻を、ネットワークを介して接続される他の通信装置の時刻と同期させる。
図6は、本実施の形態に係る通信装置10の時刻補正処理を示すフローチャートである。
フローチャート内の演算は簡単のため以下のパラメータ、および関数を用いて記している。
<使用パラメータ>
T:現在時刻
T’:受信時刻
Δ:時刻飛び幅(T’-T)
σ:タイミング信号の飛び幅の許容値(閾値)
I:PTP時刻メッセージ(Sync)の配信周期。Syncメッセージのヘッダーから抽出。
P:タイミング信号の周期
TNext:次のタイミング信号の出力時刻
<使用関数>
関数Q(a,b):a÷bの商を返す関数(Quotient)
関数sgn(x):符号関数。=-1(x<0),=0(x=0),=1(x>0)
ステップS101からステップS104の処理の概要は次の通りである。
通信装置10の時刻同期部14は、装置時刻と他の通信装置から送信された時刻メッセージの受信時刻との差Δに基づいて、装置時刻を受信時刻に同期させるか装置時刻に補正を施すかを判定する。
時刻同期部14は、装置時刻に補正を施すと判定された場合、装置時刻に基づき周期的に送信されるタイミング信号の送信タイミングに時刻飛びが発生しないように装置時刻を受信時刻に近づける補正をする。時刻同期部14は、装置時刻と受信時刻との差が事前に設定された閾値を超過していた場合に装置時刻に補正を施すと判定する。
具体的には、以下のステップS101からステップS104の通りである。
ステップS101において、通信装置10のPTPパラメータ計算部141は、他の通信装置から時刻を初めて受信したか否かを判定する。時刻を初めて受信した場合、ステップS102に進む。時刻を初めて受信した場合でなければ、ステップS103に進む。
ステップS102において、通信装置10の時刻管理部144は、装置時刻を、PTPパラメータ計算部141により計算された受信時刻に同期する。
ステップS103において(時刻の受信が2回目以降であれば)、通信装置10の飛び幅計算部142は、受信時刻T’から装置時刻Tを減算することで時刻飛び幅Δを計算する。時刻は過去に飛ぶこともある。過去に飛んだ場合の時刻飛び幅は負の数となる。
ステップS104において、飛び幅計算部142は、飛び幅の絶対値が事前に設定した閾値を超過しているか判定する。
閾値を超過していなかった場合はステップS102に進む。
閾値を超過していた場合は、ステップS105に進む。
つまり、飛び幅の絶対値である差が事前に設定した閾値σを超過している場合、装置時刻に補正が施される。また、飛び幅の絶対値である差が閾値σ以下の場合、装置時刻は受信時刻に同期する。
ステップS105において、通信装置10の補正演算部143は、閾値の超過を通知する。例えば、補正演算部143は、閾値の超過を、装置時刻を用いる別の機能ブロックに通知をする。装置時刻を用いる別の機能ブロックでは、超過通知ありの時の装置時刻にはずれがあり、超過通知なしの時の装置時刻にはずれがないといった判断ができる。これにより、装置時刻を用いる別の機能ブロックにおいて異常検知ができる。
ステップS106からステップS108の処理の概要は次の通りである。
時刻同期部14は、装置時刻に補正を施すと判定された場合、送信タイミングに時刻飛びが発生しないようにする補正として、装置時刻に対しタイミング信号の周期の倍数単位の補正を第1補正として行う。
時刻同期部14は、第1補正の後に、装置時刻と受信時刻との差が閾値σを超過していた場合、装置時刻と受信時刻との差が小さくなるように算出された補正量による第2補正を行う。時刻同期部14は、装置時刻と受信時刻との差が閾値σ以下となるまで第2補正を繰り返す。
例えば、時刻同期部14は、装置時刻からタイミング信号の周期の倍数単位離れた時刻のうち受信時刻が最も近い倍数単位の時刻を判定する。次に、時刻同期部14は、最も近い倍数単位の時刻が受信時刻を挟む2つの倍数単位の時刻のうち小さい方の倍数単位の時刻であるか大きい方の倍数単位の時刻であるかを判定する。そして、時刻同期部14は、判定結果に応じて装置時刻に対して第1補正と第2補正との少なくともいずれかを行う。
具体的には、以下のステップS106からステップS108の通りである。
ステップS106において、補正演算部143は、飛び幅の絶対値がタイミング信号の周期の何倍と何倍の間にあり、小さい方の倍数に近いか否かを判定する。具体的には、タイミング信号の周期が10秒で時刻の飛び幅の絶対値が27秒の場合、2倍の20秒と3倍の30秒の中間の25秒と比較して値が大きいため、30秒の方が近い値と判定する。
判定の結果、小さい方の倍数に近い場合、ステップS107に進む。
判定の結果、大きい方の倍数に近い場合、ステップS108に進む。
補正演算部143は、受け取ったΔとパラメータ情報から補正量を計算し、補正指示とともに時刻管理部144およびタイミング信号生成部145に渡す。補正指示は、例えば、フラグを立てるといった方法で実現する。
補正演算部143は、次のステップS107あるいはステップS108の計算で用いるsgn(Δ),P,Q(|Δ|,P),σI/Pといった一連の補正量を計算する。
時刻管理部144は、補正指示が無ければ、自装置のクロックによって時刻をカウントアップして装置時刻を進める。一方、時刻管理部144は、補正指示があれば、補正量を用いて装置時刻Tを補正する。
また、タイミング信号生成部145は、次のタイミング信号出力時刻(TNext)を保持しており、常に装置時刻(T)を参照し、比較している。この2つの時刻が一致した場合はタイミング信号を出力すると共にタイミング信号出力時刻(TNext)を更新(Pを加算)し、補正指示があった場合は補正量を元にTNextを更新する。
具体的には、以下の通りである。
ステップS107において、時刻管理部144は、補正指示があれば、以下のように計算を実施する。
・タイミング信号の周期(P)に、計算した倍数(関数Qの結果)を乗算し、そこに、閾値(σ)にSync周期(I)を乗じてタイミング周期(P)でこれを割って求めた補正項(σI/P)を加える。
・それら全体に、飛び幅の符号(sgn(Δ))を乗じたものを現在の装置時刻(T)に加えて、これを新たな装置時刻(T)とする。
また、タイミング信号生成部145は、補正指示があれば、以下の計算を実施する。
・次のタイミング信号出力時刻(TNext)に、タイミング信号の周期(P)に計算した倍数(関数Qの結果)を乗算し、それに飛び幅の符号(sgn(Δ))を乗じたものを加え、次のタイミング信号出力時刻(TNext)とする。
ステップS108において、時刻管理部144は、補正指示があれば、以下のように計算を実施する。
・タイミング信号の周期に、計算した倍数(関数Qの結果)に1を加えた数を乗算し、そこからステップS107と同じ補正項(σI/P)を減じる。
・それら全体に、飛び幅の符号(sgn(Δ))を乗じたものを現在の装置時刻(T)に加えて、これを新たな装置時刻(T)とする。
また、タイミング信号生成部145は、補正指示があれば、以下の計算を実施する。
・次のタイミング信号出力時刻(TNext)に、タイミング信号の周期(P)に計算した倍数(関数Qの結果)に1を加えた数を乗算し、飛び幅の符号(sgn(Δ))を乗じたものを加え、次のタイミング信号出力時刻(TNext)とする。
次に、本実施の形態に係る時刻補正方法のイメージを、図7から図12を用いて説明する。
図7は、本実施の形態に係る時刻補正方法の大きい補正(第1補正)のイメージを示す図である。
図8は、本実施の形態に係る時刻補正方法の小さい補正(第2補正)のイメージを示す図である。
図7において、時刻飛び発生時点における次のタイミング信号の出力までの時間をaとする。本実施の形態に係る時刻補正方法では、この関係性を崩さないように補正を行う。このため、ステップS106により、時刻の飛び幅とタイミング信号周期の倍数との大小関係を比較する。
図7の場合は、時刻の飛び幅Δは、2P+(1/2)Pと比較して2Pよりも3P側に近い。このため、現在の装置時刻に3Pを加算する。このように、タイミング信号の周期Pを超えて大きく時刻が飛んだ場合はタイミング信号の周期Pの倍数によって「大きい補正」を実施する。「大きい補正」を実施した後に、受信時刻と現在の装置時刻との差はタイミング信号の周期Pよりも小さくなっている。
図7は、図10に示すような時刻飛び発生時の「大きい補正」の時刻補正方法の説明図だる。図7では、未来に時刻が飛び、現時刻から遠い側に補正するイメージを示している。
例えば、時刻が(t1)の時に、大きく飛んだ(t2)の時刻を受信した場合、ステップS108の上段の補正によって(t2)でなく(t4)に時刻が更新される。
本実施の形態では、「タイミング信号に飛びを発生させたくない」という目的がある。この目的のため、次回のタイミング信号出力までの時間(図7におけるa)が等しく、かつ実際の受信時刻(t2)に近い時刻である(t4)に、装置時刻を更新する。この最初の大幅な飛び発生時には、大きい補正項(P×Q(a,b))と小さい補正項(σI/P)の2つで補正される。大きい補正項に比べて小さい補正項が小さいため図7では「3P」と記載しているが(t4)の時刻は実際には「3P-σI/P」が正しい。
図7に示す最初の大きな時刻飛びに対する補正後も、時刻を受信するたびに補正計算が実施される。しかし、受信時刻と装置時刻の位置関係は(t2)と(t4)に近い形であるため、大きい補正の中の「Q(a,b)」の計算結果は常に0で、かつ時刻の差はP/2以下になる。そのため一度大きい補正を行った後は、時刻受信毎に図6で示すところのステップS107の演算ブロックに毎回入ることになり、「小さい補正」だけが繰り返される。
このように、ステップS107の上段の処理(もしくはステップS108の上段の処理)の式の「大きい補正」の成分(P×Q(a,b))は0であるため、その後ろの小さい補正項(σI/P)による補正のみが施される。この値は時刻飛び閾値をタイミング信号周期で割り、それにSync周期を乗しており、一回のSync受信で補正できる最大量である。
図8は、この小さい補正を繰り返す様子を表した図である。図8は図7のB部の点線で囲った場所を起点にしたその後の挙動を示す図である。
まず、「大きい補正」の結果、図7で時刻が(t1)から(t4)に更新される。図8はこの更新の後の図になっている。
図8で次に時刻を受信したときには、「補正後の現在時刻」(t4)になっており、その状態で「受信時刻」(t2)の時刻を受け取ることになる。正確には、それぞれ(t4)、(t2)からわずかに進んだ時刻であり、Syncを受信した時の時刻である。このとき(t4)は「大きい補正」を施された後であるため、(t4)から見た(t2)の時刻差の絶対値(|Δ|)はP/2以下であり、ステップS107の計算に入る。このことから、ステップS107あるいはステップS108のどちらにしろ、一度でも「大きい補正」を受けた後は常にステップS107の方に入り「小さい補正」が施される。
図6の時刻補正処理では、ステップS106およびステップS108が無く、ステップS107だけでもタイミング飛びを抑制する効果がある。しかし、「大きい補正」においてステップS107あるいはステップS108の選択肢があることによって、タイミング飛びの抑制に加えて、現在時刻が受信時刻に追いつくのを早める効果がある。
図9から図12は、本実施の形態に係る時刻補正方法のイメージを示す図である。
図9から図12では、タイミング信号周期以上の大きな時刻飛びが発生した時の、時刻の補正イメージを示している。
図9では、未来に時刻が飛び、現時刻に近い側に補正するイメージを示している。
図9では、以下のような補正となる。
(1)大きい補正(第1補正)により現時刻に近い側に装置時刻を補正
(2)小さい補正(第2補正)により徐々に装置時刻を受信時刻に近づけるように補正
(3)受信時刻と装置時刻のとの差が閾値未満になったら同期
図10では、未来に時刻が飛び、現時刻から遠い側に補正するイメージを示している。
図10では、以下のような補正となる。
(1)大きい補正(第1補正)により現時刻から遠い側に装置時刻を補正
(2)小さい補正(第2補正)により徐々に装置時刻を受信時刻に近づけるように補正
(3)受信時刻と装置時刻のとの差が閾値未満になったら同期
図11では、過去に時刻が飛び、現時刻に近い側に補正するイメージを示している。
図11では、以下のような補正となる。
(1)大きい補正(第1補正)により現時刻に近い側に装置時刻を補正
(2)小さい補正(第2補正)により徐々に装置時刻を受信時刻に近づけるように補正
(3)受信時刻と装置時刻のとの差が閾値未満になったら同期
図12では、過去に時刻が飛び、現時刻から遠い側に補正するイメージを示している。
図12では、以下のような補正となる。
(1)大きい補正(第1補正)により現時刻から遠い側に装置時刻を補正
(2)小さい補正(第2補正)により徐々に装置時刻を受信時刻に近づけるように補正
(3)受信時刻と装置時刻のとの差が閾値未満になったら同期
本実施の形態に係る時刻補正処理を言い換えると以下の通りである。
通信装置は、自通信装置の時刻(装置時刻)を、ネットワークを介して接続される他通信装置の時刻(受信時刻)と同期する装置である。通信装置は、通信インタフェース部と、L2プロトコル処理部と、時刻同期部を備える。また、通信装置は、同期した装置時刻を元に周期的なタイミング信号を生成する機能を有する。
時刻同期部は、保持する装置時刻と受信した受信時刻の差異に基づいて、受信時刻に同期するか補正を施すかを判定する。補正を施すと判定された場合は、通信装置は、タイミング信号が事前に設定した閾値を超えない範囲で自装置時刻を受信時刻に近づけるような補正をする。
具体的には、時刻同期部は、差異が閾値を超えている間は装置時刻の補正を続け、差異が閾値以下になった場合に初めて受信時刻に同期する。
また、時刻同期部は、時刻メッセージ受信時に受信時刻と装置時刻の差異(時刻飛び)に対して、まずタイミング信号の周期の倍数単位の大粒度の補正を施すことでタイミング信号を飛ばすことなく装置時刻の補正を行う。
その補正後も時刻の差異が閾値を超過していた場合は、時刻同期部は、次にその差異と、タイミング信号周期および飛びの許容閾値といった各種設定パラメータと、さらにPTPフレームから抽出されるPTPパラメータとを元に算出した補正量による小さい粒度の補正を施す。これにより、大きな時刻の飛びに対して、タイミング信号に閾値以上の飛びを発生することなく素早く装置時刻を同期させる機能を有する。
***本実施の形態の効果の説明***
以上のように、本実施の形態に係る通信装置では、時刻受信時に設定閾値を超える時刻の飛びがあった場合、補正を施すことでタイミング信号の飛びを抑制する。
本実施の形態に係る通信装置では、時刻情報(Sync、Follow_Up)受信時に受信時刻と自装置の現在時刻を比較し、事前に設定した閾値を超過していないかを判断する。超過していない場合は通常のgPTPに従って時刻を更新する。閾値を超えていて更にタイミング信号周期以上の飛びだった場合、タイミング信号の周期の定数倍を現在時刻とタイミング信号生成時刻に加えることで、受信時刻に最も近く、かつ次回のタイミング信号出力までの時間が変わらない時刻に更新する。閾値を超えているが、タイミング信号周期未満の飛びだった場合、閾値とタイミング信号周期から算出した、一度の時刻更新で更新できる最大補正量を加算する。
このように、本実施の形態に係る通信装置では、タイミング信号周期の倍数による「大きい補正」と、Sync受信毎の「小さい補正」を合わせて用いる。これにより、受信時刻が大きく飛んだ場合に、タイミング信号を設定閾値以上飛ばすことなく、時刻を素早く同期することが可能となる。
よって、本実施の形態に係る通信装置によれば、時刻同期ネットワークに繋がり、同期した時刻を元にタイミング信号を生成する機器が現時刻から大幅に乖離のある時刻を受信した場合に、タイミング信号に大きな飛びを発生させることなく、素早く時刻同期を行うことができる。
また、本実施の形態に係る通信装置は、無線基地局、携帯無線基地局、ファクトリーオートメーション、IP放送、スマートグリッド、その他Time-Sensitive Networking (TSN) Task Groupで示されている適用先に適用可能である。
以上の実施の形態1では、通信装置の各部を独立した機能ブロックとして説明した。しかし、通信装置の構成は、上述した実施の形態のような構成でなくてもよい。通信装置の機能ブロックは、上述した実施の形態で説明した機能を実現することができれば、どのような構成でもよい。また、通信装置は、1つの装置でなく、複数の装置から構成されたシステムでもよい。
また、実施の形態1のうち、複数の部分を組み合わせて実施しても構わない。あるいは、この実施の形態のうち、1つの部分を実施しても構わない。その他、この実施の形態を、全体としてあるいは部分的に、どのように組み合わせて実施しても構わない。
すなわち、実施の形態1では、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。
なお、上述した実施の形態は、本質的に好ましい例示であって、本開示の範囲、本開示の適用物の範囲、および本開示の用途の範囲を制限することを意図するものではない。上述した実施の形態は、必要に応じて種々の変更が可能である。例えば、フロー図あるいはシーケンス図を用いて説明した手順は、適宜に変更してもよい。
10 通信装置、11,12 通信インタフェース部、13 L2プロトコル部、14 時刻同期部、141 PTPパラメータ計算部、142 飛び幅計算部、143 補正演算部、144 時刻管理部、145 タイミング信号生成部、101 プロセッサ、102 メモリ、103 バス、104 データ転送ハードウェア。

Claims (7)

  1. 保持する時刻である装置時刻を、ネットワークを介して接続される他の通信装置の時刻と同期させる通信装置において、
    前記装置時刻と前記他の通信装置から送信された時刻メッセージの受信時刻との差に基づいて、前記装置時刻を前記受信時刻に同期させるか前記装置時刻に補正を施すかを判定し、前記装置時刻に補正を施すと判定された場合、前記装置時刻に基づき周期的に送信されるタイミング信号の送信タイミングに時刻飛びが発生しないように前記装置時刻を前記受信時刻に近づける補正をする時刻同期部を備える通信装置。
  2. 前記時刻同期部は、
    前記装置時刻と前記受信時刻との差が事前に設定された閾値を超過していた場合に前記装置時刻に補正を施すと判定する請求項1に記載の通信装置。
  3. 前記時刻同期部は、
    前記装置時刻に補正を施すと判定された場合、前記送信タイミングに時刻飛びが発生しないようにする補正として、前記装置時刻に対し前記タイミング信号の周期の倍数単位の補正を第1補正として行う請求項2に記載の通信装置。
  4. 前記時刻同期部は、
    前記第1補正の後に、前記装置時刻と前記受信時刻との差が前記閾値を超過していた場合、前記装置時刻と前記受信時刻との差が小さくなるように算出された補正量による第2補正を行い、前記装置時刻と前記受信時刻との差が前記閾値以下となるまで前記第2補正を繰り返す請求項3に記載の通信装置。
  5. 前記時刻同期部は、
    前記装置時刻から前記タイミング信号の周期の倍数単位離れた時刻のうち前記受信時刻が最も近い倍数単位の時刻を判定し、前記最も近い倍数単位の時刻が前記受信時刻を挟む2つの倍数単位の時刻のうち小さい方の倍数単位の時刻であるか大きい方の倍数単位の時刻であるかを判定し、判定結果に応じて装置時刻に対して前記第1補正と前記第2補正との少なくともいずれかを行う請求項4に記載の通信装置。
  6. 保持する時刻である装置時刻を、ネットワークを介して接続される他の通信装置の時刻と同期させる通信装置に用いられる時刻補正方法において、
    コンピュータが、前記装置時刻と前記他の通信装置から送信された時刻メッセージの受信時刻との差に基づいて、前記装置時刻を前記受信時刻に同期させるか前記装置時刻に補正を施すかを判定し、前記装置時刻に補正を施すと判定された場合、前記装置時刻に基づき周期的に送信されるタイミング信号の送信タイミングに時刻飛びが発生しないように前記装置時刻を前記受信時刻に近づける補正をする時刻補正方法。
  7. 保持する時刻である装置時刻を、ネットワークを介して接続される他の通信装置の時刻と同期させる通信装置に用いられる時刻補正プログラムにおいて、
    前記装置時刻と前記他の通信装置から送信された時刻メッセージの受信時刻との差に基づいて、前記装置時刻を前記受信時刻に同期させるか前記装置時刻に補正を施すかを判定し、前記装置時刻に補正を施すと判定された場合、前記装置時刻に基づき周期的に送信されるタイミング信号の送信タイミングに時刻飛びが発生しないように前記装置時刻を前記受信時刻に近づける補正をする時刻同期処理をコンピュータに実行させる時刻補正プログラム。
JP2022068445A 2022-04-18 2022-04-18 通信装置、時刻補正方法、および、時刻補正プログラム Pending JP2023158538A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022068445A JP2023158538A (ja) 2022-04-18 2022-04-18 通信装置、時刻補正方法、および、時刻補正プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022068445A JP2023158538A (ja) 2022-04-18 2022-04-18 通信装置、時刻補正方法、および、時刻補正プログラム

Publications (1)

Publication Number Publication Date
JP2023158538A true JP2023158538A (ja) 2023-10-30

Family

ID=88509419

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022068445A Pending JP2023158538A (ja) 2022-04-18 2022-04-18 通信装置、時刻補正方法、および、時刻補正プログラム

Country Status (1)

Country Link
JP (1) JP2023158538A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7466804B2 (ja) 2022-02-17 2024-04-12 三菱電機株式会社 通信装置、制御回路、記憶媒体およびクロック偏差算出タイミング決定方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7466804B2 (ja) 2022-02-17 2024-04-12 三菱電機株式会社 通信装置、制御回路、記憶媒体およびクロック偏差算出タイミング決定方法

Similar Documents

Publication Publication Date Title
EP1427121B1 (en) Radio access network, radio communication method, synchronous server and node
US8705578B2 (en) Method and system for implementing time synchronization in local area network (LAN)
US8576883B2 (en) Measurement and adjustment of real-time values according to residence time in networking equipment without access to real time
CN112367137B (zh) 用于实现时钟源选取的方法、装置、系统、设备及存储介质
US11316605B2 (en) Method, device, and computer program for improving synchronization of clocks in devices linked according to a daisy-chain topology
US11099599B2 (en) Communication device, cascaded network and internal synchronization method
US11456849B2 (en) Method and apparatus for synchronizing different communication ports
JP2023158538A (ja) 通信装置、時刻補正方法、および、時刻補正プログラム
CN110719135A (zh) 时间校准方法、系统及电子装置
CN112511253A (zh) 一种同步方法、装置、设备和存储介质
CN115459871A (zh) 时间同步方法、网络设备和存储介质
CN112969229B (zh) 一种时钟校正方法、装置以及网络设备
JP2017216563A (ja) 中継装置、制御方法、及び、通信システム
KR101847366B1 (ko) 시각 동기 장치 및 시각 동기 시스템
JP2633499B2 (ja) ネットワークの時刻同期方式
Okabe et al. Avoiding year 2038 problem on 32-bit linux by rewinding time on clock synchronization
US11799624B2 (en) Time-synchronization system, relay apparatus, time-synchronization method, and non-transitory computer readable medium
CN118355626A (zh) 转发装置和时刻同步系统
EP3070886A1 (en) Path delay determination in ring networks
US10931434B2 (en) Relay apparatus, communication system, and failure detection method
CN112865900A (zh) 一种时间同步方法、装置、系统及存储介质
WO2017150306A1 (ja) 通信システム、予備通信装置、現用通信装置、時刻同期方法、及び非一時的なコンピュータ可読媒体
CN118337311A (zh) 卫星间时间同步方法、装置、卫星及存储介质
CN118802049A (en) Time synchronization method, device, equipment and medium
CN117850203A (zh) 一种卫星集群星上时间的自主管理方法及装置