(57)【要約】  ノードコンピュータを含む分散リアルタイムコンピュータシステムのための通信スケジュールを設定するための方法は、（ａ）クラスタ（ＣＬＵ）のノード（ＫＲ１．．．ＫＲ５）間の基本的通信を可能にするために必要な全てのパラメータを含むグリッド（ＲＡＳ）を形成し、（ｂ）不変コンポーネント（ＫＲ２；ＫＲ２、ＫＲ３）として使用される全ての計画ノードのためのノード通信スケジュール（ＫＰＧ；ＫＰ１、ＫＰ２）をグリッド（ＲＡＳ）から導出し、グリッドの全てのパラメータをコピーし、かつノード特有パラメータを追加し、（ｃ）グリッドの全てのパラメータおよび不変コンポーネントのノード特有パラメータに加えて、クラスタの残りのノードに関するパラメータを含むクラスタ通信スケジュール（ＣＰ１、ＣＰ２；ＣＬ１、ＣＬ２）を、ノード通信スケジュール（ＫＰＧ；ＫＰ１、ＫＰ２）から導出する、ステップを含む。【選択図】図２及び図５
2008514041.tif 000002
【特許請求の範囲】
【請求項１】
ノードコンピュータを含む分散リアルタイムコンピュータシステムのための通信スケジュールを設定するための方法であって、
クラスタ（ＣＬＵ）のノード（ＫＲ１．．．ＫＲ５）間の基本的通信を可能にするために必要な全てのパラメータを含むグリッド（ＲＡＳ）がステップ（ａ）で形成される方法において、
ステップ（ｂ）で、不変コンポーネント（ＫＲ２；ＫＲ２、ＫＲ３）として使用するように計画された全てのノードのためのノード通信スケジュール（ＫＰＧ；ＫＰ１、ＫＰ２）が前記グリッド（ＲＡＳ）から導出され、グリッドの全てのパラメータがコピーされ、かつノード特有パラメータが追加され、
ステップ（ｃ）で、前記グリッドの全てのパラメータおよび前記不変コンポーネントのノード特有パラメータに加えて、前記クラスタの残りのノードに関するパラメータを含むクラスタ通信スケジュール（ＣＰ１、ＣＰ２；ＣＬ１、ＣＬ２）が、ノード通信スケジュール（ＫＰＧ；ＫＰ１、ＫＰ２）から導出される、ことを特徴とする方法。
【請求項２】
前記グリッド（ＲＡＳ）が既存の通信スケジュールから抽出されることを特徴とする、請求項１に記載の方法。
【請求項３】
前記ノード通信スケジュール（ＫＰ１、ＫＰ２）が前記クラスタの２種類以上の不変コンポーネントに対して形成されることを特徴とする、請求項１または２に記載の方法。
【請求項４】
クラスタ通信スケジュール（ＣＰ１、ＣＰ２；ＣＬ１、ＣＬ２）の少なくとも２つのバリアントが形成されることを特徴とする、請求項１なし３のいずれか一項に記載の方法。
【請求項５】
通信スケジュールが自動車のノードコンピュータのクラスタに対して形成されることを特徴とする、請求項１ないし４のいずれか一項に記載の方法。
【請求項６】
請求項１ないし５のいずれか一項に記載の方法によって作成されたクラスタ通信スケジュール（ＣＰ１、ＣＰ２；ＣＬ１、ＣＬ２）。
【請求項７】
コンピュータによって読み出すことができ、かつ請求項１ないし５のいずれか一項に記載の方法を実行するためのコンピュータプログラムを含むデータ媒体。
【請求項８】
コンピュータによって読み出すことができ、かつ請求項６に記載の通信スケジュール（ＣＰ１、ＣＰ２；ＣＬ１、ＣＬ２）を含むデータ媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ノードコンピュータを備えた分散リアルタイムコンピュータシステムのための通信スケジュールを確立するための方法に関する。
【背景技術】
【０００２】
通信スケジュールは、以下で「クラスタ」と呼ぶ分散型時間トリガ式リアルタイムコンピュータアーキテクチャ内で、明瞭かつ一意の時間トリガ通信を規定するために必要である。
【０００３】
分散型時間トリガ式リアルタイムシステムは、とりわけ、自動車または航空機で使用される。そのようなシステムは、例えば次の文書に記載されている。
【特許文献１】米国特許第5694542号明細書
【特許文献２】米国特許第4866606号明細書
【特許文献３】欧州特許第1222542号明細書
【特許文献４】米国特許第5887143号明細書
【特許文献５】国際公開第WO02/099643A3号
【特許文献６】国際公開第WO2004/023302号
【０００４】
分散型時間トリガ式リアルタイムシステム用のバスプロトコルは、さらに次の文書に記載されている。
【非特許文献１】http://www.tttech.comで入手可能なＴＴＰ：ＴＴＰ／Ｃプロトコル仕様書
【非特許文献２】http://www.flexray.comで入手可能なＦｌｅｘＲａｙ：ＦｌｅｘＲａｙ通信システムプロトコル仕様書
【非特許文献３】ＴＴＣＡＮ（ＣＡＮに関する時間トリガ式通信）：ＩＳＯ１１８９８−１
【０００５】
通信スケジュールに関する詳細情報も、次の文書から入手可能である。
【非特許文献４】Kopetz,H.(1997). Real-Time Systems, Design Principles for Distributed Embedded Applications;ISBN:0-7923-9894-7,Boston,Kluwer Academic Publishers
【非特許文献５】Kopetz、H.,Bauer,G. The Time Triggered Architecture, Proceedings of the IEEE Vol.91,No.1,Jan2003,pp.112-126
【０００６】
使用する専門用語に関連して、次に短い定義を与える。
【０００７】
通信スケジュール：
時間トリガ通信の一意の決定に必要な全てのパラメータの和を含む。これらは少なくとも次の要素から構成される。
＊スロットのサイズ、全てのスロットに対する送信ノードの割当て
＊通信ラウンド数
＊スロット内のビット位置および全ての個別メッセージの長さ
＊例えばスロット間の待ち時間の長さのような追加のプロトコル依存パラメータ
【０００８】
クラスタ通信スケジュール：
ノード通信スケジュールとは異なり、これのためのパラメータは完全であり、したがって全てのノードにそっくりそのまま利用可能である。
【０００９】
ノード通信スケジュール：
これは、ノードを構成するのに適切であってそれを通信可能にする、通信スケジュールのパラメータサブセットを指す。
【００１０】
スロット：
特定のノードに一意に割り当てられる時間トリガ通信の一定期間。この特定のノードだけがこの期間内にメッセージを送信することができる。
【００１１】
クラスタ：
ノードおよび通信システムから構成され、それを介してノードが通信スケジュールに従ってメッセージを交換することのできる、分散型時間トリガ式リアルタイムシステムの簡略語。
【００１２】
ノード：
統合電子コンピュータ。ノードは、時間トリガ通信チャネルを介して、同一クラスタ内の他のノードと通信する。
【００１３】
グリッド：
この用語は、本発明の文脈では、メタ通信スケジュールに対して使用される。それは、本発明の範囲内で様々な通信スケジュール間の互換性を確立するために必要なパラメータの和を指す。
【００１４】
不変コンポーネント：
本発明においては、この用語は、同一ソフトウェアおよび同一ノード通信スケジュールを実現する様々なクラスタで変更せずに使用することのできるノードを指す。
【００１５】
クラスタバリアント：
クラスタバリアントおよびオリジナルクラスタが少なくとも１つの共通ノードタイプ（不変コンポーネント）を有する場合、クラスタバリアントは、別のクラスタのバリアントである。
【００１６】
例えば自動車でクラスタを使用する場合、個々のノードは、例えばエンジン制御、空調システムの制御、座席調節の制御、排気ガス浄化等のような様々な用途について個々に関連付けられる。自動車に異なる機器および装備が提供される場合には、クラスタバリアントを使用することが必要になるが、それは通信スケジュールに変動をもたらす。したがって、同一ノードコンピュータが、異なるバリアントでは、実際にそれらが相互に異なるように、異なる通信スケジュールを持たなければならない。これは、その後に通信スケジュールをノードコンピュータにロードすることができるようにするか、あるいは各クラスタバリアントにノードバリアントを提供しなければならないので、クラスタバリアントの大規模生産に不都合な複雑さおよびコストをもたらす。通信スケジュールをロードするプロセスは通常、生産作業台上で行なわなければならず、時間がかかり、ロジスティックの問題をもたらす。各クラスタに対し様々なノードバリアントを設け格納することは同様に、当然、コストに跳ね返る。
【００１７】
したがって、異なるクラスタバリアントに対するいかなる変更も無しに適用することのできる、不変コンポーネントを使用する手段を見出す必要がある。原則的に、ノードコンピュータはまた、それらの通信スケジュールが特定のクラスタを正確に反映していない場合でも、通信することができる。ノードの全ての通信相手同士がノードのスケジュールに従ってメッセージを送受信する限り、通信は機能することができる。
【発明の開示】
【００１８】
本発明の目的は、不変コンポーネントの使用を可能にする通信スケジュールを生成するための方法を提供することである。
【００１９】
この目的は、請求項１に記載の方法によって達成される。
【００２０】
本発明の方法の特別な利点は、正しい通信スケジュールを、「試験」する必要なく、迅速かつ建設的に作成することができることである。
【００２１】
不変コンポーネントを使用してクラスタバリアントを構成することができるためには、現在、マスタ通信スケジュールを作成する必要があり、そこでスロットおよびメッセージの熟考および巧みな配分により、ノードを複数のバリアントで使用することができる。しかし、この作業は誤りを生じやすく、パラメータの試行錯誤的操作を伴い、各組合せが実際に機能するとは限らない。対照的に、本発明の方法は、互換性通信スケジュールを設定することによって、全てのクラスタバリアントのノードの正しいインタラクションを保証する。
【００２２】
本発明の方法は、すでに存在する通信スケジュールからグリッドを抽出（コピー）すると、多くの場合、簡素化される。
【００２３】
本発明の方法は、ノード通信スケジュールがクラスタの２つ以上の不変コンポーネントに対して作成されるときに、特に信頼でき、かつ時間が節約される。
【００２４】
同じことは、クラスタ通信スケジュールの少なくとも２つのバリアントが形成される、本発明の１つの実施形態に当てはまる。
【００２５】
自動車におけるノードコンピュータのクラスタに対して通信スケジュールを作成するときに、それによってコスト削減を達成することができるので、特に有利である。
【００２６】
本発明はさらに、プログラムがコンピュータで実行されるときに請求項１ないし５の全てのステップを実行するためのプログラムコードリソースを持つコンピュータプログラム、請求項１ないし５に記載の方法の１つに従って作成されたクラスタ通信スケジュール、記載したタイプのコンピュータプログラムを用いて作成されたクラスタ通信スケジュール、コンピュータによって読み出すことができ、かつ記載したタイプのコンピュータプログラムを含むデータ媒体、ならびにコンピュータによって読み出すことができかつ本発明の方法を用いて作成された通信スケジュールを含むデータ媒体にも関する。
【発明を実施するための最良の形態】
【００２７】
以下、本発明を図面に示す例示的実施形態に関連して詳述する。
【００２８】
図１を参照すると、簡潔にクラスタと呼ばれる、ノードコンピュータを含む分散リアルタイムコンピュータシステムの１例が最初に示されている。該システムは、バスＢＵＳを介して相互に通信することのできる、例えば５つのノードコンピュータＫＲ１．．．ＫＲ５を含む。ノードコンピュータＫＲ１．．．ＫＲ５は、周辺装置ＰＥ１．．．ＰＥ５と通信する。
【００２９】
ノードコンピュータＫＲ１は、空調システムのコントローラとすることができ、周辺装置ＰＥ１は、例えば空調コンプレッサ、温度センサ、湿度センサ等のような空調システムを含むことができる。
【００３０】
ノードコンピュータＫＲ２は例えば自動車のドアコントローラとすることができ、周辺装置ＰＥ２がドアの構成部品、例えばドア内のスイッチ、サイドミラー、パワーウィンドモータ等とすることができる。
【００３１】
ノードコンピュータＫＲ３は、考慮中の自動車のシートコントローラとすることができ、周辺装置ＰＥ３はシート構成部品、例えばシート内のスイッチ、調整モータ等を含むことができる。
【００３２】
ノードコンピュータＫＲ４は、空調バルブコントローラとすることができ、周辺装置ＰＥ４はベンチレーションバルブ、例えばファンモータ、バルブ調節手段等を含むことができる。
【００３３】
ノードコンピュータＫＲ５および関連周辺装置ＰＥ５はここでは考慮せず、「予備」とみなすことができる。
【００３４】
分散リアルタイムコンピュータシステムは、図１ではＣＬＵとして表記される。
【００３５】
自動車の実施例を続けると、様々な設計のドア、シート、および空調システムがある。例えば豪華設計では、ドアはシートおよび空調システムと通信し、メモ機能がウイングミラー、ドア、およびシート、ならびに所望の室内温度を調節する。これらのオプションはモデルの単純なバリアントでは利用できないが、空調コントローラは常に空調バルブコントローラと通信する。様々なバリアント、例えば２種類のドア、３種類のシート、２種類の空調システム等々のため、無数の組合せがあり、現在の実施例には１２のバリエーションがある。各クラスタバリアントをコントローラバリアントとして処理しようとした場合、この実施例では、異なる機能を有する２つだけの代わりに、１２のドア制御装置を設けることが必要になる。したがって、関連自動車の様々なモデルで変更無しに使用することのできる不変コンポーネントの使用は、検討に値する。
【００３６】
図２ないし５は、通信スケジュールを作成するための本発明に係る方法の第１実施例を示す。まず始めに、第１ステップ（図２）で、グリッドＲＡＳが形成される。そのようなグリッドはスクラッチから発展させることができ、あるいは既存の通信スケジュールから形成する、言わばそこから「抽出」することができる。ここで、例えばグリッドは、通信スケジュールが送信スロットサイズＳＬ１、ＳＬ２、ＳＬ３、ＳＬ４、およびＳＬ５を持つ５つのトランスミッタを含むことを定義する。グリッドはまた、通信スケジュールが４ラウンドＲＵ１．．．ＲＵ４から成ることをも定義する。さらに、小さいボックスＰＡＲの形で表わされた他のパラメータ（補足パラメータ）も定義される。これらのパラメータＰＡＲは送信速度、物理伝送プロトコル（伝送媒体、コーディング）、および例えばスロット間および／またはラウンド間の待ち時間のような、それぞれの伝送プロトコルに依存する他のパラメータを含む。
【００３７】
次のステップで、不変コンポーネントとして使用するように計画された全てのノード、本実施例ではノードコンピュータＫＲ２、のためのノード通信スケジュールＫＰＧが、グリッドＲＡＳから導出され、プロセスで、グリッドの全てのパラメータが受け入れられ、ノード特定的パラメータが追加される。図３は、ノードが特定のスロットＳＬ２で送信する一方、送信されるメッセージＮＡＲが、サイクルおよび／またはラウンドに対するそれらの位置として、かつスロットにおけるそれらのビット位置で定義されることを定義する、そのようなノード通信スケジュールＫＰＧの基礎を示す。ノード通信スケジュールＫＰＧはまた、ノードが特定の着信メッセージ、すなわち現在のケースではラウンドＲＵ１および／またはＲＵ３のスロットＳＬ１で２つのメッセージＥＧＮが予想されることをも定義する。
【００３８】
このノード通信スケジュールＫＰＧを持つノードは今、同一グリッドから各々導出しなければならない異なるクラスタで使用することができる。図４および５は、ノードＫＲ２を不変コンポーネントとして使用する２つの異なるクラスタバリアントを示す。グリッドパラメータは今、ノード通信スケジュールＫＰＧならびにクラスタ通信スケジュールＣＰ１およびＣＰ２それぞれの両方で同一であるので、原則として、通信を開始することができる。ノード通信スケジュールＫＰＧのクラスタバリアントの２つの通信スケジュールＣＰ１、ＣＰ２への転写は、不変コンポーネントによって要求される全てのメッセージが各バリアントの正しい位置でも得られることを確実にする。
【００３９】
図２ないし５は通信スケジュールの重要な特徴を描いており、上述した追加パラメータは図３ないし図５に一般的にボックスとして提示され、ＰＡＲとして表記されている。不変コンポーネントの着信および発信メッセージはＮＧで示される。
【００４０】
グリッドＲＡＳのパラメータに関する限り、それらはクラスタ通信スケジュールＣＰ１、ＣＰ２のパラメータの部分集合である。これらのグリッドパラメータは、メッセージの受信に関し、クラスタのノードＫＲ１．．．ＫＲ５の間の時間トリガ通信を可能にするために理論的に必要な全てのパラメータを含む。これらのパラメータは少なくとも以下を含む。
＊ＩＳＯ／ＯＳＩ層モデルによる物理層のパラメータ。上述の通り、正確なパラメータは使用するプロトコルに依存し、伝送速度、使用するビット伝送プロトコル、コーディング等に関係する。
＊スロットのサイズ
スロットの長さは使用するプロトコルに依存する。例えば、ＴＴＰプロトコルのスロットは様々な長さを有するが、ＦｌｅｘＲａｙプロトコルでは、時間トリガスロットは全て同一長さである。
＊セグメント、つまり通信スケジュールの区画のサイズは、それぞれのプロトコルおよび所要ネットワークアイドル時間にも依存する。ＴＴＰプロトコルでは、フレーム間ギャップ（スロット間の待ち時間）のサイズがあるが、ＦｌｅｘＲａｙプロトコルでは、それは静的および動的セグメントのサイズであり、考慮しなければならないシンボルウィンドウおよびネットワークアイドル時間の長さでもある。ＴＴ  ＣＡＮプロトコルでは、専用ウィンドウおよび調整ウィンドウの位置および長さがある。
＊通信ラウンド数
【００４１】
これ以外に、使用する実際の時間トリガ送信プロトコルに応じて、かつ実際の通信コントローラハードウェアに応じて、基本的通信を可能にするために必要な他のパラメータがある。したがって、そのようなパラメータもグリッドパラメータＲＡＳに属する。
【００４２】
グリッドパラメータは、望ましい場合は混合形を取ることが可能なツール（ユーティリティまたはサービスプログラム）を利用して、既存のクラスタ通信スケジュールから作成または導出することができる。したがって、既存ノードのパラメータを使用しかつ拡大して、クラスタ通信スケジュールを作成することができ、そこでこれらのノードを他のノードと一緒に使用することができる。
【００４３】
グリッドから導出されたノード通信スケジュールＫＰＧは、次のパラメータから構成される。
＊特定グリッドＲＡＳに対するポインタ
これにより、ノード通信スケジュールＫＰＧは前記グリッドから導出されるとみなされ、グリッドの全てのパラメータはノード通信スケジュールに暗黙的に転写される。
＊ノードの送信スロットの決定
＊送信されるメッセージの完全な定義、つまり送信の時間、長さ等
＊ノードの着信メッセージのリスト
着信メッセージはそれぞれスロット、通信スケジュールのサイクル（ラウンド）に対するそれらの位置、およびスロット内のそれらのビット位置によって定義される。
【００４４】
同一グリッドから導出されたノード通信スケジュール、つまりこの例におけるＫＰＧは、クラスタ通信スケジュールＣＰ１、ＣＰ２にコピーすることができる。ここで再び、メッセージ位置に重複が無いこと、または送信されるメッセージの定義がコピーされたノード通信スケジュールＣＰ１、ＣＰ２の全体的要件を満たすことを確実にするために、転写はツールによってサポートされる。最終的に作成されるクラスタ通信スケジュールＣＰ１、ＣＰ２は、次のパラメータから構成される。
＊特定グリッドに対するポインタ
これにより、クラスタ通信スケジュールＣＰ１、ＣＰ２もまたグリッドから導出されたとみなされ、グリッドの全てのパラメータがクラスタ通信スケジュールに暗黙的にコピーされる。
＊ノード数
ノード数は、通信スケジュールの生成のこの（終了）段階では固定値を有する。まだ利用可能な空きスロットがあれば、当然、後でいつでも通信スケジュールを拡大することが可能である。
＊送信ノードへのスロットの割当て
＊頻繁に上述したパラメータに従って送信される全てのメッセージの完全な定義
【００４５】
図６ないし１０に掲げた図は再び、簡潔を期すために図１に示したクラスタに基づいており、図２ないし５に基づくスケジュールとの違いは、単一の不変コンポーネントの代わりに２つの不変コンポーネントを使用することに存在する。
【００４６】
ノードコンピュータＫＲ１、つまり本実施例における空調システムのコントローラは、スロットＳＬ１を占める。空調の制御をもたらすことに加えて、コントローラは、スイッチランプの減光に関する制御メッセージを送信するように適応することができ、それはとりわけノードコンピュータＫＲ２およびＫＲ３によってメッセージＥＮ１／２としても読まれる。加えて、ノードコンピュータはまた、車外温度に関するメッセージを送信するように適応することもでき、それはドアコントローラ、つまりノードコンピュータＫＲ２によってメッセージＥＮ１として受信され、かつ処理される。
【００４７】
ノードコンピュータＫＲ２、つまり本実施例におけるドアコントローラは、スロットＳＬ２を占有し、メッセージＡＮ１を送信し、メッセージＥＮ１を受信する。
【００４８】
ノードコンピュータＫＲ３、つまり本実施形態におけるシートコントローラは、スロットＳＬ３を占有し、メッセージＡＮＬを送信し、メッセージＥＮ２を受信する。
【００４９】
通信スケジュールＫＰ１（図７）はノードコンピュータＫＲ２、つまりドアコントローラに関係し、通信スケジュールＫＰ２（図８）はノードコンピュータＫＲ３、つまりシートコントローラに関連付けられる。２つの通信スケジュールＫＰ１、ＫＰ２は両方とも不変コンポーネントを含み、ノードコンピュータＫＲ２は第１の不変コンポーネントに関連付けられ、ノードコンピュータＫＲ３は第２の不変コンポーネントに関連付けられる。
【００５０】
図９および１０は次に、クラスタ通信スケジュールＣＬ１およびＣＬ２それぞれの２つのバリアントを示し、スロットＳＬ１の様々な出力メッセージは異なるダンパ／ブロワコントローラに関係する。この実施例では受信メッセージのみが関係するので、ダンパコントローラＫＲ４によって送信されるメッセージ、および「予備ノード」ＫＲ５は、スロットＳＬ４およびＳＬ５それぞれに図示されていない。
【００５１】
実施例はこのように、異なる空調システムが、たとえバス上の通信が異なっても、結果的に必ずしも異なるシートおよびドアコントローラをもたらす必要はないことを例証する。つまりノードコンピュータＫＲ２およびＫＲ３は不変コンポーネントとして設計される。
【図面の簡単な説明】
【００５２】
【図１】５つのノードコンピュータを含むクラスタの概略図である。
【図２】５つのスロットの各々に対し４ラウンドから成るグリッドの略図である。
【図３】図２に示したグリッドから導出される不変コンポーネントの通信スケジュールを示す図である。
【図４】図２に示した不変コンポーネントの通信スケジュールを統合したクラスタ通信スケジュールの第１バリアントを表わす図である。
【図５】図２に係る不変コンポーネントの通信スケジュールを同様に統合したクラスタ通信スケジュールの別のバリアントを示す図である。
【図６】図２に描かれたグリッドと同様であるが、異なるスロット配分を持つグリッドの略図である。
【図７】第１タイプの不変コンポーネントに対し、図６のグリッドから導出される通信スケジュールを示す図である。
【図８】第２タイプの不変コンポーネントに対し、図６のグリッドから導出される通信スケジュールを示す図である。
【図９】図７および８に係る両タイプの不変コンポーネントの通信スケジュールを統合したクラスタ通信スケジュールの第１バリアントを表わす図である。
【図１０】図７および８に係る両方の通信スケジュールを同様に統合したクラスタ通信スケジュールの第２バリアントを示す。
【図１】
2008514041.tif 000003
【図２】
2008514041.tif 000004
【図３】
2008514041.tif 000005
【図４】
2008514041.tif 000006
【図５】
2008514041.tif 000007
【図６】
2008514041.tif 000008
【図７】
2008514041.tif 000009
【図８】
2008514041.tif 000010
【図９】
2008514041.tif 000011
【図１０】
2008514041.tif 000012
【国際調査報告】
2008514041.tif 000013
2008514041.tif 000014
2008514041.tif 000015
2008514041.tif 000016