時刻補正値(=上位機器と下位機器の時刻差)=((t2-t1)-(t4-t3)) ⁄ 2
- 計算結果の符号がプラスの場合:上位機器より下位機器の時刻が進んでいることを示す。
- 計算結果の符号がマイナスの場合:上位機機器より下位機器の時刻が遅れていることを示す。
補正後の下位機器の時刻(=上位機器の時刻)=(下位機器の時刻)-(時刻補正値)
ネットワーク内の各機器が時刻同期する仕組みとして、NTP(Network Time Protocol)方式がありますが、この時刻同期方式は、ソフトウェアでタイムスタンプ処理を行うため、時刻同期性能がミリ秒レベル(千分の一秒)に留まります。802.1AS-Revでは、時刻同期のプロトコルとして、gPTP(Generalized Precision Time Protocol)を採用しており、 ハードウェアでタイムスタンプ処理を行うため、マイクロ秒(百万分の一秒)単位の高精度な時刻同期を実現することができます。NTP方式以上の時刻同期性能が求められるイーサーネットネットワーク(例えば、車載、モバイル、ファクトリーネットワークなど)では、802.1AS-Revの採用が不可欠となっています。
ネットワーク内の機器は、Pear-to-Peerにて、時刻同期をとります。
BMCA(Best Master Clock Algorithm)方式にて、ネットワークに基準時刻情報を配信するGM(Ground Master)と決定します。GM以外の機器は、BC(Boundary Clock)または、OC(Ordinary Clock)となります。 BCは、上位機器から時刻情報を受信し、時刻同期する機能(Slave機能)と、Slave機能によって上位機器と同期がとれた時刻情報を下位機器に送信する機能(Master機能)を有します。一方、OCは、Master又はSlave機能の一方のみを持つ機器です。
802.1AS-Revのネットワーク構成例を、図1に示します。GMからの時刻情報を定期的に配信し、BCは、自分がもつ時刻情報を逐次補正し、下位の機器に時刻を伝えることにより、ネットワーク内の機器が1uS以下の精度で、同一の時刻情報をもつことが可能になります。なお、時刻同期は、上位機器と下位機器との間で、gPTPプロトコルに規定されているメッセージのやりとりが行われることによって実現されます。こちらについては、後述します。
上位機器の時刻に下位機器の時刻を同期させるためには、以下の4つのメッセージが使用されます。
下位機器は、上位機器との間で上記4つのメッセージの送受信を行うことにより、以下4つの時刻情報(t1~t4)を持つことができます。
802.1AS-Revでは、t1時間を下位機器に伝える方法として、以下図2及び図3のように、1 Step同期方式と2 Step同期方式の二つの方法が規定されています。
(802.1AS-Rev の先行規格である802.1ASでは、 2 Step同期方式のみ規定されています。)
なお、時刻補正は、一定間隔ごと・定期的に行われます。
下位機器は、t1~t4時刻情報から、上位機器の時刻に同期するように、時刻補正を行います。
以下の式を利用して、時刻補正値(=上位機器と下位機器の時刻差)を求め、下位機器の時刻補正を行います。
時刻補正値(=上位機器と下位機器の時刻差)=((t2-t1)-(t4-t3)) ⁄ 2
補正後の下位機器の時刻(=上位機器の時刻)=(下位機器の時刻)-(時刻補正値)
本コラムでは、 802.1AS_Rev(Timing and Synchronization)規格について、解説しました。
次回以降の技術コラムについては、現在、検討中です。TSN技術コラム連載をご愛読いただきありがとうございました。