(57)【要約】【課題】ネットワークに接続されている通信装置を用いてネットワーク障害時の動作検証を実行することができる通信装置、通信方法及び通信制御プログラムを提供すること【解決手段】本発明にかかる通信装置は、複数の通信装置が相互に通信する通信バス２及び３に接続され、タイムトリガ通信を行う通信装置に関する。割り当てられたタイミングに出力データを生成するデータ生成部２１と、通信バス２及び３に通信装置の動作検証に用いられ、通信バス２及び３上の障害を模擬的に発生させる障害信号を生成する障害信号生成部１１と、動作検証を行う場合は、障害信号生成部１１により生成された障害信号を通信バス２及び３に出力し、動作検証を行わない場合は、前記データ生成部２１により生成されたデータを通信バス２及び３に出力する出力部３３及び３４と、を備えるものである。【選択図】図１
2011004310.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信装置が相互に通信するネットワークに接続され、当該ネットワークにデータを出力するタイミングが定期的に割り当てられるタイムトリガ通信を行う通信装置であって、
前記定期的に割り当てられるタイミングに出力するデータを生成するデータ生成部と、
前記ネットワークに接続されている他の通信装置の動作検証に用いられ、当該ネットワーク上の障害を模擬的に発生させる障害信号を生成する障害信号生成部と、
前記動作検証を行う場合は、前記障害信号生成部により生成された障害信号を前記ネットワークに出力し、当該動作検証を行わない場合は、前記データ生成部により生成されたデータを当該ネットワークに出力する出力部と、を備える通信装置。
【請求項２】
前記出力部は、前記動作検証を行うタイミングでは前記障害信号生成部により生成された障害信号を前記データ生成部により生成されたデータより優先して前記ネットワークに出力し、当該動作検証を行うタイミング以外のタイミングではデータ生成部により生成されたデータを当該ネットワークに出力することを特徴とする請求項１記載の通信装置。
【請求項３】
前記動作検証を行うタイミングか、もしくは当該動作検証を行うタイミング以外のタイミングかを判定する判定部をさらに備えることを特徴とする請求項２記載の通信装置。
【請求項４】
前記判定部は、前記動作検証を行うタイミングと判定した場合、前記障害信号生成部により生成された障害信号を前記ネットワークへ出力することを許可する許可信号を前記出力部へ出力することを特徴とする請求項３記載の通信装置。
【請求項５】
前記出力部は、前記許可信号を取得した場合、前記障害信号生成部により生成された障害信号を前記データ生成部により生成されたデータより優先して前記ネットワークへ出力することを特徴とする請求項４記載の通信装置。
【請求項６】
前記出力部は、前記データ生成部により生成されたデータ又は前記障害信号生成部により生成された障害信号を前記ネットワークへ出力するとともに、当該データ又は当該障害信号と電圧レベルの異なる信号を当該ネットワークへ出力することを特徴とする請求項１〜５のいずれか１項に記載の通信装置。
【請求項７】
前記出力部は、ＦｌｅｘＲａｙ通信バスへ前記データ生成部により生成されたデータ又は前記障害信号生成部により生成された障害信号を出力することを特徴とする請求項１〜６のいずれか１項に記載の通信装置。
【請求項８】
複数の通信装置が接続されているネットワークにデータを出力するタイミングが定期的に割り当てられるタイムトリガ通信を行う通信方法であって、
前記ネットワークに接続されている通信装置について当該ネットワークに障害が発生した場合の動作検証を行うタイミングが否かを判定し、
前記動作検証を行うタイミングの場合、前記ネットワークに接続されている複数の通信装置のうちいずれかの通信装置から当該ネットワークへ当該ネットワーク上の障害を模擬的に発生させる障害信号を出力し、
前記動作検証を行うタイミング以外のタイミングの場合、前記定期的に割り当てられる出力タイミングに出力するデータを前記ネットワークに出力する、通信方法。
【請求項９】
前記動作検証を行うタイミングの場合、前記ネットワークに接続されている複数の通信装置のうちいずれかの通信装置から当該ネットワークへ出力する障害信号を、前記定期的に割り当てられる出力タイミングに出力するデータよりも優先して当該ネットワークへ出力することを特徴とする請求項８記載の通信方法。
【請求項１０】
複数の通信装置が相互に通信するネットワークに接続され、当該ネットワークにデータを出力するタイミングが定期的に割り当てられるタイムトリガ通信を行う通信装置に用いられる通信制御プログラムであって、
前記ネットワークに接続されている他の通信装置の動作検証を行う場合は、当該ネットワークへ当該ネットワーク上の障害を模擬的に発生させる障害信号を出力し、当該動作検証を行わない場合は、前記定期的に割り当てられる出力タイミングに出力するデータを当該ネットワークへ出力するステップ、を通信装置の制御コンピュータに実行させる通信制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置、通信方法及び通信制御プログラムに関し、特にタイムトリガ通信を行う通信装置、通信方法及び通信制御プログラムに関する。
【背景技術】
【０００２】
車載ＬＡＮ（Local Area Network）通信プロトコルの1つとして、タイムトリガ型方式のＦｌｅｘＲａｙが存在する。ＦｌｅｘＲａｙの通信コントローラは、自己あるいは他ノードを起因とするネットワーク障害を常に監視、検出する。ＦｌｅｘＲａｙ通信プロトコルは、この通信コントローラの動作について規定している。そして、検出されたネットワーク障害により通信維持が困難な水準と判定された場合、通信コントローラは、通常の同期通信を確立している状態（Normal Active）から通信を停止し一切の送信および受信を行わない状態（HALT)に移行する。この機能は、ＦｌｅｘＲａｙ通信プロトコルによって義務づけられている。さらに、この機能は、ＦｌｅｘＲａｙ通信プロトコルに準拠する通信コントローラが必ず実現しなければならない機能である。また、車載ＬＡＮ通信に用いられているＣＡＮ（Controller Area Network）と比較すると、ＦｌｅｘＲａｙは、通信コントローラで異常な通信状態の判定を行い、もし判定結果が異常であれば通信バスからの離脱制御を自動的に行う、という点においてプロトコル仕様上の改善がみられる。
【０００３】
このような通信中の異常発生時におけるＦｌｅｘＲａｙ通信において、通信コントローラは、通信バス上で生じる障害発生によって、通信プロトコル上受信した信号が０あるいは１とデコードされるべきタイミングで、期待と異なる信号を受信することがある。この場合、通信コントローラが、その結果をエラーと判定し、当該エラーが致命的な状態であれば通信プロトコルに従ってＨＡＬＴに移行することができるか否か、を確認する評価方法や装置が必要となる。
【０００４】
ＦｌｅｘＲａｙ通信では、ユーザーが任意に値を設定できる部分（フレームのデータセクション）を除いてＦｌｅｘＲａｙフレーム中の各信号の０／１の状態は通信プロトコルおよび通信パラメータによって厳密に規定される。そのため、エラー検出及びエラー判定をし、その後の取り扱い処理が適切になされるかを確認する評価はとりわけ重要なものとなる。
【０００５】
非特許文献１に開示された、ＦｌｅｘＲａｙ通信バスに任意の障害を発生させ、障害時の動作確認を行う装置を含むネットワーク構成について図９を用いて説明する。
【０００６】
図９において、障害生成器１０８は、ＦｌｅｘＲａｙ通信バス１０５及び１０６の状態を常に監視し、ＦｌｅｘＲａｙ通信バス１０５及び１０６に送出されるフレームを取得する。その取得結果により、障害生成器１０８は、その時点でのＦｌｅｘＲａｙ通信バス１０５及び１０６の状態が、評価実施前にあらかじめ定められた障害となる信号が送出されるべきタイミングであると判定した場合、ノイズとなる障害をＦｌｅｘＲａｙ通信バス１０５及び１０６に送出する。これにより通信装置１００と他ノード１０７の通信において、他ノード１０７が、障害生成器１０８より障害信号を取得することにより、障害信号を取得した場合の他ノード１０７の動作を確認することができる。
【０００７】
障害生成器１０８をＦｌｅｘＲａｙ通信バス１０５及び１０６に接続することによって、通信装置１００に障害を発生させた場合において、他ノード１０７が障害発生時に期待される動作をするかどうかの評価を可能にしている。
【０００８】
特許文献１には、複数の電子制御ユニットを装備したＬＡＮシステムにおいて、意図的に通信異常を発生させ、異常発生時の各電子制御ユニット及びＬＡＮシステム全体の挙動の解析評価を可能にするシステムについて開示されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開平５−２６００５５号公報
【非特許文献】
【００１０】
【非特許文献１】FlexRay Disturbance Tool GT360  横河ディジタルコンピュータ  http://www.yokogawa-digital.com/FLEXpike/
【発明の概要】
【発明が解決しようとする課題】
【００１１】
ＦｌｅｘＲａｙは、タイムトリガ方式の通信方法である。そのため、ＦｌｅｘＲａｙ通信バスに接続されている各ノードは、いつ、どのようなフレームを送信または受信するかに関する通信スケジュールが予め定められている。ＦｌｅｘＲａｙ通信バス上に接続されている各ＦｌｅｘＲａｙ通信装置がそのスケジュールに同期して通信を行うために、各ＦｌｅｘＲａｙ通信装置に搭載されている通信コントローラは、ＦｌｅｘＲａｙ通信バス上に送出される同期用のフレームを受信して、FlexRay global timeと呼ばれる時間を算出し、誤差の補正計算を行う。通信コントローラは、この算出されたFlexRay global timeを基準として、各ＦｌｅｘＲａｙ通信装置に予め許可されたFlexRay global timeのタイミングでＦｌｅｘＲａｙ通信バスへのフレーム送信処理を行う。ＦｌｅｘＲａｙ通信は、この通信コントローラが自発的に同期を維持する仕組みによって、ＦｌｅｘＲａｙ通信装置間のフレーム送信権についてのバス・アービトレーションの問題を解決している。
【００１２】
ＦｌｅｘＲａｙ通信バスに異常を発生させた状況下での評価を行う場合、上述した通信スケジュールに合わせてフレームの任意の箇所に障害を発生させる手法が考えられる。この場合、ＦｌｅｘＲａｙ通信装置とは別に障害生成器を用意するが、その障害生成器は、ＦｌｅｘＲａｙ通信装置とは独立して動作しなければならない。さらに、障害生成器は、ＦｌｅｘＲａｙ通信バス上を流れるフレーム／データの送受信機能、解析機能を持つ必要がある。すくなくとも、その障害生成器は、ＦｌｅｘＲａｙ通信装置と同等以上の通信機能を持つ必要がある。
【００１３】
さらに、障害を印加したフレームをＦｌｅｘＲａｙ通信バスに送出するため、その障害生成器は、ＦｌｅｘＲａｙ通信バスに電気的に接続される必要がある。このことは、評価対象の通信ネットワークの電気的、物理的条件を変化させるという問題を生じる。一般に、あるネットワークにおいて参加するノードを追加するために通信装置を電気的、物理的に接続した場合、ネットワーク全体の信号伝播のための遅延が増大する。ＦｌｅｘＲａｙ通信の場合について、以下に説明する。
【００１４】
図１０は、障害生成器１０８をＦｌｅｘＲａｙ通信バス１０５及び１０６に接続させた構成例を示す。通信装置１００及び１０７は、いずれもＦｌｅｘＲａｙ通信バス１０５及び１０６を共有している。ここで、通信装置１００の通信トランシーバ１０３からＦｌｅｘＲａｙ通信バス１０５までの距離をＬ１とする。同様にして、通信装置１０７の通信トランシーバからＦｌｅｘＲａｙ通信バス１０５までの距離をＬ２とする。さらに、ＦｌｅｘＲａｙ通信バス１０５の長さをＬ３とする。ここで、評価の実施のために通信装置１００及び１０７は、障害生成器１０８から出力される信号を取得する必要がある。そのため、図１０のネットワーク構成においては、障害生成器１０８を接続する前のネットワーク構成と比べて、新たに障害生成器１０８からＦｌｅｘＲａｙ通信バス１０５までの配線長Ｌ４の経路を電気信号が通る時間も電気信号の伝播遅延として見積もりに入れる必要がある。
【００１５】
FlexRay Protocol Specification Version 2.1 Revision Aには、このような物理的な配線長によって生じる伝播遅延を表すパラメータの算出式が定義されている。図１１にその算出式を示す。算出式中Line Lengthが、通信装置間の経路情報に相当するパラメータである。この値を元に算出されるパラメータgdMaxPropagationDelayは、ＦｌｅｘＲａｙネットワーク設計時に静的に算出され、全ノードが同じ値を共有するグローバルなパラメータである。通信コントローラ１０２は、このgdMaxPropagationDelayを元にしてネットワーク伝播遅延の最悪値を認識する。そして通信コントローラ１０２は、かかる最悪値に相当するネットワーク伝搬遅延が発生した場合にも、他の通信コントローラとの間でＦｌｅｘＲａｙの同期通信が確立できるように通信制御を行う。
【００１６】
さらに、ＦｌｅｘＲａｙの物理層の規格の関連文書の１つである、FlexRay Electrical Physical Layer Application Notes Version 2.1 Revision Bにおいて、ＦｌｅｘＲａｙ通信バス中に接続される通信装置とＦｌｅｘＲａｙ通信バスとの配線長の関係が示されている。その記述内容を図１２に示す。図１２では、ＦｌｅｘＲａｙ通信バスに接続される通信装置の数が多くなるに従い、許容される配線長の長さが短くなっていることが示されている。
【００１７】
このように、新たな通信装置をネットワークに接続することの問題点として、通信の伝播遅延が増大することが挙げられる。さらに注意しなければならないことは、図１０に接続されている障害生成器１０８は、通信評価の目的のみでネットワークに接続され、通信評価後には取り外されるものにすぎず、ネットワーク構成にはその存在が想定されていないことである。この障害生成器１０８を接続することによってネットワーク通信における伝播遅延が発生するため、本来であれば図１１の計算式に従ってネットワークの伝播遅延が事前に算出され、かつネットワークに参加する全通信装置がその情報を共有する必要がある。しかし、この障害生成器１０８はあくまで通信評価のために接続されているに過ぎないため、そのような処置はとられない。すなわち、この障害生成器１０８がネットワークに電気的、物理的に接続することによって、ＦｌｅｘＲａｙ通信バスを含むネットワークの前提条件が変わってしまう問題がある。
【課題を解決するための手段】
【００１８】
本発明の第１の態様にかかる通信装置は、複数の通信装置が相互に通信するネットワークに接続され、当該ネットワークにデータを出力するタイミングが定期的に割り当てられるタイムトリガ通信を行う通信装置であって、前記定期的に割り当てられるタイミングに出力するデータを生成するデータ生成部と、前記ネットワークに接続されている他の通信装置の動作検証に用いられ、当該ネットワーク上の障害を模擬的に発生させる障害信号を生成する障害信号生成部と、前記動作検証を行う場合は、前記障害信号生成部により生成された障害信号を前記ネットワークに出力し、当該動作検証を行わない場合は、前記データ生成部により生成されたデータを当該ネットワークに出力する出力部と、を備えるものである。
【００１９】
このような構成により、ネットワークに接続されている通信装置が障害信号を生成することができるため、障害信号を生成する障害信号生成器をネットワークに接続することなく動作検証を実施することができる。
【００２０】
本発明の第２の態様にかかる通信方法は、複数の通信装置が接続されているネットワークにデータを出力するタイミングが定期的に割り当てられるタイムトリガ通信を行う通信方法であって、前記ネットワークに障害が発生した場合における当該ネットワークに接続されている通信装置の動作検証を行うタイミングが否かを判定し、前記動作検証を行うタイミングの場合、前記ネットワークに接続されている複数の通信装置のうちいずれかの通信装置から当該ネットワークへ当該ネットワーク上の障害を模擬的に発生させる障害信号を出力し、前記動作検証を行うタイミング以外のタイミングの場合、前記定期的に割り当てられる出力タイミングに出力するデータを前記ネットワークに出力するものである。
【００２１】
このような方法により、ネットワークに接続されている通信装置が障害信号をネットワークに出力することができるため、障害信号を生成する障害信号生成器をネットワークに接続することなく動作検証を実施することができる。
【００２２】
本発明の第３の態様にかかる通信制御プログラムは、複数の通信装置が相互に通信するネットワークに接続され、当該ネットワークにデータを出力するタイミングが定期的に割り当てられるタイムトリガ通信を行う通信装置に用いられる通信制御プログラムであって、前記ネットワークに接続されている他の通信装置の動作検証を行う場合は、当該ネットワークへ当該ネットワーク上の障害を模擬的に発生させる障害信号を出力し、当該動作検証を行わない場合は、前記定期的に割り当てられる出力タイミングに出力するデータを当該ネットワークへ出力するステップ、を通信装置の制御コンピュータに実行させるものである。
【００２３】
このようなプログラムにより、ネットワークに接続されている通信装置が障害信号を生成することができるため、障害信号を生成する障害信号生成器をネットワークに接続することなく動作検証を実施することができる。
【発明の効果】
【００２４】
本発明により、ネットワークに接続されている通信装置を用いてネットワーク障害時の動作検証を実行することができる通信装置、通信方法及び通信制御プログラムを提供することができる。
【図面の簡単な説明】
【００２５】
【図１】実施の形態１にかかる通信システムの構成図である。
【図２】実施の形態１にかかる通信装置の構成図である。
【図３】実施の形態１にかかる障害信号出力に関するフローチャートである。
【図４】実施の形態１にかかる出力信号の波形図である。
【図５】実施の形態１にかかる障害信号に関する真理値を示した図である。
【図６】実施の形態１にかかる障害信号に関する真理値を示した図である。
【図７】実施の形態１のその他の実施の形態にかかる通信装置の構成図である。
【図８】実施の形態１にかかる信号出力処理をコンピュータに実行させる場合のフローチャートである。
【図９】従来の通信システムの構成図である。
【図１０】従来の通信システムの構成図である。
【図１１】従来のＦｌｅｘＲａｙ通信における遅延時間算出式に関する図である。
【図１２】従来のＦｌｅｘＲａｙ通信におけるノード数と配線長の関連を示した図である。
【発明を実施するための形態】
【００２６】
（実施の形態１）
以下、図面を参照して本発明の実施の形態について説明する。図１は、本発明の実施の形態１にかかる通信システムの構成例を示したものである。本発明の実施の形態１にかかる通信システムは、通信装置１と、ＦｌｅｘＲａｙ通信バス２及び３と、他ノード４と、を備えている。
【００２７】
次に、通信装置１の構成例について説明する。通信装置１は、ＭＣＵ（Micro Controller Unit）１０と、ＣＣ（通信コントローラ）２０と、Ｔｒ（通信トランシーバ）３０＿１と、Ｔｒ３０＿２と、を有している。
【００２８】
ＭＣＵ１０は、通信装置１全体の制御を行う。ＭＣＵ１０は、Ｔｒ３０＿１及び３０＿２へ障害信号及び制御信号を出力する。この障害信号は、ネットワークに障害を発生させた場合における、当該ネットワークに接続されている通信装置の動作検証に用いられる。つまり、障害信号とは、ネットワーク上の障害を模擬的に発生させる信号である。ここで、ネットワークに障害が発生する場合とは、ＦｌｅｘＲａｙ通信バスに障害が発生した場合及びＦｌｅｘＲａｙ通信バスに接続されている通信装置に障害が発生した場合を含む。ＭＣＵ１０は、通信線５１を介して障害信号をＴｒ３０＿１及び３０＿２へ出力し、通信線５２を介して制御信号をＴｒ３０＿１及びＴｒ３０＿２へ出力してもよく、同一の物理線を介して障害信号及び制御信号を出力してもよい。また、ＭＣＵ１０は、ＣＣ２０がＦｌｅｘＲａｙ通信バス２及び３から取得する同期信号に基づいて算出されるFlexRay global timeの情報をＣＣ２０から取得する。
【００２９】
ＣＣ２０は、Ｔｒ３０＿１及び３０＿２がＦｌｅｘＲａｙ通信バス２及び３に出力するデータを生成し、Ｔｒ３０＿１及び３０＿２へ出力する。また、ＣＣ２０は、ＭＣＵ１０へFlexRay global timeの情報を出力する。
【００３０】
Ｔｒ３０＿１は、ＭＣＵ１０から取得した障害信号と、ＣＣ２０から取得したデータとのどちらか一方をＦｌｅｘＲａｙ通信バス２へ出力する。Ｔｒ３０＿２も同様にＭＣＵ１０から取得した障害信号と、ＣＣ２０から取得したデータとのどちらか一方をＦｌｅｘＲａｙ通信バス３へ出力する。Ｔｒ３０＿１とＴｒ３０＿２は、いずれも障害信号とデータとを差動信号としてＦｌｅｘＲａｙ通信バス２及び３に出力する。このように、通信装置１は、同一内容の信号をＦｌｅｘＲａｙ通信バス２及び３へ出力することで、ネットワークの２重化に対応し信頼性の向上を図っている。
【００３１】
次に、図２を用いて本発明の実施の形態１にかかる通信装置１の詳細な構成例について説明する。通信装置１は、図１と同様に、ＭＣＵ１０と、ＣＣ２０と、Ｔｒ３０＿１及び３０＿２とを備えている。
【００３２】
ＭＣＵ１０は、障害信号生成部１１と、障害信号制御部１２と、制御信号入出力部１３と、を有している。障害信号生成部１１は、ＦｌｅｘＲａｙ通信バス２及び３に接続されている他の通信装置が、ＦｌｅｘＲａｙ通信バス２及び３から障害信号を取得した場合の動作確認を行うために、障害信号を生成する。具体的には、障害信号生成部１１は、ＦｌｅｘＲａｙ通信バス２及び３に接続されている他の通信装置が０あるいは１とデコードされたデータを受信すべきタイミングに、本来受信すべき信号と異なる信号を生成して出力する。障害信号生成部１１は、生成した障害信号をＴｒ３０＿１の障害信号入力部３１が有するＤＩＳＴＵＲＢ＿ＤＡＴＡ端子４１に出力する。また、障害信号生成部１１は、Ｔｒ３０＿２に対しても同様に、Ｔｒ３０＿２の障害信号入力部が有するＤＩＳＴＵＲＢ＿ＤＡＴＡ端子に障害信号を出力する。
【００３３】
障害信号制御部１２は、障害信号生成部１１が生成した障害信号を、Ｔｒ３０＿１及び３０＿２からＦｌｅｘＲａｙ通信バス２及び３へ出力するタイミングを制御する。具体的には、はじめに、障害信号制御部１２は、ＣＣ２０からFlexRay global timeを取得する。障害信号制御部１２は、取得したFlexRay global timeが障害信号を出力するタイミングとして予め定められたタイミングに相当するか否かを判定する。障害信号制御部１２は、予め定められたタイミングであると判定した場合、Ｔｒ３０＿１の障害信号入力部が有するＤＩＳＴＵＲＢ＿ＥＮＡＢＬＥ端子４２をアサートし、Ｔｒ３０＿１の障害信号入力部３１へ障害信号の入力を要求する信号を出力する。障害信号制御部１２は、同様にＴｒ３０＿２の障害信号入力部３１へ障害信号の入力を要求する信号を出力する。なお、障害時動作確認が確認者等の操作により任意に行われる場合、障害信号制御部１２は、確認者等の操作により障害信号出力指示が入力されたか否かを判定してもよい。
【００３４】
制御信号入出力部１３は、Ｔｒ３０＿１及び３０＿２とＦｌｅｘＲａｙ通信バス２及び３との間の動作モードを制御する。具体的には、制御信号入出力部１３は、バス監視部３５が有するＥＲＲＮ端子５０からＦｌｅｘＲａｙ通信バス２もしくは３の異常通知を示す信号を取得する。この場合、制御信号入出力部１３は、Ｔｒ３０＿１もしくはＴｒ３０＿２からＦｌｅｘＲａｙ通信バス２もしくは３に対する信号出力を停止するＳｔａｎｄｂｙモードへの移行を通知する信号を出力部３３及び３４が有するＥＮ端子４７へ出力する。また、制御信号入出力部１３は、ＦｌｅｘＲａｙ通信バス２もしくは３が異常状態から正常状態へ復旧した場合に、Ｔｒ３０＿１もしくはＴｒ３０＿２からＦｌｅｘＲａｙ通信バス２もしくは３へ信号出力の停止を解除するＮｏｒｍａｌモードへの移行を通知する信号をＥＮ端子４７へ出力する。
【００３５】
次に、ＣＣ２０の構成例について説明する。ＣＣ２０は、データ生成部２１と、データ制御部２２と、FlexRay global time生成部２３と、を有している。データ生成部２１は、タイムトリガ型通信において、定期的に割り当てられるデータ出力タイミングにおいて、ＦｌｅｘＲａｙ通信バス２及び３に出力するデータを生成する。具体的には、データ生成部２１が生成するデータは、ＴＳＳ（Transmission Start Signal）、ＦＳＳ（Frame Start Signal）、又はＢＳＳ（Byte Start Signal）等である。データ生成部２１は、生成したデータを、Ｔｒ３０＿１及び３０＿２のデータ入力部３２が有するＴＸＤ（送信信号入力）端子４４に出力する。
【００３６】
データ制御部２２は、データ生成部２１が生成したデータを、Ｔｒ３０＿１及びＴｒ３０＿２からＦｌｅｘＲａｙ通信バス２及び３へ出力するタイミングを制御する。具体的には、タイムトリガ型通信において、定期的に割り当てられるデータ出力タイミングに、データ制御部２２は、送信許可信号を、Ｔｒ３０＿１及びＴｒ３０＿２のデータ入力部が有するＴＸＥＮ（送信許可入力）端子４５に出力する。送信許可は、信号レベルをＨｉｇｈもしくはＬｏｗレベルに設定することにより通知される。
【００３７】
FlexRay global time生成部２３は、FlexRay global timeを生成する。ここで、FlexRay global timeは、ＦｌｅｘＲａｙ通信バス２及び３に接続されている複数の通信装置が共通に保持するタイミング情報である。FlexRay global timeは、絶対時刻を示してもよいし、ある基準時間からの経過時間を示してもよい。具体的には、FlexRay global time生成部２３は、ＦｌｅｘＲａｙ通信バス２及び３から同期信号を取得する。この同期信号は、ＦｌｅｘＲａｙ通信バス２及び３に接続されている通信装置が共通に取得する信号である。FlexRay global time生成部２３は、取得した同期信号に基づいてFlexRay global timeを算出する。FlexRay global time生成部２３は、生成したFlexRay global timeを、データ制御部２２及び障害信号制御部１２へ出力する。
【００３８】
次に、Ｔｒ３０＿１の構成例について説明する。Ｔｒ３０＿２の構成例についてはＴｒ３０＿１と同様であるため、説明を省略する。Ｔｒ３０＿１は、ＦｌｅｘＲａｙ通信バス２に接続され、Ｔｒ３０＿２は、ＦｌｅｘＲａｙ通信バス３に接続される。Ｔｒ３０＿１は、障害信号入力部３１と、データ入力部３２と、出力部３３及び３４と、バス監視部３５と、を有している。また、障害信号入力部３１は、ＤＩＳＴＵＲＢ＿ＤＡＴＡ端子４１及びＤＩＳＴＵＲＢ＿ＥＮＡＢＬＥ端子４２を有している。データ入力部３２は、ＲＸＤ端子４３と、ＴＸＤ端子４４と、ＴＸＥＮ端子４５と、ＳＴＢＮ端子４６と、を有している。出力部３３は、ＥＮ端子４７と、ＢＰ端子４８とを有している。出力部３４は、ＥＮ端子４７と、ＢＭ端子４９とを有している。バス監視部３５は、ＥＲＲＮ端子５０を有している。
【００３９】
障害信号入力部３１は、障害信号生成部１１により生成された障害信号をＤＩＳＴＵＲＢ＿ＤＡＴＡ端子４１から取得する。さらに、障害信号入力部３１は、障害信号を出力するタイミングに、ＤＩＳＴＵＲＢ＿ＥＮＡＢＬＥ端子４２がアサートされ、ＤＩＳＴＵＲＢ＿ＤＡＴＡ端子４１を介して取得した障害信号を出力部３３及び３４に出力する。つまり、ＤＩＳＴＵＲＢ＿ＥＮＡＢＬＥ端子４２は、障害信号制御部１２の制御で有効にされることにより、取得した障害信号を出力部３３及び３４に出力することができる。出力部３３及び３４は、取得した障害信号をラッチする。
【００４０】
データ入力部３２は、データ生成部２１により生成されたデータを、ＴＸＤ端子４４を介して取得する。さらに、データ入力部３２は、データ制御部２２からＦｌｅｘＲａｙ通信バス２及び３へ定期的に割り当てられるデータ出力タイミングか否かを示す信号を、ＴＸＥＮ端子４５を介して取得する。ＴＸＥＮ端子４５を介して取得した信号が、ＦｌｅｘＲａｙ通信バス２及び３へデータ出力を割り当てられているタイミングであることを示す場合、データ入力部３２は、ＴＸＤ端子４４を介して取得したデータを出力部３３及び３４に出力する。また、データ入力部３２は、ＦｌｅｘＲａｙ通信バス２及び３から取得したデータを、ＲＸＤ端子４３を介してデータ制御部２２へ出力する。
【００４１】
出力部３３及び３４は、障害信号もしくはデータをＦｌｅｘＲａｙ通信バス２へ出力する。ここで、出力部３３及び３４は、障害信号入力部３１から障害信号を取得した場合、データ入力部３２から取得したデータよりも優先的に障害信号をＦｌｅｘＲａｙ通信バス２へ出力する。出力部３３は、障害信号入力部３１から取得した障害信号又はデータ入力部３２から取得したデータのそれぞれに設定されている信号レベルをそのままＦｌｅｘＲａｙ通信バス２へ出力する。出力部３４は、障害信号入力部３１から取得した障害信号又はデータ入力部３２から取得したデータに設定されている信号レベルを反転してＦｌｅｘＲａｙ通信バス２へ出力する。これにより、出力部３３及び３４から出力される信号は、差動信号を形成する。
【００４２】
バス監視部３５は、ＦｌｅｘＲａｙ通信バス２の状態を監視し、異常状態を検出した場合、制御信号入出力部１３へ通知する。
【００４３】
次に、図３を用いて、本発明の実施の形態１にかかる通信装置１の処理の流れについて説明する。
【００４４】
はじめに、FlexRay global time生成部２３は、ＦｌｅｘＲａｙ通信バス２及び３から同期信号を取得し、FlexRay global timeを算出する（Ｓ１１）。
【００４５】
次に、障害信号制御部１２は、FlexRay global time生成部２３から取得したFlexRay global timeに基づいて、障害印加の時間即ち、障害信号を出力するタイミングか否かを判定する（Ｓ１２）。障害信号を出力する時間ではないと判定した場合、障害信号をＦｌｅｘＲａｙ通信バス２へ出力しない。この場合、出力部３３及び３４は、データ入力部３２から取得したデータをＦｌｅｘＲａｙ通信バス２へ出力する（Ｓ２１）。
【００４６】
次に、障害信号制御部１２により障害信号を出力する時間であると判定された場合、障害信号生成部１１は、障害信号をＨｉｇｈもしくはＬｏｗに設定し、ＤＩＳＴＵＲＢ＿ＤＡＴＡ端子４１に出力する（Ｓ１３）。
【００４７】
次に、障害信号制御部１２は、ＤＩＳＴＵＲＢ＿ＥＮＡＢＬＥ端子４２をアサートする（Ｓ１４）。これにより、障害信号入力部３１は、ＤＩＳＴＵＲＢ＿ＥＮＡＢＬＥ端子４２がアサートされたことを検出する（Ｓ１５）。障害信号入力部３１は、ＤＩＳＴＵＲＢ＿ＥＮＡＢＬＥ端子４２がアサートされたことを検出することにより、障害信号を出力部３３及び３４へ出力する。
【００４８】
次に、出力部３３及び３４は、ＤＩＳＴＵＲＢ＿ＤＡＴＡ端子４１に入力されたデータをラッチする（Ｓ１６）。出力部３３及び３４は、ラッチしたデータの信号レベルを判定する（Ｓ１７）。出力部３３及び３４がラッチしたデータの信号レベルがＨｉｇｈである場合、出力部３３は、ＢＰ端子４８から信号レベルをＨｉｇｈに設定した信号を強制的にＦｌｅｘＲａｙ通信バス２へ出力し、出力部３４はＢＭ端子４９から信号レベルをＬｏｗに設定した信号を強制的にＦｌｅｘＲａｙ通信バス２へ出力する（Ｓ１８）。また、出力部３３及び３４がラッチしたデータの信号レベルがＬｏｗである場合、出力部３３は、ＢＰ端子４８から信号レベルをＬｏｗに設定した信号を強制的にＦｌｅｘＲａｙ通信バス２へ出力し、出力部３４はＢＭ端子４９から信号レベルをＨｉｇｈに設定した信号を強制的にＦｌｅｘＲａｙ通信バス２へ出力する（Ｓ１９）。
【００４９】
次に、障害信号制御部１２は、ＤＩＳＴＵＲＢ＿ＥＮＡＢＬＥ端子４２のアサートを解除する（Ｓ２０）。
【００５０】
次に、図４を用いて本発明の実施の形態１にかかるＴｒ３０＿１及び３０＿２からＦｌｅｘＲａｙ通信バス２及び３へ出力する信号の出力結果について説明する。FlexRay global timeに示されている信号波形は、FlexRay global time生成部２３が生成したFlexRay global timeを示す。本発明の実施の形態１においては、FlexRay global timeがＸ及びＸ＋１の時に障害信号を出力する。また、FlexRay global timeは、Ｍａｃｒｏｔｉｃｋを単位とする。
【００５１】
ＭＣＵからＴｒへ出力される信号として、ＤＩＳＴＵＲＢ＿ＥＮＡＢＬＥ端子４２と、ＤＩＳＴＵＲＢ＿ＤＡＴＡ端子４１とに入力される信号波形の例を示す。ＤＩＳＴＵＲＢ＿ＥＮＡＢＬＥ端子４２に入力される信号波形は、FlexRay global timeがＸ及びＸ＋１の時に、信号レベルがＨｉｇｈを示している。これは、FlexRay global timeがＸ及びＸ＋１の時に、ＤＩＳＴＵＲＢ＿ＤＡＴＡ端子４１に入力された障害信号の出力が許可されることを示している。また、ＤＩＳＴＵＲＢ＿ＤＡＴＡ端子４１へ入力される信号は、信号レベルＬｏｗを示している。これより、障害信号入力部３１は、Ｌｏｗレベルの信号を障害信号としてＦｌｅｘＲａｙ通信バス２及び３へ出力する。
【００５２】
ＣＣからＴｒへ出力される信号として、ＴＸＥＮ端子４５とＴＸＤ端子４４とに入力される信号波形の例を示す。ＴＸＥＮ端子４５は、信号レベルがＬｏｗの場合にＦｌｅｘＲａｙ通信バス２及び３への出力が割り当てられているタイミングであることを示す。ＴＸＤ端子４４には、ＴＳＳ、ＦＳＳ、ＢＳＳ等のデータが入力されている。
【００５３】
ＴｒからＦｌｅｘＲａｙ通信バスに出力される信号として、ＢＰ端子４８とＢＭ端子４９とに入力される信号波形の例を示す。ＢＰ端子４８及びＢＭ端子４９は、差動信号を出力するために、逆の信号レベルを示す信号を出力する。ＢＰ端子４８に入力される信号は、Ｘ及びＸ＋１の期間を除いて、ＴＸＤに入力される信号と同一の波形を示す。Ｘ及びＸ＋１の期間にＴｒからＦｌｅｘＲａｙ通信バスへ出力される信号は、障害信号を出力するタイミングであるため、ＤＩＳＴＵＲＢ＿ＤＡＴＡ端子４１から出力される信号を、通信バスへ優先的に出力する。そのため、Ｘ及びＸ＋１の期間にＣＣからＴｒへ出力されたＨｉｇｈレベルの信号は、ＴｒからＦｌｅｘＲａｙ通信バスへは出力されず、ＭＣＵからＴｒへ出力された障害信号であるＬｏｗレベルの信号が、ＴｒからＦｌｅｘＲａｙ通信バスへ出力される。
【００５４】
次に、図５及び図６を用いて、本発明の実施の形態１にかかるＤＩＳＴＵＲＢ＿ＥＮＡＢＬＥ端子４２及びＤＩＳＴＵＲＢ＿ＤＡＴＡ端子４１の入力値とＢＰ端子４８及びＢＭ端子４９における障害信号の出力値との関係を説明する。図５は、ＤＩＳＴＵＲＢ＿ＥＮＡＢＬＥ端子４２にＨｉｇｈレベルの信号が入力された場合に、ＤＩＳＴＵＲＢ＿ＥＮＡＢＬＥ端子４２がアサートされる場合の真理値表である。ＤＩＳＴＵＲＢ＿ＥＮＡＢＬＥ端子４２にＬｏｗレベルの信号が入力された場合は、ＢＰ端子４８及びＢＭ端子４９から障害信号は出力されない。ＤＩＳＴＵＲＢ＿ＥＮＡＢＬＥ端子４２にＨｉｇｈレベルの信号が入力された場合は、ＢＰ端子４８からはＤＩＳＴＵＲＢ＿ＤＡＴＡ端子４１に入力された信号レベルを出力し、ＢＭ端子４９からはＢＰ端子４８の信号レベルを反転させた信号を出力する。図６は、ＤＩＳＴＵＲＢ＿ＥＮＡＢＬＥ端子４２にＬｏｗレベルの信号が入力された場合に、ＤＩＳＴＵＲＢ＿ＥＮＡＢＬＥ端子４２がアサートされる場合の真理値表である。真理値の関係については図５と同様であるため説明を省略する。
【００５５】
以上説明したように、本発明の実施の形態１にかかる通信装置を用いることにより、ＦｌｅｘＲａｙ通信バスに接続されている通信装置自体から障害信号を出力し、ＦｌｅｘＲａｙ通信バスに接続されている他の通信装置が障害信号を取得した場合の動作を確認することができる。これにより、障害信号を出力するための装置をＦｌｅｘＲａｙ通信バスに接続する必要がないため、実際の運用時と同一の環境において障害時動作確認を行うことができる。つまり、ＦｌｅｘＲａｙ通信を行うネットワークは、ＭＣＵ、ＦｌｅｘＲａｙ通信コントローラ、ＦｌｅｘＲａｙトランシーバのみでＦｌｅｘＲａｙ通信バスへの障害信号を出力することができる。これより、ＦｌｅｘＲａｙ通信を行うネットワークは、外部の障害評価用機材を接続する場合に想定されるような、評価対象の通信ネットワークの電気的、物理的条件が変化する恐れはない。
【００５６】
（その他の実施の形態）
本発明の実施の形態１においては、障害信号生成部１１及び障害信号制御部１２は、ＭＣＵに備えられているが、障害信号生成部１１及び障害信号制御部１２は、ＣＣ２０に備えられてもよい。障害信号生成部１１及び障害信号制御部１２をＣＣ２０に備えた場合の構成例について図７に示す。図７は、障害信号生成部１１及び障害信号制御部１２がＣＣ２０に備えられていること以外は図２と同様であるため、詳細な説明を省略する。この場合、障害信号を出力するタイミングを認識するために、ＣＣ２０からＭＣＵ１０へFlexRay global timeを送信する必要がない。障害信号制御部１２は、自装置内にあるFlexRay global timeを用いることで、障害信号を出力するタイミングを認識することができる。また、実施の形態１においては、ＭＣＵ１０、ＣＣ２０、Ｔｒ３０＿１及びＴｒ３０＿２のそれぞれのハードウェアに機能を分散して配置しているが、ひとつの装置に全て機能を配置してもよい。たとえば、１チップマイコンにおいて、図２もしくは図３にて示した手順を実現してもよい。
【００５７】
上述の実施の形態では、本発明をハードウェアの構成として説明したが、本発明は、これに限定されるものではない。本発明は、任意の処理を、ＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、ＤＳＰ（Digital Signal Processor）等を含むコンピュータにプログラムを実行させることにより実現することも可能である。この場合、プログラムは、記録媒体に記録して提供することも可能であり、また、インターネットその他の通信媒体を介して伝送することにより提供することも可能である。また、記憶媒体には、例えば、フレキシブルディスク、ハードディスク、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ、ＲＯＭカートリッジ、バッテリバックアップ付きＲＡＭメモリカートリッジ、フラッシュメモリカートリッジ、不揮発性ＲＡＭカートリッジ等が含まれる。また、通信媒体には、電話回線等の有線通信媒体、マイクロ波回線等の無線通信媒体等が含まれる。
【００５８】
ここで、一例として、実施の形態１で説明した通信装置１がＦｌｅｘＲａｙ通信バスに信号を出力する処理内容をコンピュータに実行させるための手順について図８を用いて説明する。
【００５９】
ステップＳ３０では、コンピュータは、FlexRay global timeを取得する。次に、ステップＳ３１では、コンピュータは、障害信号を出力するタイミングか否かを判定する。次に、ステップＳ３２では、コンピュータは、障害信号を出力するタイミングと判定した場合、障害信号生成部１１により生成された障害信号をＦｌｅｘＲａｙ通信バス２もしくは３に出力するよう制御する。次に、ステップＳ３３では、コンピュータは、障害信号を出力するタイミングではないと判定した場合、データ生成部２１により生成されたデータをＦｌｅｘＲａｙ通信バス２もしくは３に出力するよう制御する。
【００６０】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【符号の説明】
【００６１】
１    通信装置
２、３  ＦｌｅｘＲａｙ通信バス
４    他ノード
１０  ＭＣＵ
１１  障害信号生成部
１２  障害信号制御部
１３  制御信号入出力部
２０  ＣＣ
２１  データ生成部
２２  データ制御部
２３  FlexRay global time生成部
３０＿１、３０＿２  Ｔｒ
３１  障害信号入力部
３２  データ入力部
３３、３４  出力部
３５  バス監視部
４１  ＤＩＳＴＵＲＢ＿ＤＡＴＡ端子
４２  ＤＩＳＴＵＲＢ＿ＥＮＡＢＬＥ端子
４３  ＲＸＤ端子
４４  ＴＸＤ端子
４５  ＴＸＥＮ端子
４６  ＥＮ端子
４７  ＳＴＢＮ端子
４８  ＢＰ端子
４９  ＢＭ端子
５１、５２  通信線
【図１】
2011004310.tif 000003
【図２】
2011004310.tif 000004
【図３】
2011004310.tif 000005
【図４】
2011004310.tif 000006
【図５】
2011004310.tif 000007
【図６】
2011004310.tif 000008
【図７】
2011004310.tif 000009
【図８】
2011004310.tif 000010
【図９】
2011004310.tif 000011
【図１０】
2011004310.tif 000012
【図１１】
2011004310.tif 000013
【図１２】
2011004310.tif 000014