(57)【要約】  複数のノード（１００）間、特に複数の電子制御ユニット間の通信を監視するバスガーディアン（３０）を提供するために、バスガーディアン（３０）を、少なくとも一つの通信媒体（１０）、特に少なくとも一つのチャネル（１２）及び少なくとも一つの他の付加的なチャネル（１４）のノード（１００）の間でメッセージを送信する少なくとも１サイクルのタイムトリガ方式の通信媒体を監視するように設計されるとともに、少なくとも一つの通信コントローラ（４０）に割り当てられ、通信コントローラ（４０）は、通信媒体アクセススケジュールを具え、バスガーディアン（３０）及び対応する方法は、通信スケジュールの事前の知識も設定パラメータも必要とせず、通信の立上げ中でも通信コントローラ（４０）の通信メディアアクセススケジュール（４０）の通信媒体アクセススケジュールを監視し、バスガーディアン（３０）は、特に第１のサイクル内で通信媒体アクセススケジュールについて知ることができ、バスガーディアンは、例えば通信の始動中に、少なくとも一つのあり得るスケジュールバイオレーション（ＳＶ１，ＳＶ２，ＳＶ３）について、特に通信媒体アクセススケジュールからの少なくとも一つの偏移について知った知識を利用する。
2008524903.tif 000002
【特許請求の範囲】
【請求項１】
複数のノード（１００）間、特に複数の電子制御ユニット間の通信を監視するバスガーディアン（３０）であって、
少なくとも一つの通信媒体（１０）、特に少なくとも一つのチャネル（１２）及び少なくとも一つの他の付加的なチャネル（１４）上でノード（１００）間のメッセージの送信を行う少なくとも１サイクルのタイムトリガ方式の通信媒体アクセススケジュールを監視するように設計され、
少なくとも一つの通信コントローラ（４０）に割り当てられ、前記通信コントローラ（４０）が通信媒体アクセススケジュールを具えるバスガーディアンにおいて、
前記バスガーディアン（３０）が、特に第１のサイクル内で前記通信メディアアクセススケジュールについて知ることができ、
前記バスガーディアン（３０）が、例えば、前記通信の始動中に、少なくとも一つのあり得るスケジュールバイオレーション（ＳＶ１，ＳＶ２，ＳＶ３）について、特に前記通信媒体アクセススケジュールからの少なくとも一つの偏移について知った知識を利用することを特徴とするバスガーディアン。
【請求項２】
請求項１記載のバスガーディアンにおいて、
少なくとも一つのクロックユニット（３２）からの少なくとも一つのクロック信号（３０３）、及び／又は、
任意の状態（３４）からの少なくとも一つのリセット信号（３０４）、及び／又は、
前記通信コントローラ（４０）からの少なくとも一つのアーミング信号（４０３）、特に少なくとも一つのバスガーディアンアーミング信号（ＡＲＭ）が供給されることを特徴とするバスガーディアン。
【請求項３】
少なくとも一つの通信媒体（１０）、特に少なくとも一つのチャネル（１２）及び少なくとも一つの他の付加的なチャネル（１４）によって相互接続された複数のノード（１００）を有する分散型通信システム（２００，２００’）のノード（１００）、特に電子制御ユニットにおいて、少なくとも一つの請求項１又は２記載のバスガーディアン（３０）を具えることを特徴とするノード。
【請求項４】
請求項３記載のノードにおいて、
少なくとも一つのバスドライバ（２０）、特に少なくとも一つのトランシーバユニットが、
前記通信コントローラ（４０）と、
前記バスガーディアン（３０）と、
前記通信媒体（１０）とに接続され、
前記バスガーディアン（３０）によって制御、特にイネーブル及びディスエーブルされ、
前記通信コントローラ（４０）から送信される少なくとも一つの信号（４０２）、特に少なくとも一つの送信データ入力信号（ＴｘＤ）と、
前記通信コントローラ（４０）から前記バスガーディアン（３０）に送信される少なくとも一つの送信信号（４２３）、特に少なくとも一つの送信データイネーブル信号（ＴｘＥＮ：アクティブロー）と、
前記バスガーディアン（３０）から送信される少なくとも一つの制御信号（３０２）、特に少なくとも一つのバスガーディアンイネーブル入力信号（ＢＧＥＮ：アクティブハイ）とが供給され、
前記通信媒体（１０）を通じてメッセージを送信し及び受信し、
少なくとも一つの信号（２０４）、特に少なくとも一つの受信データ出力信号ＲｘＤを前記通信コントローラ（４０）に送信し、
少なくとも一つの受信信号（２４３）、特に少なくとも一つの受信データイネーブル出力信号ＲｘＥＮを前記通信コントローラ（４０）及び前記バスガーディアン（３０）に送信するように設計されたことを特徴とするノード。
【請求項５】
請求項３又は４記載のノードにおいて、
少なくとも一つのホストユニット（６０）が、
前記バスドライバ（２０）と、
前記バスガーディアン（３０）と、
前記通信コントローラ（４０）とに接続され、
少なくとも一つの信号（６０２）、特に少なくとも一つの制御信号を前記バスドライバ（２０）に送信し、
少なくとも一つの信号（２０６）、特に少なくとも一つの状態データ信号を前記バスドライバ（２０）から受信し、
少なくとも一つの信号（３０６）、特に少なくとも一つの誤りフラグ表示信号（ＥＲＲＮ）を前記バスガーディアン（３０）から受信し、
少なくとも一つの信号（４０６）を前記通信コントローラ（４０）に送信し及び／又は少なくとも一つの信号（４０６）を前記通信コントローラ（４０）から受信するように設計され、及び／又は、
少なくとも一つの電源ユニット（５０）、特に少なくとも一つのバッテリが、グランド（ＧＮＤ）及びバスドライバ（２０）に接続され、及び／又は、
少なくとも一つの電圧調整器（５２）が、
前記電源ユニット（５０）と、
前記ホストユニット（６０）と、
前記通信コントローラ（４０）と、
前記バスドライバ（２０）とに接続されたことを特徴とするノード。
【請求項６】
請求項３から５のうちの少なくとも１項による少なくとも二つのノード（１００）を有する分散型フォールトトレラントな及び／又はタイムトリガ方式の通信システム（２００，２００’）。
【請求項７】
複数のノード（１００）間、特に複数の電子制御ユニット間の通信を監視する方法であって、
少なくとも一つの通信コントローラ（４０）に割り当てられた少なくとも一つの周期的なタイムトリガ方式の通信媒体アクセススケジュールの基づいて、メッセージを前記ノード（１００）間で送信するステップと、
少なくとも一つのバスガーディアン（３０）によって前記通信媒体アクセススケジュールを監視するステップとを具える方法において、
前記バスガーディアン（３０）が、特に第１のサイクル内で前記通信メディアアクセススケジュールについて知ることができ、
前記バスガーディアン（３０）が、例えば、前記通信の始動中に、少なくとも一つのあり得るスケジュールバイオレーション（ＳＶ１，ＳＶ２，ＳＶ３）について、特に前記通信媒体アクセススケジュールからの少なくとも一つの偏移について知った知識を利用することを特徴とする方法。
【請求項８】
請求項７記載の方法において、
前記バスガーディアン（３０）が、特に電源（３６）をオンに切り替えた後に、
［ｉ］少なくとも一つのリセット信号（３０４）が任意の状態（３４）から供給された後にウェークアップし、
［ii］少なくとも一つのアーミング信号（４０３）、特に少なくとも一つのバスガーディアンアーミング信号（ＡＲＭ）の第１の立下り縁が前記通信コントローラ（４０）から供給された後に始動し、
［iii］前記アーミング信号（４０３）の第２の立下り縁が供給された後にガードに入り、
［iv］あり得るスケジュールバイオレーション（ＳＶ１，ＳＶ２，ＳＶ３）の少なくとも一つの検出の際にフェイルサイレントになることを特徴とする方法。
【請求項９】
請求項８記載の方法において、
ウェークアップするステップ［ｉ］が、少なくとも一つのバスドライバ（２０）、特に少なくとも一つのトランシーバユニットの少なくとも一部、例えば送信ユニットをイネーブルするステップを具え、
前記ステップ［ｉ］の間、第１のタイプのスケジュールバイオレーション（ＳＶ１）を、
前記通信コントローラ（４０）から前記バスドライバ（２０）及び前記バスガーディアン（３０）への少なくとも一つの送信信号（４２３）、特に少なくとも一つの送信データイネーブル信号（ＴｘＥＮ：アクティブＬＯＷ）の予め決定された量の負のエッジの後、及び／又は、
前記バスドライバ（２０）から前記通信コントローラ（４０）及び前記バスガーディアン（３０）への少なくとも一つの受信信号（２４３）、特に少なくとも一つの受信データイネーブル出力信号（ＲｘＥＮ）が論理ロー状態である間に前記送信信号（４２３）の負のエッジの検出の際、及び／又は、
少なくとも一つの予め決定された期間、特に６マイクロ秒以下の所定のタイムアウトより長い間前記送信信号（４２３）が論理ロー状態であるとき、及び／又は、
前記バスガーディアン（３０）に割り当てられた少なくとも一つのクロックユニット（３２）が停止するときに検出できることを特徴とする方法。
【請求項１０】
請求項８又は９記載の方法において、
始動するステップ［ii］が、
前記バスドライバ（２０）、特にトランシーバユニットの少なくとも一部、例えば送信ユニットをイネーブルにするステップと、
周期的な時間について知るためにクロックサイクルを計数するステップと、
前記送信信号（４２３）の第１の立下り縁までクロックサイクルを計数するステップとを具え、
特に第１のサイクル中、ダイナミックフレームが送信されず、フレームが、少なくとも一つのチャネル（１２，１４）上で少なくとも一つの識別子により少なくとも一つのスロットに送信される全ての情報を具え、
前記ステップ［ii］の間、第２のタイプのスケジュールバイオレーション（ＳＶ２）を、
前記送信信号（４２３）の所定の量の負のエッジの後、及び／又は、
前記受信信号（２４３）が論理ロー状態である間に前記送信信号（４２３）の負のエッジを検出する際、及び／又は、
少なくとも一つの予め決定された期間、特に約２．０４７ミリ秒の所定タイムアウトより長い間前記送信信号（４２３）が論理ロー状態であるとき、及び／又は、
前記サイクルの時間が約１６ミリ秒の所定のタイムアウトより長いとき、及び／又は、
前記クロックユニット（３２）が停止するときに検出できることを特徴とする方法。
【請求項１１】
請求項８から１０のうちの少なくとも１項に記載の方法において、
ガードするステップ［iii］が、
前記バスドライバ（２０）、特にトランシーバユニットの少なくとも一部、例えば送信ユニットをイネーブルにするステップと、
サイクル時間を監視するためにクロックサイクルを計数するステップとを具え、
前記ステップ［iii］の間、第３のタイプのスケジュールバイオレーション（ＳＶ３）を、
前記送信信号（４２３）の所定の、特にＸｃｙｃｌｅ番目の負のエッジの後、及び／又は、
前記受信信号（２４３）が論理ロー状態である間に前記送信信号（４２３）の負のエッジを検出する際、及び／又は、
少なくとも一つの予め決定された期間、特に約２．０４７ミリ秒の所定タイムアウトより長い間前記送信信号（４２３）が論理ロー状態であるとき、及び／又は、
前記サイクル時間が、前記ステップ［ii］の間に知った少なくとも１サイクルの時間からの予め決定された範囲を超えて偏移するとき、及び／又は、
前記アーミング信号（４０３）の立下り縁と前記送信信号（４２３）の立下り縁との間の時間帯が、前記ステップ［ii］の間に知った少なくとも１サイクルの時間からの予め決定された範囲を超えて偏移するとき、及び／又は、
前記クロックユニット（３２）が停止するときに検出できることを特徴とする方法。
【請求項１２】
請求項７から１１のうちの少なくとも１項に記載の方法において、
フェイルサイレントになるステップ［iv］が、
前記バスドライバ（２０）、特にトランシーバユニットの少なくとも一部、例えば送信ユニットをイネーブルにするステップと、
リセット信号（３０４）以外の入力信号を監視しないステップとを具えることを特徴とする方法。
【請求項１３】
少なくとも一つのコンピュータ、特に少なくとも一つのマイクロプロセッサ、例えば通信コントローラ（４０）上で実行可能なコンピュータプログラムにおいて、前記コンピュータプログラムが、請求項７から１２のうちの少なくとも１項による方法を実行するためにプログラムされることを特徴とするコンピュータプログラム。
【請求項１４】
請求項１３記載のコンピュータプログラムにおいて、
前記コンピュータプログラムが、
少なくとも一つのＲＯＭ（読出し専用メモリ）モジュール、
少なくとも一つのＲＡＭ（ランダムアクセスメモリ）モジュール、又は
少なくとも一つのフラッシュメモリセルに格納されたことを特徴とするコンピュータプログラム。
【請求項１５】
ノード（１００）の時間領域にエラー封じ込めを行い、特に通信媒体（１０）の上で、例えば少なくとも２チャンネル（１２，１４）の環境でノード（１００）間のメッセージの送信を行う通信システム（２００，２００’）のクロック（３２）の同期をとり、クロックのオフセットの差及びクロックのレートの差を訂正することができる、少なくとも一つの請求項１又は２に記載のバスガーディアン（３０）及び／又は少なくとも一つの請求項３から５のうちの少なくとも１項に記載のノード（１００）及び／又は少なくとも一つの請求項６記載の分散通信システム（２００，２００’）及び／又は少なくとも一つの請求項７から１２のうちの少なくとも１項に記載の方法及び／又は少なくとも一つの請求項１３又は１４記載のコンピュータプログラムの使用。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、通信システムのアーキテクチャに関し、時間領域のエラー封じ込めの際に少なくとも一つのバスガーディアンが通信システムの各ノードに対して用いられる。
【０００２】
本発明は、特に、複数のノード間、特に複数の電子制御ユニット間の通信を監視するバスガーディアンであって、
少なくとも一つの通信媒体、特に少なくとも一つのチャネル及び少なくとも一つの他の付加的なチャネル上でノード間のメッセージの送信を行う少なくとも１サイクルのタイムトリガ方式の通信媒体アクセススケジュールを監視するように設計され、
少なくとも一つの通信コントローラに割り当てられ、前記通信コントローラが通信媒体アクセススケジュールを具えるバスガーディアンに関する。
【０００３】
さらに、本発明は、そのような通信を監視する方法に関する。
【背景技術】
【０００４】
例えば車両の安全関連のアプリケーションのメッセージ交換に用いることができるタイムトリガ方式の通信システムにおいて、一時的又は永久的な局部の故障が原因でノードの一つが通信システムのノード間の通信を妨げる状況に耐えることができない。
【０００５】
そのようなタイムトリガ方式の通信システムにおけるそのような耐えられない状況を回避するために、「技術分野」の証で規定されているようなバスガーディアンが提案されている。そのような従来のバスガーディアンの機能は、例えば、Ｘ−ｂｙ  ｗｉｒｅアプリケーション用の通信システムやＦｌｅｘＲａｙ通信システムからこれまで知られている。
【０００６】
これに関連して、バスガーディアンは、通信システムのノードの一つの通信コントローラが所定の時点でデータを送信するのを回避し、これによって、データの送信を所望しないときには通信媒体を遮断する。そのような予測されない送信及び遮断の結果、他のノードの他の通信コントローラはデータを送信することができない（いわゆる「雑音発生ノード」(babbling idiot)の障害）。
【０００７】
そのような「雑音発生ノード」の障害を回避するために、従来、所定のセットの管理機能を設け、これらの全てを設定する必要がある。したがって、従来によれば、パラメータを調整するために、マイクロコントローラ、特に通信コントローラに対する高価な設定データインタフェースが必要となる。
【０００８】
上記記載に適合するシステムの例は、
文献“FlexRay International Workshop”, April 16, 17, 2002, Munich, Protocol Overview by Florian Bogenberger, Dr. Bernd Muller and Thomas Fuhrer; (cf. http://www.dismi.unimo.it/Pavan/Sistemi%20Elettronici%20Industriali/protocollo_flexray.pdf),
欧州特許明細書第１３５５４６１号、
英国特許明細書第２３８６８０４号、及び
米国特許明細書第２００４／００８１０７９号に開示されている。
【０００９】
文献”A Prototype Implementation of a TTP/C Controller” by Hermann Kopetz, Rene Hexel, Andreas Kruger, Dietmar Millinger, Roman Nossal, Andreas Steininger,  Christopher Temple, Thomas Fuhrer, Roman Pallierer and Markus Krug (cf. http://www.decomsys.com/publications/dm_rm_rp_prototypeimpl_ttpc_contr.pdf)は、ＴＰＰ／Ｃと証されるＴＴＰ（タイムトリガ方式のプロトコル）の試作品の実現を開示する。これに関連して、バスガーディアンは、ＴＴＰモジュールの要求されるフェイルサイレントの動作を確実に行う重要な役割を果たす。
【００１０】
それとは別に、欧州特許明細書大１３５５４６０号は、上記技術分野で開示されたような通信媒体アクセススケジュールを監視する方法を言及している。しかしながら、十分な管理のためには、欧州特許明細書大１３５５４６０号によるバスガーディアンは、一つ以上の設定パラメータの形態で実現される事前の知識を必要とする。
【００１１】
これまで説明した取り組みにもかかわらず、通信コントローラのタイミング障害から通信媒体を保護するために従来のバスガーディアンが高価なデータインタフェースを必要とする問題が存在する。
【発明の開示】
【００１２】
これまで説明した不都合及び欠点から開始するとともにこれまで説明した従来技術を考慮すると、本発明の目的は、
通信スケジュールの事前の知識及び設定パラメータを必要とせず、
通信の始動中でも通信コントローラの通信媒体アクセススケジュールを監視するバスガーディアン及び対応する操作方法を提供することである。
【００１３】
本発明の目的は、請求項１の特徴を具えるバスガーディアン及び請求項７記載の特徴を具える方法によって達成される。本発明の好適例及び適切な向上は、従属項にそれぞれ開示されている。
【００１４】
本発明は、原理的には、
特定のインタフェースを通じた設定パラメータセットと、
追伸スケジュールの事前の知識のいずれも有しないバスガーディアン、特にＦｌｅｘＲａｙバスガーディアンを提供するという概念に基づく。
【００１５】
換言すれば、あらゆる設定、特にあらゆる事前の設定も、高価なデータインタフェースの実現も必要としないが、それにもかかわらず、例えば通信コントローラのタイミング故障から通信媒体を保護する管理機能を提供する。
【００１６】
これを、第１のサイクル内で通信媒体アクセススケジュールについて知るようにバスガーディアンを設計することによって達成することができる。このように知った知識を、特に、少なくとも一つの許容された偏移と始動中に通信コントローラの故障によって生じた少なくとも一つの禁止された偏移との間の区別を行うために、少なくとも一つのあり得るスケジュールバイオレーションに関連して用いることができる。
【００１７】
通信媒体アクセススケジュールのサイクルのあり得る例は、周期的なデータ転送機構を具える通信サイクルである。通信サイクルの構造及びタイミングを、例えばスタティックに規定することができる。したがって、通信サイクルは、スタティックセグメント、すなわち、メッセージ、特にフレームが少なくとも一つのスタティックに規定されたＴＤＭＡ（時分割多重アクセス）形態に従って送信される通信サイクルのセグメントを具える。
【００１８】
しかしながら、通信サイクルは、スタティックセグメントだけでなくダイナミックセグメント、すなわち、メッセージ、特に特定のフレームが少なくとも一つのミニストッティングアルゴリズム(mini-slotting algorithm)に従って送信されるセグメントも具えることができる。スタティックセグメント及びダイナミックセグメントを具える通信サイクルは、スタティック情報及びイベント情報を送信することができる。
【００１９】
通信手順の開始中、ＣＣ（通信コントローラ）は、通信の始動に備え、
通信の始動の後に続き、すなわち、適切な通信エレメントを送信し、
通信スケジュールへの統合の後に続き、すなわち、クロック同期動作を実行し、
例えば誤った設定のために通信コントローラが通信スケジュールへの統合に続かなかったか否かそれ自体の機構により知ることができる。
【００２０】
その結果、バスガーディアンは、第１の（完全な）通信サイクルがＣＣ（通信コントローラ）によって正確に実行され又はＣＣ（通信コントローラ）によって中断されたかに好適に依存することができる。したがって、バスガーディアンは、ＣＣ（通信コントローラ）によって第１の通信サイクルに依存することができるとともに、通信スケジュールについて知ることができる。
【００２１】
第１の完全な通信サイクルで知った後、もっともらしいチェックに対するＦｌｅｘＲａｙプロトコル設定の制約を考慮することによって、バスガーディアンは、完全な動作を実行するとともに媒体を誤ったアクセスから防止することができる。
【００２２】
このために、本発明の好適例によれば、
少なくとも一つのクロックユニットからの少なくとも一つのクロック信号、及び／又は、
任意の状態からの少なくとも一つのリセット信号、及び／又は、
前記通信コントローラからの少なくとも一つのアーミング信号、特に少なくとも一つのバスガーディアンアーミング信号が供給される。
【００２３】
さらに、本発明は、少なくとも一つの通信媒体、特に少なくとも一つのチャネル及び少なくとも一つの他の付加的なチャネルによって相互接続された複数のノードを有する分散型通信システムのノード、特に電子制御ユニットにおいて、少なくとも一つの上記バスガーディアンを具えることを特徴とするノードに関する。
【００２４】
したがって、本発明は、そのような通信ノードに分散した又は周辺のバスガーディアンを有するという概念をサポートする。本発明の好適例によれば、通信コントローラ内のクロック同期及び誤り検出機構は、通常の通信スケジュールにおける僅かな偏移、例えば温度に対するクロックドリフトを検出することができるので、バスガーディアンは、粗い偏移、例えばクロック停止の際に介在するだけでよい。
【００２５】
通信媒体を、好適には、二つのノード間、特に少なくとも二つの通信コントローラ間の物理的な接続とする。通信媒体のあり得る例を、例えば、少なくとも二つのノードを接続する二つのチャネルを具える冗長バスとする。
【００２６】
通信媒体によって、メッセージ、特にフレームが、ノード間、特にノードの通信コントローラ間で送信される。これに関連して、フレームは、通信コントローラがチャネル上の通信媒体にアクセスできる間に送信される全ての情報を具える。
【００２７】
本発明の好適例によれば、ノードは、少なくとも一つのバスドライバ、特に、例えば少なくとも一つの送信ユニット及び少なくとも一つの受信ユニットを具える少なくとも一つのトランシーバユニットを具え、バスドライバは、通信コントローラ、バスガーディアン及び通信媒体に接続される。
【００２８】
好適には、バスドライバは、通信コントローラを通信媒体に接続する。通信媒体を通信コントローラのタイミング故障から防止するために、好適例によれば、バスドライバを、バスガーディアンによって制御、特にイネーブル及びディスエーブルすることができる。
【００２９】
このために、バスドライバを、
前記バスガーディアンによって制御、特にイネーブル及びディスエーブルされ、前記通信コントローラから送信される少なくとも一つの信号、特に少なくとも一つの送信データ入力信号（いわゆるＴｘＤ信号）と、
前記通信コントローラから前記バスガーディアンに送信される少なくとも一つの送信信号、特に少なくとも一つの送信データイネーブル信号（いわゆるＴｘＥＮ信号：アクティブロー）と、
前記バスガーディアンから送信される少なくとも一つの制御信号、特に少なくとも一つのバスガーディアンイネーブル入力信号（いわゆるＢＧＥＮ信号：アクティブハイ）とが供給されるように設計することができる。
【００３０】
さらに、好適例によれば、バスドライバを、
前記通信媒体を通じてメッセージを送信し及び受信し、
少なくとも一つの信号、特に少なくとも一つの受信データ出力信号（いわゆるＲｘＤ信号）を前記通信コントローラに送信し、
少なくとも一つの受信信号、特に少なくとも一つの受信データイネーブル出力信号ＲｘＥＮを前記通信コントローラ及び前記バスガーディアンに送信するように設計することができる。
【００３１】
さらに、好適例によれば、ノードは、少なくとも一つのアプリケーションソフトウェアが実行されるノードの一部として実現することができる少なくとも一つのホストユニットを具える。ホストユニットを、ホストユニットと通信コントローラとの間に配置された少なくとも一つのＣＨＩ（コントローラホストインタフェース）によって通信システム又は通信ネットワークから分離することができる。
【００３２】
さらに、本発明は、既に説明したような少なくとも二つのノード又は電子制御ユニットを有する分散型のフェイルトレラントな及び／又はタイムトリガ方式の通信システム又は通信ネットワークに関連する。
【００３３】
さらに、本発明は、少なくとも一つのコンピュータ、特に少なくとも一つのマイクロプロセッサ、例えば通信コントローラ上で実行可能なコンピュータプログラムにおいて、前記コンピュータプログラムが、請求項７から１２のうちの少なくとも１項による方法を実行するためにプログラムされることを特徴とするコンピュータプログラムに関する。
【００３４】
本発明の好適例によれば、前記コンピュータプログラムが、
少なくとも一つのＲＯＭ（読出し専用メモリ）モジュール、
少なくとも一つのＲＡＭ（ランダムアクセスメモリ）モジュール、又は
少なくとも一つのフラッシュメモリセルに格納される。
【００３５】
さらに、本発明は、ノードの時間領域にエラー封じ込めを行い、特に通信媒体の上で、例えば少なくとも２チャンネルの環境でノード間のメッセージの送信を行う通信システムのクロックの同期をとり、クロックのオフセットの差及びクロックのレートの差を訂正することができる、少なくとも一つの上記バスガーディアン及び／又は少なくとも一つの上記ノード及び／又は少なくとも一つの上記分散通信システム及び／又は少なくとも一つの上記方法及び／又は少なくとも一つの上記コンピュータプログラムの使用に関する。
【００３６】
既に説明したように、本発明の教示を好適に実施し及び向上する複数のオプションが存在する。このために、請求項１、請求項３、請求項７及び請求項１３に従属する請求項をそれぞれ参照されたい。本発明の更なる向上、特徴及び利点を、添付図面で例示しながら好適な実施の形態を参照して以下に詳細に説明する。
【発明を実施するための最良の形態】
【００３７】
図１〜３Ｂの対応するパーツに同一参照番号を用いる。
不要な繰り返しを回避するために、本発明の実施の形態、特徴及び利点についての以下の記載は、
（特に説明しない場合には）本発明によるバスガーディアン３０（図１参照）、すなわち、このバスガーディアン３０を設定する必要がないことと、
本発明による電子制御ユニット又はノード１００（図１参照）と、
本発明による分散ネットワークシステム２００の第１の実施の形態（図３Ａ参照）と、
及び本発明による分散ネットワークシステム２００’の第２の実施の形態（図３Ｂ参照）とに関し、全ての実施の形態は、本発明の方法（図２参照）に従って操作される。
【００３８】
図１は、通信ノードすなわちＥＣＴ（電子制御ユニット）１００を表す。そのような通信ノード１００の二つ以上は、通信システムすなわち図３Ａ，３Ｂに示すようにＲｌｅｘＲａｙ通信システム２００，２００’において接続される。
【００３９】
ノード１００は、基本的には５個のサブシステム、すなわち、
電圧調整器５２を有する給電ユニット又はバッテリ５０と、
ホストユニット６０と、
通信コントローラ４０と、
トランシーバを具え、トランシーバユニットを通じてメッセージを送信し及び／又は受信するために、通信媒体１０、すなわち、第１通信チャネル１２及び第２通信チャネル１４を具えるデータバスに接続したバスドライバ２０と、
ＦｌｅｘＲａｙプロトコルに基づくバスガーディアン３０、特に、いわゆるＢＧｗｏｐ（＝設定パラメータのないバスガーディアン）とを具える。これに関連して、ＢＧｗｏｐ３０を、タイムトリガ方式のアーキテクチャに対する最小のバスガーディアン（ＦｌｅｘＲａｙ通信システム又は通信ネットワーク２００，２００‘）として実施し、この場合、バスガーディアン３０は、あらゆる設定パラメータ又は他のあらゆる事前の知識を必要としない。
【００４０】
ＢＧｗｏｐ３０は、一般に、通信媒体１０を通信コントローラ４０のタイミング障害を防止するよう提案される。このために、ＢＧｗｏｐ３０は、通信コントローラ４０及びバスドライバ２０に接続される。さらに、ＢＧｗｏｐ３０は、プロトコル通信コントローラに依存しない。
【００４１】
特に、ＢＧｗｏｐ３０は、一時的又は連続的にメッセージを送信することによって通信コントローラ４０が通信媒体１０を遮断する（いわゆる「雑音発生ノード」の障害）を防止するために、追伸コントローラ４０の通信媒体アクセススケジュールを監視する。二つの冗長チャネル１２，１４の独立性を維持するために、ノード１００は、二つのバスドライバ２０及び二つのＢＧｗｏｐ３０を具えることもできる。
【００４２】
通信手順の立上げ中に、通信コントローラ４０が、通信の立上げに成功する、すなわち、適切な通信エレメントを送信できる場合、通信コントローラ４０は、
通信スケジュールに組み込むのに成功し、すなわち、クロック同期動作を実行し、又は
例えば、誤った設定が原因で通信スケジュールに組み込むのに成功しない。
【００４３】
通信スケジュールに組み込むのに成功しない場合、通信コントローラ４０は、それ自体によってこの障害に気付く。
【００４４】
その結果、ＢＧｗｏｐ３０は、最初に完全に行われた通信サイクルが正確に実行され又は通信コントローラ４０によって停止されることに依存する。したがって、ＢＧｗｏｐ３０は、通信スケジュールについて知ることができる。最初に完了した通信サイクルにおいて通信スケジュールを知った後にもっともらしいチェックに対するＦｌｅｘＲａｙプロトコル設定の制約をＢＧｗｏｐ３０に考慮することによって、完全な動作を実行するとともに通信媒体１０を誤ったアクセスから防止することができる。
【００４５】
図１からわかるように、ＢＧｗｏｐ３０に以下の入力信号を設ける。
通信コントローラ４０からのアーミング信号４０３すなわちバスガーディアンアーミング信号ＡＲＭ。この場合、信号ＡＲＭの立下り縁は通信サイクルの開始を表す。
送信信号４２３すなわち送信データイネーブル信号ＴｘＥＮ。この場合、
信号ＴｘＥＮの論理ロー状態は、送信アクセスを表し、
信号ＴｘＥＮは、通信コントローラ４０からＢＧｗｏｐ３０だけでなくバスドライバ２０にも送信される。
受信信号２４３すなわち受信データイネーブル出力信号ＲｘＥＮ。この場合、
信号ＲｘＥＮの論理ロー状態は、通信媒体１０が有効であることを表し、
信号ＲｘＥＮは、バスドライバ２０からＢＧｗｏｐ３０だけでなく通信コントローラ４０に送信される。
任意の状態３４（図２参照）からのリセット信号３０４．
ＢＧｗｏｐ３０に割り当てられたクロックユニット３２からのクロック信号３０３。クロック信号３０３を、ＢＧｗｏｐ３０内で発生することもできる。
【００４６】
ＢＧｗｏｐ３０は、
制御信号３０２、すなわち、バスドライバ２０の一つ以上の出力段を有効にし及び無効にするため、特に、スケジュールバイオレーションＳＶ１，ＳＶ２，ＳＶ３（図２参照）の場合に送信を無効にするためのバスドライバ２０の送信ユニットに対するバスガーディアンイネーブル入力信号ＢＧＥＮ（アクティブＨＩＧＨ）と、
ホスト６０に対する信号３０６すなわち誤りフラグ表示信号、例えば、単一ビットの「誤りなし」ＥＲＲＮ信号とを出力する。
【００４７】
図１からわかるように、バスドライバ２０は、
通信コントローラ４０から送信される信号４０２すなわち送信データ入力信号ＴｘＤが設けられ、
信号２０４すなわち受信データ出力信号ＲｘＤを通信コントローラ４０に送信するように設計される。
【００４８】
ホストユニット６０は、バスドライバ２０と、ＢＧｗｏｐ３０と、通信コントローラ４０とに接続される。さらに、ホストユニット６０は、
制御信号６０２をバスドライバ２０に送信するとともに状態データ信号２０６をバスドライバ２０から受信し（この場合、制御信号６０２と状態データ信号２０６のいずれもネットワーク２００内の実際の通信に関連しない。）、
信号４０６を通信コントローラ４０に送信するとともに信号４０６を通信コントローラ４０から受信する。
【００４９】
電源ユニット５０すなわちバッテリは、グランドＧＮＤ及びバスドライバ２０に接続される。電圧調整器５２は、
電源ユニット５０と、
ホストユニット６０と、
通信コントローラ４０と、
バスドライバ２０とに接続される。
【００５０】
ＦｌｅｘＲａｙ通信システム２００（図３Ａ参照），２００’（図３Ｂ参照）のプロトコルを、以下の層を具える層アーキテクチャの種々の層に分割することができる。
信号が実際のどのように送信されるかを規定する物理層。物理層のタスクの一つは、時間領域における通信コントローラ４０のエラーを検出することであり、それは、ＢＧｗｏｐ３０によって行われる。
ＦｌｅｘＲａｙプロトコルのカーネルを表す変換層。
フレームフィルタリングに関連するプレゼンテーション層。
アプリケーション層。
【００５１】
ＢＧｗｏｐ３０の状態図を図２に示す。ＢＧ２ｏｐ３０は、
［ｉ］任意の状態３４からのリセット信号３０４が提供された後にＢＧｗｏｐ＿ｗａｋｅ  ｕｐモードに入り、
［ii］アーミング信号４０３の第１の立下り縁になった後にＢＧｗｏｐ＿ｓｔａｒｔ  ｕｐモードに入り、
［iii］アーミング信号４０３の第１の立下り縁になった後にＢＧ＿ｇｕａｒｄｉｎｇモードに入り、
［iv］あり得るスケジュールバイオレーションＳＶ１，ＳＶ２，ＳＶ３の一つ以上を検出するとＢＧ＿ｆａｉｌ  ｓｉｌｅｎｔモードに入る。
【００５２】
以下、ＢＧｗｏｐ３０の状態すなわちモード［ｉ］，［ii］，［iii］，［iv］を詳細に説明する。
ウェークアップのステップ［ｉ］は、バスドライバ２０すなわちバスドライバ２０の送信ユニットをイネーブルする。ステップ［ｉ］の間、あり得るスケジュールバイオレーションＳＶ１，ＳＶ２，ＳＶ３の第１のタイプＳＶ１を、
送信信号４２３の所定量の負のエッジ、例えば、最大のＷＵＳ（ウェークアップシンボル）の後、及び／又は、
受信信号２４３が論理ロー状態である間に送信信号４２３の負のエッジの検出の際に、及び／又は、
６ミリ秒以下の所定のタイムアウトｄＷＵ０より長い間に送信信号４２３が論理ロー状態にあるとき、及び／又は、
クロックユニット３２が停止するときに検出することができる。
【００５３】
始動のステップ［ii］は、
バスドライバ２０の送信ユニットをイネーブルするステップと、
サイクル時間について知るためにクロックサイクルを計数するステップと、
送信信号４２３の第１の立下り縁までクロックサイクルを計数するステップとを具え、特に第１サイクル中にダイナミックフレームが送信されない。これに関連して、フレームは、一方のチャネル１２，１４上で一つの識別子を用いて１スロットで送信される全ての情報を具える（ＦｌｅｘＲａｙプロトコルの場合、他の、特に第２の通信チャネル１４が冗長であり、したがって、付加的である。）。
【００５４】
ステップ[ii]の間、あり得るスケジュールバイオレーションＳＶ１，ＳＶ２，ＳＶ３の第２のタイプＳＶ２を、
送信信号４２３の所定量の負のエッジ、例えば、ＣＣ（通信コントローラ）４０ごとの最大で１６個のスタティクスロットの後、及び／又は、
受信信号２４３が論理ロー状態である間に送信信号４２３の負のエッジの検出の際に、及び／又は、
約２．０４７ミリ秒の所定のタイムアウトより長い間に送信信号４２３が論理ロー状態にあるとき、及び／又は、
サイクル時間が約１６ミリ秒の所定のタイムアウトより長いとき、及び／又は、
クロックユニット３２が停止するときに検出することができる。
【００５５】
ガードのステップ［iii］は、
バスドライバ２０の送信ユニットをイネーブルするステップと、
サイクル時間を管理するためにクロックサイクルを計数するステップとを具える。
【００５６】
ステップ[iii]の間、あり得るスケジュールバイオレーションＳＶ１，ＳＶ２，ＳＶ３の第３のタイプＳＶ３を、
送信信号４２３の所定の、すなわち、Ｘｃｙｃｌｅ（Ｘｃｙｃｌｅは、プロトコル設定制約を設定する。）番目の負のエッジの検出の際、及び／又は、
受信信号２４３が論理ロー状態である間に送信信号４２３の負のエッジの検出の際に、及び／又は、
約２．０４７ミリ秒の所定のタイムアウトより長い間に送信信号４２３が論理ロー状態にあるとき、及び／又は、
サイクル時間が、ステップ［ii］の間に知った少なくとも１サイクルの時間から所定の幅を超えて偏移するとき、及び／又は、
アーミング信号４０３の立下り縁と送信信号４２３の立下り縁との間の時間帯が、ステップ［ii］の間に知った時間帯から所定の幅を超えて偏移するとき、及び／又は、
クロックユニット３２が停止するときに検出することができる。
【００５７】
フェイルサイレントとなるステップ［iv］は、
バスドライバ２０の送信ユニットをディスエーブルするステップと、
リセット信号３０４以外の入力信号を監視しないステップとを具える。
【００５８】
ｘ−ｂｙ  ｗｉｒｅ  ＦｌｅｘＲａｙ通信システム２００，２００’の二つの実施の形態を、図３Ａ，３Ｂに示す。ｘ−ｂｙ  ｗｉｒｅ  ＦｌｅｘＲａｙ通信システム２００，２００’を、
線形バストポロジー（図３Ａ参照）又は
星型バストポロジー（図３Ｂ参照）で配置することができる。
【００５９】
図３Ａによる線形バストポロジーと図３Ｂによる星型バストポロジーのあり得る組合せによって、ｘ−ｂｙ  ｗｉｒｅ  ＦｌｅｘＲａｙ通信システム２００，２００’に対して非常に柔軟性を持たせることができる。
【００６０】
参照番号のリスト
１００  ノード、特にＥＣＵ（電子制御ユニット）
１０  通信媒体
１２  通信チャネル、特に通信媒体１０の第１通信チャネル
１４  通信媒体１０の他の付加的な、特に冗長な第２の通信チャネル
２０  バスドライバ、特にトランシーバ、例えば、通信媒体１０に割り当てられ、特に、通信チャネル１２及び／又は他の付加的な通信チャネル１４に割り当てられた送信器及び受信器の組合せ
２０４  バスドライバ２０から通信コントローラ４０への信号、特に受信データ出力信号ＲｘＤ
２０６  バスドライバ２０からホストユニット６０への信号、特に状態データ信号
２４３  バスドライバ２０から通信コントローラ４０及びバスガーディアン３０への受信信号、特に受信データイネーブル出力信号ＲｘＥＮ
３０  特に設定パラメータ及び事前の知識のないバスガーディアン
３２  クロックユニット、特にクロック
３０２  バスガーディアン３０からバスドライバ２０への制御信号、特にバスガーディアンイネーブル入力信号ＢＧＥＮ：アクティブＨＩＧＨ
３０３  特にクロックユニット３２からバスガーディアン３０へのクロック信号
３０４  任意の状態３４からのリセット信号
３０６  バスガーディアン３０からホストユニット６０への信号、特に誤りフラグ表示信号ＥＲＲＮ
３４  任意の状態
３６  パワーオン
４０  通信コントローラ
４０２  通信コントローラ４０からバスドライバ２０への信号、特に送信データ入力信号ＴｘＤ
４０３  通信コントローラ４０からバスガーディアン３０へのアーミング信号、特にバスガーディアンアーミング信号ＡＲＭ
４０６  通信コントローラ４０とホストユニット６０との間の信号
４２３  通信コントローラ４０からバスドライバ２０及びバスガーディアン３０への送信信号、特に送信データイネーブル信号ＴｘＥＮ：アクティブＬＯＷ
５０  電源ユニット、特にバッテリ
５２  電圧調整器
６０  ホストユニット、特にアプリケーションホスト
６０２  ホストユニット６０からバスドライバ２０への信号、特に制御信号
２００  特に線形トポロジーを有する通信システム（第１の実施の形態：図３Ａ参照）
２００’  特に星形トポロジーを有する通信システム（第２の実施の形態：図３Ｂ参照）
ＡＲＭ  通信コントローラ４０からバスガーディアン３０へのバスガーディアンアーミング信号
ＢＧＥＮ  バスガーディアン３０からバスドライバ２０へのバスガーディアンイネーブル信号（アクティブＨＩＧＨ）
ＥＲＲＮ  バスガーディアン３０とホストユニット６０との間の誤りフラグ表示信号
ＧＮＤ  グランド
ＲｘＤ  バスドライバ２０から通信コントローラ４０への受信データ出力信号
ＲｘＥＮ  バスドライバ２０から通信コントローラ４０及びバスガーディアン３０への受信データイネーブル出力信号
ＳＶ１  スケジュールバイオレーション、特に通信メディアアクセススケジュールからの第１のタイプの偏移
ＳＶ２  スケジュールバイオレーション、特に通信メディアアクセススケジュールからの第２のタイプの偏移
ＳＶ３  スケジュールバイオレーション、特に通信メディアアクセススケジュールからの第３のタイプの偏移
ＴｘＤ  通信コントローラ４０からバスドライバ２０への送信データ入力信号
ＴｘＥＮ  通信コントローラ４０からバスドライバ２０及びバスガーディアン３０への送信データイネーブル信号（アクティブＬＯＷ）
【図面の簡単な説明】
【００６１】
【図１】本発明の方法によって動作する本発明による電子制御ユニット又はノードを線形的に示す。
【図２】図１の電子制御ユニット又はノードの動作に従う本発明の方法のステップを線形的に示す。
【図３Ａ】図１の複数の電子制御ユニット又はノードを具える本発明によるフォールトトレラントなタイムトリガ方式のネットワークシステムの第１の実施の形態を線形的に示す。
【図３Ｂ】図１の複数の電子制御ユニット又はノードを具える本発明によるフォールトトレラントなタイムトリガ方式のネットワークシステムの第２の実施の形態を線形的に示す。
【図１】
2008524903.tif 000003
【図２】
2008524903.tif 000004
【図３Ａ】
2008524903.tif 000005
【図３Ｂ】
2008524903.tif 000006
【国際調査報告】
2008524903.tif 000007
2008524903.tif 000008
2008524903.tif 000009
2008524903.tif 000010
2008524903.tif 000011