(57)【要約】【課題】ＲＡＭのデータを保存するＥＥＰＲＯＭの異常を検出する。【解決手段】制御装置１は、ＥＥＰＲＯＭ４を管理するメモリ管理装置を提供する。電源オフに応答して、ＲＡＭ３のデータがＥＥＰＲＯＭ４に複写される。ＲＡＭ３の書込結果領域３１ａには、ＥＥＰＲＯＭ４への書込処理が正常終了したか否かが書込まれる。電源オンの後に、ＲＡＭ３のデータに異常があると、ＥＥＰＲＯＭ４に退避してあるデータに基づいてＲＡＭ３のデータが復元される。ＥＥＰＲＯＭ４への書込処理の異常終了が所定回数継続すると、ＥＥＰＲＯＭ４の故障を判定する。さらに、制御装置１は、ＥＥＰＲＯＭ４への書込処理の前に、書込結果領域３１ａを初期化する。これにより、ＥＥＰＲＯＭ４への書込処理の途中で電源が遮断され、制御装置１が再起動された場合でも、そのことを書込結果領域３１ａに基づいて判定できる。【選択図】図１
2013065261.tif 000002
【特許請求の範囲】
【請求項１】
制御装置（１、２）によって一時記憶領域として利用される第１のメモリ装置（３、３１）と、
前記第１のメモリ装置に記憶されたデータを冗長的に保存する第２のメモリ装置（４、４１、４２）と、
前記第１のメモリ装置のデータを前記第２のメモリ装置へ書込むことによりデータを退避させる退避処理手段（２２、１９２）と、
前記退避処理手段による書込処理が正常終了（ＯＫ）したか異常終了（ＮＧ）したかを判定し、判定結果を前記第１のメモリ装置に設けられた書込結果領域（３１ａ）に記憶する書込判定手段（２３、１９３−１９５）と、
前記書込結果領域に記憶された判定結果に基づいて前記第２のメモリ装置の正常または異常を判定する異常判定手段（２７、１６３−１６９）とを備えることを特徴とするメモリ管理装置。
【請求項２】
さらに、前記退避処理手段による書込処理の前に、前記書込結果領域（３１ａ）を初期化する退避前処理手段（２１、１９１）を有し、
前記異常判定手段（２７）は、前記書込結果領域が初期化状態である場合、前記第２のメモリ装置の正常または異常を判定しないことを特徴とする請求項１に記載のメモリ管理装置。
【請求項３】
前記退避前処理手段は、前記書込結果領域に前記書込判定手段による判定がまだ完了していないことを示す未判定（ＮＡ）を示すデータを書込むことにより、前記書込結果領域（３１ａ）を初期化することを特徴とする請求項２に記載のメモリ管理装置。
【請求項４】
前記退避処理手段は、電源供給が遮断されるときにデータを退避させるように構成され、
前記異常判定手段は、電源供給が開始されるときに前記第２のメモリ装置の異常を判定するように構成されていることを特徴とする請求項１から請求項３のいずれかに記載のメモリ管理装置。
【請求項５】
前記異常判定手段は、前記異常終了が継続して発生した回数が所定の閾値回数（Ｆｔｈ）を上回ると前記第２のメモリ装置の異常を判定するように構成されている（１６６−１６９）ことを特徴とする請求項１から請求項４のいずれかに記載のメモリ管理装置。
【請求項６】
前記第１のメモリ装置は、バッテリによってバックアップされたＲＡＭ（３）であり、
前記第２のメモリ装置は、ＥＥＰＲＯＭ（４）であることを特徴とする請求項１から請求項５のいずれかに記載のメモリ管理装置。
【請求項７】
さらに、前記第２のメモリ装置に記憶されたデータに基づいて前記第１のメモリ装置のデータを復元する復元処理手段（２５、２６、１６１、１６２）を備えることを特徴とする請求項１から請求項６のいずれかに記載のメモリ管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電源遮断時にデータを退避させ保存する不揮発性メモリの故障を判定するためのメモリ管理装置に関する。具体的には、ＲＡＭのデータをバックアップするＥＥＰＲＯＭの故障を判定するためのメモリ管理装置として利用可能である。
【背景技術】
【０００２】
従来、マイクロコンピュータを用いる制御装置では、一時記憶メモリ（例えばＲＡＭ）内のデータを、不揮発性メモリ（例えばＥＥＰＲＯＭ）に退避させることがある。この処理は、一時記憶メモリのデータに不良が生じた場合に、不揮発性メモリから一時記憶メモリへデータを戻すことにより、データの復元を可能としている。しかし、不揮発性メモリに記録されたデータにも不良が生じるおそれがある。そこで、不揮発性メモリのデータの良否を判定する技術が知られている。例えば、特許文献１は、不揮発性メモリに記録されたデータの良否を判定するために、サムデータを利用する装置を開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平５−２１６７７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来技術では、一時記憶メモリと不揮発性メモリとにデータを冗長管理している為に種々の課題を生じた。例えば、不揮発性メモリへの前回の退避処理の成否を、制御装置の起動直後に検出することができないという問題があった。また、不揮発性メモリから一時記憶メモリへデータを戻すまで、すなわち一時記憶メモリのデータに不良が生じるまで不揮発性メモリへの書込みの異常を検出できないという問題があった。
【０００５】
また、従来技術では、不揮発性メモリへのデータの退避が正常に終了することを前提としている。このため、不揮発性メモリへの書込みに異常があった場合、書込み損ねたデータを一時記憶メモリに戻すおそれがあった。
【０００６】
さらに、一時記憶メモリから不揮発性メモリへの退避処理の途中、すなわち不揮発性メモリへの書込み処理の途中で電源が瞬断などの障害を生じると、不揮発性メモリの内容の一部に古い退避データが残るおそれがある。このような場合、古い退避データに基づいて誤判定が生じるおそれがあった。
【０００７】
本発明は上記問題点に鑑みてなされたものであり、その目的は、データを保存するための不揮発性メモリの異常を検出することができるメモリ管理装置を提供することである。
【０００８】
本発明の他の目的は、データを保存するための不揮発性メモリの異常を検出することができ、不揮発性メモリへの書込み処理の途中で電源が瞬断などの障害を生じた場合でも、誤判定を回避できるメモリ管理装置を提供することである。
【課題を解決するための手段】
【０００９】
本発明は上記目的を達成するために以下の技術的手段を採用する。
【００１０】
請求項１に記載の発明は、制御装置（１、２）によって一時記憶領域として利用される第１のメモリ装置（３、３１）と、第１のメモリ装置に記憶されたデータを冗長的に保存する第２のメモリ装置（４、４１、４２）と、第１のメモリ装置のデータを第２のメモリ装置へ書込むことによりデータを退避させる退避処理手段（２２、１９２）と、退避処理手段による書込処理が正常終了（ＯＫ）したか異常終了（ＮＧ）したかを判定し、判定結果を第１のメモリ装置に設けられた書込結果領域（３１ａ）に記憶する書込判定手段（２３、１９３−１９５）と、書込結果領域に記憶された判定結果に基づいて第２のメモリ装置の正常または異常を判定する異常判定手段（２７、１６３−１６９）とを備えることを特徴とする。
【００１１】
この構成によると、第１のメモリ装置に記憶されたデータを第２のメモリ装置に退避させるために、第１のメモリ装置のデータが、第２のメモリ装置へ書込まれる。この退避処理において、第２のメモリ装置への書込処理が正常終了したか異常終了したかが判定される。さらに、この判定結果は、第１のメモリ装置に設けられた書込結果領域に記憶される。よって、メモリ管理装置は、書込結果領域に記憶された判定結果に基づいて、第２のメモリ装置の正常または異常を判定することができる。
【００１２】
請求項２に記載の発明は、さらに、退避処理手段による書込処理の前に、書込結果領域（３１ａ）を初期化する退避前処理手段（２１、１９１）を有し、異常判定手段（２７）は、書込結果領域が初期化状態である場合、第２のメモリ装置の正常または異常を判定しないことを特徴とする。この構成によると、退避処理の前に、書込結果領域が初期化される。退避処理のための第２のメモリ装置への書込み途中に電源供給が遮断され、再起動される場合がある。このような再起動時であっても、書込結果領域は初期化されているから、前回の正常終了または異常終了が検出されることが回避される。このため、誤判定を回避できる。
【００１３】
請求項３に記載の発明は、退避前処理手段は、書込結果領域に書込判定手段による判定がまだ完了していないことを示す未判定（ＮＡ）を示すデータを書込むことにより、書込結果領域（３１ａ）を初期化することを特徴とする。この構成によると、未判定を示すデータが書き込まれることによって書込結果領域が初期化される。このため、データがない状態からも区別することができる。
【００１４】
請求項４に記載の発明は、退避処理手段は、電源供給が遮断されるときにデータを退避させるように構成され、異常判定手段は、電源供給が開始されるときに第２のメモリ装置の異常を判定するように構成されていることを特徴とする。この構成によると、電源供給が遮断されるとき、すなわちシャットオフ時にデータの退避が実行される。また、電源供給が開始されるとき、すなわちパワーオン時に第２のメモリ装置の正常または異常が判定される。
【００１５】
請求項５に記載の発明は、異常判定手段は、異常終了が継続して発生した回数が所定の閾値回数（Ｆｔｈ）を上回ると第２のメモリ装置の異常を判定するように構成されている（１６６−１６９）ことを特徴とする。この構成によると、異常終了が閾値回数を越えて継続的に繰り返されると、第２のメモリ装置の異常が判定される。
【００１６】
請求項６に記載の発明は、第１のメモリ装置は、バッテリによってバックアップされたＲＡＭ（３）であり、第２のメモリ装置は、ＥＥＰＲＯＭ（４）であることを特徴とする。この構成によると、ＥＥＰＲＯＭの正常または異常を判定することができる。
【００１７】
請求項７に記載の発明は、さらに、第２のメモリ装置に記憶されたデータに基づいて第１のメモリ装置のデータを復元する復元処理手段（２５、２６、１６１、１６２）を備えることを特徴とする。この構成によると、第１のメモリ装置のデータを、第２のメモリ装置のデータによって復元することができる。
【００１８】
なお、特許請求の範囲および上記手段の項に記載した括弧内の符号は、ひとつの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本発明の技術的範囲を限定するものではない。
【図面の簡単な説明】
【００１９】
【図１】本発明を適用した第１実施形態に係る制御装置を示すブロック図である。
【図２】第１実施形態の制御装置により実行される制御処理を示すフローチャートである。
【図３】第１実施形態のパワーオン処理を示すフローチャートである。
【図４】第１実施形態のシャットオフ処理を示すフローチャートである。
【図５】比較例のパワーオン処理を示すフローチャートである。
【図６】比較例のシャットオフ処理を示すフローチャートである。
【発明を実施するための形態】
【００２０】
以下に、図面を参照しながら本発明を実施するための複数の形態を説明する。各形態において先行する形態で説明した事項に対応する部分には同一の参照符号を付して重複する説明を省略する場合がある。各形態において構成の一部のみを説明している場合は、構成の他の部分については先行して説明した他の形態を適用することができる。また、後続の実施形態においては、先行する実施形態で説明した事項に対応する部分に百以上の位だけが異なる参照符号を付することにより対応関係を示し、重複する説明を省略する場合がある。各実施形態で具体的に組合せが可能であることを明示している部分同士の組合せばかりではなく、特に組合せに支障が生じなければ、明示してなくとも実施形態同士を部分的に組み合せることも可能である。
【００２１】
（第１実施形態）
図１は、本発明を適用した第１実施形態に係る制御装置（ＥＣＵ）１を示すブロック図である。制御装置１は、車両用の制御装置である。制御装置１は、車両に搭載されている。制御装置１は、複数のセンサ（ＳＮＲ）１１からの信号を入力し、所定の制御処理を実行することにより複数のアクチュエータ（ＡＣＴ）１２を制御する。制御装置１は、車両のバッテリ１３から給電される。制御装置１は、電源スイッチ１４がオフ位置からオン位置に操作されることにより作動状態となる。制御装置１は、電源スイッチ１４がオン位置からオフ位置に操作されることにより停止状態となる。
【００２２】
制御装置１は、コンピュータによって読み取り可能な記憶媒体を備えるマイクロコンピュータによって提供される。記憶媒体は、コンピュータによって読み取り可能なプログラムを非一時的に格納している。記憶媒体は、半導体メモリまたは磁気ディスクによって提供されうる。プログラムは、制御装置１によって実行されることによって、制御装置１をこの明細書に記載される装置として機能させ、この明細書に記載される制御方法を実行するように制御装置１を機能させる。制御装置１が提供する手段は、所定の機能を達成する機能的ブロック、またはモジュールとも呼ぶことができる。
【００２３】
制御装置１は、制御手段（ＣＰＵ）２と、複数のメモリ装置３、４とを備える。ＣＰＵ２は、中央演算装置であって、所定の制御処理を実行することによりメモリ管理装置を構成する。メモリ装置３、４は、両方とも不揮発性メモリである。メモリ装置３、４は、同じデータを記憶する冗長系を構成している。
【００２４】
メモリ装置３は、制御装置１において一時記憶領域として利用されるＲＡＭ３（Random Access Memory）である。ＲＡＭ３は、一時記憶メモリとして利用されているが、制御装置１に内蔵された電池によって記憶状態をバックアップされている。よって、ＲＡＭ３は、バックアップＲＡＭ（ＢＵ−ＲＡＭ）とも呼ばれる。よって、ＲＡＭ３も不揮発性メモリである。この実施形態では、ＲＡＭ３は、第１不揮発性メモリとも呼ばれる。ＲＡＭ３は、ＣＰＵ２がそれ自身の演算処理において常用する常用領域３１を備える。この常用領域３１には、ＣＰＵ２が実行する制御処理のためのデータが記憶される。常用領域３１には、ＥＥＰＲＯＭ４への書込み処理の結果を示すデータを記憶するための書込結果領域３１ａが含まれている。書込結果領域３１ａには、ＥＥＰＲＯＭ４への書込み処理が正常に終了したことを示す「ＯＫ」のデータ、ＥＥＰＲＯＭ４への書込み処理が正常に終了していないこと、すなわち異常が生じたことを示す「ＮＧ」のデータ、および、ＥＥＰＲＯＭ４への書込み処理の正常または異常が未判定であることを示す「ＮＡ」のデータが記憶される。
【００２５】
メモリ装置４は、ＲＡＭ３のデータをバックアップするために、ＲＡＭ３のデータを冗長的に保存するＥＥＰＲＯＭ４（Electrically Erasable Programmable Read-OnlyMemory）である。ＥＥＰＲＯＭ４は、制御装置１の電源が失われてもデータを保存することができる半導体メモリである。ＥＥＰＲＯＭ４は、データ保存用、またはデータ退避用のメモリとして設けられている。ＥＥＰＲＯＭ４は、ＲＡＭ３の常用領域３１をそっくりそのまま退避させるための複数の領域４１、４２を備える。ＥＥＰＲＯＭ４は、少なくとも第１領域４１と第２領域４２とを備える。第１領域４１と第２領域４２とは、ＲＡＭ３の書込結果領域３１ａを退避させるための書込結果領域４１ａ、４２ａをそれぞれ含む。第１領域４１と第２領域４２とは、退避処理の度に交互に使用される。例えば、今回の退避処理において常用領域３１から第１領域４１への退避処理が実行された場合、第２領域４２には、前回の退避処理により退避されたデータが残されている。
【００２６】
ＣＰＵ２は、ＥＥＰＲＯＭ４を管理するためのメモリ管理装置を構成する。ＣＰＵ２は、退避処理の前に退避前処理を実行するための退避前処理手段２１を備える。退避前処理手段２１は、書込結果領域３１ａにデータ「ＮＡ」を書込むことにより、データ「ＮＡ」を記憶させる。データ「ＮＡ」は、後述するＥＥＰＲＯＭ書込判定手段２３による判定がまだ完了していないことを示す。データ「ＮＡ」は、未判定を示す。退避前処理２１は、退避処理が実行される前に、書込結果領域３１ａを初期化する初期化処理手段とも呼ぶことができる。この構成によると、未判定を示すデータが書き込まれることによって書込結果領域が初期化される。したがって、データがない状態からも区別することができる。
【００２７】
ＣＰＵ２は、ＲＡＭ３の常用領域３１のデータをＥＥＰＲＯＭ４の第１領域４１または第２領域４２に退避するための退避処理手段２２を備える。退避処理手段２２は、電源供給が遮断されるときにデータを退避させるように構成されている。ＣＰＵ２は、退避処理手段２２によるＥＥＰＲＯＭ４への書込処理が正常に終了したか否かを判定するＥＥＰＲＯＭ書込判定手段２３を備える。ＥＥＰＲＯＭ書込判定手段２３は、ＥＥＰＲＯＭ４への書込処理が正常に終了した場合には、データ「ＯＫ」を出力する。ＥＥＰＲＯＭ書込判定手段２３は、ＥＥＰＲＯＭ４への書込処理が正常に終了していない場合には、データ「ＮＧ」を出力する。ＣＰＵ２は、ＥＥＰＲＯＭ書込判定手段２３による判定結果を、書込結果領域３１ａに書込むことにより、記憶させる退避後処理手段２４を備える。退避後処理手段２４は、データ「ＯＫ」またはデータ「ＮＧ」のいずれか一方だけを書込結果領域３１ａに書込む。この結果、ＲＡＭ３には、退避処理におけるＥＥＰＲＯＭ４への書込処理に関して、データ「ＯＫ」、「ＮＧ」、または「ＮＡ」が書き込まれ、記憶される。ＣＰＵ２が提供する複数の手段のうち、手段２１−２４は、電源スイッチ１４がオン位置からオフ位置へ操作されたとき、すなわちシャットオフ時に実行される。これら手段２１−２４は、シャットオフ処理手段を提供する。
【００２８】
ＣＰＵ２は、ＲＡＭ３のデータの異常を判定するＲＡＭデータ判定手段２５を備える。ＲＡＭデータ判定手段２５は、チェックサムの値を検査するなどのデータ異常検出処理を実行する。ＣＰＵ２は、ＥＥＰＲＯＭ４に退避されているデータに基づいて、ＲＡＭ３のデータを復元する復元処理手段２６を備える。復元処理手段２６は、第１領域４１または第２領域４２の最も新しいデータをＥＥＰＲＯＭ４から読み出し、常用領域３１に書込むことによりＲＡＭ３のデータを復元する。復元処理手段２６は、ＲＡＭデータ判定手段２５によって常用領域３１のデータに異常があることが判定されると、上述の復元処理を実行する。復元処理が実行されると、常用領域３１のデータは、前回の退避処理により退避させられたデータに戻る。
【００２９】
さらに、ＣＰＵ２は、ＥＥＰＲＯＭ４に異常が生じているか否かを判定するＥＥＰＲＯＭ異常判定手段２７を備える。ＥＥＰＲＯＭ異常判定手段２７は、ＲＡＭ３の書込結果領域３１ａに書込まれたデータに基づいて、ＥＥＰＲＯＭ４が異常であるか否かを判定する。ＥＥＰＲＯＭ異常判定手段２７は、電源供給が開始されるときにＥＥＰＲＯＭ４の異常を判定するように構成されている。ＥＥＰＲＯＭ異常判定手段２７は、複数回にわたって連続してデータ「ＮＧ」が検出された場合に、ＥＥＰＲＯＭ４の異常を判定するように構成することができる。ＥＥＰＲＯＭ異常判定手段２７は、ＥＥＰＲＯＭ４の異常を判定すると、ＥＥＰＲＯＭ４の異常に対策するための対策処理も提供する。例えば、ＥＥＰＲＯＭ異常判定手段２７は、異常が判定された領域の使用を禁止する、ＥＥＰＲＯＭ４全体の使用を禁止する、代替的な他の不揮発性メモリを使用するなどの対策処理を実行することができる。ＣＰＵ２が提供する複数の手段のうち、手段２５−２７は、電源スイッチ１４がオフ位置からオン位置へ操作されたとき、すなわちパワーオン時に実行される。これら手段２５−２７は、パワーオン処理手段を提供する。
【００３０】
図２は、電源スイッチ１４のオン操作から電源スイッチ１４のオフ操作までに実行される制御処理１５０の全体像を示すフローチャートである。制御処理１５０は、電源スイッチ１４がオフ位置からオン位置に操作されることにより開始される。ステップ１６０では、パワーオン処理が実行される。ステップ１７０では、センサ１１の信号に基づいてアクチュエータ１２を制御するための制御処理が実行される。ステップ１８０では、電源スイッチ１４がオン位置からオフ位置に操作されたか否かが判定される。電源スイッチ１４がオフ操作されるまで、ステップ１７０の処理が繰り返される。ステップ１９０では、シャットオフ処理が実行される。
【００３１】
図３は、パワーオン処理１６０を示すフローチャートである。ステップ１６１では、ＲＡＭ３のデータが正常か否かが判定される。ステップ１６１によりＲＡＭデータ判定手段２５が提供される。ＲＡＭ３のデータに異常がある場合、ステップ１６２に進む。ステップ１６２では、ＲＡＭ３のデータを復元する復元処理が実行される。ステップ１６２により復元処理手段２６が提供される。ＲＡＭ３のデータが正常である場合、またはＲＡＭ３のデータが復元された場合には、ステップ１６３へ進む。ステップ１６３では、ＲＡＭ３の書込結果領域３１ａのデータを参照することにより、データに応じて分岐する。
【００３２】
書込結果領域３１ａにデータ「ＯＫ」が記憶されている場合、ステップ１６４へ進む。記憶データが「ＯＫ」の場合、前回のシャットオフ処理においてＥＥＰＲＯＭ４への書込みが正常に終了したと考えられる。ステップ１６４では、異常カウンタＦＣの値をリセットする。ステップ１６５では、ＥＥＰＲＯＭ４のための正常判定を実行する。これにより、ＥＥＰＲＯＭ４は所期の目的どおりにデータ退避用に使用される。
【００３３】
書込結果領域３１ａにデータ「ＮＧ」が記憶されている場合、ステップ１６６へ進む。記憶データが「ＮＧ」の場合、前回のシャットオフ処理においてＥＥＰＲＯＭ４への書込みが正常に終了しなかったと考えられる。ステップ１６６では、異常カウンタＦＣの値を計数する。異常カウンタＦＣは、ＥＥＰＲＯＭ４への書込異常の連続発生回数を数えるために使用される。ステップ１６７では、異常カウンタＦＣの値が、所定の閾値回数Ｆｔｈを上回ったか否かを判定する。異常カウンタＦＣが閾値回数Ｆｔｈを上回らない場合、ステップ１６８へ進む。ステップ１６８では、ＥＥＰＲＯＭ４のための仮故障判定を実行する。この場合、ＥＥＰＲＯＭ４に何らかの故障が発生している可能性が高い。そこで、ステップ１６８では、仮故障判定を実行する。また、ステップ１６８では、仮故障判定に応答して、ＥＥＰＲＯＭ４の修復を図る処理、制御装置１の修理を利用者に推奨する処理、またはＥＥＰＲＯＭ４の使用を制限する処理などの対策処理を実行してもよい。
【００３４】
異常カウンタＦＣが閾値回数Ｆｔｈを上回る場合、ステップ１６９へ進む。ステップ１６９では、ＥＥＰＲＯＭ４のための故障判定を実行する。この場合、ＥＥＰＲＯＭ４に何らかの故障が発生していることはほぼ確実である。そこで、ステップ１６９では、故障判定を実行する。また、ステップ１６９では、故障判定に応答して、ＥＥＰＲＯＭ４の修復を図る処理、またはＥＥＰＲＯＭ４の使用を制限する処理などの故障処理を実行する。ステップ１６９では、例えば、ＥＥＰＲＯＭ４の使用、特にＥＥＰＲＯＭ４からＲＡＭ３へのデータ転送、すなわち復元処理が禁止される。ステップ１６４−１６９により、ＲＡＭ３に書込まれ、記憶されたデータ「ＯＫ」または「ＮＧ」に基づいて、ＥＥＰＲＯＭ４の異常または正常を判定するＥＥＰＲＯＭ異常判定手段２７が提供される。この手段によると、ＥＥＰＲＯＭ４への書込み処理の正常「ＯＫ」と異常「ＮＧ」とをＲＡＭ３上の書込結果領域３１ａに書込み、記憶することによって、ＲＡＭ３のデータをバックアップするＥＥＰＲＯＭ４の異常を検出することができる。また、ステップ１６６-１６９により、異常終了が継続して発生した回数ＦＣが所定の閾値回数Ｆｔｈを上回るとＥＥＰＲＯＭ４の異常を判定する異常判定手段２７が提供される。また、ステップ１６３から分岐してステップ１６４−１６９をスキップする処理の流れは、書込結果領域３１ａが初期化状態である場合に、ＥＥＰＲＯＭ４の正常または異常を判定しないための手段を提供する。
【００３５】
書込結果領域３１ａにデータ「ＮＡ」が記憶されている場合、後続の処理を飛ばしてパワーオン処理１６０を終了する。記憶データが「ＮＡ」の場合、前回のシャットオフ処理においてＥＥＰＲＯＭ４への書込みが終了する前に、何らかの原因により制御装置１が停止したと考えられる。この原因として、例えば、バッテリ１３から制御装置１への給電ラインの異常に起因する瞬断を挙げることができる。このような場合、ＥＥＰＲＯＭ４のデータの一部だけが書き換えられている場合がある。言い換えると、ＥＥＰＲＯＭ４のデータの位置には、前々回のシャットダウン処理において退避されたデータが残っているおそれがある。よって、この場合には、ＥＥＰＲＯＭ４に書込まれたデータの信頼度はきわめて低い。そこで、ステップ１６４−１６９の処理を飛ばすことにより、ＥＥＰＲＯＭ４の異常または正常に関して、誤った判定が下されることが回避される。例えば、前回のシャットダウン処理において書込結果領域３１ａに書込まれたデータ「ＮＧ」が、瞬断の後に、再び異常カウンタを計数させてしまうことを回避できる。ステップ１６３−１６９により、ＲＡＭ３に書込まれ、記憶されたデータ「ＯＫ」、「ＮＧ」または「ＮＡ」に基づいて、ＥＥＰＲＯＭ４の異常または正常を判定するＥＥＰＲＯＭ異常判定手段２７が提供される。この手段によると、書込結果領域３１ａに書込まれたデータ「ＮＡ」を利用して、ＥＥＰＲＯＭ４への書込み処理の途中で電源が瞬断などの障害を生じた場合でも、誤判定を回避できる。
【００３６】
図４は、シャットオフ処理１９０を示すフローチャートである。ステップ１９１では、書込結果領域３１ａにデータ「ＮＡ」を書込む。ステップ１９１の処理は、退避処理の前に、退避処理の実行前であることを記録する前処理を提供している。ステップ１９１は、退避前処理手段２１を提供する。ステップ１９２では、常用領域３１のデータをＥＥＰＲＯＭ４に退避させる。ステップ１９２は、退避処理手段２２を提供する。ステップ１９２の退避処理が終了すると、ステップ１９３へ進む。ステップ１９３では、ＥＥＰＲＯＭ４への書込処理が正常に終了したか否かが判定される。ここでは、例えば、常用領域３１のデータが誤りなくＥＥＰＲＯＭ４に複写されたことを検証することによって正常終了か否かを判定することができる。ステップ１９３は、ＥＥＰＲＯＭ書込判定手段２３を提供する。書込処理が正常に終了した場合、ステップ１９４へ進む。ステップ１９４では、書込結果領域３１ａに正常終了を示すデータ「ＯＫ」を書込む。書込処理が正常に終了していない場合、ステップ１９５へ進む。ステップ１９５では、書込結果領域３１ａに異常終了を示すデータ「ＮＧ」を書込む。ステップ１９４および１９５の処理は、退避処理の後に、退避処理が完了したこと、さらには退避処理の正常または異常を記録する後処理を提供している。ステップ１９４および１９５は、退避後処理手段２４を提供する。
【００３７】
上記構成によると、以下のような作用効果が得られる。まず、ＲＡＭ３とＥＥＰＲＯＭ４との両方が正常である場合、制御装置１は以下のように機能する。電源スイッチ１４がオン操作されると、ステップ１６１からステップ１６３へ進む。前回のステップ１９３の処理においてＥＥＰＲＯＭ４への書込みが正常終了している場合、ステップ１６３からステップ１６４へ分岐する。この後、ＣＰＵ２は、ＲＡＭ３に記憶されたデータを利用して制御処理１７０を実行する。やがて、電源スイッチ１４がオフ操作されると、ステップ１９１からステップ１９３を経由してステップ１９４に進む。ＥＥＰＲＯＭ４には、ＲＡＭ３のデータが退避され、保存される。書込結果領域３１ａにはデータ「ＯＫ」が書き込まれる。この結果、次に電源スイッチ１４が再びオン操作された場合も、上記と同じように制御装置１は機能する。
【００３８】
次に、ＲＡＭ３のデータに異常が生じた場合、制御装置１は以下のように機能する。電源スイッチ１４がオン操作されると、ステップ１６１からステップ１６２へ進む。ステップ１６２により、ＲＡＭ３のデータはＥＥＰＲＯＭ４のデータに基づいて復元される。前回のステップ１９３の処理においてＥＥＰＲＯＭ４への書込みが正常終了している場合、ステップ１６３からステップ１６４へ分岐する。この後、ＣＰＵ２は、ＲＡＭ３に復元されたデータを利用して制御処理１７０を実行する。やがて、電源スイッチ１４がオフ操作されると、ステップ１９１からステップ１９３を経由してステップ１９４に進む。ＥＥＰＲＯＭ４には、ＲＡＭ３のデータが再び退避され、保存される。書込結果領域３１ａにはデータ「ＯＫ」が書き込まれる。この結果、次に電源スイッチ１４が再びオン操作された場合も、上記と同じように制御装置１は機能する。
【００３９】
次に、ＥＥＰＲＯＭ４への書込み処理が異常終了した場合、制御装置１は以下のように機能する。電源スイッチ１４がオン操作されると、ステップ１６１からステップ１６３へ進む。前回のステップ１９３の処理においてＥＥＰＲＯＭ４への書込みが正常終了している場合、ステップ１６３からステップ１６４へ分岐する。この後、ＣＰＵ２は、ＲＡＭ３に記憶されたデータを利用して制御処理１７０を実行する。やがて、電源スイッチ１４がオフ操作されると、ステップ１９１からステップ１９３を経由してステップ１９５に進む。この場合、ＥＥＰＲＯＭ４への書込みが異常終了しているから、ＥＥＰＲＯＭ４に保存されたデータは信頼性がない。書込結果領域３１ａにはデータ「ＮＧ」が書き込まれる。この結果、次に電源スイッチ１４が再びオン操作された場合、ステップ１６３からステップ１６６へ分岐する。この後、電源スイッチ１４のオフ操作とオン操作とが繰り返されるたびに異常カウンタＦＣが回数を計数する。やがて異常カウンタＦＣが閾値回数Ｆｔｈを上回ると、ステップ１６９へ進む。これにより、ＥＥＰＲＯＭ４の故障が判定され、故障処理が実行される。
【００４０】
以上に述べたように、書込結果領域３１ａにデータ「ＮＧ」または「ＯＫ」が記憶されることによって、ステップ１９２の退避処理が完了したことが記録される。しかも、書込結果領域３１ａにデータ「ＯＫ」が記憶されている場合、ＥＥＰＲＯＭ４は正常であると推定することができる。また、書込結果領域３１ａにデータ「ＮＧ」が記憶されている場合、ＥＥＰＲＯＭ４は異常であると推定することができる。したがって、制御装置１は、前回のシャットオフ処理において判定されたＥＥＰＲＯＭ４への書込処理の正常終了または異常終了に基づいて、次回のパワーオン処理においてＥＥＰＲＯＭ４の正常または異常を判定することができる。
【００４１】
以上に述べた作動において、ＥＥＰＲＯＭ４への書込処理、すなわちステップ１９２の処理が完了するまでには、所定の時間を要する。このため、ステップ１９２の前後、またはステップ１９２の処理中に、何らかの原因によって制御装置１が停止し、制御処理の実行が停止され、さらに制御装置１が再起動されることがある。この原因として、例えば、バッテリ１３から制御装置１への給電ラインの異常に起因する瞬断を挙げることができる。制御装置１が再起動されると、制御処理はステップ１６０に戻り、再びパワーオン処理１６０が実行される。上述のステップ１９１の処理は、退避処理の前に、退避処理の実行前であることを記録する前処理を提供している。よって、書込結果領域３１ａにデータ「ＮＡ」が記憶されている場合、ステップ１９２の周辺において何らかの異常が発生し、制御装置１が再起動されたと推定することができる。したがって、制御装置１は、前回のシャットオフ処理においてＥＥＰＲＯＭ４への書込処理が終了していないことを、次回のパワーオン処理において検出することができる。この結果、制御装置１は、次回のパワーオン処理においてＥＥＰＲＯＭ４の正常または異常に関する誤判定を回避することができる。
【００４２】
（比較例）
図５は、比較例のパワーオン処理２６０を示すフローチャートである。パワーオン処理２６０は、第１実施形態のパワーオン処理１６０に代わって実行される。比較例においては、ステップ１６１とステップ１６２とだけが実行される。
【００４３】
図６は、比較例のシャットオフ処理２９０を示すフローチャートである。シャットオフ処理２９０は、第１実施形態のシャットオフ処理１９０に代わって実行される。比較例においては、ステップ１９２だけが実行される。
【００４４】
この比較例では、ＲＡＭ３のデータがＥＥＰＲＯＭ４に退避される。また、ＲＡＭ４のデータに異常が生じた場合には、ＥＥＰＲＯＭ４のデータに基づいてＲＡＭ３のデータが復元される。しかし、このような構成では、ＥＥＰＲＯＭ４の異常を検出することができない。
【００４５】
（他の実施形態）
以上、本発明の好ましい実施形態について説明したが、本発明は上述した実施形態に何ら制限されることなく、本発明の主旨を逸脱しない範囲において種々変形して実施することが可能である。上記実施形態の構造は、あくまで例示であって、本発明の範囲はこれらの記載の範囲に限定されるものではない。本発明の範囲は、特許請求の範囲の記載によって示され、さらに特許請求の範囲の記載と均等の意味及び範囲内での全ての変更を含むものである。
【００４６】
例えば、制御装置が提供する手段と機能は、ソフトウェアのみ、ハードウェアのみ、あるいはそれらの組合せによって提供することができる。例えば、制御装置をアナログ回路によって構成してもよい。
【００４７】
また、上記実施形態では、不揮発性メモリとして、電池によってバックアップされたＲＡＭ３、およびＥＥＰＲＯＭ４を使用した。しかし、メモリ装置の種類はこれらに限られるものではなく、ＲＡＭ３またはＥＥＰＲＯＭ４と置換可能な既知の、または将来開発される種々のメモリ装置を利用することができる。
【符号の説明】
【００４８】
１  制御装置（ＥＣＵ）、
１１  センサ、
１２  アクチュエータ、
１３  バッテリ、
１４  電源スイッチ、
２  制御手段（ＣＰＵ）、
２１  退避前処理手段、
２２  退避処理手段、
２３  ＥＥＰＲＯＭ書込判定手段、
２４  退避後処理手段、
２５  ＲＡＭデータ判定手段、
２６  復元処理手段、
２７  ＥＥＰＲＯＭ異常判定手段、
３  第１不揮発性メモリ（ＲＡＭ）、
３１  常用領域、
３１ａ  書込結果領域、
４  第２不揮発性メモリ（ＥＥＰＲＯＭ）、
４１  第１領域、
４１ａ  書込結果領域、
４２  第１領域、
４２ａ  書込結果領域。
【図１】
2013065261.tif 000003
【図２】
2013065261.tif 000004
【図３】
2013065261.tif 000005
【図４】
2013065261.tif 000006
【図５】
2013065261.tif 000007
【図６】
2013065261.tif 000008