説明

メモリ管理装置

【課題】RAMのデータを保存するEEPROMの異常を検出する。
【解決手段】制御装置1は、EEPROM4を管理するメモリ管理装置を提供する。電源オフに応答して、RAM3のデータがEEPROM4に複写される。RAM3の書込結果領域31aには、EEPROM4への書込処理が正常終了したか否かが書込まれる。電源オンの後に、RAM3のデータに異常があると、EEPROM4に退避してあるデータに基づいてRAM3のデータが復元される。EEPROM4への書込処理の異常終了が所定回数継続すると、EEPROM4の故障を判定する。さらに、制御装置1は、EEPROM4への書込処理の前に、書込結果領域31aを初期化する。これにより、EEPROM4への書込処理の途中で電源が遮断され、制御装置1が再起動された場合でも、そのことを書込結果領域31aに基づいて判定できる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電源遮断時にデータを退避させ保存する不揮発性メモリの故障を判定するためのメモリ管理装置に関する。具体的には、RAMのデータをバックアップするEEPROMの故障を判定するためのメモリ管理装置として利用可能である。
【背景技術】
【0002】
従来、マイクロコンピュータを用いる制御装置では、一時記憶メモリ(例えばRAM)内のデータを、不揮発性メモリ(例えばEEPROM)に退避させることがある。この処理は、一時記憶メモリのデータに不良が生じた場合に、不揮発性メモリから一時記憶メモリへデータを戻すことにより、データの復元を可能としている。しかし、不揮発性メモリに記録されたデータにも不良が生じるおそれがある。そこで、不揮発性メモリのデータの良否を判定する技術が知られている。例えば、特許文献1は、不揮発性メモリに記録されたデータの良否を判定するために、サムデータを利用する装置を開示している。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開平5−216776号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
従来技術では、一時記憶メモリと不揮発性メモリとにデータを冗長管理している為に種々の課題を生じた。例えば、不揮発性メモリへの前回の退避処理の成否を、制御装置の起動直後に検出することができないという問題があった。また、不揮発性メモリから一時記憶メモリへデータを戻すまで、すなわち一時記憶メモリのデータに不良が生じるまで不揮発性メモリへの書込みの異常を検出できないという問題があった。
【0005】
また、従来技術では、不揮発性メモリへのデータの退避が正常に終了することを前提としている。このため、不揮発性メモリへの書込みに異常があった場合、書込み損ねたデータを一時記憶メモリに戻すおそれがあった。
【0006】
さらに、一時記憶メモリから不揮発性メモリへの退避処理の途中、すなわち不揮発性メモリへの書込み処理の途中で電源が瞬断などの障害を生じると、不揮発性メモリの内容の一部に古い退避データが残るおそれがある。このような場合、古い退避データに基づいて誤判定が生じるおそれがあった。
【0007】
本発明は上記問題点に鑑みてなされたものであり、その目的は、データを保存するための不揮発性メモリの異常を検出することができるメモリ管理装置を提供することである。
【0008】
本発明の他の目的は、データを保存するための不揮発性メモリの異常を検出することができ、不揮発性メモリへの書込み処理の途中で電源が瞬断などの障害を生じた場合でも、誤判定を回避できるメモリ管理装置を提供することである。
【課題を解決するための手段】
【0009】
本発明は上記目的を達成するために以下の技術的手段を採用する。
【0010】
請求項1に記載の発明は、制御装置(1、2)によって一時記憶領域として利用される第1のメモリ装置(3、31)と、第1のメモリ装置に記憶されたデータを冗長的に保存する第2のメモリ装置(4、41、42)と、第1のメモリ装置のデータを第2のメモリ装置へ書込むことによりデータを退避させる退避処理手段(22、192)と、退避処理手段による書込処理が正常終了(OK)したか異常終了(NG)したかを判定し、判定結果を第1のメモリ装置に設けられた書込結果領域(31a)に記憶する書込判定手段(23、193−195)と、書込結果領域に記憶された判定結果に基づいて第2のメモリ装置の正常または異常を判定する異常判定手段(27、163−169)とを備えることを特徴とする。
【0011】
この構成によると、第1のメモリ装置に記憶されたデータを第2のメモリ装置に退避させるために、第1のメモリ装置のデータが、第2のメモリ装置へ書込まれる。この退避処理において、第2のメモリ装置への書込処理が正常終了したか異常終了したかが判定される。さらに、この判定結果は、第1のメモリ装置に設けられた書込結果領域に記憶される。よって、メモリ管理装置は、書込結果領域に記憶された判定結果に基づいて、第2のメモリ装置の正常または異常を判定することができる。
【0012】
請求項2に記載の発明は、さらに、退避処理手段による書込処理の前に、書込結果領域(31a)を初期化する退避前処理手段(21、191)を有し、異常判定手段(27)は、書込結果領域が初期化状態である場合、第2のメモリ装置の正常または異常を判定しないことを特徴とする。この構成によると、退避処理の前に、書込結果領域が初期化される。退避処理のための第2のメモリ装置への書込み途中に電源供給が遮断され、再起動される場合がある。このような再起動時であっても、書込結果領域は初期化されているから、前回の正常終了または異常終了が検出されることが回避される。このため、誤判定を回避できる。
【0013】
請求項3に記載の発明は、退避前処理手段は、書込結果領域に書込判定手段による判定がまだ完了していないことを示す未判定(NA)を示すデータを書込むことにより、書込結果領域(31a)を初期化することを特徴とする。この構成によると、未判定を示すデータが書き込まれることによって書込結果領域が初期化される。このため、データがない状態からも区別することができる。
【0014】
請求項4に記載の発明は、退避処理手段は、電源供給が遮断されるときにデータを退避させるように構成され、異常判定手段は、電源供給が開始されるときに第2のメモリ装置の異常を判定するように構成されていることを特徴とする。この構成によると、電源供給が遮断されるとき、すなわちシャットオフ時にデータの退避が実行される。また、電源供給が開始されるとき、すなわちパワーオン時に第2のメモリ装置の正常または異常が判定される。
【0015】
請求項5に記載の発明は、異常判定手段は、異常終了が継続して発生した回数が所定の閾値回数(Fth)を上回ると第2のメモリ装置の異常を判定するように構成されている(166−169)ことを特徴とする。この構成によると、異常終了が閾値回数を越えて継続的に繰り返されると、第2のメモリ装置の異常が判定される。
【0016】
請求項6に記載の発明は、第1のメモリ装置は、バッテリによってバックアップされたRAM(3)であり、第2のメモリ装置は、EEPROM(4)であることを特徴とする。この構成によると、EEPROMの正常または異常を判定することができる。
【0017】
請求項7に記載の発明は、さらに、第2のメモリ装置に記憶されたデータに基づいて第1のメモリ装置のデータを復元する復元処理手段(25、26、161、162)を備えることを特徴とする。この構成によると、第1のメモリ装置のデータを、第2のメモリ装置のデータによって復元することができる。
【0018】
なお、特許請求の範囲および上記手段の項に記載した括弧内の符号は、ひとつの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本発明の技術的範囲を限定するものではない。
【図面の簡単な説明】
【0019】
【図1】本発明を適用した第1実施形態に係る制御装置を示すブロック図である。
【図2】第1実施形態の制御装置により実行される制御処理を示すフローチャートである。
【図3】第1実施形態のパワーオン処理を示すフローチャートである。
【図4】第1実施形態のシャットオフ処理を示すフローチャートである。
【図5】比較例のパワーオン処理を示すフローチャートである。
【図6】比較例のシャットオフ処理を示すフローチャートである。
【発明を実施するための形態】
【0020】
以下に、図面を参照しながら本発明を実施するための複数の形態を説明する。各形態において先行する形態で説明した事項に対応する部分には同一の参照符号を付して重複する説明を省略する場合がある。各形態において構成の一部のみを説明している場合は、構成の他の部分については先行して説明した他の形態を適用することができる。また、後続の実施形態においては、先行する実施形態で説明した事項に対応する部分に百以上の位だけが異なる参照符号を付することにより対応関係を示し、重複する説明を省略する場合がある。各実施形態で具体的に組合せが可能であることを明示している部分同士の組合せばかりではなく、特に組合せに支障が生じなければ、明示してなくとも実施形態同士を部分的に組み合せることも可能である。
【0021】
(第1実施形態)
図1は、本発明を適用した第1実施形態に係る制御装置(ECU)1を示すブロック図である。制御装置1は、車両用の制御装置である。制御装置1は、車両に搭載されている。制御装置1は、複数のセンサ(SNR)11からの信号を入力し、所定の制御処理を実行することにより複数のアクチュエータ(ACT)12を制御する。制御装置1は、車両のバッテリ13から給電される。制御装置1は、電源スイッチ14がオフ位置からオン位置に操作されることにより作動状態となる。制御装置1は、電源スイッチ14がオン位置からオフ位置に操作されることにより停止状態となる。
【0022】
制御装置1は、コンピュータによって読み取り可能な記憶媒体を備えるマイクロコンピュータによって提供される。記憶媒体は、コンピュータによって読み取り可能なプログラムを非一時的に格納している。記憶媒体は、半導体メモリまたは磁気ディスクによって提供されうる。プログラムは、制御装置1によって実行されることによって、制御装置1をこの明細書に記載される装置として機能させ、この明細書に記載される制御方法を実行するように制御装置1を機能させる。制御装置1が提供する手段は、所定の機能を達成する機能的ブロック、またはモジュールとも呼ぶことができる。
【0023】
制御装置1は、制御手段(CPU)2と、複数のメモリ装置3、4とを備える。CPU2は、中央演算装置であって、所定の制御処理を実行することによりメモリ管理装置を構成する。メモリ装置3、4は、両方とも不揮発性メモリである。メモリ装置3、4は、同じデータを記憶する冗長系を構成している。
【0024】
メモリ装置3は、制御装置1において一時記憶領域として利用されるRAM3(Random Access Memory)である。RAM3は、一時記憶メモリとして利用されているが、制御装置1に内蔵された電池によって記憶状態をバックアップされている。よって、RAM3は、バックアップRAM(BU−RAM)とも呼ばれる。よって、RAM3も不揮発性メモリである。この実施形態では、RAM3は、第1不揮発性メモリとも呼ばれる。RAM3は、CPU2がそれ自身の演算処理において常用する常用領域31を備える。この常用領域31には、CPU2が実行する制御処理のためのデータが記憶される。常用領域31には、EEPROM4への書込み処理の結果を示すデータを記憶するための書込結果領域31aが含まれている。書込結果領域31aには、EEPROM4への書込み処理が正常に終了したことを示す「OK」のデータ、EEPROM4への書込み処理が正常に終了していないこと、すなわち異常が生じたことを示す「NG」のデータ、および、EEPROM4への書込み処理の正常または異常が未判定であることを示す「NA」のデータが記憶される。
【0025】
メモリ装置4は、RAM3のデータをバックアップするために、RAM3のデータを冗長的に保存するEEPROM4(Electrically Erasable Programmable Read-OnlyMemory)である。EEPROM4は、制御装置1の電源が失われてもデータを保存することができる半導体メモリである。EEPROM4は、データ保存用、またはデータ退避用のメモリとして設けられている。EEPROM4は、RAM3の常用領域31をそっくりそのまま退避させるための複数の領域41、42を備える。EEPROM4は、少なくとも第1領域41と第2領域42とを備える。第1領域41と第2領域42とは、RAM3の書込結果領域31aを退避させるための書込結果領域41a、42aをそれぞれ含む。第1領域41と第2領域42とは、退避処理の度に交互に使用される。例えば、今回の退避処理において常用領域31から第1領域41への退避処理が実行された場合、第2領域42には、前回の退避処理により退避されたデータが残されている。
【0026】
CPU2は、EEPROM4を管理するためのメモリ管理装置を構成する。CPU2は、退避処理の前に退避前処理を実行するための退避前処理手段21を備える。退避前処理手段21は、書込結果領域31aにデータ「NA」を書込むことにより、データ「NA」を記憶させる。データ「NA」は、後述するEEPROM書込判定手段23による判定がまだ完了していないことを示す。データ「NA」は、未判定を示す。退避前処理21は、退避処理が実行される前に、書込結果領域31aを初期化する初期化処理手段とも呼ぶことができる。この構成によると、未判定を示すデータが書き込まれることによって書込結果領域が初期化される。したがって、データがない状態からも区別することができる。
【0027】
CPU2は、RAM3の常用領域31のデータをEEPROM4の第1領域41または第2領域42に退避するための退避処理手段22を備える。退避処理手段22は、電源供給が遮断されるときにデータを退避させるように構成されている。CPU2は、退避処理手段22によるEEPROM4への書込処理が正常に終了したか否かを判定するEEPROM書込判定手段23を備える。EEPROM書込判定手段23は、EEPROM4への書込処理が正常に終了した場合には、データ「OK」を出力する。EEPROM書込判定手段23は、EEPROM4への書込処理が正常に終了していない場合には、データ「NG」を出力する。CPU2は、EEPROM書込判定手段23による判定結果を、書込結果領域31aに書込むことにより、記憶させる退避後処理手段24を備える。退避後処理手段24は、データ「OK」またはデータ「NG」のいずれか一方だけを書込結果領域31aに書込む。この結果、RAM3には、退避処理におけるEEPROM4への書込処理に関して、データ「OK」、「NG」、または「NA」が書き込まれ、記憶される。CPU2が提供する複数の手段のうち、手段21−24は、電源スイッチ14がオン位置からオフ位置へ操作されたとき、すなわちシャットオフ時に実行される。これら手段21−24は、シャットオフ処理手段を提供する。
【0028】
CPU2は、RAM3のデータの異常を判定するRAMデータ判定手段25を備える。RAMデータ判定手段25は、チェックサムの値を検査するなどのデータ異常検出処理を実行する。CPU2は、EEPROM4に退避されているデータに基づいて、RAM3のデータを復元する復元処理手段26を備える。復元処理手段26は、第1領域41または第2領域42の最も新しいデータをEEPROM4から読み出し、常用領域31に書込むことによりRAM3のデータを復元する。復元処理手段26は、RAMデータ判定手段25によって常用領域31のデータに異常があることが判定されると、上述の復元処理を実行する。復元処理が実行されると、常用領域31のデータは、前回の退避処理により退避させられたデータに戻る。
【0029】
さらに、CPU2は、EEPROM4に異常が生じているか否かを判定するEEPROM異常判定手段27を備える。EEPROM異常判定手段27は、RAM3の書込結果領域31aに書込まれたデータに基づいて、EEPROM4が異常であるか否かを判定する。EEPROM異常判定手段27は、電源供給が開始されるときにEEPROM4の異常を判定するように構成されている。EEPROM異常判定手段27は、複数回にわたって連続してデータ「NG」が検出された場合に、EEPROM4の異常を判定するように構成することができる。EEPROM異常判定手段27は、EEPROM4の異常を判定すると、EEPROM4の異常に対策するための対策処理も提供する。例えば、EEPROM異常判定手段27は、異常が判定された領域の使用を禁止する、EEPROM4全体の使用を禁止する、代替的な他の不揮発性メモリを使用するなどの対策処理を実行することができる。CPU2が提供する複数の手段のうち、手段25−27は、電源スイッチ14がオフ位置からオン位置へ操作されたとき、すなわちパワーオン時に実行される。これら手段25−27は、パワーオン処理手段を提供する。
【0030】
図2は、電源スイッチ14のオン操作から電源スイッチ14のオフ操作までに実行される制御処理150の全体像を示すフローチャートである。制御処理150は、電源スイッチ14がオフ位置からオン位置に操作されることにより開始される。ステップ160では、パワーオン処理が実行される。ステップ170では、センサ11の信号に基づいてアクチュエータ12を制御するための制御処理が実行される。ステップ180では、電源スイッチ14がオン位置からオフ位置に操作されたか否かが判定される。電源スイッチ14がオフ操作されるまで、ステップ170の処理が繰り返される。ステップ190では、シャットオフ処理が実行される。
【0031】
図3は、パワーオン処理160を示すフローチャートである。ステップ161では、RAM3のデータが正常か否かが判定される。ステップ161によりRAMデータ判定手段25が提供される。RAM3のデータに異常がある場合、ステップ162に進む。ステップ162では、RAM3のデータを復元する復元処理が実行される。ステップ162により復元処理手段26が提供される。RAM3のデータが正常である場合、またはRAM3のデータが復元された場合には、ステップ163へ進む。ステップ163では、RAM3の書込結果領域31aのデータを参照することにより、データに応じて分岐する。
【0032】
書込結果領域31aにデータ「OK」が記憶されている場合、ステップ164へ進む。記憶データが「OK」の場合、前回のシャットオフ処理においてEEPROM4への書込みが正常に終了したと考えられる。ステップ164では、異常カウンタFCの値をリセットする。ステップ165では、EEPROM4のための正常判定を実行する。これにより、EEPROM4は所期の目的どおりにデータ退避用に使用される。
【0033】
書込結果領域31aにデータ「NG」が記憶されている場合、ステップ166へ進む。記憶データが「NG」の場合、前回のシャットオフ処理においてEEPROM4への書込みが正常に終了しなかったと考えられる。ステップ166では、異常カウンタFCの値を計数する。異常カウンタFCは、EEPROM4への書込異常の連続発生回数を数えるために使用される。ステップ167では、異常カウンタFCの値が、所定の閾値回数Fthを上回ったか否かを判定する。異常カウンタFCが閾値回数Fthを上回らない場合、ステップ168へ進む。ステップ168では、EEPROM4のための仮故障判定を実行する。この場合、EEPROM4に何らかの故障が発生している可能性が高い。そこで、ステップ168では、仮故障判定を実行する。また、ステップ168では、仮故障判定に応答して、EEPROM4の修復を図る処理、制御装置1の修理を利用者に推奨する処理、またはEEPROM4の使用を制限する処理などの対策処理を実行してもよい。
【0034】
異常カウンタFCが閾値回数Fthを上回る場合、ステップ169へ進む。ステップ169では、EEPROM4のための故障判定を実行する。この場合、EEPROM4に何らかの故障が発生していることはほぼ確実である。そこで、ステップ169では、故障判定を実行する。また、ステップ169では、故障判定に応答して、EEPROM4の修復を図る処理、またはEEPROM4の使用を制限する処理などの故障処理を実行する。ステップ169では、例えば、EEPROM4の使用、特にEEPROM4からRAM3へのデータ転送、すなわち復元処理が禁止される。ステップ164−169により、RAM3に書込まれ、記憶されたデータ「OK」または「NG」に基づいて、EEPROM4の異常または正常を判定するEEPROM異常判定手段27が提供される。この手段によると、EEPROM4への書込み処理の正常「OK」と異常「NG」とをRAM3上の書込結果領域31aに書込み、記憶することによって、RAM3のデータをバックアップするEEPROM4の異常を検出することができる。また、ステップ166-169により、異常終了が継続して発生した回数FCが所定の閾値回数Fthを上回るとEEPROM4の異常を判定する異常判定手段27が提供される。また、ステップ163から分岐してステップ164−169をスキップする処理の流れは、書込結果領域31aが初期化状態である場合に、EEPROM4の正常または異常を判定しないための手段を提供する。
【0035】
書込結果領域31aにデータ「NA」が記憶されている場合、後続の処理を飛ばしてパワーオン処理160を終了する。記憶データが「NA」の場合、前回のシャットオフ処理においてEEPROM4への書込みが終了する前に、何らかの原因により制御装置1が停止したと考えられる。この原因として、例えば、バッテリ13から制御装置1への給電ラインの異常に起因する瞬断を挙げることができる。このような場合、EEPROM4のデータの一部だけが書き換えられている場合がある。言い換えると、EEPROM4のデータの位置には、前々回のシャットダウン処理において退避されたデータが残っているおそれがある。よって、この場合には、EEPROM4に書込まれたデータの信頼度はきわめて低い。そこで、ステップ164−169の処理を飛ばすことにより、EEPROM4の異常または正常に関して、誤った判定が下されることが回避される。例えば、前回のシャットダウン処理において書込結果領域31aに書込まれたデータ「NG」が、瞬断の後に、再び異常カウンタを計数させてしまうことを回避できる。ステップ163−169により、RAM3に書込まれ、記憶されたデータ「OK」、「NG」または「NA」に基づいて、EEPROM4の異常または正常を判定するEEPROM異常判定手段27が提供される。この手段によると、書込結果領域31aに書込まれたデータ「NA」を利用して、EEPROM4への書込み処理の途中で電源が瞬断などの障害を生じた場合でも、誤判定を回避できる。
【0036】
図4は、シャットオフ処理190を示すフローチャートである。ステップ191では、書込結果領域31aにデータ「NA」を書込む。ステップ191の処理は、退避処理の前に、退避処理の実行前であることを記録する前処理を提供している。ステップ191は、退避前処理手段21を提供する。ステップ192では、常用領域31のデータをEEPROM4に退避させる。ステップ192は、退避処理手段22を提供する。ステップ192の退避処理が終了すると、ステップ193へ進む。ステップ193では、EEPROM4への書込処理が正常に終了したか否かが判定される。ここでは、例えば、常用領域31のデータが誤りなくEEPROM4に複写されたことを検証することによって正常終了か否かを判定することができる。ステップ193は、EEPROM書込判定手段23を提供する。書込処理が正常に終了した場合、ステップ194へ進む。ステップ194では、書込結果領域31aに正常終了を示すデータ「OK」を書込む。書込処理が正常に終了していない場合、ステップ195へ進む。ステップ195では、書込結果領域31aに異常終了を示すデータ「NG」を書込む。ステップ194および195の処理は、退避処理の後に、退避処理が完了したこと、さらには退避処理の正常または異常を記録する後処理を提供している。ステップ194および195は、退避後処理手段24を提供する。
【0037】
上記構成によると、以下のような作用効果が得られる。まず、RAM3とEEPROM4との両方が正常である場合、制御装置1は以下のように機能する。電源スイッチ14がオン操作されると、ステップ161からステップ163へ進む。前回のステップ193の処理においてEEPROM4への書込みが正常終了している場合、ステップ163からステップ164へ分岐する。この後、CPU2は、RAM3に記憶されたデータを利用して制御処理170を実行する。やがて、電源スイッチ14がオフ操作されると、ステップ191からステップ193を経由してステップ194に進む。EEPROM4には、RAM3のデータが退避され、保存される。書込結果領域31aにはデータ「OK」が書き込まれる。この結果、次に電源スイッチ14が再びオン操作された場合も、上記と同じように制御装置1は機能する。
【0038】
次に、RAM3のデータに異常が生じた場合、制御装置1は以下のように機能する。電源スイッチ14がオン操作されると、ステップ161からステップ162へ進む。ステップ162により、RAM3のデータはEEPROM4のデータに基づいて復元される。前回のステップ193の処理においてEEPROM4への書込みが正常終了している場合、ステップ163からステップ164へ分岐する。この後、CPU2は、RAM3に復元されたデータを利用して制御処理170を実行する。やがて、電源スイッチ14がオフ操作されると、ステップ191からステップ193を経由してステップ194に進む。EEPROM4には、RAM3のデータが再び退避され、保存される。書込結果領域31aにはデータ「OK」が書き込まれる。この結果、次に電源スイッチ14が再びオン操作された場合も、上記と同じように制御装置1は機能する。
【0039】
次に、EEPROM4への書込み処理が異常終了した場合、制御装置1は以下のように機能する。電源スイッチ14がオン操作されると、ステップ161からステップ163へ進む。前回のステップ193の処理においてEEPROM4への書込みが正常終了している場合、ステップ163からステップ164へ分岐する。この後、CPU2は、RAM3に記憶されたデータを利用して制御処理170を実行する。やがて、電源スイッチ14がオフ操作されると、ステップ191からステップ193を経由してステップ195に進む。この場合、EEPROM4への書込みが異常終了しているから、EEPROM4に保存されたデータは信頼性がない。書込結果領域31aにはデータ「NG」が書き込まれる。この結果、次に電源スイッチ14が再びオン操作された場合、ステップ163からステップ166へ分岐する。この後、電源スイッチ14のオフ操作とオン操作とが繰り返されるたびに異常カウンタFCが回数を計数する。やがて異常カウンタFCが閾値回数Fthを上回ると、ステップ169へ進む。これにより、EEPROM4の故障が判定され、故障処理が実行される。
【0040】
以上に述べたように、書込結果領域31aにデータ「NG」または「OK」が記憶されることによって、ステップ192の退避処理が完了したことが記録される。しかも、書込結果領域31aにデータ「OK」が記憶されている場合、EEPROM4は正常であると推定することができる。また、書込結果領域31aにデータ「NG」が記憶されている場合、EEPROM4は異常であると推定することができる。したがって、制御装置1は、前回のシャットオフ処理において判定されたEEPROM4への書込処理の正常終了または異常終了に基づいて、次回のパワーオン処理においてEEPROM4の正常または異常を判定することができる。
【0041】
以上に述べた作動において、EEPROM4への書込処理、すなわちステップ192の処理が完了するまでには、所定の時間を要する。このため、ステップ192の前後、またはステップ192の処理中に、何らかの原因によって制御装置1が停止し、制御処理の実行が停止され、さらに制御装置1が再起動されることがある。この原因として、例えば、バッテリ13から制御装置1への給電ラインの異常に起因する瞬断を挙げることができる。制御装置1が再起動されると、制御処理はステップ160に戻り、再びパワーオン処理160が実行される。上述のステップ191の処理は、退避処理の前に、退避処理の実行前であることを記録する前処理を提供している。よって、書込結果領域31aにデータ「NA」が記憶されている場合、ステップ192の周辺において何らかの異常が発生し、制御装置1が再起動されたと推定することができる。したがって、制御装置1は、前回のシャットオフ処理においてEEPROM4への書込処理が終了していないことを、次回のパワーオン処理において検出することができる。この結果、制御装置1は、次回のパワーオン処理においてEEPROM4の正常または異常に関する誤判定を回避することができる。
【0042】
(比較例)
図5は、比較例のパワーオン処理260を示すフローチャートである。パワーオン処理260は、第1実施形態のパワーオン処理160に代わって実行される。比較例においては、ステップ161とステップ162とだけが実行される。
【0043】
図6は、比較例のシャットオフ処理290を示すフローチャートである。シャットオフ処理290は、第1実施形態のシャットオフ処理190に代わって実行される。比較例においては、ステップ192だけが実行される。
【0044】
この比較例では、RAM3のデータがEEPROM4に退避される。また、RAM4のデータに異常が生じた場合には、EEPROM4のデータに基づいてRAM3のデータが復元される。しかし、このような構成では、EEPROM4の異常を検出することができない。
【0045】
(他の実施形態)
以上、本発明の好ましい実施形態について説明したが、本発明は上述した実施形態に何ら制限されることなく、本発明の主旨を逸脱しない範囲において種々変形して実施することが可能である。上記実施形態の構造は、あくまで例示であって、本発明の範囲はこれらの記載の範囲に限定されるものではない。本発明の範囲は、特許請求の範囲の記載によって示され、さらに特許請求の範囲の記載と均等の意味及び範囲内での全ての変更を含むものである。
【0046】
例えば、制御装置が提供する手段と機能は、ソフトウェアのみ、ハードウェアのみ、あるいはそれらの組合せによって提供することができる。例えば、制御装置をアナログ回路によって構成してもよい。
【0047】
また、上記実施形態では、不揮発性メモリとして、電池によってバックアップされたRAM3、およびEEPROM4を使用した。しかし、メモリ装置の種類はこれらに限られるものではなく、RAM3またはEEPROM4と置換可能な既知の、または将来開発される種々のメモリ装置を利用することができる。
【符号の説明】
【0048】
1 制御装置(ECU)、
11 センサ、
12 アクチュエータ、
13 バッテリ、
14 電源スイッチ、
2 制御手段(CPU)、
21 退避前処理手段、
22 退避処理手段、
23 EEPROM書込判定手段、
24 退避後処理手段、
25 RAMデータ判定手段、
26 復元処理手段、
27 EEPROM異常判定手段、
3 第1不揮発性メモリ(RAM)、
31 常用領域、
31a 書込結果領域、
4 第2不揮発性メモリ(EEPROM)、
41 第1領域、
41a 書込結果領域、
42 第1領域、
42a 書込結果領域。

【特許請求の範囲】
【請求項1】
制御装置(1、2)によって一時記憶領域として利用される第1のメモリ装置(3、31)と、
前記第1のメモリ装置に記憶されたデータを冗長的に保存する第2のメモリ装置(4、41、42)と、
前記第1のメモリ装置のデータを前記第2のメモリ装置へ書込むことによりデータを退避させる退避処理手段(22、192)と、
前記退避処理手段による書込処理が正常終了(OK)したか異常終了(NG)したかを判定し、判定結果を前記第1のメモリ装置に設けられた書込結果領域(31a)に記憶する書込判定手段(23、193−195)と、
前記書込結果領域に記憶された判定結果に基づいて前記第2のメモリ装置の正常または異常を判定する異常判定手段(27、163−169)とを備えることを特徴とするメモリ管理装置。
【請求項2】
さらに、前記退避処理手段による書込処理の前に、前記書込結果領域(31a)を初期化する退避前処理手段(21、191)を有し、
前記異常判定手段(27)は、前記書込結果領域が初期化状態である場合、前記第2のメモリ装置の正常または異常を判定しないことを特徴とする請求項1に記載のメモリ管理装置。
【請求項3】
前記退避前処理手段は、前記書込結果領域に前記書込判定手段による判定がまだ完了していないことを示す未判定(NA)を示すデータを書込むことにより、前記書込結果領域(31a)を初期化することを特徴とする請求項2に記載のメモリ管理装置。
【請求項4】
前記退避処理手段は、電源供給が遮断されるときにデータを退避させるように構成され、
前記異常判定手段は、電源供給が開始されるときに前記第2のメモリ装置の異常を判定するように構成されていることを特徴とする請求項1から請求項3のいずれかに記載のメモリ管理装置。
【請求項5】
前記異常判定手段は、前記異常終了が継続して発生した回数が所定の閾値回数(Fth)を上回ると前記第2のメモリ装置の異常を判定するように構成されている(166−169)ことを特徴とする請求項1から請求項4のいずれかに記載のメモリ管理装置。
【請求項6】
前記第1のメモリ装置は、バッテリによってバックアップされたRAM(3)であり、
前記第2のメモリ装置は、EEPROM(4)であることを特徴とする請求項1から請求項5のいずれかに記載のメモリ管理装置。
【請求項7】
さらに、前記第2のメモリ装置に記憶されたデータに基づいて前記第1のメモリ装置のデータを復元する復元処理手段(25、26、161、162)を備えることを特徴とする請求項1から請求項6のいずれかに記載のメモリ管理装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2013−65261(P2013−65261A)
【公開日】平成25年4月11日(2013.4.11)
【国際特許分類】
【出願番号】特願2011−204833(P2011−204833)
【出願日】平成23年9月20日(2011.9.20)
【出願人】(000004260)株式会社デンソー (27,639)
【Fターム(参考)】