(57)【特許請求の範囲】
【請求項１】
車両に搭載されたバッテリから常時給電されるスタンバイＲＡＭを用いて、前記車両内の制御対象を制御するための制御処理を行うと共に、該制御処理によって算出される前記スタンバイＲＡＭ内の特定のデータを電気的にデータの書き換えが可能な不揮発性の書換可能ＲＯＭにコピーして保存する保存処理を行い、更に、前記スタンバイＲＡＭ内のデータが異常であると判定した場合には、前記書換可能ＲＯＭ内の前記特定のデータを前記スタンバイＲＡＭへコピーすることにより、前記特定のデータを復元するように構成された車両用制御装置において、
少なくとも当該装置が動作を開始して前記制御処理を開始する前に実行される処理であって、前記スタンバイＲＡＭ内のデータが異常か否かを判定し、異常であると判定した場合には、データの書き換えが不能な不揮発性の書換不能ＲＯＭから前記スタンバイＲＡＭへ初期値データを書き込んで該スタンバイＲＡＭ内のデータを正常化させる初期化を行い、更に、前記書換可能ＲＯＭから前記スタンバイＲＡＭへのデータコピーが完了しているか否かを示す前記スタンバイＲＡＭの所定領域内の履歴データを、未完了を示す内容に設定する第１の処理と、
前記制御処理と並行して定期的に実行される処理であって、前記スタンバイＲＡＭ内のデータが正常で且つ前記履歴データが未完了を示す内容であるか否かを判定し、該判定により肯定判定すると、更に、前記スタンバイＲＡＭに供給されている電圧がデータの書き込みを正常に行うことが可能な電圧値であるか否かを判定して、該電圧判定により肯定判定した場合に、前記書換可能ＲＯＭ内の前記特定のデータを前記スタンバイＲＡＭへコピーすると共に、前記履歴データを、前記書換可能ＲＯＭから前記スタンバイＲＡＭへのデータコピーが完了したことを示す内容に設定し直す第２の処理とを行い、
更に、前記保存処理では、前記スタンバイＲＡＭ内のデータが正常で且つ前記履歴データが前記書換可能ＲＯＭから前記スタンバイＲＡＭへのデータコピーが完了したことを示す内容に設定されているか否かを判定し、該判定により肯定判定した場合にのみ、前記スタンバイＲＡＭ内の前記特定のデータを前記書換可能ＲＯＭにコピーすること、
を特徴とする車両用制御装置。
【請求項２】
請求項１に記載の車両用制御装置において、
前記制御処理では、前記履歴データが前記書換可能ＲＯＭから前記スタンバイＲＡＭへのデータコピーが完了したことを示す内容に設定されている場合にのみ、前記スタンバイＲＡＭ内の前記特定のデータを更新すること、
を特徴とする車両用制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、車両内の制御対象を制御する車両用制御装置に関し、特に、制御処理に用いるデータのうち、恒久的に更新して保存しておく必要がある特定のデータを、ＥＥＰＲＯＭやフラッシュＲＯＭ等、電気的にデータの書き換えが可能な不揮発性の書換可能ＲＯＭに保存するようにした車両用制御装置に関する。
【０００２】
【従来の技術】
従来より、この種の車両用制御装置として、例えば特開平１０−２５２５４６号公報及び特開平１０−２５２５４７号公報や特開平４−３３６３５１号公報に記載されているように、車両に搭載されたバッテリから常時給電されるスタンバイＲＡＭ（バックアップＲＡＭとも呼ばれる）を用いて、車両内の制御対象を制御するための制御処理を行うと共に、その制御処理により算出されるスタンバイＲＡＭ内のデータのうちで、学習値や車両の累積走行距離データなど、恒久的に更新して保存しておく必要がある特定のデータを、電気的にデータの書き換えが可能な不揮発性の書換可能ＲＯＭにコピーして保存する保存処理を行い、更に、バッテリ外れ等によってスタンバイＲＡＭ内のデータが異常になっていることを検出した場合には、書換可能ＲＯＭ内の上記特定のデータをスタンバイＲＡＭへコピーして、その特定のデータを復元するようにしたものがある。
【０００３】
そして、上記従来の車両用制御装置では、制御処理と並行して上記保存処理（スタンバイＲＡＭ内の特定のデータを書換可能ＲＯＭにコピーする処理）を行い、また、当該装置が動作を開始してから制御処理に先立ち最初に実行される処理にて、スタンバイＲＡＭ内のデータの良否をパリティチェックやミラーリング等の手法によってチェックし、スタンバイＲＡＭ内のデータが異常であると判定した場合には、書換可能ＲＯＭ内の特定のデータをスタンバイＲＡＭへコピーして、その後、スタンバイＲＡＭを用いた制御処理を開始するようにしている。尚、ミラーリングとは、同じデータを記憶媒体の異なる領域に夫々記憶させておき、その各領域のデータが同じ値であれば、正常と判定するものである。
【０００４】
このため、バッテリの電圧低下やバッテリ外れ等によってスタンバイＲＡＭ内のデータが破壊されたとしても、上記保存処理によって書換可能ＲＯＭ内にバックアップされていた特定のデータ（バックアップデータ）がスタンバイＲＡＭに転送されて、それまでの経緯を継承した制御処理を行うことができるようになる。
【０００５】
【発明が解決しようとする課題】
しかしながら、上記従来の車両用制御装置では、以下の問題がある。
まず、一般に、この種の装置において、書換可能ＲＯＭとしては、シリアルデータラインを介してデータの読み出し及び書き込みが行われるＥＥＰＲＯＭが用いられるが、このような書換可能ＲＯＭは、ＲＡＭやデータの書き換えが不能な通常のＲＯＭ（書換不能ＲＯＭ）と比較すると、データの読み出し及び書き込みに時間がかかる。
【０００６】
そして、上記従来の装置では、動作を開始してから制御処理に先立ち最初に実行される処理にて、書換可能ＲＯＭ内のデータをスタンバイＲＡＭへコピーし、その後、制御処理を開始するようにしている。
このため、上記従来の装置では、バッテリ外れ等によってスタンバイＲＡＭ内のデータが破壊された状態で動作を開始した場合に、制御処理が開始されるまでの遅れ時間が長くなってしまい、その結果、制御対象を作動させることができるようになるまでの時間が通常時よりも長くなってしまう。
【０００７】
そこで、本発明者は、動作を開始してから制御処理に先立ち最初に実行される処理Ａにて、スタンバイＲＡＭ内のデータが異常であると判定した場合には、とりあえず、通常の書換不能ＲＯＭからスタンバイＲＡＭへ制御対象の制御に支障を来さない固定の初期値データを書き込んで該スタンバイＲＡＭ内のデータを正常化させる初期化だけを行い、その後、制御処理と並行して定期的に実行される処理Ｂにて、上記処理ＡによりスタンバイＲＡＭの上記初期化が行われたか否かを判定し、その判定により肯定判定すると、書換可能ＲＯＭ内の特定のデータをスタンバイＲＡＭへコピーする、といったプログラム構成を考えた。
【０００８】
つまり、スタンバイＲＡＭ内のデータが異常であった場合には、とりあえず、制御対象の制御に最低限必要な初期値データをスタンバイＲＡＭに書き込んで制御処理を開始させ、その後で、書換可能ＲＯＭ内の本来のバックアップデータをスタンバイＲＡＭへコピーするようにし、これにより、動作を開始してから制御処理を開始するまでの遅れ時間及び制御対象を作動させることができるようになるまでの時間を最小限にするのである。
【０００９】
しかしながら、本発明者は、上記構成を採ったとしても、更に以下の問題があることに気付いた。
即ち、書換可能ＲＯＭ内にバックアップされているデータを確実にスタンバイＲＡＭへコピーして制御処理に反映させるためには、上記処理Ｂにおいて、書換可能ＲＯＭ内のデータをスタンバイＲＡＭへコピーしようとする場合、まず、スタンバイＲＡＭに供給されている電圧がデータの書き込みを正常に行うことが可能な電圧値であるか否かを判定し、その電圧判定により肯定判定した場合にのみ、書換可能ＲＯＭ内のデータをスタンバイＲＡＭへコピーする、といった手順を踏む必要がある。
【００１０】
ところが、この種の装置において、スタンバイＲＡＭ内の特定のデータを書換可能ＲＯＭにコピーする保存処理は、制御処理と並行して行われるため、上記処理ＡでスタンバイＲＡＭの上記初期化が行われた後に、上記処理Ｂにおける電圧判定で否定判定され続けた場合には、書換可能ＲＯＭからスタンバイＲＡＭへのデータコピー（本来のバックアップデータのコピー）が完了する前に、上記保存処理によってスタンバイＲＡＭ内のデータが書換可能ＲＯＭにコピーされてしまう可能性がある。
【００１１】
そして、このような事態が起こると、それまでの経緯を継承していないスタンバイＲＡＭ内のデータが、書換可能ＲＯＭへコピーされてしまうこととなり、その結果、データを復元させるための最後の砦である書換可能ＲＯＭ内の本来のバックアップデータを失ってしまうこととなる。
【００１２】
本発明は、こうした問題に鑑みなされたものであり、動作を開始してから制御処理を開始するまでの遅れ時間を最小限にすることができると共に、制御処理で用いるデータの保存及び復元を確実に行うことができる車両用制御装置を提供することを目的としている。
【００１３】
【課題を解決するための手段、及び発明の効果】
上記目的を達成するためになされた本発明の車両用制御装置は、車両に搭載されたバッテリから常時給電されるスタンバイＲＡＭを用いて、車両内の制御対象を制御するための制御処理を行うと共に、その制御処理によって算出される前記スタンバイＲＡＭ内の特定のデータを電気的にデータの書き換えが可能な不揮発性の書換可能ＲＯＭにコピーして保存する保存処理を行い、更に、スタンバイＲＡＭ内のデータが異常であると判定した場合には、書換可能ＲＯＭ内の前記特定のデータをスタンバイＲＡＭへコピーすることにより、前記特定のデータを復元するものである。
【００１４】
ここで特に、本発明の車両用制御装置においては、以下に説明する第１の処理と第２の処理とを行うと共に、上記保存処理が以下のように行われる。
まず、第１の処理は、少なくとも当該装置が動作を開始して前記制御処理を開始する前に実行される。そして、この第１の処理では、スタンバイＲＡＭ内のデータが異常か否かを判定し、異常であると判定した場合には、データの書き換えが不能な不揮発性の書換不能ＲＯＭ（通常のＲＯＭ）からスタンバイＲＡＭへ初期値データを書き込んで該スタンバイＲＡＭ内のデータを正常化させる初期化を行い、更に、前記書換可能ＲＯＭからスタンバイＲＡＭへのデータコピーが完了しているか否かを示すスタンバイＲＡＭの所定領域内の履歴データを、未完了を示す内容に設定する。
【００１５】
また、第２の処理は、前記制御処理と並行して定期的に実行される。そして、この第２の処理では、スタンバイＲＡＭ内のデータが正常で且つ前記履歴データが未完了を示す内容であるか否かを判定し、該判定により肯定判定すると、前記第１の処理によりスタンバイＲＡＭの上記初期化が行われたと判断して、更に、スタンバイＲＡＭに供給されている電圧がデータの書き込みを正常に行うことが可能な電圧値であるか否かを判定し、その電圧判定により肯定判定した場合に、書換可能ＲＯＭ内の前記特定のデータをスタンバイＲＡＭへコピーすると共に、前記履歴データを、前記書換可能ＲＯＭからスタンバイＲＡＭへのデータコピーが完了したことを示す内容に設定し直す。
【００１６】
そして、保存処理では、スタンバイＲＡＭ内のデータが正常で且つ前記履歴データが書換可能ＲＯＭからスタンバイＲＡＭへのデータコピーが完了したことを示す内容に設定されているか否かを判定し、該判定により肯定判定した場合にのみ、スタンバイＲＡＭ内の前記特定のデータを書換可能ＲＯＭにコピーする。
【００１７】
つまり、本発明の車両用制御装置では、少なくとも動作開始直後に制御処理に先立って実行される第１の処理にて、スタンバイＲＡＭ内のデータが異常であると判定した場合には、とりあえず、通常の書換不能ＲＯＭからスタンバイＲＡＭへ制御対象の制御に最低限必要な初期値データを書き込んで該スタンバイＲＡＭ内のデータを正常化させる初期化だけを行うと共に、書換可能ＲＯＭからスタンバイＲＡＭへのデータコピー（即ち、書換可能ＲＯＭ内の特定のデータをスタンバイＲＡＭへコピーすることであり、特定のデータの復元である）が完了しているか否かを示すスタンバイＲＡＭ内の履歴データを、未完了を示す内容に設定するようにしている。
【００１８】
そして、その後、制御処理と並行して定期的に実行される第２の処理にて、スタンバイＲＡＭ内のデータが正常で且つ前記履歴データが未完了を示す内容であると肯定判定すると、上記第１の処理によりスタンバイＲＡＭの上記初期化が行われたと判断し、スタンバイＲＡＭに供給されている電圧がデータの書き込みを正常に行うことが可能な電圧値であることを確認した上で、書換可能ＲＯＭ内の特定のデータをスタンバイＲＡＭへコピーすると共に、スタンバイＲＡＭ内の前記履歴データを、書換可能ＲＯＭからスタンバイＲＡＭへのデータコピーが完了したことを示す内容に設定し直すようにしている。
【００１９】
このため、本発明の車両用制御装置によれば、スタンバイＲＡＭ内のデータが異常であった場合には、とりあえず書換不能ＲＯＭ内の初期値データをスタンバイＲＡＭに書き込んで制御処理を開始させ、その後で、書換可能ＲＯＭ内の本来のバックアップデータをスタンバイＲＡＭへコピーすることとなる。よって、バッテリ外れ等によってスタンバイＲＡＭ内のデータが破壊された状態で動作を開始した場合でも、制御処理が開始されるまでの遅れ時間が長くならず、制御対象を作動させるまでの時間を最小限にすることができる。
【００２０】
しかも、本発明の車両用制御装置では、第１の処理にて、スタンバイＲＡＭ内のデータが異常と判定して上記初期化を行った際に、スタンバイＲＡＭ内の履歴データを未完了を示す内容に設定し、第２の処理にて、書換可能ＲＯＭ内の特定のデータをスタンバイＲＡＭへコピーした際に（データの復元が完了した時に）、上記履歴データを完了を示す内容に設定し直し、更に、保存処理では、スタンバイＲＡＭ内のデータが正常で且つ上記履歴データが完了を示す内容に設定されている場合にのみ、スタンバイＲＡＭ内の特定のデータを書換可能ＲＯＭにコピーするようにしている。
【００２１】
このため、仮に、第１の処理でスタンバイＲＡＭの上記初期化が行われた後に、第２の処理における電圧判定で否定判定されて、書換可能ＲＯＭからスタンバイＲＡＭへのデータコピーが完了していない状況が発生しても、その状況下において、保存処理によりスタンバイＲＡＭ内のデータが書換可能ＲＯＭにコピーされてしまうことが確実に防止される。
【００２２】
つまり、バッテリ外れ等によってスタンバイＲＡＭ内のデータが異常となった場合には、「第１の処理によるスタンバイＲＡＭの初期化」→「第２の処理による書換可能ＲＯＭからスタンバイＲＡＭへのデータコピー」→「保存処理によるスタンバイＲＡＭから書換可能ＲＯＭへのデータコピー」というデータ転送順序が確実に守られることとなり、書換可能ＲＯＭ内の本来のバックアップデータを失ってしまうことが確実に防止されるのである。
【００２３】
よって、本発明の車両用制御装置によれば、「発明が解決しようとする課題」で述べた全ての問題を解決して、動作を開始してから制御処理を開始するまでの遅れ時間を最小限にすることができると共に、制御処理で用いるデータの保存及び復元を確実に行うことができるようになる。
【００２４】
また更に、本発明の車両用制御装置によれば、上記履歴データをスタンバイＲＡＭ内に格納しているため、例えば仮に、第１の処理で上記初期化が行われてから、第２の処理で書換可能ＲＯＭからスタンバイＲＡＭへのデータコピーが行われるまでの間に、当該装置への動作電圧が遮断されたとしても、次回に動作電圧が供給されて当該装置が動作を開始した際に、第２の処理によって書換可能ＲＯＭからスタンバイＲＡＭへのデータコピーを確実に行うことができると共に、その第２の処理によるデータコピーが完了するまでは、保存処理によってスタンバイＲＡＭから書換可能ＲＯＭへデータがコピーされてしまうことが無い。
【００２５】
よって、当該装置への動作電圧が断続されても、上記データ転送順序を常に確実に守ることができ、データの保存及び復元を確実に行うことができる。
尚、本発明の車両用制御装置において、通常時には、スタンバイＲＡＭ内のデータが正常であると共に、スタンバイＲＡＭ内の上記履歴データが完了を示す内容に設定されているため、第１の処理では上記初期化が行われず、また、第２の処理では、書換可能ＲＯＭからスタンバイＲＡＭへのデータコピーが行われない。そして、制御処理と並行して行われる保存処理により、スタンバイＲＡＭ内の特定のデータが書換可能ＲＯＭにコピーされて、スタンバイＲＡＭ内のデータが破壊された場合に備えることとなる。
【００２６】
次に、請求項２に記載の車両用制御装置では、上記請求項１の車両用制御装置において、前記制御処理では、前記履歴データが書換可能ＲＯＭからスタンバイＲＡＭへのデータコピーが完了したことを示す内容に設定されている場合にのみ、スタンバイＲＡＭ内の前記特定のデータを更新する。
【００２７】
つまり、履歴データが完了を示す内容に設定されていない場合には、書換可能ＲＯＭからスタンバイＲＡＭへ、それまでの経緯を継承した本来のデータが未だコピーされていないため、その時点でスタンバイＲＡＭ内の特定のデータを制御処理によって更新しても意味が無いためである。そして、このような請求項２の車両用制御装置によれば、制御処理を効率的に進めることができ有利である。
【００２８】
【発明の実施の形態】
以下、本発明の実施形態について図面を用いて説明する。
まず、図１は、車両に搭載されたエンジンを制御する実施形態の車両用制御装置（以下、ＥＣＵという）１の構成を表わすブロック図である。
【００２９】
図１に示すように、本実施形態のＥＣＵ１は、エンジンを制御するための様々な処理を実行するＣＰＵ３、ＣＰＵ３により実行されるプログラムや該プログラムの実行時に参照されるデータが格納されたＲＯＭ５、ＣＰＵ３による演算結果を記憶するＲＡＭ６とスタンバイＲＡＭ（以下、Ｓ−ＲＡＭと記す）７、及び入出力インターフェース（Ｉ／Ｏ）９などを内蔵したマイクロコンピュータ（以下、マイコンという）１１と、電気的にデータの書き換えが可能な不揮発性の書換可能ＲＯＭとしてのＥＥＰＲＯＭ１３とを備えている。そして、マイコン１１とＥＥＰＲＯＭ１３は、シリアルデータライン１５を介してデータ転送可能に接続されている。
【００３０】
尚、ＲＡＭ６とＳ−ＲＡＭ７とのうち、Ｓ−ＲＡＭ７の方には、車両に搭載されたバッテリ２７から常時給電される。また、ＲＯＭ５は、データの書き換えが不能な不揮発性の読出専用メモリである。
そして更に、ＥＣＵ１は、車両の走行速度（車速）を検出する車速センサ１７や、エンジンの回転数を検出する回転センサ１９などの各種センサからの信号を、マイコン１１へ入力させると共に、マイコン１１から出力される制御信号に応じて、インジェクタ２１やイグナイタ２３などのアクチュエータを駆動する入出力回路２５と、バッテリ２７から車両のイグニッションスイッチ２９を介して供給されるイグニッション電圧ＶＩＧを受けて、マイコン１１やＥＥＰＲＯＭ１３等へ動作電圧ＶＤ  を供給するメイン電源回路３１と、バッテリ２７からイグニッションスイッチ２９を介さずに直接供給されるバッテリ電圧ＶＢＢを受けて、マイコン１１内のＳ−ＲＡＭ７へデータ保持用のスタンバイ電圧ＶＳ  を供給するサブ電源回路３３とを備えている。
【００３１】
このようなＥＣＵ１においては、イグニッションスイッチ２９がオンされると、メイン電源回路３１からマイコン１１やＥＥＰＲＯＭ１３等に動作電圧ＶＤ  が供給される。そして、マイコン１１のＣＰＵ３が、ＲＯＭ５に格納されたプログラムに従いエンジンを制御するための制御処理を実行して、各種センサからのセンサ信号に基づき上記アクチュエータを作動させることにより、エンジンの制御を行う。
【００３２】
ここで、マイコン１１のＣＰＵ３は、Ｓ−ＲＡＭ７を用いて制御処理を行うと共に、その制御処理で算出するＳ−ＲＡＭ７内の各種制御用データのうち、制御上の学習値データや車両の累積走行距離データなど、恒久的に更新して保存しておく必要がある特定のデータ（以下、保存対象データという）については、ＥＥＰＲＯＭ１３にもコピーして保存するようにしている。そして、Ｓ−ＲＡＭ７内のデータが異常であると判定した場合には、ＥＥＰＲＯＭ１３内の保存対象データをＳ−ＲＡＭ７へコピーすることにより、バッテリ２７が車両から外される等してＳ−ＲＡＭ７内のデータが破壊されたとしても、その保存対象データを失わないようにしている。また、ＲＯＭ５には、上記保存対象データを含む各種制御用データの初期値（固定の初期値データに相当）が予め格納されている。
【００３３】
そこで次に、このようなＥＣＵ１のマイコン１１で実行される処理について、図２及び図３のフローチャートに沿って説明する。
まず、マイコン１１のＣＰＵ３は、イグニッションスイッチ２９のオンに伴い動作を開始（イニシャルスタート）すると、制御処理を開始する前に、図２（Ａ）に示す第１の処理を実行する。尚、本実施形態において、この第１の処理は、こうしたイニシャル時（即ち、ＥＣＵ１の動作開始時）に実行されるだけではなく、その後は、一定時間毎（本実施形態では６５ｍｓ毎）に繰り返し実行される。
【００３４】
そして、図２（Ａ）に示すように、この第１の処理の実行を開始すると、まずステップ（以下「Ｓ」と記す）１１０にて、Ｓ−ＲＡＭ７内のデータが異常であるか否かをパリティチェックやミラーリング等の手法によってチェックし、Ｓ−ＲＡＭ７内のデータが異常ではない（即ち正常である）と判定した場合には、そのまま当該第１の処理を終了して、Ｓ−ＲＡＭ７を用いた制御処理を開始する。
【００３５】
これに対し、上記Ｓ１１０にて、Ｓ−ＲＡＭ７内のデータが異常であると判定した場合には、Ｓ１２０に進んで、Ｓ−ＲＡＭ７内のデータ状態を示すＳ−ＲＡＭ状態変数を、“異常”を示す内容に設定する。尚、このＳ−ＲＡＭ状態変数は、ＲＡＭ６の所定領域に格納されているデータであり、その初期値は、ＲＡＭ６に対するイニシャル処理（図示省略）によって“正常”に設定されている。
【００３６】
次に、続くＳ１３０にて、サブ電源回路３３からＳ−ＲＡＭ７に供給されているスタンバイ電圧ＶＳ  がＳ−ＲＡＭ７へのデータ書き込みを正常に行うことが可能な正常電圧値であるか否かを判定し、正常電圧値であれば、Ｓ−ＲＡＭ７への書込禁止状態ではないと判断して、Ｓ１４０に進む。
【００３７】
そして、このＳ１４０にて、ＲＯＭ５からＳ−ＲＡＭ７へ各種制御用データの初期値（初期値データ）を書き込んでＳ−ＲＡＭ７内のデータを正常化させる初期化を行い、続くＳ１５０にて、ＥＥＰＲＯＭ１３からＳ−ＲＡＭ７への保存対象データのコピーが完了しているか否かを示す履歴データＤＲを、“未完了”を示す内容に設定する。尚、この履歴データＤＲは、Ｓ−ＲＡＭ７の所定領域に格納されているデータである。
【００３８】
そして更に、続くＳ１６０にて、上記Ｓ−ＲＡＭ状態変数を、“正常”を示す内容に設定し直し、その後、当該第１の処理を終了する。
また、上記Ｓ１３０にて、Ｓ−ＲＡＭ７への書込禁止状態であると判断した場合（つまり、スタンバイ電圧ＶＳ  が正常電圧値ではないと判定した場合）には、そのまま当該第１の処理を一旦終了する。そして、この場合には、当該第１の処理が次に実行された時に、上記Ｓ１１０でＳ−ＲＡＭ７内のデータが異常であると再び判定されて、Ｓ１２０以降の処理が再度行われることとなる。
【００３９】
次に、マイコン１１のＣＰＵ３は、イニシャル時に上記第１の処理を行ってから制御処理の実行を開始することとなるが、その制御処理と並行して、図２（Ｂ）に示す第２の処理と図２（Ｃ）に示す保存処理とを、一定時間毎（本実施形態では１６ｍｓ毎）に繰り返し実行する。尚、保存処理は、Ｓ−ＲＡＭ７内の保存対象データをＥＥＰＲＯＭ１３にコピーして保存するための処理であるが、その実質的な保存用の処理は、後述する保存条件が成立した場合にのみ行われる。
【００４０】
まず、図２（Ｂ）に示すように、ＣＰＵ３が第２の処理の実行を開始すると、最初のＳ２１０にて、ＲＡＭ６内のＳ−ＲＡＭ状態変数を参照することにより、Ｓ−ＲＡＭ７内のデータが正常であるか否かを判定する。そして、Ｓ−ＲＡＭ状態変数が“正常”を示す内容に設定されていれば、Ｓ−ＲＡＭ７内のデータが正常であると判断して、Ｓ２２０に進み、今度は、Ｓ−ＲＡＭ７内の上記履歴データＤＲが“未完了”を示す内容に設定されているか否かを判定する。
【００４１】
このＳ２２０にて履歴データＤＲが“未完了”を示す内容に設定されていると判定した場合には、前述した第１の処理によってＳ−ＲＡＭ７の初期化が行われたと判断して、Ｓ２３０に進む。
Ｓ２３０では、第１の処理におけるＳ１３０と同様に、スタンバイ電圧ＶＳ  がＳ−ＲＡＭ７へのデータ書き込みを正常に行うことが可能な正常電圧値であるか否かを判定し、正常電圧値であれば、Ｓ−ＲＡＭ７への書込禁止状態ではないと判断して、Ｓ２４０に進む。そして、このＳ２４０にて、ＥＥＰＲＯＭ１３内の保存対象データをＳ−ＲＡＭ７へコピーし、続くＳ２５０にて、Ｓ−ＲＡＭ７内の上記履歴データＤＲを、“完了”を示す内容（即ち、ＥＥＰＲＯＭ１３からＳ−ＲＡＭ７へのデータコピーが完了したことを示す内容）に設定し直す。そして、その後、当該第２の処理を終了する。
【００４２】
また、Ｓ２１０にて、Ｓ−ＲＡＭ７内のデータが正常ではないと判定した場合（即ち、Ｓ−ＲＡＭ状態変数が“異常”を示す内容に設定されていた場合）、或いは、Ｓ２２０にて、上記履歴データＤＲが“未完了”を示す内容に設定されていないと判定した場合、或いは、Ｓ２３０にて、Ｓ−ＲＡＭ７への書込禁止状態であると判断した場合（即ち、スタンバイ電圧ＶＳ  が正常電圧値ではないと否定判定した場合）には、そのまま当該第２の処理を一旦終了する。
【００４３】
次に、図２（Ｃ）に示すように、ＣＰＵ３が保存処理の実行を開始すると、まず最初のＳ３０５にて、保存条件が成立しているか否かを判定する。
この保存条件は、ＥＥＰＲＯＭ１３へのデータ書き込み回数を減らすために設けられている条件であり、本実施形態では、例えば下記▲１▼及び▲２▼の条件が共に満たされている場合に、保存条件が成立していると判定する。
【００４４】
▲１▼：当該ＥＣＵ１が継続して動作している期間中に、車速が２０ｋｍ／ｈ以上でエンジン回転数が２０００ｒｐｍ以上という運転状態があった。
▲２▼：当該ＥＣＵ１が継続して動作している期間中に、後述するＳ３３０の処理によってＳ−ＲＡＭ７内の保存対象データがＥＥＰＲＯＭ１３に未だ１回もコピーされていない。
【００４５】
つまり、本実施形態では、当該ＥＣＵ１が継続して動作している期間中に、上記▲１▼の条件が成立すると、１回だけＳ−ＲＡＭ７内の保存対象データをＥＥＰＲＯＭ１３へコピーするようにしており、これにより、ＥＥＰＲＯＭ１３へのデータ書き込み回数を必要最小限に抑えている。
【００４６】
そして、Ｓ３０５にて、上記保存条件が成立していないと判定した場合には、そのまま当該保存処理を終了するが、上記保存条件が成立していれば、Ｓ３１０に進んで、ＲＡＭ６内のＳ−ＲＡＭ状態変数を参照することにより、Ｓ−ＲＡＭ７内のデータが正常であるか否かを判定する。
【００４７】
ここで、Ｓ−ＲＡＭ状態変数が“正常”を示す内容に設定されていれば、Ｓ−ＲＡＭ７内のデータが正常であると判断して、Ｓ３２０に進み、今度は、Ｓ−ＲＡＭ７内の上記履歴データＤＲが“完了”を示す内容に設定されているか否かを判定する。
【００４８】
そして、Ｓ３２０にて履歴データＤＲが“完了”を示す内容に設定されていると判定した場合には、Ｓ３３０に進んで、Ｓ−ＲＡＭ７内の保存対象データをＥＥＰＲＯＭ１３にコピーし、その後、当該保存処理を終了する。
また、Ｓ３１０にて、Ｓ−ＲＡＭ７内のデータが正常ではないと判定した場合（即ち、Ｓ−ＲＡＭ状態変数が“異常”を示す内容に設定されていた場合）、或いは、Ｓ３２０にて、上記履歴データＤＲが“完了”を示す内容に設定されていないと判定した場合には、そのまま当該保存処理を終了する。
【００４９】
尚、バッテリ２７のプラス端子とメイン電源回路３１との間に、マイコン１１によって制御されるメインリレーを設け、マイコン１１が、イグニッションスイッチ２９がオフされた後も上記メインリレーをオンさせ続けて動作を継続できるように構成した場合には、上記保存条件として、イグニッションスイッチ２９がオン状態からオフされた、という条件を加えるようにしても良い。つまり、この場合には、通常、イグニッションスイッチ２９がオン状態からオフされて、当該ＥＣＵ１が動作を停止する前に一回だけ、Ｓ−ＲＡＭ７内の保存対象データをＥＥＰＲＯＭ１３にコピーすることとなる。
【００５０】
一方、マイコン１１のＣＰＵ３は、制御処理によってＳ−ＲＡＭ７内の保存対象データを逐次最新の内容へと更新しているが、その制御処理では、Ｓ−ＲＡＭ７内の上記履歴データＤＲを参照して、その履歴データＤＲが“完了”を示す内容に設定されている場合にのみ、Ｓ−ＲＡＭ７内の保存対象データを更新するようにしている。
【００５１】
例えば、図３は、制御処理のうち、車両の走行距離を累積して算出するために一定時間Ｔ毎に実行される走行距離算出処理を表すフローチャートであるが、この処理では、まずＳ４１０にて、その時の車速から一定時間Ｔ内の走行距離Δを算出し、続くＳ４２０にて、Ｓ−ＲＡＭ７内の上記履歴データＤＲが“完了”を示す内容に設定されているか否かを判定する。そして、履歴データＤＲが“完了”を示す内容に設定されている場合にのみ、次のＳ４３０に進んで、Ｓ−ＲＡＭ７内の累積走行距離データに上記Ｓ４１０で算出した走行距離Δを加算して、その累積走行距離データを更新する。
【００５２】
以上のように、本実施形態のＥＣＵ１では、少なくとも動作開始直後に制御処理に先立って実行される第１の処理にて、Ｓ−ＲＡＭ７内のデータが異常であるか否かを判定し（Ｓ１１０）、異常と判定した場合には（Ｓ１１０：ＹＥＳ）、とりあえず、通常のＲＯＭ５からＳ−ＲＡＭ７へ各種制御用データの初期値を書き込んで該Ｓ−ＲＡＭ７内のデータを正常化させる初期化だけを行うと共に（Ｓ１４０）、ＥＥＰＲＯＭ１３からＳ−ＲＡＭ７への保存対象データのコピーが完了しているか否かを示すＳ−ＲＡＭ７内の履歴データＤＲを、“未完了”を示す内容に設定するようにしている（Ｓ１５０）。
【００５３】
そして、その後、制御処理と並行して定期的に実行される第２の処理にて、Ｓ−ＲＡＭ７内のデータが正常で且つ上記履歴データＤＲが“未完了”を示す内容であると肯定判定すると（Ｓ２１０及びＳ２２０：ＹＥＳ）、上記第１の処理によってＳ−ＲＡＭ７の上記初期化が行われたと判断し、Ｓ−ＲＡＭ７に供給されているスタンバイ電圧ＶＳ  が正常電圧値であることを確認した上で（Ｓ２３０：ＮＯ）、ＥＥＰＲＯＭ１３内の保存対象データをＳ−ＲＡＭ７へコピーすると共に（Ｓ２４０）、Ｓ−ＲＡＭ７内の上記履歴データＤＲを、“完了”を示す内容に設定し直すようにしている（Ｓ２５０）。
【００５４】
このため、本実施形態のＥＣＵ１によれば、Ｓ−ＲＡＭ７内のデータが異常であった場合には、とりあえず固定の初期値データをＳ−ＲＡＭ７に書き込んで制御処理を開始させ、その後で、ＥＥＰＲＯＭ１３内の本来のバックアップデータをＳ−ＲＡＭ７へコピーすることとなる。よって、バッテリ外れ等によってＳ−ＲＡＭ７内のデータが破壊された状態で動作を開始した場合でも、制御処理が開始されるまでの遅れ時間が長くならず、制御対象を作動させるまでの時間を最小限にすることができる。
【００５５】
しかも、本実施形態のＥＣＵ１では、第１の処理にて、Ｓ−ＲＡＭ７内のデータが異常と判定して上記初期化を行った際に、Ｓ−ＲＡＭ７内の履歴データＤＲを“未完了”を示す内容に設定し（Ｓ１５０）、第２の処理にて、ＥＥＰＲＯＭ内の保存対象データをＳ−ＲＡＭ７へコピーした際に（データの復元が完了した時に）、上記履歴データＤＲを“完了”を示す内容に設定し直し（Ｓ２５０）、更に、定期的に実行される保存処理では、Ｓ−ＲＡＭ７内のデータが正常で且つ上記履歴データＤＲが“完了”を示す内容に設定されている場合にのみ（Ｓ３１０及びＳ３２０：ＹＥＳ）、Ｓ−ＲＡＭ７内の保存対象データをＥＥＰＲＯＭ１３にコピーするようにしている（Ｓ３３０）。
【００５６】
このため、仮に、第１の処理におけるＳ１４０でＳ−ＲＡＭ７の初期化が行われた後に、第２の処理におけるＳ２３０の電圧判定でスタンバイ電圧ＶＳ  が正常電圧値ではないと否定判定されて（書込禁止状態であると判定されて）、ＥＥＰＲＯＭ１３からＳ−ＲＡＭ７へのデータコピーが完了していない状況が発生しても、その状況下において、保存処理によりＳ−ＲＡＭ７内のデータがＥＥＰＲＯＭ１３にコピーされてしまうことが、確実に防止される。
【００５７】
つまり、バッテリ外れ等によってＳ−ＲＡＭ７内のデータが異常となった場合には、「第１の処理によるＳ−ＲＡＭ７の初期化」→「第２の処理によるＥＥＰＲＯＭ１３からＳ−ＲＡＭ７へのデータコピー」→「保存処理によるＳ−ＲＡＭ７からＥＥＰＲＯＭ１３へのデータコピー」というデータ転送順序が確実に守られることとなり、ＥＥＰＲＯＭ１３内の本来のバックアップデータを失ってしまうことが確実に防止されるのである。
【００５８】
よって、本実施形態のＥＣＵ１によれば、動作を開始してから制御処理を開始するまでの遅れ時間を最小限にすることができると共に、制御処理で用いるデータの保存及び復元を確実に行うことができる。
そして更に、本実施形態のＥＣＵ１によれば、上記履歴データＤＲをＳ−ＲＡＭ７内に格納しているため、仮に、第１の処理でＳ−ＲＡＭ７の初期化が行われてから、第２の処理におけるＳ２４０でＥＥＰＲＯＭ１３からＳ−ＲＡＭ７へのデータコピーが行われるまでの間に、イグニッションスイッチ２９がオフされてメイン電源回路３１からの動作電圧ＶＤ  が遮断されたとしても、次回に動作電圧ＶＤ  が供給されて当該ＥＣＵ１が動作を開始した際に、第２の処理によってＥＥＰＲＯＭ１３からＳ−ＲＡＭ７へのデータコピーを確実に行うことができ、しかも、ＥＥＰＲＯＭ１３からＳ−ＲＡＭ７へのデータコピーが完了するまでは、保存処理によってＳ−ＲＡＭ７からＥＥＰＲＯＭ１３へデータがコピーされてしまうことが無い。よって、動作電圧ＶＤ  が断続されても、上記データ転送順序を常に確実に守ることができ、データの保存及び復元を確実に行うことができる。
【００５９】
また、本実施形態のＥＣＵ１では、制御処理において、Ｓ−ＲＡＭ７内の上記履歴データＤＲを参照し、その履歴データＤＲが、ＥＥＰＲＯＭ１３からＳ−ＲＡＭ７へのデータコピーが完了したことを示す内容に設定されている場合にのみ、Ｓ−ＲＡＭ７内の保存対象データを更新するようにしている。よって、制御処理を効率的に進めることができる。つまり、履歴データＤＲが“未完了”を示す内容に設定されている場合には、ＥＥＰＲＯＭ１３からＳ−ＲＡＭ７へ、それまでの経緯を継承した本来の保存対象データが未だコピーされていないため、その時点でＳ−ＲＡＭ７内の保存対象データを制御処理によって更新しても意味が無いためである。
【００６０】
尚、本実施形態のＥＣＵ１において、通常時には、Ｓ−ＲＡＭ７内のデータが正常であると共に、Ｓ−ＲＡＭ７内の上記履歴データＤＲが“完了”を示す内容に設定されているため、第１の処理ではＳ−ＲＡＭ７の初期化が行われず、また、第２の処理ではＥＥＰＲＯＭ１３からＳ−ＲＡＭ７へのデータコピーが行われない。そして、制御処理と並行して行われる保存処理により、Ｓ−ＲＡＭ７内の保存対象データがＥＥＰＲＯＭ１３にコピーされて、Ｓ−ＲＡＭ７内のデータが破壊された場合に備えることとなる。
【００６１】
以上、本発明の一実施形態について説明したが、本発明は、種々の形態を採り得ることは言うまでもない。
例えば、上記実施形態では、第２の処理のＳ２１０と保存処理のＳ３１０とにおいて、ＲＡＭ６内のＳ−ＲＡＭ状態変数を参照することにより、Ｓ−ＲＡＭ７内のデータが正常であるか否かを判定するようにしたが、そのＳ２１０とＳ３１０では、Ｓ１１０と同様に、Ｓ−ＲＡＭ７内のデータが正常であるか否かをパリティチェックやミラーリング等の手法によってチェックするようにしても良い。
【００６２】
また、上記実施形態では、図２に示したように、第２の処理と保存処理とが別々に分かれていたが、図２（Ｂ）の第２の処理に続いて図２（Ｃ）の保存処理が行われるようにしても、全く同様の効果を得ることができる。
一方、上記実施形態のＥＣＵ１は、車両のエンジンを制御するものであったが、例えば自動変速機など、他の制御対象を制御する装置についても全く同様に構成することができる。
【図面の簡単な説明】
【図１】実施形態の車両用制御装置（ＥＣＵ）の構成を表すブロック図である。
【図２】実施形態のＥＣＵのマイコンで実行される第１の処理と第２の処理と保存処理とを表すフローチャートである。
【図３】実施形態のＥＣＵのマイコンで実行される制御処理の一部内容を表すフローチャートである。
【符号の説明】
１…ＥＣＵ（車両用制御装置）    ３…ＣＰＵ    ５…ＲＯＭ
７…Ｓ−ＲＡＭ（スタンバイＲＡＭ）    １１…マイコン
１３…ＥＥＰＲＯＭ    １５…シリアルデータライン    １７…車速センサ
１９…回転センサ    ２１…インジェクタ    ２３…イグナイタ
２５…入出力回路    ２７…バッテリ    ２９…イグニッションスイッチ
３１…メイン電源回路    ３３…サブ電源回路
【図１】
0003551855.tif 000002
【図２】
0003551855.tif 000003
【図３】
0003551855.tif 000004