こんにちは、チームの皆さん
現在の gPTP スタックがマルチドメインをサポートしているかどうかを問い合わせたいのですが。もしSOなら、異なるドメインの時間を取得するにはCANでしょうか?
ありがとう。
よろしくお願いいたします。
ブリジット
はい、その通りです。デフォルトでは、gPTP はどのドメインがプライマリドメインであるか、および他のドメインで受信した時間をどのように処理するかをCANません。そのため、時間情報をどのように扱うかをアプリケーションが実装(決定)する自由が残されています。
2番目の質問に関して。実装次第です。gPTP は NETC からタイムスタンプを取得します...場合によっては (NPI)、netc は 2 つのタイマーをサポートします。2 つのタイマーがサポートされているCASE、タイムスタンプは、ソフトウェアによって管理されないフリーランニング タイマーに基づく可能性があります。0 から無限大 (2^64) まで実行されます。別のCASEでは、修正されたタイマーのみが利用可能な場合、NETC はこのタイマーをタイムスタンプの生成に使用します。このタイマーは gPTP スタックによって管理され、タイムスタンプの生成にも使用されます。それは、特定のドメインから受信した時間をどのように処理するかによって異なります。CASEでは、ドメイン 0 で受信した時刻がタイマー修正に使用されます。これをオフにすると、タイマーはフリーランニングとして動作します...または、異なるドメインを使用してタイマーを管理することもCAN。ただし、タイムスタンプは常に NETC HW によって提供されます。
トピックはもっと複雑です。
ネットワークには、タイマーを同期する必要がある (当然のことですが) デバイスが存在します。すると、タイマーを同期する必要のないデバイスが存在します。そしてそれは役割によって与えられるものではありません。
Grandmaster は、ローカル タイマーを、たとえば GPS と同期したり、フリーランニング タイマーを使用したりすることができます。しかし、その場合、ネットワークには、グランドマスターの起動時間を参照する時間のみが提供されます。一部のアプリケーションでは十分ですが、一部のアプリケーションでは十分ではありません。
Bridge はローカル時間を CAN 更新する場合と更新しない場合とがあります。つまり、タイムスタンプはフリーランニング タイマーまたは修正されたタイマーに基づくCAN。ブリッジの適切な運用には、現地時間は関係ありません。ブリッジが他の TSN 機能を提供する場合は、ブリッジのローカル時間の同期が必要になります。SO、ユースCASEごとに異なります。
エンドノードは、通常、ローカル タイマーをグランドマスターに同期します。最も一般的なCASE。ただし、フリーランニングで動作させることもCAN、同期する必要はありません。エンドノードに修正されたタイマーを管理させるか、フリーランニングとして実行させるか(または、利用可能な場合はタイムスタンプにフリーランニング タイマーを使用するか)は、アプリケーション次第です。このCASE、グランドマスターからの時間は、マルチドメイン環境の場合と同じように扱われます。
このCASE、スタックは、受信した時間情報をローカル タイマーの更新に使用する代わりに、タイムスタンプ タイマーとグランドマスター時間の間のソフトウェア参照 (現在のオフセット) を提供CAN。また、1 つのドメインまたは n 個のドメインのソフトウェア参照にすることもできます。Stack は、単に、現地時間と GM の時間の現在の時差を示します。すべてのドメインに適用可能です。さらに、修正されたタイマーが利用可能な場合(常に利用可能)、選択したドメインの時間をローカル更新に使用CAN。
理論上、10 個の修正タイマーが利用できる場合、10 個のドメイン時間は HW によってローカルに維持される可能性があります...ただし、これは一般的ではなく、どのような利点があるかはわかりません。ほとんどのアプリケーションでは、極めて高い精度のタイムベースが 1 つだけ必要であり、他のドメインでは、高い精度が必要とされない異なる時間を提供できます。したがって、提供される SW オフセットは十分です。
gPTP では、数 ns から最大数十 ns の範囲の精度について話します。これは TSN には便利ですが、システムや他のアプリケーションの時間では、ns の精度は必要ありません。