(57)【要約】【課題】通信コントローラを制御するマイコンに負荷をかけることなく通信の多重化を実現すること。【解決手段】メインコントローラ３０の送信レジスタ３３がマイコン２１から送信メッセージを受け取ると、サブコントローラ４０の送信レジスタ４３に送信メッセージを転送する。その後、メインコントローラ３０及びサブコントローラ４０の各々の送信処理部３７及び送信処理部４７が送信処理を行い、ＶＳＣ−ＥＣＵ１３やＡＴ−ＥＣＵ１１にフレームを多重送信する。したがって、マイコン２１は、１ポートしか有しない通信コントローラと同程度の処理負荷で、多重化された通信を行うことができる。【選択図】  図１
2004266671.tif 000002
【特許請求の範囲】
【請求項１】
演算を実行するマイコンと、通信を行う通信コントローラとを備えた電子装置において用いられるその通信コントローラであって、
他の電子装置から送信されたフレームに基づいて受信メッセージを生成する第１の受信処理部と、その第１の受信処理部で生成された受信メッセージを記憶する第１の受信レジスタと、前記マイコンから受け取った送信メッセージを記憶する第１の送信レジスタと、その第１の送信レジスタに記憶された送信メッセージに基づいてフレームを生成して他の電子装置に送信する第１の送信処理部とを有するメインコントローラと、
他の電子装置から送信されたフレームに基づいて受信メッセージを生成する第２の受信処理部と、その第２の受信処理部で生成された受信メッセージを記憶する第２の受信レジスタと、送信メッセージを記憶する第２の送信レジスタと、その第２の送信レジスタに記憶された送信メッセージに基づいてフレームを生成して他の電子装置に送信する第２の送信処理部とを有するサブコントローラと、を備え、
前記第１の送信レジスタは、前記マイコンから送信メッセージを受け取ると前記第２の送信レジスタに転送し、前記第２の送信処理部は、前記第２の送信レジスタに記憶された、前記第１の送信レジスタから転送された送信メッセージに基づいてフレームを生成し、他の電子装置に送信することを特徴とする通信コントローラ。
【請求項２】
請求項１に記載の通信コントローラにおいて、
更に、前記第１の受信レジスタに記憶された受信メッセージと前記第２の受信レジスタに記憶された受信メッセージとを比較する比較手段を備え、
前記第１の受信レジスタ及び前記第２の受信レジスタの何れかに受信メッセージが記憶されると、前記比較手段は、前記第１の受信レジスタと前記第２の受信レジスタとから受信メッセージを読み込んでそれらを比較し、その比較結果を表す信号を前記マイコンに伝達することを特徴とする通信コントローラ。
【請求項３】
請求項１に記載の通信コントローラにおいて、
更に、前記第１の受信レジスタと前記第２の受信レジスタとについて受信メッセージが記憶されているか否かを判定する判定手段を備え、
前記判定手段は、前記判定を行った結果、前記第１の受信レジスタには受信メッセージが記憶されておらず、前記第２の受信レジスタには受信メッセージが記憶されていた場合、前記第２の受信レジスタから前記第１の受信レジスタに受信メッセージを転送させることを特徴とする通信コントローラ。
【請求項４】
請求項１〜請求項３の何れかに記載の通信コントローラにおいて、
更に、前記メインコントローラと前記サブコントローラとを独立して動作させるスイッチ手段を備え、
前記スイッチ手段は前記マイコンからの指令によって機能し、前記スイッチ手段が機能すると、前記メインコントローラと前記サブコントローラとはお互いにメッセージの授受を行わず、前記送信レジスタは前記マイコンから直接送信メッセージを受け取ってその送信メッセージを記憶し、前記受信レジスタは記憶している受信メッセージを直接前記マイコンに伝達することを特徴とする通信コントローラ。
【請求項５】
請求項１〜請求項４の何れかに記載の通信コントローラは、前記サブコントローラを複数備えることを特徴とする通信コントローラ。
【請求項６】
請求項１〜請求項５の何れかに記載の通信コントローラを複数備え、
各々の通信コントローラの前記メインコントローラは、他の通信コントローラの前記メインコントローラあるいは前記サブコントローラと通信を行い、
各々の通信コントローラの前記サブコントローラは、他の通信コントローラの前記メインコントローラあるいは前記サブコントローラと通信を行うことを特徴とする通信システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、通信が多重化されたネットワークシステムに用いられる通信コントローラ等に関する。
【０００２】
【従来の技術】
従来、複数の制御装置を通信線を用いたネットワークで接続し、各々の制御装置が互いに協調しながら制御を行う分散システムが実現されている。これらは、制御を行う上で他の制御装置との通信が欠かせないため、システムの信頼性を向上させるべく通信線を多重化することが行われている。
【０００３】
例えば、特許文献１に示す技術は、各制御装置が複数の通信線で接続され、送信時には送信側の制御装置が各々の通信線にほぼ同時にメッセージを送信し、受信側の制御装置が、最初に受信したメッセージ以外のメッセージを破棄し、送信側の制御装置に応答メッセージを送信するという技術である。このように通信線が多重化されていれば、通信線の幾つかに障害が発生した場合でも少なくとも１つの通信線が正常であれば問題なく通信を行うことができる。
【０００４】
ここで、多重化された通信を行う従来の通信システムの一例について、図４に示す通信システム１１０のブロック図を用いて説明する。
通信システム１１０は、ＡＴ（Ａｕｔｏｍａｔｉｃ  Ｔｒａｎｓｍｉｓｓｉｏｎ）の制御を行うＡＴ−ＥＣＵ１１と、ＶＳＣ（Ｖｅｈｉｃｌｅ  Ｓｔａｂｉｌｉｔｙ  Ｃｏｎｔｒｏｌ）システムの制御を行うＶＳＣ−ＥＣＵ１３と、エンジンの制御を行うエンジンＥＣＵ１２０と、これらのＥＣＵ間を結ぶ通信線１５とを備える。この通信線１５は、第１のサブ通信線１５ａと第２のサブ通信線１５ｂとの２系統からなり、各ＥＣＵ（ＡＴ−ＥＣＵ１１、ＶＳＣ−ＥＣＵ１３及びエンジンＥＣＵ１２０）が２系統の通信を行うことができるように構成されている。次にこの２系統の通信についてエンジンＥＣＵ１２０を例に挙げて説明する。
【０００５】
エンジンＥＣＵ１２０は、エンジンを制御するためのプログラムを実行するマイコン１２１と、プロトコル処理等を実行する通信コントローラ１２３と、通信線１５から受け取った電気信号に対して各種の信号処理及び通信コントローラ１２３から受け取ったフレームに対して各種の信号処理を実行する２つのトランシーバ１２５ａ，１２５ｂとを備える。このうち通信コントローラ１２３は、メインコントローラ１３０とサブコントローラ１４０とからなり通信ポートを２系統有している。
【０００６】
メインコントローラ１３０は、受信レジスタ１３１、送信レジスタ１３３、受信処理部１３５及び送信処理部１３７を備える。受信処理部１３５は、トランシーバ１２５ａから受け取ったフレームから受信メッセージ（受信本文）を取り出し、受信レジスタ１３１は、その取り出された受信メッセージを記憶する。送信レジスタ１３３は、マイコン１２１から受け取った送信メッセージ（送信本文）を記憶し、送信処理部１３７は、送信レジスタ１３３が記憶する送信メッセージを読み出して所定の通信プロトコルにしたがったフレームを生成する。
【０００７】
一方、サブコントローラ１４０は、受信レジスタ１４１、送信レジスタ１４３、受信処理部１４５及び送信処理部１４７を備える。サブコントローラ１４０の各部は基本的にメインコントローラ１３０と同じであるため説明は省略する。
【０００８】
【特許文献１】
特開平３−２６２３５０号公報
【０００９】
【発明が解決しようとする課題】
このように構成されたエンジンＥＣＵ１２０では、マイコン１２１で実行されるプログラム中で何らかの送信処理が発生すると、マイコン１２１は、まずメインコントローラ１３０の送信レジスタ１３３に送信メッセージを書き込み、続いてサブコントローラ１４０の送信レジスタ１４３に送信メッセージを書き込み、送信指令をメインコントローラ１３０とサブコントローラ１４０とに発行（具体的にはコントロールフラグを立てる等して行われる）する。つまり、通信コントローラ１２３が備える２つの通信ポートに対して送信メッセージの書き込みや送信指令を発行する必要があり、通信コントローラが１つの通信ポートしか有しない場合と比べてマイコンの処理負荷が増えるという欠点があった。また、マイコンの処理負荷は通信コントローラの通信ポートの数に比例して増大するため、通信線の多重度を上げることも難しかった。
【００１０】
本発明は、このような問題に鑑みなされたものであり、通信コントローラを制御するマイコンに負荷をかけることなく通信の多重化を実現することを目的とする。
【００１１】
【課題を解決するための手段及び発明の効果】
上記課題を解決するためになされた請求項１に記載の通信コントローラは、メインコントローラとサブコントローラとを備える。このうち、メインコントローラは、他の電子装置から送信されたフレームに基づいて受信メッセージを生成する第１の受信処理部と、その第１の受信処理部で生成された受信メッセージを記憶する第１の受信レジスタと、マイコンから受け取った送信メッセージを記憶する第１の送信レジスタと、その第１の送信レジスタに記憶された送信メッセージに基づいてフレームを生成して他の電子装置に送信する第１の送信処理部とを有する。一方、サブコントローラは、他の電子装置から送信されたフレームに基づいて受信メッセージを生成する第２の受信処理部と、その第２の受信処理部で生成された受信メッセージを記憶する第２の受信レジスタと、送信メッセージを記憶する第２の送信レジスタと、その第２の送信レジスタに記憶された送信メッセージに基づいてフレームを生成して他の電子装置に送信する第２の送信処理部とを有する。
【００１２】
そして、メインコントローラの第１の送信レジスタが、マイコンから送信メッセージを受け取るとサブコントローラの第２の送信レジスタに転送し、サブコントローラの第２の送信処理部は、第２の送信レジスタに記憶された、メインコントローラの第１の送信レジスタから転送された送信メッセージに基づいてフレームを生成し、他の電子装置に送信する。
【００１３】
従来、通信ポートを複数有する通信コントローラの場合、マイコンがこれらの複数のポートに対してそれぞれ送信処理を行う必要があるため、１ポートしか有しない通信コントローラの場合に比べてマイコンの処理負荷が高かった。それに対し、本発明の通信コントローラは、送信メッセージがマイコンからメインコントローラの第１の送信レジスタに入力されると、サブコントローラの第２の送信レジスタにその送信メッセージを転送する。つまり、通信コントローラ内で送信メッセージのコピーを行って通信の多重化を行う。このため、本発明の通信コントローラを用いれば、マイコンは、１ポートしか有しない通信コントローラの場合と同程度の処理負荷で、多重化された通信を行うことができる。
【００１４】
ところで、一般的に通信線を多重化した場合、何れの通信線によって送られてくるメッセージが正常なのか否かを判断する必要がある。その際、マイコンが各々の通信線で送信されてきたメッセージすべてを読み込んだ後、判断する方式を採る場合がある。このような方式を採る場合は、１ポートしか有しない通信コントローラを用いる場合と比べてマイコンの処理負荷が高いという問題があった。
【００１５】
そこで、受信の場合について考えると、請求項２に記載のような通信コントローラであるとよい。つまり、メインコントローラの第１の受信レジスタに記憶された受信メッセージとサブコントローラの第２の受信レジスタに記憶された受信メッセージとを比較する比較手段を更に備えるようにする。そして、第１の受信レジスタ及び第２の受信レジスタの何れかに受信メッセージが記憶されると、比較手段が、第１の受信レジスタと第２の受信レジスタとから受信メッセージを読み込んでそれらを比較し、その比較結果を表す信号をマイコンに伝達するようになっているとよい。
【００１６】
このようになっていれば、各々の受信レジスタの受信メッセージが等しくないときのみ、マイコンはすべての受信レジスタから受信メッセージを読み込めばよく（あるいは等しくない場合はすべての受信メッセージを破棄してしまってもよい）。各々の受信レジスタの値が等しければ、何れか一つの受信レジスタから受信メッセージを読み出すだけでよくなる。このため、マイコンの処理負荷が軽くなるという効果がある。
【００１７】
また、通信線に何らかの異常があったりノイズがのったりして通信線上の信号が不正であった場合は、多くの場合プロトコル上のエラーで受信処理部は受信メッセージを生成することができない。つまり、受信レジスタは、受信メッセージが記憶されずに空の状態となる。
【００１８】
したがって、そのような場合を考えると請求項３に記載のようになっていてもよい。つまり、第１の受信レジスタと第２の受信レジスタとについて受信メッセージが記憶されているか否かを判定する判定手段を更に備えるようにする。そして、判定手段が、前記判定を行った結果、第１の受信レジスタには受信メッセージが記憶されておらず、第２の受信レジスタには受信メッセージが記憶されていた場合、第２の受信レジスタから第１の受信レジスタに受信メッセージを転送させるようになっているとよい。
【００１９】
このようになっていれば、何らかの障害で第１の受信レジスタに受信データが記憶されない場合であっても、第２の受信レジスタから受信メッセージが転送されるため、マイコンは第１の受信レジスタから受信メッセージを取得することができる。つまり、マイコンは受信時も１ポートのみ（メインコントローラ）にアクセスするだけでよくなり、他のポート（サブコントローラ）にアクセスする必要がなくなる。その結果、マイコンとサブコントローラとの間の回路をなくすことができ、装置全体を小さくすることができる。
ところで、通信コントローラは、従来のようなマイコンが各々の通信ポートに対して書き込み及び読み込みを行うような動作モードに切り替えられるようになっていてもよい。つまり、請求項４に記載のように、更に、メインコントローラとサブコントローラとを独立して動作させるスイッチ手段を備え、スイッチ手段はマイコンからの指令によって機能し、スイッチ手段が機能すると、メインコントローラとサブコントローラとはお互いにメッセージの授受を行わず、サブコントローラの送信レジスタはマイコンから直接送信メッセージを受け取って送信メッセージを記憶し、サブコントローラの受信レジスタは記憶している受信メッセージを直接マイコンに伝達するようになっていてもよい。尚、ここで言うスイッチ手段の具体例としては、メインコントローラとサブコントローラとを電気的に切り離してしまう遮断回路のようなものであるとよい。
【００２０】
このようになっていると、使用方法や使用状況に応じてマイコンからの指令によって従来の動作モードに切り替えることができて通信コントローラの使い勝手が向上する。
また、通信コントローラは、メインコントローラを１つとサブコントローラを１つ備えるようになっていてもよいが、請求項５に記載のように、サブコントローラを複数備えるようになっていてもよい。
【００２１】
このようになっていれば、通信をより多重化することができ、通信の信頼性を向上させることができる。しかも、その場合でも、マイコンは、１ポートしか有しない通信コントローラと同程度の処理負荷で、多重化された通信を行うことができる。
【００２２】
そして、請求項６に記載のように、上述したような通信コントローラを備えた通信システムを構成するとよい。つまり、請求項１〜請求項５の何れかに記載の通信コントローラを複数備え、各々の通信コントローラのメインコントローラは、他の通信コントローラのメインコントローラあるいはサブコントローラと通信を行い、各々の通信コントローラのサブコントローラは、他の通信コントローラのメインコントローラあるいはサブコントローラと通信を行うようにして実現するとよい。
【００２３】
このようになっていれば、上述した通信コントローラを備える各々の装置が、上述した効果を享受することができ、システム全体の信頼性を向上させることができる。
【００２４】
【発明の実施の形態】
以下、本発明が適用された実施例について図面を用いて説明する。尚、本発明の実施の形態は、下記の実施例に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の形態を採りうることは言うまでもない。
【００２５】
図１は、実施例の通信コントローラ２３が用いられた通信システム１０を示すブロック図である。通信システム１０は、ＡＴ（Ａｕｔｏｍａｔｉｃ  Ｔｒａｎｓｍｉｓｓｉｏｎ）の制御を行うＡＴ−ＥＣＵ１１と、ＶＳＣ（Ｖｅｈｉｃｌｅ  Ｓｔａｂｉｌｉｔｙ  Ｃｏｎｔｒｏｌ）システムの制御を行うＶＳＣ−ＥＣＵ１３と、エンジンの制御を行うエンジンＥＣＵ２０と、これらのＥＣＵ間を結ぶ通信線１５とを備える。この通信線１５は、第１のサブ通信線１５ａと第２のサブ通信線１５ｂとの２系統からなり、各ＥＣＵ（ＡＴ−ＥＣＵ１１、ＶＳＣ−ＥＣＵ１３及びエンジンＥＣＵ２０）が２系統の通信を行うことができるように構成されている。尚、通信線１５は、銅線等のメタリックケーブルであってもよいし、光ケーブルであってもよいし、無線であってもよい。
【００２６】
ＡＴ−ＥＣＵ１１とＶＳＣ−ＥＣＵ１３とエンジンＥＣＵ２０とは、共にほぼ同様の構成を有しているため、ここではエンジンＥＣＵ２０を中心に説明する。
エンジンＥＣＵ２０は、マイコン２１と通信コントローラ２３と２つのトランシーバ２５ａ，２５ｂとを備える。
【００２７】
このうち、マイコン２１は、ＣＰＵ，ＲＯＭ，ＲＡＭ，Ｉ／Ｏ及びこれらの構成を接続するバスラインなどからなる周知のマイクロコンピュータを中心に構成されており、ＲＯＭ及びＲＡＭに記憶されたプログラムに基づいて、エンジンをコントロールするための点火タイミングや、バルブリフト量や、燃料噴出量等を決定する。
【００２８】
また、通信コントローラ２３は、メインコントローラ３０とサブコントローラ４０とからなり通信ポートを２系統有する。
このうち、メインコントローラ３０は、受信レジスタ３１、送信レジスタ３３、受信処理部３５及び送信処理部３７を備える。受信処理部３５は、周知のマイクロコンピュータを中心に構成され、トランシーバ２５ａから受け取ったフレームから受信メッセージ（受信本文）を取り出す。受信レジスタ３１は、その取り出された受信メッセージを記憶する。送信レジスタ３３は、マイコン２１から受け取った送信メッセージ（送信本文）を記憶する。送信処理部３７は、周知のマイクロコンピュータを中心に構成され、送信レジスタ３３が記憶する送信メッセージを読み出して所定の通信プロトコルにしたがったフレームを生成する。
【００２９】
一方、サブコントローラ４０は、受信レジスタ４１、送信レジスタ４３、受信処理部４５及び送信処理部４７を備える。サブコントローラ４０の受信レジスタ４１、送信レジスタ４３、受信処理部４５及び送信処理部４７は、それぞれメインコントローラ３０の受信レジスタ３１、送信レジスタ３３、受信処理部３５及び送信処理部３７と同等の機能を有する。
【００３０】
また、トランシーバ２５ａ、トランシーバ２５ｂは、それぞれサブ通信線１５ａ、サブ通信線１５ｂから受け取った電気信号に対してレベル変換やノイズ除去等の各種の信号処理を施してフレームを抽出し、抽出したフレームをそれぞれ受信処理部３５、受信処理部４５に渡す。また、トランシーバ２５ａ、トランシーバ２５ｂは、それぞれ送信処理部３７、送信処理部４７から受け取ったフレームに対してレベル変換等の信号処理を施してそれぞれサブ通信線１５ａ、サブ通信線１５ｂに送信する。本実施例では、トランシーバ２５ａ及びトランシーバ２５ｂは、通信コントローラ２３と別体となっているが一体化されていてもよい。
【００３１】
また、比較器５１は、メインコントローラ３０の受信レジスタ３１とサブコントローラ４０の受信レジスタ４１とから受信メッセージを読み込んで比較を行う。そして、一致して正常であったときや、不一致で異常があったとき等にマイコン２１に通知する。
【００３２】
ここまでで、エンジンＥＣＵ２０の構成について説明したが、特許請求の範囲に記載の用語との対応関係を示しておく。メインコントローラ３０がメインコントローラに相当し、サブコントローラ４０がサブコントローラに相当する。また、メインコントローラ３０の受信レジスタ３１、送信レジスタ３３、受信処理部３５、送信処理部３７が、それぞれ第１の受信レジスタ、第１の送信レジスタ、第１の受信処理部、第１の送信処理部に相当する。また、サブコントローラ４０の受信レジスタ４１、送信レジスタ４３、受信処理部４５、送信処理部４７が、それぞれ第２の受信レジスタ、第２の送信レジスタ、第２の受信処理部、第２の送信処理部に相当する。また、比較器５１が比較手段に相当する。
【００３３】
次にエンジンＥＣＵ２０を例に挙げて、ＡＴ−ＥＣＵ１１及びＶＳＣ−ＥＣＵ１３との通信について説明する。
（１）送信処理
通信コントローラ２３で実行される送信処理について図２のフローチャートを用いて説明する。この送信処理は、マイコン２１で実行されるプログラムの中で他のＥＣＵ（ＡＴ−ＥＣＵ１１やＶＳＣ−ＥＣＵ１３）に対してメッセージを送信するステップになったときに、マイコン２１からの指示で実行が開始される。
尚、この指示は、マイコン２１から通信コントローラ２３に対して何らかの制御信号を送ることによって伝わるようになっていてもよいし、マイコン２１がメインコントローラ３０の送信レジスタ３３に送信メッセージを書き込むことによって伝わるようになっていてもよい。
【００３４】
開始されるとまず、メインコントローラ３０の送信レジスタ３３が、マイコン２１から送られた送信メッセージを記憶する（Ｓ１１０）。送信レジスタ３３が送信メッセージを記憶すると、その記憶した送信メッセージをサブコントローラ４０の送信レジスタ４３に転送する（Ｓ１１５）。この転送は、１ビットづつ転送するシリアル転送であってもよいし、複数ビットまとめて転送するパラレル転送であってもよい。転送が完了すると、転送が完了した旨をマイコン２１に伝達する（Ｓ１２０）。この伝達方法は、マイコン２１に対して何らかの制御信号を送ることによって伝達するようになっていてもよいし、通信コントローラ２３内に制御用のレジスタを設けてそのレジスタをＯＮにし、マイコン２１がそのレジスタの内容を監視することによって伝達するようになっていてよい。マイコン２１は、転送完了を認識すると送信指示を通信コントローラ２３に対して行う。
【００３５】
通信コントローラ２３は、マイコン２１から送信指示を受け取るまで待機し（Ｓ１２５）、マイコン２１から送信指示を受け取ると送信処理部３７と送信処理部４７とが、それぞれ送信レジスタ３３と送信レジスタ４３とから送信メッセージを読み出す（Ｓ１３０）。
【００３６】
そして、送信処理部３７と送信処理部４７は、所定のプロトコルにしたがって送信メッセージからフレームを生成する（Ｓ１３５）。送信処理部３７と送信処理部４７はフレームの生成が完了すると、各々トランシーバ２５ａとトランシーバ２５ｂとにフレームを渡して他のＥＣＵへフレームを送信させ、本処理（送信処理）を終了する。
【００３７】
（２）受信処理
次に、通信コントローラ２３で実行される受信処理について図３のフローチャートを用いて説明する。受信処理は、受信処理部３５又は受信処理部４５の何れかにトランシーバ２５ａ、トランシーバ２５ｂからフレームが渡されると実行を開始する。
【００３８】
まず、受信処理部３５及び受信処理部４５が所定のプロトコルに基づいてフレームを分解し、受信メッセージを生成する（Ｓ２１０）。受信処理部３５及び受信処理部４５が受信メッセージを生成すると、各々の受信メッセージを受信レジスタ３１及び受信レジスタ４１が記憶する（Ｓ２１５）。
【００３９】
次に、比較器５１が受信レジスタ３１及び受信レジスタ４１から受信メッセージの読み込みを試みる（Ｓ２２０）。そしてまず、受信レジスタ３１及び受信レジスタ４１から受信メッセージが読み込めたか否かによって処理を分岐する（Ｓ２２５）。受信レジスタ３１及び受信レジスタ４１の両方から受信メッセージが読み込めたのであれば（Ｓ２２５：Ｙ）、次にそれらの受信メッセージが等しいか否かを判定する（Ｓ２３０）。等しければ（Ｓ２３０：Ｙ）、受信レジスタ３１及び受信レジスタ４１に記憶されている受信メッセージが等しい旨をマイコン２１に通知し（Ｓ２３５）、本処理（受信処理）を終了する。一方、等しくなければ（Ｓ２３０：Ｎ）、受信レジスタ３１及び受信レジスタ４１に記憶されている受信メッセージが等しくない旨をマイコン２１に通知し（Ｓ２４０）、本処理（受信処理）を終了する。これらの通知を受け取ったマイコン２１は、通知内容に応じた処理を行う。例えば、等しいという通知を受け取った場合はどちらか一方の受信レジスタからのみ受信メッセージを読み込んで後続の処理を行う。また、等しくないという通知を受け取った場合は、受信レジスタ３１及び受信レジスタ４１の両方から受信メッセージを読み込んで更に比較し、何れか一方の受信メッセージを採用したり両方の受信メッセージに基づいて適切な受信メッセージを推定したり、あるいは、送信元のＥＣＵに再送依頼を行ったりする。
【００４０】
ところで、受信レジスタ３１及び受信レジスタ４１の何れか一方から受信メッセージが読み込めなかった場合は（Ｓ２２５：Ｎ）、読み込めた方の受信レジスタを示す識別情報をマイコン２１に通知し（Ｓ２４５）、本処理（受信処理）を終了する。この通知を受け取ったマイコン２１は、読み込めた方の受信レジスタから受信メッセージを読み込んで後続の処理を行う。
【００４１】
ここまでで、実施例の通信コントローラ２３について説明したが、実施例の通信コントローラ２３を用いることにより以下のような効果が生まれる。
通信コントローラ２３は、メインコントローラ３０の送信レジスタ３３が送信メッセージを記憶すると、サブコントローラ４０の送信レジスタ４３にその送信メッセージを転送する。したがって、マイコン２１は、従来の通信コントローラを用いる場合のように複数のポートに対してそれぞれ送信処理を行う必要がなく、１ポートしか有しない通信コントローラの場合と同程度の処理負荷で、多重化された通信を行うことができる。したがって、容易に通信の多重化を行うことができ、信頼性向上に役立つ。
【００４２】
また、通信コントローラ２３は、比較器５１が受信レジスタ３１及び受信レジスタ４１から受信メッセージ読み込んで比較し、その比較結果をマイコン２１に通知する。このため、各々の受信レジスタの受信メッセージが等しくないときのみ、マイコン２１は受信レジスタ３１及び受信レジスタ４１の両方から受信メッセージを読み込めばよく、各々の受信レジスタの受信メッセージが等しければ、何れか一つの受信レジスタから受信メッセージを読み出すだけでよくなる。このため、受信時もマイコン２１の処理負荷が従来に比べて軽くなるという効果がある。
【００４３】
以下、他の実施例について述べる。
（イ）上記実施例では、比較器５１が、受信レジスタ３１及び受信レジスタ４１から受信メッセージを読み込みを試みて、それら両方から受信メッセージを読み込めたか否かを判定するが（図３のＳ２２５参照）、判定した結果、受信レジスタ３１の方からは受信メッセージを読み込むことができなかったときには、更に、受信レジスタ４１に記憶されている受信メッセージを受信レジスタ３１に転送するようになっていてもよい（このときの比較器５１は特許請求の範囲に記載の判定手段に相当する）。
【００４４】
このようになっていると、マイコン２１は、受信メッセージを受信レジスタ３１からのみ取得するようにすることもできる。その結果、受信レジスタ４１とマイコン２１とを結ぶ通信線を省略することができ、エンジンＥＣＵ２０の小型化に貢献する。ただし、上記通信線を省略してしまうと、その後の処理で比較器５１が受信レジスタ３１及び受信レジスタ４１に記憶されている受信メッセージについて等しいか否かを判定した結果、受信メッセージが等しくなかった場合にその旨をマイコン２１に通知した場合でも（図３のＳ２４０参照）、マイコン２１は、受信レジスタ４１から直接受信メッセージを読み込むことができない。このため、受信レジスタ４１に記憶されている受信メッセージは読み込まないか、受信レジスタ３１から受信メッセージを読み込んだ後、受信レジスタ４１に記憶されている受信メッセージを受信レジスタ３１に転送させて読み込む必要がある。
【００４５】
（ロ）通信コントローラ２３は、更に、メインコントローラ３０とサブコントローラ４０とを電気的に切り離して独立して動作させる遮断回路を備えるようにしてもよい。この遮断回路はマイコン２１からの指令によって機能し、遮断回路が機能すると、メインコントローラ３０とサブコントローラ４０とはお互いにメッセージの授受を行わず、送信レジスタ４３はマイコン２１から直接送信メッセージを受け取って送信メッセージを記憶し、受信レジスタ４１は記憶している受信メッセージを直接マイコン２１に伝達するようになっていてもよい。
【００４６】
このようになっていると、使用方法や使用状況に応じてマイコン２１からの指令によって従来の動作モードに切り替えることができて通信コントローラ２３の使い勝手が向上する。
（ハ）通信コントローラ２３は、サブコントローラ４０を１つだけでなく複数備えるようになっていてもよい。その場合も当然ながら、送信処理時はメインコントローラ３０の送信レジスタ３３から各々のサブコントローラの送信レジスタに対して送信メッセージを転送するようになっている。
【００４７】
このようになっていれば、通信をより多重化することができ、通信の信頼性を向上させることができる。しかも、その場合でも、マイコン２１は、１ポートしか有しない通信コントローラと同程度の処理負荷で、多重化された通信を行うことができる。
【００４８】
（ニ）サブコントローラ４０の送信レジスタ４３を無くし、サブコントローラ４０の送信処理部４７がメインコントローラ３０の送信レジスタ３３から送信メッセージを取得するようになっていてもよい。この場合は前述の転送は必要ない。このようになっていても、マイコン２１は、従来の通信コントローラを用いる場合のように複数のポートに対してそれぞれ送信処理を行う必要がなく、１ポートしか有しない通信コントローラの場合と同程度の処理負荷で、多重化された通信を行うことができる。
【図面の簡単な説明】
【図１】実施例の通信コントローラを用いた通信システムを説明するためのブロック図である。
【図２】送信処理を説明するためのフローチャートである。
【図３】受信処理を説明するためのフローチャートである。
【図４】従来の通信システムを説明するためのブロック図である。
【符号の説明】
１０…通信システム、１１…ＡＴ−ＥＣＵ、１３…ＶＳＣ−ＥＣＵ、１５…通信線、１５ａ…第１の通信線、１５ｂ…第２の通信線、２０…エンジンＥＣＵ、２１…マイコン、２３…通信コントローラ、２５ａ…トランシーバ、２５ｂ…トランシーバ、３１…受信レジスタ、３３…送信レジスタ、３５…受信処理部、３７…送信処理部、４１…受信レジスタ、４３…送信レジスタ、４５…受信処理部、４７…送信処理部、５１…比較器、１１０…通信システム、１２０…エンジンＥＣＵ、１２１…マイコン、１２３…通信コントローラ、１２５ａ…トランシーバ、１２５ｂ…トランシーバ、１３１…受信レジスタ、１３３…送信レジスタ、１３５…受信処理部、１３７…送信処理部、１４１…受信レジスタ、１４３…送信レジスタ、１４５…受信処理部、１４７…送信処理部
【図１】
2004266671.tif 000003
【図２】
2004266671.tif 000004
【図３】
2004266671.tif 000005
【図４】
2004266671.tif 000006