説明

不揮発性メモリのデータ更新方法、制御装置、及びデータ更新プログラム

【課題】 如何なる機種や如何なる製造メーカの不揮発性メモリに対しても、意図しないデータ消去やデータ改竄を防止しうる汎用性を備え、また、安価かつ簡易に実現しうる実用性をも兼ね備えた不揮発性メモリのデータ更新方法、制御装置、及び不揮発性メモリのデータ更新プログラムを提供することにある。
【解決手段】 ホストコンピュータ11からのコマンドに基づき所定パターンを記憶するRAM3を用いて、更新が必要なデータが属するセクタを消去するセクタ消去工程を含む不揮発性メモリ(フラッシュROM1)のデータ更新方法であって、そのセクタ消去工程は、複数のセクタ消去手順に分割されるとともに、セクタ消去手順の前後のうち少なくとも一において、所定パターンの真偽を判定するパターン真偽判定工程を含み、パターン真偽判定工程による判定結果が真であるとき、セクタを消去する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、不揮発性メモリのデータ更新方法、制御装置、及び不揮発性メモリのデータ更新プログラムに関するものであって、特に、意図しないデータ消去やデータ改竄を防ぐことが可能なものに関する。
【背景技術】
【0002】
従来より、給電が遮断されても記憶内容を保持することができるとともに、プログラムによって電気的に内容を書き換えることが可能なメモリとして、例えばEEPROM(Electrically Erasable Programmable Read Only Memory)やフラッシュメモリなどの不揮発性メモリが利用されている。この不揮発性メモリのデータ更新方法について、図5を用いて以下に説明する。
【0003】
図5は、不揮発性メモリのデータ更新方法の流れを示すフローチャートである。
【0004】
図5において、まず、RAM(Random Access Memory)等の揮発性メモリにマッピングされたワーキングエリアを用意して、そのワーキングエリアに、更新が必要なデータが属するセクタをコピーして一時退避する(ステップS101)。そして、そのワーキングエリア上で更新が必要なデータについて更新作業(例えば、ソフトウェアによるbitシフト処理やAND処理など)が行われる(ステップS102)。そして、不揮発性メモリにおいて、更新が必要なデータが属するセクタの消去が行われる(ステップS103)。最後に、上述したワーキングエリア上の更新後データが、ステップS103によって消去が行われたセクタに書き込まれ(ステップS104)、データの更新が完了する。
【0005】
ここで、このような不揮発性メモリのデータ更新方法において、意図しないデータ消去やデータ改竄を防ぐプロテクト機能が付加されたデータ更新方法が提案されている(例えば特許文献1参照)。特許文献1に記載された発明によれば、フラッシュROMへの書き込みを禁止する状態(ライトプロテクト状態)を設定又は解除するライトプロテクト制御手段を用いて、フラッシュROMに対し、複数のライトプロテクト解除コードを所定の遅延時間を介在させつつ書き込んでいく。これにより、正常に動作している場合と、プログラムが暴走してライトプロテクトコードが発行した場合とを区別することができ、ひいては誤書き込みを防止することができる。
【0006】
【特許文献1】特開2003−132687号公報(図2)
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、上述した特許文献1記載の発明では、フラッシュROMの機種や製造メーカが異なると、ライトプロテクト状態を設定又は解除する方法(ソフトウェア)の変更だけでなく、場合によってはライトプロテクト状態を設定又は解除するライトプロテクト制御手段(ハードウェア)の変更も余儀なくされ、汎用性に欠ける。その結果、不揮発性メモリのデータ更新に関して、意図しないデータ消去やデータ改竄を防ぐための対策コストが嵩み、実用性にも欠ける。
【0008】
本発明は、以上の点に鑑みてなされたものであり、その目的は、如何なる機種や如何なる製造メーカの不揮発性メモリに対しても、意図しないデータ消去やデータ改竄を防止しうる汎用性を備え、また、安価かつ簡易に実現しうる実用性をも兼ね備えた不揮発性メモリのデータ更新方法、制御装置、及び不揮発性メモリのデータ更新プログラムを提供することにある。
【課題を解決するための手段】
【0009】
以上のような課題を解決するために、本発明は、以下のものを提供する。
【0010】
(1) 上位装置からのコマンドに基づき所定パターンを記憶する記憶手段を用いて、更新が必要なデータが属するセクタを消去するセクタ消去工程を含む不揮発性メモリのデータ更新方法であって、前記セクタ消去工程は、複数のセクタ消去手順に分割されるとともに、前記セクタ消去手順の前後のうち少なくとも一において、前記所定パターンの真偽を判定するパターン真偽判定工程を含み、前記パターン真偽判定工程による判定結果が真であるとき、前記セクタを消去することを特徴とする不揮発性メモリのデータ更新方法。
【0011】
本発明によれば、不揮発性メモリのデータ更新方法に、例えばホストコンピュータなどの上位装置からのコマンドに基づき所定パターンを記憶する記憶手段を用いて、更新が必要なデータが属するセクタを消去するセクタ消去工程が含まれている。また、そのセクタ消去工程は、複数のセクタ消去手順に分割されるとともに、そのセクタ消去手順の前後のうち少なくとも一において、所定パターンの真偽を判定するパターン真偽判定工程が含まれている。そして、そのパターン真偽判定工程による判定結果が真であるとき、セクタを消去することとしたので、パターン真偽判定工程というアプリケーションレベルでの工程による判定結果をトリガとして、セクタ消去可能か否かが決定されることとなる。
【0012】
従って、如何なる機種や如何なる製造メーカの不揮発性メモリに対しても、意図しないデータ消去やデータ改竄を防止することができる。また、偶発的なプログラム暴走等が発生した場合であっても、パターン真偽判定手段が真偽を判定する所定パターンは、上位装置からのコマンドに基づき記憶手段に記憶されたものでなければ真のものとならないで、誤消去や誤書き込みを防ぐことができ、ひいては不揮発性メモリのデータ更新方法についての信頼性を高めることができる。さらに、本発明は、アプリケーションレベルでのプロテクト機能を実現しうるものなので、安価かつ簡易に意図しないデータ消去等を防ぐことができる。
【0013】
(2) 前記セクタ消去工程は、前記複数のセクタ消去手順のうち最後のセクタ消去手順の前に、前記パターン真偽判定工程を含むことを特徴とする(1)記載の不揮発性メモリのデータ更新方法。
【0014】
本発明によれば、複数のセクタ消去手順のうち最後のセクタ消去手順の前に、パターン真偽判定工程が含まれることとしたので、必要最小限の処理負荷で、アプリケーションレベルでのプロテクト機能を実現することができる。
【0015】
(3) 前記所定パターンは、前記記憶手段の各記憶領域に複数記憶され、前記パターン真偽判定工程は、前記所定パターンの真偽を複数回判定するとともに、前記セクタ消去工程は、前記パターン真偽判定工程による判定結果が全て真であるとき、前記セクタを消去することを特徴とする(1)又は(2)記載の不揮発性メモリのデータ更新方法。
【0016】
本発明によれば、パターン真偽判定工程は、記憶手段の各記憶領域に複数記憶された所定パターンの真偽をそれぞれ判定するとともに、その判定結果が全て真であるときにセクタを消去することとしたので、アプリケーションレベルでのプロテクト機能を重畳させることができ、ひいては意図しないデータ消去やデータ改竄をより確実に防止することができる。
【0017】
(4) 前記所定パターンが、前記記憶手段の各記憶領域に複数記憶される場合において、直前に記憶された所定パターンが正常に記憶されていないときには、前記所定パターンの代わりに予め定められた異常パターンが前記記憶手段の各記憶領域に複数記憶されることを特徴とする(3)記載の不揮発性メモリのデータ更新方法。
【0018】
本発明によれば、記憶手段の各記憶領域に所定パターンが順番に複数記憶される場合において、直前に記憶された所定パターンが正常に記憶されていないときには、所定パターンの代わりに予め定められた異常パターン(例えばゼロ)が記憶手段の各記憶領域に複数記憶されることとしたので、上位装置からのコマンドに基づき所定パターンを記憶手段の記憶する段階でも、誤ったパターンが記憶されていないか否かをチェックすることができ、ひいては不揮発性メモリのデータ更新方法についての信頼性をより向上させることができる。
【0019】
(5) 前記所定パターンが、前記記憶手段の各記憶領域に複数記憶される場合において、所定時間内に前記所定パターンが全て記憶されなかったときには、前記所定パターンの代わりに予め定められた異常パターンが前記記憶手段の各記憶領域に複数記憶されることを特徴とする(3)又は(4)記載の不揮発性メモリのデータ更新方法。
【0020】
本発明によれば、記憶手段の各記憶領域に所定パターンが順番に複数記憶される場合において、所定時間内に所定パターンが全て記憶されなかったときには、所定パターンの代わりに予め定められた異常パターン(例えばゼロ)が記憶手段の各記憶領域に複数記憶されることとしたので、上位装置からのコマンドに基づき所定パターンを記憶手段の記憶する段階でも、偶発的なプログラム暴走等に起因して、誤ったパターンが記憶されていないか否かをチェックすることができ、ひいては不揮発性メモリのデータ更新方法についての信頼性をより向上させることができる。
【0021】
(6) (1)から(5)のいずれか記載の不揮発性メモリのデータ更新方法を実行する制御手段を備えた不揮発性メモリの制御装置。
【0022】
本発明によれば、上述した不揮発性メモリのデータ更新方法を実行する制御手段を備えた不揮発性メモリの制御装置を用いることによって、如何なる機種や如何なる製造メーカの不揮発性メモリに対しても、意図しないデータ消去やデータ改竄を防止することができる。
【0023】
(7) 上位装置からのコマンドに基づき所定パターンを記憶する記憶手段を用いて、更新が必要なデータが属するセクタを消去するセクタ消去工程を含む不揮発性メモリのデータ更新プログラムであって、前記セクタ消去工程は、複数のセクタ消去手順に分割されるとともに、前記セクタ消去手順の前後のうち少なくとも一において、前記所定パターンの真偽を判定するパターン真偽判定工程を含み、前記パターン真偽判定工程による判定結果が真であるとき、前記セクタを消去することを特徴とする不揮発性メモリのデータ更新プログラム。
【0024】
本発明によれば、複数のセクタ消去手順に分割されたセクタ消去工程を含む不揮発性メモリのデータ更新プログラムであって、そのセクタ消去手順の前後のうち少なくとも一に、上位装置からのコマンドに基づき記憶手段に記憶された所定パターンの真偽を判定するパターン真偽判定工程が含まれることとし、そのパターン真偽判定工程による判定結果が真であるときに、セクタが消去されるようにした不揮発性メモリのデータ更新プログラムを実行することによって、如何なる機種や如何なる製造メーカの不揮発性メモリに対しても、意図しないデータ消去やデータ改竄を防止することができる。
【発明の効果】
【0025】
本発明に係る不揮発性メモリのデータ更新方法、制御装置、及び不揮発性メモリのデータ更新プログラムによれば、如何なる機種や如何なる製造メーカの不揮発性メモリに対しても、意図しないデータ消去やデータ改竄を防止しうる汎用性と、安価かつ簡易に実現しうる実用性とを兼ね備えた、アプリケーションレベルでのプロテクト機能を実現することができる。
【発明を実施するための最良の形態】
【0026】
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。なお、以下では、不揮発性メモリの一例としてフラッシュROMを考え、このフラッシュROMがカードリーダに搭載された場合について説明する。
【0027】
[電気的構成]
図1は、本発明の実施の形態に係る不揮発性メモリのデータ更新方法を実行するシステムの電気的構成を示すブロック図である。
【0028】
図1において、本発明の実施の形態に係る不揮発性メモリのデータ更新方法を実行するシステムは、フラッシュROM1,CPU2,RAM3,ROM4,I/Fポート5を有するカードリーダ10と、ATMなどのホストコンピュータ11と、から構成される。
【0029】
ホストコンピュータ11は、I/Fポート5を介して、カードリーダ10に搭載されたCPU2と電気的に接続され、また、フラッシュROM1,ROM4,及びRAM3も、このCPU2と電気的に接続されている。CPU2は、フラッシュROM1に対して、従来の不揮発性メモリのデータ更新方法と同様、RAM3への退避,データ更新,セクタ消去,セクタ書き込みといった各工程の処理(図5参照)を実行しうる。
【0030】
フラッシュROM1は、複数のメモリ領域(セクタ)から構成されており、上述したセクタ消去(図5でいうステップS103)の工程処理では、セクタ内の全データを一旦消去しなければならないことになっている。また、フラッシュROM1には、カードリーダ10としての動作や機能をコントロールする実行プログラムを書き換えたり、その実行プログラムが正常であるか否かを判定したりするスーパーバイザープログラム(BOOTプログラム)を格納するセクタ、バックアップデータを格納するセクタ、カードリーダ10で実際に実行される実行プログラムを格納するセクタなど、格納対象の異なるセクタが複数存在している。
【0031】
特に、BOOTプログラムに関しては、書き換え処理は不要であり、仮に、意図しない誤消去或いは誤書き込みが行われると、カードリーダ10の動作が不安定になる虞がある。このようなことから、本実施形態に係るカードリーダ10では、このBOOTプログラムの誤消去或いは誤書き込みをも防ぐものとなっている。以下、更新が必要なデータが属するセクタを消去するセクタ消去工程について詳しく説明する。
【0032】
[セクタ消去工程]
図2は、本発明の実施の形態に係る不揮発性メモリのデータ更新方法のうち、セクタ消去工程の流れを示すフローチャートである。図2(a)に示すように、セクタ消去工程は、複数のセクタ消去手順(セクタ消去手順1,セクタ消去手順2,・・・)に分割されている。
【0033】
図2(a)において、まず、セクタ消去手順1が実行される(ステップS1)。より具体的には、カードリーダ10のCPU2は、ROM4に格納された関数ROMClear()を読み出して、この関数の処理のうち最初の手順に相当するセクタ消去手順1を実行する。
【0034】
次いで、セクタ消去手順1が終了すると、CPU2は、パターン真偽判定工程の処理を実行する(ステップS2)。より具体的には、カードリーダ10のCPU2は、ROM4に格納された関数Actcheck()を読み出して、RAM3にアクセスし、ホストコンピュータ11からのコマンドに基づき記憶された所定パターン(例えば文字列,数字列,全く意味のないコード列など、如何なるものであってもよいが、予め定義されたものとする)に誤りがないか否かを判断する。誤りがない場合には、関数Actcheck()の戻り値として真が戻され、一箇所でも誤りがある場合には、関数Actcheck()の戻り値として偽が戻される。なお、このパターン真偽判定工程の詳細については、図3及び図4を用いて後述する。
【0035】
次いで、CPU2は、ステップS2のパターン真偽判定工程の判定結果が真であるか否かを判断する(ステップS3)。より具体的には、CPU2は、上述のとおり、関数Actcheck()の戻り値として真が戻ってきたか、或いは偽が戻ってきたかを判断する。
【0036】
関数Actcheck()の戻り値として真が戻ってきた場合には、処理をステップS4に移す一方で、関数Actcheck()の戻り値として偽が戻ってきた場合には、異常状態であるとして処理を中断する。
【0037】
ステップS4では、セクタ消去手順2が実行される。より具体的には、CPU2は、ステップS1で読み出された関数ROMClear()の処理のうち2番目の手順に相当するセクタ消去手順2を実行する。
【0038】
次いで、セクタ消去手順2が終了すると、CPU2は、再びパターン真偽判定工程の処理を実行する(ステップS5)。そして、上述同様、関数Actcheck()の戻り値が真か偽かを判断し(ステップS6)、真である場合には処理を次のステップに移し、偽である場合には異常状態であるとして処理を中断する。
【0039】
以上説明したように、セクタ消去手順→パターン真偽判定工程→真偽判断という一連の処理が複数回繰り返され、最後に、CPU2によって消去完了か否かが判断される(ステップS7)。CPU2は、消去が未だ完了していないと判定した場合には、ステップS7の処理を繰り返す一方で、消去が完了したと判定した場合には、セクタ消去工程を終了する。
【0040】
このように、本実施形態に係るフラッシュROM1のデータ更新方法では、複数のセクタ消去手順の中に、パターン真偽判定工程が適宜埋め込まれているので、意図しないデータ消去やデータ改竄が試みられた場合だけでなく、プログラム暴走などによってプログラムカウンタが偶然、関数ROMClear()のコード上にジャンプしてきた場合であっても、実際にデータ消去やデータ改竄が行われることはない。従って、フラッシュROM1のデータ更新を行う際の信頼性を向上させることができる。そして、上述したとおり、BOOTプログラムの誤消去或いは誤書き込みをも防ぐことができる。
【0041】
なお、図2(a)は、各セクタ消去手順の直後にパターン真偽判定工程を実行するようにしており、プロテクト機能を重畳させているので、意図しないデータ消去をより確実に防ぐことが可能である。また、図2(a)では、セクタ消去工程を考えたが、セクタ書き込み工程についても同様のことがいえる。すなわち、セクタ書き込み工程は、複数のセクタ書き込み手順に分割されており、ROM4に格納された関数ROMWrite()が読み出されることによって、各セクタ書き込み手順の直後にパターン真偽判定工程が実行される。このようにして、意図しないデータの書き込みをより確実に防ぐことができる。
【0042】
一方で、図2(b)では、セクタ消去工程において、まず、複数のセクタ消去手順(ステップS11、ステップS12、ステップS13、・・・)までが実行され、その後、パターン真偽判定工程が実行される(ステップS14)。そして、実際に消去を実行するセクタ消去手順Fが実行された後、消去完了か否かが判断されている(ステップS16)。このように、パターン真偽判定工程は、最後のセクタ消去手順Fの前に1回だけ実行することも可能である。これにより、必要最小限の処理負荷で、アプリケーションレベルでのプロテクト機能を実現することができる。
【0043】
次に、図2を用いて説明したパターン真偽判定工程、及び、そのパターン真偽判定工程の前提工程となるパターン記憶工程について、以下詳しく説明する。
【0044】
図3は、パターン真偽判定工程の前提工程となるパターン記憶工程の流れを示すフローチャートである。特に、複数の所定パターンが順番にRAM3に記憶される際、直前に記憶された所定パターンが正常に記憶されているか否かを逐一判断することを特徴とするフローチャートである。
【0045】
図3において、まず、CPU2は、ホストコンピュータからのコマンドを受信すると、このコマンドに基づき、ROM4から独立した関数SetArea_0()を読み出して、予め決められた所定パターンをRAM3に記憶する。そして、CPU2は、ホストコンピュータから次のコマンドを受信すると、このコマンドに基づき、ROM4から独立した関数SetArea_1()を読み出して、予め決められた所定パターンをRAM3に記憶する。
【0046】
但し、2個目以降、所定パターンをRAM3に記憶する際には、直前に記憶されたパターンは正常であるか否か、すなわち直前に記憶された所定パターンに誤りがないか否かがCPU2によって判断される(ステップS21)。
【0047】
CPU2は、正常であると判定した場合には、その所定パターンをRAM3に記憶した上で(ステップS22)、本サブルーチンを終了する。一方で、正常でないと判定した場合には、その所定パターンをRAM3に記憶することはせず、直前まで記録されたRAM3上の所定パターン全てをゼロクリアした上で(ステップS23)、本サブルーチンを終了する。なお、「ゼロクリア」は、ゼロが書き込まれるようにしてもよいが、他の決められた値(例えば「1」)が書き込まれるようにしてもよい。
【0048】
このように、図3に示すパターン記憶工程によれば、ホストコンピュータ11からのコマンドに基づき所定パターンをRAM3に記憶する段階でも、誤ったパターンが記憶されていないかチェックしているので、結果として、フラッシュROM1のデータ更新方法についての信頼性をより向上させることができる。なお、関数SetArea_0()〜関数SetArea_n()が決められた順番で実行されない限り、関数Actcheck()の戻り値が真になることはない。
【0049】
なお、CPU2は、ROM4から独立した関数SetArea_0()を読み出すと同時に、タイマ機能を作動させ(例えば変数AreaTimerにタイマ値をセットし)、最後の所定パターンを記憶するための関数SetArea_n()を読み出すまでの間に、所定時間が経過したことを判断すると(例えば変数AreaTimerがゼロになったことを判断すると)、全てのエリアをゼロクリアとするようにしてもよい。これにより、一連の処理が変数AreaTimerにセットされる時間内に完結しなければならないので、時間以内の処理完結が条件に加わることとなり、プロテクト機能を更に厳重化することができる。
【0050】
図4は、図2に示すセクタ消去工程内で実行されるパターン真偽判定工程の流れを示すフローチャートである。なお、このパターン真偽判定工程が行われる前提工程として、図3に示すパターン記憶工程が終了しているものとする。
【0051】
図4において、まず、CPU2は、ROM4に格納された関数Actcheck()を読み出して、RAM3のエリア0にアクセスし、所定パターンに誤りがないか否かを判断する(ステップS31)。誤りがなく正常であると判定した場合には、次にRAM3のエリア1にアクセスして、所定パターンに誤りがないか否かを判断する(ステップS32)。以下同様にして、RAM3のエリアnまでアクセスして、所定パターンに誤りがないか否かを判断する(ステップS34)。そして、エリア0〜エリアnまでの全てのエリアについて、所定パターンに誤りがないと判定した場合には、関数Actcheck()の戻り値として真を戻す。一方で、エリア0〜エリアnまでのいずれかのエリアについて、1つでも所定パターンに誤りがあると判定した場合には、エリア0〜エリアnまでをゼロクリアした上で(ステップS35)、関数Actcheck()の戻り値として偽を戻す。
【0052】
以上説明したように、パターン記憶工程(図3参照)、パターン真偽判定工程(図4参照)、セクタ消去工程(図2参照)の各工程を含むフラッシュROM1のデータ更新方法は、如何なる機種や如何なる製造メーカの不揮発性メモリに対しても、意図しないデータ消去やデータ改竄を防止しうる汎用性と、安価かつ簡易に実現しうる実用性とを兼ね備えたものとなる。
【0053】
なお、上述したスーパーバイザープログラムは、それ自身は通常動作せずともメインのプログラムが何らかの事情により誤消去・誤書き込みされた場合には、それなりの復旧動作を司らなければならない。そのため、誤った操作による消去や書き込みはなされないのが前提となる。ただし、最悪の場合は、それらのプログラムを書き換えなくてはならない程のバグや仕様変更が発生した場合には、何らかの手段を残しておかなくては回収・アップデートができないことになる。
【0054】
同様にして、例えば個体を識別するためのシリアル番号や製造時の履行データなどは、通常は一度書き込まれたら上書きや消去は不可能となっているのが原則である。しかし、全く書き換えや初期化ができないとなると、メンテナンスをすることができない。
【0055】
このように、通常では、初期化・消去・上書きといったような処理は行うことができないようにするため、単純なコマンドや操作では実行を抑止し、場合によっては実行抑止を解除しうる仕組みが必要である。そこで、本実施形態に係る不揮発性メモリのデータ更新方法を用いれば、単純なコマンドや操作では実行を抑止することができる一方、アプリケーションレベルの様々な関数よりなる制御プログラムによって実行抑止を解除することができるので、不揮発性メモリがディスコンや欠品などの理由により、他メーカの代用品或いは代用機種に代えた場合であっても、プログラム変更をすることなく、プロテクト機能の利益を継続して受けることができる。
【産業上の利用可能性】
【0056】
本発明に係る不揮発性メモリのデータ更新方法、制御装置、及びデータ更新プログラムは、如何なる機種や如何なる製造メーカの不揮発性メモリに対しても、意図しないデータ消去やデータ改竄を防止しうるものとして有用である。
【図面の簡単な説明】
【0057】
【図1】本発明の実施の形態に係る不揮発性メモリのデータ更新方法を実行するシステムの電気的構成を示すブロック図である。
【図2】本発明の実施の形態に係る不揮発性メモリのデータ更新方法のうち、セクタ消去工程の流れを示すフローチャートである。
【図3】パターン真偽判定工程の前提工程となるパターン記憶工程の流れを示すフローチャートである。
【図4】図2に示すセクタ消去工程内で実行されるパターン真偽判定工程の流れを示すフローチャートである。
【図5】不揮発性メモリのデータ更新方法の流れを示すフローチャートである。
【符号の説明】
【0058】
1 フラッシュROM
2 CPU
3 RAM
4 ROM
5 I/Fポート
10 カードリーダ
11 ホストコンピュータ

【特許請求の範囲】
【請求項1】
上位装置からのコマンドに基づき所定パターンを記憶する記憶手段を用いて、更新が必要なデータが属するセクタを消去するセクタ消去工程を含む不揮発性メモリのデータ更新方法であって、
前記セクタ消去工程は、
複数のセクタ消去手順に分割されるとともに、前記セクタ消去手順の前後のうち少なくとも一において、前記所定パターンの真偽を判定するパターン真偽判定工程を含み、
前記パターン真偽判定工程による判定結果が真であるとき、前記セクタを消去することを特徴とする不揮発性メモリのデータ更新方法。
【請求項2】
前記セクタ消去工程は、前記複数のセクタ消去手順のうち最後のセクタ消去手順の前に、前記パターン真偽判定工程を含むことを特徴とする請求項1記載の不揮発性メモリのデータ更新方法。
【請求項3】
前記所定パターンは、前記記憶手段の各記憶領域に複数記憶され、
前記パターン真偽判定工程は、前記所定パターンの真偽を複数回判定するとともに、
前記セクタ消去工程は、前記パターン真偽判定工程による判定結果が全て真であるとき、前記セクタを消去することを特徴とする請求項1又は2記載の不揮発性メモリのデータ更新方法。
【請求項4】
前記所定パターンが、前記記憶手段の各記憶領域に複数記憶される場合において、
直前に記憶された所定パターンが正常に記憶されていないときには、前記所定パターンの代わりに予め定められた異常パターンが前記記憶手段の各記憶領域に複数記憶されることを特徴とする請求項3記載の不揮発性メモリのデータ更新方法。
【請求項5】
前記所定パターンが、前記記憶手段の各記憶領域に複数記憶される場合において、
所定時間内に前記所定パターンが全て記憶されなかったときには、前記所定パターンの代わりに予め定められた異常パターンが前記記憶手段の各記憶領域に複数記憶されることを特徴とする請求項3又は4記載の不揮発性メモリのデータ更新方法。
【請求項6】
請求項1から5のいずれか記載の不揮発性メモリのデータ更新方法を実行する制御手段を備えた不揮発性メモリの制御装置。
【請求項7】
上位装置からのコマンドに基づき所定パターンを記憶する記憶手段を用いて、更新が必要なデータが属するセクタを消去するセクタ消去工程を含む不揮発性メモリのデータ更新プログラムであって、
前記セクタ消去工程は、
複数のセクタ消去手順に分割されるとともに、前記セクタ消去手順の前後のうち少なくとも一において、前記所定パターンの真偽を判定するパターン真偽判定工程を含み、
前記パターン真偽判定工程による判定結果が真であるとき、前記セクタを消去することを特徴とする不揮発性メモリのデータ更新プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2007−11929(P2007−11929A)
【公開日】平成19年1月18日(2007.1.18)
【国際特許分類】
【出願番号】特願2005−194716(P2005−194716)
【出願日】平成17年7月4日(2005.7.4)
【出願人】(000002233)日本電産サンキョー株式会社 (1,337)
【Fターム(参考)】