(57)【要約】  書き換え可能な不揮発性メモリと、該不揮発性メモリの情報入出力を制御するメモリ制御手段と、を備え、前記不揮発性メモリによってデータを管理する情報管理装置であって、前記メモリ制御手段は、前記不揮発性メモリに所定のデータを書き込む書込制御時に、第１の正当性チェック用情報、第１のデータ本体、第２の正当性チェック用情報、前記第１のデータ本体と同内容の第２のデータ本体、第３の正当性チェック用情報の順に並べられたデータを、前記不揮発性メモリにおける所定アドレス領域に上書き記憶させることを特徴とする、情報管理装置。
2011077519.tif 000002
【特許請求の範囲】
【請求項１】
書き換え可能な不揮発性メモリと、該不揮発性メモリの情報入出力を制御するメモリ制御手段と、を備え、前記不揮発性メモリによってデータを管理する情報管理装置であって、
前記メモリ制御手段は、前記不揮発性メモリに所定のデータを書き込む書込制御時に、第１の正当性チェック用情報、第１のデータ本体、第２の正当性チェック用情報、前記第１のデータ本体と同内容の第２のデータ本体、第３の正当性チェック用情報の順に並べられたデータを、前記不揮発性メモリにおける所定アドレス領域に上書き記憶させることを特徴とする、
情報管理装置。
【請求項２】
前記メモリ制御手段は、前記不揮発性メモリから前記書込制御において書き込まれたデータを読み込む読込制御時に、前記第１ないし第３の正当性チェック用情報の、他の正当性チェック用情報との整合具合に基づいて、前記第１のデータ本体と前記第２のデータ本体のいずれかを選択することを特徴とする、
請求項１に記載の情報管理装置。
【請求項３】
前記メモリ制御手段は、
前記書込制御時には、前記第１ないし第３の正当性チェック用情報として同一の情報を前記不揮発性メモリに記憶させ、
前記読込制御時には、前記第１ないし第３の正当性チェック用情報の、他の正当性チェック用情報との一致具合に基づいて、前記第１のデータ本体と前記第２のデータ本体のいずれかを選択することを特徴とする、
請求項２に記載の情報管理装置。
【請求項４】
前記第１ないし第３の正当性チェック用情報は、カウンタにより生成されるカウンタ値である、
請求項３に記載の情報管理装置。
【請求項５】
前記メモリ制御手段は、前記読込制御時において、
前記第１ないし第３の正当性チェック用情報のうち他の正当性チェック用情報と整合しないものが存在する場合に、前記第１ないし第３の正当性チェック用情報のいずれが他の正当性チェック用情報と整合しないかに基づいて、前記第１のデータ本体と前記第２のデータ本体のいずれかを修復する手段である、
請求項２に記載の情報管理装置。
【請求項６】
前記メモリ制御手段は、前記読込制御時において、
前記第３の正当性チェック用情報が他の正当性チェック用情報と整合しない場合には、前記第１のデータ本体を選択すると共に、前記第２のデータ本体を前記第１のデータ本体で置換して前記第２のデータ本体を修復する手段である、
請求項５に記載の情報管理装置。
【請求項７】
車両に搭載される請求項２ないし６のいずれか１項に記載の情報管理装置であって、
前記データ本体は、車載機器の制御において学習された学習値であり、
前記書込制御は、車両システムの終了時に実行され、
前記読込制御は、前記車両システムの始動時に実行される、
情報管理装置。
【請求項８】
コンピュータが、書き換え可能な不揮発性メモリによってデータを管理する情報管理方法であって、
第１の正当性チェック用情報、第１のデータ本体、第２の正当性チェック用情報、前記第１のデータ本体と同内容の第２のデータ本体、第３の正当性チェック用情報の順に並べられたデータを、前記不揮発性メモリにおける所定アドレス領域に記憶させるデータ書込ステップを有することを特徴とする、
情報管理方法。
【請求項９】
前記不揮発性メモリから前記データ書込ステップにおいて書き込まれたデータを読み込むデータ読込ステップを更に有し、
該データ読込ステップは、前記第１ないし第３の正当性チェック用情報の他の正当性チェック用情報との整合具合に基づいて、前記第１のデータ本体と前記第２のデータ本体のいずれかを選択するデータ選択ステップを含むことを特徴とする、
請求項８に記載の情報管理方法。
【請求項１０】
前記データ書込ステップにおいて、前記第１ないし第３の正当性チェック用情報として同一の情報を前記不揮発性メモリに記憶させ、
前記データ選択ステップにおいて、前記第１ないし第３の正当性チェック用情報の他の正当性チェック用情報との一致具合に基づいて、前記第１のデータ本体と前記第２のデータ本体のいずれかを選択することを特徴とする、
請求項９に記載の情報管理方法。
【請求項１１】
前記データ書込ステップにおいて、カウンタにより生成されるカウンタ値を、前記第１ないし第３の正当性チェック用情報として前記不揮発性メモリに記憶させることを特徴とする、
請求項１０に記載の情報管理方法。
【請求項１２】
前記データ読込ステップは、
前記第１ないし第３の正当性チェック用情報のうち他の正当性チェック用情報と整合しないものが存在するか否かを判定する判定ステップと、
前記第１ないし第３の正当性チェック用情報のうち他の正当性チェック用情報と整合しないものが存在する場合に、前記第１ないし第３の正当性チェック用情報のいずれが他の正当性チェック用情報と整合しないかに基づいて、前記第１のデータ本体と前記第２のデータ本体のいずれかを修復するデータ修復ステップと、を更に含む、
請求項９に記載の情報管理方法。
【請求項１３】
前記データ選択ステップは、前記第１の正当性チェック用情報が他の正当性チェック用情報と整合しない場合には前記第２のデータ本体を選択し、前記第３の正当性チェック用情報が他の正当性チェック用情報と整合しない場合には前記第１のデータ本体を選択するステップであり、
前記データ修復ステップは、前記第３の正当性チェック用情報が他の正当性チェック用情報と整合しない場合には、前記第１のデータ本体で前記第２のデータ本体を置換するステップである、
請求項１２に記載の情報管理方法。
【請求項１４】
前記コンピュータ及び書き換え可能な不揮発性メモリは車両に搭載され、
前記データ本体は、車載機器の制御において学習された学習値であり、
前記データ書込ステップは、車両システムの終了時に実行され、
前記データ読込ステップは、前記車両システムの始動時に実行される、
請求項９ないし１３のいずれか１項に記載の情報管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、書き換え可能な不揮発性メモリによってデータを管理する情報管理装置、及びコンピュータが書き換え可能な不揮発性メモリによってデータを管理する情報管理方法に関する。
【背景技術】
【０００２】
近年、車両制御の分野において、車両制御を通じて得られた学習値を車両システムの終了時に不揮発性メモリに記憶させておき、車両システムの始動時には不揮発性メモリに記憶された制御学習値を読み込んで車両制御に用いるという処理が行われている。不揮発性メモリとしては、ＥＥＰＲＯＭ（Electronically Erasable and Programmable Read Only Memory）が好適に用いられているが、この他、ＣＤ−ＲやＣＤ−ＲＷ、ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ、ハードディスク等が用いられうる。【０００３】
この種の処理を行う情報管理装置において、学習値であるデータを不揮発性メモリに記憶させている最中に電源遮断等のアクシデントが生じた場合、データが途中までしか不揮発性メモリに格納されないことになる。この結果、これまで収集した学習値を、以降の制御に用いることができなくなるという不都合が生じうる。【０００４】
特に、車両に搭載される情報管理装置の場合、車両停止直後にユーザーや修理業者によってバッテリー交換が行われてしまい、その結果、データブロックの書込が完全に終了しないという場面が想定される。また、車両に搭載される装置やシステムに限らず、携帯電話等、バッテリーを簡易に取り外し可能な種々の装置やシステムにおいても、同じような問題は生じうる。【０００５】
これに関連し、フラッシュメモリに管理領域セクタとバックアップセクタを設定し、これらのセクタに二重にデータを書き込んで保存する情報処理装置についての発明が開示されている（例えば、特許文献１参照）。【０００６】
この情報処理装置では、更新情報を書き込む際に、まずバックアップセクタに書き込まれているデータを消去し、管理領域セクタのコピーをバックアップセクタに書き込み、管理領域セクタのシグネチャをクリアした後に管理領域セクタのデータを消去し、最後に管理領域セクタに更新情報を書き込んでいる。管理領域セクタに更新情報を書き込む際には、シグネチャが書き込まれる。【０００７】
そして、フラッシュメモリからデータを読み込む際には、管理領域セクタに書き込まれたシグネチャを固定のデータと比較して正しいか否かを判定し、正しくない場合は、続いてバックアップ領域セクタに書き込まれたシグネチャが正しいか否かを判定する。バックアップ領域セクタに書き込まれたシグネチャのみが正しい場合は、バックアップセクタに記憶されたデータを管理領域セクタに書き込んでいる（特許文献１の図９参照）。【０００８】
また、マスタ記憶装置とスレーブ記憶装置の双方にデータを書き込んで保存するデータ２重化システムについての発明が開示されている（例えば、特許文献２参照）。このシステムでは、制御装置内に状態テーブルを備えている。そして、マスタ記憶装置にデータを書き込み中である期間は状態テーブルのマスタ記憶装置の部分に書込フラグが設定され、スレーブ記憶装置にデータを書き込み中である期間は状態テーブルのスレーブ記憶装置の部分に書込フラグが設定される。これによって、状態テーブルのいずれかの部分にフラグが設定されたままである場合には、データの書き込み中に何らかのアクシデントが発生したものと検知している。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００８−７１２２３号公報
【特許文献２】特表２００６−７９５２２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、上記特許文献１に記載の装置では、データ消去、データ書き込み、シグネチャのクリア、データ消去、データ書き込みと、多くのアクセス処理を経て更新情報の書き込みが終了するため、処理時間が長くなる場合がある。不揮発性メモリへのアクセスは、レジスタやキャッシュ、ＲＡＭ等へのアクセスに比して時間を要するものだからである。【００１１】
このため、上記特許文献１に記載の装置を、例えば車両の制御装置に適用した場合には、車両システムの終了処理が長くなり、運転者等のユーザーが煩わしさを覚えることになる。【００１２】
また、上記特許文献２に記載のシステムでは、制御装置内に状態テーブルを備えているが、この状態テーブルは不揮発性のメモリ上に設定される必要があるため、システム全体のコストが増大する。更に、マスタ記憶装置とスレーブ記憶装置を備えることによってコストが増大し、２つの記憶装置にそれぞれアクセスする必要があるため処理時間も長くなってしまう。【００１３】
本発明はこのような課題を解決するためのものであり、不揮発性メモリへの書き込みを高速に行なうと共に、データの損失を抑制することが可能な情報管理装置、及び情報管理方法を提供することを、主たる目的とする。
【課題を解決するための手段】
【００１４】
上記目的を達成するための本発明の一態様は、
書き換え可能な不揮発性メモリと、該不揮発性メモリの情報入出力を制御するメモリ制御手段と、を備え、前記不揮発性メモリによってデータを管理する情報管理装置であって、
前記メモリ制御手段は、
前記不揮発性メモリに所定のデータを書き込む書込制御時に、
第１の正当性チェック用情報、第１のデータ本体、第２の正当性チェック用情報、前記第１のデータ本体と同内容の第２のデータ本体、第３の正当性チェック用情報の順に並べられたデータを、前記不揮発性メモリにおける所定アドレス領域に上書き記憶させることを特徴とする情報管理装置である。【００１５】
この本発明の一態様によれば、第１の正当性チェック用情報、第１のデータ本体、第２の正当性チェック用情報、前記第１のデータ本体と同内容の第２のデータ本体、第３の正当性チェック用情報の順に並べられたデータを、不揮発性メモリにおける所定アドレス領域に上書き記憶させるため、不揮発性メモリへの書き込みを高速に行なうと共に、データの損失を抑制することができる。
【発明の効果】
【００１６】
本発明によれば、不揮発性メモリへの書き込みを高速に行なうと共に、データの損失を抑制することが可能な情報管理装置、及び情報管理方法を提供することができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の一実施例に係る情報管理装置１のシステム構成例である。
【図２】本発明の一実施例に係る情報管理装置１のシステム構成の他の例である。
【図３】不揮発性メモリ２０における所定アドレス領域を示すイメージ図である。
【図４】データブロック１の書き込み中に電源遮断等が発生した場合の、不揮発性メモリ２０における所定アドレス領域の格納データを示すイメージ図である。
【図５】データブロック２の書き込み中に電源遮断等が発生した場合の、不揮発性メモリ２０における所定アドレス領域の格納データを示すイメージ図である。
【図６】マイクロコンピュータ１０により実行される書込制御の処理フローを示す図である。
【図７】マイクロコンピュータ１０により実行される読込制御の処理フローを示す図である。
【図８】マイクロコンピュータ１０により実行される読込制御の処理フローの他の例を示す図である。
【図９】マイクロコンピュータ１０により実行される読込制御の処理フローの他の例を示す図である。
【図１０】マイクロコンピュータ１０により実行される読込制御の処理フローの他の例を示す図である。
【発明を実施するための形態】
【００１８】
以下、本発明を実施するための形態について、添付図面を参照しながら実施例を挙げて説明する。
【００１９】
本発明の情報管理装置及び方法は、車載機器の制御を通じて得られた学習値を車両システムの終了時に不揮発性メモリに記憶させておき、車両システムの始動時に当該学習値を読み込んで車載機器の制御に用いる車載制御装置に好適に適用される。
【００２０】
なお、本発明の情報管理装置及び方法は、車載機器の制御を行う車載制御装置に限定されず、船舶、航空機等の他の移動体に搭載された制御装置、パーソナルコンピュータ、携帯電話、ＴＶ、ゲーム機その他の装置やシステムにも適用可能であるが、以下の実施例では上記のような車載制御装置に適用されたものとして説明する。
【実施例】
【００２１】
以下、図面を参照し、本発明の一実施例に係る情報管理装置、及び情報管理方法について説明する。【００２２】
［基本構成］
図１は、本発明の一実施例に係る情報管理装置１のシステム構成例である。情報管理装置１は、主要な構成として、マイクロコンピュータ１０と、書き換え可能な不揮発性メモリ２０と、を備える。不揮発性メモリ２０は、例えばＥＥＰＲＯＭであるが、この他、ＣＤ−ＲやＣＤ−ＲＷ、ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ、ハードディスク等が用いられうる。マイクロコンピュータ１０と不揮発性メモリ２０は、通信線３０によって接続されており、シリアル通信プロトコルに従って情報の送受信を行っている。【００２３】
なお、マイクロコンピュータ１０と不揮発性メモリ２０の接続態様は、図１に示したものに限られない。図２は、本発明の一実施例に係る情報管理装置１のシステム構成の他の例である。本図において、マイクロコンピュータ１０と不揮発性メモリ２０はアドレスバス３２、データバス３４を含むバスによって接続されている。【００２４】
マイクロコンピュータ１０は、ＣＰＵ（Central Processing Unit）、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、Ｉ／Ｏ、レジスタ、キャッシュメモリ等を有する他、カウンタ１２を内蔵している。【００２５】
マイクロコンピュータ１０には、アクセル開度センサ、車速センサ、加速度センサ、クランク角センサ等、車両の状態を検出するセンサの検出値が入力される。また、マイクロコンピュータ１０は、これらのセンサから入力された検出値に基づいて、スロットルモータ、イグナイター、変速機、走行用モータ等の制御対象に制御信号を出力する。簡易な例では、マイクロコンピュータ１０は、アクセル開度と車速を入力パラメータとするマップ又は関数に基づいてエンジンから出力すべき目標トルクを決定し、目標トルクに等しいトルクが出力されるようにスロットルモータや変速機を制御する。【００２６】
なお、上記ではマイクロコンピュータ１０がエンジン・変速機を制御する制御装置であるものとして例示したが、このほか、電子制御式ブレーキ装置を制御する制御装置、パワーステアリング装置を制御する制御装置、ＶＳＣ（Vehicle Stability Control）やＶＤＩＭ（Vehicle Dynamics Integrated Management）等の車両安定化制御装置、ナビゲーション装置を制御する制御装置等であってもよい。また、これらが有する機能を統合した制御装置であってもよい。【００２７】
また、マイクロコンピュータ１０は、車載機器の制御を通じて制御情報の学習を行っている。制御情報の学習については、種々のものが既に知られている。例えば、変速機に関する制御情報の学習について例示すると、変速機を構成する部材の個体差や摩耗によって最適な変速タイミングが変化することが知られている。マイクロコンピュータ１０は、変速ショックの発生を加度センサの出力により監視し、最適なロックアップクラッチの作動タイミング等を学習することができる。【００２８】
また、マイクロコンピュータ１０が車両位置に応じた自動減速制御を行なう制御装置である場合、すなわち、地図データと車両位置を照合して料金所やカーブの手前でシフトダウンやブレーキ出力を行なう場合、地図データには含まれるが実際には存在しない（廃止された）料金所の手前で減速が行われなかったことを学習し、以降、当該地点で自動減速を行わないように制御することもできる。【００２９】
このように、車載機器の制御において制御情報を学習するのは種々の制御対象について可能であり、本発明の適用上、何ら制限は存在しない。【００３０】
マイクロコンピュータ１０が車載機器の制御において学習した学習値は、車両システムの終了時に不揮発性メモリ２０に格納される。車両システムの終了時とは、例えば、運転者がキー操作等を行ってＡＣＣオンの状態からＡＣＣオフの状態に遷移させた時をいう。マイクロコンピュータ１０から不揮発性メモリ２０へのデータ送信等が行われている間は、車載バッテリーからマイクロコンピュータ１０その他の制御装置への電源供給が継続される。【００３１】
また、マイクロコンピュータ１０は、車両システムの始動時には、不揮発性メモリ２０に格納された学習値を読み込んで以降の制御に用いている。車両システムの始動時とは、例えば、運転者がキー操作等を行ってＡＣＣオフの状態からＡＣＣオンの状態に遷移させた時をいう。これによって、制御の連続性を維持することができ、搭載された車両の状態に応じた車載機器の制御を行うことができる。【００３２】
［特徴的な処理］
ところで、この種の車載制御装置では、車両停止直後にユーザーや修理業者によってバッテリー交換が行われてしまい、学習値の書込が完全に終了しない場合がある。この結果、学習値は途中までしか不揮発性メモリ２０に格納されず、不完全な状態で次回の走行に引き継がれることになる。また、データが破損してしまう場合もある。これらの場合、マイクロコンピュータ１０は、これまで収集した学習値を以降の制御に用いることが困難となってしまう。【００３３】
そこで、本実施例の情報管理装置１では、以下のような特徴的な処理を行うことにより、データの損失を回避している。【００３４】
＜書込制御＞
マイクロコンピュータ１０は、車載機器の制御において学習した学習値を不揮発性メモリ２０に書き込む際に、整合キーワードＡ、データブロック１、整合キーワードＢ、データブロック２、整合キーワードＣの順に並べられたデータを、不揮発性メモリ２０における所定アドレス領域２０Ａに繰り返し上書き記憶させる。【００３５】
ここで、整合キーワードＡは特許請求の範囲における第１の正当性チェック用情報に、整合キーワードＢは特許請求の範囲における第２の正当性チェック用情報に、整合キーワードＣは特許請求の範囲における第３の正当性チェック用情報に、それぞれ相当する。【００３６】
また、データブロック１とデータブロック２は同内容であり、マイクロコンピュータ１０が車載機器の制御において学習した学習値の集合である。データブロック１は特許請求の範囲における第１のデータ本体に相当し、データブロック２は特許請求の範囲における第２のデータ本体に相当する。【００３７】
図３は、不揮発性メモリ２０における所定アドレス領域２０Ａを示すイメージ図である。なお、所定アドレス領域２０Ａは、物理アドレスとして連続した領域である。図示するように、所定アドレス領域２０Ａにおいては、整合キーワードＡ〜整合キーワードＣまでが連続して並べられている。【００３８】
マイクロコンピュータ１０は、車両システムの終了時に、まず学習値をＲＡＭ上で整理し、その後に図３に示すような一連のデータを生成してＲＡＭの所定領域に準備する。そして、ＲＡＭの所定領域に格納されたデータを一括して（開始アドレスのみを指定して）不揮発性メモリ２０における所定アドレス領域２０Ａに転送する。なお、転送されるデータのサイズが、不揮発性メモリ２０において一度に受容できるデータの最大サイズを超える場合は、分割して連続的に転送してもよい。この場合、一群のデータを送信し、不揮発性メモリ２０からの書込終了のレスポンスを受信すると次の一群のデータを送信する流れの処理を、連続的に実行する。【００３９】
このような一括転送を行うことにより、不揮発性メモリ２０へのデータ書き込みを高速に行うことができる。不揮発性メモリ２０は、一般にアクセス速度がキャッシュメモリやＲＡＭ等に比して遅いため、上記のような一括転送を行うことにより、データ書き込み速度を大幅に向上させることができるのである。【００４０】
整合キーワードＡ〜Ｃは、例えばカウンタ１２により生成されるカウンタ値であり、同一の値に設定される。従って、カウンタ値が２０であるとすると、不揮発性メモリ２０に書き込まれるデータは、値２０を示すデータ、データブロック１、値２０を示すデータ、データブロック２、値２０を示すデータの順に並べられたものとなる。【００４１】
このような態様で不揮発性メモリ２０に書き込みを行うことにより、データの損失を抑制する（最小限に留める）ことが可能となる。以下、その理由について説明する。【００４２】
前述のように、本実施例の情報管理装置１においては、データの書き込み途中に電源遮断等のアクシデントが発生する可能性がある。そして、係る電源遮断等が、書き込み処理が行われている間のどのタイミングで発生したかによって、データブロック１とデータブロック２のいずれが不完全な状態で書き込まれたか（又は破損したおそれがあるか）が異なってくる。【００４３】
図４は、データブロック１の書き込み中に電源遮断等が発生した場合の、不揮発性メモリ２０における所定アドレス領域２０Ａの格納データを示すイメージ図である。図中、２０Ｂは電源遮断等が発生した時点の書込データを示している。本図及び後述の図５では、前回の書込制御が行われた際のカウンタ値が２０であり、今回のカウンタ値が２１であるものとする。【００４４】
図示するように、データブロック１の書き込み中に電源遮断等が発生した場合、整合キーワードＡのみが２１であり、整合キーワードＢ、Ｃは２０のままである。このことから、整合キーワードＡが他の整合キーワードと一致しない場合には、データブロック１の書き込み中に電源遮断等が発生したことが判る。【００４５】
この場合、次に車両システムが始動する際には、データブロック２を選択して制御に用いればよい。この場合におけるデータブロック２は前々回の書込制御で書き込まれたデータであるため、直近のデータは制御に反映させることはできなくなるが、データ損失を一回分のみに留めることができる。【００４６】
一方、図５は、データブロック２の書き込み中に電源遮断等が発生した場合の、不揮発性メモリ２０における所定アドレス領域２０Ａの格納データを示すイメージ図である。図中、２０Ｂは電源遮断等が発生した時点の書込データを示している。【００４７】
図示するように、データブロック２の書き込み中に電源遮断等が発生した場合、整合キーワードＡ、Ｂは２１であるが、整合キーワードＣは２０のままである。このことから、整合キーワードＣが他の整合キーワードと一致しない場合には、データブロック２の書き込み中に電源遮断等が発生したことが判る。【００４８】
この場合、次に車両システムが始動する際には、データブロック１を選択して制御に用いればよい。【００４９】
なお、整合キーワードＡ〜Ｃが全て一致する場合は、いずれのデータブロックを選択してもよいが、便宜上、データブロック１を選択するものと定めてよい。【００５０】
以上から、本実施例の情報管理装置１は、整合キーワードＡ、データブロック１、整合キーワードＢ、データブロック２、整合キーワードＣの順に並べられたデータを、不揮発性メモリ２０における所定アドレス領域２０Ａに記憶させることによって、データの損失を抑制することが可能となる。また、本実施例の情報管理装置１は、上記一連のデータを同じアドレス領域に上書き保存するため、後述するようなバックアップ機能を果たすことができる。【００５１】
図６は、マイクロコンピュータ１０により実行される書込制御の処理フローを示す図である。本フローは、前述のように、車両システムの終了時に実行される。【００５２】
マイクロコンピュータ１０は、まず整合キーワードＡを不揮発性メモリ２０に書き込み（Ｓ１００）、次にデータブロック１を書き込み（Ｓ１０２）、次に整合キーワードＢを書き込み（Ｓ１０４）、次にデータブロック２を書き込み（Ｓ１０６）、最後に整合キーワードＣを書き込む（Ｓ１０８）。【００５３】
＜読込制御＞
前述のように、マイクロコンピュータ１０は、不揮発性メモリ２０から学習値（データブロック）を読み込む際に、整合キーワードＡ〜Ｃの、他の整合キーワードとの整合具合に基づいて、データブロック１とデータブロック２のいずれかを選択する。そして、選択した方のデータブロックを以降の制御に用いる。【００５４】
本実施例では、書込制御において、カウンタ１２により生成された同一のカウンタ値を整合キーワードＡ〜Ｃとして書き込んでいるため、整合キーワードＡ〜Ｃの、他の整合キーワードとの一致具合に基づいて、データブロック１とデータブロック２のいずれかを選択する。【００５５】
図７は、マイクロコンピュータ１０により実行される読込制御の処理フローを示す図である。本フローは、前述のように、車両システムの始動時に実行される。【００５６】
まず、マイクロコンピュータ１０は、整合キーワードＡを不揮発性メモリ２０から読み込み（Ｓ２００）、次に整合キーワードＢを不揮発性メモリ２０から読み込む（Ｓ２０２）。Ｓ２００及びＳ２０２において読み込まれた整合キーワードＡ及び整合キーワードＢは、マイクロコンピュータ１０内部のレジスタ等に格納される。【００５７】
そして、整合キーワードＡと整合キーワードＢが一致するか否かを判定する（Ｓ２０４）。【００５８】
整合キーワードＡと整合キーワードＢが一致すると判定された場合、マイクロコンピュータ１０は、データブロック１を読み込み（Ｓ２０６）、次に整合キーワードＣを読み込む（Ｓ２０８）。Ｓ２０６において読み込まれたデータブロック１は、キャッシュメモリ又はＲＡＭ等に格納される。また、Ｓ２０８において読み込まれた整合キーワードＣは、マイクロコンピュータ１０内部のレジスタ等に格納される。【００５９】
更に、マイクロコンピュータ１０は、整合キーワードＢ（整合キーワードＡでもよい）と整合キーワードＣが一致するか否かを判定する（Ｓ２１０）。マイクロコンピュータ１０は、整合キーワードＢ（又は整合キーワードＡ）と整合キーワードＣが一致する場合は、本フローの１ルーチンを終了する。この場合、Ｓ２０６で読み込まれたデータブロック１が制御に用いられる（選択される）。【００６０】
一方、Ｓ２１０において、整合キーワードＢ（又は整合キーワードＡ）と整合キーワードＣが一致しない場合は、マイクロコンピュータ１０は、データブロック１でデータブロック２を置換する（Ｓ２１２）。前述のように、整合キーワードＣと他の整合キーワードが一致しない場合、データブロック２の書き込み中に電源遮断等が発生したと判断されるからである。具体的には、マイクロコンピュータ１０は、Ｓ２０６で読み込んだデータブロック１を不揮発性メモリ２０のデータブロック２が格納されていたアドレス領域に書き込んで、データブロック２を修復する。【００６１】
更に、マイクロコンピュータ１０は、整合キーワードＢ（又は整合キーワードＡ）で整合キーワードＣを置換する（Ｓ２１４）。これらの処理によって、データブロック２が修復され、整合キーワードＡ〜Ｃが再度一致することになる。【００６２】
Ｓ２０４において、整合キーワードＡと整合キーワードＢが一致しないと判定された場合、マイクロコンピュータ１０は、データブロック２を読み込む（Ｓ２１６）。Ｓ２０６において読み込まれたデータブロック２は、キャッシュメモリ又はＲＡＭ等に格納される。この場合、Ｓ２０６で読み込まれたデータブロック２が制御に用いられ（選択され）、データブロック２によるバックアップ機能が果たされている。【００６３】
整合キーワードＡが他の整合キーワードと不一致であった場合、マイクロコンピュータ１０は、Ｓ２１４の如き整合キーワードの訂正処理を省略することができる。例えば、今回の読込制御において、整合キーワード（Ａ，Ｂ，Ｃ）は（２１，２０，２０）等となることが想定される。そして、次回の書込制御においてデータブロック１の書き込み中に電源遮断等が発生した場合は、整合キーワード（Ａ，Ｂ，Ｃ）は（２２，２０，２０）となる。この結果、データブロック２が選択されることになる。【００６４】
一方、次回のデータブロック２の書き込み中に電源遮断等が発生した場合は、整合キーワード（Ａ，Ｂ，Ｃ）は（２２，２２，２０）となり、データブロック１が選択されると共に、データブロック２が修復される。【００６５】
いずれの場合も、書き込みが正常に終了した方のデータブロックが選択され、特段の問題は生じない。【００６６】
しかしながら、整合キーワードＣが他の整合キーワードと不一致であった場合、今回の読込制御において、整合キーワード（Ａ，Ｂ，Ｃ）は（２１，２１，２０）等となることが想定される。そして、次回の書込制御においてデータブロック１の書き込み中に電源遮断等が発生した場合は、整合キーワード（Ａ，Ｂ，Ｃ）は（２２，２１，２０）となる。【００６７】
この場合、マイクロコンピュータ１０は、データブロック１とデータブロック２のいずれを選択すべきか判断できないことになる。従って、マイクロコンピュータ１０は、整合キーワードＣが不一致であった場合のみ、整合キーワードの訂正処理を行っている。【００６８】
以上説明した本実施例の情報管理装置１は、整合キーワードＡ、データブロック１、整合キーワードＢ、データブロック２、整合キーワードＣの順に並べられたデータを、不揮発性メモリ２０における所定アドレス領域２０Ａに上書き保存させるため、データの損失を抑制することが可能となる。【００６９】
また、本実施例の情報管理装置１は、書込制御において、単に一連のデータを不揮発性メモリ２０における所定アドレス領域２０Ａに書き込むという簡易な処理を行っているため、一括転送によって書込制御を終了することができる。この結果、不揮発性メモリ２０へアクセスへのデータ書き込みを高速に行うことができる。【００７０】
従って、本実施例の情報管理装置１は、不揮発性メモリ２０への書き込みを高速に行なうと共に、データの損失を抑制することができる。【００７１】
更に、本実施例の情報管理装置１は、単独の不揮発性メモリ２０にデータを格納し、マイクロコンピュータ１０内に他の不揮発性メモリ等を備える必要がないため、低コストに装置を構成することができる。【００７２】
なお、図６に示した処理フローが特許請求の範囲における「データ書込ステップ」に相当し、図７に示した処理フローが特許請求の範囲における「データ読込ステップ」に相当する。更に、図７に示した処理フローにおけるＳ２０６、Ｓ２１６の処理が特許請求の範囲における「データ選択ステップ」に相当し、Ｓ２０４、Ｓ２１０の処理が特許請求の範囲における「判定ステップ」に相当し、Ｓ２１２の処理が特許請求の範囲における「データ修復ステップ」に相当する。【００７３】
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。【００７４】
例えば、整合キーワードＡ〜Ｃとして、同一の値が設定されなくともよい。この場合、例えば何らかの相関関係のある３値を整合キーワードＡ〜Ｃとして、設定すればよい。整合キーワードの設定に、カウンタ１２が生成するカウンタ値を用いる場合、カウンタ値が３であれば整合キーワード（Ａ，Ｂ，Ｃ）を（３，３０，３００）、或いは（３，９，２７）等と設定してもよい。また、整合キーワードを数字に限定しなければ、（３Ａ，３Ｂ，３Ｃ）等のテキスト情報として設定してもよい。【００７５】
また、カウンタ１２がインクリメントカウンタであるものとして記載したが、カウンタ１２はデクリメントカウンタであってもよい。【００７６】
また、データブロック２を選択した場合にデータブロック１の修復は行わないものとして記載したが、電源遮断等以外の要因も考慮すると、データブロック２を選択した場合にデータブロック１の修復を行うものとしてもよい。図８は、係る場合の処理フローを示す図である。本図の場合、整合キーワードＡと整合キーワードＢが一致しないと判定された場合、マイクロコンピュータ１０は、データブロック２を読み込み（Ｓ２１６）、データブロック２でデータブロック１を置換する（Ｓ２１８）。【００７７】
こうすれば、読込制御時におけるメモリアクセス回数は増加するものの、データの消失を更に抑制することができる。【００７８】
また、Ｓ２１６の後に整合キーワードの訂正処理を行ってもよい。この場合、整合キーワードＡで整合キーワードＢ及びＣを置換する。図９は、係る場合の処理フローを示す図である。本図の場合、整合キーワードＡと整合キーワードＢが一致しないと判定された場合、マイクロコンピュータ１０は、データブロック２を読み込み（Ｓ２１６）、整合キーワードＡで整合キーワードＢ及びＣを置換する（Ｓ２２０）。【００７９】
こうすれば、読込制御時におけるメモリアクセス回数は増加するものの、データの消失を更に抑制することができる。【００８０】
また、データブロック２を選択した場合にデータブロック１の修復を行い、且つＳ２１６の後に整合キーワードの訂正処理を行ってもよい。図１０は、係る場合の処理フローを示す図である。本図の場合、整合キーワードＡと整合キーワードＢが一致しないと判定された場合、マイクロコンピュータ１０は、データブロック２を読み込み（Ｓ２１６）、データブロック２でデータブロック１を置換し（Ｓ２１８）、整合キーワードＡで整合キーワードＢ及びＣを置換する（Ｓ２２０）。【００８１】
こうすれば、読込制御時におけるメモリアクセス回数は増加するものの、データの消失を更に抑制することができる。
【産業上の利用可能性】
【００８２】
本発明は、コンピュータ産業、自動車その他の移動体、並びにその部品等の製造産業等に、幅広く利用することができる。
【符号の説明】
【００８３】
１  情報管理装置
１０  マイクロコンピュータ
１２  カウンタ
２０  不揮発性メモリ
３０  通信線
３２  アドレスバス
３４  データバス
【図１】
2011077519.tif 000003
【図２】
2011077519.tif 000004
【図３】
2011077519.tif 000005
【図４】
2011077519.tif 000006
【図５】
2011077519.tif 000007
【図６】
2011077519.tif 000008
【図７】
2011077519.tif 000009
【図８】
2011077519.tif 000010
【図９】
2011077519.tif 000011
【図１０】
2011077519.tif 000012
【国際調査報告】
2011077519.tif 000013
2011077519.tif 000014