(57)【要約】【課題】誤動作を抑制できるＥＣＵを提供すること。【解決手段】ＥＣＵ１００は、制御用ソフト及びリプログラミング用ソフトが記憶されたフラッシュＲＯＭ１１，２１と、ユーザの操作によって電源供給と電源供給の停止が行われる非常時マイコン２０と、常時電源供給が行われる常時マイコン１０と、を備えて構成されている。常時マイコン１０は、オンボードモードで動作するか否かの判定を行うと共に、オンボードモードで動作しないと判定した場合に、リプロモードで動作するか否かの判定を行うものである。そして、常時マイコン１０は、リプロモードで動作しており、制御用ソフトの書き換えを行っている際に、非常時マイコン２０に対する電源状態の変化を検出するものであり、電源状態が変化したことを検出した場合、オンボードモードで動作するか否かの判定に遷移する。【選択図】図１
2015102964.tif 000002
【特許請求の範囲】
【請求項１】
被取付対象に取り付けられるものであり、
制御用ソフト及びリプログラミング用ソフトが記憶された書き換え可能なメモリ（１１，２１）と、
前記制御用ソフトに基づいた動作モードである制御モード、及び前記リプログラミング用ソフトに基づいた動作モードであり前記メモリに記憶された前記制御用ソフトの書き換えを行うリプロモードで動作し、ユーザの操作によって電源と接続されて電源供給が行われると共に、ユーザの操作によって前記電源と非接続とされて電源供給が停止される非常時電源系マイコン（２０）と、
前記制御モード及び前記リプロモードで動作するものであり、ユーザの操作によらず前記電源と常時接続されて電源供給が行われる常時電源系マイコン（１０）と、を備えた電子制御装置であって、
前記非常時電源系マイコンと前記常時電源系マイコンの夫々は、
前記電源からの電源供給が開始されると、前記制御モード及び前記リプロモードとは異なり、前記被取付対象に取り付けられた状態では実行されることがない動作モードであるオンボードモードで動作するか否かを判定する第１モード判定手段（Ｓ１０）と、
前記第１モード判定手段によって前記オンボードモードで動作しないと判定された場合、前記メモリの前記制御用ソフトが正常に書き込まれているか否かに応じて、前記リプロモードで動作するか否かを判定するものであり、前記制御用ソフトが正常に書き込まれていないと判定した場合、前記リプロモードで動作するとみなして、自身以外のマイコンに対して前記リプロモードで動作するように指示する第２モード判定手段（Ｓ２０）と、を有し、
前記第１モード判定手段は、前記リプロモードで動作するように指示されていない場合に、前記オンボードモードで動作しないと判定し、前記リプロモードで動作するように指示された場合に、前記オンボードモードで動作すると判定するものであり、
前記常時電源系マイコンは、前記リプロモードで動作しており、前記制御用ソフトの書き換えを行っている際に、前記非常時電源系マイコンに対する電源状態の変化を検出するものであり、前記電源状態が変化したことを検出した場合、前記第１モード判定手段による判定に処理を遷移する第１遷移手段（Ｓ５１）を備えていることを特徴とする電子制御装置。
【請求項２】
前記非常時電源系マイコンと前記常時電源系マイコンの夫々は、前記第２モード判定手段にて、前記リプロモードで動作しないと判定された場合、前記制御モードで動作するか否かを判定する第３モード判定手段（Ｓ３０）を備え、
前記常時電源系マイコンは、前記制御モードで動作すると判定されて前記制御モードで動作中において、前記非常時電源系マイコンに対する電源状態が停止状態から供給状態に変化したか否かを検出するものであり、前記電源状態が変化したことを検出した場合、前記第２モード判定手段による判定に処理を遷移する第２遷移手段（Ｓ４１）を備えていることを特徴とする請求項１に記載の電子制御装置。
【請求項３】
前記常時電源系マイコンは、前記リプロモードで動作しており、前記制御用ソフトの書き換えを行っている際に、前記非常時電源系マイコンに対する電源状態が供給状態から停止状態に変化したか否かを検出するものであり、前記電源状態が変化したことを検出した場合、自身の前記制御用ソフトの書き換えを中断することを特徴とする請求項１又は２に記載の電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、常時電源系マイコンと非常時電源系マイコンとを備えた電子制御装置に関する。
【背景技術】
【０００２】
従来、例えば特許文献１に示されるように、第１及び第２のマイクロコンピュータ（以下、マイコンと記載する）を備える電子制御装置が提案されている。各マイコンは、データの書き換えが可能な不揮発性メモリと、通信ラインに接続された通信回路と、を内蔵している。各マイコンは、通信回路を介して自身宛の書き込み対象のデータを受信すると、書込対象のデータを不揮発性メモリに書き込み、不揮発性メモリが記憶するデータを更新する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−２６８１０７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記のような電子制御装置では、複数のマイコンの内、少なくとも１つのマイコンが不揮発性メモリに記憶されたデータを更新する際、全てのマイコンが制御処理を行う制御モードから、データの書き換え処理を行う書き換えモードに移行させることが考えられる。つまり、電子制御装置は、複数のマイコンでの動作モードを同期させることが考えられる。このようにするのは、各マイコン間での監視体系が崩れるなどによって電子制御装置が誤動作することを抑制するためである。
【０００５】
ところで、電子制御装置には、異なる電源系統で動作するものがある。例えば、ユーザの操作によって電源がオン及びオフ（言い換えると、電源供給及び電源供給の停止）する非常時電源系で動作すると共に、常に電源が供給されている常時電源系で動作する電子制御装置がある。このような電子制御装置では、非常時電源系で動作するマイコンと、常時電源系で動作するマイコンとが設けられていることが考えられる。
【０００６】
また、電子制御装置は、書き換えモードで動作しているときに、マイコンに対する電源供給が停止することもありうる。この場合、異なる電源系統で動作する電子制御装置では、マイコンに対する電源供給が再開されて再度書き換えを行う際に、非常時電源系で動作するマイコンと、常時電源系で動作するマイコンとで動作を開始するタイミングが異なることが起こりうる。このため、電子制御装置は、複数のマイコン間で動作モードを同期させることができず、誤動作する可能性がある。
【０００７】
本発明は、上記問題点に鑑みなされたものであり、誤動作を抑制できる電子制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために本発明は、
被取付対象に取り付けられるものであり、
制御用ソフト及びリプログラミング用ソフトが記憶された書き換え可能なメモリ（１１，２１）と、
制御用ソフトに基づいた動作モードである制御モード、及びリプログラミング用ソフトに基づいた動作モードでありメモリに記憶された制御用ソフトの書き換えを行うリプロモードで動作し、ユーザの操作によって電源と接続されて電源供給が行われると共に、ユーザの操作によって電源と非接続とされて電源供給が停止される非常時電源系マイコン（２０）と、
制御モード及びリプロモードで動作するものであり、ユーザの操作によらず電源と常時接続されて電源供給が行われる常時電源系マイコン（１０）と、を備えた電子制御装置であって、
非常時電源系マイコンと常時電源系マイコンの夫々は、
電源からの電源供給が開始されると、制御モード及びリプロモードとは異なり、被取付対象に取り付けられた状態では実行されることがない動作モードであるオンボードモードで動作するか否かを判定する第１モード判定手段（Ｓ１０）と、
第１モード判定手段によってオンボードモードで動作しないと判定された場合、メモリの制御用ソフトが正常に書き込まれているか否かに応じて、リプロモードで動作するか否かを判定するものであり、制御用ソフトが正常に書き込まれていないと判定した場合、リプロモードで動作するとみなして、自身以外のマイコンに対してリプロモードで動作するように指示する第２モード判定手段（Ｓ２０）と、を有し、
第１モード判定手段は、リプロモードで動作するように指示されていない場合に、オンボードモードで動作しないと判定し、リプロモードで動作するように指示された場合に、オンボードモードで動作すると判定するものであり、
常時電源系マイコンは、リプロモードで動作しており、制御用ソフトの書き換えを行っている際に、非常時電源系マイコンに対する電源状態の変化を検出するものであり、電源状態が変化したことを検出した場合、第１モード判定手段による判定に処理を遷移する第１遷移手段（Ｓ５１）を備えていることを特徴とする。
【０００９】
このように、本発明は、非常時電源系マイコンと常時電源系マイコンとを備えてなるものである。そして、常時電源系マイコンは、制御用ソフトの書き換えを行っている際に、非常時電源系マイコンに対する電源状態の変化を検出する。そして、常時電源系マイコンは、電源状態が変化したことを検出した場合、第１モード判定手段による判定に処理を遷移する。
【００１０】
このため、本発明は、常時電源系マイコンが書き換え中において、非常時電源系マイコンに対する電源状態が停止状態から供給状態に変化した場合、常時電源系マイコンと非常時電源系マイコンの両方が第１モード判定手段による判定を行うことになる。つまり、本発明は、常時電源系マイコンと非常時電源系マイコンとで、第１モード判定手段による判定の実行タイミングを同期させることができる。
【００１１】
よって、本発明は、常時電源系マイコンが書き換え中に、非常時電源系マイコンに対する電源状態が停止状態から供給状態に変化した場合であっても、常時電源系マイコンが非常時電源系マイコンに対してリプロモードで動作するように指示しない。このため、本発明は、常時電源系マイコンが書き換え中に、非常時電源系マイコンがオンボードモードで動作することを抑制できる。従って、本発明は、誤動作を抑制できる。
【００１２】
なお、本発明の常時電源系マイコンは、制御用ソフトの書き換えを行っている際に、非常時電源系マイコンに対する電源状態が供給状態から停止状態に変化した場合に関しても第１モード判定手段による判定を行うことになる。このとき、本発明の非常時電源系マイコンは、電源供給が停止されているため動作していない。従って、本発明は、常時電源系マイコンが書き換え作中に、非常時電源系マイコンがオンボードモードで動作することを抑制できる。従って、本発明は、誤動作を抑制できる。
【００１３】
なお、特許請求の範囲、及びこの項に記載した括弧内の符号は、ひとつの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、発明の技術的範囲を限定するものではない。
【図面の簡単な説明】
【００１４】
【図１】実施形態におけるＥＣＵの概略構成を示すブロック図である。
【図２】実施形態における各マイコンの処理動作を示すフローチャートである。
【図３】実施形態における常時電源系マイコンのオンビークルリプロモードでの処理動作を示すフローチャートである。
【図４】実施形態における常時電源系マイコンの制御モードでの処理動作を示すフローチャートである。
【図５】実施形態におけるＥＣＵの処理動作を示すタイムチャートであり、常時マイコンがフラッシュＲＯＭの書き換え中で、常時マイコンに対する瞬断が発生した場合のタイムチャートである。
【図６】実施形態におけるＥＣＵの処理動作を示すタイムチャートであり、非常時マイコンがフラッシュＲＯＭの書き換え中で、非常時マイコンに対する瞬断が発生した場合のタイムチャートである。
【図７】実施形態におけるＥＣＵの処理動作を示すタイムチャートであり、非常時マイコンがフラッシュＲＯＭの書き換え中で、常時マイコンに対する瞬断が発生した場合のタイムチャートである。
【図８】ＥＣＵにおける電源瞬断と瞬断後のフラッシュＲＯＭ状態との組み合わせを示す表である。
【図９】比較例におけるＥＣＵの処理動作を示すタイムチャートであり、常時マイコンがフラッシュＲＯＭの書き換え中で、常時マイコンに対する瞬断が発生した場合のタイムチャートである。
【図１０】比較例におけるＥＣＵの処理動作を示すタイムチャートであり、非常時マイコンがフラッシュＲＯＭの書き換え中で、非常時マイコンに対する瞬断が発生した場合のタイムチャートである。
【図１１】比較例におけるＥＣＵの処理動作を示すタイムチャートであり、非常時マイコンがフラッシュＲＯＭの書き換え中で、常時マイコンに対する瞬断が発生した場合のタイムチャートである。
【発明を実施するための形態】
【００１５】
以下において、図面を参照しながら、発明を実施するための複数の形態を説明する。本実施形態においては、本発明の電子制御装置をＥＣＵ１００に適用した例を採用している。ＥＣＵ１００は、被取付対象に取り付けられてなるものである。被取付対象としては、例えば車両などをあげることができる。本実施形態では、車両に取り付けられたＥＣＵ１００を採用する。なお、ＥＣＵは、Electronic Control Unitの略称である。
【００１６】
まず、図１を用いて、ＥＣＵ１００の構成に関して説明する。ＥＣＵ１００は、主に、常時電源系マイコン１０、非常時電源系マイコン２０、動作モード監視ＩＣ３０、判定部４０などを備えて構成されている。また、ＥＣＵ１００は、書き換え装置２００が接続されている。以下、常時電源系マイコンを常時マイコン、非常時電源系マイコンを非常時マイコンと記載することもある。また、常時マイコン１０と非常時マイコン２０とを区別する必要がない場合は、単にマイコンとも記載する。
【００１７】
なお、書き換え装置２００は、通信ラインを介して、後ほど説明する常時電源系マイコン１０及び非常時電源系マイコン２０と接続されている。そして、書き換え装置２００は、常時マイコン１０及び非常時マイコン２０で用いられるフラッシュＲＯＭ１１，２１に記憶された制御用ソフトを書き換えるための装置である。例えば、書き換え装置２００は、常時マイコン１０及び非常時マイコン２０に対して、新しい制御用ソフトや、制御用ソフトの更新用プログラムなどを送信する。
【００１８】
常時マイコン１０は、演算部、記憶部、入出力部などを備えたマイコンである。常時マイコン１０は、常時電源１１０と接続されており、常時電源供給が行われる。なお、常時電源１１０は、例えば、車両に搭載されたバッテリ、及びイグニッションスイッチを介することなくバッテリと常時マイコン１０とを接続している電源経路を含むものである。よって、常時マイコン１０は、ユーザの操作によらずバッテリと常時接続されて、バッテリから電源供給が行われる、と言い換えるとことができる。しかしながら、常時マイコン１０は、常時電源１１０における障害などによって、瞬間的に（言い換えると、短い時間だけ）電源供給が停止されることもありうる。つまり、常時マイコン１０は、所謂瞬断によって、電源供給が停止されることもありうる。なお、バッテリは、特許請求の範囲における電源に相当する。また、電源供給が停止されているマイコンに対して電源供給が開始されたことを、マイコンの立ち上がり又はマイコンの動作開始と言い換えることができる。
【００１９】
常時マイコン１０は、フラッシュＲＯＭ１１、フラッシュＲＯＭ管理部１２、動作モード選択部１３、動作モード受信部１４、動作モード送信部１５、非常時電源監視部１６などを備えて構成されている。
【００２０】
フラッシュＲＯＭ１１は、常時マイコン１０における記憶部に含まれるものである。図示は省略するが、常時マイコン１０は、記憶部として、フラッシュＲＯＭ１１だけではなくＲＡＭなどを備えていてもよい。なお、ＲＯＭは、Read Only Memoryの略称である。ＲＡＭは、Random Access Memoryの略称である。
【００２１】
フラッシュＲＯＭ１１は、特許請求の範囲におけるメモリに相当するものである。フラッシュＲＯＭ１１は、書き換え可能で、且つ、自身に対する電源供給が停止されても記憶内容が消えない不揮発性の半導体メモリである。このフラッシュＲＯＭ１１には、制御用ソフト及びリプログラミング用ソフトが記憶されている。なお、フラッシュＲＯＭ１１は、フラッシュメモリと称することもできる。
【００２２】
常時マイコン１０は、フラッシュＲＯＭ１１に記憶されている制御用ソフト及びリプログラミング用ソフトに基づいて動作する。つまり、常時マイコン１０は、制御用ソフトに基づいた動作モードである制御モード、及びリプログラミング用ソフトに基づいた動作モードでありフラッシュＲＯＭ１１に記憶された制御用ソフトの書き換えを行うリプロモードで動作する。言い換えると、常時マイコン１０は、自身の演算部がフラッシュＲＯＭ１１に記憶されている制御用ソフト及びリプログラミング用ソフトに従って演算処理を実行することによって、制御モード及びリプロモードで動作する。
【００２３】
なお、制御モードは、車両動作のための制御を行う動作モードである。一方、リプロモードは、制御用ソフトの書き換えを行うモードであるため、書き換えモード又はリプログラミングモードと称することもできる。詳述すると、リプロモードは、車両に搭載されたＥＣＵ１００に対して、書き換えを行うモードである。また、常時マイコン１０は、リプロモードで動作する際には、動作モード送信部１５から書き換え要求を送信する。更に、常時マイコン１０と非常時マイコン２０は、一方のマイコンが書き換え中の場合、他方のマイコン（言い換えると、書き換え中でないマイコン）は待機状態となる。
【００２４】
また、常時マイコン１０は、制御モード及びリプロモードに加えて、オンボードモードでも動作可能である。オンボードモードとは、ＥＣＵ１００を車両から取り外した状態、つまり、ＥＣＵ１００が単体の状態で動作する動作モードである。言い換えると、オンボードモードは、ＥＣＵ１００を単体に対して、且つ、書き換え装置２００を接続して、フラッシュＲＯＭ１１の書き換えを行うモードである。よって、ＥＣＵ１００は、車両に取り付けられている状態において、オンボードモードで動作することはない。このように、オンボードモードは、ＥＣＵ１００が車両に取り付けられた状態では実行されることがない動作モードである。
【００２５】
なお、オンボードモードは、リプロモードと同様に、フラッシュＲＯＭ１１を書き換えるモードである。しかしながら、リプロモードは、ＥＣＵ１００が車両に取り付けられた状態で動作する動作モードであるのに対して、オンボードモードは、ＥＣＵ１００が車両から取り外された状態で動作する動作モードである。よって、リプロモードをオンビークルリプロモード、オンボードモードをオンボードリプロモードと称することもできる。つまり、本実施形態では、単にリプロモードと記載した場合、オンビークルリプロモードを示すものである。
【００２６】
フラッシュＲＯＭ管理部１２、動作モード選択部１３、非常時電源監視部１６は、常時マイコン１０における演算部に含まれるものである。また、動作モード受信部１４、動作モード送信部１５は、常時マイコン１０における入出力部に含まれるものである。言い換えると、常時マイコン１０は、自身が実行可能な機能を示す機能ブロックとして、フラッシュＲＯＭ管理部１２、動作モード選択部１３、動作モード受信部１４、動作モード送信部１５、非常時電源監視部１６を備えている。
【００２７】
フラッシュＲＯＭ管理部１２は、フラッシュＲＯＭ１１に制御用ソフトが正常に書き込まれているか否かを判定する。例えば、常時マイコン１０は、リプロモードで動作中において、自身に対する電源供給の瞬断が発生すると、フラッシュＲＯＭ１１に対する書き込みを中断することになる。このような場合、フラッシュＲＯＭ１１は、制御用ソフトが正常に書き込まれていない状態となる。つまり、フラッシュＲＯＭ１１に制御用ソフトが正常に書き込まれていない状態は、フラッシュＲＯＭ異常と言い換えることができる。よって、フラッシュＲＯＭ管理部１２は、フラッシュＲＯＭ１１におけるフラッシュＲＯＭ異常を検出するものである。
【００２８】
動作モード選択部１３は、書き換え要求の有無などを判定し、この判定結果などに基づいて動作モードを選択する。詳述すると、動作モード選択部１３は、動作モード受信部１４からの書き換え要求や、フラッシュＲＯＭ管理部１２でのフラッシュＲＯＭ異常の検出結果によって、動作モードとして制御モード、リプロモード、オンボードモードのいずれかを選択する。
【００２９】
動作モード受信部１４は、非常時マイコン２０からの書き換え要求を受信する。なお、後ほど説明するが、動作モード受信部１４は、判定部４０を介して受信した書き換え要求を受信することになる。動作モード送信部１５は、非常時マイコン２０に対して書き換え要求を送信する。なお、後ほど説明するが、動作モード送信部１５は、判定部４０を介して書き換え要求を送信することになる。
【００３０】
非常時電源監視部１６は、非常時マイコン２０に対する電源状態の変化を検出する。つまり、非常時電源監視部１６は、非常時マイコン２０に対する電源状態が電源供給から電源供給の停止に変化したか否か、及び、非常時マイコン２０に対する電源状態が電源供給の停止から電源供給に変化したか否かを判定する。なお、非常時電源監視部１６は、電源供給されている非常時マイコン２０に対して電源供給が停止されたか否か、及び電源供給が停止されている非常時マイコン２０に対して電源供給が開始されたか否かを判定する、と言い換えることができる。また、後ほど説明するが、非常時マイコン２０は、イグニッションスイッチのオン及びオフによって、電源供給及び電源供給の停止が変化する。よって、非常時電源監視部１６は、イグニッションスイッチがオンからオフ、又はオフからオンに変化したか否かを判定する、と言い換えることもできる。
【００３１】
非常時マイコン２０は、常時マイコン１０と同様に、演算部、記憶部、入出力部などを備えたマイコンである。非常時マイコン２０は、非常時電源１２０と接続されており、ユーザの操作によってバッテリと接続されて電源供給が行われると共に、ユーザの操作によってバッテリと非接続とされて電源供給が停止される。なお、非常時電源１２０は、例えば、車両に搭載されたバッテリ、及びイグニッションスイッチを介してバッテリと非常時マイコン２０とを接続している電源経路を含むものである。よって、非常時マイコン２０は、ユーザがイグニッションスイッチをオン操作することでバッテリと接続されて電源供給が行われると共に、ユーザがイグニッションスイッチをオフ操作することでバッテリと非接続とされて電源供給が停止される。しかしながら、非常時マイコン２０は、非常時電源１２０における障害などによって、イグニッションスイッチの状態にかかわらず、瞬断によって電源供給が停止されることもありうる。
【００３２】
非常時マイコン２０は、フラッシュＲＯＭ２１、フラッシュＲＯＭ管理部２２、動作モード選択部２３、動作モード受信部２４、動作モード送信部２５などを備えて構成されている。
【００３３】
フラッシュＲＯＭ２１は、特許請求の範囲におけるメモリに相当するものである。なお、フラッシュＲＯＭ２１は、フラッシュＲＯＭ１１と同様であるため詳しい説明は省略する。また、非常時マイコン２０は、記憶部として、フラッシュＲＯＭ２１だけではなくＲＡＭなどを備えていてもよい。
【００３４】
非常時マイコン２０は、常時マイコン１０と同様に、フラッシュＲＯＭ２１に記憶されている制御用ソフト及びリプログラミング用ソフトに基づいて動作する。つまり、非常時マイコン２０は、制御用ソフトに基づいた動作モードである制御モード、及びリプログラミング用ソフトに基づいた動作モードでありフラッシュＲＯＭ２１に記憶された制御用ソフトの書き換えを行うリプロモードで動作する。また、非常時マイコン２０は、制御モード及びリプロモードに加えて、オンボードモードでも動作可能である。
【００３５】
フラッシュＲＯＭ管理部２２、動作モード選択部２３は、非常時マイコン２０における演算部に含まれるものである。また、動作モード受信部２４、動作モード送信部２５は、非常時マイコン２０における入出力部に含まれるものである。言い換えると、非常時マイコン２０は、自身が実行可能な機能を示す機能ブロックとして、フラッシュＲＯＭ管理部２２、動作モード選択部２３、動作モード受信部２４、動作モード送信部２５を備えている。なお、フラッシュＲＯＭ管理部２２、動作モード選択部２３、動作モード受信部２４、動作モード送信部２５の夫々は、フラッシュＲＯＭ管理部１２、動作モード選択部１３、動作モード受信部１４、動作モード送信部１５の夫々と同様である。よって、フラッシュＲＯＭ管理部２２、動作モード選択部２３、動作モード受信部２４、動作モード送信部２５に関する詳しい説明は省略する。
【００３６】
フラッシュＲＯＭ管理部２２は、フラッシュＲＯＭ２１に制御用ソフトが正常に書き込まれているか否かを判定する。例えば、非常時マイコン２０は、リプロモードで動作中において、自身に対する電源供給の瞬断が発生すると、フラッシュＲＯＭ２１に対する書き込みを中断することになる。このような場合、フラッシュＲＯＭ２１は、制御用ソフトが正常に書き込まれていない状態となる。つまり、フラッシュＲＯＭ２１に制御用ソフトが正常に書き込まれていない状態は、ＲＯＭ異常と言い換えることができる。よって、フラッシュＲＯＭ管理部２２は、フラッシュＲＯＭ２１におけるフラッシュＲＯＭ異常を検出するものである。
【００３７】
動作モード選択部２３は、書き換え要求の有無などを判定し、この判定結果などに基づいて動作モードを選択する。詳述すると、動作モード選択部２３は、動作モード受信部２４からの書き換え要求や、フラッシュＲＯＭ管理部２２でのＲＯＭ異常の検出結果によって、動作モードとして制御モード、リプロモード、オンボードモードのいずれかを選択する。
【００３８】
動作モード受信部２４は、常時マイコン１０からの書き換え要求を受信する。なお、後ほど説明するが、動作モード受信部２４は、判定部４０を介して受信した書き換え要求を受信することになる。動作モード送信部２５は、常時マイコン１０に対して書き換え要求を送信する。なお、後ほど説明するが、動作モード送信部２５は、判定部４０を介して書き換え要求を送信することになる。
【００３９】
動作モード監視ＩＣ３０は、常時マイコン１０と非常時マイコン２０夫々の動作モードを監視する。言い換えると、動作モード監視ＩＣ３０は、常時マイコン１０の動作モードと、非常時マイコン２０の動作モードとによって、車両上では動作することがない動作モードであるか否か、つまり、オンボードモードであるか否かを検出する。そして、動作モード監視ＩＣ３０は、オンボードモードであることを検出すると、常時マイコン１０及び非常時マイコン２０に対してリセットを発行する。なお、動作モード監視ＩＣ３０は、ＥＣＵ１００が車両に取り付けられている場合であり、且つ、オンボードモードであることを検出すると、常時マイコン１０及び非常時マイコン２０に対してリセットを発行する。また、動作モード監視ＩＣ３０は、常時マイコン１０と非常時マイコン２０のいずれか一方がオンボードモードで動作していた場合、オンボードモードで動作しているマイコンに対してリセットを発行する。
【００４０】
なお、常時マイコン１０及び非常時マイコン２０は、オンボードリプロモードでは、例えばマイコンメーカ固有のファームとして動作する。このため、常時マイコン１０及び非常時マイコン２０は、制御が正常であることを示すＷＤＣ信号などを出力しない。よって、ＥＣＵ１００は、ハード的な監視機能を持つ動作モード監視ＩＣ３０によって、常時マイコン１０及び非常時マイコン２０の動作異常を検出する。なお、ＷＤＣは、Watch Dog Clearの略称である。
【００４１】
また、常時マイコン１０及び非常時マイコン２０の夫々は、ＷＤＣ信号などを用いて、互いに動作状態を監視してもよい。しかしながら、常時マイコン１０及び非常時マイコン２０の夫々は、互いの動作モードの同期が取れない場合、つまり、一方が制御モードで他方がリプロモードの場合、双方の監視体系が崩れることになる。このため、常時マイコン１０及び非常時マイコン２０は、動作モードの同期が取れない場合、ＷＤＣ信号の出力停止によるリセット発行が定期的に実施される。これによって、制御モードで動作中のマイコンは、リプロモードで動作中のマイコンが状態異常であると判定することになる。
【００４２】
判定部５０は、常時マイコン１０と非常時マイコン２０の夫々が制御モードであるリプロモードであるかを判定する。判定部５０は、動作モード送信部２５から送信された常時マイコン１０に対する書き換え要求と、動作モード送信部１５から送信された非常時マイコン２０に対する書き換え要求とに基づいて判定を行う。判定部５０は、常時マイコン１０と非常時マイコン２０のいずれか一方が、書き換え要求を送信している場合、常時マイコン１０と非常時マイコン２０とに対して書き換え要求を送信する。そして、判定部５０は、常時マイコン１０と非常時マイコン２０の両方が、書き換え要求を送信していない場合、常時マイコン１０と非常時マイコン２０とに対して書き換え要求を送信しない。例えば、動作モード送信部１５，２５は、書き換え要求を送信する場合、書き換え要求を示す要求信号をハイレベルとし、書き換え要求を送信しない場合、要求信号をローレベルとする。これによって、ＥＣＵ１００は、常時マイコン１０と非常時マイコン２０とで動作モードを同期させやすくすることができる。
【００４３】
しかしながら、常時マイコンと非常時マイコンとを備えたＥＣＵの場合、各マイコンに瞬断が生じたりすると、各マイコンに対する電源供給の開始タイミングがずれることが起こりうる。言い換えると、常時マイコンと非常時マイコンとを備えたＥＣＵの場合、各マイコンに瞬断が生じたりすると、各マイコンで動作開始のタイミングが異なることがある。
【００４４】
次に、図２〜図７を用いて、ＥＣＵ１００の処理動作に関して説明する。まず、図２〜図４のフローチャートを用いて、ＥＣＵ１００の処理動作を説明する。
【００４５】
常時マイコン１０及び非常時マイコン２０は、自身に対する電源供給が開始されると、図２のフローチャートに示す処理を実行する。しかしながら、常時マイコン１０及び非常時マイコン２０は、ステップＳ４０とステップＳ５０での処理内容が異なる。非常時マイコン２０は、ステップＳ４０において車両動作のための制御を行うと共に、ステップＳ５０において制御用ソフトの書き換えを行う。一方、常時マイコン１０は、ステップＳ４０において車両動作のための制御に加えてステップＳ４１に示す判定を行うと共に、ステップＳ５０において制御用ソフトの書き換えに加えてステップＳ５１に示す判定を行う。なお、常時マイコン１０及び非常時マイコン２０は、自身に対する電源供給が停止されると、図２のフローチャートに示す処理を終了する。
【００４６】
ステップＳ１０では、オンボードリプロモードで動作するか否かを判定する（第１モード判定手段）。動作モード選択部１３，２３の夫々は、マイコン外部からの書き換え要求の有無に基づいて、オンボードで動作するか否かを判定する。詳述すると、動作モード選択部１３，２３の夫々は、リプロモードで動作するように指示されていない場合に、オンボードモードで動作しないと判定し、リプロモードで動作するように指示された場合に、オンボードモードで動作すると判定する。そして、動作モード選択部１３，２３の夫々は、オンボードモードで動作しないと判定した場合はステップＳ２０へ進む。また、動作モード選択部１３，２３の夫々は、オンボードモードで動作すると判定した場合はステップＳ６０へ進む。
【００４７】
ステップＳ２０では、フラッシュＲＯＭ異常であるか否かを判定する（第２モード判定手段）。常時マイコン１０と非常時マイコン２０の夫々は、ステップＳ１０において、オンボードモードで動作しないと判定した場合、フラッシュＲＯＭ異常であるか否かを判定する。
【００４８】
このとき、フラッシュＲＯＭ管理部１２は、フラッシュＲＯＭ１１に制御用ソフトが正常に書き込まれているか否かを判定する。そして、フラッシュＲＯＭ管理部１２は、フラッシュＲＯＭ１１に制御用ソフトが正常に書き込まれていると判定した場合、フラッシュＲＯＭ異常でないとみなす。つまり、フラッシュＲＯＭ管理部１２は、フラッシュＲＯＭ１１に制御用ソフトが正常に書き込まれていると判定した場合、フラッシュＲＯＭ１１は正常であるとみなす。また、フラッシュＲＯＭ管理部１２は、フラッシュＲＯＭ１１に制御用ソフトが正常に書き込まれていないと判定した場合、フラッシュＲＯＭ異常であるとみなす。同様に、フラッシュＲＯＭ管理部２２は、フラッシュＲＯＭ２１に制御用ソフトが正常に書き込まれているか否かによって、フラッシュＲＯＭ異常であるか否かを判定する。
【００４９】
そして、フラッシュＲＯＭ管理部１２，２２の夫々は、フラッシュＲＯＭ異常でないと判定した場合はステップＳ３０へ進む。また、フラッシュＲＯＭ管理部１２，２２の夫々は、フラッシュＲＯＭ異常であると判定した場合はリプロモードで動作するとみなしてステップＳ５０へ進む。このように、常時マイコン１０と非常時マイコン２０の夫々は、フラッシュＲＯＭ１１，２１の夫々における制御用ソフトが正常に書き込まれているか否かに応じて、リプロモードで動作するか否かを判定する。
【００５０】
なお、常時マイコン１０と非常時マイコン２０の夫々は、リプロモードで動作するとみなした場合、自身以外のマイコンに対して、リプロモードで動作するように指示する。例えば、フラッシュＲＯＭ管理部１２がリプロモードで動作するとみなした場合、動作モード送信部１５は、非常時マイコン２０に対して書き換え要求を送信することで、リプロモードで動作するように指示する。
【００５１】
ステップＳ３０では、オンビークルリプロモードで動作するか否かを判定する（第３モード判定手段）。常時マイコン１０と非常時マイコン２０の夫々は、ステップＳ２０において、リプロモードで動作しないと判定された場合、制御モードで動作するか否かを判定する。このとき、動作モード選択部１３，２３の夫々は、判定部４０からの切り換え要求の有無に基づいて、制御モードで動作するか否かを判定する。そして、動作モード選択部１３，２３の夫々は、制御モードで動作しないと判定した場合はステップＳ５０へ進み、制御モードで動作すると判定した場合はステップＳ４０へ進む。なお、動作モード選択部１３，２３の夫々は、ステップＳ２０でのＮＯ判定後、一定時間の待機後にステップＳ３０での判定を行うと好ましい。このようにすることで、図６のタイミングｔ１４や図７のタイミングｔ２４のように相手側の書き換え要求信号出力を確実に受け取ることができる。
【００５２】
ステップＳ４０では、常時マイコン１０と非常時マイコン２０の夫々は、制御モードで動作する。ステップＳ５０では、常時マイコン１０と非常時マイコン２０の夫々は、リプロモードで動作する。ステップＳ６０では、常時マイコン１０と非常時マイコン２０の夫々は、オンボードモードで動作する。
【００５３】
ここで、図３を用いて、常時マイコン１０におけるリプロモードでの処理動作を説明する。常時マイコン１０は、リプロモードで動作中、ステップＳ５１での判定を行う。
【００５４】
ステップＳ５１では、非常時電源状態が変化したか否かを判定する（第１遷移手段）。このとき、非常時電源監視部１６は、非常時マイコン２０に対する電源状態の変化を検出する。言い換えると、非常時電源監視部１６は、非常時マイコン２０の立ち上がり、及び立ち下りを検出する。
【００５５】
そして、非常時電源監視部１６は、電源状態が変化したことを検出した場合、ステップＳ１０での判定に処理を遷移（言い換えると、移行）する。つまり、常時マイコン１０は、リプロモードで動作中（書き換え中）において、非常時マイコン２０に対する電源状態が変化したことを検出すると、自身に対する電源供給が開始された直後の状態に初期化する。なお、非常時電源監視部１６は、電源状態が変化したことを検出していない場合、ステップＳ５１での処理を繰り返し実行する。
【００５６】
ここで、図４を用いて、常時マイコン１０における制御モードでの処理動作を説明する。常時マイコン１０は、制御モードで動作中、ステップＳ４１での判定を行う。
【００５７】
ステップＳ４１では、非常時電源の立ち上がりを判定する（第２遷移手段）。このとき、非常時電源監視部１６は、非常時マイコン２０に対する電源状態が停止状態から供給状態に変化したか否かを検出する。
【００５８】
そして、非常時電源監視部１６は、非常時マイコン２０に対する電源状態が停止状態から供給状態に変化したことを検出した場合、ステップＳ３０での判定に処理を遷移する。また、非常時電源監視部１６は、非常時マイコン２０に対する電源状態が停止状態から供給状態に変化したことを検出していない場合、ステップＳ４１での処理を繰り返し実行する。
【００５９】
次に、図５〜図７のタイムチャートを用いて、ＥＣＵ１００の処理動作を説明する。ここでは、比較例のＥＣＵの処理動作を示すタイムチャートである図９〜図１１を用いて、比較例のＥＣＵの処理動作と比較しつつ、ＥＣＵ１００の処理動作を説明する。
【００６０】
なお、比較例のＥＣＵは、ＥＣＵ１００と同様に、常時マイコンと非常時マイコンとを備えており、図２のフローチャートと同様の処理を実行するものとする。しかしながら、比較例のＥＣＵは、非常時マイコンだけではなく、常時マイコンであっても、ステップＳ４１及びステップＳ５１での判定を行わない。
【００６１】
また、常時マイコンと非常時マイコンとを備えたＥＣＵ１００や比較例のＥＣＵは、図８に示すように、電源瞬断と瞬断後のフラッシュＲＯＭ状態との組み合わせが起こりうる。
【００６２】
まず、一つ目の組み合わせは、非常時マイコンがフラッシュＲＯＭの書き換え中に、常時マイコンに対する瞬断が発生した場合である。この場合、瞬断後のフラッシュＲＯＭ状態は、非常時マイコンソフト異常となる。つまり、フラッシュＲＯＭは、非常時マイコンの制御用ソフトが正常に書き込まれていない状態となる。
【００６３】
次に、二つ目の組み合わせは、非常時マイコンがフラッシュＲＯＭの書き換え中に、非常時マイコンに対する瞬断が発生した場合である。この場合、瞬断後のフラッシュＲＯＭ状態は、非常時マイコンソフト異常となる。つまり、フラッシュＲＯＭは、非常時マイコンの制御用ソフトが正常に書き込まれていない状態となる。
【００６４】
そして、三つ目の組み合わせは、常時マイコンがフラッシュＲＯＭの書き換え中に、常時マイコンに対する瞬断が発生した場合である。この場合、瞬断後のフラッシュＲＯＭ状態は、常時マイコンソフト異常となる。つまり、フラッシュＲＯＭは、常時マイコンの制御用ソフトが正常に書き込まれていない状態となる。
【００６５】
なお、四つ目の組み合わせは、常時マイコンがフラッシュＲＯＭの書き換え中に、非常時マイコンに対する瞬断が発生した場合である。この場合、瞬断後のフラッシュＲＯＭ状態は、常時マイコンソフト異常及び非常時マイコンソフト異常とならない。つまり、常時マイコンの制御用ソフト及び、非常時マイコンの制御用ソフトは、非常時マイコンに対する瞬断が発生したことが原因で、正常に書き込まれていない状態となることはない。
【００６６】
比較例のＥＣＵは、この四つの組み合わせの夫々において異常となることが懸念される。この四つのケースに関して、タイムチャートを用いて詳しく説明する。
【００６７】
まず、三つ目の組み合わせに関して説明する。常時マイコンがフラッシュＲＯＭの書き換え中で、常時マイコンに対する瞬断が発生した場合、比較例のＥＣＵは、図９に示すタイムチャートのように動作する。
【００６８】
タイミングｔ３１に示すように、常時マイコンの書き換え中に常時マイコンに対する瞬断が発生した場合、比較例のＥＣＵは、全てのマイコンの書き換えが中断状態となる。つまり、常時マイコンだけでなく、非常時マイコンに関しても、書き換えが中断状態となる。
【００６９】
その後、タイミングｔ３２に示すように、常時マイコンに対する電源供給が復帰すると、常時マイコンは、リセットが解除されて、図２に示すフローチャートをスタート（Ｓ）する。このとき、非常時マイコンは、電源供給が停止されている。よって、常時マイコンは、ステップＳ１０に続いて、ステップＳ２０へ進むことになる。
【００７０】
常時マイコンは、タイミングｔ３３に示すように、ステップＳ２０での判定においてフラッシュＲＯＭの異常を検出して、ステップＳ５０のリプロモードへ進み、フラッシュＲＯＭの書き換えを再開することになる。また、常時マイコンは、リプロモードで動作するため、タイミングｔ３３に示すように、書き換え要求を送信することになる。これによって、非常時マイコンには、書き換え要求が送信される。
【００７１】
その後、非常時マイコンは、電源供給が開始されると、図２に示すフローチャートをスタート（Ｓ）する。このとき、非常時マイコンは、タイミングｔ３３において、書き換え要求が送信されている。このため、タイミングｔ３４に示すように、非常時マイコンは、ステップＳ１０で、オンボードモードで動作すると判定することになる。よって、非常時マイコンは、ステップＳ６０のオンボードモードへ進むことになる。つまり、非常時マイコンは、比較例のＥＣＵが車両上で動作しているにかかわらず、オンボードモードに突入することになる。この結果、動作モード監視ＩＣは、タイミングｔ３５に示すように、オンボードモードであることを検出することになり、非常時マイコンに対してリセットを発行する。
【００７２】
これに対して、ＥＣＵ１００は、図５に示すタイムチャートのように動作する。タイミングｔ１に示すように、常時マイコン１０の書き換え中に常時マイコンに対する瞬断が発生した場合、ＥＣＵ１００は、全てのマイコンの書き換えが中断状態となる。つまり、常時マイコン１０だけでなく、非常時マイコン２０に関しても、書き換えが中断状態となる。
【００７３】
その後、タイミングｔ２に示すように、常時マイコンに対する電源供給が復帰すると、常時マイコン１０は、リセットが解除されて、図２に示すフローチャートをスタート（Ｓ）する。このとき、非常時マイコン２０は、電源供給が停止されている。よって、常時マイコン１０は、ステップＳ１０に続いて、ステップＳ２０へ進むことになる。
【００７４】
常時マイコン１０は、ステップＳ２０での判定においてフラッシュＲＯＭの異常を検出して、タイミングｔ３に示すように、ステップＳ５０のリプロモードへ進み、フラッシュＲＯＭの書き換えを再開することになる。更に、常時マイコン１０は、リプロモードで動作中において、非常時電源監視部１６が非常時マイコン２０に対する電源状態の変化を検出する（ステップＳ５１）。
【００７５】
その後、非常時マイコン２０は、タイミングｔ４に示すように、電源供給が開始されると、図２に示すフローチャートをスタート（Ｓ）する。このとき、常時マイコン１０は、ステップＳ５１において、非常時電源監視部１６が、非常時マイコン２０に対する電源状態の変化、すなわち、非常時マイコン２０の立ち上がりを検出することになる。よって、常時マイコン１０は、リプロモードで動作中において、非常時マイコン２０に対する電源状態が変化したことで、自身に対する電源供給が開始された直後の状態に初期化する。つまり、常時マイコン１０は、図２に示すフローチャートをスタート（Ｓ）する。そして、常時マイコン１０は、再度、ステップＳ１０を行うことになる。言い換えると、常時マイコン１０は、ステップＳ５０のリプロモードから、ステップＳ１０に再度遷移する。
【００７６】
これによって、常時マイコン１０と非常時マイコン２０は、図２に示すフローチャートのステップＳ１０を行うことになる。このように、ＥＣＵ１００は、常時マイコン１０と非常時マイコン２０との動作モードを同期させることができる。
【００７７】
また、常時マイコン１０と非常時マイコン２０の夫々は、リプロモードで動作するように指示されないため、タイミングｔ５に示すように、ステップＳ１０においてオンボードモードで動作しないと判定する。よって、常時マイコン１０と非常時マイコン２０の夫々は、ステップＳ２０へ進むことになる。
【００７８】
そして、非常時マイコン２０は、ステップＳ２０において、フラッシュＲＯＭ異常を検出しないため、ステップＳ３０での判定に進む。一方、常時マイコン１０は、ステップＳ２０での判定においてフラッシュＲＯＭの異常を検出して、ステップＳ５０のリプロモードへ進み、フラッシュＲＯＭ１１の書き換えを再開することになる。これによって、常時マイコン１０は、再度、フラッシュＲＯＭ１１の書き換えを行うことができる。また、常時マイコン１０は、リプロモードで動作するため、タイミングｔ６に示すように、書き換え要求を送信することになる。つまり、非常時マイコン２０は、タイミングｔ６に示すように、書き換え要求が送信される。
【００７９】
このとき、非常時マイコン２０は、比較例のＥＣＵと異なり、ステップＳ２０での判定を完了しているため、オンボードモードに突入することはない。そして、非常時マイコン２０は、ステップＳ３０での判定において、判定部４０からの切り換え要求を受け取ることになるため、ステップＳ５０のリプロモードへ進む。言い換えると、非常時マイコン２０は、ステップＳ３０での判定において、切り換え要求を検出することになるため、リプロモードに移行する。これによって、非常時マイコン２０に関しても、フラッシュＲＯＭ２１の書き換え可能な状態となる。このように、非常時マイコン２０は、常時マイコン１０が書き換え要求を出す前に、ステップＳ１０での判定を完了しているため、ステップＳ３０での判定でオンビークルモードに遷移可能となる。
【００８０】
次に、二つ目及び四つ目の組み合わせに関して説明する。常時マイコン及び非常時マイコンのいずれかがフラッシュＲＯＭの書き換え中で、非常時マイコンに対する瞬断が発生した場合、比較例のＥＣＵは、図１０に示すタイムチャートのように動作する。
【００８１】
タイミングｔ４１に示すように、非常時マイコンの書き換え中に非常時マイコンに対する瞬断が発生した場合は、非常時マイコンは、書き換えが中断状態となる。一方、常時マイコンは、リプロモードを継続する。つまり、非常時マイコンのみ書き換えが中断状態となる。
【００８２】
その後、タイミングｔ４２に示すように、非常時マイコンに対する電源供給が復帰すると、非常時マイコンは、リセットが解除されて、図２に示すフローチャートをスタート（Ｓ）する。このとき、常時マイコンは、リプロモードで動作しているため、書き換え要求を送信することになる。これによって、非常時マイコンには、書き換え要求が送信される。
【００８３】
このため、タイミングｔ４３に示すように、非常時マイコンは、ステップＳ１０で、オンボードモードで動作すると判定することになる。よって、非常時マイコンは、ステップＳ６０のオンボードモードへ進むことになる。つまり、非常時マイコンは、比較例のＥＣＵが車両上で動作しているにかかわらず、オンボードモードに突入することになる。この結果、動作モード監視ＩＣは、タイミングｔ４４に示すように、オンボードモードであることを検出することになり、非常時マイコンに対してリセットを発行する。
【００８４】
また、タイミングｔ４１において、常時マイコンの書き換え中に非常時マイコンに対する瞬断が発生した場合も同様に、常時マイコンは、書換えを継続するが、非常時マイコンは、瞬断状態となる。その後、タイミングｔ４２において、非常時マイコンに対する電源供給が復帰すると、非常時マイコンは、リセットが解除される。よって、非常時マイコンは、電源供給が開始されると、図２に示すフローチャートをスタート（Ｓ）する。このとき、非常時マイコンは、タイミングｔ４２において、書き換え要求が送信されている。このため、タイミングｔ４３に示すように、非常時マイコンは、ステップＳ１０で、オンボードモードで動作すると判定することになる。このため、非常時マイコンは、ステップＳ６０のオンボードモードへ進むことになる。つまり、非常時マイコンは、比較例のＥＣＵが車両上で動作しているにかかわらず、オンボードモードに突入することになる。この結果、動作モード監視ＩＣは、タイミングｔ４４において、オンボードモードであることを検出することになり、非常時マイコンに対してリセットを発行する。
【００８５】
これに対して、ＥＣＵ１００は、図６に示すタイムチャートのように動作する。タイミングｔ１１に示すように、非常時マイコン２０の書き換え中に非常時マイコン２０に対する瞬断が発生した場合、非常時マイコン２０は、書き換えが中断状態となる。
【００８６】
一方、常時マイコン１０は、ステップＳ５１において、非常時電源監視部１６が、非常時マイコン２０に対する電源状態の変化、すなわち、非常時マイコン２０の立ち下がりを検出することになる（ステップＳ５１）。よって、常時マイコン１０は、リプロモードで動作中において、非常時マイコン２０に対する電源状態が変化したことで、自身に対する電源供給が開始された直後の状態に初期化する（ステップＳ５１）。つまり、常時マイコン１０は、図２に示すフローチャートをスタート（Ｓ）する。そして、常時マイコン１０は、再度、ステップＳ１０を行うことになる。言い換えると、常時マイコン１０は、ステップＳ５０のリプロモードから、ステップＳ１０に再度遷移する。その後、常時マイコン１０は、ステップＳ１０〜ステップＳ３０を経て、ステップＳ４０の制御モードで動作することになる。更に、常時マイコン１０は、制御モードにおいて、非常時電源監視部１６が非常時マイコン２０に対する電源状態が停止状態から供給状態に変化したか否かを検出する（ステップＳ４１）。
【００８７】
そして、タイミングｔ１２，ｔ１３に示すように、常時マイコン１０は、制御モードで動作中において、非常時マイコン２０に対する電源状態が停止状態から供給状態に変化したことで、ステップＳ３０に遷移する。
【００８８】
一方、非常時マイコン２０は、タイミングｔ１２に示すように、自身に対する電源供給が復帰すると、リセットが解除されて、図２に示すフローチャートをスタート（Ｓ）する。このとき、常時マイコン１０は、リプロモードで動作していないため、書き換え要求を送信していない。このため、非常時マイコン２０は、オンボードモードに遷移することなく、ステップＳ２０に遷移する。
【００８９】
その後、非常時マイコン２０は、タイミングｔ１４に示すように、ステップＳ２０での判定においてフラッシュＲＯＭの異常を検出して、ステップＳ５０のリプロモードへ進み、フラッシュＲＯＭ２１の書き換えを再開することになる。これによって、非常時マイコン２０は、再度、フラッシュＲＯＭ２１の書き換えを行うことができる。また、非常時マイコン２０は、リプロモードで動作するため、タイミングｔ１４に示すように、書き換え要求を送信することになる。つまり、常時マイコン１０は、タイミングｔ１４に示すように、書き換え要求が送信される。
【００９０】
よって、常時マイコン１０は、ステップＳ３０での判定において、判定部４０からの切り換え要求を受け取ることになるため、ステップＳ５０のリプロモードへ進む。言い換えると、常時マイコン１０は、ステップＳ３０での判定において、切り換え要求を検出することになるため、リプロモードに移行する。これによって、常時マイコン１０に関しても、フラッシュＲＯＭ１１の書き換え可能な状態となる。このように、常時マイコン１０は、非常時マイコン２０が起動した後に、再度ステップＳ３０での判定にて、書き換え要求を検出しリプロモードに遷移可能となる。
【００９１】
また、上記のように、常時マイコン１０は、制御用プログラムを書き換え中、非常時電源監視部１６が非常時マイコン２０に対する電源状態の変化を検出するものである。よって、タイミングｔ１１において、常時マイコン１０の書き換え中に非常時マイコン２０に対する瞬断が発生した場合、常時マイコン１０は、非常時電源監視部１６が非常時マイコン２０に対する電源状態が供給状態から停止状態に変化したと検出することになる。このような場合、常時マイコン１０は、自身の制御用ソフトの書き換え、つまり、フラッシュＲＯＭ１１の書き換えを中断すると好ましい。
【００９２】
このようにすることで、常時マイコン１０だけ制御用ソフトが更新されることを抑制できる。つまり、常時マイコン１０と非常時マイコン２０とで、制御用ソフトの不整合が生じることを抑制できる。言い換えると、常時マイコン１０は、制御用ソフトの書き換えを継続して書き換えが完了し、新しい制御用ソフトに更新された状態であるのに対して、非常時マイコン２０は、制御用ソフトが更新されない状態となることを抑制できる。
【００９３】
そして、一つ目の組み合わせに関して説明する。非常時マイコンがフラッシュＲＯＭの書き換え中で、常時マイコンに対する瞬断が発生した場合、比較例のＥＣＵは、図１１に示すタイムチャートのように動作する。
【００９４】
タイミングｔ５１に示すように、非常時マイコンの書き換え中に常時マイコンに対する瞬断が発生した場合、比較例のＥＣＵは、全てのマイコンの書き換えが中断状態となる。つまり、非常時マイコンだけでなく、常時マイコンに関しても、書き換えが中断状態となる。しかしながら、このとき、常時マイコンは、フラッシュＲＯＭの書き換えを行っていないため、フラッシュＲＯＭ異常にはならない。
【００９５】
その後、タイミングｔ５２に示すように、常時マイコンに対する電源供給が復帰すると、常時マイコンは、リセットが解除されて、図２に示すフローチャートをスタート（Ｓ）する。このとき、非常時マイコンは、電源供給が停止されている。よって、常時マイコンは、ステップＳ１０に続いて、ステップＳ２０へ進むことになる。また、常時マイコンは、ステップＳ２０での判定においてフラッシュＲＯＭの異常を検出しないため、ステップＳ３０へ進む。更に、常時マイコンは、非常時マイコンに対する電源供給が停止されており、ステップＳ３０において書き換え要求を受け取らないため、ステップＳ４０の制御モードへ進むことになる。
【００９６】
その後、非常時マイコンは、電源供給が開始されると、図２に示すフローチャートをスタート（Ｓ）する。このとき、常時マイコンは、制御モードで動作している。このため、非常時マイコンは、ステップＳ２０に進むことになる。更に、非常時マイコンは、ステップＳ２０での判定においてフラッシュＲＯＭ異常を検出して、ステップＳ５０のリプロモードへ進み、フラッシュＲＯＭの書き換えを再開することになる。このとき、常時マイコンは、制御モードで動作しているのに対して、非常時マイコンは、リプロモードで動作することになる。このため、常時マイコンは、非常時マイコンの状態異常を検出することになる。
【００９７】
これに対して、ＥＣＵ１００は、図７に示すタイムチャートのように動作する。タイミングｔ１１に示すように、非常時マイコン２０の書き換え中に非常時マイコン２０に対する瞬断が発生した場合、非常時マイコン２０は、書き換えが中断状態となる。
【００９８】
タイミングｔ２１に示すように、非常時マイコン２０の書き換え中に常時マイコン１０に対する瞬断が発生した場合、ＥＣＵ１００は、全てのマイコンの書き換えが中断状態となる。つまり、非常時マイコン２０だけでなく、常時マイコン１０に関しても、書き換えが中断状態となる。しかしながら、このとき、常時マイコン１０は、フラッシュＲＯＭの書き換えを行っていないため、フラッシュＲＯＭ異常にはならない。
【００９９】
その後、タイミングｔ２２に示すように、常時マイコンに対する電源供給が復帰すると、常時マイコン１０は、比較例のＥＣＵにおける常時マイコンと同様に、ステップＳ４０の制御モードへ進むことになる。更に、常時マイコン１０は、制御モードにおいて、非常時電源監視部１６が非常時マイコン２０に対する電源状態が停止状態から供給状態に変化したか否かを検出する（ステップＳ４１）。
【０１００】
そして、タイミングｔ２３に示すように、常時マイコン１０は、制御モードで動作中において、非常時マイコン２０に対する電源状態が停止状態から供給状態に変化したことで、ステップＳ３０に遷移する。
【０１０１】
一方、非常時マイコン２０は、電源供給が開始されると、図２に示すフローチャートをスタート（Ｓ）する。このとき、常時マイコン１０は、リプロモードで動作していないため、書き換え要求を送信していない。このため、非常時マイコン２０は、オンボードモードに遷移することなく、ステップＳ２０に遷移する。
【０１０２】
その後、非常時マイコン２０は、タイミングｔ２４に示すように、ステップＳ２０での判定においてフラッシュＲＯＭ異常を検出して、ステップＳ５０のリプロモードへ進み、フラッシュＲＯＭ２１の書き換えを再開することになる。これによって、非常時マイコン２０は、再度、フラッシュＲＯＭ２１の書き換えを行うことができる。また、非常時マイコン２０は、リプロモードで動作するため、タイミングｔ２４に示すように、書き換え要求を送信することになる。つまり、常時マイコン１０は、タイミングｔ２４に示すように、書き換え要求が送信される。
【０１０３】
このとき、常時マイコン１０は、制御モードで動作していない。このため、常時マイコン１０は、ステップＳ３０での判定において、判定部４０からの切り換え要求を受け取ることになるため、ステップＳ５０のリプロモードへ進む。言い換えると、常時マイコン１０は、ステップＳ３０での判定において、切り換え要求を検出することになるため、リプロモードに移行する。これによって、常時マイコン１０に関しても、リプロモードに移行し、フラッシュＲＯＭ１１の書き換え可能な状態となる。このように、常時マイコン１０は、非常時マイコン２０が起動した後に、再度ステップＳ３０での判定にて、書き換え要求を検出しリプロモードに遷移可能となる。
【０１０４】
ここまでに説明したように、ＥＣＵ１００は、常時マイコン１０と非常時マイコン２０とを備えてなるものである。そして、常時マイコン１０は、制御用ソフトの書き換えを行っている際に、非常時マイコンに対する電源状態の変化を検出する。そして、常時マイコン１０は、電源状態が変化したことを検出した場合、ステップＳ１０での判定に処理を遷移する。
【０１０５】
このため、ＥＣＵ１００は、常時マイコン１０が書き換え中において、非常時マイコン２０に対する電源状態が停止状態から供給状態に変化した場合、常時マイコン１０と非常時マイコン２０の両方がステップＳ１０での判定を行うことになる。つまり、ＥＣＵ１００は、常時マイコン１０と非常時マイコン２０とで、ステップＳ１０での判定の実行タイミングを同期させることができる。
【０１０６】
よって、ＥＣＵ１００は、常時マイコン１０が書き換え中に、非常時マイコン２０に対する電源状態が停止状態から供給状態に変化した場合であっても、常時マイコン１０が非常時マイコン２０に対してリプロモードで動作するように指示しない。このため、ＥＣＵ１００は、常時マイコン１０が書き換え中に、非常時マイコン２０がオンボードモードで動作することを抑制できる。従って、ＥＣＵ１００は、誤動作を抑制できる。
【０１０７】
なお、常時マイコン１０は、制御用ソフトの書き換えを行っている際に、非常時マイコン２０に対する電源状態が供給状態から停止状態に変化した場合に関してもステップＳ１０での判定を行うことになる。このとき、非常時マイコン２０は、電源供給が停止されているため動作していない。従って、ＥＣＵ１００は、常時マイコンが書き換え作中に、非常時マイコン２０がオンボードモードで動作することを抑制できる。従って、ＥＣＵ１００は、誤動作を抑制できる。
【０１０８】
つまり、常時マイコンと非常時マイコンとを備えたＥＣＵでは、電源供給の開始タイミング、つまり、立ち上がりに差が生じる。ＥＣＵ１００は、立ち上がりの差によって、電源瞬断によって常時マイコン１０の書き換えが失敗した後のリトライ時（再書き換え時）に、マイコンがオンボードモードに遷移することを抑制できる。これによって、ＥＣＵ１００は、リトライ時のリプロモードへの遷移を正常に実施することが可能となる。
【０１０９】
また、ＥＣＵ１００は、常時マイコン１０が制御モードで動作中に、非常時マイコン２０の立ち上がりを検出し、ステップＳ３０での判定に遷移することで、非常時マイコン２０における書き換え失敗後のリトライにも対応可能となる。
【０１１０】
以上、本発明の好ましい実施形態について説明した。しかしながら、本発明は、上記した実施形態に何ら制限されることはなく、本発明の趣旨を逸脱しない範囲において、種々の変形が可能である。
【符号の説明】
【０１１１】
１０  常時電源系マイコン、１１  フラッシュＲＯＭ、１２  フラッシュＲＯＭ管理部、１３  動作モード選択部、１４  動作モード受信部、１５  動作モード送信部、１６  非常時電源監視部、２０  非常時電源系マイコン、２１  フラッシュＲＯＭ、２２  フラッシュＲＯＭ管理部、２３  動作モード選択部、２４  動作モード受信部、２５  動作モード送信部、３０  動作モード監視ＩＣ、４０  判定部、１００  ＥＣＵ、１１０  常時電源、１２０  非常時電源、２００  書き換え装置
【図１】
2015102964.tif 000003
【図２】
2015102964.tif 000004
【図３】
2015102964.tif 000005
【図４】
2015102964.tif 000006
【図５】
2015102964.tif 000007
【図６】
2015102964.tif 000008
【図７】
2015102964.tif 000009
【図８】
2015102964.tif 000010
【図９】
2015102964.tif 000011
【図１０】
2015102964.tif 000012
【図１１】
2015102964.tif 000013