次世代車載ネットワーク FlexRayとは?次世代車載ネットワーク FlexRay入門(1)(2/2 ページ)

» 2011年01月25日 00時00分 公開
前のページへ 1|2       

4.FlexRayプロトコルの特徴

 まず、FlexRayプロトコルの主な特徴を簡単に紹介します。

  • 通信方式:TDMA(Time Division Multiple Access/時分割多重アクセス)。Fixed TDMAとFlexible TDMAの2種類に対応
  • ネットワークトポロジー:バス型、スター型、それらの混合型など、さまざまなトポロジーに対応
  • フォールトトレランス(障害耐性):ネットワークの二重化による冗長性/可能な限り通信を継続するコンセプト
  • ノード構造:ホスト − 通信コントローラ − バスドライバ − バスガーディアンによる相互監視
  • 優れた通信同期機能/共通の時間軸:グローバルタイムとさまざまな補正機能
  • 高速通信:最大10Mbps

Fixed TDMA通信/Flexible TDMA通信

 TDMA(時分割多重アクセス)は、通信時間を一定時間ごと(「タイムスロット」もしくは「スロット」と呼ばれます)に分割することで、多重化通信を実現する「タイムトリガー」通信方式です。

 FlexRayではこのTDMA通信方式を採用し、各フレームの送信タイミングや順番は事前に定義されます。よって、フレーム同士の衝突は起こらず、また特定のフレームによってネットワークが独占されることもなくなるため、期待どおりのタイミングで通信を行い、通信負荷をある一定以内に保つことができます。

 一方、CANのように何らかの事象=イベントの発生によってフレーム送信が行われる通信方式(イベントトリガー方式:CSMA/CA)の場合、フレームの衝突や調停(衝突したフレームのどちらを先に送信させるかを調整すること)によって、常に期待したタイミングで通信を行えるとは限りません。

(左)イベントトリガー方式と、(右)タイムトリガー方式のイメージ 図5 (左)イベントトリガー方式と、(右)タイムトリガー方式のイメージ
(※ベクター・ジャパンの資料を基に作成)

 また、FlexRayのTDMAには「Fixed TDMA」と「Flexible TDMA」の2種類があることが大きな特徴です。

Fixed TDMA通信:
→決まったフレームを決まったタイミングで必ず送信(=最大送信遅延時間を保証)
→送信タイミング(スロットの長さ)は、送信フレームの有無にかかわらず一定
→安全性重視のアプリケーションに適している

Flexible TDMA通信:
→決まったフレームを要求に基づき任意のタイミングで送信(=高応答性)
→送信「順番」は、事前に定義(フレームの衝突は発生しない)
→送信タイミング(スロットの長さ)は、送信フレームの有無によって変わる
→高い応答性が求められるアプリケーションに適している

 それぞれの特徴を生かすことにより、一定の送信周期を保証する、もしくは迅速なレスポンスを実現するなど、アプリケーション志向の通信を柔軟に設計できます(FlexRayの「flex」はFlexibility<柔軟性>から由来しているといわれています)。

Fixed TDMA通信の例 図6 Fixed TDMA通信の例:
・発車予定やその時間は事前に決まっている
・電車の長さや発車間隔は一定
(※ベクター・ジャパンの資料を基に作成)

Flexible TDMA通信の例 図7 Flexible TDMA通信の例:
・発車時間は乗客次第。順番のみ事前に決まっている
・電車の長さも一定ではない
(※ベクター・ジャパンの資料を基に作成)

ネットワークトポロジー

 ネットワークトポロジー(構成)は、「バス型」から「パッシブ・スター型」「アクティブ・スター型」および、それらの「混合(ハイブリッド)型」まで、多様な形が可能です。これにより、自由度の高い車載ネットワーク設計ができます。

 バス型は、CANなどにも採用されている一般的なトポロジーです。コスト効率が良い半面、バスの長さは主に電気信号の反射と伝播遅延により制限され、ネットワーク上のある個所で発生した障害によりネットワーク全体が影響を受ける可能性が大きい、といった懸案もあります。

 スター型には“パッシブ”と“アクティブ”の2種類があります。パッシブ・スター型は、基本的にバス型と同じ考え方です。一方、アクティブ・スター型は「スター・カプラー」と呼ばれるゲートウェイのような役割を行う装置に各ノードが接続されたトポロジーです。アクティブ・スター型では、バス長をより長くすることができるため、大きいネットワークを構築できます。また、ネットワーク上のある個所で障害が発生した場合のネットワーク全体に与える影響度も抑えることができるため、より安全重視のアプリケーション向きといえます。

FlexRayのネットワークトポロジー 図8 FlexRayのネットワークトポロジー
(※ベクター・ジャパンの資料を基に作成)

フォールトトレランス(障害耐性)

 ネットワークの二重化(Aチャンネル/Bチャンネル)に対応することで、冗長性を持たせています。つまり、仮に一方のネットワーク線に断線などの障害が発生しても、残りのネットワーク系統により正常な通信が維持されることになります。ただし、この二重化は必須ではなく、要求される信頼性やコストに従って、ネットワークごと、ノードごとに柔軟に設計できます。

 また、FlexRayでは可能な限り通信を継続するコンセプトに基づいているため、エラーによって通信を中断する条件は通信プロトコルでは規定しておらず、アプリケーションで判断します。つまり、致命的なエラーを検出した場合も、通信コントローラが停止状態(halt)には遷移しますが、プロトコルが「勝手に」通信を中止させることはしません。その決定はアプリケーションで行われることになります。より安全性、信頼性が求められるシステムに適した仕様といえます。

(例)ネットワーク二重化 図9 (例)ネットワーク二重化:
ノードA、C、Eは2つのチャンネルに接続。ノードBはチャンネルBにのみ、ノードDはチャンネルAのみに接続
(※ベクター・ジャパンの資料を基に作成)

ノード構造

 FlexRayノードの構造は、複数の「論理ブロック」と呼ばれる機能体(以下)から構成され、それぞれが多岐にわたる情報を共有し、相互監視を行っています。

ホスト(マイクロコントローラ):
アプリケーションの一部として、通信コントローラにアプリケーションの制御情報、設定情報、データを提供することや、バスドライバの動作モードを制御することを担当します。1ノードに1つ装備されます

通信コントローラ(CC):
通信プロトコルの処理を担当します。ホストへシステム状態の情報、受信したデータを提供し、バスドライバに送信データや送信許可信号を提供します。1ノードに1つ装備されます

バスドライバ(BD):
チャンネルへの物理的なアクセスを担当します。通信コントローラへ受信したデータを、ホストへエラー情報を提供します。1チャンネルに1つ装備されます(ネットワーク二重化の場合は1ノードに2つ装備)

バスガーディアン(BG):
バスドライバによるネットワークへの送信を監視します。通信コントローラとは別のタイムスケジュールを持っており、常にバスドライバのネットワークへのアクセスをモニタします。そして、不適切なタイミングでの送信要求を検知した場合、バスドライバに対して送信を停止させることができます。1チャンネルに0〜1つ装備されます(オプション)

 これらにより、高い安全性、信頼性を実現できます。

FlexRayノード構造:各機能体の相互監視 図10 FlexRayノード構造:各機能体の相互監視
(※ベクター・ジャパンの資料を基に作成)

優れた通信同期機能

 「マルチマスタ・クロック同期」と呼ばれる、任意ノードのクロック(処理のタイミングを合わせるために用いられる信号)に基づく同期方法と、さまざまな補正機能を備えることによって、ネットワーク上のすべてのノードが同じタイミングで通信を行うことができます。

 まず通信開始時に、タイミングに関して基準となる複数ノードから「グローバルタイム」が与えられます。このグローバルタイムとは、絶対的な時間ではなく、あくまでも「ネットワーク内における時間に関する共通の“ものさし”(具体的には、サイクルの長さと開始時間)」です。これを用いて各ノードがタイミングを合わせることで同期を図ります。また通常、温度変化、電圧変動、水晶発振器の製造誤差などにより、各ノードが持つ時間(ローカルタイム)は異なっており、通信開始時にタイミングを合わせたとしても徐々に差が出てくるため、通信開始後の補正が必要となります。FlexRayでは、各ノードが常にグローバルタイムとローカルタイムとの差を測定し、補正することで同期通信を実現しています。

グローバルタイムとローカルタイム 図11 グローバルタイムとローカルタイム:共通のタイムベースに対してクロック同期を実施
(※ベクター・ジャパンの資料を基に作成)

高速通信

 FlexRayの最大通信速度は10Mbpsであり、CAN(1Mbps)の10倍の通信速度です。また、前述のネットワーク二重化とも関連しますが、仮に、二重化したネットワークにそれぞれにまったく別のデータを送信した場合、その通信速度は論理的には最大20Mbpsとなります。



 以上、今回はFlexRayが策定された背景や経緯、プロトコルの特徴を簡単に説明しました。次回は、通信構造やタイミング、フレーム構造など、プロトコルの詳細についてもう少し説明します。(次回に続く)

【 筆者紹介 】
ベクター・ジャパン株式会社 開発ツール部 チームリーダー
丹野 清嗣(たんの きよつぐ)

ベクター・ジャパン 開発ツール部のチームリーダとして、CAN、LIN、FlexRayなどの車載ネットワークに対応した開発ツールやハードウェア・インターフェイスの提供、サポート業務に従事している。
ベクター・ジャパン
http://www.vector-japan.co.jp/
ベクターFlexRayソリューション
http://www.vector.com/vj_flexray_solutions_jp.html

前のページへ 1|2       

Copyright © ITmedia, Inc. All Rights Reserved.