(57)【特許請求の範囲】
【請求項１】
揮発性メモリから構成され、データを一時記憶するための一時記憶メモリと、
予め定められた処理を実行し、その実行結果を表すデータを、前記一時記憶メモリに書き込む処理実行手段と、
前記一時記憶メモリに書き込まれたデータに対応するバックアップデータを記憶保持するためのバックアップメモリと、
を備え、前記処理実行手段により前記一時記憶メモリに書き込まれる少なくとも一部のデータが、前記バックアップメモリで記憶保持すべき保存対象のデータとして予め定められた電子機器であって、
前記処理実行手段は、前記バックアップメモリから読み出され前記一時記憶メモリに書き込まれた過去の実行結果を表すデータに上書きするようにして、前記保存対象のデータに該当する前記予め定められた処理の実行時に得られた当該処理の実行結果を表すデータを、前記一時記憶メモリに書き込む構成にされており、
当該電子機器は、
当該電子機器をオンする操作がなされると作動して、前記バックアップメモリが記憶保持する前記バックアップデータを、前記一時記憶メモリに書き込む読出手段と、
前記一時記憶メモリが記憶する前記保存対象のデータが前記一時記憶メモリにおいて変更されなくなった時点からの経過時間である非書込時間を、計測する計測手段と、
前記計測手段の計測結果に基づき、前記非書込時間が、予め定められた閾値に到達したことを条件に、前記処理実行手段により前記一時記憶メモリに書き込まれた前記保存対象のデータのコピーを、前記バックアップデータとして、前記バックアップメモリに書き込むバックアップ手段と、
前記処理実行手段により、前記予め定められた処理の内、特定の処理が実行されるまでは、前記計測手段及び前記バックアップ手段の少なくともいずれか一方の動作を禁止する禁止手段と、
を備えることを特徴とする電子機器。
【請求項２】
前記保存対象のデータは、複数のグループに区分され、
前記計測手段は、前記グループ毎に、当該グループに属する前記保存対象のデータが前記一時記憶メモリにおいて変更されなくなった時点からの経過時間である前記非書込時間を計測する構成にされ、
前記バックアップ手段は、前記グループ毎に、当該グループに属する前記保存対象のデータのコピーを、前記バックアップデータとして、当該グループの前記非書込時間が閾値を超えたことを条件に、前記バックアップメモリに書き込む構成にされていること
を特徴とする請求項１記載の電子機器。
【請求項３】
前記バックアップ手段は、前記各グループに対して個別に定められた前記閾値の情報に基づき、前記グループ毎に、当該グループの前記非書込時間が前記閾値を超えたか否かを判断する構成にされていることを特徴とする請求項２記載の電子機器。
【請求項４】
車両に搭載される請求項１〜請求項３のいずれかに記載の電子機器であって、
前記処理実行手段は、前記予め定められた処理として、車両の故障の有無を診断する故障診断処理を実行する構成にされ、
前記保存対象のデータは、前記故障診断処理の実行結果を表すデータであること
を特徴とする電子機器。
【請求項５】
前記計測手段は、
スタート時点からの経過時間を計測するタイマと、
前記処理実行手段によって前記保存対象のデータが前記一時記憶メモリにおいて変更された時点で、前記タイマをスタートさせるタイマ制御手段と、
を備え、前記保存対象のデータが前記一時記憶メモリにおいて変更された時点で、前記タイマをスタートさせることにより、前記タイマを用いて、前記非書込時間を計測することを特徴とする請求項１〜請求項４のいずれかに記載の電子機器。
【請求項６】
前記一時記憶メモリは、当該電子機器をオンする操作であるオン操作がなされたことを契機に電源供給され、当該電子機器をオフする操作であるオフ操作がなされたことを契機に電源供給が遮断される揮発性メモリであり、
前記バックアップメモリは、前記オン操作及びオフ操作に拘わらず、常時電源供給される揮発性メモリであることを特徴とする請求項１〜請求項５のいずれかに記載の電子機器。
【請求項７】
前記バックアップメモリは、電気的にデータ書換可能な不揮発性メモリであることを特徴とする請求項１〜請求項５のいずれかに記載の電子機器。
【請求項８】
コンピュータと、
前記コンピュータによってデータが書き込まれる揮発性メモリであって、前記コンピュータによって書き込まれたデータを一時記憶するための一時記憶メモリと、
前記一時記憶メモリに書き込まれたデータに対応するバックアップデータを記憶保持するためのバックアップメモリと、
を備える電子機器であって、当該電子機器をオンする操作がなされると、前記バックアップメモリが記憶保持する前記バックアップデータを読み出して前記一時記憶メモリに書き込む一方、この読み出しにより前記一時記憶メモリに書き込まれた過去の実行結果を表すデータに上書きするようにして、前記バックアップメモリで記憶保持すべき保存対象のデータに該当する予め定められた処理の実行時に得られた当該処理の実行結果を表すデータを、前記一時記憶メモリに書き込む電子機器の前記コンピュータに、
前記一時記憶メモリが記憶する前記保存対象のデータが前記一時記憶メモリにおいて変更されなくなった時点からの経過時間を、計測する手順Ａと、
前記経過時間が、予め定められた閾値に到達すると、前記一時記憶メモリが記憶する前記保存対象のデータのコピーを、前記バックアップデータとして、前記バックアップメモリに書き込む手順Ｂと、
前記予め定められた処理の内、特定の処理が実行されるまでは、前記手順Ａ及び前記手順Ｂの少なくともいずれか一方の実行を禁止する手順Ｃと
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一時記憶メモリに書き込まれたデータを、バックアップメモリにバックアップする機能を備えた電子機器、及び、その電子機器に適用するプログラムに関する。
【背景技術】
【０００２】
従来、電子機器としては、車両の故障情報や、車両制御に用いる制御パラメータの学習値などを、バックアップメモリに書き込んで、これらの情報を記憶保持する車両用の電子機器が知られている。
【０００３】
また、車両用の電子機器としては、バックアップメモリとして、アクセサリスイッチやイグニションスイッチがオフにされた状態でも、常時バッテリからの電源供給を受けて、データを記憶保持する揮発性メモリ（所謂ＳＲＡＭ）を備えたものが知られている。
【０００４】
この他、バックアップメモリとしては、フラッシュメモリやＥＥＰＲＯＭなどの電気的にデータ書換可能な不揮発性メモリが知られている。
ところで、電子機器が一時記憶メモリに記憶したデータのコピーを、バックアップメモリに書き込んで、データをバックアップするに際し、一時記憶メモリにバックアップ対象のデータが書き込まれる度、このデータを、バックアップメモリに書き込むと、バックアップ動作に係る電子機器の処理負荷が大きくなる。
【０００５】
また、フラッシュメモリやＥＥＰＲＯＭなどの不揮発性メモリについては、書込回数に物理的な制限があることから、このような不揮発性メモリを用いて、上述した手法で、頻繁に、データをバックアップしようとすると、電子機器の寿命が短くなってしまう。
【０００６】
このため、一時記憶メモリに記憶されたデータのコピーを、バックアップメモリに書き込むバックアップ動作については、従来、これを、電子機器が所定量稼動する度に実行したり（特許文献１参照）、電子機器がシャットダウンされる直前に実行していた。
【０００７】
この他、従来の車両用の電子機器では、学習値のバックアップ動作に関して、車両の走行距離が閾値以上となったことや（特許文献２参照）、学習値の変化量が閾値以上となったことを条件として（特許文献３参照）、バックアップ動作を実行していた。
【特許文献１】特開平１０−２５２５４６号公報
【特許文献２】特開２００６−２９３６５０号公報
【特許文献３】特開平１１−１５９３８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、電子機器がシャットダウンされる直前にデータをバックアップする手法では、電子機器に対するオフ操作がなされてから一定程度、電子機器をオンに維持して、その後に電子機器をシャットダウンさせる必要があり、そのための構成が必要になる。
【０００９】
例えば、車両用の電子機器の場合には、車両のイグニションスイッチ若しくはアクセサリスイッチがオフ操作された時点でバックアップ動作を実行し、その後、電子機器を停止させる必要があり、そのためのリレー回路が必要になる。
【００１０】
そして、このようなリレー回路を設ける場合には、当該リレー回路分、電子機器の製造コストが上がる。このように、電子機器がシャットダウンされる直前にデータをバックアップする手法では、製品の製造コストが上昇するといった問題がある。また、車両用の電子機器については、コストの問題から、低価格車に、そのようなリレー回路を設けることが難しく、リレー回路を用いたバックアップ動作を実現できないといった問題がある。
【００１１】
また、このような手法では、電子機器が正規の手続きを経ずにトラブル等で突然シャットダウンされた場合に、それまでの期間に一時記憶メモリに蓄積されたデータのバックアップをとることができないといった問題がある。
【００１２】
また、電子機器が所定量稼動する度にバックアップ動作を実行する手法では、そのバックアップ動作の実行条件である稼働量を少なくすると、上述した処理負荷やメモリの寿命の問題が大きくなり、上記稼動量を多くすると、バックアップに失敗するデータが増すといった問題がある。そして、このような問題は、車両の走行距離が閾値以上となったことを条件としてバックアップ動作を実行する手法に対しても同様に発生する。
【００１３】
この他、車両の走行距離が閾値以上となったことや、学習値の変化量が閾値以上となったことを条件として、バックアップ動作を実行する従来技術については、バックアップ対象のデータが学習値である場合、一定度、効率的にバックアップ動作を実現できるかもしれないが、車両の故障情報をバックアップするに際しては、必ずしもそうとは言えない。
【００１４】
車両制御に係る制御パラメータについては、車両の走行距離が長くなるほど、学習処理が長く実行されることになり、車両の走行距離が長くなるにつれて、最新の学習値と、既にバックアップした過去の学習値との差が大きくなる。換言すると、走行距離が短い場合には、学習値をバックアップしないことにしても、最新の学習値と、元々バックアップされている学習値とに大差がないことから、大きな問題とはならない。
【００１５】
これに対し、車両の故障については、内燃機関の作動時に実行される故障診断時に検出される可能性が高く、更には、それ以外の期間に、突然、故障が発生する可能性もあり、その事象が次にいつ発生するのかも予測できない。
【００１６】
即ち、バックアップすべき車両の故障情報は、走行距離とは関係なく、不規則に発生する。一方で、車両の故障情報は、故障が発生しない限り、特に、バックアップすべきものでもなく、車両の走行中繰返し更新される学習値とは異なる性質を有する。更に言えば、学習値の更新は高頻度に行われるが、故障の発生確率は、非常に低い。
【００１７】
よって、上述した学習値のバックアップに係る従来技術と同様の手法で、故障情報についてのバックアップ動作を実行すると、適切なタイミングでバックアップ動作を実行することはできないのである。即ち、従来技術では、走行距離や装置の稼働量に関係なく発生するデータをバックアップするに際して、バックアップの失敗の可能性を低くしつつも、効率的にバックアップ動作を実行できないといった問題があった。
【００１８】
本発明は、こうした問題に鑑みなされたものであり、従来よりも効率的にバックアップ動作を実行可能な技術を提供することを目的とする。
【課題を解決するための手段】
【００１９】
かかる目的を達成するためになされた本発明の電子機器は、揮発性メモリで構成されるデータを一時記憶するための一時記憶メモリと、予め定められた処理を実行し、その実行結果を表すデータを、一時記憶メモリに書き込む処理実行手段と、一時記憶メモリに書き込まれたデータに対応するバックアップデータを記憶保持するためのバックアップメモリと、を備えるものである。
【００２０】
この電子機器においては、処理実行手段により一時記憶メモリに書き込まれる少なくとも一部のデータが、バックアップメモリで記憶保持すべき保存対象のデータとして予め定められており、当該電子機器は、更に、バックアップ手段と、計測手段と、を備える。
【００２１】
バックアップ手段は、所定条件が満足されると、処理実行手段により一時記憶メモリに書き込まれた保存対象のデータのコピーを、バックアップデータとして、バックアップメモリに書き込む。また、計測手段は、一時記憶メモリに保存対象のデータに対応する新規データが書き込まれなくなった時点からの経過時間である非書込時間を、計測する。
【００２２】
具体的に、バックアップ手段は、計測手段の計測結果に基づき、非書込時間が、予め定められた閾値に到達したことを条件に、保存対象のデータのコピーを、バックアップデータとして、バックアップメモリに書き込む。
【００２３】
このように構成された本発明の電子機器によれば、新規データが一時記憶メモリに書き込まれなくなってからの経過時間によって、バックアップ動作の実行タイミングが決定されるので、走行距離や装置の稼働量に関係なく発生するデータを、効率的にバックアップすることができる。
【００２４】
例えば、この電子機器では、データが頻繁に一時記憶メモリに書き込まれている期間には、バックアップ動作が実行されないことになる。従って、一定度までは、上述の閾値を短くしても、それによって直ちにバックアップ動作の実行回数が増えるといったことはない。
【００２５】
一方で、閾値を短くすれば、バックアップ対象のデータが一時記憶メモリに書き込まれなくなってから、短い時間で、これをバックアップすることができて、突然のシャットダウン等によるバックアップの失敗の可能性を低くすることができる。従って、本発明によれば、バックアップの失敗の可能性を低く抑えながらも、バックアップ動作の実行回数を減らして、効率的にバックアップ動作を実行することができる。
【００２６】
ところで、この発明は、電子機器をオンする操作がなされると作動し、バックアップメモリが記憶保持するバックアップデータを、一時記憶メモリに書き込む読出手段を備えた電子機器に適用することができる。
【００２７】
即ち、処理実行手段が、読出手段によって一時記憶メモリに書き込まれた過去の実行結果を表すデータに上書きするようにして、処理の実行結果を表すデータであって保存対象のデータを、一時記憶メモリに書き込む構成にされた電子機器に適用することができる。
【００２８】
そして、この種の電子機器に上述の発明を適用する場合、計測手段は、上記非書込時間として、一時記憶メモリが記憶する保存対象のデータが一時記憶メモリにおいて変更されなくなった時点からの経過時間を、計測する構成にすることができる。
【００２９】
このように電子機器を構成すれば、既にバックアップされているデータに対応する一時記憶メモリ内のデータが変更されなくなってからの経過時間によって、バックアップの実行タイミングが決定されるので、効率的に、新規データをバックアップすることができ、更には、バックアップの失敗の可能性を低くすることができる。
【００３０】
また、処理実行手段により実行される処理の種類が、複数種に及ぶ場合であって、各種類の処理の実行時期が異なる場合には、各処理にて生成される保存対象のデータのバックアップタイミングを、統一的に決定すると、各種類の処理で生成される保存対象のデータを、適切なタイミングでバックアップすることができない可能性がある。
【００３１】
従って、このような可能性がある場合には、保存対象のデータを、複数のグループに区分されるのがよい。そして、計測手段は、グループ毎に、当該グループの上記非書込時間を計測する構成にされるのがよい。
【００３２】
また、バックアップ手段は、グループ毎に、グループに属する保存対象のデータのコピーを、当該グループの非書込時間が閾値を超えたことを条件に、バックアップメモリに書き込む構成にされるとよい。
【００３３】
このように電子機器を構成すれば、各種類の処理の実行時期が異なる場合に、各種類の処理の実行によって一時記憶メモリに書き込まれる新規データを、適切なタイミングでバックアップすることができる。
【００３４】
また、処理実行手段によって複数種類の処理の実行される場合には、閾値を、各グループに対して個別に設定されるのがよい。即ち、バックアップ手段は、各グループに対して個別に定められた閾値の情報に基づき、グループ毎に、当該グループの非書込時間が閾値を超えたか否かを判断する構成にされると好ましい。
【００３５】
このように電子機器を構成すれば、各処理にて一時記憶メモリに書き込まれる新規データを、一層適切なタイミングでバックアップすることができる。
この他、処理実行手段によって複数の処理が順次実行される場合には、その一連の処理の実行初期において、保存対象のデータのバックアップ動作を実行すると、時間の経たない内に、一連の処理の実行後期において発生した保存対象のデータを、バックアップしなければならない事態が生じる可能性がある。
【００３６】
従って、上述の電子機器には、処理実行手段により、予め定められた処理の内、特定の処理が実行されるまでは、計測手段及びバックアップ手段の少なくともいずれか一方の動作を禁止する禁止手段を設けるのが好ましい。
【００３７】
このようにして電子機器に禁止手段を設ければ、上記実行初期のバックアップ動作を禁止することができて、バックアップ動作の実行回数を減らし、効率的にデータのバックアップを行うことができる。
【００３８】
また、上述の発明は、車両に搭載される電子機器であって、処理実行手段が車両の故障の有無を診断する故障診断処理を実行し、保存対象のデータが、故障診断処理の実行結果を表すデータに定められた電子機器に適用されると好ましい。
【００３９】
車両の故障は、高頻度に発生するものではないので、繰返し故障診断処理を実行しても、故障診断処理の結果は、多くの場合「故障なし」との結果になる。また、車両の故障は、多くの場合、内燃機関の作動時に実行する初回の故障診断時に検出され、その後、繰返し行われる故障診断では、診断結果が変化するのはまれである。
【００４０】
従って、故障診断処理では、多くの場合、前回と診断結果が同じになって、その前回と同じ診断結果を表すデータが一時記憶メモリに上書きされるか、診断結果を表すデータの書込そのものが行われないことになり、一時記憶メモリ内のデータが変更されない。
【００４１】
このような特徴を有する故障診断の診断結果をバックアップする場合に、上述した本発明の手法を採用すれば、車両の故障が発生して、診断結果をバックアップする必要が生じたときに、適切に、これをバックアップすることができると共に、無駄なバックアップ動作をしなくて済み、バックアップの失敗の可能性を低くしつつも、効率的に、故障診断の結果を、バックアップすることができる。
【００５１】
また、計測手段は、スタート時点からの経過時間を計測するタイマと、処理実行手段によって保存対象のデータが一時記憶メモリにおいて変更された時点で、タイマをスタートさせるタイマ制御手段と、を備え、保存対象のデータが一時記憶メモリにおいて変更された時点で、タイマをスタートさせることにより、タイマを用いて、非書込時間を計測する構成にすることができる。
【００５５】
また、上述の一時記憶メモリとしては、当該電子機器をオンする操作であるオン操作がなされたことを契機に電源供給され、当該電子機器をオフする操作であるオフ操作がなされたことを契機に電源供給が遮断される揮発性メモリを用いることができる。
【００５６】
また、バックアップメモリとしては、オン操作及びオフ操作に拘わらず、常時電源供給される揮発性メモリを用いることができる。この他、バックアップメモリとしては、電気的にデータ書換可能な不揮発性メモリを用いても良い。
【００５７】
バックアップメモリとして、電気的にデータ書換可能な不揮発性メモリを備えた電子機器に、本発明を適用すれば、物理的に書込回数に制限のある不揮発性メモリ（フラッシュメモリやＥＥＰＲＯＭ）等に対する書込回数を少なくしつつ、効率的にデータをバックアップすることができて、製品の寿命が向上する。
【００５８】
また、上述した電子機器が備える各手段としての機能は、コンピュータに実現させることができる。
例えば、コンピュータと、コンピュータによってデータが書き込まれる揮発性メモリであって、コンピュータによって書き込まれたデータを一時記憶するための一時記憶メモリと、一時記憶メモリに書き込まれたデータに対応するバックアップデータを記憶保持するためのバックアップメモリと、を備える電子機器であって、当該電子機器をオンする操作がなされると、バックアップメモリが記憶保持するバックアップデータを読み出して一時記憶メモリに書き込む一方、この読み出しにより一時記憶メモリに書き込まれた過去の実行結果を表すデータに上書きするようにして、バックアップメモリで記憶保持すべき保存対象のデータに該当する予め定められた処理の実行時に得られた当該処理の実行結果を表すデータを、一時記憶メモリに書き込む電子機器には、次のプログラムを設けることができる。
即ち、一時記憶メモリが記憶する上記保存対象のデータが一時記憶メモリにおいて変更されなくなった時点からの経過時間を計測する手順Ａと、当該経過時間が予め定められた閾値に到達すると、一時記憶メモリが記憶する上記保存対象のデータのコピーを、バックアップデータとして、バックアップメモリに書き込む手順Ｂと、予め定められた処理の内、特定の処理が実行されるまでは、手順Ａ及び手順Ｂの少なくともいずれか一方の実行を禁止する手順Ｃとをコンピュータに実行させるためのプログラムを設けることができる。
【発明を実施するための最良の形態】
【００６０】
以下に本発明の実施例について、図面と共に説明する。但し、本発明は、以下に説明する実施例に限定されるものではなく、種々の態様を採りうる。
【実施例１】
【００６１】
図１は、第一実施例の電子制御装置１００の構成を表すブロック図である。図１に示す電子制御装置１００は、内燃機関を制御するための電子制御装置（所謂エンジンＥＣＵ）であり、センサ類２００（クランクセンサ、カムセンサ等）、及び、内燃機関を駆動するアクチュエータ類３００（点火装置、インジェクタ等）に接続された構成にされている。
【００６２】
詳述すると、この電子制御装置１００は、センサ類２００からの入力信号を受け付けてＣＰＵ１３０に入力する入力回路１１０、アクチュエータ類３００に対しＣＰＵ１３０から入力される制御信号を出力する出力回路１２０、プログラムに基づく処理を実行するＣＰＵ１３０、ＣＰＵ１３０が実行するプログラムを記憶するＲＯＭ１４０、作業用メモリ（一時記憶メモリ）として使用されるＲＡＭ１５０、データバックアップ用のメモリであるバックアップメモリ１６０、及び、通信回路１７０を備える。
【００６３】
この電子制御装置１００は、バッテリ４００にキースイッチＳＷを介して接続されており、車両乗員によってキースイッチＳＷをオンする操作がなされると、バッテリ４００から電源が供給されて起動し、キースイッチＳＷをオフする操作がなされると、バッテリ４００からの電源供給が遮断されて、停止する。
【００６４】
また、ＲＯＭ１４０には、内燃機関を制御するためのプログラム、内燃機関の故障診断用のプログラム等が格納されており、電子制御装置１００は、バッテリ４００から電源が供給されて起動すると、ＣＰＵ１３０にてＲＯＭ１４０に記録された各種プログラムに基づく処理を実行することにより、内燃機関を制御すると共に、センサ類２００やアクチュエータ類３００を診断し、内燃機関内部の故障を検出する。
【００６５】
この他、ＲＯＭ１４０には、通信プログラムが記憶されており、ＣＰＵ１３０は、必要に応じて、このプログラムを実行し、通信回路１７０を通じて、車内ＬＡＮに接続された他の端末（電子制御装置等）と通信する。
【００６６】
例えば、車内ＬＡＮには、外部からテスタ５００を接続可能な接続インタフェース（図示せず）が設けられており、この接続インタフェースを通じて車内ＬＡＮにテスタ５００が接続されると、ＣＰＵ１３０は、通信回路１７０を通じて、テスタ５００と通信し、故障診断の結果を表すダイアグ関連データをテスタ５００に提供する。
【００６７】
また、本実施例の電子制御装置１００には、ＲＡＭ１５０で更新される上記故障診断の結果を表すダイアグ関連データを、バックアップメモリ１６０に保存する機能が設けられている。以下では、電子制御装置１００で実現されるダイアグ関連データの更新態様、及び、ダイアグ関連データのバックアップ態様を簡単に説明し、その後で、これらの詳細な説明を展開する。
【００６８】
図２は、電子制御装置１００における故障診断の実行態様及びＲＡＭ１５０におけるダイアグ関連データの更新態様を、グラフで示した図である。図２上段は、時間を横軸として、故障診断の実行回数の例を表したグラフであり、図２下段は、時間を横軸として、故障診断の実行によりＲＡＭ１５０で更新されるダイアグ関連データの更新回数の例を表したグラフである。
【００６９】
図２に示すように、本実施例の電子制御装置１００は、キースイッチＳＷのオン操作（具体的には、アクセサリスイッチのオン操作）がなされることで、バッテリ４００からの電源供給を受けて起動すると、ＣＰＵ１３０にて、まずセンサ類２００の断線を検出するための故障診断等を実行する。そして、イグニッションスイッチがオンされると内燃機関を始動させて、クランクセンサやカムセンサ等のセンサ類２００の異常を検出するための故障診断等を実行する。
【００７０】
更に、内燃機関に供給される冷却水の温度が上昇すると、失火検出用の故障診断を実行すると共に、サーモスタットの異常を検出するための故障診断等を実行する。そして、冷却水温度が十分に上昇して内燃機関が安定的に動作し始める頃には、一通りの故障診断を終了して、以後、一部の故障診断を定期的に繰返し実行する。
【００７１】
本実施例では、このようにして故障診断を実行し、ＲＡＭ１５０が記憶するダイアグ関連データを更新する。但し、本実施例では、診断結果が既にＲＡＭ１５０に書き込まれた過去の診断結果と同じである場合、この診断結果をＲＡＭ１５０に書き込まない。
【００７２】
従って、内燃機関に故障が発生することで、内燃機関の運転初期において、ＲＡＭ１５０に、その診断結果が書き込まれても、一通りの故障診断が終了した後の定期的な故障診断実行時には、多くの場合、診断結果が同じであるので、新規データがＲＡＭ１５０に書き込まれなくなる。
【００７３】
このため、本実施例では、ＲＡＭ１５０に、ダイアグ関連データについての新規データが書き込まれなくなってからの経過時間を計測し、経過時間が閾値を超えた時点で、ＲＡＭ１５０が記憶するダイアグ関連データを、バックアップメモリ１６０にバックアップする。
【００７４】
図３（ａ）は、本実施例の電子制御装置１００において、バックアップ対象データに定められたダイアグ関連データの構成を表す説明図である。ダイアグ関連データは、当該電子制御装置１００で行われる故障診断の項目毎に、診断結果情報、正常検出履歴情報及び異常検出履歴情報からなるレコードを有し、これらのレコード群からなるテーブルとして構成されている。
【００７５】
正常検出履歴情報は、故障診断により「正常」と判定されたことがあるか否かを示す情報であり、異常検出履歴情報は、故障診断により「異常」と判定されたことがあるか否かを示す情報である。本実施例において、診断結果情報は、「正常」又は「異常」との値を採り、正常検出履歴情報及び異常検出履歴情報は、「有り」又は「無し」との値を採る。
【００７６】
このような構成のダイアグ関連データの初期データは、ＲＯＭ１４０に記憶されており、「異常」との値を示す診断結果情報と、「無し」との値を示す正常検出履歴情報及び異常検出履歴情報とからなるレコード群によって構成される。
【００７７】
この初期データは、電子制御装置１００の初回起動時に、ＣＰＵ１３０の動作により、ＲＡＭ１５０の特定領域に読み出される。具体的には、特定領域として、予め定められたバックアップ対象データを一時記憶するためのバックアップ対象データ記憶領域に書き込まれる。
【００７８】
そして、ＲＡＭ１５０のバックアップ対象データ記憶領域に記憶されたダイアグ関連データは、ＣＰＵ１３０の動作により、バックアップの実行条件が満足された時点で、バックアップメモリ１６０に書き込まれる（図３（ｂ）参照）。以下では、ＲＡＭ１５０からバックアップメモリ１６０にバックアップされたデータのことを「バックアップデータ」とも表現する。
【００７９】
また、バックアップメモリ１６０に書き込まれたバックアップデータ（ダイアグ関連データ）は、電子制御装置１００の次回起動時に、ＣＰＵ１３０の動作により、バックアップメモリ１６０から読み出されて、ＲＡＭ１５０のバックアップ対象データ記憶領域に書き込まれる。
【００８０】
そして、ＲＡＭ１５０のバックアップ対象データ記憶領域内で更新されたダイアグ関連データは、バックアップメモリ１６０内の旧ダイアグ関連データに上書きされるようにして、バックアップメモリ１６０に書き込まれる。このようにして、バックアップメモリ１６０が記憶するダイアグ関連データは、故障診断の結果に応じて変更される。
【００８１】
また、図４（ａ）は、ダイアグ関連データのバックアップ手法を説明したブロック図である。本実施例のＣＰＵ１３０は、ＲＯＭ１４０に記録されたプログラムに従って、故障診断を含む診断記録処理と、ＲＡＭ１５０のバックアップ対象データ記憶領域が記憶するデータをバックアップするバックアップ制御処理と、を実行する。
【００８２】
そして、診断記録処理では、故障診断と共に、必要に応じて、ＲＡＭ１５０が記憶するダイアグ関連データを更新し、ダイアグ関連データを更新した場合には、ＲＡＭ１５０が更新フラグ記憶領域に記憶する更新フラグをオンに対応する値に設定する。
【００８３】
一方、バックアップ制御処理では、ＲＡＭ１５０が記憶する更新フラグを監視し、更新フラグがオンに対応する値に設定されているか否かによって、ＲＡＭ１５０が記憶するダイアグ関連データが更新されたか否かを判断する。
【００８４】
そして、ダイアグ関連データが更新されない時間が所定時間続くと、ＣＰＵ１３０は、バックアップの実行条件が満足されたとして、メモリアクセスドライバを通じて、バックアップメモリ１６０としてのフラッシュメモリに、当該フラッシュメモリが記憶するダイアグ関連データに上書きするようにして、ＲＡＭ１５０が記憶するダイアグ関連データを書き込むことで、フラッシュメモリが記憶するダイアグ関連データを更新する。
【００８５】
尚、本実施例では、電子制御装置１００として、内燃機関制御用の電子制御装置を例に挙げているので、バックアップメモリ１６０として、電気的にデータ書換可能な不揮発性メモリとして知られるフラッシュメモリを用いるが、他の用途に用いられる電子制御装置では、バックアップメモリ１６０として、ＳＲＡＭを用いても構わない。
【００８６】
図４（ｂ）は、バックアップメモリ１６０としてＳＲＡＭを用いた例を表す説明図である。バックアップメモリ１６０としてＳＲＡＭを用いる場合には、キースイッチＳＷのオン操作により電源供給され、キースイッチＳＷのオフ操作によって電源供給が遮断されるＲＡＭ１５０に記憶されたダイアグ関連データを、キースイッチＳＷのオン／オフ操作に拘わらずバッテリ４００から電源が供給されるＳＲＡＭに書き込むことで、ダイアグ関連データをバックアップする。
【００８７】
バックアップメモリ１６０としてフラッシュメモリを用いるかＳＲＡＭを用いるかは、バックアップするデータの重要性やコスト、法規等を加味して決定する。バッテリ４００の取り外しによってＳＲＡＭ内のデータが揮発する可能性を許容できる電子制御装置であれば、バックアップメモリ１６０として、ＳＲＡＭを用いることも可能である。
【００８８】
話を戻すが、本実施例の電子制御装置１００においては、具体的に、図５及び図６に示す処理をＣＰＵ１３０で実行することにより、ダイアグ関連データのバックアップを実現する。
【００８９】
図５は、ＣＰＵ１３０が実行する診断記録処理を表すフローチャートであり、図６は、ＣＰＵ１３０が実行するバックアップ制御処理を表すフローチャートである。ＣＰＵ１３０は、診断項目毎に、予め定められたタイミングで図５に示す診断記録処理を実行する。また、これとは独立して並列に、バックアップ制御処理を実行する。
【００９０】
診断記録処理を開始すると、ＣＰＵ１３０は、当該診断記録処理に割り当てられた診断項目についての故障診断を実行し、当該診断項目に対応する診断結果（「正常」又は「異常」との値）を得る（Ｓ１１０）。故障診断の具体例は、上述した通りである。例えば、センサ類２００の断線を検出するための処理を、故障診断として実行し、断線がある場合には「異常」と診断し、断線がない場合には「正常」と診断する。
【００９１】
Ｓ１１０での処理を終えると次には、今回の診断結果が、ＲＡＭ１５０が記憶する当該診断項目の過去の診断結果と一致しているか否かを、ＲＡＭ１５０が記憶する当該診断項目に対応するダイアグ関連データ内のレコードを参照して判断する（Ｓ１２０）。
【００９２】
具体的には、今回診断した項目についてのダイアグ関連データ内のレコードが「正常」との診断結果を示し、今回の診断結果が「正常」との診断結果である場合、又は、上記レコードが「異常」との診断結果を示し、今回の診断結果が「異常」との診断結果である場合、今回の診断結果がＲＡＭ１５０が記憶する過去の診断結果と一致していると判断する。一方、それ以外の場合（一方が「正常」で他方が「異常」である場合）には、今回の診断結果が過去の診断結果と一致していないと判断する。
【００９３】
そして、今回の診断結果が、ＲＡＭ１５０が記憶する当該診断項目の過去の診断結果と一致していないと判断すると（Ｓ１２０でＮｏ）、ＣＰＵ１３０は、Ｓ１３０に移行する。一方、今回の診断結果が、ＲＡＭ１５０が記憶する当該診断項目の過去の診断結果と一致していると判断すると（Ｓ１２０でＹｅｓ）、Ｓ１３０に移行せず、今回の診断結果をＲＡＭ１５０のダイアグ関連データに記録しないまま、当該診断記録処理を終了する。
【００９４】
また、Ｓ１３０に移行すると、ＣＰＵ１３０は、ＲＡＭ１５０の更新フラグ記憶領域に記憶されている更新フラグをオンに対応する値に設定する。尚、更新フラグは、上述したように、バックアップ対象データがＲＡＭ１５０において更新されたか否かを表すデータであり、オンに対応する値として値「１」を採り、オフに対応する値として値「０」を採る。この更新フラグは、電子制御装置１００の起動時、値０（オフ）に初期化される。以下では、更新フラグをオン（オフ）に対応する値に設定することを、単に「更新フラグをオン（オフ）に設定する」と表現する。
【００９５】
Ｓ１３０では、更新フラグをオンに設定することにより、バックアップ対象データがＲＡＭ１５０において更新されたことをＲＡＭ１５０に記録する。
また、Ｓ１３０での処理を終えると、ＣＰＵ１４０は、今回の診断結果の情報を、ＲＡＭ１５０がバックアップ対象データ記憶領域に記憶するダイアグ関連データの対応する診断項目の診断結果情報に上書きするようにして、ＲＡＭ１５０に書き込む。このようにして、ＣＰＵ１３０は、ＲＡＭ１５０が記憶するバックアップ対象データとしてのダイアグ関連データを更新する（Ｓ１４０）。その後、Ｓ１５０に移行する。
【００９６】
また、Ｓ１５０に移行すると、ＣＰＵ１３０は、今回の診断結果が「正常」との診断結果であるか否かを判断し、「正常」との診断結果であると判断した場合には（Ｓ１５０でＹｅｓ）、ＲＡＭ１５０が記憶するダイアグ関連データの当該診断項目における正常検出履歴情報を「有り」との値に変更し（Ｓ１６０）、診断記録処理を終了する。
【００９７】
一方、今回の診断結果が「異常」との診断結果であると判断した場合には（Ｓ１５０でＮｏ）、ＲＡＭ１５０が記憶するダイアグ関連データの当該診断項目における異常検出履歴情報を「有り」との値に変更し（Ｓ１７０）、診断記録処理を終了する。
【００９８】
続いて、ＣＰＵ１３０が当該電子制御装置１００の起動直後から実行するバックアップ制御処理について、図６を用いて説明する。
図６に示すバックアップ制御処理を開始すると、ＣＰＵ１３０は、まず、バックアップメモリ１６０からバックアップデータを読み出して、これをＲＡＭ１５０のバックアップ対象データ記憶領域に書き込むことで、バックアップメモリ１６０に記憶されたダイアグ関連データのコピーデータをＲＡＭ１５０に記憶させる（Ｓ２１０）。
【００９９】
但し、バックアップメモリ１６０にバックアップデータが記憶されていない場合には、ＲＯＭ１４０に記憶されたダイアグ関連データの初期データを、バックアップデータに代えて読み出して、これをＲＡＭ１５０のバックアップ対象データ記憶領域に書き込む。
【０１００】
また、Ｓ２１０での処理を終えると、ＣＰＵ１３０は、ＲＡＭ１５０の更新フラグ記憶領域に記憶された更新フラグがオンに設定されているか否かを判断する（Ｓ２２０）。
そして、更新フラグがオンに設定されていると判断した場合には（Ｓ２２０でＹｅｓ）、Ｓ２３０に移行し、更新フラグがオンに設定されていないと判断した場合には（Ｓ２２０でＮｏ）、更新フラグがオンに設定されるまで待機し、更新フラグがオンに設定された時点で、Ｓ２３０に移行する。
【０１０１】
Ｓ２３０に移行すると、ＣＰＵ１３０は、ＲＡＭ１５０が記憶する上記更新フラグをオフに設定変更すると共に、タイマをゼロクリアする（Ｓ２４０）。尚、本実施例のタイマは、ソフトウェア的なタイマであり、Ｓ２４０では、タイマとして機能するパラメータをゼロに初期化することで、タイマをゼロクリアする。
【０１０２】
また、Ｓ２４０での処理を終えると、ＣＰＵ１３０は、Ｓ２５０に移行して、ＲＡＭ１５０が記憶する更新フラグがオンに設定されているか否かを判断する。そして、更新フラグがオンに設定されていると判断した場合には（Ｓ２５０でＹｅｓ）、Ｓ２３０に移行して、更新フラグを再度オフに設定変更すると共に、タイマをゼロクリアする。その後、Ｓ２５０での判断を行う。尚、ＲＡＭ１５０が記憶する更新フラグは、上述したように診断記録処理のＳ１３０でオンに設定変更される。
【０１０３】
一方、更新フラグがオフに維持されていると判断した場合には（Ｓ２５０でＮｏ）、タイマを加算する（Ｓ２６０）。即ち、タイマとして機能するパラメータの値をカウントアップする。
【０１０４】
また、Ｓ２６０での処理を終えると、ＣＰＵ１３０は、タイマの値が、予め定められた閾値を超えたか否かを判断し（Ｓ２７０）、タイマの値が、予め定められた閾値以下であると判断した場合には（Ｓ２７０でＮｏ）、Ｓ２５０に移行する。このようにして、本実施例では、更新フラグが最後にオンに設定されてからの経過時間（換言すれば、更新フラグがオンに設定されなくなってからの経過時間）をタイマによりカウントする。
【０１０５】
そして、タイマの値が上記閾値を越えたと判断すると（Ｓ２７０でＹｅｓ）、ＣＰＵ１３０は、Ｓ２８０に移行し、ＲＡＭ１５０のバックアップ対象データ記憶領域に記憶されたバックアップ対象データ（ダイアグ関連データ）を、バックアップメモリ１６０が記憶するバックアップデータ（ダイアグ関連データ）に上書きするようにして書き込むことで、バックアップメモリ１６０が記憶するバックアップデータを更新する。その後、Ｓ２２０に移行する。
【０１０６】
そして、再び更新フラグがオンに設定されるまで待機し（Ｓ２２０）、更新フラグがオンに設定されると、Ｓ２３０以降の処理を実行する。
このような内容のバックアップ制御処理を実行することにより、本実施例では、ＲＡＭ１５０においてバックアップ対象データが更新されなくなってからの経過時間を計測し、当該経過時間が閾値を超えた時点で、バックアップの実行条件が満足されたとして、バックアップ対象データ（ダイアグ関連データ）を、バックアップメモリ１６０にバックアップする。
【０１０７】
従って、本実施例によれば、バックアップの実行回数を減らしつつも、ＲＡＭ１５０が記憶するバックアップの必要なデータを、適切なタイミングでバックアップすることができる。よって、本実施例によれば、突然のシャットダウン等によってバックアップ対象データが揮発してしまう可能性を抑えつつも、ダイアグ関連データを効率的にバックアップメモリ１６０に記録することができる。
【実施例２】
【０１０９】
続いて、第二実施例について説明する。図７（ａ）は、第二実施例の電子制御装置１００が備えるＣＰＵ１３０の構成を表すブロック図である。第二実施例の電子制御装置１００については、第一実施例の電子制御装置１００と同一構成にされている部位も多いので、以下では、第二実施例の電子制御装置１００について、第一実施例とは異なる構成を選択的に説明し、第一実施例の電子制御装置１００と同一構成に係る説明を省略する。
【０１１０】
図７（ａ）に示すように、本実施例のＣＰＵ１３０は、プログラムに従う演算処理を実行する演算回路（ＣＰＵコア）とは別に、タイマ１３１及びメモリアクセス監視回路１３３がハードウェアとして内蔵された構成にされている。
【０１１１】
タイマ１３１は、タイマ値が設定されると、タイマ値のカウントダウンを開始し、タイマ値がゼロとなった時点で割込要求を出力する構成にされたものである。この割込要求は、ＣＰＵ１３０が内蔵する割込コントローラ１３５に入力される。以下では、タイマ１３１から出力される割込要求のことを「タイマ割込要求」と表現する。
【０１１２】
一方、メモリアクセス監視回路１３３は、監視対象のメモリ領域（監視領域）が設定されると、監視対象のメモリ領域を監視し、当該メモリ領域にデータ書込動作がなされた時点で割込要求を出力する構成にされたものであり、この割込要求は、割込コントローラ１３５に入力される。以下では、メモリアクセス監視回路１３３から出力される割込要求のことを「メモリアクセス割込要求」と表現する。
【０１１３】
割込コントローラ１３５は、割込要求を制御するものであり、タイマ１３１から入力されるタイマ割込要求及びメモリアクセス監視回路１３３から入力されるメモリアクセス割込要求を、重複しないタイミングで、ＣＰＵ１３０の演算回路に入力する。
【０１１４】
一方、本実施例の電子制御装置１００は、ＲＯＭ１４０に記録されたプログラムに従い、当該電子制御装置１００の起動時に、ＣＰＵ１３０で、図８（ａ）に示すバックアップ制御処理をソフトウェア的に実行する。
【０１１５】
また、当該電子制御装置１００は、ＲＯＭ１４０に記録されたプログラムに従い、メモリアクセス割込要求が発生すると、この割込要求に対する例外処理として、図８（ｂ）に示すメモリアクセス割込例外処理を、ＣＰＵ１３０でソフトウェア的に実行する。この他、タイマ割込要求が発生すると、この割込要求に対する例外処理として、図８（ｃ）に示すタイマ割込例外処理を、ＣＰＵ１３０でソフトウェア的に実行する。
【０１１６】
尚、図８（ａ）は、第二実施例において、ＣＰＵ１３０が実行するバックアップ制御処理を表すフローチャートであり、図８（ｂ）は、ＣＰＵ１３０が実行するメモリアクセス割込例外処理を表すフローチャートであり、図８（ｃ）は、ＣＰＵ１３０が実行するタイマ割込例外処理を表すフローチャートである。
【０１１７】
バックアップ制御処理を開始すると、ＣＰＵ１３０は、第一実施例におけるＳ２１０での処理と同様、まずバックアップメモリ１６０からバックアップデータ（ダイアグ関連データ）を読み出し、これをＲＡＭ１５０のバックアップ対象データ記憶領域に書き込む（Ｓ３１０）。
【０１１８】
その後、ＲＡＭ１５０のバックアップ対象データ記憶領域を、監視対象のメモリ領域に設定する（Ｓ３２０）。この設定が完了すると、メモリアクセス監視回路１３３からは、バックアップ対象データ記憶領域に対するデータ書込動作がなされる度に、メモリアクセス割込要求が出力される。このようにして、Ｓ３２０での処理を終えると、ＣＰＵ１３０は、バックアップ制御処理を終了する。
【０１１９】
一方、メモリアクセス割込要求が発生すると、ＣＰＵ１３０は、メモリアクセス割込例外処理を開始し、予め定められた所定時間後に、タイマ割込要求が発生するように、タイマ１３１に対して上記所定時間に対応する所定のタイマ値を設定した後（Ｓ３３０）、当該メモリアクセス割込例外処理を終える。
【０１２０】
この他、タイマ割込要求が発生すると、ＣＰＵ１３０は、タイマ割込例外処理を開始し、ＲＡＭ１５０のバックアップ対象データ記憶領域に記憶されたバックアップ対象データを、バックアップメモリ１６０が記憶するバックアップデータ（ダイアグ関連データ）に上書きするようにして書き込む。このようにして、バックアップメモリ１６０が記憶するバックアップデータを更新し、当該タイマ割込例外処理を終える。
【０１２１】
ＣＰＵ１３０がこのように処理を実行することで、本実施例の電子制御装置１００は、具体的に、図７（ｂ）に示すように動作する。
即ち、当該電子制御装置１００では、監視対象のメモリ領域に対するデータ書込があると、メモリアクセス割込要求が発生して、メモリアクセス割込例外処理がＣＰＵ１３０により実行され、タイマ値が、上記所定時間に対応する値に設定される。また、タイマ値がゼロになるまでに、再び、監視対象のメモリ領域に対するデータ書込があると、メモリアクセス割込要求が発生して、メモリアクセス割込例外処理が再びＣＰＵ１３０により実行され、タイマ値が、上記所定時間に対応する値に戻される。
【０１２２】
一方、監視対象のメモリ領域に対するデータ書込が所定時間なかった場合には、タイマ値がゼロとなってタイマ割込要求が発生し、ＣＰＵ１３０がタイマ割込例外処理を実行して、ＲＡＭ１５０に記憶されたバックアップ対象データがバックアップメモリ１６０にバックアップされる。
【０１２３】
このように構成された第二実施例の電子制御装置１００においても、第一実施例と同様の効果を得ることができる。また、第二実施例によれば、ＣＰＵ１３０に内蔵されたタイマ１３１及びメモリアクセス監視回路１３３（ハードウェア）を用いて、監視対象のメモリ領域に対するデータ書込が最後に行われてからの経過時間を計測するので、第一実施例と比較してＣＰＵ１３０での演算処理に係る負荷が少なくて済む。
【実施例３】
【０１２５】
続いて、第三実施例について説明する。但し、第三実施例の電子制御装置１００は、バックアップ制御処理の一部が、第一実施例と異なる程度であり、他の構成については、第一実施例と同一である。従って、以下では、第三実施例の説明として、ＣＰＵ１３０が実行するバックアップ制御処理の内容を選択的に説明する。
【０１２６】
図９は、第三実施例において、ＣＰＵ１３０が実行するバックアップ制御処理を表すフローチャートである。図９では、図６に示すバックアップ制御処理と同内容のステップに、同一ステップ番号を付す。
【０１２７】
本実施例のバックアップ制御処理では、第一実施例と同様にＳ２１０の処理を実行した後、Ｓ２１３の処理を実行し、その後、Ｓ２２０に移行して、後続の処理を、第一実施例と同様に実行する。即ち、本実施例のバックアップ制御処理では、まず、バックアップメモリ１６０からバックアップデータ（ダイアグ関連データ）を読み出して、これをＲＡＭ１５０のバックアップ対象データ記憶領域に書き込む（Ｓ２１０）。
【０１２８】
その後、入力回路１１０を通じて入力される内燃機関の冷却水の温度を計測する水温センサからの計測結果を表す信号に基づき、冷却水の温度を特定し、冷却水の温度が、予め定められた閾値を超えているか否かを判断する（Ｓ２１３）。
【０１２９】
そして、冷却水の温度が閾値以下であると判断すると（Ｓ２１３でＮｏ）、冷却水の温度が閾値を超えるまで待機し、冷却水の温度が閾値を超えたと判断すると（Ｓ２１３でＹｅｓ）、Ｓ２２０に移行する。
【０１３０】
このようにして、本実施例では、水温センサの計測結果に基づき、内燃機関の始動後、冷却水の温度が所定温度（閾値）に上昇するまでは、タイマによる時間計測動作を禁止する。即ち、冷却水の温度が所定温度に上昇するまでは、Ｓ２２０に移行しないことで、診断記録処理により更新フラグがオンに設定された場合であってもタイマによる時間計測を開始しないようにする。
【０１３１】
従って、本実施例では、冷却水の温度が所定温度に上昇する前に、更新フラグがオンに設定された場合であっても、冷却水の温度が所定温度に上昇し、その後所定時間経過するまでは、バックアップメモリ１６０へのバックアップ動作が実行されないことになる。
【０１３２】
尚、このように時間計測動作及びバックアップ動作を禁止する理由は、冷却水の温度が上昇するまでは、サーモスタットが動作せず、サーモスタットの故障診断等の一部の故障診断を行うことができないためである。換言すれば、冷却水の温度が上昇して、内燃機関が安定的に動作するまでは、一通りの故障診断が完了しないためである。
【０１３３】
上述したように、診断結果が同じである場合には、ＲＡＭ１５０内のデータが更新されないことから、一通りの故障診断が終了し、定期的な故障診断が行われる程度となった時点では、ＲＡＭ１５０においてダイアグ関連データが更新される可能性は、非常に低い。これに対して、一通りの故障診断が終了するまでは、ＲＡＭ１５０においてダイアグ関連データが更新される可能性が高い。
【０１３４】
従って、本実施例のようにバックアップ動作を実行すれば、ダイアグ関連データが更新される可能性が高いのにも拘らず、バックアップ動作を実行してしまうことで、バックアップ動作の実行回数が増えるのを抑制することができて、効率的に、ダイアグ関連データを、バックアップメモリ１６０にバックアップすることができる。よって、本実施例によれば、バックアップメモリ１６０へのデータ書込回数を減らし、製品の耐久性を上げることができる。
【実施例４】
【０１３６】
続いて、第四実施例について説明する。但し、第四実施例の電子制御装置１００は、バックアップ制御処理及び診断記録処理の一部が、第一実施例と異なる程度のものであり、他の構成については、第一実施例と同一である。従って、以下では、第四実施例の説明として、ＣＰＵ１３０が実行するバックアップ制御処理及び診断記録処理を選択的に説明する。
【０１３７】
図１０（ａ）は、第四実施例において、ＣＰＵ１３０が実行するバックアップ制御処理を表すフローチャートであり、図１０（ｂ）は、第四実施例において、ＣＰＵ１３０が特定の診断項目に対して実行する診断記録処理を表すフローチャートである。図１０では、図５及び図６に示す処理と同内容のステップに、同一ステップ番号を付す。
【０１３８】
本実施例のバックアップ制御処理では、第一実施例と同様にＳ２１０の処理を実行した後、Ｓ２１７の処理を実行する。その後、Ｓ２２０に移行して、後続の処理を、第一実施例と同様に実行する。
【０１３９】
即ち、本実施例では、バックアップ制御処理を開始すると、バックアップメモリ１６０からバックアップデータ（ダイアグ関連データ）を読み出して、これをＲＡＭ１５０のバックアップ対象データ記憶領域に書き込み（Ｓ２１０）、その後、Ｓ２１７に移行して、特定の故障診断が完了するまで待機する。
【０１４０】
本実施例では、図１０（ｂ）に示すように、診断項目毎の診断記録処理の内、特定の診断項目の診断記録処理が、当該診断記録処理の終了を、バックアップ制御処理に通知する構成にされている。
【０１４１】
尚、特定の診断項目以外の診断記録処理については、第一実施例と同じ構成にされており、本実施例では、複数ある診断項目の内、ある一つの診断項目の診断記録処理のみが、上記特定の診断項目の診断記録処理として、図１０（ｂ）に示す構成にされている。
【０１４２】
ＣＰＵ１３０は、図１０（ｂ）に示す診断記録処理を開始すると、Ｓ１２０でＹｅｓと判断した後（図５参照）、又は、Ｓ１６０の処理を終了した後、又は、Ｓ１７０の処理を終了した後に、Ｓ１９０に移行して、当該診断記録処理の終了をバックアップ制御処理の実行タスクに対して通知する。
【０１４３】
一方、バックアップ制御処理では、Ｓ２１７において、この終了通知を受けるまで待機し、終了通知を受けたと判断すると（Ｓ２１７でＹｅｓ）、特定の故障診断が完了したとして、Ｓ２２０に移行する。そして、Ｓ２２０以降では、第一実施例と同様の処理を実行する。
【０１４４】
以上に、第四実施例の電子制御装置１００について説明したが、第四実施例によっても、第三実施例と同様の効果を得ることができる。
即ち、一通りの故障診断が終了する直前において実行される故障診断、換言すれば、順番的に最後に実行される故障診断に対応する診断記録処理を、図１０（ｂ）に示す構成にして、この診断記録処理が終了するまでは、Ｓ２２０への移行を禁止することで、一通りの故障診断が終了するまでは、診断記録処理により更新フラグがオンに設定された場合であってもタイマによる時間計測を開始しないようにすることができる。
【０１４５】
従って、本実施例によれば、ダイアグ関連データが更新される可能性が高いのにも拘らず、バックアップ動作を実行してしまうことで、バックアップ動作の実行回数が増えるのを抑制することができて、効率的に、ダイアグ関連データを、バックアップメモリ１６０にバックアップすることができる。
【０１４６】
尚、本実施例の電子制御装置１００は、本発明の電子機器の一例に対応し、本実施例のＲＡＭ１５０は、「特許請求の範囲」記載の一時記憶メモリに対応する。また、「特許請求の範囲」記載の処理実行手段は、ＣＰＵ１３０が診断項目毎に実行する診断記録処理にて実現され、読出手段及びバックアップ手段及び計測手段は、ＣＰＵ１３０が実行するバックアップ制御処理にて実現されている。特に、読出手段は、Ｓ２１０の処理により実現され、計測手段は、Ｓ２４０〜Ｓ２６０の処理により実現され、バックアップ手段は、Ｓ２７０，Ｓ２８０の処理により実現されている。また、本実施例で実行されるＳ２１７での処理が、「特許請求の範囲」に記載の禁止手段に対応する。
【実施例５】
【０１４７】
続いて、第五実施例について説明する。但し、第五実施例の電子制御装置１００は、グループ化されたバックアップ対象データに対して、グループ毎に、バックアップ制御処理を実行するものであり、グループ化に伴う構成以外については、第一実施例の電子制御装置１００と同一構成である。従って、以下では、第五実施例の説明として、第一実施例とは異なる構成部分を、選択的に説明する。
【０１４８】
図１１（ａ）は、ＲＡＭ１５０におけるデータ管理態様及びバックアップ制御処理の実行態様を示した説明図である。
上述したように、本実施例では、バックアップ対象データを、複数のグループにグループ化している。具体的には、ダイアグ関連データを構成する各レコードを、複数のグループのいずれかに分類して、グループ化している。
【０１４９】
そして、ＲＡＭ１５０においては、グループ毎に、グループに属するバックアップ対象データを一時記憶するための領域を、グループデータ記憶領域として設けている。図１１（ａ）には、グループがＮ個あるものとして、第１グループデータ記憶領域から、第Ｎグループデータ記憶領域までがＲＡＭ１５０に確保されている態様を示す。この第１〜第Ｎグループデータ記憶領域の集合が、第一実施例におけるバックアップ対象データ記憶領域に対応する。
【０１５０】
また、本実施例では、バックアップ対象データのグループ化に伴って、グループ毎に更新フラグを設けている。即ち、更新フラグを記憶するための更新フラグ記憶領域を、グループ毎に、ＲＡＭ１５０に設けている。
【０１５１】
以下では、Ｎ個あるグループを、第１〜第Ｎグループと名づけて、第ｉグループに対応するグループデータ記憶領域を、第ｉグループデータ記憶領域と表現し、第ｉグループに対応する更新フラグ記憶領域を、第ｉグループ更新フラグ記憶領域と表現する（但し、ｉ＝１，２，…，Ｎ）。
【０１５２】
また、本実施例のバックアップ制御処理について詳述すると、第ｉグループに対応するバックアップ制御処理では、Ｓ２１０（図６参照）において、第ｉグループに属するバックアップ対象データについてのバックアップデータを、バックアップメモリ１６０から読み出し、これをＲＡＭ１５０の第ｉグループデータ記憶領域に書き込むことで、バックアップメモリ１６０に記憶された第ｉグループに属するダイアグ関連データのコピーをＲＡＭ１５０に記憶させる。
【０１５３】
また、Ｓ２２０，Ｓ２５０では、第ｉグループ更新フラグ記憶領域に記憶された第ｉグループの更新フラグを参照して、第一実施例と同様の判断を行い、Ｓ２２０で更新フラグがオンに設定されていると判断した場合には、Ｓ２３０で、第ｉグループの更新フラグをオフに設定する。また、本実施例では、タイマもグループ毎に独立して設けられており、Ｓ２４０，Ｓ２６０では、第ｉグループのタイマに対して、第一実施例と同様の処理を行う。
【０１５４】
そして、第ｉグループのタイマが、予め定められた閾値を超えた場合には（Ｓ２７０でＹｅｓ）、ＲＡＭ１５０の第ｉグループデータ記憶領域に記憶されているバックアップ対象データ（第ｉグループのダイアグ関連データ）を、バックアップメモリ１６０が記憶する第ｉグループのバックアップデータ（第ｉグループのダイアグ関連データ）に上書きするようにして書き込むことで、バックアップメモリ１６０が記憶する第ｉグループのバックアップデータを更新する（Ｓ２８０）。その後、Ｓ２２０に移行する。
【０１５５】
尚、Ｓ２７０で用いられる閾値は、設計段階でグループ共通の値として定められてもよいし、グループ毎に個別に設定されてもよい。即ち、Ｓ２７０では、第ｉグループに対して予め設定された閾値を用いて、上述の判断を行うように、バックアップ制御処理は、構成されてもよい。
【０１５６】
また、図１１（ｂ）は、第五実施例において、ＣＰＵ１３０が実行する診断記録処理を表すフローチャートである。本実施例では、ダイアグ関連データがグループ化されているので、診断記録処理も間接的に、診断項目に対応したグループに分類されることになる。従って、以下では、第ｉグループに属している診断項目の故障診断を実行する診断記録処理を、第ｉグループの診断記録処理と表現する。
【０１５７】
図１１（ｂ）に示すように、第ｉグループの診断記録処理では、Ｓ１３０において、更新フラグをオンに設定する際、第ｉグループの更新フラグをオンに設定する。そして、Ｓ１４０では、今回の診断結果の情報を、ＲＡＭ１５０が第ｉグループデータ記憶領域に記憶する第iグループのダイアグ関連データの該当する診断結果情報に上書きするようにして書き込む。同様にして、第ｉグループデータ記憶領域に記憶されたダイアグ関連データを対象にＳ１６０，Ｓ１７０の処理を実行する（図５参照）。このようにして、ＣＰＵ１３０は、ＲＡＭ１５０が記憶するダイアグ関連データを更新する。
【０１５８】
以上、第五実施例について説明したが、本実施例のようにバックアップ対象データをグループ化すると、バックアップメモリ１６０への書込回数が多くなるといった欠点があるものの、バックアップ対象データを、グループ毎に、適切なタイミングでバックアップすることができるといった利点がある。
【０１５９】
例えば、グループ化としては、電子制御装置１００の起動時点から実行される診断記録処理を、一通りの診断記録処理が実行されるまでの期間において、初期に実行されるグループ、中期に実行されるグループ、後期に実行されるグループの３つにグループ化する方法等が挙げられるが、このようにグループ化すれば、早期に実行されるグループから順にバックアップ動作を実行することができる。
【０１６０】
このようにグループ化すれば、ダイアグ関連データが突然のシャットアウト等で揮発しないようしつつも、バックアップメモリ１６０へのデータ書込回数を抑えることができ、各グループのダイアグ関連データを適切なタイミングでバックアップすることができる。
【０１６１】
また、第五実施例では、ダイアグ関連データを、グループ化した例を示したが、バックアップ対象データを、ダイアグ関連データ以外のデータにまで拡張する場合には、ダイアグ関連データを１グループとして取り扱うと共に、拡張したデータを、ダイアグ関連データとは別のグループとして取り扱うようにして、電子制御装置１００を構成することも可能である（第六実施例）。
【実施例６】
【０１６２】
続いて、第六実施例について説明する。以下では、第六実施例の電子制御装置１００の説明として、第一実施例の電子制御装置１００とは異なる構成についての説明を、選択的にする。
【０１６３】
図１２は、本実施例におけるＲＡＭ１５０でのデータ管理態様及びバックアップ制御処理の実行態様を示した図である。
本実施例では、車両制御に用いる制御パラメータの学習値群で構成される学習関連データと、ダイアグ関連データと、をバックアップ対象データに定めており、これらバックアップ対象データの内、ダイアグ関連データを、第１グループ、学習関連データを、第２グループに定めている。
【０１６４】
また、ＲＡＭ１５０には、グループ毎に、当該グループに属するバックアップ対象データを一時記憶するための領域を、設けている。具体的には、ダイアグ関連データを一時記憶するための領域を、第１グループデータ記憶領域として設け、学習関連データを一時記憶するための領域を、第２グループデータ記憶領域として設けている。
【０１６５】
この他、本実施例では、更新フラグを記憶するための領域を、グループ毎にＲＡＭ１５０に設けている。具体的には、ダイアグ関連データ用の更新フラグを記憶するための領域を、第１グループ更新フラグ記憶領域として設け、学習関連データ用の更新スラグを一時記憶するための領域を、第２グループデータ記憶領域として設けている。
【０１６６】
このような構成の電子制御装置１００において、ＣＰＵ１３０は、第五実施例と同様の手法で、第１グループ及び第２グループの夫々に対しバックアップ制御処理を実行する。
また、ＣＰＵ１３０は、診断記録処理（図５参照）のＳ１３０で、更新フラグをオンに設定する際、故障診断に対応するグループ（第１グループ）の更新フラグをオンに設定する。そして、Ｓ１４０では、今回の診断結果の情報を、ＲＡＭ１５０が第１グループデータ記憶領域に記憶するダイアグ関連データの該当する診断結果情報に上書きするようにして、書き込む。同様にして、第１グループデータ記憶領域に記憶されたダイアグ関連データを対象にＳ１６０，Ｓ１７０の処理を実行する。このようにして、ＣＰＵ１３０は、ＲＡＭ１５０が記憶するダイアグ関連データを更新する。
【０１６７】
この他、本実施例におけるＣＰＵ１３０は、上述の診断記録処理やバックアップ制御処理とは独立して、制御パラメータの学習値を算出する手順を含む学習記録処理を、制御パラメータ毎に繰返し実行する。図１３は、ＣＰＵ１３０が実行する学習記録処理を表すフローチャートである。
【０１６８】
学習記録処理を開始すると、ＣＰＵ１３０は、まず、当該学習記録処理に割り当てられた学習処理を実行して、制御パラメータの学習値を算出する（Ｓ５１０）。制御パラメータとしては、例えば、空燃比補正量を挙げることができる。
【０１６９】
また、この処理を終えると、ＣＰＵ１３０は、今回Ｓ５１０で算出した学習値Ｐと、当該学習値Ｐに対応する制御パラメータの過去の学習値Ｐ’であってＲＡＭ１５０が第２グループデータ記憶領域に記憶する学習関連データに記述された学習値Ｐ’との差分Δを算出する（Ｓ５２０）。
【０１７０】
例えば、制御パラメータがスカラー値である場合には、今回の学習値ＰとＲＡＭ１５０が記憶する上記学習値Ｐ’との差Ｐ−Ｐ’の絶対値を、差分Δとして算出する。一方、制御パラメータがベクトル値である場合には、学習値Ｐと学習値Ｐ’との差Ｐ−Ｐ’のノルムを、差分Δとして算出すればよい。
【０１７１】
また、Ｓ５２０での処理を終えると、ＣＰＵ１３０は、Ｓ５３０に移行し、差分Δが予め定められた閾値を超えているか否かを判断する。
そして、差分Δが閾値を超えていると判断すると（Ｓ５３０でＹｅｓ）、ＣＰＵ１３０は、対応するグループ（即ち、第２グループ）の更新フラグをオンに設定する（Ｓ５４０）。また、今回の学習値Ｐを、ＲＡＭ１５０が第２グループデータ記憶領域に記憶する学習関連データの該当する過去の学習値に上書きするようにして、書き込む（Ｓ５５０）。このようにして、ＣＰＵ１３０は、ＲＡＭ１５０が記憶する学習関連データを更新する。その後、当該学習記録処理を終了する。
【０１７２】
一方、差分Δが閾値以下であると判断すると（Ｓ５３０でＮｏ）、ＣＰＵ１３０は、Ｓ５４０及びＳ５５０の処理を実行せずに、当該学習記録処理を終了する。即ち、算出した学習値Ｐを、ＲＡＭ１５０の学習関連データに書き込むことなく、当該学習記録処理を終了する。
【０１７３】
本実施例の電子制御装置１００では、このような内容の学習記録処理を、制御パラメータ毎に、制御パラメータに応じた周期で実行することで、制御パラメータの学習を定期的に行い、前回記憶値との差分Δが大きくなった時点（閾値を超えた時点）で再び、最新の学習値Ｐを、ＲＡＭ１５０の学習関連データへ書き込む。
【０１７４】
以上、第六実施例について説明したが、本実施例によれば、学習値のバックアップについても、適切なタイミングで実行することができる。また、本実施例によれば、ダイアグ関連データと同手法によって制御パラメータの学習値をバックアップすることができるので、複雑にバックアップの実行タイミングを制御しなくても、シンプルな手順にて、各種類のデータを、適切なタイミングでバックアップすることができる。
【実施例７】
【０１７５】
続いて、第七実施例について説明する。第一実施例では、ダイアグ関連データとして、診断項目毎の診断結果を故障の「有り」又は「無し」で示したデータ、をＲＡＭ１５０やバックアップメモリ１６０に記録するようにしたが、車両の故障を記録する方法としては、故障が発生すると、発生した故障の種類を表すコード（以下、故障コードという。）を、ＲＡＭ１５０やバックアップメモリ１６０に記録する方法も知られている。
【０１７６】
第七実施例の電子制御装置１００は、故障コードをＲＡＭ１５０やバックアップメモリ１６０に記録する電子制御装置に本発明を適用したものである。但し、本実施例の電子制御装置１００は、ダイアグ関連データの記録方法が第一実施例と異なるものの、他の構成については、基本的に、第一実施例の電子制御装置１００と同一構成である。従って、以下では、第七実施例の電子制御装置１００について、第一実施例と異なる構成を選択的に説明し、他の説明を省略する。
【０１７７】
図１４（ａ）は、本実施例のダイアグ関連データの構成及び管理態様を示した図である。図１４（ａ）に示すように、本実施例のダイアグ関連データは、故障コード及び当該故障コードの付属情報（例えば、故障の検出日時の情報など）からなるレコードの集合により構成されるものであり、バックアップメモリ１６０及びＲＡＭ１５０には、当該ダイアグ関連データを記憶するための領域（ダイアグ関連データ記憶領域）が予め定められている。尚、ＲＡＭ１５０におけるダイアグ関連データ記憶領域は、第一実施例におけるバックアップ対象データ記憶領域に対応する。
【０１７８】
この電子制御装置１００では、バックアップ制御処理のＳ２１０において、バックアップメモリ１６０の上記ダイアグ関連データ記憶領域に記憶されたバックアップデータ（ダイアグ関連データ）を、ＲＡＭ１５０の上記ダイアグ関連データ記憶領域に書き込むことで、ダイアグ関連データのコピーデータを、ＲＡＭ１５０に記憶させる。
【０１７９】
尚、本実施例のダイアグ関連データは、車両の故障がない限り、レコードが登録されていない空データの状態を採るが、本実施例では、Ｓ２１０において、空データであるか否かに拘わらず、ダイアグ関連データ記憶領域内のデータを、そのままダイアグ関連データとして、ＲＡＭ１５０にコピーする。
【０１８０】
同様に、Ｓ２８０では、ＲＡＭ１５０におけるダイアグ関連データ記憶領域内のデータを、ダイアグ関連データとして、バックアップメモリ１６０のダイアグ関連データ記憶領域に書き込む。このようにして、本実施例では、ダイアグ関連データを読み出し、バックアップする。
【０１８１】
一方、ＣＰＵ１３０は、図５に示す内容の診断記録処理に代えて、図１４（ｂ）に示す診断記録処理を実行する。図１４（ｂ）は、第七実施例において、ＣＰＵ１３０が実行する診断記録処理を表すフローチャートである。
【０１８２】
図１４（ｂ）に示す診断記録処理を開始すると、ＣＰＵ１３０は、この診断記録処理に割り当てられた診断項目についての故障診断を実行する（Ｓ６１０）。この故障診断によって、診断項目に対応する故障が車両に発生している場合には、当該診断項目に対応する故障が検出される。
【０１８３】
そして、診断項目に対応する故障が検出されると、Ｓ６２０でＹｅｓと判断し、Ｓ６３０に移行する。一方、診断項目に対応する故障が検出されなかった場合には、Ｓ６２０でＮｏと判断して、Ｓ６５０に移行する。但し、Ｓ６２０においては、直前のＳ６１０で故障が検出されても、ＲＡＭ１５０のダイアグ関連データ記憶領域に空きがない場合、形式的にＮｏと判断して、Ｓ６５０に移行する。
【０１８４】
Ｓ６３０に移行すると、ＣＰＵ１３０は、ＲＡＭ１５０が記憶する更新フラグをオンに設定する。その後、検出された故障に対応する故障コード及び付属情報からなるレコードを、ＲＡＭ１５０のダイアグ関連データ記憶領域に書き込む（Ｓ６４０）。
【０１８５】
但し、Ｓ６４０では、今回発生した故障と同一故障コードのレコードがダイアグ関連データ記憶領域に既に登録されている場合、この既に登録されているレコードに上書きするようにして、今回発生した故障についてのレコードをダイアグ関連データ記憶領域に書き込む。このようにして、ＣＰＵ１３０は、ＲＡＭ１５０が記憶するダイアグ関連データを更新する。その後、当該診断記録処理を終了する。
【０１８６】
一方、Ｓ６５０に移行した場合には、今回診断した項目に対応する故障コードの消去条件が満足されたか否かを判断する。但し、ここでは、今回診断した項目に対応する故障コードがＲＡＭ１５０のダイアグ関連データ記憶領域に記憶されていない場合、形式的に消去条件が満足されていないと判断する。この他、故障が検出されたにも拘わらず、上述した理由で、Ｓ６５０に移行した場合にも、形式的に、消去条件が満足されていないと判断する。
【０１８７】
一方、今回故障が検出されず、今回診断した項目に対応する故障コードがＲＡＭ１５０のダイアグ関連データ記憶領域に記憶されている場合には、故障が長期に解消していると推定される場合に、故障コードの消去条件が満足されたと判断し、故障の解消が一時的であると推定される場合に、故障コードの消去条件が満足されていないと判断する。
【０１８８】
尚、故障が長期に解消したか否かは、ＲＡＭ１５０が記憶する故障コードに付された付属情報に基づいて判断することができる。例えば、付属情報に故障の検出日時が記録されている場合には、この検出日時から所定時間経過したか否かによって、故障が長期に解消したか否かを判断することができる。
【０１８９】
また、上記付属情報としてトリップ数を記録する場合には、最後に故障が発生してからのトリップ数によって、故障が長期に解消したか否かを判断することができる。尚、トリップ数とは、車両の内燃機関が始動してから停止するまでを１トリップとした回数のことをいう。
【０１９０】
Ｓ６５０において消去条件が満足されていないと判断すると（Ｓ６５０でＮｏ）、ＣＰＵ１３０は、Ｓ６６０及びＳ６７０の処理を実行せずに、当該診断記録処理を終了する。一方、消去条件が満足されたと判断すると（Ｓ６５０でＹｅｓ）、ＲＡＭ１５０が記憶する更新フラグをオンに設定すると共に（Ｓ６６０）、消去条件が満足された故障コード及び付属情報からなるレコードを、ＲＡＭ１５０のダイアグ関連データ記憶領域から消去することで、ダイアグ関連データを更新する（Ｓ６７０）。その後、当該診断記録処理を終了する。
【０１９１】
以上、第七実施例について説明したが、第七実施例の電子制御装置１００においても、第一実施例と同様に、故障コードをバックアップメモリ１６０に適切にバックアップすることができる。
【実施例８】
【０１９２】
続いて、第八実施例について説明する。但し、第八実施例の電子制御装置１００は、バックアップ制御処理の一部が、第一実施例の電子制御装置１００と異なる程度であるので、以下では、第八実施例の電子制御装置１００の説明として、第一実施例の電子制御装置１００とは異なる構成を、選択的に説明する。
【０１９３】
図１５（ａ）は、第八実施例において、ＣＰＵ１３０が実行するバックアップ制御処理を表すフローチャートである。図１５（ａ）では、図６に示すバックアップ制御処理と同内容のステップに、同一ステップ番号を付す。
【０１９４】
図１５（ａ）に示すように、本実施例のバックアップ制御処理では、第一実施例と同様にＳ２１０の処理を実行した後、Ｓ２１９の処理を実行する。その後、Ｓ２２０に移行して、後続の処理を、第一実施例と同様に実行する。
【０１９５】
Ｓ２１９では、入力回路１１０を通じて入力される外気温を計測する外気温センサからの信号（計測結果を表す信号）に基づき、外気温を特定する。そして、特定した外気温に基づいて、Ｓ２７０での判断に用いる閾値を設定する。具体的には、ＲＯＭ１４０に記録された「設定すべき閾値と外気温との関係」に従って、図１５（ｂ）に示すように、外気温が低い程、閾値を大きい値に設定する。
【０１９６】
尚、図１５（ｂ）は、上記「設定すべき閾値と外気温との関係」を表すグラフである。設定すべき閾値と外気温との関係は、実験により定められ、マップ若しくは関数の形態でＲＯＭ１４０に記録される。
【０１９７】
但し、ここで閾値を外気温に基づいて設定する目的は、内燃機関の始動直後に実行する故障診断において更新フラグがオンにされた場合であって、その後、新規データのＲＡＭ１５０への書込がなくタイマがゼロクリアされることがない場合でも、一通りの故障診断が終了するまでは、タイマ値が閾値を超えないようにするためである。従って、実験では、この目的が大凡適うようにして、閾値の適値を求める。
【０１９８】
このように構成された本実施例の電子制御装置１００によれば、一通りの故障診断が終了するまでは、ダイアグ関連データのバックアップ動作が行われないようにすることができるので、バックアップメモリ１６０への書込回数を減らすことができて、効率的にダイアグ関連データをバックアップすることができる。
【図面の簡単な説明】
【０１９９】
【図１】電子制御装置１００の構成を表すブロック図である。
【図２】故障診断の実行態様及びダイアグ関連データの更新態様を表すグラフである。
【図３】ダイアグ関連データの構成及び管理方法を表す説明図である。
【図４】ダイアグ関連データのバックアップ手法を説明したブロック図である。
【図５】ＣＰＵ１３０が実行する診断記録処理を表すフローチャートである。
【図６】ＣＰＵ１３０が実行するバックアップ制御処理を表すフローチャートである。
【図７】第二実施例におけるＣＰＵ１３０の構成を表すブロック図（ａ）及びＣＰＵ１３０が備えるタイマ１３１におけるタイマ値の変化の態様を表すグラフ（ｂ）である。
【図８】第二実施例においてＣＰＵ１３０が実行する処理を表すフローチャートである。
【図９】第三実施例のバックアップ制御処理を表すフローチャートである。
【図１０】第四実施例のバックアップ制御処理を表すフローチャートである。
【図１１】第五実施例のＲＡＭ１５０におけるデータ管理態様を表す説明図（ａ）及び診断記録処理を表すフローチャート（ｂ）である。
【図１２】第六実施例のＲＡＭ１５０におけるデータ管理態様を表す説明図である。
【図１３】第六実施例においてＣＰＵ１３０が実行する学習記録処理を表すフローチャートである。
【図１４】第七実施例におけるダイアグ関連データの構成及び管理方法を表す説明図である。
【図１５】第八実施例のバックアップ制御処理を表すフローチャートである。
【符号の説明】
【０２００】
１００…電子制御装置、１１０…入力回路、１２０…出力回路、１３０…ＣＰＵ、１３１…タイマ、１３３…メモリアクセス監視回路、１３５…割込コントローラ、１４０…ＲＯＭ、１５０…ＲＡＭ、１６０…バックアップメモリ、１７０…通信回路、２００…センサ類、３００…アクチュエータ類、４００…バッテリ、５００…テスタ、ＳＷ…キースイッチ
【図１】
0004636118.tif 000002
【図２】
0004636118.tif 000003
【図３】
0004636118.tif 000004
【図４】
0004636118.tif 000005
【図５】
0004636118.tif 000006
【図６】
0004636118.tif 000007
【図７】
0004636118.tif 000008
【図８】
0004636118.tif 000009
【図９】
0004636118.tif 000010
【図１０】
0004636118.tif 000011
【図１１】
0004636118.tif 000012
【図１２】
0004636118.tif 000013
【図１３】
0004636118.tif 000014
【図１４】
0004636118.tif 000015
【図１５】
0004636118.tif 000016