FlexRayクラスターのローカルクロックの同期は最初から各FlexRayノードで把握されている全Static Messageの送信と受信のタイムポイントに基づいている。これはFlexRayクラスターの全ノードがオフセットとレートを補正できることを保証している。わずか数サイクル後に全FlexRayノードは同じタイムポイントで同じレートを持つ通信サイクルを開始する。

FlexRayクラスターでは、少なくとも2台から最大15台のFlexRayノードが各サイクルの定義されたStatic SlotでSync Message(Synchronization Message)を送信するSync Node(Synchronization Node)として機能する。これらは補足メッセージでは無くSync Frame Indicatorが設定されているStatic Messageになる。

全FlexRayノードはSync Messageが実際に到着した時点と先験的に知られた時点を比較する。その後、Fault Tolerant Midpoint(FTM)アルゴリズムを使用してオフセット補正値を計算し、そこから差の並べ替え済みリストを作成する。

FTMアルゴリズムはローカルクロックの逸脱が深刻な場合、FlexRayクラスターの通信の同期が外れないようにリストから極端な値を捨てる。最大7台のSync Nodeの蓄えでは最小値と最大値が捨てられる。7台以上のSync Nodeがある場合は、2番目の大きい測定値と2番目の小さい測定値も捨てられる。

残りの測定値が合計され、平均が計算される、その結果がオフセット補正値を表している。レート補正値を算出するための方法は同じで、唯一の違いはFlexRayノードがSync Messageの基礎のサイクル長を測定する事になる。

オフセット補正とレート補正の両方はmicrotickを最小単位に持つローカルクロックに基づいて実行される。オフセットは各奇数サイクルの終了時にNITのmicrotick数(オフセットに相当)を追加または削除する事によりFlexRayノードを調整する。これはFlexRayノードが自身の次のサイクル開始をシフトし他のFlexRayノードに自身を適応する方法になる。

レート補正がオフセット補正のように動作しないようにFlexRayノードが一様に次の偶数、奇数サイクルにわたってレート補正値のmicrotickを配布する事を保証する。したがって、全FlexRayノードはサイクルを短縮または延長のいずれかが可能となる。


最終更新日時: 2018年 12月 4日(火曜日) 10:13