背景 | 概要 | 特徴 | 車載用通信プロトコル | ターゲットアプリケーション | Data転送方式 | CANとの相違 | 1Nodeの内部構成 | バスドライバの動作モード | バスドライバの電圧監視 | 電気信号 | Bus Guardian | トポロジー | セグメント構成 | プロトコル | 状態遷移 | エラー制御 |
FlexRayとは
プロトコル
フレームフォーマット
FlexRayのフレームは以下の特徴を持ちます。
- ヘッダ・セグメントのHeaderCRCは、ホストによって演算し設定します。
- トレイラ・セグメントのCRCは、ハードにより演算されます。
- CRCはまた接続するチャネルにおいて初期値を変更し誤接続を防止します。
FlexRayのフレームフォーマット

ヘッダ・セグメント
- Reserved bit
将来拡張の為の予備ビットです。 - Payload preamble indicator
フレームのペイロード・セグメント内にベクタ情報の有無を表示します。
Static Frame時は、NMVector指示、Dynamic Frame時は、Message ID指示します。 - Null frame indicator
ペイロード・セグメント内データフレームがNullか否かを示すビットです。 - Sync frame indicator
同期フレームの有無を表示するビットです。 - Startup frame indicator
フレームがスタートアップフレームかどうかを示すビットです。コールドスタートノードのみがスタートアップフレームを送信することができます。 - Frame ID
フレームが送信されるべきスロットを定義します。(有効範囲1~2047) - Length
ペイロードセグメント部のデータ長を1/2のバイト数で指定します。 - Header CRC
ホストによって演算されたSync Frame Indicator,Startup Frame Indicator, Frame ID, LengthのCRC計算値が設定されます。 - Cycle
サイクルカウンタ。フレーム転送時間における、転送しているノードのサイクル・カウンタを表示します。
ペイロード・セグメント
ペイロードセグメントは0 から254 バイトの(0 から127 の2 バイトワードの) データを持ちます。
ペイロード長は2 バイトワードの数を持つため、ペイロードセグメントは偶数のバイトを持ちます。
- Message ID
オプション。ペイロード・セグメントの最初の2バイトで定義し、受信側でフィルタ可能なデータとして使用します。 - NMVector
オプション。ネットワーク・マネジメント・ベクタ長は、0~12バイト間で全ノード共通である必要があります。
トレイラ・セグメント
そのフレームにおいてハードにより演算されたCRC値を3バイトで設定されます。
また、接続するチャネルでシード値を変更し誤接続を防止します。
プロトコルを構成するタイミング
FlexRayのコミュニケーション・サイクルは4つのタイミング・レベルから構成されています。
FlexRayのタイミング・レベル

タイミング・レベルと機能
| タイミング・レベル | 機能 |
| コミュニケーション・サイクル・レベル | フレームのスケジューリング |
| アビトレーション・グリット | 調停されたスロット(時分割多重制御) |
| マクロティック・レベル | 同期サービス |
| マイクロティック・レベル | 同期サービスの為に細分割したクロック |
マクロティック・レベルとマイクロティック・レベルは各セグメントを構成する基準となるクロックとしての役割を担います。
このクロック単位で同期化処理などが行われます。
- マクロティック
クラスタ全体にわたって同期します。クラスタ内で同期しているすべてのノードの間で、マクロティックの長さは許容限度内で同じです。 - マイクロティック
コントローラに固有の単位です。ノード内部のローカル時間の最小単位です。
通信コントローラの(外部)発振器のクロック単位から直接導かれる時間単位です。
(オプションでプリスケーラを使用することもあります。)
FlexRay CCシステムタイミンング
システムタイミングの設定例を以下に示します。
それぞれのタイミングは、FlexRay CCへの単一クロック入力により供給されます。


FlexRayコミュニケーションタイミング

FlexRayコミュニケーションタイミング設計における、システムパラメータの設定例です。

25ns (Microtic) x 40MT(gdMicroPerMacroNum) = 1000ns = 1us (Macrotic)
1us (Macrotic) x 50MT(gdStatcSlot) = 50us (Static Slot)
1us (Macrotic) x 10MT(gdMiniSlot) = 10us(Mini Slot)
1us (Macrotic) x 5000uT(pMacroPerCycle) = 5000us = 5ms (Cycle Length)
25ns (Microtic) x 2000uT(pMicroPerCycle) = 5000us = 5ms (Cycle Length)
ご注意
理解しやすい様に、実際のFlexRay規格の概略のみを紹介している個所もあります。
