(57)【要約】本発明は、通信媒体（２９に接続されたサブスクライバ（３）間で通信媒体（２）を介してユーザデータを伝送する方法であって、前記ユーザデータは反復サイクル（８）で伝送され、各サイクル（８）において少なくとも１つのスロット（９，１０）が少なくとも１つのサブスクライバ（３）のユーザデータのために予定されているデータ伝送方法に関する。通信媒体（２）を介して特に効率の良いデータ伝送を可能にするために、前記スロットの少なくとも１つ（１０）を異なるサイクル（８）において異なるサブスクライバ（Ａ，Ｃ，Ｆ）のユーザデータを伝送するために使用する。更に、１つのサブスクライバ（３）のバスガーディアン（６）は、通信システム全体（１）に共通に使用可能な状態に少なくとも間接的にアクセスでき、該サブスクライバが現在サイクル（８）の現在スロット（９，１０）でユーザデータを送信できるか否かの決定を行う。特に、バスガーディアン（６）の内部カウンタは共通使用可能サイクルカウンタに同期させる。
2006525725.tif 000002
【特許請求の範囲】
【請求項１】
通信媒体に接続されたサブスクライバ間で通信媒体を介してユーザデータを伝送する方法であって、前記ユーザデータは反復サイクルで伝送され、各サイクルにおいて少なくとも１つのスロットが少なくとも１つのサブスクライバのユーザデータのために予定された方法において、
前記スロットの少なくとも１つを異なるサイクルにおいて異なるサブスクライバのユーザデータの伝送のために使用することを特徴とするユーザデータ伝送方法。
【請求項２】
前記サブスクライバの一つは、全サブスクライバに共通に使用可能な状態に基づいて、現在サイクルにおいて該サブスクライバが多数のサブスクライバにより使用可能な少なくとも１つの共用スロットでユーザデータを送信できるか決定することを特徴とする請求項１記載の方法。
【請求項３】
多数のサイクルからなるメタサイクル内の連続するサイクルを連続的に計数するサイクルカウンタを共通使用可能状態として用いることを特徴とする請求項２記載の方法。
【請求項４】
前記サブスクライバの一つに割り当てられたバスガーディアンが、該サブスクライバがユーザデータを現在サイクルの現在スロットで送信できるか決定し、該バスガーディアンは前記共通使用可能状態に少なくとも間接アクセスすることを特徴とする請求項２または３記載の方法。
【請求項５】
前記バスガーディアンは前記サイクルカウンタと同期するカウンタを有することを特徴とする請求項３または４記載の方法。
【請求項６】
前記バスガーディアンのカウンタを前記サイクルカウンタと同期信号によって同期させることを特徴とする請求項５記載の方法。
【請求項７】
前記バスガーディアン内に既に存在する信号を同期信号として使用することを特徴とする請求項６記載の方法。
【請求項８】
前記バスガーディアン内に既に存在する前記信号は所定の同期時間において所定の値を示し、該信号が所定の値を示すとき、前記バスガーディアンのカウンタを前記サイクルカウンタに同期させることを特徴とする請求項７記載の方法。
【請求項９】
前記バスガーディアン内に既に存在する前記信号は前記所定の同期時間において初めて前記所定の値を示すことを特徴とする請求項６記載の方法。
【請求項１０】
前記バスガーディアンにもともと存在しない別の信号を同期信号として用いることを特徴とする請求項９記載の方法。
【請求項１１】
前記バスガーディアンにもともと存在しない前記信号は、もともと存在しない所定値または特定の信号パターンを有する、前記バスガーディアン内に存在する既存の信号とすることを特徴とする請求項１０記載の方法。
【請求項１２】
前記バスガーディアンのカウンタは、該バスガーディアンがこれに割り当てられたサブスクライバの送信モードを観測し、該送信モードに基づいて前記カウンタを同期させることによって同期させることを特徴とする請求項５記載の方法。
【請求項１３】
前記バスガーディアンに割り当てられたサブスクライバがユーザデータの送信にどのスロット及びどのサイクルを使用できるかについての情報をデータ伝送に先だって前記バスガーディアンに格納することを特徴とする請求項４−１２の何れかに記載の方法。
【請求項１４】
前記バスガーディアンが、これに割り当てられたサブスクライバの送信モードを観測することによって該サブスクライバがユーザデータの送信にどのスロット及びどのサイクルを使用できるかについての情報を取得することを特徴とする請求項４−１２の何れかに記載の方法。
【請求項１５】
前記バスガーディアンによる情報取得は所定の境界状態の下で行うことを特徴とする請求項１４記載の方法。
【請求項１６】
コンピュータ素子、特にマイクロプロセッサで実行し得るコンピュータプログラムであって、請求項１−１５の何れかに記載の方法を実行するようにプログラムされていることを特徴とするコンピュータプログラム。
【請求項１７】
前記コンピュータプログラムがメモリ記憶素子、特にランダムアクセスメモリ、リードオンリメモリまたはフラッシュメモリに格納されていることを特徴とする請求項１６記載のコンピュータプログラム。
【請求項１８】
通信媒体を介して該通信媒体に接続し得る他のサブスクライバにユーザデータを伝送するために該通信媒体に接続し得るサブスクライバであって、前記ユーザデータは反復サイクルで伝送され、各サイクルにおいて少なくとも１つのスロットが少なくとも１つのサブスクライバのユーザデータのために予定されたサブスクライバにおいて、前記スロットの少なくとも１つが異なるサイクルにおいて異なるサブスクライバのユーザデータの伝送のための共用スロットとして予定され、当該サブスクライバは所定のサイクルにおいてユーザデータを多数のサブスクライバにより使用可能な前記共用スロットで送信することを特徴とするサブスクライバ。
【請求項１９】
通信媒体を介して該通信媒体に接続し得る他のサブスクライバにユーザデータを伝送するよう設計された該通信媒体に接続し得るサブスクライバに割り当てられたバスガーディアンであって、前記ユーザデータは反復サイクルで伝送され、各サイクルにおいて少なくとも１つのスロットが少なくとも１つのサブスクライバのユーザデータのために予定されたバスガーディアンにおいて、前記スロットの少なくとも１つが異なるサイクルにおいて異なるサブスクライバのユーザデータを伝送できる共用スロットとして付与され、当該バスガーディアンは前記サブスクライバがユーザデータを現在のサイクルの現在のスロットで送信できるかを決定することを特徴とするバスガーディアン。
【請求項２０】
前記バスガーディアンは請求項２−１５の何れかに記載の方法を実行する手段を具えることを特徴とする請求項１９記載のバスガーディアン。
【請求項２１】
通信媒体と、該通信媒体に接続された複数のサブスクライバとを具え、サブスクライバ間で前記通信媒体を介してユーザデータを伝送する通信システムであって、前記ユーザデータは反復サイクルで伝送され、各サイクルにおいて少なくとも１つのスロットが少なくとも１つのサブスクライバのユーザデータのために予定された通信システムにおいて、前記スロットの少なくとも１つが異なるサイクルにおいて異なるサブスクライバのユーザデータの伝送のために予定されていることを特徴とする通信システム。
【請求項２２】
前記サブスクライバが現在のサイクルの現在のスロットでユーザデータを送信できるかを決定するバスガーディアンが前記通信システムのサブスクライバの少なくとも一つに割り当てられていることを特徴とする請求項２１記載の通信システム。
【請求項２３】
前記バスガーディアンは請求項２−１５の何れかに記載の方法を実行する手段を具えることを特徴とする請求項２２記載の通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信媒体に接続されたサブスクライバ間で通信媒体を介してユーザデータを伝送する方法に関するものである。データは反復サイクルで伝送される。各サイクルにおいて少なくとも１つのスロットが少なくとも１つのサブスクライバのユーザデータのために予定される。
【０００２】
本発明は、コンピュータ素子、特にマイクロプロセッサで実行し得るコンピュータプログラムにも関するものである。
【０００３】
本発明は、更に、通信媒体に接続され、該通信媒体を介してユーザデータを他のサブスクライバに伝送するサブスクライバにも関するものである。データは反復サイクルで伝送される。各サイクルにおいて少なくとも１つのスロットが少なくとも１つのサブスクライバのユーザデータのために予定される。
【０００４】
本発明は、更に、通信媒体に接続されたサブスクライバに割り当てられたバスガーディアンにも関するものである。サブスクライバはユーザデータを通信媒体を介して該通信媒体に接続された他のサブスクライバに伝送する。データは反復サイクルで伝送される。各サイクルにおいて少なくとも１つのスロットが少なくとも１つのサブスクライバのユーザデータのために予定される。
【０００５】
本発明は、最後に、通信媒体と該通信媒体に接続された複数のサブスクライバとを具える通信システムにも関するものである。ユーザデータはサブスクライバ間において反復サイクルで通信媒体を介して伝送される。各サイクルにおいて少なくとも１つのスロットが少なくとも１つのサブスクライバのユーザデータのために予定される。
【背景技術】
【０００６】
次世代の時間制御通信システムに対しては、所謂バスガーディアンを使用することが提案されている。各バスガーディアンは通信システム上の特定のサブスクライバに割り当てられる。バスガーディアンはこれに割り当てられたサブスクライバがデータをいつ送信できるかいつできないかについての情報を持つ。バスガーディアンは、通信システム上の欠陥サブスクライバが連続的にデータを送信し通信媒体をブロックするのを防止する。このような欠陥サブスクライバはbabbling idiots（愚か者のおしゃべり）ともいわれている。バスガーディアンは独立の設定データセットから制御信号を導出し、この制御信号によって通信媒体へのサブスクライバアクセスをサブスクライバの通信コントローラ（ＣＣ）がデータを伝送できる選択されたタイムスロットに対してのみ可能にする。これにより、欠陥通信コントローラ及び／又は欠陥サブスクライバが通信媒体を独占するのを防止する。
【０００７】
ＴＤＭＡ（time divisional multiple access）システムが通信媒体へのアクセスシステムとして一般に使用されている。このシステムでは所謂サイクルの所定の周期を規定（一般に一定）の長さの多数のタイムスロットに分割する。各スロットにおいて特定のサブスクライバの１つの通信コントローラのみがデータを送信し得る。
【０００８】
バスガーディアンは該バスガーディアンに割り当てられた通信コントローラがデータを送信できるスロットに関する情報で設定できるが、バスガーディアンは通信媒体経由の受信データからまたは通信からサイクルの開始を決定する能力を持っていない。これを自立的に導出可能にするためには、バスガーディアンは通信媒体を経由する通信を理解し解釈する必要があるが、これはバスガーディアンを極めて複雑にし、誤りを生じやすくするとともに高価なものとする。この理由のために、通信コントローラはトリガ信号(所謂ＡＲＭ信号)をバスガーディアンに送り、通信コントローラがスロットを送信する予定の第１サイクルの開始を示す必要がある。この場合、バスガーディアンは次のサイクルの開始をサイクルの構成から自律的に推測し、このノレッジを通信コントローラから連続的に入来するＡＲＭ信号と比較することができる。ＡＲＭ信号は、通信コントローラ内におけるサイクルの内部シーケンスがいつ開始するかを示す。バスガーディアンがサイクル開始の自己のビューと通信コントローラのビューとの間に不一致を検出した場合、バスガーディアンはサブスクライバの送信機能を不活性にし、これにより欠陥サブスクライバまたは通信コントローラは強制的にサイレントに維持され（所謂フェール・サイレント動作）、通信システムにおける誤りの制限に有利である。
【０００９】
エラートレラント通信システムでは、均等且つ信頼できる伝送を保障するためにＴＤＭＡシステムが使用される。高精密なタイマ同期アルゴリズムが短い再同期サイクルを前提とするため、限定された数のスロットが１つの通信サイクルに適合するのみとなる。
【００１０】
従って、本発明の目的は、通信媒体を介する特に効率の良いデータ伝送を提供することにある。
【発明の開示】
【００１１】
本発明は、上述したユーザデータ伝送方法において、この目的を、前記スロットの少なくとも１つのを異なるサイクルにおいてそれぞれ異なるサブスクライバのユーザデータを伝送するために使用することによって達成することを提案する。
【００１２】
従って、本発明では、サイクルの少なくとも１つの共用スロットをただ１つのサブスクライバに割り当てるのではなく現在のサイクルの関数として多数のサブスクライバに割り当てることを提案する。つまり、１つの同じスロットを用いて、例えば第１サイクルにおいて通信システム上の第１のサブスクライバがユーザデータを通信媒体を介して伝送でき、第２サイクルにおいて第２のサブスクライバがユーザデータを通信媒体を介して伝送でき、第３サイクルにおいて第３のサブスクライバがユーザデータを通信媒体を介して伝送できるようにする。これはサブスクライバのデータ伝送用の到達可能帯域幅を減少させ、この減少帯域幅は多くの用途に十分である。従って、最終結果として、もっと多数のサブスクライバをサイクル時間の増大なしに通信媒体に接続することが可能になる。
【００１３】
本発明の目的のために、ユーザデータは基本的に任意のタイプのデータ及び情報を含む。特に、通信システムは通信シーケンスを制御するメッセージ及びシグナリングデータも含む。
【００１４】
本発明の一つの有利な他の実施例では、各サブスクライバが、全てのサブスクライバに共通に使用可能な状態に基づいて、現在サイクルにおいて該サブスクライバがユーザデータを少なくとも１つの共用スロットで送信できるか決定する。従って、この実施例によれば、通信システム内には個々のサブスクライバに送信権を付与する上位装置は存在しない。その代わりに、通信システム上の各サブスクライバが現在サイクルにおいてユーザデータを共用スロットで送信できるか自分で決定する。この決定は同一の共通使用可能状態に基づいて通信システム上のすべてのサブスクライバによって行われる。
【００１５】
本発明の好適実施例では、サイクルカウンタを共通使用可能状態として使用し、このカウンタによって複数のサイクルを具えるメタサイクル内の連続するサイクルの各々にコードを割り当てる。サイクルカウンタはメタサイクル内の各サイクルに一義的コードを割り当てる。サイクルカウンタは２つのサイクルの間でその値を（通信システムの精度の範囲内で）すべてのサブスクライバが検出可能な形で同時に同一に変える。通常、サイクルカウンタは循環動作するため、サイクルカウンタの値は所定数のサイクル後に周期的に繰り返し現れる。サイクルカウンタが繰り返さない最長期間を所謂メタサイクルという。各サイクルカウンタ値に対して１つのサブスクライバのみが共用スロットでデータを送信することができるという条件で、サイクルカウンタによって種々の通信コントローラ又はサブスクライバに１つのスロットを共用させることができる。
【００１６】
従って、サイクルカウンタは、異なるサイクルにおいて異なるサブスクライバのユーザデータを送信するために使用できるスロットに対する所謂サブスロットを規定する。従って、本発明によればこれらのスロットは多数のサブスクライバにより使用できるが、１つのサブスクライバが各サブスロットに割り当てられるのみである。少なくとも１つのサイクルにおいてデータ伝送のために共有スロットの使用が許可された各サブスクライバに共用スロットの少なくとも１つのサブスロットが割り当てられる。サブスロットは通信システム上のサブスクライバに分配される。通信システムは種々のサブスクライバにより使用可能な多数の共用スロットを含むこともできる。
【００１７】
通信コントローラは１以上の異なる共用スロット内において多数のサブスロットをアクセスすることができる。
【００１８】
バスガーディアン自体はサイクルカウンタの現在値についての情報を持たないので、共用スロットをモニタし得ない。従って、現在サイクルに依存して種々のサブスクライバがデータを送信することができるスロットに対して、バスガーディアンは割り当てられたサブスクライバがデータを常に送信できるようにする必要がある。これは、１つのサブスクライバのみが使用可能なスロットではこのサブスクライバのみが割り当てられたバスガーディアンからデータ送信の許可を受信するが、共用スロットの場合には、理論的にはこのスロットの使用を共有する通信システム上のすべてのサブスクライバがデータを送信することができることを意味する。サブスクライバの１つに欠陥があり、通信システムを介してデータを伝送し続ける場合、この欠陥サブスクライバは少なくとも共用スロットにおいて通信媒体全体をブロックすることになる（所謂愚か者のおしゃべり）。従って、共用スロットの場合には、バスガーディアンは実際に意図された機能を満足することができない。
【００１９】
これを改善するために、他の有利な実施例では、サブスクライバの１つに割り当てられたバスガーディアンによって、サブスクライバがユーザデータを現在サイクルの現在スロットでデータを送信できるか決定し、このためにバスガーディアンは共通使用可能状態、特にサイクルカウンタ値を少なくとも間接的に入手することができる。バスガーディアンを共通使用可能サイクルカウンタに同期させる種々の方法がある。
【００２０】
最初のステップにおいて、通信コントローラ内のサイクルカウンタをモニタする必要がある。この目的のために、通信コントローラとバスガーディアンとの間でサイクルカウンタを同期させる必要がある。初期同期に続いて、バスガーディアンは通信コントローラのサイクルカウンタのサイクル動作をモニタすることができる。初期同期も次のモニタリングも直接的にまたは間接的に行うことができる。
【００２１】
第２のステップにおいて、バスガーディアンは通信媒体への通信コントローラのアクセスパターンをモニタする必要がある。ここで種々のレベルの保護が可能であり、以下に詳細に説明する。他に特別の規定がなければ、以後バスガーディアンはどの共用スロット内のどのサブスロットが当バスガーディアンに割り当てられたサブスクライバに割り当てられているかについての情報を有するものと仮定する。
【００２２】
本発明の他の好適実施例では、バスガーディアンはサイクルカウンタと同期したカウンタを有する。このバスガーディアンカウンタは僅かな追加のコストで達成し得るバスガーディアンの内部構造である。このカウンタと共通使用可能サイクルカウンタとの同期は直接的にまたは間接的に実施することができる。
【００２３】
直接的同期は、同期信号を用いてバスガーディアンカウンタとサイクルカウンタとを同期させることによって有利に実施することができる。バスガーディアンに既に存在する信号を同期信号として使用することができる。このような信号の一例は通信コントローラのＡＲＭ信号である。ＡＲＭ信号の通常の同期メカニズムに加えて、バスガーディアンと通信コントローラがサイクルカウンタの同じビューを有するようにする同期信号が定義される。バスガーディアンがサイクルカウンタの現在値を検出できるようにすることによって、バスガーディアンは種々のサイクルにおける共用スロットをモニタすることも可能になる。そして、バスガーディアンは、これに割り当てられたサブスクライバがサイクルカウンタの特定の所定値に対してのみ共用スロットでの通信媒体へのアクセスを許可することが可能になる。
【００２４】
プリセット時、所謂同期時においては、バスガーディアンに既に存在する信号は所定の値を示し、バスガーディアンカウンタはこの信号が所定値を示す時サイクルカウンタに同期する。無変更のＡＲＭ信号を同期の目的に使用することができ、初期同期はサイクルカウンタが所定値を示す時に実行される。この同期時に、ＡＲＭトリガはバスガーディアンを伝送システム及びサイクルカウンタに同期させることができる。必要に応じて、最悪の場合には、多数の異なるサイクルカウンタ値を発生させて、信号が所定値になるまで全メタサイクルを評価するので、この比較的簡単な実施例は初期同期が実行されるまで長い初期遅延を生ずることになる。この理由のために、この実施例は低い安全関連応用にのみ適するものであり、これは、安全関連応用は一般に、例えば障害によりトリガされたリセット後に急速に始動できることが要求されるためである。
【００２５】
バスガーディアンカウンタはバスガーディアン内に既に存在する信号が最初に所定値になったときサイクルカウンタに同期させるのが有利である。
【００２６】
バスガーディアンを通信媒体における共通使用可能状態と直接同期させる他の可能な方法はバスガーディアンにもともと存在しない別の信号を同期信号として使用する。バスガーディアン内にもともと存在しないこの別の信号は、既に存在するが全く新しい信号値及び信号パターンを示す信号とすることができる。特に、バスガーディアンカウンタをバスガーディアン内に既に存在する信号が特定の信号パターンに一致するときサイクルカウンタに同期させる。この実施例は、既に存在するがめったに出合うことのない例外的な信号値または信号パターンを示す信号を用いることによって達成することができる。このような例外的信号値または信号パターンの例には、長信号パルス、多重信号パルス、特にダブルパルス、または、任意の他のタイプの信号パターンがある。
【００２７】
しかし、バスガーディアン内にもともと存在しない前記別の信号を全く新しい信号とし、この信号をバスガーディアンの追加のピンまたは未使用のピンからバスガーディアンに供給することもできる。この方法はＡＲＭ信号のようなバスガーディアン内に既に存在する信号の誤解や誤解釈を避けることができる。
【００２８】
同期信号はバスガーディアンを共通使用可能状態に同期させるため、同期信号の発生時に、バスガーディアンは当バスガーディアンに割り当てられた通信コントローラの共用スロットにおける伝送モードをモニタすることもできる。同期に続いて、バスガーディアンはサイクルカウンタの所定値に対してのみ、共用スロットにおける割り当てられたサブスクライバの伝送モードを許可する。通信コントローラは、サイクルカウンタがプリセット値になる度に本来存在しない別の信号（例えば、特別のＡＲＭ信号）を発生しなければならないため、バスガーディアンはサイクルカウンタをモニタすることもできる。内部カウンタが対応するサイクルカウンタ値を示すが、本来存在しない別の信号（例えば、特別のＡＲＭ信号）が予想されるも到来しない場合には、通信コントローラの故障が推測できる。こうして、バスガーディアンと通信コントローラは、バスガーディアンが前記別の信号を検出すれば同期を失うことはない。同期が失われた場合には、バスガーディアンは通信コントローラの以後のデータ伝送を許可しないで、通信コントローラを所謂フェイル−サイレント状態に設定する。このようにして、欠陥サブスクライバが通信システム全体に及ぼし得る危険な影響を防止することができる。
【００２９】
バスガーディアンを共通使用可能状態に間接的に同期させるために、バスガーディアンがこれに割り当てられたサブスクライバの伝送モードを観測し、それに従ってバスガーディアンカウンタを同期させる。この実施例では、バスガーディアンが、特にデータ通信の開始時に観測されるアクセスから、サブスクライバによる通信手段へのアクセスのシーケンスを学習する。最初からバスガーディアンは異なるサイクルにおいて多数のサブスクライバにより使用可能な共用スロットを開放する。通信コントローラはサイクルカウンタの最小値を待ち、その値に対して通信コントローラは共用スロットのサブスロットにアクセスすることができる。通信コントローラはこのサブスロット中にその最初のデータ伝送を行う。
【００３０】
共用スロットによる通信コントローラの通信媒体への初期アクセスはバスガーディアンにより検出され、通信コントローラがデータを送信してよいサイクルカウンタの最小値とリンクされる。このとき、バスガーディアンと通信コントローラはサイクルカウンタの同じビューを有する。以後、バスガーディアンは通信コントローラに所定のサブスロット、即ち所定のサイクルにおいてのみ通信媒体を介してデータを送信することを許可する。サブスクライバが多数の共用スロットを使用する場合には、初期データ送信はこれらの共用スロットの任意の１つにおいて同期をトリガする。
【００３１】
バスガーディアンは共用スロットにおけるサブスクライバの通信媒体への不許可アクセスを検出することもできる。サブスクライバの通信コントローラがこれに割り当てられたサブスロットでデータを送信する必要がある場合には、バスガーディアンも通信コントローラのサブスクライバカウンタをモニタすることができる。バスガーディアンがこれを検出しなければ、休止通信コントローラ（データを送信しない通信コントローラ）が同期外れになるおそれがある。
【００３２】
サブスクライバの通信媒体へのアクセスシーケンスに関するローカル情報が得られない場合には、バスガーディアンは共用スロットによる通信コントローラの通信媒体への初期アクセスを用いてそのローカルカウンタを所定の値で初期化する。この値は通信コントローラ内のサイクルカウンタの値に必ずしも等しくする必要はないが、バスガーディアンカウンタと通信コントローラのサイクルカウンタの両カウンタは同一に循環動作させる。
【００３３】
本発明の他の有利な実施例では、バスガーディアンに割り当てられたサブスクライバがどのサイクル及びどのスロットでユーザデータを送信できるかについての情報をデータ送信の前にバスガーディアン内に格納する。この場合には、バスガーディアンには、該バスガーディアンに割り当てられたサブスクライバまたはその通信コントローラが通信媒体を介してデータを送信し得る各共用スロットに対するサイクルカウンタの値が予め設定される。この情報は、通信コントローラまたはサブスクライバが始動したら、サブスクライバのホストコントローラによりバスガーディアンに送信することもできる。これは、特に共用スロットへのアクセスシーケンスが高位プロトコルにより動的に割り当てられるときに有利である。その理由は、この割り当ては通信システムの始動後にのみ可能となるためである。
【００３４】
本発明の他の好適実施例では、バスガーディアンは、これに割り当てられたサブスクライバの伝送モードを観測することによって、サブスクライバがどのサイクル及びどのスロットをユーザデータの送信に使用できるかについての情報を取得し、この情報をバスガーディアンに格納する。特に、情報は特定の境界条件の下でバスガーディアンにより取得される。これらの境界条件の例として１メタサイクル中における１サブスクライバの共用スロットへの最大許容アクセス数がある。従って、サブスクライバの通信コントローラが最初から不良であり、共用スロットを用いて通信媒体に絶えずアクセスしようとする場合、このような障害は、通信コントローラが共用スロットを用いてサイクル内で許される以上の回数通信媒体にアクセスしようとすると同時に、バスガーディアンにより検出される。このようにして、通信システムの帯域幅を最初から最小にすることができる。
【００３５】
安全の理由ために、バスガーディアンに設定する情報を動作中に修正する問題がある。この場合には安全をモニタする程度を低減させてもよく、バスガーディアンの設定に使用する情報は各共用スロットに対するバスガーディアンに割り当てられた通信コントローラのためのサブスロットの数のみとすることもできる。バスガーディアンに割り当てられたサブスクライバがバスガーディアンに格納されたサブスロットの数に等しい回数通信媒体に既にアクセスしたとき、バスガーディアンはこのサイクル内におけるサブスクライバによるこれ以上のアクセスを阻止する。
【００３６】
許容複雑度または保護手段の必要に応じて、２つの他の実施例が実施可能であり、これらの実施例では通信コントローラによる通信媒体へのアクセスに関するすべてのシーケンス情報を使用することによって、ホストコントローラによるバスガーディアンの設定を不要にする。
【００３７】
一つの可能な例は帯域幅の保護手段に関連する。第１に、バスガーディアンは割り当てられた通信コントローラが存在する共用スロットでデータを送信できるサブスロットの数を検出することができる。
【００３８】
直接同期の場合には、バスガーディアンは最初すべての共用スロットでの通信コントローラの通信媒体へのアクセスを阻止する。最初の同期イベントから、バスガーディアンは通信コントローラにすべての共用スロットへのアクセスを許可する。間接同期の場合には、通信媒体へのアクセスは最初から許可される。
【００３９】
バスガーディアンは各共用スロットに対して各自のカウンタを有する。この共用スロットでの通信コントローラの通信媒体への各アクセスはこのカウンタをインクリメントする。このカウンタが所定の最大値に達すると同時に、バスガーディアンは次のサイクルから共用スロットでの通信媒体へのアクセスを阻止する。所定の最大値はこの共用スロットに割り当てられたサブスロットの数に等しい。
【００４０】
ローカルバスガーディアンカウンタはサイクルカウンタ同期信号により、或いは、バスガーディアンの内部合意に従って、サイクルカウンタがすべてのとりうる値を循環する完全サイクルを完了した時にリセットされる。
【００４１】
このようにして、通信コントローラが割り当てられた共用スロットの帯域幅以上に占有するのを阻止することができる。しかし、これは通信コントローラが実際に送信してはならないサブスロット中に通信コントローラがデータを送信するのを阻止するように作用しない。それにもかかわらず、欠陥通信コントローラにより悪影響を受け得る通信媒体上の通信量をモニタリングなしの例に比較して著しく低減することができる。更に、このオプションは実施が比較的容易であり、動的スロット割り当てに良好に適合する。その理由は、通信システムの始動前に入手し得ない設定データを必要としないためである。
【００４２】
通信媒体へのアクセスに関するシーケンス情報のすべてを使用してホストコントローラによるバスガーディアンの設定を必要としない他の可能な例は自己設定バスガーディアンである。
【００４３】
バスガーディアンはこれに割り当てられた通信コントローラが存在する共用スロットの各々でデータを送信できるサブスロットの数を検出する。
【００４４】
直接同期の場合には、バスガーディアンは最初すべての共用スロットでの通信コントローラの通信媒体へのアクセスを阻止する。最初の同期から、バスガーディアンは通信コントローラにすべての共用スロットでの通信媒体へのアクセスを許可する。間接同期の場合には、通信媒体へのアクセスは最初から可能である。
【００４５】
第１メタサイクル中、バスガーディアンはこれに割り当てられた通信コントローラのアクセス動作を極めて精密に観測する。バスガーディアンは内部設定レジスタに通信コントローラのアクセスパターンを記憶する。第１メタサイクルは最初の直接同期イベントにより、或いは、間接同期の場合には通信コントローラのサブスロットまたは共用スロットでの最初の送信イベントにより開始する。第１メタサイクルは、サイクルカウンタが理論的に示しうるすべての値を循環するときに終了する。
【００４６】
第１メタサイクル後に、バスガーディアンは、通信コントローラが第１メタサイクル中にデータを送信した共用スロットのサブスロットを除いて、すべての共用スロット中の通信媒体へのアクセスを阻止する。
【００４７】
第１メタサイクル中でも、バスガーディアンは上述した最初の可能な方法と同一の保護、即ち通信媒体へのアクセスを特定のサブスロットに制限する保護を提供することができる。最初からフォールトフリー通信コントローラは共用スロットでの通信を破損しない。その理由はバスガーディアンの設定は変更できないためである。欠陥通信コントローラは各サイクル内の任意のスロットを分離することはできず、同じスロットを分離することができるのみである。インテリジェントアプリケーションレベルはこのような動作を検出し、破損情報を回避することができる。
【００４８】
本発明はハードウエアで実現することができる。しかし、本発明の方法はコンピュータプログラムの形態の実現に特に意義がある。この場合には、コンピュータプログラムはコンピュータ素子、特にマイクロプロセッサ上で動くことができ、本発明の方法を実行するようにプログラムされる。従って、本発明は本発明の方法を実行するようプログラムされたコンピュータプログラムで実現される。このコンピュータプログラムはメモリ蓄積素子に格納するのが好ましい。特に、蓄積媒体として、ランダムアクセスメモリ、リードオンリメモリまたはフラッシュメモリのような電気蓄積媒体を使用することができる。
【００４９】
本発明の目的は、さらにまた、上述したタイプのサブスクライバにおいて、異なるサイクルにおけるスロットの少なくとも１つを異なるサブスクライバのユーザデータの送信に予定し、サブスクライバが所定のサイクルにおいてユーザデータを共用スロットで送信することにより達成される。
【００５０】
本発明の目的は、さらにまた、上述のバスガーディアンにおいて、異なるサブスクライバのユーザデータを異なるサイクルにおいて送信できる少なくとも１つのスロットを設け、バスガーディアンによってサブスクライバがユーザデータを現在サイクルの現在スロットで送信できるかチェックすることにより達成される。
【００５１】
最後に、本発明の目的は、さらにまた、上述した通信システムにおいて、スロットの少なくとも１つを異なるサイクルにおいて異なるサブスクライバのユーザデータを送信するために予定することにより達成される。
【００５２】
本発明を図面に示す実施例につき更に説明するが、本発明はこれらの実施例に限定されるものではない。
【発明を実施するための最良の形態】
【００５３】
図１には本発明による通信システムが示され、全体を参照番号１で示されている。通信システム１はデータバスの形態を取る通通信媒体２を具える。通信システム１は、例えばデータバスの形態を取る。図１に示す通信媒体２のバス構造に加えて、通信システム１はスター構造または他の任意の構造を有するものとすることもできる。Ａ，Ｂ，Ｃ，．．．Ｆで示すサブスクライバ３（ノードともいう）が通信媒体２に接続される。通信システム１は、例えばFlexRay通信システムである。
【００５４】
図２はサブスクライバ３の構成を詳細に示す。各サブスクライバ３はホストコントローラ４と、通信コントローラ５と、バスガーディアン６と、バスドライバ７とを具える。ホスト４は通信コントローラ５とバスガーディアン６を全関連設定データに従って設定する。特に、両装置ともシーケンス情報が設定される。シーケンス情報はどのサブスクライバ３がいつデータを通信媒体２を介して送信できるかについての詳細情報を含む。
【００５５】
図に示す論理構成要素は本来互いに自由に組み合わせることができる。従って、例えば複合バスドライバ（ＢＤ）／バスガーディアン（ＢＧ）装置が実現可能である。
【００５６】
FlexRay通信システム１では、データは反復サイクルで伝送される（図３参照）。各サイクル８はサブスクライバ３のユーザデータのために６個のスロット９，１０を具える。第１、第２、第４、第５及び第６スロット９は一つのサブスクライバ３に割り当てられ、第３スロット１０は異なるサイクル８においてそれぞれ異なるサブスクライバ３（Ａ，Ｃ，Ｆ）のユーザデータを伝送するために使用される。
【００５７】
図４はデータ伝送用の所謂メタサイクル１１を示し、本例では３つのサイクル８を具えている。この図に明瞭に示されているように、第１サイクル中はサブスクライバＡがユーザデータを第３スロット１０で送信し、第２サイクル８中はサブスクライバＣがユーザデータを第３スロット１０で送信し、第３サイクル８中はサブスクライバＦがユーザデータを第３スロット１０で送信する。
【００５８】
通信コントローラ５とバスガーディアン６に設定されたシーケンス情報は、通信サイクル８の長さ、スタティックセグメント（例えばＴＤＭＡ(time divisional multiple access)ベースのセグメント）の長さ、ダイナミックセグメントの長さ（限定時間内に１スロットを伝送することが保証されないセグメント）及び種々の他のプロトコル固有のセグメントを具える。
【００５９】
各サブスクライバ３は、該サブスクライバ３がデータを送信できるスタティックセグメント内にスロットを何も持たないことも、１以上のスロットを持つこともある。ホスト４はこの情報を検出し、通信コントローラ５とバスガーディアン６をこの情報に従って設定する。
【００６０】
この既に規定されているフローチャートに加えて、スタティックセグメント内のいくつかのスロットが、異なるサブスクライバ３のユーザデータを異なるサイクルで伝送することができるスロット１０（所謂共用スロット）として設定される。図３に示す実施例では、複数のサブスクライバＡ，Ｃ，Ｆにより使用可能なこのようなスロットはスロット１０である。複数のサブスクライバ３により使用可能なこのような共用スロット１０でデータを伝送しようとしないサブスクライバ３は、多数のサブスクライバ３により使用可能なこれらの共用スロット１０が特別のステータスを有することを必ずしも知っている必要はない。本発明の要旨は多数のサブスクライバにより使用可能な共用スロットをサポートしないFlexRay通信システムと下位互換性にすることにある。
【００６１】
FlexRay通信システムに、連続する異なるサイクル８にコードを割り当てる所謂サイクルカウンタを設ける。サイクルカウンタは共通使用可能状態を通信システム１の全域に示し、これに基づいてサブスクライバ３は現在サイクル８においてユーザデータを多数のサブスクライバにより使用可能な共用スロットで送信できるかできないかを決めることができる。サイクルカウンタは０から６３の値を取ることができる。従って、６４までの異なるサブスクライバ３が多数のサブスクライバ３により使用可能な共用スロット１０を使用することができる。もっと多くのサブスクライバ３が多数のサブスクライバ３により使用可能な共用スロット１０を使用したい場合には、サイクルカウンタの許容範囲を増大する必要がある。多数のサブスクライバ３により使用可能な共用スロット１０はネットワークの交換、制御またはステータス情報のために使用することができる。この場合には、各サブスクライバ３にサイクルカウンタの特定値を割り当てる。このようにすると、各サブスクライバ３はそのステータスを特定期間内に信号することができ、帯域幅の小部分がシグナリングのために必要とされるのみとなる。本発明の方法は、特定アプリケーションにおいて各サブスクライバ３に自分専用のスタティックスロット９を割り当てることができない場合に特に有利であり、それはこの場合にはサイクル８の長さが大きくなってしまうためである。
【００６２】
サブスクライバ３の各ホスト４には、通信コントローラ５が多数のサブスクライバ３により使用可能な共用スロット１０内にスロットを送信してよいサイクル８についての情報が予め設定される。設定フェーズ中にホスト４は設定データを通信コントローラ５とバスガーディアン６に中継し、この設定フェーズは通信システム１の始動前に行う。
【００６３】
FlexRay通信システムの通信コントローラは既知の方法で始動する。これらの通信コントローラはユニバーサルタイムベースを設定し、それらのシーケンスを初期設定する。通信コントローラ５が別のサブスクライバ３と同期すると同時に、通信コントローラ５は該コントローラがスロットを送信しようとする最初のサイクル８の開始を所謂ＡＲＭ信号によりバスガーディアン６に信号する。バスガーディアン６はどのサイクル８に通信システム１があるのか知らないので、多数のサブスクライバ３で使用可能な共用スロット１０はまだ使用できない。この理由のために、バスガーディアン６は最初は通信コントローラ５が共用スロット１０を介して通信媒体２へアクセスするのを拒否する。
【００６４】
コールドスタートを示すサブスクライバ３はそのサイクルカウンタを０に初期化するが、始動するすべてのサブスクライバ３（所謂ひとまとめにするサブスクライバまたはノード）を自由に選択しうる各サイクル（所謂任意サイクル）の開始時に通信システム１に組み込むことができる。サイクルカウンタがその最大値に到達し、０にリセットされると同時に、通信コントローラ５は特別のＡＲＭ信号(本例では拡張信号パルス)をバスガーディアン６に送る。バスガーディアン６は各６４サイクル後ごとに拡張ＡＲＭ信号が存在するか決定する。バスガーディアン６はまたホスト４により設定されたこれらのサイクル８における多数のサブスクライバ３により使用可能な共用スロット１０でのデータ伝送を許可する。
【００６５】
本発明の他の実施例を以下に記載する。これは図１に示すようなFrexRay通信システム１に基づく。既に規定されているフローチャートに加えて、本実施例では多数のサブスクライバ３により使用可能な共通スロット１０のサブスロットが始動後にサブスクライバ３に動的に割り当てられる。一つのアプリケーションレベルでは、各サブスクライバ３に、多数のサブスクライバ３により使用可能な各共用スロットにごとに所要数のサブスロットが割り当てられる。この場合には、多数のサブスクライバ３により使用可能な各共通スロット１０に対するサブスロットの数は予め分かっており、ホストコントローラ４にも分かっており、ホストコントローラ４がこの情報をバスガーディアン６に中継する。
【００６６】
通信システム１は通常の如く始動する。始動後に、ホストコントローラ４が情報を交換し、アプリケーションレベルのメカニズムによって、サブスクライバ３が多数のサブスクライバ３により使用可能などの共通スロット１０のどのサブスロット中に送信できるかについての情報を分配することができる。
【００６７】
バスガーディアン６はバスドライバ７に通信媒体２へのアクセスを要求する通信コントローラ５のＴＸＥＮ（送信イネーブル）信号をモニタリングする。フローチャート内の多数のサブスクライバ３により使用可能な各共用スロット１０に対して、バスガーディアン６は特別のカウンタを有し、このカウンタでバスガーディアン６に割り当てられた通信コントローラ５が通信媒体２にアクセスしたサブスロットの数を計数する。所定の最大値に到達したとき、バスガーディアン６はサイクルカウンタが予め設定された値（FlexRay通信システム１の場合には零）に達するまで更なるアクセスを阻止する。次いで上記のカウンタはリセットされ、多数のサブスクライバ３により使用可能な共用スロット中の通信媒体２へのアクセスが再び上記のカウンタが最大値に達するまで許可される。
【００６８】
従って、本発明は、これまでのように、単に少なくとも１つのスロットを一つのサブスクライバ３に割り当てるのではなく、異なるサブスクライバ３（Ａ，Ｃ，Ｆ）が異なるサイクル８においてこのスロット１０でデータを送信できる機能を生成する。更に、特別のバスガーディアンを用いて、多数のサブスクライバ３により使用可能な共通スロット１０にアクセスしデータをこのスロットで送信するサブスクライバ３（Ａ，Ｃ，Ｆ）をモニタし、例えば１つの欠陥サブスクライバ３が通信媒体２の全帯域幅を占拠すること（所謂愚か者のおしゃべり）を防止する機能も提供する。これは、サブスクライバ３のバスガーディアン６が共通使用可能状態、本例では現在サイクル８においてどのサブスクライバ３が多数のサブスクライバ３により使用可能な共用スロット１０でデータを送信できるかを決定するサイクルカウンタにアクセスすることにより達成することができる。バスガーディアン６のローカルカウンタはサイクルカウンタと同期させて、現在サイクル８におけるサブスクライバ３のデータ送信権をローカルカウンタに基づいてモニタすることができるようにする。
【００６９】
バスガーディアン６のローカルカウンタを共通使用可能サイクルカウンタと同期させるには種々の方法が考えられる。一つの実現可能なオプションはカウンタを同期信号によってアクティブに同期させる直接同期である。他の可能な方法は、バスガーディアン６が最初にこれに割り当てられたサブスクライバの伝送モードを観測し、それに基づいてカウンタを同期させる間接同期である。
【００７０】
サブスクライバ３内に既に存在する信号であってバスガーディアン６に供給されるＡＲＭ信号のような信号を同期信号として使用することができる。この信号が通信システム１の始動後に所定値を示すときに同期を生起させることができる。また、この信号が所定の信号パターンを有するときに同期を生起させることもできる。さらにまた  、独立の信号を使用し、これをバスガーディアン６の別のピンまたはこれまで不使用のピンに供給することもできる。
【００７１】
本発明の方法を実行するには、サブスクライバ３がデータを伝送媒体２を介して送信し得るサイクル８に関する情報を少なくともサブスクライバ３の通信コントローラ５内に格納する。伝送すべきデータは、ユニバーサルサイクルカウンタが、当該サブスクライバ３が多数のサブスクライバにより使用可能な共用スロット１０での送信権を有するサイクルに対応する値を示すときにのみ送信される。この目的のために、通信コントローラ５はサイクルカウンタの現在値をチェックし、設定データと比較しなければならない。比較の結果が一致の場合には、通信コントローラ５はデータ送信命令をバスドライバ７に送る。
【００７２】
通信コントローラ５がバスガーディアン６で保護される場合には、バスガーディアン６をサイクルカウンタと同期させ、バスガーディアンによってサイクルカウンタの現在値を入力し、設定データと比較し、一致の場合にバスドライバ７にデータ送信許可を与える必要がある。
【００７３】
この目的のために、コンピュータ素子、特にマイクロプロセッサが通信コントローラ及び／又はバスガーディアン６に設けられ、これらの素子が本発明の方法を実行するようプログラムされたコンピュータプログラムを実行する。図５は通信コントローラ５及びバスガーディアン６を図式的に示す。これらは特にフラッシュメモリの形態の電気メモリ記憶素子１０を有する。本発明の方法を実行するようプログラムされたコンピュータプログラムがこのメモリ記憶素子１０に格納される。コンピュータプログラムは、該プログラムをこれを実行するコンピュータ素子にセクション単位でまたは全体として転送することによって実行される。コンピュータプログラムはメモリ記憶素子１０からデータ伝送接続１２を経て計算素子１１に転送される。データ伝送接続１２は例えばバスシステムの形態をとる。コンピュータ素子１１においてコンピュータプログラムの実行中に得られた計算の結果もデータ伝送接続１２を経てメモリ記憶素子１０へ反対方向に転送し、記憶させることができる。
【００７４】
本発明はハードウエアの形態に実現することもできること明らかである。この実現は、バスガーディアン６がコンピュータプログラムを実行する別個のコンピュータ素子１１（プロセッサ）を必要としない利点を有する。その代わり、バスガーディアン６は本発明の方法を実行できるようにごく少数の追加のハードウエア素子によって拡張することができる。
【図面の簡単な説明】
【００７５】
【図１】本発明の通信システムの一つの好適実施例を示す図である。
【図２】図１に示す通信システムのための本発明によるサブスクライバの一つの好適実施例を示す図である。
【図３】図１に示す本発明の通信システムで通信媒体を経由してデータを伝送するためのための多数のスロットを有するサブスクライバを示す図である。
【図４】図３に示す多数のサイクルを有するメタサイクルを示す図である。
【図５】図２に示す本発明によるサブスクライバの通信コントローラ及びバスガーディアンの一つの好適実施例を示す図である。
【図１】
2006525725.tif 000003
【図２】
2006525725.tif 000004
【図３】
2006525725.tif 000005
【図４】
2006525725.tif 000006
【図５】
2006525725.tif 000007
【国際調査報告】
2006525725.tif 000008
2006525725.tif 000009
2006525725.tif 000010