(57)【要約】      （修正有）【課題】第１演算処理装置と、第１演算処理装置の動作に異常が生じたときに第１演算処理装置にリセット要求信号を出力する第２演算処理装置とを備える自動車用電子制御装置において、プログラムの書き換えが不能になることを抑止する。【解決手段】第２演算処理装置（サブマイコン）は、自プログラムの書き換えが行われたときにＳ６０２、第１演算処理装置（メインマイコン）のプログラムの識別情報ＩＤｍと第２演算処理装置のプログラムの識別情報ＩＤｓとの整合性を判断しＳ６０３、識別情報ＩＤが不整合であるときに第１演算処理装置の監視機能を停止してＳ６０５、第１演算処理装置をプログラムの書き換えが可能なモードに設定するＳ６０６。【選択図】図３
2019109746.tif 000002
【特許請求の範囲】
【請求項１】
第１演算処理装置と、
前記第１演算処理装置と通信可能に構成された第２演算処理装置であって、
前記第１演算処理装置の動作に異常が生じたときに前記第１演算処理装置にリセット要求信号を出力する監視部と、
前記第１演算処理装置のプログラムの識別情報と前記第２演算処理装置のプログラムの識別情報との整合性を判断し、前記識別情報が不整合であるときに前記監視部の機能を停止して前記第１演算処理装置をプログラムの書き換えが可能なモードに設定する整合性判定部と、
を有する前記第２演算処理装置と、
を備える、自動車用電子制御装置。
【請求項２】
前記整合性判定部は、
前記リセット要求信号の出力機能を停止した後、前記第１演算処理装置のプログラムが、前記第２演算処理装置のプログラムの識別情報に整合する識別情報が付与されたプログラムに書き換えられたときに、前記監視部の機能を再開させる、
請求項１記載の自動車用電子制御装置。
【請求項３】
前記第１演算処理装置は、
通信ネットワークを介して前記第１演算処理装置及び前記第２演算処理装置のプログラムの内容を書き換えるためのデータであって前記識別情報が付与された書き換えデータを取得する通信部を有し、
前記整合性判定部は、
前記通信部が取得した前記書き換えデータに基づき前記第１演算処理装置と前記第２演算処理装置との少なくとも一方のプログラムが書き換えられたときに、前記識別情報の整合性を判断する、
請求項１又は請求項２記載の自動車用電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自動車用電子制御装置に関し、詳しくは、自動車搭載機器を制御する第１演算処理装置と、前記第１演算処理装置の動作を監視する第２演算処理装置とを備えた自動車用電子制御装置に関する。
【背景技術】
【０００２】
特許文献１には、メインコントローラとサブコントローラとを有し、メインコントローラは、サブコントローラで使用している制御プログラムのバージョン情報を取得し、取得したバージョン情報とＲＯＭに記憶されている制御プログラムのバージョン情報とを比較し、ＲＯＭに記憶されている制御プログラムの方が新しいバージョンであるときは、サブコントローラに対して新しい制御プログラムをダウンロードする、電子機器が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−２４１９２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
自動車用電子制御装置は、自動車搭載機器を制御する第１演算処理装置（メインマイコン）と、第１演算処理装置の動作に異常が生じたときに第１演算処理装置にリセット要求信号を出力する第２演算処理装置（サブマイコン）とを備えて構成され、第１演算処理装置は車載ネットワークに接続され、第２演算処理装置のプログラムの書き換えデータは、車載ネットワークを介して第１演算処理装置に転送され、第１演算処理装置が、シリアル通信で書き換えデータを第２演算処理装置に送って、第２演算処理装置のプログラムを書き換えるよう構成される場合がある。
【０００５】
係る自動車用電子制御装置においては、第１演算処理装置及び／又は第２演算処理装置のプログラムが書き換えられた際、第１演算処理装置のプログラムと第２演算処理装置のプログラムとが適合しなくなると、第２演算処理装置の監視機能によって第１演算処理装置にリセット要求信号が出力される状態になって第１演算処理装置のプログラムの書き換えが不能になり、また、第１演算処理装置を介した第２演算処理装置のプログラム書き換えも不能になってしまうことがあった。
【０００６】
本発明は、従来の実情に鑑みてなされたものであり、その目的は、第１演算処理装置及び第２演算処理装置のプログラムの書き換えが不能になることを抑止できる、自動車用電子制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明によれば、その１つの態様において、第２演算処理装置は、第１演算処理装置のプログラムの識別情報と第２演算処理装置のプログラムの識別情報との整合性を判断し、前記識別情報が不整合であるときに第１演算処理装置の監視機能を停止して第１演算処理装置をプログラムの書き換えが可能なモードに設定する。
【発明の効果】
【０００８】
本発明によれば、第１演算処理装置のプログラムと第２演算処理装置のプログラムとが適合しなくなった場合でも、第１演算処理装置及び第２演算処理装置のプログラムの書き換えが不能になることを抑止できる。
【図面の簡単な説明】
【０００９】
【図１】自動車用電子制御装置の一態様を示すブロック図である。
【図２】プログラムのバージョンと識別情報ＩＤとの相関を説明するための図である。
【図３】サブマイコンのプログラムの書き換え手順を示すフローチャートである。
【図４】サブマイコンのプログラムの書き換えたときの識別情報ＩＤの一例を示すブロック図である。
【図５】メインマイコンのプログラムの書き換え手順を示すフローチャートである。
【図６】メインマイコンのプログラムの書き換えたときの識別情報ＩＤの一例を示すブロック図である。
【発明を実施するための形態】
【００１０】
以下、本発明に係る自動車用電子制御装置の実施形態を図面に基づいて説明する。
図１の自動車用電子制御装置１００は、自動車２００に搭載されるエンジンや自動変速機などの自動車搭載機器である制御対象機器３００を制御する装置であり、第１演算処理装置であるメインマイクロコンピュータ（以下、メインマイコンと称する）１１０、及び、第２演算処理装置であるサブマイクロコンピュータ（以下、サブマイコンと称する）１２０を有する。
【００１１】
メインマイコン１１０は、ＥＥＰＲＯＭなどの書き換え可能な不揮発性メモリ１１１、ＣＰＵ１１２を有し、不揮発性メモリ１１１に格納されたプログラムにしたがって制御対象機器３００の操作信号を演算して出力する。
また、メインマイコン１１０は、制御対象機器３００の制御情報を出力する各種センサからの信号を読み込むためのＡ／Ｄ変換部１１３及びタイマ処理部１１４、サブマイコン１２０が出力するリセット要求信号を入力するリセット端子１１５、サブマイコン１２０とシリアル通信するための通信回路１１６などを備える。
【００１２】
更に、メインマイコン１１０は、Controller Area Network（ＣＡＮ）などの車載ネットワーク４００に接続される通信ボード４１０（通信部）を介して、同じ車載ネットワーク４００に接続される他の自動車用電子制御装置や各種のツールと通信可能に構成されている。
通信ボード４１０は、トランシーバＩＣや、通信コントローラを内蔵したＭＣＵ（マイクロ・コントローラ・ユニット）などを有する。
【００１３】
サブマイコン１２０は、ＥＥＰＲＯＭなどの書き換え可能な不揮発性メモリ１２１、ＣＰＵ１２２を有し、不揮発性メモリ１２１に格納されたプログラムにしたがってメインマイコン１１０の動作異常の有無を監視する機能（監視部としてのソフトウェア機能）などを備え、メインマイコン１１０の動作異常を検知したときにリセット信号出力回路１２３からメインマイコン１１０のリセット端子１１５にリセット要求信号を出力する。
サブマイコン１２０は、例えば、課題をメインマイコン１１０に送信し、メインマイコン１１０からの回答が、課題に対応させて記憶している回答に一致するか否かに基づき、メインマイコン１１０の動作異常の有無を判断する。但し、サブマイコン１２０によるメインマイコン１１０の動作異常の診断方法としては、公知の診断方法を適宜採用できる。
【００１４】
そして、サブマイコン１２０は、メインマイコン１１０の動作異常を判断したときに、メインマイコン１１０にリセット要求信号を出力する（リセット要求信号をアクティブレベルにする）ことで、メインマイコン１１０をリセットさせる。
また、サブマイコン１２０は、メインマイコン１１０とシリアル通信するための通信回路１２４を有する。
【００１５】
上記の自動車用電子制御装置１００において、メインマイコン１１０の不揮発性メモリ１１１に格納されているプログラムの書き換えを行う場合、書き換え用ツール５００を車載ネットワーク４００に接続し、メインマイコン１１０のプログラムの書き換えデータを書き換え用ツール５００からメインマイコン１１０に送信し、不揮発性メモリ１１１に格納されているプログラムの書き換え（リプログラミング）が実施される。
また、サブマイコン１２０の不揮発性メモリ１２１に格納されているプログラムの書き換えを行う場合、車載ネットワーク４００に接続した書き換え用ツール５００からメインマイコン１１０にサブマイコン１２０用の書き換えデータを送り、更に、メインマイコン１１０からサブマイコン１２０に書き換えデータをシリアル通信で送って、サブマイコン１２０のプログラムの書き換えを行わせる。
【００１６】
つまり、サブマイコン１２０は、メインマイコン１１０を介して外部と接続され、メインマイコン１１０を介さずに直接にサブマイコン１２０のプログラムを書き換えることはできない構成になっている。
上記のようなプログラムの書き換えシステムでは、メインマイコン１１０及び／又はサブマイコン１２０のプログラムが書き換えられた際、メインマイコン１１０のプログラムとサブマイコン１２０のプログラムとが適合しなくなると、係るプログラムの不適合に基づきサブマイコン１２０がメインマイコン１１０にリセット要求信号を出力するようになる場合がある。
【００１７】
このようにして、サブマイコン１２０がメインマイコン１１０にリセット要求信号を出力する状態になると、メインマイコン１１０が正常に動作できず、また、メインマイコン１１０が動作できないことでメインマイコン１１０及びサブマイコン１２０のプログラムの書き換えが不能になり、結果として、自動車用電子制御装置１００を使用できなくなってしまう。
係る不具合が発生することを抑止するため、サブマイコン１２０は、メインマイコン１１０のプログラムとサブマイコン１２０のプログラムとが適合するか否かを判断し、不適合に基づくリセット要求信号の出力を停止する機能（整合性判定部としてのソフトウェア機能）を備えている。
【００１８】
つまり、サブマイコン１２０によるメインマイコン１１０の監視機能を停止させ、サブマイコン１２０によるリセット要求信号の出力を停止させれば、メインマイコン１１０のプログラムの書き換えが行える状態になる。そして、メインマイコン１１０のプログラムをサブマイコン１２０のプログラムに適合するバージョンに書き換えれば、プログラムの不適合によってサブマイコン１２０がメインマイコン１１０にリセット要求信号を出力する状態を解消でき、自動車用電子制御装置１００を継続して使用できることになる。
【００１９】
以下では、前述したリセット要求信号の出力を停止する処理（以下、リセット停止処理という）を詳細に説明する。
上記リセット停止処理を実施するために、メインマイコン１１０のプログラム（制御プログラム）及びサブマイコン１２０のプログラム（制御プログラム）に、プログラムの識別情報ＩＤを持たせるようにしてある（図４参照）。
【００２０】
上記の識別情報ＩＤは、メインマイコン１１０のプログラムとサブマイコン１２０のプログラムとが適合するか否かを判断するのに用いられる情報であり、相互のプログラムが適合するバージョンであるときに同じ識別情報ＩＤを持たせるようにしてあり、サブマイコン１２０は、メインマイコン１１０のプログラムが書き換えられたとき、及び、サブマイコン１２０のプログラムが書き換えられたときに、識別情報ＩＤの一致／不一致に基づき書き換え後のプログラムが他方のプログラムと適合するか否かを判断するよう構成されている。
【００２１】
つまり、メインマイコン１１０のプログラムの識別情報ＩＤｍとサブマイコン１２０のプログラムの識別情報ＩＤｓとが一致（整合）する場合は、メインマイコン１１０のプログラムとサブマイコン１２０のプログラムとが適合することを表し、メインマイコン１１０のプログラムの識別情報ＩＤｍとサブマイコン１２０のプログラムの識別情報ＩＤｓとが不一致（不整合）の場合は、メインマイコン１１０のプログラムとサブマイコン１２０のプログラムとが適合しないことを表す。
【００２２】
更に、相互のプログラムが適合しない状態とは、サブマイコン１２０が、相互のプログラムのバージョンの不適合（バージョンの組み合わせの不適）によってメインマイコン１１０の動作異常を誤判定し、メインマイコン１１０にリセット要求信号を出力する可能性のある状態であり、相互のプログラムが適合する状態とは、プログラムのバージョンの組み合わせに基づきリセット要求信号が誤って出力されることがない状態である。
【００２３】
図２は、識別情報ＩＤの更新処理と各プログラムのアップデートとの相関を説明するための図である。
初期段階で、メインマイコン１１０のプログラムの第１バージョンと、サブマイコン１２０のプログラムの第１バージョンとが組み合わされ、各プログラムに識別情報ＩＤとして例えば「０１」が付与される。
【００２４】
その後、メインマイコン１１０のプログラムが第２バージョンにアップデートされても、サブマイコン１２０のプログラムは第１バージョンのままで互換性があり、サブマイコン１２０のプログラムの第１バージョンは、メインマイコン１１０のプログラムの第１バージョン及び第２バージョンのいずれにも組み合わせて用いることができるため、メインマイコン１１０のプログラムの第２バージョン、及び、サブマイコン１２０のプログラムの第１バージョンには引き続き識別情報ＩＤ＝０１が付与される。
【００２５】
更に、メインマイコン１１０のプログラムが第３バージョンにアップデートされ、サブマイコン１２０のプログラムが第２バージョンにアップデータされたとき、メインマイコン１１０のプログラムの３つのバージョンと、サブマイコン１２０の２つのバージョンとのいずれの組み合わせも可能であるため、メインマイコン１１０のプログラムの第３バージョン及びサブマイコン１２０のプログラムの第２バージョンには、識別情報ＩＤｍ＝０１、ＩＤｓ＝０１が付与される。
【００２６】
一方、メインマイコン１１０のプログラムが第４バージョンにアップデートされ、それまでのサブマイコン１２０の２つのバージョンがメインマイコン１１０の第４バージョンに適合せず、サブマイコン１２０のプログラムを第３バージョンにアップデートしたときは、メインマイコン１１０のプログラムの第４バージョン及びサブマイコン１２０のプログラムの第３バージョンにそれまでとは異なる識別情報ＩＤｍ＝０２、ＩＤｓ＝０２を付与する。
つまり、メインマイコン１１０のプログラムの第１−第３バージョンとサブマイコン１２０のプログラムの第３バージョンとの組み合わせや、メインマイコン１１０のプログラムの第４バージョンとサブマイコン１２０のプログラムの第１−第２バージョンとの組み合わせが不適であることが、各識別情報ＩＤが異なることで判別できることになる。
【００２７】
次いで、メインマイコン１１０のプログラムが第５バージョンにアップデートされ、サブマイコン１２０のプログラムが第４バージョンにアップデータされたとき、メインマイコン１１０のプログラムの第４−第５バージョンと、サブマイコン１２０のプログラムの第３−第４バージョンとのいずれの組み合わせも可能であるので、メインマイコン１１０のプログラムの第５バージョン及びサブマイコン１２０のプログラムの第４バージョンには、識別情報ＩＤｍ＝０２、ＩＤｓ＝０２が引き続き付与される。
【００２８】
上記のように、メインマイコン１１０のプログラム及び／又はサブマイコン１２０のプログラムが、互換性の無くなるアップデートされたときに識別情報ＩＤを更新して、メインマイコン１１０のプログラムのバージョンとサブマイコン１２０のプログラムのバージョンとの組み合わせが不適であるか否かを、識別情報ＩＤの一致／不一致に基づき判断できるようにしてある。
【００２９】
次に、リセット停止機能を有するプログラム書き換え処理を説明する。
図３のフローチャートは、サブマイコン１２０のプログラムを書き換える（アップデートする）ときの手順を示す。
まず、メインマイコン１１０は、サブマイコン１２０を、シリアル通信にてプログラムの書き換えを実施するモード（リプログラミングモード）に遷移させる（ステップＳ６０１）。
【００３０】
次いで、メインマイコン１１０は、シリアル通信にてサブマイコン１２０のプログラムの書き換えデータを不揮発性メモリ１２１に書き込み（ステップＳ１０２）、サブマイコン１２０のプログラムをアップデートする。
なお、上記の書き換えデータは、メインマイコン１１０が車載ネットワーク４００を介して書き換え用ツール５００から取得したデータであり、書き換えデータには予め識別情報ＩＤｓが付与されている。
【００３１】
サブマイコン１２０のプログラムの書き換えが完了すると、サブマイコン１２０は、メインマイコン１１０のプログラムの識別情報ＩＤｍと、サブマイコン１２０の書き換えられたプログラムの識別情報ＩＤｓとを比較し、識別情報ＩＤｍと識別情報ＩＤｓとの整合性を判断する（ステップＳ６０３）。
【００３２】
ここで、識別情報ＩＤｍと識別情報ＩＤｓとが一致（整合）する場合は、メインマイコン１１０のプログラムと、書き換えられたサブマイコン１２０のプログラムとの組み合わせは適切であり、プログラムの組み合わせが不適であることに因ってサブマイコン１２０がメインマイコン１１０にリセット要求信号を出力することがない状態である。
そこで、識別情報ＩＤｍと識別情報ＩＤｓとが一致（整合）する場合、サブマイコン１２０のプログラムの書き換えに不備はないので、サブマイコン１２０は書き換え処理を完了させる（ステップＳ６０４）。
【００３３】
一方、識別情報ＩＤｍと識別情報ＩＤｓとが一致（整合）しない場合は、メインマイコン１１０のプログラムと、書き換えられたサブマイコン１２０のプログラムとの組み合わせは不適であり、プログラムの組み合わせが不適であることに因ってサブマイコン１２０がメインマイコン１１０にリセット要求信号を出力してしまう状態である。
そして、メインマイコン１１０がサブマイコン１２０によってリセットされる状態では、メインマイコン１１０及びサブマイコン１２０のプログラム書き換えが不能になり、サブマイコン１２０がメインマイコン１１０をリセットする状態を解消できず、自動車用電子制御装置１００は使用不能になってしまう。
【００３４】
そこで、サブマイコン１２０は、識別情報ＩＤｍと識別情報ＩＤｓとが一致（整合）しない場合、メインマイコン１１０の動作異常の有無を監視する機能（リセット要求信号を出力する機能）を停止させ、プログラムの組み合わせが不適であることでメインマイコン１１０にリセット要求信号を出力してしまうことを抑止する（ステップＳ６０５）。
更に、サブマイコン１２０は、識別情報ＩＤｍと識別情報ＩＤｓとが一致（整合）しない場合、識別情報ＩＤの不一致（プログラムバージョンの組み合わせの不適）をメインマイコン１１０に知らせ、メインマイコン１１０を、プログラムの書き換えモード（リプログラミングモード）に遷移させる（ステップＳ６０６）。
【００３５】
係るリプログラミングモードへの遷移によって、メインマイコン１１０のプログラムを、サブマイコン１２０のプログラムに適合するバージョンのプログラム、換言すれば、サブマイコン１２０のプログラムの識別情報ＩＤｓに一致する識別情報ＩＤｍが付与されたプログラムに書き換える処理が可能になる。
そして、メインマイコン１１０のプログラムを、サブマイコン１２０のプログラムに適合するバージョンのプログラムに書き換え（ステップＳ６０７）、サブマイコン１２０のプログラムの識別情報ＩＤｓとメインマイコン１１０のプログラムの識別情報ＩＤｍとが一致するようになると（ステップＳ６０８）、書き換え処理を完了させるとともに、サブマイコン１２０は、メインマイコン１１０の動作異常の有無を監視する機能（リセット要求信号を出力する機能）を再開させる（ステップＳ６０９）。
【００３６】
上記の書き換え処理によれば、サブマイコン１２０のプログラムが、メインマイコン１１０のプログラムに適合しないバージョンに書き換えられた場合、メインマイコン１１０のプログラムを、サブマイコン１２０の書き換えられたプログラムに適合するバージョンに書き換えることで、サブマイコン１２０のプログラムとメインマイコン１１０のプログラムとが適合する状態に戻って、プログラムの組み合わせが不適であることでメインマイコン１１０がリセットされてしまう状態が解消され、自動車用電子制御装置１００を継続して使用できるようになる。
【００３７】
図４は、サブマイコン１２０のプログラムの書き換えを行った後における識別情報ＩＤの組み合わせの一例を示す図であり、メインマイコン１１０のプログラム（制御プログラム）の識別情報ＩＤｍがＩＤｍ＝０１で、書き換えられたサブマイコン１２０のプログラムの識別情報ＩＤｓがＩＤｓ＝０２である。
この場合、識別情報ＩＤｍと識別情報ＩＤｓとが一致しないので、サブマイコン１２０は、メインマイコン１１０の監視機能（メインマイコン１１０へのリセット要求信号の出力）を停止するとともにメインマイコン１１０をリプログラミングモードに遷移させ、メインマイコン１１０のプログラムが、識別情報ＩＤｓ（ＩＤｓ＝０２）と同じ識別情報ＩＤｍ（ＩＤｍ＝０２）が付与されたバージョンに書き換えられるようにする。
【００３８】
これにより、メインマイコン１１０のプログラムの識別情報ＩＤｍがＩＤｍ＝０２で、サブマイコン１２０のプログラムの識別情報ＩＤｓがＩＤｓ＝０２である状態になり、係る組み合わせ状態であれば、プログラムのバージョンの組み合わせが不適であることでサブマイコン１２０がメインマイコン１１０にリセット要求信号を誤って出力することはなく、自動車用電子制御装置１００を使用可能な状態に復帰させることができる。
【００３９】
図５のフローチャートは、メインマイコン１１０のプログラムを書き換えるときの手順を示す。
まず、書き換え用ツール５００は、ＣＡＮ通信にてメインマイコン１１０のプログラムを書き換え（ステップＳ７０１）、メインマイコン１１０のプログラムをアップデートする。
【００４０】
メインマイコン１１０のプログラムの書き換えが完了すると、サブマイコン１２０は、メインマイコン１１０の書き換えられたプログラムの識別情報ＩＤｍと、サブマイコン１２０のプログラムの識別情報ＩＤｓとを比較する（ステップＳ７０２）。
ここで、識別情報ＩＤｍと識別情報ＩＤｓとが一致（整合）する場合は、書き換えられたメインマイコン１１０のプログラムと、サブマイコン１２０のプログラムとの組み合わせは適切であり、プログラムの組み合わせが不適であることに因ってサブマイコン１２０がメインマイコン１１０にリセット要求信号を出力することがない状態である。
【００４１】
そこで、識別情報ＩＤｍと識別情報ＩＤｓとが一致（整合）する場合、メインマイコン１１０のプログラムの書き換えに不備はないので、サブマイコン１２０は書き換え処理を完了させる（ステップＳ７０３）。
一方、識別情報ＩＤｍと識別情報ＩＤｓとが一致（整合）しない場合は、書き換えられたメインマイコン１１０のプログラムと、サブマイコン１２０のプログラムとの組み合わせは不適であり、プログラムの組み合わせが不適であることに因ってサブマイコン１２０がメインマイコン１１０にリセット要求信号を出力してしまう状態である。
【００４２】
そこで、サブマイコン１２０は、識別情報ＩＤｍと識別情報ＩＤｓとが一致（整合）しない場合、メインマイコン１１０の動作異常の有無を監視する機能（リセット要求信号を出力する機能）を停止させ、プログラムの組み合わせが不適であることでメインマイコン１１０にリセット要求信号を出力してしまうことを抑止する（ステップＳ７０４）。
更に、サブマイコン１２０は、識別情報ＩＤｍと識別情報ＩＤｓとが一致（整合）しない場合、識別情報ＩＤの不一致（プログラムバージョンの組み合わせの不適）をメインマイコン１１０に知らせ、メインマイコン１１０をプログラムの書き換えを実施するモード（リプログラミングモード）に遷移させる（ステップＳ７０５）。
【００４３】
係るリプログラミングモードへの遷移によって、メインマイコン１１０のプログラムを、サブマイコン１２０のプログラムに適合するバージョンのプログラム、換言すれば、サブマイコン１２０のプログラムの識別情報ＩＤｓに一致する識別情報ＩＤｍが付与されたプログラムに書き換える処理が可能になる。
【００４４】
そして、メインマイコン１１０のプログラムを、サブマイコン１２０のプログラムに適合するバージョンのプログラムに書き換えるようにし（ステップＳ７０６）、サブマイコン１２０のプログラムの識別情報ＩＤｓとメインマイコン１１０のプログラムの識別情報ＩＤｍとが一致するようになると（ステップＳ７０７）、書き換え処理を完了させるとともに、サブマイコン１２０は、メインマイコン１１０の動作異常の有無を監視する機能（リセット要求信号を出力する機能）を再開させる（ステップＳ７０８）。
【００４５】
上記の書き換え処理によれば、メインマイコン１１０のプログラムが、サブマイコン１２０のプログラムに適合しないバージョンに書き換えられた場合でも、メインマイコン１１０及びサブマイコン１２０のプログラムの書き換えが不能になることを抑止でき、自動車用電子制御装置１００を使用できなくなってしまうことを回避できる。
つまり、メインマイコン１１０のプログラムが、サブマイコン１２０のプログラムに適合しないバージョンに書き換えられ、サブマイコン１２０がメインマイコン１１０の動作異常を判定する条件になっても、サブマイコン１２０によってメインマイコン１１０がリセットされることが阻止して、メインマイコン１１０のプログラムを、サブマイコン１２０のプログラムに適合するバージョンに書き換えることができる。
【００４６】
図６は、メインマイコン１１０のプログラムの書き換えを行った後における識別情報ＩＤの組み合わせの一例を示す図であり、書き換えられたメインマイコン１１０のプログラムの識別情報ＩＤｍがＩＤｍ＝０２で、サブマイコン１２０のプログラムの識別情報ＩＤｓがＩＤｓ＝０１である。
この場合、識別情報ＩＤｍと識別情報ＩＤｓとが一致しないので、サブマイコン１２０は、メインマイコン１１０の監視機能（メインマイコン１１０へのリセット要求信号の出力）を停止するとともにメインマイコン１１０をリプログラミングモードに遷移させ、メインマイコン１１０のプログラムが、識別情報ＩＤｓ（ＩＤｓ＝０１）と同じ識別情報ＩＤｍ（ＩＤｍ＝０１）が付与されたバージョンに書き換えられるようにする。
【００４７】
これにより、メインマイコン１１０のプログラムの識別情報ＩＤｍがＩＤｍ＝０１で、サブマイコン１２０のプログラムの識別情報ＩＤｓがＩＤｓ＝０１である状態になり、係る組み合わせ状態であれば、プログラムのバージョンの組み合わせが不適であることでサブマイコン１２０がメインマイコン１１０にリセット要求信号を誤って出力することはなく、自動車用電子制御装置１００を使用可能な状態に復帰させることができる。
【００４８】
また、メインマイコン１１０のプログラム及びサブマイコン１２０のプログラムをそれぞれ識別情報ＩＤが更新されたバージョンに書き換える（アップデートする）ときは、まず、サブマイコン１２０のプログラムを識別情報ＩＤが更新されたバージョンに書き換え、次いで、メインマイコン１１０のプログラムを、識別情報ＩＤが更新されたバージョンに書き換え、最終的に、メインマイコン１１０及びサブマイコン１２０のプログラムを、識別情報ＩＤが同じであるアップデートされたプログラムに書き換える。
【００４９】
メインマイコン１１０のプログラム及びサブマイコン１２０のプログラムをそれぞれ識別情報ＩＤが更新されたバージョンに書き換える場合とは、例えば、図２に示した更新パターンにおいて、メインマイコン１１０のプログラムを第３バージョン（識別情報ＩＤｍ＝０１）から第４バージョン（識別情報ＩＤｍ＝０２）にアップデートし、係るアップデートに合わせてサブマイコン１２０のプログラムを第２バージョン（識別情報ＩＤｓ＝０１）から第３バージョン（識別情報ＩＤｓ＝０２）にアップデートする場合である。
【００５０】
メインマイコン１１０のプログラム及びサブマイコン１２０のプログラムをそれぞれ識別情報ＩＤが更新されたバージョンに書き換えるときは、図３のフローチャートに示したサブマイコン１２０のプログラムを書き換えるときの手順にしたがって、書き換え処理を実施することができる。
まず、サブマイコン１２０のプログラムを識別情報ＩＤｓがそれまでと異なるバージョンのプログラムに書き換える（ステップＳ６０１、ステップＳ６０２）。係る書き換えによって、サブマイコン１２０のプログラムの識別情報ＩＤｓとメインマイコン１１０のプログラムの識別情報ＩＤｍとが異なるようになる。
【００５１】
サブマイコン１２０は、係る識別情報ＩＤの不一致に基づき（ステップＳ６０３）、メインマイコン１１０の監視機能を停止し（ステップＳ６０５）、更に、メインマイコン１１０を、プログラムの書き換えモード（リプログラミングモード）に遷移させる（ステップＳ６０６）。
そして、メインマイコン１１０のプログラムを、先に書き換えられたサブマイコン１２０のプログラムと同じ識別情報ＩＤが付与されたアップデート後のプログラムに書き換える（ステップＳ６０７）。
【００５２】
サブマイコン１２０に続きメインマイコン１１０のプログラムが書き換えられ、双方のプログラムの識別情報ＩＤが一致するようになると（ステップＳ６０８）、サブマイコン１２０は、メインマイコン１１０の監視機能を復帰させ、書き換え処理を完了させる（ステップＳ６０９）。
このように、メインマイコン１１０のプログラム及びサブマイコン１２０のプログラムをそれぞれ識別情報ＩＤが更新されたバージョンに書き換えるときは、まず、サブマイコン１２０のプログラムを書き換え、当該書き換えによって識別情報ＩＤが不整合になってもサブマイコン１２０のリセット出力機能を一時的に停止させることで、メインマイコン１１０のプログラムの書き換えを可能とし、メインマイコン１１０のプログラムをアップデートさせる。
【００５３】
上記実施形態で説明した各技術的思想は、矛盾が生じない限りにおいて、適宜組み合わせて使用することができる。
また、好ましい実施形態を参照して本発明の内容を具体的に説明したが、本発明の基本的技術思想及び教示に基づいて、当業者であれば、種々の変形態様を採り得ることは自明である。
例えば、識別情報ＩＤを付与するプログラムには、制御プログラムの他、制御プログラムの書き換えを制御する書き換えプログラム（図４、図６参照）を含めることができ、サブマイコン１２０は、制御プログラム及び書き換えプログラムについて、識別情報ＩＤの整合性判断に基づき組み合わせが適切であるか否かを判断することができる。
【００５４】
また、識別情報ＩＤの整合性の判断は、数値の一致／不一致の判断に限定されず、種々の規則にしたがって整合性の有無を判断する設定にできる。
また、メインマイコン１１０は、プログラムの書き換えデータを外部から有線で取得する構成の他、プログラムの書き換えデータを無線で取得する構成とすることができる。
また、サブマイコン１２０は、メインマイコン１１０の動作異常を検出したときに、メインマイコン１１０にリセット要求信号を出力するとともに、異常発生を車両の運転者に警告する処理などの異常時処理を実施することができる。
【００５５】
また、上記実施形態では、サブマイコン１２０が、メインマイコン１１０の動作異常の有無を監視する監視部を備えるが、更に、メインマイコン１１０が、サブマイコン１２０の動作異常の有無を監視する監視部を備えることができる。
また、サブマイコン１２０は、メインマイコン１１０を監視する機能、及び、プログラムの識別情報の整合性を判定する機能の他、自動車搭載機器である制御対象機器３００を制御する機能やＣＡＮ通信を制御する機能などを備えることができ、メインマイコン１１０とサブマイコン１２０とは各種の制御機能を適宜分担して備えることが可能である。
【符号の説明】
【００５６】
１００…自動車用電子制御装置、１１０…メインマイコン（第１演算処理装置）、１２０…サブマイコン（第２演算処理装置）、３００…制御対象機器（自動車搭載機器）
【図１】
2019109746.tif 000003
【図２】
2019109746.tif 000004
【図３】
2019109746.tif 000005
【図４】
2019109746.tif 000006
【図５】
2019109746.tif 000007
【図６】
2019109746.tif 000008