(57)【要約】【課題】自動車用電子制御装置のリプログラミングに必要な電力を確保する。【解決手段】自動車用電子制御装置１０は、自動車に搭載された制御機器１４の制御処理を行うメインマイコン２２、メインマイコン２２と協調してメインマイコン２２の動作を監視する監視処理を行うサブマイコン２４、車載バッテリ２６から供給される電力をＥＣＵ１０の各部に分配する電源回路２８、及び、電源回路２８とサブマイコン２４との間に介挿されたスイッチング素子３２を備えている。車載ネットワーク１６を介してメインマイコン２２に通信可能に接続された非車載の診断テスター２０により、メインマイコン２２のフラッシュメモリ３８に対してリプログラミングが開始された場合、メインマイコン２２は、スイッチング素子３２をＯＦＦにしてサブマイコン２４に対する電力供給を遮断し、これにより、車載バッテリ２６の端子電圧の低下を抑制する。【選択図】図２
2015051695.tif 000002
【特許請求の範囲】
【請求項１】
自動車に搭載された制御機器を制御する自動車用電子制御装置であって、
書き換え可能な不揮発性記憶部と、
前記不揮発性記憶部に書き込まれた情報に基づいて前記制御機器の制御処理を行う第１処理手段と、
前記第１処理手段の動作を監視する監視処理を行う第２処理手段と、
を含み、
前記第１処理手段は、前記不揮発性記憶部が書き換えられる場合、前記第１処理手段への電力供給を維持する一方、前記第２処理手段における電力消費を抑制することを特徴とする自動車用電子制御装置。
【請求項２】
前記第１処理手段は、前記不揮発性記憶部が書き換えられる場合、前記第１処理手段の動作に対する前記第２処理手段の監視処理を停止させることを特徴とする請求項１に記載の自動車用電子制御装置。
【請求項３】
前記第１処理手段は、前記不揮発性記憶部が書き換えられる場合、前記第２処理手段の動作を停止させることを特徴とする請求項１に記載の自動車用電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自動車に搭載された制御機器を制御する自動車用電子制御装置に関し、詳しくは、自動車用電子制御装置に実装された記憶装置にデータ等を書き込みする際の省電力技術に関する。
【背景技術】
【０００２】
自動車に搭載された制御機器を制御する自動車用電子制御装置として、例えば、特許文献１に記載されているように、制御機器の制御処理を行う第１処理手段と、第１処理手段の動作を監視する監視処理を行う第２処理手段と、を備えたものが知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−２５５７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、前述の自動車用電子制御装置は、第１処理手段による制御機器の制御処理を最適化するために、電気的に書換えが可能な不揮発性メモリが実装されることにより、製造後における任意のタイミングで、不揮発性メモリに書き込まれたソフトウェアや制御データの書換え（以下、「リプログラミング」という）が可能となるように構成されることがある。
【０００５】
しかしながら、エンジン及び車両を停止させて車載バッテリから電力を供給して行うリプログラミング中には、第１処理手段の動作に対する第２処理手段の監視処理は不要となるため、第１処理手段に加えて第２処理手段にも電力が供給され続けると、電力の浪費となるだけでなく、車載バッテリの端子電圧が低下してリプログラミングが不完全となるおそれがある。
【０００６】
そこで、本発明は以上の問題点に鑑み、リプログラミングに必要な電力供給の確実性や安定性が向上した自動車用電子制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
このため、本発明に係る自動車用電子制御装置は、自動車に搭載された制御機器を制御するものであって、書き換え可能な不揮発性記憶部、第１処理手段、及び第２処理手段を備え、第１処理手段は、不揮発性記憶部に書き込まれた情報に基づいて制御機器の制御処理を行い、第２処理手段は、第１処理手段の動作を監視する監視処理を行うことを前提とする。そして、かかる自動車用電子制御装置において、第１処理手段は、その不揮発性記憶部が書き換えられる場合、第１処理手段への電力供給を維持する一方、第２処理手段における電力消費を抑制している。
【発明の効果】
【０００８】
本発明の自動車用電子制御装置によれば、リプログラミングに必要な電力供給の確実性や安定性を向上させることができる。
【図面の簡単な説明】
【０００９】
【図１】データ書換えシステムの一例を概略的に示す構成図である。
【図２】第１実施形態の自動車用電子制御装置の一例を示す内部構成図である。
【図３】ＣＰＵに対する監視処理内容の一例を示す説明図である。
【図４】自動車用電子制御装置の電力確保処理の一例を示すフローチャートである。
【図５】第２実施形態の自動車用電子制御装置の一例を示す内部構成図である。
【図６】第３実施形態の自動車用電子制御装置の一例を示す内部構成図である。
【発明を実施するための形態】
【００１０】
以下、添付された図面を参照し、本発明の実施の形態を説明する。
図１は、自動車に搭載される自動車用電子制御装置（以下、「ＥＣＵ（Electronic Control Unit）」という）のデータを書き換える、データ書換えシステムの一例を示す。
【００１１】
データ書換え、すなわち、リプログラミングの対象となるＥＣＵ１０は、例えば、エンジンの燃料噴射装置、自動変速機、または各種ポンプなど、自動車１２に搭載されたいずれかの制御機器１４を制御する電子機器であって、マイクロコンピュータを内蔵している。
【００１２】
ＥＣＵ１０は、他の制御機器を制御するＥＣＵ１０ａとともに、例えば、ＣＡＮ（Controller Area Network）、シリアル通信線、または、ＦｌｅｘＲａｙ（登録商標）などの車載ネットワーク１６に接続され、他のＥＣＵ１０ａとの間で各種データの転送が可能となるように構成されている。また、ＥＣＵ１０は、この車載ネットワーク１６に設けられた外部コネクタ１８を介して、非車載の診断テスター２０（データ書換装置）に着脱可能に接続され、診断テスター２０との間でも各種データ転送が可能に構成されている。作業者は、診断テスター２０に対する入力操作によりＥＣＵ１０のデータ書換え作業を行う。なお、ＥＣＵ１０と診断テスター２０とは、外部コネクタ１８を介した有線接続に限らず、無線送受信機を使用した無線によって相互に接続されるようにしてもよい。
【００１３】
診断テスター２０は、作業者がＥＣＵ１０のリプログラミング作業を行う電子機器であって、例えば、パーソナルコンピュータなどのコンピュータから構成される。具体的には、診断テスター２０は、図示省略するが、ＣＰＵなどのプロセッサ、車載ネットワーク１６に接続するための通信回路、ハードディスク装置やＳＳＤ（Solid State Drive）などのストレージ、および、作業者へのインターフェースとなる入出力装置（例えば、ディスプレイや入力キー）などが通信線によって相互に通信可能に接続されて構成されている。
【００１４】
図２は、第１実施形態に係るＥＣＵ１０の内部構成の一例を示す。
ＥＣＵ１０は、自動車１２に搭載された制御機器１４の制御処理を行う第１処理手段としての主マイクロコンピュータ（以下、「メインマイコン」という）２２、および、メインマイコン２２と協調してメインマイコン２２の動作（演算機能）を監視する監視処理を行う第２処理手段としての副マイクロコンピュータ（以下、「サブマイコン」という）２４を有している。
【００１５】
また、ＥＣＵ１０は、自動車１２のイグニッションスイッチ（ＩＧＮＳＷ）またはアクセサリスイッチ（ＡＣＣＳＷ）がＯＮとなる（閉成される）ことにより、車載バッテリ２６から電力の供給を受け、ＥＣＵ１０の各部に適した電圧に調整する電源回路２８を介して、メインマイコン２２およびサブマイコン２４に電力を分配している。ここで、ＥＣＵ１０は、車載バッテリ２６からメインマイコン２２およびサブマイコン２４に電力供給する電源ライン３０のうち、内蔵する電源回路２８とサブマイコン２４との間を断接するスイッチング素子３２を更に有し、このスイッチング素子３２は、メインマイコン２２からの電気信号に応じてＯＮ／ＯＦＦする、すなわち、電源回路２８からサブマイコン２４への電力を供給／遮断する、例えば、トランジスタやＦＥＴなどの半導体素子である。
【００１６】
メインマイコン２２は、揮発性のＲＡＭ（Random Access Memory）３４、通信インターフェース（Ｉ／Ｆ）３６、不揮発性のフラッシュメモリ（Flash EEPROM）３８、入出力回路（Ｉ／Ｏ）４０、および、ＣＰＵ（Central Processing Unit）４２を備え、それぞれが、内部バス４４により互いにデータ送受信可能に接続されている。
【００１７】
通信インターフェース３６は、車載ネットワーク１６と接続され、診断テスター２０との間で、データの送受信や、通信エラー処理などを実行する。通信インターフェース３６は、例えば、車載ネットワーク１６としてＣＡＮが採用される場合、メインマイコン２２にＣＡＮプロトコルの機能を実現するＣＡＮコントローラ（図示省略）を内蔵し、メインマイコン２２の外部のＥＣＵ１０内に、ＣＡＮバス（通信線）における送信電圧発生、動作電流の確保などを行うＣＡＮトランシーバ（図示省略）を有して構成され得る。
【００１８】
フラッシュメモリ３８は、電気的に記憶の書換えが可能で、かつ、不揮発性の記憶装置であり、一括またはブロック単位でデータを消去し、新たなデータをアドレス順に書き込むことができるようになっている。フラッシュメモリ３８のリプログラミングは、作業者が車載ネットワーク１６を介してＥＣＵ１０と診断テスター２０とを通信可能に接続した後、診断テスター２０において、作業者が書換えデータおよび被書換えデータを指定して、所定の入力操作を行ったときに実行される。
【００１９】
入出力回路４０は、Ｄ／Ａ（Digital/Analog）変換器を備え、ＣＰＵ４２からのデジタル出力信号を内部バス４４からＤ／Ａ変換器を介してＤ／Ａ変換し、アナログ信号として制御機器１４（または、その駆動回路）およびスイッチング素子３２に出力する。また、入出力回路４０は、Ａ／Ｄ（Analog/Digital）変換器を備え、電源ライン３０の電圧のアナログ信号を入力してＡ／Ｄ変換器によりＡ／Ｄ変換し、内部バス４４を介してデジタル信号としてＣＰＵ４２へ転送する。
【００２０】
ＣＰＵ４２は、フラッシュメモリ３８およびＲＡＭ３４に記憶された情報（制御データやソフトウェア）に基づいて、制御機器１４の制御処理を行う演算処理ユニットである。また、メインマイコン２２のＣＰＵ（以下、「メインＣＰＵ」という）４２とサブマイコン２４のＣＰＵ（以下、「サブＣＰＵ」という）４６とは、例えば、ＳＰＩ（Serial Peripheral Interface）通信など、双方向にデータ転送可能な通信線４８で接続され、サブＣＰＵ４６は、この通信線４８を介して、メインＣＰＵ４２と協調してメインＣＰＵ４２の動作を監視する監視処理を行う。さらに、メインＣＰＵ４２は、フラッシュメモリ３８のリプログラミングが実施されているか否かに応じて、スイッチング素子３２の制御処理を行う。
【００２１】
図３は、メインＣＰＵ４２とサブＣＰＵ４６との協調により、メインＣＰＵ４２の動作を監視する監視処理内容の一例を示す。
サブＣＰＵ４６は、メインＣＰＵ４２に例題を出題し、メインＣＰＵ４２からの例題の回答に基づいてメインＣＰＵ４２の演算機能を監視するユニットであり、サブＣＰＵ４６は、例題送信部５０、回答受信部５２、診断部５４、および例題＆回答テーブル５６を有する。
【００２２】
例題＆回答テーブル５６は、メインＣＰＵ４２に出題する例題と、当該例題の回答の期待値と、を対として記憶するものであり、例えば、サブＣＰＵ４６が備えるマスクＲＯＭなどの書き換え不能の不揮発性記憶領域に格納されている。
例題送信部５０は、例題＆回答テーブル５６から読み出した例題を、メインＣＰＵ４２に送信する。
【００２３】
回答受信部５２は、例題送信部５０からの例題出力に応じてメインＣＰＵ４２が出力する回答データを受け取って診断部５４に出力する。
診断部５４は、メインＣＰＵ４２に送信した例題の回答の期待値を例題＆回答テーブル５６から読み出し、この期待値とメインＣＰＵ４２側から受け取った回答データ（演算結果）とを照合する。
【００２４】
ここで、メインＣＰＵ４２は、演算機能が正常であれば、例題に対して予め決められた演算処理を実施することで期待値に一致する回答データを出力し、メインＣＰＵ４２の演算機能に何らかの異常が発生すると、例題＆回答テーブル５６から読み出した期待値と、メインＣＰＵ４２側から受け取った回答データとが一致しないようになる。
そこで、診断部５４は、例題＆回答テーブル５６から読み出した期待値と、メインＣＰＵ４２側から受け取った回答データとを照合することで、メインＣＰＵ４２の演算機能の監視を行っている。
【００２５】
つまり、例題＆回答テーブル５６から読み出した期待値と、メインＣＰＵ４２側から受け取った回答データとの照合結果（一致／不一致）は、メインＣＰＵ４２の演算機能が正常であるか否かを示し、診断部５４は、メインＣＰＵ４２の演算機能が正常であるか異常であるかに応じてフェイルセーフ信号の出力を切り替える機能を有している。
【００２６】
具体的には、診断部５４は、例題＆回答テーブル５６から読み出した期待値と、メインＣＰＵ４２側から受け取った回答データとが一致する場合、すなわち、メインＣＰＵ４２の演算機能が正常である場合にはフェイルセーフ処理を行わず、両者が不一致である場合、すなわち、メインＣＰＵ４２の演算機能が何らかの異常である場合には、メインＣＰＵ４２によって制御機器１４が異常に制御されることを抑制するためのフェイルセーフ処理を実施する。
【００２７】
また、診断部５４は、例題を出力してから所定時間内にメインＣＰＵ４２からの回答データの送信がない場合、照合結果は不一致であると判定し、メインＣＰＵ４２によって制御機器１４が異常に制御されることを抑制するためのフェイルセーフ処理を実施する。
【００２８】
フェイルセーフ処理として、診断部５４は、例えば、メインＣＰＵ４２がエンジンの電制スロットル弁を制御する機能を有する場合、電制スロットル弁を安全サイドに制御する。
電制スロットル弁は、例えば、リターンスプリングによって閉弁方向に付勢されるエンジンのスロットルバルブを、スロットルモータが発生するトルクによって開弁させるデバイスであり、メインＣＰＵ４２は、スロットルモータへの通電を制御することで、スロットルバルブの開度を制御する。
【００２９】
そして、サブマイコン２４は、フェイルセーフ処理としてスロットルモータへの通電を遮断する（例えば、スロットルモータリレーをオフする）。
これにより、スロットルバルブは、リターンスプリングの付勢力によって全閉位置にまで閉じて全閉位置を保持するから、エンジンの発生トルク、つまり、自動車１２の駆動トルクの増大が制限され、自動車１２が安全サイドに導かれる。
【００３０】
一方、メインＣＰＵ４２は、送受信部５８、および例題演算部６０を有している。
送受信部５８は、サブマイコン２４の例題送信部５０から出力された例題を受信する例題受信部５８ａと、サブマイコン２４の回答受信部５２に回答データを送信する回答送信部５８ｂとを有している。
【００３１】
例題演算部６０は、ＣＰＵコア、演算装置ＡＬＵなどの処理装置であって、入力した例題を演算し、例題の演算結果としての回答データを出力する。ここで、例題演算部６０は、例題受信部５８ａが受け取ったサブＣＰＵ４６からの例題を入力し、入力した例題に基づき所定の演算を行った結果としての回答データを、回答受信部５２を介してサブＣＰＵ４６に出力する。
【００３２】
次に、図４は、イグニッションスイッチまたはアクセサリスイッチがＯＮになったことを契機として、メインＣＰＵ４２において繰り返し実行されるＥＣＵ１０の電力確保処理内容を示す。ただし、リプログラミングはエンジン及び自動車１２が停止した状態で行い、本電力確保処理と並行して実行されるものとする。
【００３３】
ステップ１００１（図では「Ｓ１００１」と略記する。以下同様。）では、ＥＣＵ１０におけるフラッシュメモリ３８のリプログラミングが実施されているか否かを判定する。具体的には、作業者が車載ネットワーク１６を介してＥＣＵ１０と診断テスター２０とを通信可能に接続した後、診断テスター２０において、作業者が書換えデータおよび被書換えデータを指定して、所定の入力操作を行ったときに、診断テスター２０からデータの転送が開始されているか否かを、内部バス４４を通じてメインＣＰＵ４２が検出することにより、リプログラミングが実施されているか否かを判定する。
【００３４】
リプログラミングが実施されていると判定された場合には、ステップ１００２へと進む（Ｙｅｓ）。一方、リプログラミングが実施されていないと判定された場合には、ステップ１００８へと進む（Ｎｏ）。
【００３５】
ステップ１００２では、車載バッテリ２６の端子電圧Ｖbatが所定電圧Ｖlimに所定値αを加えた加算値（Ｖlim＋α）未満となっているか否かを判定する。
ここで、所定電圧Ｖlimは、メインマイコン２２におけるリプログラミングに支障をきたさない電圧の下限値である。また、所定値αは、ノイズの影響などにより、車載バッテリ２６の端子電圧Ｖbatが変動することを考慮して設けられる正の誤差である。
【００３６】
車載バッテリ２６の端子電圧Ｖbatが加算値（Ｖlim＋α）未満であると判定された場合には、メインマイコン２２におけるリプログラミングに必要な電力に余裕がないと推定されるため、車載バッテリ２６から供給される電力の消費を抑制する省電力モードを実施すべきか否かを判定すべく、ステップ１００３へ進む（Ｙｅｓ）。一方、車載バッテリ２６の端子電圧Ｖbatが加算値（Ｖlim＋α）以上であると判定された場合には、メインマイコン２２におけるリプログラミングに必要な電力に余裕があると推定されるため、省電力モードを実施しないようにすべく、ステップ１００８へ進む（Ｎｏ）。
【００３７】
ステップ１００３では、省電力モードを実施する前に、車載バッテリ２６の端子電圧Ｖbatが所定電圧Ｖlim以上であるか否かを判定する。
これは、車載バッテリ２６の端子電圧Ｖbatが所定電圧Ｖlim未満であるとリプログラミングが不完全となるおそれがあるため、車載バッテリ２６の端子電圧Ｖbatが所定電圧Ｖlim以上であることを確認する必要があるからである。
【００３８】
車載バッテリ２６の端子電圧Ｖbatが所定電圧Ｖlim以上である場合には、本ステップまでに行われたリプログラミングが完全であると推定されるので、リプログラミングを継続すべく、ステップ１００４へ進む（Ｙｅｓ）。一方、車載バッテリ２６の端子電圧Ｖbatが所定電圧Ｖlim未満の場合には、本ステップまでに行われたリプログラミングが不完全であると推定されるので、ステップ１００５へ進んでリプログラミングを最初からやり直し、ＥＣＵ１０の電力確保処理を終了する（Ｎｏ）。リプログラミングを最初からやり直すに際しては、メインＣＰＵ４２から車載ネットワーク１６を介して信号を送信することにより、車載バッテリ２６の端子電圧Ｖbatがリプログラミングを実施するのに不十分な電圧であることを、診断テスター２０のディスプレイに表示させてもよい。
【００３９】
ステップ１００４では、ＥＣＵ１０内における電力の消費を抑制する第１省電力モードを実施する。
具体的には、スイッチング素子３２がＯＮとなっている場合には、スイッチング素子３２をＯＦＦにして、電源回路２８からサブマイコン２４への電力供給を遮断する一方、スイッチング素子３２がすでにＯＦＦとなっている場合には、その状態を維持する。これにより、サブマイコン２４で消費されていた電力を、リプログラミングを実施しているメインマイコン２２に回すことができ、リプログラミングを安定して実施することができる。
【００４０】
また、スイッチング素子３２をＯＦＦにする代わりに、スイッチング素子３２はＯＮにしたまま、少なくとも、サブＣＰＵ４６において実施されるメインＣＰＵ４２の動作を監視する監視処理を停止するだけでもよい。この場合、サブＣＰＵ４６は、車載ネットワーク１６あるいはメインマイコン２２から、リプログラミングが開始されたことを検知して、自動的に監視処理を停止する。
【００４１】
なお、メインＣＰＵ４２は、リプログラミングの開始とともに、サブＣＰＵ４６から出題される例題に応じて回答して回答データをサブＣＰＵ４６へ送信するメインＣＰＵ４２側の監視処理を停止するように構成されてもよい。この場合、メインＣＰＵ４２の監視処理の停止は、サブＣＰＵ４６７において、メインＣＰＵ４２に異常が発生していると誤検知されないように、少なくとも、サブマイコン２４に電力が供給されなくなるまで、または、サブＣＰＵ４６における監視処理を停止するまで制限される。
【００４２】
ステップ１００６では、車載バッテリ２６の端子電圧Ｖbatが所定電圧Ｖlimに所定値αを加えた加算値（Ｖlim＋α）未満となっているか否かを再度判定する。
【００４３】
車載バッテリ２６の端子電圧Ｖbatが加算値（Ｖlim＋α）未満であると判定された場合には、ステップ１００４における第１省電力モードの実施がリプログラミングを支障なく行うには不十分であったと推定されるため、さらに第２省電力モードを実施すべく、ステップ１００７へ進む（Ｙｅｓ）。一方、車載バッテリ２６の端子電圧Ｖbatが加算値（Ｖlim＋α）以上であると判定された場合には、ステップ１００４における第１省電力モードの実施により、車載バッテリ２６の端子電圧Ｖbatが、リプログラミングを支障なく行うことができる電圧まで上昇したと推定され、さらに別の省電力モードを実施する必要はないので、ＥＣＵ１０の電力確保処理を終了する（Ｎｏ）。
【００４４】
ステップ１００７では、リプログラミングの対象であるＥＣＵ１０だけでなく、自動車１２全体で電力の消費を抑制する第２省電力モードを実施する。
第２省電力モードは、車載バッテリ２６の端子電圧Ｖbatを加算値（Ｖlim＋α）以上とすべく、ステップ１００４における第１省電力モードの実施に加えて、リプログラミングの対象であるＥＣＵ１０以外の他のＥＣＵ１０ａのうち少なくとも１つの動作を停止させる。
【００４５】
具体的には、メインＣＰＵ４２が、他のＥＣＵ１０ａのうち特定のものに対して動作を停止するように指示する信号を生成し、この信号が通信インターフェース３６から車載ネットワーク１６を介して前記特定のＥＣＵ１０ａに転送される。また、メインＣＰＵ４２は、前記特定のＥＣＵ１０ａが、例えば、自動変速機のソレノイドへの通電、空調装置の作動、ナビゲーションシステムの作動、または、ライトの点灯などを禁止するように、車載ネットワーク１６を介して、他のＥＣＵ１０ａに指示する信号を出力してもよい。
【００４６】
他のＥＣＵ１０ａのうち動作を停止させるものの数は、車載バッテリ２６の端子電圧Ｖbatが加算値（Ｖlim＋α）に達するまで、徐々に増やしていってもよい。
なお、前記特定のＥＣＵ１０ａの動作を停止させた場合には、ＥＣＵ１０、及び前記特定のＥＣＵ１０ａ以外のＥＣＵ１０ａが前記特定のＥＣＵ１０ａを異常として誤検知しないように、各種異常検知を停止してもよい。
【００４７】
ステップ１００８では、車載バッテリ２６の端子電圧Ｖbatが所定電圧Ｖlimに所定値βを加えた加算値（Ｖlim＋β）以上となっているか否かを判定する。
【００４８】
ここで、所定値βは、所定値αよりも大きい値であり、所定電圧Ｖlimに所定値βを加えた加算値（Ｖlim＋β）は、省電力モードを全て解除しても、車載バッテリ２６の端子電圧Ｖbatが加算値（Ｖlim＋α）未満とならない電圧である。したがって、省電力モードにより車載バッテリ２６の端子電圧Ｖbatが加算値（Ｖlim＋α）以上となった場合、直ちに次のステップ１００９で非省電力モードを実施すると、車載バッテリ２６の端子電圧Ｖbatが加算値（Ｖlim＋α）未満となったときには省電力モードを再び実施することになるが、車載バッテリ２６の端子電圧Ｖbatが所定電圧Ｖlimに所定値αよりも大きい所定値βを加えた加算値（Ｖlim＋β）以上となっている場合に、非省電力モードを実施すれば、省電力モードと非省電力モードとの間におけるハンチングを低減することができる。
【００４９】
車載バッテリ２６の端子電圧Ｖbatが加算値（Ｖlim＋β）以上であると判定された場合には、非省電力モードを実施すべく、ステップ１００９へ進む（Ｙｅｓ）。一方、車載バッテリ２６の端子電圧Ｖbatが加算値（Ｖlim＋β）未満であると判定された場合には、ハンチングを抑制すべく、非省電力モードを実施することなくＥＣＵ１０の電力確保処理を終了する（Ｎｏ）。
【００５０】
なお、本実施形態において、メインＣＰＵ４２は、前述のように、図４の電力確保処理と、不揮発性メモリに書き込まれたソフトウェアや制御データを書き換えるリプログラミングシーケンスと、を並行して実行している。
しかし、メインＣＰＵ４２が、リプログラミングシーケンスの前に１回だけ、図４の電力確保処理を実行するようにしてもよく、この場合、前述のようなハンチングは発生しないので、ステップ１００１においてリプログラミングが実施されていないと判定されたとき、又は、ステップ１００２において車載バッテリ２６の端子電圧Ｖbatが加算値（Ｖlim＋α）以上であると判定されたときには、本ステップ及び次のステップ１００９を省略して、電力確保処理を終了する。
【００５１】
また、図４の電力確保処理が、本実施形態のように、不揮発性メモリに書き込まれたソフトウェアや制御データを書き換えるリプログラミングシーケンスと並行して実施される場合でも、第１省電力モード、第２省電力モード、及び、非省電力モードに優先度を設定し、優先度の高いモードから低いモードへの移行を禁止するようにすることで、ハンチングの発生を抑制することができる。
例えば、非省電力モード、第１省電力モード、及び、第２省電力モードの各優先度が、この順番で高くなるように予め設定して記憶手段に記憶しておき、ステップ１００１及びステップ１００２において、非省電力モードに対して現在のモードの優先度が高いか否かの判定も追加して行う。つまり、ステップ１００１又はステップ１００２において条件を満たしていると判定される（Ｙｅｓの方へ進む）ためには、現在のモードの優先度が非省電力モードよりも高いと判定されることが必要条件となる。換言すれば、ステップ１００１又はステップ１００２において条件を満たしていないと判定される（Ｎｏの方へ進む）ためには、現在のモードの優先度が非省電力モードと同じである、すなわち、現在のモードが非通電モードであると判定されることが必要条件となる。ステップ１００１又はステップ１００２において条件を満たしていないと判定された（Ｎｏの方へ進んだ）場合、ステップ１００８を省略して、ステップ１００９へ進む。このようにしても、前述のようなハンチングの発生を抑制することができる。
【００５２】
ステップ１００９では、第１省電力モード及び第２省電力モードを解除する非省電力モードを実施する。
具体的には、第１省電力モードにより、スイッチング素子３２がＯＦＦとなっている場合、スイッチング素子３２をＯＮにして、電源回路２８からサブマイコン２４への電力供給を再開する一方、スイッチング素子３２がすでにＯＮとなっている場合には、その状態を維持する。
【００５３】
また、第１省電力モードにより、スイッチング素子３２をＯＮにしたまま、少なくとも、サブＣＰＵ４６において実施されるメインＣＰＵ４２の動作を監視する監視処理を停止している場合には、その監視処理を再開する一方、監視処理がすでに実施されている場合には、その処理を続行する。
【００５４】
第２省電力モードを実施していた場合には、メインＣＰＵ４２は、リプログラミングの対象であるＥＣＵ１０以外の他のＥＣＵ１０ａのうち動作を停止させていたＥＣＵ１０ａの動作を再開するように指示する信号を生成し、この信号を通信インターフェース３６から車載ネットワーク１６を介して動作を停止させていた特定のＥＣＵ１０ａに転送する。一方、リプログラミングの対象であるＥＣＵ１０以外の他のＥＣＵ１０ａの動作が制限されていない場合には、その状態を維持する。
【００５５】
また、第２省電力モードにより、前記特定のＥＣＵ１０ａが、例えば、自動変速機のソレノイドへの通電、空調装置の作動、ナビゲーションシステムの作動、または、ライトの点灯など、制御機器の動作を禁止するようにしている場合には、それらの制御機器の動作を可能にするようにしてもよい。一方、制御機器の動作が制限されていない場合には、その状態を維持する。
【００５６】
このようなＥＣＵ１０によれば、メインマイコン２２のフラッシュメモリ３８に対してリプログラミングが実施されている間は、メインＣＰＵ４２の動作を監視するサブＣＰＵ２４に対する電力の供給を遮断する、あるいは、サブＣＰＵ２４による監視処理を停止する第１省電力モードを実施するので、ＥＣＵ１０において消費される電力が低減し、車載バッテリ２６における端子電圧Ｖbatの低下が抑制される。このため、リプログラミングに必要な電力が確保されるので、リプログラミングを安定的に実施することが可能となる。
【００５７】
また、第１省電力モードは、車載バッテリ２６の端子電圧Ｖbatが加算値（Ｖlim＋α）未満となったときに実施され、リプログラミングに必要な電力に対して車載バッテリ２６から供給される電力に余裕がある場合には実施されないので、サブマイコン２４の機能を必要以上に制限することがない。
【００５８】
さらに、第１省電力モードの実施のみではリプログラミングに必要な電力を確保できない場合、リプログラミングの対象であるＥＣＵ１０以外の他のＥＣＵ１０ａの動作を停止させる第２省電力モードを実施するので、リプログラミングを更に安定的かつ確実に行うことが可能となる。
【００５９】
なお、第１実施形態において、ＥＣＵ１０は、ステップ１００４の第１省電力モードで、自動車１２のアクセサリスイッチをＯＮにしたとき、サブマイコン２４には電力を供給せずメインマイコン２２に対してのみ通電を開始し、イグニッションスイッチをＯＮにしたとき、あるいは、スターターをＯＮに（すなわち、エンジンを始動）したときにサブマイコン２４にも通電を開始するように構成されてもよい。
【００６０】
次に、本発明を実施するための第２実施形態について説明する。なお、第１実施形態と同一構成については、同一符号を付すことでその説明を省略または簡潔にする。
図５は、第２実施形態に係るＥＣＵ１００の内部構成の一例を示す。
【００６１】
本実施形態に係るＥＣＵ１００は、１つのマイクロコンピュータ１０２が第１コア１０４ａ及び第２コア１０４ｂの２つのプロセッサコアを封入した１つのＣＰＵ１０４を有し、かつ、スイッチング素子３２がない点で、構成上、第１実施形態に係るＥＣＵ１０と異なる。
【００６２】
第１コア１０４ａは、自動車１２に搭載された制御機器１４の制御処理を行う第１処理手段をなし、第２コア１０４ｂは、通信線１０６により接続された第１コア１０４ａと協調して第１コア１０４ａの動作（演算機能）を監視する監視処理を行う第２処理手段をなす。
【００６３】
第１コア１０４ａの動作を監視する監視処理については、第１コア１０４ａは、図３におけるメインＣＰＵ４２と同じ機能を有し、第２コア１０４ｂは、同様に、図３におけるサブＣＰＵ４６と同じ機能を有する。
【００６４】
リプログラミングにおけるＥＣＵ１００の電力確保処理は、図４のフローチャートと同様であるが、ＥＣＵ１００にスイッチング素子３２がないため、ステップ１００４の第１省電力モードは、第１コア１０４ａからの指示信号に基づいて、第２コア１０４ｂが監視処理を行わないように設定される。
【００６５】
このようなＥＣＵ１００であっても、リプログラミング時には、第１実施形態と同様に、車載バッテリ２６における端子電圧Ｖbatの低下が抑制され、リプログラミングに必要な電力を確保して、リプログラミングを安定的に実施することが可能である。
なお、第２実施形態において、ＣＰＵ１０４が封入するプロセッサコアは、説明の便宜上、第１コア１０４ａ及び第２コア１０４ｂの２つとしたが、これに限定されず、ＣＰＵ１０４は、あらゆるコア数のマルチコアプロセッサであってもよい。
【００６６】
次に、本発明を実施するための第３実施形態について説明する。なお、第１実施形態と同一構成については、同一符号を付すことでその説明を省略または簡潔にする。
図６は、第３実施形態に係るＥＣＵ２００の内部構成の一例を示す。
【００６７】
本実施形態に係るＥＣＵ２００は、第２実施形態と同様に、１つのマイクロコンピュータ２０２が第１コア２０４ａ及び第２コア２０４ｂの２つのプロセッサコアを封入した１つのＣＰＵ２０４を有し、第１コア２０４ａ及び第２コア２０４ｂが、夫々、第２実施形態における第１コア１０４ａ及び第２コア１０４ｂに相当する。また、本実施形態に係るＥＣＵ２００に第１実施形態のスイッチング素子３２がないことも、第２実施形態と同様である。
【００６８】
本実施形態に係るＥＣＵ２００は、制御機器１４の制御処理が、第１コア２０４ａだけでなく、第２コア２０４ｂでも行われ、かつ、ＣＰＵ２０４が、第１コア２０４ａの制御処理による出力値と、第２コア２０４ｂの制御処理による出力値と、が一致しているか否かを判定する制御出力値一致判定部２０６を備えている点で、第２実施形態に係るＥＣＵ１００と異なる。制御出力値一致判定部２０６において、制御処理による出力値が一致しなければ、制御機器１４へ制御信号は出力されない。
【００６９】
このようなＥＣＵ２００であっても、リプログラミング時には、第１実施形態と同様に、車載バッテリ２６における端子電圧Ｖbatの低下が抑制され、リプログラミングに必要な電力を確保して、リプログラミングを安定的に実施することが可能である。
【００７０】
なお、前述の第１実施形態〜第３実施形態において、メインマイコン２２のフラッシュメモリ３８に対してリプログラミングが開始されたときには、車載バッテリ２６の端子電圧Ｖbatを考慮せずに、直ちに第１省電力モードを実施するようにＥＣＵ１０を構成してもよい。
【００７１】
また、前述の第１実施形態〜第３実施形態において、イグニッションスイッチのＯＮによりリプログラミングの対象となるＥＣＵ１０と通信確立した後に、イグニッションスイッチをＯＦＦにしてアクセサリスイッチをＯＮにした場合には、イグニッションスイッチのＯＮで通信確立したＥＣＵ１０のみに通電を継続させてもよい。
【００７２】
以上、本発明者にとってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記の実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更が可能であることはいうまでもない。
ここで、前記実施形態から把握し得る請求項以外の技術的思想について、以下に効果と共に記載する。
【００７３】
（イ）第１処理手段は、そのフラッシュメモリ（不揮発性記憶部）がリプログラミングされる場合、第１処理手段及び第２処理手段に電力を供給する車載バッテリの端子電圧に応じて、第２処理手段における電力消費を抑制することを特徴とする請求項１〜請求項３のいずれか１つに記載の自動車用電子制御装置。
【００７４】
このようにすれば、第１省電力モードは、車載バッテリから供給される電力がリプログラミングに必要な電力に対して余裕がある場合には実施されないので、第２処理手段の機能を必要以上に制限することがない。
【００７５】
（ロ）第１処理手段は、そのフラッシュメモリ（不揮発性記憶部）がリプログラミングされる場合、第１処理手段及び第２処理手段に電力を供給する車載バッテリの端子電圧が所定電圧を下回ったとき、第２処理手段における電力消費を抑制することを特徴とする請求項１〜請求項３又は（イ）のいずれか１つに記載の自動車用電子制御装置。
このようにすれば、第１省電力モードは、車載バッテリから供給される電力がリプログラミングに必要な電力に対して余裕がある場合には実施されないので、第２処理手段の機能を必要以上に制限することがない。
【００７６】
（ハ）第１処理手段は、そのフラッシュメモリ（不揮発性記憶部）がリプログラミングされる場合、第２処理手段以外の他の自動車用電子制御装置（ＥＣＵ）などにおける電力消費を更に抑制することを特徴とする請求項１〜請求項３又は（イ）若しくは（ロ）のいずれか１つに記載の自動車用電子制御装置。
このようにすれば、リプログラミングに必要な電力供給の確実性及び安定性を向上させることができる。
【００７７】
（ニ）第１処理手段は、そのフラッシュメモリ（不揮発性記憶部）がリプログラミングされる場合、第２処理手段へ供給される電力を遮断して、第２処理手段の動作を停止させることを特徴とする請求項３に記載の自動車用電子制御装置。
このようにすれば、第２処理手段全体の電力消費を抑えることができるので、リプログラミングに必要な電力供給の確実性及び安定性を向上させることが可能となる。
【００７８】
（ホ）第１処理手段及び第２処理手段に電力を供給する車載バッテリと第２処理手段との間にスイッチング素子を備え、第１処理手段は、スイッチング素子をＯＦＦにすることで第２処理手段へ供給される電力を遮断することを特徴とする（ニ）に記載の自動車用電子制御装置。
このようにすれば、第２処理手段で消費される電力をほぼ０とすることができる。
【００７９】
（ヘ）第１処理手段及び第２処理手段は、１つのＣＰＵに封入された２つのプロセッサコアであることを特徴とする請求項１〜請求項３、または（イ）〜（ホ）のいずれか１つに記載の自動車用電子制御装置。
このようにすれば、マルチコアプロセッサについてもリプログラミングに必要な電力供給の確実性及び安定性を向上させることができる。
【符号の説明】
【００８０】
１０，１００，２００…リプログラミング対象のＥＣＵ、１０ａ…他のＥＣＵ、１２…自動車、１４…制御機器、１６…車載ネットワーク、２０…診断テスター、２２…メインマイコン、２４…サブマイコン、２６…車載バッテリ、２８…電源回路、３０…電源ライン、３２…スイッチング素子、３６…通信インターフェース、３８…フラッシュメモリ、４０…入出力回路、４２…メインＣＰＵ、４４…内部バス、４６…サブＣＰＵ、１０２，２０２…マイクロコンピュータ、１０４，２０４…ＣＰＵ、１０４ａ，２０４ａ…第１コア、１０４ｂ，２０４ｂ…第２コア
【図１】
2015051695.tif 000003
【図２】
2015051695.tif 000004
【図３】
2015051695.tif 000005
【図４】
2015051695.tif 000006
【図５】
2015051695.tif 000007
【図６】
2015051695.tif 000008