JP2000305862A - データ記憶方法および情報処理装置 - Google Patents

データ記憶方法および情報処理装置

Info

Publication number
JP2000305862A
JP2000305862A JP2000025179A JP2000025179A JP2000305862A JP 2000305862 A JP2000305862 A JP 2000305862A JP 2000025179 A JP2000025179 A JP 2000025179A JP 2000025179 A JP2000025179 A JP 2000025179A JP 2000305862 A JP2000305862 A JP 2000305862A
Authority
JP
Japan
Prior art keywords
data
write
erase
area
writing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2000025179A
Other languages
English (en)
Other versions
JP3632543B2 (ja
Inventor
Naohito Sugai
尚人 菅井
Atsushi Setsutsu
敦 攝津
Saburo Furubayashi
三郎 古林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2000025179A priority Critical patent/JP3632543B2/ja
Priority to US09/640,454 priority patent/US6795890B1/en
Publication of JP2000305862A publication Critical patent/JP2000305862A/ja
Application granted granted Critical
Publication of JP3632543B2 publication Critical patent/JP3632543B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 フラッシュメモリのデータを書き換える際
の信頼性を向上させること。フラッシュメモリの消去回
数を削減することにより、劣化を低減する。 【解決手段】 フラッシュメモリ101と、フラッシ
ュメモリ101の消去単位のデータを記憶する消去ブロ
ックバッファ103を有する不揮発性メモリ102と、
フラッシュメモリへの書き込み要求データを消去ブロッ
クバッファ103に書き込む書き込み制御手段111
と、フラッシュメモリ内の不変データを消去ブロックバ
ッファに待避させる待避手段112と、フラッシュメモ
リのデータ消去を指示する消去命令手段301と、消去
ブロックバッファのデータをフラッシュメモリ101に
書き込む書き込み手段とを備える。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、あらかじめ定めら
れた消去単位での消去および書き込みがなされる複数の
消去単位領域を有するメモリ、例えばフラッシュメモリ
を使用する情報処理装置に関するものである。
【0002】
【従来の技術】フラッシュメモリは、電気的に消去・書
き込みが可能な半導体メモリであり、電源を供給しなく
ても記憶内容を保持できるという特徴がある。フラッシ
ュメモリは、特に産業用コンピュータにおいて、ハード
ディスクに代わる記録媒体として使用されることが多
い。しかし、フラッシュメモリにおいては、新たなデー
タを直接上書きすることができない。つまり、フラッシ
ュメモリ上のデータの書き換えを行なうには、書き込み
の前にまず、64Kなどといった消去単位を、一旦、一
括して消去しなければならない。消去単位を消去した
後、消去した消去単位全体を新たに書き込むことにより
データの書き換えを行なう。
【0003】特に、大容量・高密度のフラッシュメモリ
は、その構造上、一般に消去単位が書き換え単位に比べ
大きい。従って、書き換えデータが消去単位よりも容量
の小さいことが多くなるが、このようなデータを書き換
える場合でも、書き換えないデータ部分も含めた消去単
位全体を一旦消去し、書き換えないデータ部分も、もう
一度フラッシュメモリに書き込まなくてはならない。こ
のための書き換え方式の技術として、特開平5-233
478がある。図18は、この従来技術の回路の概略を
示す構成図である。図18を用いて動作を説明する。
【0004】FRAM4のデータの書き換え動作につい
て説明する。SRAM3上に、FRAM4の書き換え情
報をダウンロードする。FRAM4上における書き換え
ないエリアの情報を、レジスタ5にコピーし、EPRO
M2内のFRAMクリアプログラムによって、FRAM
4の内容を全消去する。そして、SRAM3上にダウン
ロードした書き換え情報をFRAM4にコピーし、さら
に、レジスタ5に待避しておいた情報をFRAM4上の
元の書き換えないエリアにコピーする。
【0005】
【発明が解決しようとする課題】しかし、上記従来技術
においては、フラッシュメモリの書き換え時に情報を待
避する領域であるレジスタ5として揮発性のメモリを使
用すると、消去後に装置への電源供給が断たれた等の場
合には、書き換えを行なう領域のみならず、書き換えを
行なわない領域のデータまでもが失われてしまい、信頼
性を低下させるという問題があった。又、このようにレ
ジスタに記録されたデータが消失することを防ぐために
は、レジスタに一旦記録されたデータは、すぐにフラッ
シュメモリに書き込まなくてはならなかった。そのた
め、動作上、フラッシュメモリの書き換え毎にフラッシ
ュメモリの消去を行う必要があり、結果として、書き換
えの回数と同じ回数だけの消去回数が必要であった。一
方、フラッシュメモリには、消去可能な回数に制限(一
般に10万回程度)があり、できるだけ消去回数を減ら
すことも必要であるが、上記従来技術においては、徒に
フラッシュメモリの消去回数を増やすことになり、その
寿命を短縮させる原因となっていた。
【0006】この発明は、上記のような問題を解決する
ためになされたもので、フラッシュメモリのデータを書
き換える場合に、メモリのデータが容易に消去すること
なく、フラッシュメモリへのデータ書き込み時の信頼性
を向上させた情報処理装置を提供することを第1の目的
とする。又、本発明は、フラッシュメモリの消去回数へ
の制限の課題に対し、簡易な構造で、かつ信頼性を維持
しつつ、フラッシュメモリの消去回数を削減することに
より、フラッシュメモリの劣化を低減することのできる
情報処理装置を提供することを第2の目的とする。
【0007】
【課題を解決するための手段】この発明におけるデータ
記憶方法は、あらかじめ定められた消去単位でデータの
消去および書き込みがなされる複数の消去単位領域を有
するメモリと、前記消去単位領域に書き込む書き込みデ
ータおよび前記消去単位領域内の不変データの双方を記
憶する不揮発性の消去ブロックバッファとを用いて前記
メモリ内のデータの書き換えを行なうデータ記憶方法で
あって、前記メモリの第1の消去単位領域に第1の書き
込みデータを書き込むことを要求する第1の書き込み要
求に対し、前記第1の書き込みデータを前記消去ブロッ
クバッファに書き込む第1の消去ブロックバッファ書き
込みステップと、前記メモリの第1の消去単位領域に第
1の書き込みデータを書き込むことを要求する第1の書
き込み要求に対し、前記第1の消去単位領域内の不変デ
ータを前記消去ブロックバッファに書き込む第2の消去
ブロックバッファ書き込みステップと、前記第2の消去
ブロックバッファ書き込みステップの後、前記第1の消
去単位領域のデータを消去する消去ステップと、前記第
1の消去ブロックバッファ書き込みステップ及び前記消
去ステップの後、前記消去ブロックバッファに記憶され
た前記第1の書き込みデータ及び前記不変データを前記
第1の消去単位領域に書き込むメモリ書き込みステップ
とを有するものである。この発明は一例として実施の形
態1(図3)に記載されている。
【0008】この発明におけるデータ記憶方法は、あら
かじめ定められた消去単位でデータの消去および書き込
みがなされる複数の消去単位領域を有するメモリと、前
記消去単位領域に書き込む書き込みデータおよび前記消
去単位領域内の不変データの双方を記憶する不揮発性の
消去ブロックバッファとを用いて前記メモリ内のデータ
の書き換えを行なうデータ記憶方法であって、前記メモ
リの第1の消去単位領域に第1の書き込みデータを書き
込むことを要求する第1の書き込み要求に対し、前記第
1の書き込みデータを前記消去ブロックバッファに書き
込む第1の消去ブロックバッファ書き込みステップと、
前記メモリの第1の消去単位領域に第1の書き込みデー
タを書き込むことを要求する第1の書き込み要求に対
し、前記第1の消去単位領域内の不変データを前記消去
ブロックバッファに書き込む第2の消去ブロックバッフ
ァ書き込みステップと、前記第1の消去ブロックバッフ
ァ書き込みステップの後、前記メモリに第2の書き込み
データを書き込むことを要求する第2の書き込み要求に
対して、前記第2の書き込みデータを前記消去ブロック
バッファに書き込む第3の消去ブロックバッファ書き込
みステップと、前記第2の消去ブロックバッファ書き込
みステップ及び前記第3の消去ブロックバッファ書き込
みステップの後、前記消去ブロックバッファに書き込ま
れたデータを前記第1の消去単位領域に書き込むメモリ
書き込みステップとを有するものである。この発明は一
例として実施の形態2(図5)に記載されている。
【0009】また、前記第1の消去ブロックバッファ書
き込みステップの後、前記第1の書き込みデータの書き
込み先である消去単位領域と前記第2の書き込みデータ
の書き込み先である消去単位領域とを比較する比較ステ
ップとを有し、前記比較ステップにおける比較結果が同
一の場合に、前記第3の消去ブロックバッファ書き込み
ステップおよび前記メモリ書き込みステップを実行する
ものである。この発明は実施の形態2(図5)に記載さ
れている。
【0010】この発明におけるデータ記憶方法は、あら
かじめ定められた消去単位でデータの消去および書き込
みがなされる複数の消去単位領域を有するメモリと、前
記消去単位領域に書き込む書き込みデータおよび前記消
去単位領域内の不変データの双方を記憶する消去ブロッ
クバッファとを用いて前記メモリ内のデータの書き換え
を行なうデータ記憶方法であって、前記メモリの第1の
消去単位領域に第1の書き込みデータを書き込むことを
要求する第1の書き込み要求に対し、前記第1の書き込
みデータを前記消去ブロックバッファに書き込む第1の
消去ブロックバッファ書き込みステップと、前記メモリ
の第1の消去単位領域に第1の書き込みデータを書き込
むことを要求する第1の書き込み要求に対し、前記第1
の消去単位領域内の不変データを前記消去ブロックバッ
ファに書き込む第2の消去ブロックバッファ書き込みス
テップと、前記第2の消去ブロックバッファ書き込みス
テップの後、前記第1の消去単位領域のデータを消去す
る消去ステップと、前記メモリに第2の書き込みデータ
を書き込むことを要求する第2の書き込み要求を受けた
後に、前記消去ブロックバッファに記憶されたデータを
前記消去ステップにおいて消去された前記第1の消去単
位領域に書き込むメモリ書き込みステップとを有するも
のである。この発明は一例として実施の形態3(図7)
に記載されている。
【0011】また、前記消去ステップの後、第1の書き
込みデータの書き込み先である消去単位領域と前記第2
の書き込みデータの書き込み先である消去単位領域とを
比較する比較ステップとを有し、 前記比較ステップの
比較結果が異なる場合に、前記メモリ書き込みステップ
を実行するものである。この発明は一例として実施の形
態3(図7)に記載されている。
【0012】この発明におけるデータ記憶方法は、あら
かじめ定められた消去単位での消去および書き込みがな
される複数の消去単位領域を有するメモリと、前記消去
単位領域に書き込む書き込みデータおよび前記消去単位
領域内の不変データの双方を記憶する消去ブロックバッ
ファと、不変データを記憶することなく書き込みデータ
を記憶する書き込みバッファとを用いて前記メモリ内の
データの書き換えを行なうデータ記憶方法であって、前
記メモリの第1の消去単位領域に第1の書き込みデータ
を書き込むことを要求する第1の書き込み要求に対し、
前記第1の書き込みデータ及び前記第1の消去単位領域
内の不変データとを前記消去ブロックバッファに書き込
む消去ブロックバッファ書き込みステップと、前記消去
ブロックバッファ書き込みステップの後、前記メモリの
第2の消去単位領域に第2の書き込みデータを書き込む
ことを要求する第2の書き込み要求に対して、前記第2
の書き込みデータを前記書き込みバッファに書き込む第
1の書き込みバッファ書き込みステップと、前記第1の
書き込みバッファ書き込みステップの後、前記メモリの
消去単位領域に第3の書き込みデータを書き込むことを
要求する第3の書き込み要求に対して、前記第3の書き
込みデータを前記書き込みバッファに書き込む第2の書
き込みバッファ書き込みステップとを有するものであ
る。この発明は一例として実施の形態4(図10)に記
載されている。
【0013】また、前記第2の書き込みデータの書き込
み先である前記メモリ内の位置を規定する書き込み要求
領域と、前記第3の書き込みデータの書き込み先である
前記メモリ内の位置を規定する書き込み要求領域とを比
較する比較ステップとを有し、前記第2の書き込みバッ
ファ書き込みステップは、前記第3の書き込みデータの
書き込み要求領域が前記第2の書き込みデータの書き込
み要求領域に含まれる場合に、前記第2の書き込みデー
タが書き込まれた前記書き込みバッファの領域に前記第
3の書き込みデータを上書きするものである。この発明
は一例として実施の形態4(図10)に記載されてい
る。
【0014】この発明におけるデータ記憶方法は、あら
かじめ定められた消去単位でデータの消去および書き込
みがなされる複数の消去単位領域を有するメモリと、前
記消去単位領域に書き込む書き込みデータおよび前記消
去単位領域内の不変データの双方を記憶する消去ブロッ
クバッファと、不変データを記憶することなく書き込み
データを記憶する書き込みバッファとを用いて前記メモ
リ内のデータの書き換えを行なうデータ記憶方法であっ
て、前記メモリの第1の消去単位領域に第1の書き込み
データを書き込むことを要求する第1の書き込み要求に
対し、前記第1の書き込みデータ及び前記第1の消去単
位領域内の不変データとを前記消去ブロックバッファに
書き込む第1の消去ブロックバッファ書き込みステップ
と、前記メモリの第2の消去単位領域に第2の書き込み
データを書き込むことを要求する第2の書き込み要求に
対して、前記第1の消去ブロックバッファ書き込みステ
ップの後、前記第2の書き込みデータを前記書き込みバ
ッファに記憶する第1の書き込みバッファ書き込みステ
ップと、前記メモリの消去単位領域に第3の書き込みデ
ータを書き込むことを要求する第3の書き込み要求が発
生した場合に、前記第1の書き込みバッファ書き込みス
テップの後、前記消去ブロックバッファに書き込まれた
前記第1の書き込みデータ及び前記不変データとを前記
第1の消去単位領域に書き込むメモリ書き込みステップ
と、前記メモリ書き込みステップの後、前記第2の書き
込みデータ、前記第3の書き込みデータ、及び前記第2
の消去単位領域内の不変データを前記消去ブロックバッ
ファに書き込む第2の消去ブロックバッファ書き込みス
テップとを有するものである。この発明は一例として実
施の形態5(図13、14)に記載されている。
【0015】また、前記第1の書き込みバッファ書き込
みステップの後、前記第2の書き込みデータの書き込み
先である消去単位領域と、前記第3の書き込みデータの
書き込み先である消去単位領域とを比較する比較ステッ
プとを有し、前記比較ステップの比較結果が、前記第3
の書き込みデータの書き込み先である消去単位領域が前
記第2の書き込みデータの書き込み先である消去単位領
域と異なる場合に、前記メモリ書き込みステップ及び前
記第2の消去ブロックバッファ書き込みステップとを実
行するものである。この発明は一例として実施の形態5
(図13、14)に記載されている。
【0016】この発明における情報処理装置は、あらか
じめ定められた消去単位でデータの消去および書き込み
がなされる複数の消去単位領域を有するメモリと、前記
消去単位領域に記憶されたデータを前記消去単位で消去
する消去手段とを有し、前記消去単位領域に記憶された
データを第1の書き込みデータに書き換える情報処理装
置において、任意のデータ単位でデータの書き込みが可
能な不揮発性の消去ブロックバッファと、前記消去ブロ
ックバッファに前記第1の書き込みデータを書き込む書
き込みデータ書き込み手段と、前記メモリの消去単位領
域に記憶されたデータの内、前記第1の書き込みデータ
による書き換えが行われない不変データを前記消去ブロ
ックバッファに書き込む待避手段と、前記消去ブロック
バッファに書き込まれた前記第1の書き込みデータおよ
び前記不変データを前記消去手段によって消去された前
記消去単位領域に書き込むメモリ書き込み手段とを有す
るものである。この発明は一例として実施の形態1(図
1)に記載されている。
【0017】この発明における情報処理装置は、あらか
じめ定められた消去単位でデータの消去および書き込み
がなされる複数の消去単位領域を有するメモリと、前記
消去単位領域に書き込む書き込みデータおよび前記消去
単位領域内の不変データの双方を記憶する消去ブロック
バッファとを用いて前記メモリ内のデータの書き換えを
行なう情報処理装置であって、前記メモリの第1の消去
単位領域に第1の書き込みデータを書き込むことを要求
する第1の書き込み要求に対し、前記第1の書き込みデ
ータを前記消去ブロックバッファに書き込む書き込みデ
ータ書き込み手段と、前記メモリの第1の消去単位領域
に第1の書き込みデータを書き込むことを要求する第1
の書き込み要求に対し、前記第1の消去単位領域内の不
変データを前記消去ブロックバッファに書き込む待避手
段と、前記消去ブロックバッファに書き込まれたデータ
を前記第1の消去単位領域に書き込むメモリ書き込み手
段とを有し、前記消去ブロックバッファは、前記第1の
書き込み要求後に発生する第2の書き込み要求まで前記
第1の書き込みデータ及び前記第1の消去単位領域内の
不変データを保持し、前記第2の書き込み要求が前記第
1の消去単位領域に第2の書き込みデータを書き込むこ
とを要求する場合に、前記書き込みデータ書き込み手段
は前記第2の書き込みデータを前記消去ブロックバッフ
ァに書き込み、前記メモリ書き込み手段は前記第2の書
き込みデータが書き込まれた前記消去ブロックバッファ
内のデータを前記第1の消去単位領域に書き込むもので
ある。この発明は一例として実施の形態2(図4)に記
載されている。
【0018】この発明における情報処理装置は、あらか
じめ定められた消去単位での消去および書き込みがなさ
れる複数の消去単位領域を有するメモリと、前記消去単
位領域に書き込む書き込みデータおよび前記消去単位領
域内の不変データの双方を記憶する消去ブロックバッフ
ァと、不変データを記憶することなく書き込みデータを
記憶する書き込みバッファとを用いて前記メモリ内のデ
ータの書き換えを行なう情報処理装置であって、前記メ
モリの第1の消去単位領域に第1の書き込みデータを書
き込むことを要求する第1の書き込み要求に対し、前記
第1の書き込みデータを前記消去ブロックバッファに書
き込む書き込みデータ書き込み手段と、前記メモリの第
1の消去単位領域に第1の書き込みデータを書き込むこ
とを要求する第1の書き込み要求に対し、前記第1の消
去単位領域内の不変データを前記消去ブロックバッファ
に書き込む待避手段と、前記メモリの第2の消去単位領
域に第2の書き込みデータを書き込むことを要求する第
2の書き込み要求に対して、前記第2の書き込みデータ
を前記書き込みバッファに書き込む書き込みバッファ書
き込み手段とを有し、前記書き込みバッファは、前記第
2の書き込み要求後に発生する第3の書き込み要求まで
前記第2の書き込みデータを保持し、前記第3の書き込
み要求が前記第2の書き込みデータの書き込み要求領域
内に第3のデータを書き込むことを要求する場合に、前
記書き込みバッファ書き込み手段は、前記第3の書き込
みデータを前記書き込みバッファに書き込むものであ
る。この発明は一例として実施の形態4(図8〜10)
に記載されている。
【0019】この発明における情報処理装置は、あらか
じめ定められた消去単位でデータの消去および書き込み
がなされる複数の消去単位領域を有する第1のメモリ
と、前記消去単位領域に記憶されたデータを前記消去単
位で消去する消去手段とを有し、前記消去単位領域に記
憶されたデータを第1の書き込みデータに書き換える情
報処理装置において、消去ブロックバッファ、消去単位
番号保持領域および消去単位番号確認領域とを備え、任
意のデータ単位でデータの書き込みが可能な不揮発性の
第2のメモリと、前記消去単位領域に記憶されたデータ
の内、前記第1の書き込みデータによる書き換えが行わ
れない不変データを前記消去ブロックバッファに書き込
む待避手段と、前記第1の書き込みデータを書き込むべ
き消去単位領域を特定する情報を前記消去単位番号保持
領域に書き込み、前記第1の書き込みデータを前記消去
ブロックバッファに書き込み、前記第1の書き込みデー
タおよび前記不変データの書き込み完了後に、前記消去
単位番号保持領域に書き込んだ情報に対応する情報を前
記消去単位番号確認領域に書き込む書き込み制御手段
と、前記消去ブロックバッファに書き込まれた前記第1
の書き込みデータおよび前記不変データを前記消去単位
領域に書き込むメモリ書き込み手段と、前記情報処理装
置の復旧時に、前記消去単位番号保持領域と前記消去単
位番号確認領域の情報に基づいて復旧処理を行う復旧手
段とを有するものである。この発明は一例として実施の
形態7(図19〜21)に記載されている。
【0020】また、前記第2のメモリは、前記消去ブロ
ックバッファ内のデータを処理することで得られるデー
タチェック値が書き込まれる消去ブロックバッファ確認
領域を有し、前記書き込み制御手段は、前記データチェ
ック値を前記消去ブロックバッファ確認領域に書き込
み、前記復旧手段は、前記消去単位番号保持領域の値、
前記消去単位番号確認領域の値および前記消去ブロック
バッファ確認領域のデータチェック値に基づいて復旧処
理を行うものである。この発明は一例として実施の形態
8(図22〜24)に記載されている。
【0021】この発明における情報処理装置は、あらか
じめ定められた消去単位でデータの消去および書き込み
がなされる複数の消去単位領域を有する第1のメモリ
と、前記消去単位領域に記憶されたデータを前記消去単
位で消去する消去手段とを有し、前記消去単位領域に記
憶されたデータを第1の書き込みデータに書き換える情
報処理装置において、消去ブロックバッファおよび書き
込み禁止フラグ領域を備えた任意のデータ単位でデータ
の書き込みが可能な不揮発性の第2のメモリと、前記第
1のメモリの第1の消去単位領域に前記第1の書き込み
データを書き込むことを要求する第1の書き込み要求に
対し、前記書き込み禁止フラグ領域の値が書き込み許可
状態になっている場合に、前記第1の書き込みデータを
前記消去ブロックバッファに書き込む書き込み制御手段
と、前記第1の書き込み要求に対し、前記書き込み禁止
フラグ領域の値が書き込み許可状態になっている場合
に、前記第1の消去単位領域内の不変データを前記消去
ブロックバッファに書き込む待避手段と、前記書き込み
禁止フラグ領域の値が書き込み許可状態になっている場
合に、前記消去ブロックバッファの内容を第1のメモリ
に書き込むメモリ書き込み手段とを備えたものである。
この発明は一例として実施の形態9(図25〜28)に
記載されている。
【0022】また、前記消去ブロックバッファは、前記
第1の書き込みデータの書き込み要求後に発生する第2
の書き込み要求まで前記第1の書き込みデータおよび前
記第1の消去単位領域内の不変データを保持し、前記第
2の書き込み要求が前記第1の消去単位領域に第2の書
き込みデータを書き込むことを要求する場合に、前記書
き込み制御手段は前記第2の書き込みデータを前記消去
ブロックバッファに書き込み、前記メモリ書き込み手段
は前記第2の書き込みデータが書き込まれた前記消去ブ
ロックバッファ内のデータを前記第1の消去単位領域に
書き込むものである。この発明は一例として実施の形態
10(図29〜31)に記載されている。
【0023】前記書き込み制御手段は、前記第1のメモ
リの消去単位領域への前記消去ブロックバッファ内のデ
ータの書き込みが完了した後、前記消去単位番号保持領
域および前記消去単位番号確認領域のデータを消去する
ものである。この発明は例として実施の形態7(図2
0)、実施の形態10(図30)に記載されている。
【0024】また、前記復旧手段は、前記消去単位番号
保持領域の値と前記消去単位番号確認領域の値とが同一
の場合に、前記消去ブロックバッファに書き込まれた前
記第1の書き込みデータおよび前記不変データを前記消
去手段によって消去された前記第1のメモリの消去単位
領域に書き込むよう前記メモリ書き込み手段に対して指
示するものである。この発明は一例として実施の形態7
(図21)、実施の形態10(図31)に記載されてい
る。
【0025】さらに、前記復旧手段は、前記消去単位番
号保持領域の値と前記消去単位番号確認領域の値とが同
一でない場合に、前記消去単位番号保持領域の値と前記
消去単位番号確認領域の値を消去するものである。この
発明は一例として実施の形態7(図21)、実施の形態
11(図32)に記載されている。
【0026】さらにまた、前記第2のメモリは、前記消
去ブロックバッファ内の領域を分割して管理し、当該分
割領域内のデータを処理することで得られるデータチェ
ック値が格納される消去ブロックバッファ管理領域を有
し、前記書き込み制御手段は前記データチェック値を前
記消去ブロックバッファ確認領域に書き込み、前記復旧
手段は、前記消去単位番号保持領域の値、前記消去単位
番号確認領域の値および前記データチェック値に基づい
て復旧処理を行うものである。この発明は一例として実
施の形態12(図34)、実施の形態13(図39)に
記載されている。
【0027】また、前記書き込み制御手段は、前記第2
の書き込みデータの書き込み要求領域が前記消去ブロッ
クバッファ管理領域に管理されている前記分割領域と同
一の場合に、前記データチェック値を書き換えるもので
ある。この発明は一例として実施の形態13(図39〜
42)に記載されている。
【0028】さらに、読み込み要求されたデータが前記
消去ブロックバッファに記憶されている場合に、前記消
去ブロックバッファからデータを読み込む読み込み手段
を備え、当該読み込み手段は、前記消去ブロックバッフ
ァ管理領域に記憶されている前記データチェック値に基
づいて前記消去ブロックバッファ内のデータが正しいと
判断した場合に、前記消去ブロックバッファからデータ
を読み込むものである。この発明は一例として実施の形
態14(図43)に記載されている。
【0029】さらにまた、読み込み要求されたデータが
前記消去ブロックバッファに書き込まれている場合に、
前記消去ブロックバッファからデータを読み込む読み込
み手段を備え、当該読み込み手段は、前記消去ブロック
バッファ管理領域に記憶されている前記データチェック
値に基づいて前記消去ブロックバッファ内のデータが正
しくないと判断した場合には、前記第1のメモリからデ
ータを読み込む。この発明は一例として実施の形態15
(図44)に記載されている。
【0030】あらかじめ定められた消去単位でデータの
消去および書き込みがなされる複数の消去単位領域を有
する第1のメモリと、前記消去単位領域に記憶されたデ
ータを前記消去単位で消去する消去手段とを有する情報
処理装置において、前記消去単位領域に書き込む書き込
みデータおよび前記消去単位領域内の不変データの双方
を記憶する消去ブロックバッファ、不変データを記憶す
ることなく書き込みデータを記憶する書き込みバッフ
ァ、前記消去ブロックバッファに記憶されるデータを処
理することにより得られる第1データチェック値の保持
領域、前記書き込みバッファに書き込まれたデータを処
理することにより得られる第2データチェック値の保持
領域を備え、任意のデータ単位でデータの書き込みが可
能な不揮発性の第2のメモリと、第1の消去単位領域に
第1の書き込みデータを書き込むことを要求する第1の
書き込み要求に対して当該第1の書き込みデータを前記
消去ブロックバッファに書き込み、第2の消去単位領域
に第2の書き込みデータを書き込むことを要求する第2
の書き込み要求に対して当該第2の書き込みデータを前
記書き込みバッファに書き込み、前記第1のデータチェ
ック値および前記第2のデータチェック値を前記第2の
メモリに書き込む書き込み制御手段と、前記第1の書き
込み要求に対し、前記第1の消去単位領域内の不変デー
タを前記消去ブロックバッファに書き込む待避手段と、
前記消去ブロックバッファに書き込まれた前記第1の書
き込みデータおよび前記不変データを前記消去手段によ
って消去された前記第1の消去単位領域に書き込むメモ
リ書き込み手段と、前記情報処理装置の復旧時に、前記
第2のメモリに書き込まれた前記第1のデータチェック
値および前記第2のデータチェック値に基づいて復旧処
理を行うものである。この発明は一例として実施の形態
16(図45〜49)に記載されている。
【0031】また、前記復旧手段は、前記第1のデータ
チェック値に基づいて前記消去ブロックバッファに記憶
されたデータが正しいと判断した場合に、前記消去ブロ
ックバッファに記憶されたデータを前記第1の消去単位
領域に書き込むことを前記メモリ書き込み手段に指示
し、前記第2のデータチェック値に基づいて前記書き込
みバッファに記憶されたデータが正しいと判断した場合
に、前記書き込みバッファに記憶された前記第2の書き
込みデータを前記消去ブロックバッファに書き込むこと
を前記書き込み制御手段に指示し、前記第2の消去単位
領域の不変データを前記消去ブロックバッファに書き込
むことを前記待避手段に指示するものである。この発明
は一例として実施の形態17(図50)に記載されてい
る。
【0032】さらに、消去単位番号保持領域を備え、前
記第2のメモリよりもデータの読み出しが高速な第3の
メモリを有し、前記書き込み制御手段は、前記消去単位
領域を特定する情報を前記第2のメモリの消去単位番号
保持領域と前記第3のメモリの消去単位番号保持領域双
方に書き込むようにし、前記消去単位領域を特定する情
報を参照する際には、前記第3のメモリの消去単位番号
保持領域からデータを読み出すものである。この発明は
一例として実施の形態18(図51〜54)に記載され
ている。
【0033】あらかじめ定められた消去単位でデータの
消去および書き込みがなされる複数の消去単位領域を有
する第1のメモリと、前記消去単位領域に記憶されたデ
ータを前記消去単位で消去する消去手段とを有し前記消
去単位領域に記憶されたデータを第1の書き込みデータ
に書き換える情報処理装置において、前記第1の書き込
みデータおよび前記消去単位領域内の不変データの双方
を記憶する消去ブロックバッファと、不変データを記憶
することなく書き込みデータを記憶する書き込みバッフ
ァとを備え、任意のデータ単位でデータの書き込みが可
能な不揮発性の第2のメモリと、第1の消去単位領域に
第1の書き込みデータを書き込むことを要求する第1の
書き込み要求に対し、前記第1の書き込みデータを前記
消去ブロックバッファに書き込む消去ブロックバッファ
書き込み手段と、前記第1の書き込み要求に対し、前記
第1の消去単位領域内の不変データを前記消去ブロック
バッファに書き込む待避手段と、前記第1の書き込み要
求以外の複数の書き込み要求に対し、当該複数の書き込
みデータを前記書き込みバッファに書き込む書き込みバ
ッファ書き込み手段と、前記消去ブロックバッファ書き
込み手段に書き込まれた前記第1の書き込みデータおよ
び前記不変データを前記第1の消去単位領域に書き込む
メモリ書き込み手段と、前記書き込みバッファ内の複数
の書き込みデータについて、書き込み要求がされた消去
単位領域ごとにそのデータ量を計算し、この計算結果に
基づいて同一の消去単位領域に書き込む書き込みデータ
すべてを前記消去ブロックバッファに移動させるデータ
移動手段とを有し、前記待避手段は前記消去ブロックバ
ッファに移動された書き込みデータに対応する消去単位
領域内の不変データを前記消去ブロックバッファに書き
込むものである。この発明は一例として実施の形態19
(図55〜56)に記載されている。
【0034】また、前記データ移動手段は、前記書き込
みバッファ内の書き込みデータの内、同一の消去単位領
域に書き込み要求がなされた書き込みデータのデータ量
が所定量よりも少なく、当該書き込みデータの数が所定
数よりも多い場合に、当該書き込みデータすべてを前記
消去ブロックバッファに移動させるものである。この発
明は一例として実施の形態20(図57)に記載されて
いる。
【0035】
【発明の実施の形態】実施の形態1.図1はこの発明の
一実施の形態である情報処理装置の構成を示す図であ
る。図1において、101は複数の消去単位領域からな
るフラッシュメモリである。このフラッシュメモリは、
予め定められた消去単位ごとにデータの消去および書き
込みがなされるメモリである。102は、フラッシュメ
モリとは異なり、データの書き換えのために一定の消去
単位を消去する必要がなく任意のデータ単位でメモリへ
のデータの直接書き込みが可能であり、かつ不揮発性の
メモリである。具体的には、バッテリーバックアップS
RAMである。
【0036】103は、不揮発性メモリ102であるバ
ッテリーバックアップSRAM上に設けられ、フラッシュ
メモリの1つの消去単位領域内のデータを退避して記録
するのに十分な大きさの容量を持つ消去ブロックバッフ
ァである。本実施の形態においては、消去単位領域と同
容量の領域を有するエリアで構成している。この消去ブ
ロックバッファ103は不揮発性メモリであるバッテリ
ーバックアップSRAM上に構成されているので、任意の
データ単位でデータの書き込みが可能である。111は
フラッシュメモリ101へのデータの書き込みを制御す
る書き込み制御手段、112は消去単位領域内のデータ
を消去ブロックバッファ103に待避させる待避手段、
301はフラッシュメモリ101に対し消去単位領域の
消去のための命令を出す消去命令手段である。302は
フラッシュメモリ101に書き込みデータの書き込みを
行う書き込み手段である。以下、書き込みデータとは、
フラッシュメモリ101や不揮発性メモリ102等のメ
モリに対して新たに書き込むべきデータを意味し、又、
書き込み要求に含まれる書き込みデータを特に書き込み
要求データと呼ぶ。202は、不揮発性メモリ102内
のエリアであって、消去単位番号を記録する消去単位番
号保持領域である。
【0037】図2は、この実施形態を実現する、具体的
なシステムの概略を示す構成図である。181はプロセ
ッサ、102はバッテリーバックアップSRAM、101
はフラッシュメモリ、184は入出力インターフェー
ス、185は主記憶としてのDRAMである。書き込み
制御手段111、待避手段112、消去命令手段30
1、書き込み手段302のそれぞれは、プロセッサ上1
81でソフトウェアが動作することにより実現される。
フラッシュメモリ101の消去単位領域内のデータの消
去は、消去命令手段301から消去命令を受けたフラッ
シュメモリ101が、ハードウェア的に行う。この消去
単位の具体的な消去は、フラッシュメモリ101が備え
た消去手段(不図示)が行う。新たなデータ書き込み
は、例えば、入出力インターフェース184から書き込
み要求をプロセッサ181が受けることにより行われ
る。
【0038】以下、本実施の形態における、フラッシュ
メモリ101上のデータの書き換え動作について説明す
る。図3は、本実施の形態における情報処理装置が、フ
ラッシュメモリ101上のデータの書き換えを行うフロ
ーチャートである。以下の各処理は、断りがない限り書
き込み制御手段111が行う。まず、S101におい
て、フラッシュメモリ101へのデータの書き込み要求
を受ける。この書き込み要求には、書き込むデータとし
ての書き込み要求データ、データを書き込むフラッシュ
メモリ上のアドレスを特定する書き込み要求領域、そし
てデータの大きさの情報が含まれている。次に、S10
2において、消去単位の容量と書き込み要求領域から、
書き込み要求領域を含む消去単位の番号と、書き込み要
求領域が対応する消去単位内の位置を算出する。尚、書
き込み要求領域はフラッシュメモリ101全体の相対的
位置を特定するアドレスであり、消去単位内の位置は特
定の消去単位内での相対的位置を特定するものである。
【0039】さらにS103において、書き込み要求デ
ータを、消去ブロックバッファ103内の領域であっ
て、書き込み要求領域に対応した位置に書き込む。即
ち、S102において算出した消去単位内の位置に対応
する消去ブロックバッファ103内の位置に書き込まれ
る。そして、S104において、待避手段112に待避
指示を出す。この待避指示には、消去単位の番号と、書
き込み要求領域が対応する消去単位内の位置についての
情報が含まれている。この指示を受けた待避手段112
は、S102において算出した消去単位番号の消去単位
領域内のデータであって、S103において書き込まれ
た領域に対応する部分以外のデータである不変データ
を、消去ブロックバッファ103に書き込む。この明細
書において、不変データとは、消去単位領域内のデータ
の内、書き込み要求データによって書き換えられないデ
ータをいう。
【0040】続いてS105において、消去命令手段3
01に対して消去指示を出す。この消去指示には、フラ
ッシュメモリ101の消去単位の番号が含まれている。
この指示を受けた消去命令手段301は、フラッシュメ
モリ101の消去手段に対し、消去単位の番号が対応す
るフラッシュメモリ内の1つの消去単位を消去するよう
に命令を出す。フラッシュメモリ101の消去手段によ
る消去が完了すると、書き込み手段302が消去ブロッ
クバッファ103に記憶されたデータを、消去されたフ
ラッシュメモリ101内の消去単位領域に書き込む。書
き込み要求発生の度にS101〜S105の処理が実行
される。
【0041】ここで、フラッシュメモリ101内のデー
タの消去からフラッシュメモリ101への書き込みまで
の間に装置に対する電源断が発生した場合の復旧処理に
ついて説明する。不揮発性メモリ102上の消去ブロッ
クバッファ103にフラッシュメモリ101への書き込
みが完了していないデータがあるときに、電源入力後
に、この消去ブロックバッファ103上のデータをフラ
ッシュメモリ101に再度書き込む処理について説明す
る。
【0042】まず、通常の処理について説明する。書き
込み制御手段111は、S105において、フラッシュ
メモリ101の消去指示を出した後、この消去指示に含
まれるフラッシュメモリ101の消去単位の番号を、不
揮発性メモリ102内に設けられた消去単位番号保持領
域202に記録する。フラッシュメモリ101へのデー
タの書き込みが終了すると、書き込み制御手段111は
消去単位番号保持領域202に記録された消去単位番号
を無効にする。
【0043】次に、フラッシュメモリ101の消去から
フラッシュメモリ101への書き込みまでの間に装置に
対する電源断が発生した場合の、復旧処理について説明
する。電源断の発生及び電源入力後に、書き込み制御手
段111は、不揮発性メモリ102内の消去単位番号保
持領域202を確認する。消去単位番号保持領域202
に有効な消去単位番号が存在している場合には、書き込
みが終了していないと判断され、消去ブロックバッファ
103に記録されているデータを、フラッシュメモリ1
01へ書き込む処理を行う。消去ブロックバッファ10
3に記録されているデータが書き込まれるフラッシュメ
モリ101内の消去単位の番号は、消去単位番号保持領
域202に記録されている。その後、消去単位番号保持
領域202に記憶された消去単位番号を無効にする。消
去単位番号保持領域202に有効な消去単位番号が存在
しない場合には、フラッシュメモリ101へ書き込む処
理を行なわずに、そのまま復旧処理を終了する。以上の
処理により、装置に対する電源断が発生した場合の、復
旧処理が可能となる。
【0044】以上のように、この実施の形態によれば、
フラッシュメモリ101上の書き換えが行なわれる消去
単位内のデータは不揮発性メモリ上の消去ブロックバッ
ファ103領域に待避されているため、フラッシュメモ
リ上のデータの消去後、フラッシュメモリへの新たなデ
ータの書き込みが完了する前に電源断等が発生しても、
データが失われることがなく、フラッシュメモリ上の書
き換えに関し、信頼性の高い情報処理装置を得ることが
できる。
【0045】尚、本実施の形態においては、S103で
書き込みデータを消去ブロックバッファ103に書き込
んだ後に、S104において不変データを待避させてい
るが、この順番が逆であってもよい。又、待避手段11
2による待避を行った後に、書き込みデータを消去ブロ
ックバッファ103に書き込む場合には、待避させるデ
ータは不変データだけはなく、不変データを含んだ消去
単位内の全データを待避させ、その後、待避させたデー
タに書き込みデータを上書きすればよい。
【0046】また、本実施の形態においては、S103
で書き込みデータを消去ブロックバッファ103に書き
込むこととしているが、書き込みデータの消去ブロック
バッファ103への書き込みは、遅くとも、書き込み手
段302が消去ブロックバッファ103に記憶されたデ
ータをフラッシュメモリ101内の消去単位領域に書き
込む前までに完了していれば良い。さらに、本実施の形
態ではS102において、消去単位の容量と書き込み要
求領域から、書き込み要求領域を含む消去単位の番号
と、書き込み要求領域が対応する消去単位内の位置を算
出しているが、書き込み要求データにこれらデータを含
めるようにすることも可能である。その場合には、S1
02の算出処理は省略される。
【0047】この実施の形態において、フラッシュメモ
リ101は、あらかじめ定められた消去単位でデータの
消去および書き込みがなされる複数の消去単位領域を有
するメモリの一例であり、フラッシュメモリ101の消
去手段(不図示)は、前記消去単位領域に記憶されたデ
ータを前記消去単位で消去する消去手段の一例であり、
バッテリーバックアップSRAM102は、任意のデー
タ単位でデータの書き込みが可能な不揮発性の消去ブロ
ックバッファの一例である。また、書き込み制御手段1
11は、消去ブロックバッファに書き込みデータを書き
込む書き込みデータ書き込み手段の一例であり、待避手
段112は、不変データを消去ブロックバッファに書き
込む待避手段の一例であり、書き込み手段302は、書
き込みデータおよび不変データを消去単位領域に書き込
むメモリ書き込み手段の一例である。
【0048】実施の形態2.図4は、本発明の他の実施
形態である、情報処理装置の概略を示す構成図である。
図において、201はフラッシュメモリ101又は不揮
発性メモリ102からデータを読み出す読み出し手段、
202は不揮発性メモリ102内のエリアであって、消
去単位番号を記録する消去単位番号保持領域である。他
の構成は、図1において説明した構成の同一又は相当部
であり、説明を省略する。読み出し手段201は、ソフ
トウエアがプロセッサ181上で動作することにより実
現される。尚、本実施の形態においては、特に、同一の
消去単位領域へ、連続して書き込みデータを書き込む場
合の動作について説明する。
【0049】本実施の形態において、メモリへのデータ
書き込み時の動作を図5を用いて説明する。ここでメモ
リとは、フラッシュメモリ101と不揮発性メモリ10
2の双方を含む概念である。尚、以下の各処理は、断り
がない限り書き込み制御手段111の動作である。ま
ず、S201において、フラッシュメモリ101へのデ
ータの書き込み要求を受ける。この要求の内容は、実施
の形態1と同様である。次に、S202において、書き
込み要求領域を含むフラッシュメモリの消去単位の番号
を求める。この消去単位の番号を求める方法は、実施の
形態1と同様である。
【0050】続いて、S203において、消去単位番号
保持領域202を参照し、消去単位番号保持領域202
に消去単位番号の記録が存在するかを判定する。消去番
号の記録が存在しなければ、S204において、書き込
みデータを消去ブロックバッファ103に書き込む。消
去ブロックバッファ103への書き込み動作は、実施の
形態1と同様である。次に、S205において、待避手
段112に対して待避指示を行なう。待避指示の内容
は、実施の形態1と同様である。待避手段112は、S
202で求めた番号のフラッシュメモリの消去単位か
ら、不変データを消去ブロックバッファ103に書き込
む。続いて、S206において、S202において求め
た消去単位番号を消去番号保持領域202に記録する。
この後、フラッシュメモリ101にデータを書き込むこ
となく、メモリへのデータの書き込み処理を終了する。
【0051】S203において消去単位番号保持領域2
02に消去単位番号の記録が存在する場合には、S20
7において、S202で求めた消去単位番号が消去単位
番号保持領域202に存在する記録と一致するかを判定
する。判定により消去単位番号が異なる場合には、S2
08において、消去命令手段301に対し消去指示を行
なう。消去指示の内容は実施の形態1と同様である。こ
の指示を受けた消去命令手段301は、フラッシュメモ
リ101の消去手段に対し、消去単位の番号が対応する
フラッシュメモリ内の1つの消去単位を消去するように
命令を出す。フラッシュメモリ101の消去手段による
消去が完了すると、書き込み手段302が消去ブロック
バッファ103の内容を、フラッシュメモリ101内の
この消去単位の領域に書き込む。
【0052】続いて、消去単位番号の記録が存在しない
場合と同様に、S204からS206の処理を行ない、
書き込みデータの消去ブロックバッファへの書き込み、
フラッシュメモリからのデータの退避、消去単位番号の
記録を行なう。S207でS202で求めた消去単位番
号が消去単位番号保持領域202に存在する記録と一致
する場合には、S209において、書き込み要求データ
を消去ブロックバッファ103へ書き込む。以上説明し
たように、消去単位番号の記録が存在していない場合に
はS201〜S206の手順で処理が実行され、消去単
位番号の記録が存在している場合にはS201〜S20
3、S207、S208、S204〜S206の手順で
処理が実行されるか若しくは、S201〜S203、S
207、S209の手順で処理が実行される。即ち、書
き込み要求が第1回目の要求であった場合には、S20
1〜S206の手順で処理が実行され、第2回目の書き
込み要求以降は、S201〜S203、S207、S2
08、S204〜S206の手順で処理が実行されるか
若しくは、S201〜S203、S207、S209の
手順で処理が実行される。以上の処理が書き込み要求が
発生する度に実行される。
【0053】次に、メモリからのデータ読み出し時の動
作について図6を用いて説明する。以下の各処理は、断
りがない限り読み出し手段201の動作である。まず、
S211において読み出し要求を受ける。読み出し要求
には、読み出し要求領域としてのフラッシュメモリ10
1のアドレスと読み出すデータの大きさに関する情報が
含まれている。次に、S212において、読み出し要求
領域を含むフラッシュメモリの消去単位の番号を書き込
み時と同様に求める。尚、読み出し要求領域とは、読み
出すべきデータが記憶されているフラッシュメモリ10
1上のエリアであり、フラッシュメモリ101上の相対
的位置を特定する。
【0054】続いて、S213において、消去単位番号
保持領域202を参照し、消去単位番号の記録が存在
し、かつその消去単位番号がS212において求めたも
のと一致するかを判定する。一致した場合には、読み出
し領域のデータは消去ブロックバッファに保持されてい
るので、S214において、消去ブロックバッファから
データを読み出す。消去単位番号の記録が消去単位番号
保持領域202に存在しないか、あるいは記録された消
去番号がS212おいて求めたものと一致しない場合に
は、読み出し領域のデータは消去ブロックバッファに保
持されていないので、S215において、フラッシュメ
モリからデータの読み出しを行なう。
【0055】以上のように本実施の形態によれば、フラ
ッシュメモリの同一の消去単位領域へ続けて書き込みを
行う場合、1回目のデータ書き込みデータを不揮発性メ
モリ上の消去ブロックバッファに書き込んだ後、フラッ
シュメモリに消去ブロックバッファ上のデータを書き込
まず、さらに2回目の書き込みデータを消去ブロックバ
ッファに記録されているデータに書き込みを行う。同一
の消去単位領域への書き込みが更に続く場合は、この処
理を続けて行う。この動作により、実施の形態1の奏す
る効果に加え、フラッシュメモリ上の同一の消去単位領
域への連続した書き込みを一括して行なうことにより、
フラッシュメモリ上のデータの消去回数を減らすことが
でき、フラッシュメモリの劣化を低減することが可能と
なる。尚、本実施の形態においても、実施の形態1と同
様に電源断時の復旧処理を行うことが可能である。この
場合、書き込み未終了フラグとして、消去単位番号の記
録を利用してもよい。これは、フラッシュメモリへの書
き込みの後に、消去単位番号を無効にすることにより実
現できる。この実施の形態ではS205において、フラ
ッシュメモリの消去単位から不変データを消去ブロック
バッファ103に書き込む待避処理を行なっているが、
この処理は遅くとも不変データをフラッシュメモリ10
1に書き込むまでに実行され完了していればよい。ま
た、S204における書き込み要求データの消去ブロッ
クバッファへの書き込みは、次回の書き込み要求の書き
込み要求データを消去ブロックバッファに書き込むまで
に実行すればよい。
【0056】実施の形態3.本発明の他の実施形態にお
ける情報処理装置について説明する。情報処理装置の構
成は実施の形態2と同様であり、図4に示される。本実
施形態の基本的動作は実施の形態2と同様である。本実
施形態においては、フラッシュメモリからデータを待避
させた後のステップとして、その消去単位のデータ消去
を行う。本実施の形態におけるメモリへのデータ書き込
み時の動作を、図7を用いて説明する。以下の各処理
は、断りがない限り書き込み制御手段111の動作であ
る。まず、S301において、データの書き込み要求を
受ける。書き込み要求の内容は実施の形態1と同様であ
る。次に、S302において、書き込み要求領域を含む
フラッシュメモリの消去単位の番号を求める。消去単位
の番号を求める動作については、実施の形態1と同様で
ある。
【0057】続いて、S303において、消去単位番号
保持領域202を参照し、消去単位番号の記録が存在す
るかを判定する。S303において消去単位番号保持領
域202に消去番号の記録が存在しなければ、S304
において、書き込み要求データを消去ブロックバッファ
103に書き込む。続いてS305において、待避手段
112に対して待避指示を行なう。待避指示の内容は実
施の形態1と同様である。待避指示を受けた待避手段1
12は、消去単位内の不変データを消去ブロックバッフ
ァ103に書き込むことにより待避させる。さらにS3
06において、S302で求めた消去単位番号を、消去
単位番号保持領域202に記録する。次にS307にお
いて、消去命令手段301に対して消去指示を出す。消
去指示には、S302で求めた消去単位番号の情報が含
まれている。消去指示を受けた消去命令手段301は、
S305における消去ブロックバッファへの待避が完了
した消去単位領域内のデータを消去するように、命令を
出す
【0058】S303において消去単位番号保持領域2
02に消去単位番号の記録が存在する場合には、S30
8において、S302で求めた消去単位番号が消去単位
番号保持手段302に存在する記録と一致するかを判定
する。消去単位番号が異なる場合には、S309におい
て、書き込み手段302に対し書き込み指示を行なう。
この書き込み指示には、消去単位番号に関する情報が含
まれる。書き込み指示を受けた書き込み手段302は、
現在の消去ブロックバッファ103のデータをフラッシ
ュメモリ101に書き込む。フラッシュメモリ101の
当該消去単位領域のデータは、以前の書き込み処理時
(S307)にすでに消去されているため、すでに消去
された消去単位領域に消去ブロックバッファ103のデ
ータを書き込む書き込み処理のみを行なう。これ以降は
消去番号の記録が存在しなかった場合と同様に、S30
4〜S307の処理を行う。
【0059】S308で消去単位番号が一致する場合に
は、書き込み要求データを書き込むべき消去単位領域内
のデータは消去ブロックバッファに記録されているの
で、S310において、書き込み要求データを消去ブロ
ックバッファ103へ書き込む。尚、本実施の形態にお
ける読み出し時の動作は、実施の形態2の場合と同様で
ある。以上の処理が書き込み要求が発生する度に実行さ
れる。この発明の実施の形態によれば、フラッシュメモ
リからデータを待避させた後にフラッシュメモリのデー
タを消去するので、消去ブロックバッファのデータをフ
ラッシュメモリに書き込む際には、フラッシュメモリの
データを消去する処理を行う必要がない。フラッシュメ
モリの消去は、フラッシュメモリがハードウェア的に行
うため、プロセッサが他の処理を平行して行うことがで
きる。例えば、入出力インターフェースから主記憶装置
へのデータの書き込みや、プロセッサ内の計算処理等を
並列的に行うことができる。
【0060】一方、フラッシュメモリにデータを書き込
む際にフラッシュメモリのデータを消去する場合には、
プロセッサは書き込み要求をうけているので、プロセッ
サは消去の処理を待たなければならず、他の処理を平行
して行うことができない。以上のように、本実施の形態
においては、フラッシュメモリからデータを待避させた
後にフラッシュメモリのデータを消去するので、フラッ
シュメモリにデータを書き込む際にフラッシュメモリの
データを消去する必要がない。そのため、実施の形態2
の奏する効果に加え、書き込み処理の時間を短縮するこ
とができる。又、フラッシュメモリの消去処理と平行し
てプロセッサの処理が可能となり、情報処理装置全体の
処理速度の向上を図ることが可能となる。
【0061】実施の形態4.図8は本発明の他の実施形
態における情報処理装置の構成を示す図である。図にお
いて、402は任意のデータ単位で書き込み可能な不揮
発性メモリ102上に構成され、書き込みデータを記録
する書き込みバッファである。書き込みバッファ402
は、書き込みデータを記録するためのものであり、不変
データを記録することはない。403は書き込みバッフ
ァ管理領域である。書き込みバッファ管理領域403に
は、消去単位番号、消去単位内オフセットおよびデータ
サイズとが記憶される。他の構成は、図3における構成
の同一もしくは相当部であり説明を省略する。 図9
は、書き込みバッファ管理領域403に記録されている
データの内容を示す図である。書き込みバッファ管理領
域403には、書き込みバッファ402に保持されたデ
ータが書き込まれるべきフラッシュメモリ101上の消
去単位番号と、この消去単位領域内の書き込み領域の位
置を特定するオフセットと、書き込み領域の大きさに関
するデータを保持する。消去単位番号の「−1」は、こ
れ以上書き込みデータが存在しないことを意味する。こ
こでは、書き込み領域の大きさは一定になっているが、
この大きさは個々のデータ毎に異なっていてもよい。
【0062】本実施の形態におけるメモリへの書き込み
時の動作を、図10を用いて説明する。以下の各処理
は、断りがない限り書き込み制御手段111の動作であ
る。まず、S401において、データの書き込み要求を
受ける。書き込み要求の内容は、実施の形態1と同様で
ある。次に、S402において、書き込み要求領域を含
むフラッシュメモリの消去単位の番号を求める。この動
作は、実施の形態1と同様である。続いてS403にお
いて、消去単位番号保持領域202を参照し、消去単位
番号の記録が存在するかを判定する。ここで、消去番号
の記録が存在しなければ、S404において、書き込み
制御手段111は、書き込み要求データを消去ブロック
バッファ103に書き込む。
【0063】さらに、S405において、待避手段11
2に対して待避指示を行う。待避指示の内容は実施の形
態1と同様である。待避指示を受けた待避手段112
は、S402で算出された消去単位番号で特定される消
去単位領域内の不変データを消去ブロックバッファ10
3に書き込む。続いて、S406において、S402で
求めた消去単位番号を消去単位番号保持領域202に記
録する。さらに、S407において、消去命令手段30
1に対して消去指示を出す。消去指示の内容は実施の形
態2と同様である。消去指示を受けた消去命令手段30
1は、消去ブロックバッファ103へ待避された消去単
位の消去を行なうように、フラッシュメモリ101に命
令を出す。
【0064】S403において消去単位番号保持領域2
02に消去単位番号の記録が存在する場合には、S40
8において、S402で求めた消去単位番号が消去単位
番号保持領域202に存在する記録と一致するかを判定
する。S408において消去単位番号が異なる場合に
は、S409において、書き込みバッファ管理領域40
3を参照し、書き込みバッファ管理領域403に記録さ
れている情報から、書き込み要求領域と同一の領域に書
き込みを行なうデータが既に書き込みバッファ402に
存在するかを判定する。この判定は、書き込みバッファ
管理領域403に記憶されている消去単位番号及び消去
単位内オフセットおよびサイズから把握することができ
る。換言すれば、S409においては、書き込み要求領
域で特定される領域が既に書き込みバッファ402に存
在するデータの書き込み要求領域に含まれるか否かを判
定する。書き込み要求領域で特定される領域が既に書き
込みバッファ402に存在するデータの書き込み要求領
域に含まれる場合としては、例えば、書き込み要求領域
で特定される領域と既に書き込みバッファ402に存在
するデータの書き込み要求領域とが完全に同一の場合、
及び書き込み要求領域で特定される領域が既に書き込み
バッファ402に存在するデータの書き込み要求領域内
に収まる場合の2つの場合が該当する。
【0065】S409において、書き込み要求領域と同
一の領域に書き込みを行なうデータが書き込みバッファ
402に存在しない場合には、さらにS410において
書き込み制御手段111は、書き込み要求のデータを書
き込むことができる領域が書き込みバッファ402に存
在するかを、書き込みバッファ402の空き領域を調べ
ることで判定する。空き領域の存在は、書き込みバッフ
ァ管理領域403に記録されている情報から知ることが
できる。本実施の形態では、最後の消去単位番号を−1
としておくことで、空き領域の存在を記録する。最後が
−1以外であれば、空き領域は存在しない。もちろん、
書き込みバッファ402の容量と管理情報に含まれるサ
イズの情報から、空き領域の存在を求めてもよい。
【0066】書き込みバッファ402に空き領域がない
場合には、S411において書き込み制御手段111
は、書き込み手段302に対し書き込み指示を行なう。
書き込み指示の内容は実施の形態1と同様である。書き
込み指示を受けた書き込み手段302は、消去ブロック
バッファ103に現在記録されているデータをフラッシ
ュメモリ101に書き込む。続いて、S404からS4
07の処理を、消去単位番号の記録が存在しない場合と
同様に行なう。
【0067】S410で書き込みバッファに空き領域が
存在した場合には、S412において、書き込みデータ
を書き込みバッファ402へ書き込む。次にS413に
おいて、書き込みバッファ管理領域403に、S412
で書き込んだ書き込みデータに関する管理情報を記録す
る。管理情報は、消去単位番号とその中での位置を特定
するオフセット、及び書き込みデータの大きさを記録す
る。書き込みバッファ管理領域403における管理情報
と、書き込みバッファ402における書き込みデータの
対応づけは、各エリアにおけるアドレス上の順序が同一
になるように記録されることで行われる。尚、書き込み
バッファ管理領域403に、書き込みデータが記録され
ている書き込みバッファ内のアドレスを記録することに
より、各管理情報と書き込みデータの対応づけを行って
もよい。
【0068】S409で書き込み要求領域と同一の領域
に書き込みを行なうデータが既に存在すると判定された
場合には、S414において、書き込みデータを書き込
みバッファの同一領域のデータが記録されているエリア
に書き込む。S408で、S402で算出した消去単位
番号が消去単位番号保持領域202に存在する記録と一
致すると判定された場合には、S415において、書き
込み要求データを消去ブロックバッファに書き込む。書
き込み要求データの消去ブロックバッファへの書き込み
動作については実施の形態1と同様である。
【0069】次に、メモリからのデータ読み出し時の動
作を図11を用いて説明する。以下の各処理は、断りが
ない限り読み出し手段201の動作である。まずS45
1において、読み出し要求を受ける。この読み出し要求
の内容は実施の形態2と同様である。次にS452にお
いて、読み出し要求領域を含むフラッシュメモリの消去
単位番号を求める。消去単位の番号を求める動作は実施
の形態2と同様である。続いてS453において、消去
単位番号保持領域202を参照し、消去単位番号の記録
が存在するかを判定する。消去単位番号の記録が存在し
ない場合には、S454において、書き込みバッファ管
理領域403の管理情報を参照し、読み出し要求領域と
して特定された領域に書き込まれるべきデータが書き込
みバッファ402に存在するかを判定する。
【0070】読み出し要求領域として特定された領域に
書き込まれるべきデータが書き込みバッファ402に存
在する場合には、S455において、その領域のデータ
を書き込みバッファ402から読み出す。読み出し要求
領域として特定された領域に書き込まれるべきデータが
書き込みバッファ402に存在しない場合には、S45
6において、読み出しデータをフラッシュメモリ101
から読み出す。S453で消去単位番号保持領域202
に消去単位番号の記録が存在し、かつS452で求めた
消去単位番号と一致する場合には、読み出し領域のデー
タは消去ブロックバッファ103に保持されているの
で、S457において、消去ブロックバッファ103か
ら読み出しデータを読み出す。以上の処理が読み出し要
求が発生する度に実行される。
【0071】本実施の形態の情報処理装置によれば、不
揮発メモリ102上に、消去ブロックバッファ103に
加えて、書き込みデータを記録する書き込みバッファ4
02を設けているので、異なる消去単位領域に対する複
数の書き込みデータを記録することができ、実施の形態
3の奏する効果に加え、フラッシュメモリ101への書
き込み回数をさらに低減でき、フラッシュメモリ101
の劣化を低減することが可能となる。又、特にバッテリ
バックアップSRAMは、記録容量あたりの値段が高い
こともあり、その効率的利用が強く求められているが、
本実施の形態のように、消去ブロックバッファ103に
加えて、不変データを記録せずに書き込みデータを記録
するエリアとして書き込みバッファ402を設けること
により、複数の消去ブロックバッファを設ける場合に比
較し、効率的に不揮発メモリ102を利用つつ、フラッ
シュメモリの劣化を大きく低減することが可能となる。
【0072】この実施の形態において、書き込みバッフ
ァ402は、不変データを記憶することなく書き込みデ
ータを記憶する書き込みバッファの一例であり、書き込
み制御手段111は、第1の消去単位領域に第1の書き
込みデータを書き込むことを要求する第1の書き込み要
求に対し、前記第1の書き込みデータを前記消去ブロッ
クバッファに書き込む書き込みデータ書き込み手段、お
よび第2の消去単位領域に第2の書き込みデータを書き
込むことを要求する第2の書き込み要求に対して、前記
第2の書き込みデータを前記書き込みバッファに書き込
む書き込みバッファ書き込み手段の一例である。この実
施の形態では、データ書き込み手段とバッファ書き込み
手段の機能を書き込み制御手段111にて果たしてい
る。待避手段112は、第1の消去単位領域に第1の書
き込みデータを書き込むことを要求する第1の書き込み
要求に対し、第1の消去単位領域内の不変データを前記
消去ブロックバッファに書き込む待避手段の一例であ
る。
【0073】実施の形態5.図12は本実施の形態にお
ける情報処理装置の構成を示す図である。図において、
501は書き込みバッファ402のデータを移動するバ
ッファ移動手段である。他の構成は、既に説明した構成
の同一もしくは相当部であり、説明を省略する。本実施
形態の基本的動作は実施の形態4と同様であるが、バッ
ファ移動手段501によって、書き込みバッファ402
内の同一の消去単位領域に含まれるデータを、消去ブロ
ックバッファ103に移動する処理を有する点で実施の
形態4と相違する。実施の形態5における書き込み時の
動作を、図13および図14を用いて説明する。以下の
各処理は、断りがない限り書き込み制御手段111の動
作である。まずS501において、データの書き込み要
求を受ける。書き込み要求の内容は実施の形態1と同様
である。次にS502において、書き込み要求領域が含
まれるフラッシュメモリの消去単位の番号を求める。消
去単位番号を求める動作は実施の形態1と同様である。
【0074】続いてS503において、消去単位番号保
持領域202を参照し、消去単位番号の記録が存在する
かを判定する。消去単位番号保持領域202に消去番号
の記録が存在しなければ、S504において、書き込み
データを消去ブロックバッファ103に書き込む。さら
にS505において、待避手段112に対して待避指示
を行なう。待避指示の内容は実施の形態1と同様であ
る。待避指示を受けた待避手段112は、待避処理とし
て不変データを消去ブロックバッファ103へ書き込
む。続いて、S506において、S502において求め
た消去単位番号を消去単位番号保持領域202に記録す
る。次にS507において、消去命令手段301に対し
て消去指示を出す。消去指示の内容は実施の形態1と同
様である。消去指示を受けた消去命令手段301は、す
でに消去ブロックバッファ103への待避が完了した消
去単位領域内のデータを消去するようにフラッシュメモ
リ101に命令を出す。
【0075】S503で消去単位番号保持領域202に
消去単位番号の記録が存在した場合には、S508にお
いて、S502において求めた消去単位番号が消去単位
番号保持領域202に存在する記録と一致するかを判定
する。S508において消去単位番号が異なる場合に
は、S509において、書き込みバッファ管理領域40
3を参照し、書き込み要求領域と同一の領域に書き込ま
れるデータが既に書き込みバッファに存在するかを判定
する。S509で書き込み要求領域と同一の領域に書き
込まれるデータが書き込みバッファに存在しないと判定
された場合には、S510の処理として、S502にお
いて求めた消去単位番号と同じ消去単位番号のデータが
書き込みバッファ402に存在するかを書き込みバッフ
ァ管理領域403を参照して判定する。
【0076】S510で同じ消去単位番号のデータが書
き込みバッファ402に存在する場合には、バッファデ
ータ移動処理を行なうが、これについては後述する。S
510で同じ消去単位番号のデータが書き込みバッファ
402に存在しない場合には、さらにS511におい
て、書き込み要求データを書き込むことができる領域が
書き込みバッファ402に存在するかを判定する。S5
11において空き領域がないと判断した場合には、S5
12において書き込み制御手段111は、書き込み手段
302に対し書き込み指示を行なう。書き込み指示を受
けた書き込み手段302は、現在の消去ブロックバッフ
ァ103のデータをフラッシュメモリ101に書き込
む。これ以降、S504〜S507の処理を行ない、消
去単位番号の記録が存在しない場合と同一の処理を行な
う。
【0077】S511で書き込みバッファ402に空き
領域が存在すると判断した場合には、S513において
書き込み制御手段111は、書き込みデータを書き込み
バッファ402の空き領域へ書き込む。S514におい
て、書き込みバッファ管理領域に、管理情報として、消
去単位番号とその中でのオフセット、及び書き込みデー
タの大きさを記録する。S509で書き込み要求領域と
同一の領域に書き込まれるデータが書き込みバッファに
存在すると判定された場合には、S516において書き
込み制御手段111は、書き込み要求領域と同一の領域
に書き込まれるデータが存在するエリアに書き込み要求
データを上書きする。S508においてS502で算出
した消去単位番号が消去単位番号保持領域202に存在
する記録と一致すると判定された場合には、S517に
おいて、書き込み要求データの消去単位番号と同一の消
去単位番号のデータが記憶されている消去ブロックバッ
ファ103内のエリアに書き込み要求データを上書きす
る。
【0078】S510において、同じ消去単位番号のデ
ータが書き込みバッファ402に存在する場合に行われ
る、バッファデータ移動処理の動作を図14を用いて説
明する。以下の各処理は、断りがない限り書き込み制御
手段111の動作である。まずS521において、消去
ブロックバッファ103に現在登録されているデータを
フラッシュメモリ101に書き込む。次にS522にお
いて、書き込み要求データを消去ブロックバッファ10
3へ書き込む。続いてS523において、バッファ移動
手段501は書き込みバッファ402に記録されている
データの内、書き込み要求データの消去単位と同一の消
去単位に含まれる全ての書き込みデータを、消去ブロッ
クバッファ103へ移動する。書き込み要求データの書
き込み要求領域と、既に書き込みバッファ402に記憶
されている書き込みデータの書き込み要求領域とが異な
る場合には、書き込み要求データ及び書き込みバッファ
402に記憶されている書き込みデータがすべて消去ブ
ロックバッファ103に記憶される。書き込み要求デー
タの書き込み要求領域と、既に書き込みバッファ402
に記憶されている書き込みデータの書き込み要求領域と
が一部重複する場合には、重複する領域については書き
込み要求データが優先的に消去ブロックバッファ103
に書き込まれ、重複しない部分については書き込み要求
データ及び書き込みバッファ402に記憶されている書
き込みデータがそれぞれ消去ブロックバッファ103に
書き込まれる。
【0079】さらにS524において、待避手段112
に対して待避指示を行ない、待避指示を受けた待避手段
112は、S523において消去ブロックバッファ10
3へ書き込まれた領域以外のデータである不変データ
を、フラッシュメモリの当該消去単位から待避する。続
いて、S525において消去単位番号を消去単位番号保
持領域202に記録し、S526において、書き込みバ
ッファ402から消去ブロックバッファ103へ移動に
伴う書き込みバッファ管理領域403の更新を行う。最
後にS527において、消去命令手段301に対して消
去指示を出し、消去指示を受けた消去命令手段301は
消去ブロックバッファ103へ待避された消去単位の消
去を行なうようにフラッシュメモリ101に命令を出
す。以上の処理が書き込み要求が発生する度に実行され
る。
【0080】尚、実施の形態5における読み出し時の動
作は、実施の形態4の場合と同一である。この実施の形
態の情報処理装置によれば、フラッシュメモリ101の
同一消去単位領域に含まれる書き込みバッファ403上
の書き込みデータ及び書き込み要求データを消去ブロッ
クバッファ103にまとめることにより、書き込みバッ
ファ402を効率よく使用することができるので、実施
の形態4の効果に加え、フラッシュメモリ101への書
き込み回数をより低減でき、フラッシュメモリ101の
劣化を低減することができるという効果がある。
【0081】尚、本実施の形態において、書き込みデー
タの移動を、書き込み要求データの消去単位と同一の消
去単位に含まれる書き込みデータ及び書き込み要求デー
タではなく、書き込みバッファ402に記憶されている
複数の書き込みデータを移動するようにしてもよい。即
ち、書き込みバッファ402に記録されている書き込み
データであって、同一の消去単位に含まれる複数の書き
込みデータを移動するようにしてもよい。この場合、S
510において、書き込み制御手段111は、書き込み
バッファ管理領域403を参照し、書き込みバッファ4
02に記憶されている書き込みデータの一番多い消去単
位を判定する。これは、書き込みバッファ管理領域40
3内の消去単位番号を参照することにより判定可能であ
る。S510において同一の消去単位に含まれる書き込
みデータが書き込みバッファ402内に存在しない場合
には、S511の処理に進む。S510において同一の
消去単位に含まれる書き込みデータが書き込みバッファ
402内に存在する場合には、S510で書き込みデー
タの一番多い消去単位を判定し、S515において、書
き込みバッファ402内に記憶されている複数の書き込
みデータのバッファデータ移動処理を行う。
【0082】バッファデータ移動処理においては、S5
21、S522の処理を行わず、S510で一番多い消
去単位として判定された消去単位を書き込み先として持
つ書き込みデータをすべて書き込みバッファ402から
消去ブロックバッファ103に移動する。書き込みデー
タの書き込み要求領域が互いに異なる場合には、書き込
みバッファ402に記憶されている書き込みデータがす
べて消去ブロックバッファ103に記憶される。書き込
み要求データの書き込み要求領域が互いに一部重複する
場合には、重複する領域について新しい書き込みデータ
が優先的に消去ブロックバッファ103に書き込まれ
る。消去ブロックバッファ103に書き込みが完了した
後、移動したデータが記憶されていた書き込みバッファ
402のエリアのデータが消去される。その後、S52
5とS526の間において、書き込み要求データを書き
込みバッファ402に書き込む。S526において新た
な書き込みデータに基づき管理情報の更新を行い、最後
にS527の処理を行う。以上のように、書き込みデー
タの一番多い消去単位の書き込みデータを消去ブロック
バッファ103に移動することで、さらに効率的に不揮
発性メモリ102を利用することが可能となる。
【0083】実施の形態6.実施の形態6における情報
処理装置の構成は、実施の形態5の場合と同一である。
但し、書き込みバッファ管理領域403には、図9で示
したものに加えて、書き込みバッファ402の領域の使
用頻度に関する情報が記録される。ここでは、図15に
示すように、バッファの領域を使用する使用頻度の情報
の一例として、書き込みバッファ402へのデータ書き
込みが行われる度に1ずつ加算され、書き込まれた順番
を特定する書き込みの一連番号と、バッファ領域への書
き込み回数とを記録するものとする。本実施形態は、実
施の形態5と基本的動作において同様であるが、特に、
書き込みバッファ402へのの領域を使用する使用頻度
に基づき、書き込みデータの移動を行うものである。
【0084】実施の形態6における書き込み時の動作
を、図16および図17を用いて説明する。以下の各処
理は、断りがない限り書き込み制御手段111の動作で
ある。まずS601において、データの書き込み要求を
受け、さらにS602において、書き込み要求領域を含
むフラッシュメモリの消去単位の番号を求める。書き込
み要求の内容と消去単位の番号を求める動作は実施の形
態1と同様である。続いてS603において、消去単位
番号保持領域202を参照し、消去単位番号の記録が存
在するかを判定する。消去番号の記録が存在しなけれ
ば、S604において、書き込み要求データを消去ブロ
ックバッファ103に書き込む。
【0085】次にS605において、待避手段112に
対して待避指示を行ない、待避指示を受けた待避手段1
12が消去単位内の不変データを消去ブロックバッファ
103に書き込むことにより待避させる。続いてS60
6において、S602において求めた消去単位番号を消
去単位番号保持領域202に記録する。さらにS607
において、消去命令手段301に対して消去指示を出
し、消去指示を受けた消去命令手段301がすでに消去
ブロックバッファ103へ待避された消去単位の消去を
行なうようにフラッシュメモリ101に命令を出す。消
去指示の内容は実施の形態1と同様である。
【0086】S603で消去単位番号の記録が存在する
場合、S608において、S602で求めた消去単位番
号が消去単位番号保持領域302に存在する記録と一致
するかを判定する。S608で消去単位番号が異なる場
合には、S609において、書き込みバッファ管理領域
403を参照し、書き込みバッファに書き込み要求領域
と同一領域のデータが存在するかを判定する。S609
で同一領域のデータが存在しない場合には、S610の
処理として、S602において求めた消去単位番号と同
じ消去単位のデータが書き込みバッファに存在するか
を、書き込みバッファ管理領域403を参照して判定す
る。
【0087】S610で同じ消去単位のデータが書き込
みバッファに存在する場合には、S620においてバッ
ファデータ移動処理(1)を行なうが、これは図14に示
された実施の形態5のバッファデータ移動処理と同一で
あり、説明を省略する。S610で同じ消去単位のデー
タが書き込みバッファに存在しない場合には、さらにS
611において、書き込み制御手段111は書き込み要
求のデータを書き込むことができる領域が書き込みバッ
ファ402に存在するかを判定する。S611で空き領
域がない場合には、S612でバッファデータ移動処理
(2)を行なうが、これについては後述する。
【0088】S611で書き込みバッファに空き領域が
存在した場合には、S613において書き込み制御手段
111は、書き込み要求データを書き込みバッファへ書
き込む。次に、S614において、書き込みバッファ管
理領域403内のデータの書き込まれたバッファに対応
する部分に、フラッシュメモリ上での位置を示す情報と
して、消去単位番号とその中でのオフセット、書き込ま
れた大きさを記録するとともに、バッファの領域の使用
頻度の情報として、書き込みの一連番号と、バッファ書
き込み回数の初期値として1を記録する。
【0089】S609で書き込み要求と同一領域のデー
タが存在すると判定された場合には、S630におい
て、書き込み制御手段111は、書き込み要求データを
書き込みバッファに書き込む。続いてS631におい
て、書き込みバッファ管理領域403内の、対応する領
域についてのバッファの領域の使用頻度の情報として、
書き込みの一連番号を記録し、バッファ書き込み回数を
1加算したものに更新する。S608においてS602
で算出した消去単位番号が消去単位番号保持手段302
に存在する記録と一致すると判定された場合には、S6
30において、書き込み要求データを消去ブロックバッ
ファ103に書き込む。
【0090】S611で書き込みバッファに空き領域が
ない場合に行われる、バッファデータ移動処理(2)
(S611)の動作を図17を用いて説明する。以下の
動作は、断りがない限り書き込み制御手段111の動作
である。まず、S681で現在の消去ブロックバッファ
103のデータをフラッシュメモリ101に書き込む。
S682において、書き込みバッファ管理領域403を
検索し、使用頻度の低い書き込みバッファの領域を選択
する。使用頻度の判定は、書き込みバッファ管理領域4
03内の書き込みの一連番号および書き込み回数を用い
て行ない、一連番号が最も小さく、かつ書き込み回数が
最も少ない領域があれば、その領域を選択する。一連番
号が最小の領域と、書き込み回数が最少の領域が一致し
ない場合には、一連番号が小さい順に書き込み回数を調
べていき、書き込み回数が最少のものを選択する。尚、
書き込み回数が最少のものではなく、一連番号が最小の
ものを選択してもよい。
【0091】S683においては、S682で選択され
た書き込みバッファのデータを消去ブロックバッファへ
103移動する。続いてS684において、書き込み要
求データを、消去ブロックバッファ103へ移動された
データが記録されていた書き込みバッファ内の領域へ書
き込む。次にS685において、消去ブロックバッファ
103へ移動されたデータを含むフラッシュメモリ10
1の消去単位について、待避手段301に対し待避指示
を行なう。待避指示をうけた待避手段301は、待避指
示に従い、消去単位の不変データを消去ブロックバッフ
ァ103へ書き込むことにより待避させる。
【0092】さらにS686において、S685で待避
された消去単位番号を消去単位番号保持領域202に記
録する。続いてS687において、書き込みバッファ管
理領域403の、書き込みバッファ402から消去ブロ
ックバッファ103へ移動されたエリアに対応する部分
を、新たに書き込まれたデータに対応するように更新す
る。最後にS688において消去命令手段301に対し
て消去指示を出し、消去指示を受けた消去命令手段30
1は、消去ブロックバッファ103へ待避された消去単
位の消去を行なうようにフラッシュメモリ101に命令
を出す。以上の処理が書き込み要求が発生する度に実行
される。
【0093】尚、実施の形態6における読み出し時の動
作は、実施の形態4の場合と同一である。以上のよう
に、本実施の形態の情報処理装置によれば、書き込みバ
ッファ上で使用頻度の低い領域を先にフラッシュメモリ
に書き込むことにより、書き込みバッファを効率よく使
用することができるので、実施の形態5の効果に加え、
フラッシュメモリへの書き込み回数をさらに低減でき、
フラッシュメモリの劣化を低減することができるという
効果がある。
【0094】実施の形態7.図19は発明の実施の形態
7における情報処理装置の概略を示す構成図である。図
において、601は不揮発性メモリ102内のエリアで
あって、消去単位番号領域202内の値と同じ値が記録
される消去単位番号確認領域、611は情報処理装置の
起動時に実行され、消去単位番号領域202,および消
去単位番号確認領域601内のデータを元に、消去ブロ
ックバッファ103の内容をフラッシュメモリ101に
書き戻す復旧手段である。他の構成は、図1において説
明した構成の同一又は相当部であり、説明を省略する。
【0095】本実施の形態において、メモリへのデータ
書き込み時の動作を図20を用いて説明する。以下の各
処理は断りがない限り書き込み制御手段111の動作で
ある。図20において、S701、S702、S70
4、S705、S707は実施の形態1の処理(図3の
S101、S102、S103、S104、S105)
と同一であるので説明を省略する。この実施の形態では
S703、S706、S708の処理を有する点で相違
するため、この点を中心に説明する。
【0096】S701にて書き込み要求を受けた後、S
702においてフラッシュメモリ101上の消去単位番
号を求める。続いて、S703にてS702において求
められた消去単位番号を消去単位番号保持領域202に
書き込む。その後、S704で消去ブロックバッファ1
03へ書き込み要求データを書き込み、S705で待避
手段112に待避指示を出す。
【0097】続いて、S706にてS702において求
められた消去単位番号を消去単位番号確認領域601に
書き込む。これにより、消去単位番号保持領域202お
よび消去単位番号確認領域601の値が同一の場合、消
去ブロックバッファ103への書き込みは全て完了した
ことを示すことになる。次に、S707にて消去命令手
段301に対して消去指示を出した後、書き込み手段3
02に書き込み指示を出す。
【0098】続いて、S708にて消去単位番号保持領
域202と消去単位番号確認領域601の内容をクリア
する。これにより、消去ブロックバッファ601にはデ
ータが残っていないことを示す。以上がメモリへのデー
タ書き込み時の動作である。
【0099】次に、情報処理装置の起動時に実行される
復旧手段611の動作を図21を用いて説明する。復旧
手段611はまず、S781において、消去単位番号保
持領域202内の値と消去単位番号確認領域601の値
を読み出す。続いてS782にて、消去単位番号保持領
域202内と消去単位番号確認領域601にフラッシュ
メモリ内の消去単位番号が存在するかチェックする。
【0100】番号が存在しない場合、消去ブロックバッ
ファにはデータがないので、復旧手段611の処理を終
了する。S782にて、番号が存在する場合、S783
にて、消去単位番号保持領域202内の値と消去単位番
号確認領域601の値が同一かをチェックする。
【0101】値が同一な場合、メモリへのデータ書き込
み時において、消去ブロックバッファ103の内容をフ
ラッシュメモリ101に書き込む最中、即ち図20にお
いて、S706からS708の間に電源断が発生し、情
報処理装置が再起動されたことになるので、復旧手段6
11はS784にて、消去命令手段301に対し消去指
示を出した後、書き込み手段302に書き込み指示を出
し、消去ブロックバッファ103の内容をフラッシュメ
モリ101に書き込む。この消去指示および書き込み指
示の内容は、メモリへのデータ書き込み時の動作(図2
0)のS707と同様である。
【0102】値が同一でない場合、消去ブロックバッフ
ァにデータを書き込んでいる最中、即ち図20において
S703からS705の間に電源断が発生し、情報処理
装置が再起動されたことになり、消去ブロックバッファ
103内のデータは途中までの書き込みデータしか存在
しないので、復旧手段611はS785にて、情報処理
装置にエラー通知を行う。これにより情報処理装置は書
き込み途中の電源断を検出することができる。
【0103】S784またはS785の処理が終了する
と、復旧手段611はS786にて、消去単位番号保持
領域202および消去単位番号確認領域601をクリア
する。これは、S784経由の場合、消去ブロックバッ
ファへの書き込みが完了したことを意味し、S785経
由の場合はエラー通知にて、消去ブロックバッファのエ
ラーを通知したので、再度消去ブロックバッファを利用
可能状態にするために実施する。以上が復旧手段611
の動作である。
【0104】以上のように、この実施の形態によれば、
メモリへのデータ書き込み時において、消去ブロックバ
ッファへのデータ書き込み前に消去番号保持領域に消去
単位番号を書き込み、待避手段に待避指示を出した後に
消去単位番号確認領域に消去番号を格納するようにした
ので、電源断の復旧時に書き込み要求処理中に電源断が
発生したかを検知することができる情報処理装置を得る
ことができる。さらに、不揮発性メモリが電池などでデ
ータの内容を保持するようなメモリの場合において、電
源断後の電池の電圧降下により、不揮発性メモリの内容
が不定になった場合でも、復旧手段に消去番号保持領域
および消去番号確認領域内の値をチェックするようにし
たので、不揮発性メモリの内容が不安定になっているか
を検知することができる情報処理装置を得ることができ
る。
【0105】尚、本実施の形態においては、S785に
てエラー通知の後、S786を処理するようにしている
が、S785の処理終了後、復旧手段611を終了さ
せ、情報処理装置の再起動時に再度エラー通知させても
構わない。また、消去単位番号確認領域に書き込む値を
消去単位番号保持領域の値と同一のものとしているが、
消去単位番号保持領域の値と伴って変化する値、例え
ば、消去単位番号保持領域の値のNOT値を設定し、復旧
手段611のS783にて消去単位番号保持領域の値と
消去番号確認領域の値のNOT値が等しいかでチェックし
てもよい。
【0106】また、復旧手段611は情報処理押す値の
再起動時に実行されると記載しているが、復旧手段61
1を書き込み要求時に実行してもよい。
【0107】実施の形態8.図22は発明の実施の形態
8における情報処理装置の概略を示す構成図である。図
において、602は不揮発性メモリ102内のエリアで
あって、消去ブロックバッファ103の内容が正しいこ
とを示すチェック値を格納する消去ブロックバッファ確
認領域である。他の構成は、図19において説明した構
成の同一又は相当部であり、説明を省略する。
【0108】本実施の形態において、メモリへのデータ
書き込み時の動作を図23を用いて説明する。以下の各
処理は断りがない限り書き込み制御手段111の動作で
ある。図23において、S801〜S806、S80
8、S809は実施の形態7の処理(図20のS701
〜S706、S707、S708)と同一であるので説
明を省略する。この実施の形態ではS807の処理を有
する点で相違するため、この点を中心に説明する。
【0109】S801〜S806の後、S807にて消
去ブロックバッファ内のデータが有効であるか否かのチ
ェックに用いる値を消去ブロックバッファ確認領域60
2に書き込む。この値は消去ブロックバッファ内に書き
込まれているデータが正しいか否かをチェック際に用い
られるものであり、消去ブロックバッファ内のデータ値
をすべて加算したチェックサム値などが入る。S807
の後、S808、S809の処理を実行する。以上がメ
モリへのデータ書き込み時の動作である。
【0110】次に、情報処理装置の起動時に実行される
復旧手段611の動作を図24を用いて説明する。図2
4において、S881〜S883、S886〜S888
は実施の形態7の処理(図21のS781〜S783、
S784〜S786)と同一であるので説明を省略す
る。この実施の形態ではS884、S885の処理を有
する点で相違するため、この点を中心に説明する。
【0111】S881〜S883を実施し、S883に
て、消去単位番号保持領域202の内の値と消去単位番
号確認領域601の値が同一である場合、S884に進
む。S884では、消去ブロックバッファ103内のデ
ータをチェックし、消去ブロックバッファ確認領域60
2の値と比較する。即ち図23でのS807での処理と
同様の規則で消去ブロックバッファ103内のデータを
計算することで得られる値と、消去ブロックバッファ確
認領域602の値とを比較する。通常、両者の値は同一
値になるが、消去ブロックバッファに本発明の手段以外
の操作によりデータが書きまれたり、消去ブロックバッ
ファ103が使用している不揮発性メモリが故障した場
合には両者の値は一致しない。両者の値が一致しなけれ
ば、S885にて値が妥当でないと判断する。
【0112】S885にて値が妥当でないと判断された
場合、S886に進み情報処理装置にエラー通知を行
う。そして、S889にて消去単位番号保持領域202
と消去単位番号確認領域601の内容をクリアする。こ
れにより、消去ブロックバッファを利用可能状態にす
る。S885にて値が妥当であると判断した場合、S8
87、S888の処理を実行する。以上が復旧手段61
1の動作である。
【0113】以上のように、この実施の形態によれば、
消去ブロックバッファ内のデータが正しいことを示す値
を保持する消去ブロックバッファ確認領域を備えるよう
にしたので、消去ブロックバッファを保持している不揮
発性メモリが故障し、消去ブロックバッファ内のデータ
が不正になっても、情報処理装置がそれを検出すること
ができる。さらに、消去ブロックバッファに他手段から
不正なデータ書き込みがあっても、それを検出すること
ができる。
【0114】実施の形態9.図25は発明の実施の形態
9における情報処理装置の概略を示す構成図である。図
において、603は不揮発性メモリ102内のエリアで
あって、消去ブロックバッファ103およびフラッシュ
メモリ101に対する書き込みを禁止または許可するこ
とを意味する値を格納する書き込み禁止フラグ領域であ
る。また図において、612は書き込み禁止フラグ領域
603に書き込み許可を意味する値を書き込む書き込み
許可指示手段、613は書き込み禁止フラグ領域603
に書き込み禁止を意味する値を書き込む書き込み禁止指
示手段である。他の構成は図4において説明した構成の
同一または相当部であり、説明を省略する。
【0115】本実施の形態において、メモリへのデータ
書き込み時の動作を図26を用いて説明する。以下の各
処理は断りがない限り書き込み制御手段111の動作で
ある。図26において、S901、S904〜911は
実施の形態2の処理(図5のS201、S202〜20
9)と同一であるので説明を省略する。この実施の形態
ではS902、S903の処理を有する点で相違するた
め、この点を中心に説明する。
【0116】まず、S901にてデータの書き込み要求
を受けた後、S902にて書き込み禁止フラグ領域をチ
ェックし、その領域の値が書き込み禁止を意味する値に
なっているかをチェックする。もし、値が書き込み禁止
を意味する値になっていた場合、S903に進み、情報
処理装置にエラー通知を行い処理を終了する。これによ
り、書き込み禁止が指定されている限り、消去ブロック
バッファ103およびフラッシュメモリ101にデータ
書き込みは発生しない。S902にて書き込み禁止フラ
グ領域の値が書き込み禁止を意味する値でない場合、S
904に進む。S904以降の処理は実施の形態2と同
様である。以上がメモリへのデータ書き込み時の動作で
ある。
【0117】次に、書き込み許可指示手段612の動作
について図27を用いて説明する。書き込み許可指示手
段612は、書き込み許可指示を受けるとS952にて
書き込み禁止フラグ領域603に書き込み許可を意味す
る値を書き込み、処理を終了する。これにより、以降の
メモリへのデータ書き込み時に、データを書き込むこと
が可能になる。以上が書き込み許可指示手段612の動
作である。
【0118】次に、書き込み禁止指示手段613の動作
を図28を用いて説明する。まず、S982において、
消去単位番号保持領域603の内容を参照し、消去単位
番号の記録が存在するか判定する。存在しない場合、S
985へ進む。
【0119】S982において、消去単位番号保持領域
603に消去単位番号の記録が存在する場合、消去ブロ
ックバッファにデータが残っているので、これをフラッ
シュメモリ101に書き戻す処理を行う。まず、S98
3において、消去命令手段301に対し消去指示を出し
た後、書き込み手段302に書き込み指示を出し、消去
ブロックバッファ103の内容をフラッシュメモリ10
1に書き込む。この消去指示および書き込み指示の内容
は、実施の形態7におけるデータ書き込み時の動作(図
23)のS808の処理と同様である。続いて、S98
4にて消去単位番号保持領域202をクリアし、消去ブ
ロックバッファにデータが存在しないことを示す。
【0120】次に、S985にて、書き込み禁止フラグ
領域603に書き込み禁止を意味する値を書き込む。こ
れにより、以降のメモリへのデータ書き込み時に、デー
タを書き込むことを抑制することが可能となる。以上が
書き込み禁止指示手段613の動作である。
【0121】以上のように、この実施の形態によれば、
書き込み禁止フラグ領域を設け、書き込み許可指示手段
において、書き込みを許可する値を設定し、書き込み禁
止手段において書き込みを禁止する値を設定し、書き込
み制御手段は書き込み禁止フラグ領域の値が書き込み許
可を示すときのみ書き込みを実施するようにしたので、
データの書き込みを抑制する情報処理装置を得ることが
できる。また、書き込み禁止指示時に、消去ブロックバ
ッファの内容をフラッシュメモリに書き込むようにし、
書き込み禁止状態では不揮発性メモリにデータが残らな
いようにしたので、不揮発性メモリが電池などでデータ
の内容を保持するようなメモリの場合において、電源断
後の電池の電圧降下による不揮発性メモリ内のデータ破
壊においても、データが消去されないようにすることが
できる。
【0122】実施の形態10.図29は実施の形態10
における情報処理装置の概略を示す構成図である。図に
おいて、601は不揮発性メモリ102内のエリアであ
って、消去単位番号保持領域202内の値と同じ値が記
録される消去単位番号確認領域、611は情報処理装置
の起動時に実行され、消去単位番号保持領域202, お
よび消去単位番号確認領域601内のデータを元に、消
去ブロックバッファ103の内容をフラッシュメモリ1
01に書き戻す復旧手段である。他の構成は図4におい
て説明した構成の同一または相当部であり、説明を省略
する。
【0123】本実施の形態において、メモリへのデータ
書き込み時の動作を図30を用いて説明する。以下の各
処理は、断りのない限り書き込み制御手段111の動作
である。図30において、S1001〜S1003、S
1005、S1006、S1008、S1009、S1
011は実施の形態2の処理(図5のS201〜S20
3、S204、S205、S207、S208、S20
9)と同一であるので説明を省略する。この実施の形態
ではS1004、S1007、S1010の処理を有す
る点で相違するため、この点を中心に説明する。
【0124】S1001で書き込み要求を受け、S10
02で書き込み要求領域を含むフラッシュメモリ101
上の消去単位番号を求め、S1003で消去単位番号保
持領域202を参照し、消去単位番号保持領域202に
消去単位番号の記録が存在するかを判定する。
【0125】消去単位番号の記録が存在しなければ、S
1004にてS1002にて求められた消去単位番号を
消去単位番号保持領域202に書き込む。続いて、S1
005で書き込みデータを消去ブロックバッファ103
に書き込み、S1006で待避手段112に対して待避
指示を行う。待避手段112は、S1002で求めた番
号のフラッシュメモリの消去単位領域から、不変データ
を消去ブロックバッファ103に書き込む。
【0126】続いて、S1007にて、S1002にお
いて求められた消去単位番号を消去単位番号確認領域6
01に書き込む。これにより、消去単位番号保持領域2
02および消去単位番号確認領域601の値が同一の場
合、消去ブロックバッファ103への書き込みは全て完
了したことを示すことになる。S1007の処理が終了
すると、フラッシュメモリ101にデータを書き込むこ
となく、メモリへのデータ書き込み処理を終了する。
【0127】S1003において、消去単位番号保持領
域202に消去単位番号の記録が存在する場合には、S
1008、S1009により消去ブロックバッファ10
3の内容をフラッシュメモリ101内に書き込んだ後、
S1010にて消去単位番号保持領域202および消去
単位番号確認領域601の内容をクリアする。即ち、消
去単位番号保持領域202および消去単位番号確認領域
601がクリアされているということは消去ブロックバ
ッファ103にデータがないことを示す。
【0128】続いて、消去単位番号の記録が存在しない
場合と同様に、S1004からS1007の処理を行
い、消去単位番号保持領域への消去単位番号の設定、書
き込みデータの消去ブロックバッファへの書き込み、フ
ラッシュメモリからのデータの待避、消去単位番号確認
領域への消去単位番号の設定を行う。
【0129】S1008で、S1002で求めた消去単
位番号が消去単位番号保持領域202に存在する記録と
一致する場合には、S1011において、書き込み要求
データを消去ブロックバッファ103へ書き込む。以上
がメモリへのデータ書き込み時の動作である。
【0130】次に、情報処理装置の起動時に実行される
復旧手段611の動作を図31を用いて説明する。復旧
手段はまず、S1051において、消去単位番号保持領
域202内の値と消去単位番号確認領域601の値を読
み出す。続いてS1052にて、消去単位番号保持領域
202内の値と消去単位番号確認領域601にフラッシ
ュメモリ内の消去単位番号が存在するかチェックする。
【0131】番号が存在しない場合、消去ブロックバッ
ファにはデータがないので、復旧手段の処理を終了す
る。S1052にて、番号が存在する場合、S1053
にて、消去単位番号保持領域202内の値と消去単位番
号確認領域601の値が同一かを判定する。値が同一な
場合、消去ブロックバッファにはデータが残っているこ
とを示すので、復旧手段611はS1054にて、消去
命令手段301に対し消去指示を出した後、書き込み手
段302に書き込み指示を出し、消去ブロックバッファ
103の内容をフラッシュメモリ101に書き込む。こ
の消去指示および書き込み指示の内容は、実施の形態7
におけるデータ書き込み時の動作(図23)のS808
の処理と同様である。
【0132】値が同一でない場合、まだ消去ブロックバ
ッファの内容が完成していない、即ち図30において、
S1005からS1007の間に電源断が発生し、情報
処理装置が再起動されたことになり、消去ブロックバッ
ファ103内のデータは途中までの書き込みデータしか
存在しないので、復旧手段611はS1055にて、情
報処理装置にエラー通知を行う。これにより、情報処理
装置は書き込み途中の電源断を検出することができる。
【0133】S1054またはS1055の処理が終了
すると、復旧手段611はS1056にて、消去単位番
号保持領域202および消去単位番号確認領域601を
クリアする。これは、S1054経由の場合、消去ブロ
ックバッファへの書き込みが完了したことを意味し、S
1055経由の場合はエラー通知にて、消去ブロックバ
ッファのエラーを通知したので、再度消去ブロックバッ
ファを利用可能状態にするために実施される。以上が復
旧手段611の動作である。
【0134】以上のように、この実施の形態によれば、
メモリへのデータ書き込み時において、消去ブロックバ
ッファへのデータ書き込み前に消去番号保持領域消去単
位番号を書き込み、待避手段に待避指示を出した後に消
去単位番号確認領域に消去単位番号を格納するようにし
たので、電源断の復旧時に書き込み要求処理中に電源断
が発生したかを検知することができる情報処理装置を得
ることができる。
【0135】さらに、復旧時に消去ブロックバッファの
内容をフラッシュメモリに書き戻すようにしたので、復
旧後に、データの書き込みを行わない限り、データは全
てフラッシュメモリ上に存在し、電池等でバックアップ
する不揮発性メモリを消去ブロックバッファに使うよう
な場合、電源断後の電圧降下による不揮発性メモリ内の
内容が不正になることによる、データ破壊を防ぐことが
できる。
【0136】実施の形態11.本発明の他の実施形態に
おける情報処理装置について説明する。情報処理装置の
構成は、実施の形態10と同様であり、図29に示され
る。本実施の形態の基本動作は復旧手段611の処理動
作以外は実施の形態10と同じである。本実施の形態に
おける復旧手段611の動作を図32を用いて説明す
る。
【0137】復旧手段はまず、S1101において、消
去単位番号保持領域202内の値と消去単位番号確認領
域601の値を読み出す。続いて、S1102におい
て、消去単位番号保持領域202内の値と消去単位番号
確認領域601にフラッシュメモリ内の消去単位番号が
存在するか判定する。
【0138】番号が存在しない場合、消去ブロックバッ
ファにはデータがないので、復旧手段の処理を終了す
る。S1102にて番号が存在する場合、S1103に
て、消去単位番号保持領域202内の値と消去単位番号
確認領域601の値が同一かを判定する。値が同一な場
合、消去ブロックバッファにはデータが残っていること
を意味し、処理を終了する。
【0139】値が同一でない場合、消去ブロックバッフ
ァ103内のデータは途中までの書き込みデータしか存
在しないので、復旧手段611はS1104にて、情報
処理装置にエラー通知を行う。これにより、情報処理装
置は書き込み途中の電源断を検出することができる。続
いて、S1105にて、再度消去ブロックバッファを利
用可能状態にするため、消去単位番号保持領域202お
よび消去単位番号確認領域601の内容をクリアする。
以上が復旧手段611の動作である。
【0140】以上のように、この実施の形態によれば、
復旧時に消去単位番号保持領域の内容と消去単位番号確
認領域の内容が一致していた場合はなにもせず、一致し
ていない場合のみエラー通知および消去単位番号保持領
域・消去単位番号確認領域のクリアを行うようにしたの
で、消去ブロックバッファに内容が残っている場合の復
旧処理を速くすることができる。
【0141】実施の形態12.図33は、実施の形態1
1における情報処理装置の概略を示す構成図である。図
において、601は不揮発性メモリ102内のエリアで
あって、消去単位番号保持領域202内の値と同じ値が
記録される消去単位番号確認領域、604は消去ブロッ
クバッファを一定サイズ毎に区切り、各区域内のデータ
が正しいことを示すチェック値が格納された消去ブロッ
クバッファ管理領域である。
【0142】また図において、611は情報処理装置の
起動時に実行され、消去単位番号領域202、および消
去単位番号確認領域611、および消去ブロックバッフ
ァ管理領域604内のデータを元に、消去ブロックバッ
ファ103の内容をフラッシュメモリ101に書き戻す
復旧手段であり、614は書き込み制御手段111およ
び待避手段112からの書き込み指示により、書き込み
データを消去ブロックバッファに書き込むとともに、書
き込んだ領域に対応するチェック値を消去ブロックバッ
ファ管理領域604に書き込む消去ブロックバッファ書
き込み手段である。これ以外の構成については、図4と
同様である。
【0143】次に、消去ブロックバッファ管理領域60
4の構造を図34を用いて説明する。消去ブロックバッ
ファ管理領域604は消去ブロックバッファ103を一
定サイズ、例えば4Kバイト毎に区切り、各区域に対し
て、その区域内のデータチェックに用いる値、例えば区
域内のデータをすべて加算したチェックサム値などが入
る。
【0144】図34の例では、書き込み領域1のデータ
チェック値(チェックサム値)が「0x1234567
8」、書き込み領域2のデータチェック値(チェックサ
ム値)が「0x789a123」、書き込み領域3のデー
タチェック値(チェックサム値)が「0xa1b890
1」となっている(0xは16進数を示す)。書き込み領
域1、書き込み領域2、書き込み領域3は消去ブロック
バッファ103内の一定サイズの区域を示す。
【0145】消去ブロックバッファ書き込み手段614
は、書き込み領域1への書き込みがあった場合、消去ブ
ロックバッファ103にデータを書き込むとともに、消
去ブロックバッファ管理領域の書き込み領域1に対応す
る領域、即ち図34において、「0x1234567
8」が格納されている領域に書き込み領域1のデータチ
ェック値を書き込む。
【0146】次に本実施の形態におけるメモリへのデー
タ書き込み時の動作を図35を用いて説明する。以下の
各処理は断りがない限り書き込み制御手段111の動作
である。図35において、S1201〜S1203、S
1204、S1207〜S1210は実施の形態10の
処理(図29のS1001〜S1003、S1004、
S1007〜S1010)と同一であるので説明を省略
する。この実施の形態ではS1205、S1206、S
1211の処理を有する点で相違するため、この点を中
心に説明する。
【0147】S1201〜S1204までを実施の形態
10と同様に実行する。そして、S1204を実行した
後、S1205において書き込みデータを消去ブロック
バッファに書き込むため消去ブロックバッファ書き込み
手段614に指示を行う。この指示には、書き込みデー
タの消去ブロックバッファ103上の位置およびサイズ
および書き込みデータが含まれる。消去ブロックバッフ
ァ書き込み手段614の具体的な処理内容については後
述する。
【0148】次に、S1206において、待避手段11
2に対して待避指示を行う。待避手段112の処理内容
については後述する。続いて、S1207でS1202
において求められた消去単位番号を消去単位番号確認領
域601に書き込む。S1207の処理が終了すると、
フラッシュメモリ101にデータを書き込むことなく、
メモリへのデータ書き込み処理を終了する。
【0149】S1208で、S1202で求めた消去単
位番号が消去単位番号保持領域202に存在する記録と
一致する場合には、S1211において消去ブロックバ
ッファ書き込み手段に指示し、書き込み要求データを消
去ブロックバッファ103へ書き込む。この指示には、
書き込みデータの消去ブロックバッファ103上の位置
およびサイズおよび書き込みデータが含まれる。消去ブ
ロックバッファ書き込み手段614の具体的な処理内容
については後述する。以上がメモリへのデータ書き込み
時の動作である。
【0150】次に、フラッシュメモリ101内の不変デ
ータを消去ブロックバッファ103に書き込む待避手段
112の動作を、図36を用いて説明する。待避手段1
12は、まずS1231において書き込み要求データが
含まれるフラッシュメモリ101内の消去単位領域の先
頭から、書き込み要求データが含まれる領域の先頭まで
のデータをフラッシュメモリ101から読み出し、消去
ブロックバッファ書き込み手段614に指示し、読み出
したデータを消去ブロックバッファ103に書き込む。
この時、消去ブロックバッファ書き込み手段614への
指示には、消去単位領域の先頭アドレス、消去単位領域
の先頭アドレスから書き込み要求領域の先頭までのサイ
ズ、およびフラッシュメモリ101から読み出したデー
タが含まれる。
【0151】次に待避手段112はS1232におい
て、書き込み要求データが含まれるフラッシュメモリ1
01内の消去単位領域の書き込み要求領域の最後から消
去単位領域の最後までのデータをフラッシュメモリ10
1から読み出し、消去ブロックバッファ書き込み手段6
14に指示し、読み出したデータを消去ブロックバッフ
ァ103に書き込む。この時、消去ブロックバッファ書
き込み手段614への指示には、消去単位領域内の書き
込み要求領域の最後方アドレス、消去単位領域内の書き
込み要求領域の最後方アドレスから消去単位領域の最後
方アドレスまでのサイズ、およびフラッシュメモリ10
1から読み出したデータが含まれる。以上が、待避手段
112の動作である。これにより、消去単位領域内の不
変データが消去ブロックバッファ103に書き込まれ
る。
【0152】次に、消去ブロックバッファ103にデー
タを書き込む消去ブロックバッファ書き込み手段614
の動作を図37を用いて説明する。まず、S1251に
おいて、消去ブロックバッファ103への書き込み要求
を受ける。この書き込み要求には、書き込むデータとし
ての書き込み要求データ、データを書き込む消去ブロッ
クバッファ103上のアドレスを特定する書き込み要求
領域、そしてデータの大きさの情報が含まれている。
【0153】次にS1252において、書き込み要求デ
ータを消去ブロックバッファ管理領域で管理するサイズ
に分割する。例えば、管理するサイズの単位が1000
バイトで、書き込み要求データが消去ブロックバッファ
の先頭からのオフセットで100〜2099のところま
でを占める場合、書き込み要求データは、消去ブロック
バッファの先頭からのオフセットで、100〜999、
1000〜1999,2000〜2099の3つに分割
される。これは、書き込み要求領域から見たオフセット
では、0〜899, 900〜1899, 1900〜19
99の領域となる。以降、この分割された領域を先頭か
ら順に処理していく。即ち、まず100〜999の領
域、次に1000〜1999の領域、2000〜209
9の領域が処理されていく。
【0154】次にS1253において、消去ブロックバ
ッファに分割された書き込み要求データを書き込む。こ
の時、書き込み要求データ以外の領域、例えば、100
〜999に対する書き込みの場合の、0〜99の部分に
対する書き込みは実施しない。続いてS1254におい
て、書き込んだ領域に対するチェック値を求め、それを
消去ブロックバッファ管理領域の対応するチェック値領
域に書き込む。例えば、100〜999までの書き込み
をS1253にて行った場合、S1254は図34の書
き込み領域1のデータチェック値に消去ブロックバッフ
ァ103内のオフセット0〜999までのデータチェッ
ク値を書き込む。このデータチェック値は対応する領域
内のデータが正しいか否かをチェックする基準値として
用いられるものであり、領域内のデータ値を全て加算し
たチェックサム値などが入る。
【0155】次にS1255において、書き込み要求デ
ータが全て消去ブロックバッファに書き込まれたかをチ
ェックする。S1255において、まだ書き込み要求デ
ータがすべて書き込まれていない場合は、次の分割され
た書き込み要求領域、即ち100〜999に対する書き
込みを行っていた場合は、1000〜1999までの領
域に対し、S1253およびS1254の処理を行う。
以上が消去ブロックバッファ書き込み手段の動作であ
る。
【0156】次に、情報処理装置の起動時に実行される
復旧手段611の動作を図38を用いて説明する。復旧
手段はまず、S1281において、消去番号保持領域2
02内の値と消去単位番号確認領域601の値を読み出
す。続いて、S1282にて、消去単位番号保持領域2
02内の値と消去単位番号確認領域601にフラッシュ
メモリ内の消去単位番号が存在するかチェックする。
【0157】S1281で番号が存在しない場合、消去
ブロックバッファにはデータがないので、復旧手段の処
理を終了する。S1282で番号が存在する場合、S1
283にて、消去単位番号保持領域202内の値と消去
単位番号確認領域601の値が同一かをチェックする。
【0158】S1283で値が同一でない場合、S12
87に進み、情報処理装置にエラー通知を行う。これに
より情報処理装置は書き込み途中の電源断を検出するこ
とができる。その後、S1288にて、消去単位番号保
持領域202および消去単位番号確認領域601をクリ
アする。これにより、消去ブロックバッファを利用可能
状態にする。S1283で消去単位番号保持領域202
内の値と消去単位番号確認領域601の値が同一である
場合、S1284に進む。
【0159】S1284では、消去ブロックバッファ管
理領域604内の各書き込み領域のデータチェック値を
読み出す。また、対応する消去ブロックバッファ103
内の領域の値を算出する(この算出規則は書き込み領域
のデータチェック値の算出規則と同様の規則にて行う、
例えばデータチェック値がチェックサム値であれば、デ
ータの合計値を算出する)。そして、消去ブロックバッ
ファ管理領域604内の各書き込み領域のデータチェッ
ク値と消去ブロックバッファ103内の領域の計算値と
を比較する。
【0160】両者の値が一致すれば、消去ブロックバッ
ファ103のデータが妥当であると判定する。消去ブロ
ックバッファ内の領域のデータが妥当でない場合、S1
287に進み情報処理装置にエラー通知を行う。これに
より、本発明の手段以外の操作により消去ブロックバッ
ファ103にデータが書き込まれたり、消去ブロックバ
ッファ103が使用している不揮発性メモリが故障した
場合のエラーを検出することができる。そして、S12
88にて消去単位番号保持領域202と消去単位番号確
認領域601の内容をクリアする。これにより、消去ブ
ロックバッファを利用可能状態にする。
【0161】S1285にて、消去ブロックバッファ管
理領域604内の値が妥当であると判断した場合、S1
286に進む。S1286では、消去ブロックバッファ
内のデータチェックが最終領域まで達したかを判定す
る。最終領域まで達していない場合、次の領域へ進み、
S1284〜S1286の処理を続行する。S1286
にて、消去ブロックバッファ内の最終領域まで到達した
場合、処理を終了する。これにより、復旧後、消去ブロ
ックバッファ内のデータは正しいことがわかる。
【0162】以上のように、この実施の形態によれば、
消去ブロックバッファ内を一定のサイズに分割し、個々
の領域に対するデータチェック値を格納する消去ブロッ
クバッファ管理領域を設けたので、消去ブロックバッフ
ァを保持している不揮発性メモリが故障し、消去ブロッ
クバッファ内のデータが不正になっても、情報処理装置
がそれを検出することができる。
【0163】さらに、消去ブロックバッファ内を一定サ
イズに分割したので、消去ブロックバッファに格納され
ている消去単位領域と同一の領域に対する書き込み要求
があった場合、その書き込み要求領域に付随する領域の
みデータチェック値を更新すればよく、消去ブロックバ
ッファ全体のデータチェック値を再計算する必要がない
ので、メモリへのデータ書き込み処理が速くなる。
【0164】実施の形態13.本発明の他の実施形態に
おける情報処理装置について説明する。情報処理装置の
構成は、実施の形態12と同様であり、図33に示され
る。本実施の形態では、消去ブロックバッファ管理領域
604の構造と消去ブロックバッファ書き込み手段61
4および復旧手段611の動作以外は実施の形態12と
同様である。
【0165】図39は本実施の形態における消去ブロッ
クバッファ管理領域604の構造である。本実施の形態
では、消去ブロックバッファを任意のサイズで管理する
ため、消去ブロックバッファ管理領域には領域を示す情
報として、消去ブロックバッファ内のオフセット値、領
域のサイズ、データチェック値の3つのデータが保持さ
れる。図において、「−1」となっているのは、領域情
報が格納されていないことを示す。
【0166】本実施の形態における消去ブロックバッフ
ァ書き込み手段614の動作を図40を用いて説明す
る。まず、S1301にて、消去ブロックバッファ10
3への書き込み要求を受ける。この書き込み要求には、
書き込みデータとしての書き込み要求データ、データを
書き込み消去ブロックバッファ103上のアドレスを特
定する書き込み要求領域、そしてデータの大きさの情報
が含まれている。
【0167】続いて、S1302において、書き込み要
求データを消去ブロックバッファに103に書き込む。
次に、S1303において、消去ブロックバッファ管理
領域604を検索する。S1304において、S130
1で受けた書き込み要求の書き込み要求領域が消去ブロ
ックバッファ管理領域604に登録されている領域と同
一領域か判定する。もし、同一領域が存在する場合、S
1305に進み、既に消去ブロックバッファ管理領域6
04に保持されているデータチェック値を書き込み要求
データのデータチェック値に更新し、処理を終了する。
【0168】S1304で同一の領域でないと判定した
場合、S1306において、書き込み要求領域が消去ブ
ロックバッファ管理領域604に登録されている領域に
含まれる(例えば、オフセット0〜1000までの領域
が登録されていた時にオフセット200〜400まで領
域に対し書き込みがあった場合)か判定する。もし、含
まれる場合場合にはS1307にて、消去ブロックバッ
ファ管理領域604に登録されている領域のデータ(消
去ブロックバッファ内オフセット、サイズ、データチェ
ック値)を削除する。
【0169】そして、登録されていた領域の先頭から書
き込み要求データの先頭までの領域を新規に登録(S1
308)し、さらに書き込み要求領域を新規登録し(S
1309)、最後に書き込み要求データの最後から登録
されていた領域の最後までの領域を新規登録(S131
0)し、処理を終了する。それぞれ新規登録の際に、消
去ブロックバッファ内オフセット、サイズ、データチェ
ック値を書き込む。
【0170】S1306にて、消去ブロックバッファ管
理領域604に登録されている領域が書き込み要求領域
を含まなかった場合、S1311にて、消去ブロックバ
ッファ管理領域604に登録されている領域で、書き込
み要求領域が跨ぐ領域があるか判定する。
【0171】もし、跨ぐ領域が存在する場合、S131
2にて、消去ブロックバッファ管理領域604に登録さ
れている、書き込み要求領域が跨ぐ領域を全て削除す
る。続いて、跨れた領域の最初の領域の先頭から、書き
込み要求領域の先頭までを消去ブロックバッファ管理領
域604に新規登録(S1313)し、さらに書き込み要
求領域を消去ブロックバッファ管理領域604に新規登
録した(S1314)後、書き込み要求領域の最後から跨
れた領域の最後の領域の最後までを新規登録(S131
5)し、処理を終了する。それぞれ新規登録の際に、消
去ブロックバッファ内オフセット、サイズ、データチェ
ック値を書き込む。
【0172】S1311にて、消去ブロックバッファ管
理領域604に登録されている領域で、書き込み要求領
域が跨ぐ領域が存在しない場合、消去ブロックバッファ
管理領域604には書き込み要求領域に対する情報が格
納されていないので、S1316において、書き込み要
求領域を消去ブロックバッファ管理領域604に新規登
録する。この時、消去ブロックバッファ管理領域604
には、書き込み要求領域の消去ブロックバッファ103
上の位置(オフセット)、書き込み要求領域のサイズ、
および書き込み要求データが正しいことを示すチェック
値が格納される。以上が消去ブロックバッファ書き込み
手段614の動作である。
【0173】次に、消去ブロックバッファ管理領域60
4内のデータ操作を図41の例を用いて説明する。図4
1では、オフセット値0x2000(0xは16進数を示
す)、サイズ0x2000、データチェック値0xfedca1
23のデータを書き込んだ場合の、消去ブロックバッフ
ァ内のデータ操作を示している。
【0174】まず、最初の例(例1)は書き込み要求領
域が消去ブロックバッファ管理領域604に登録されて
いる領域と同一のものがあった場合の例である。この例
では、消去ブロックバッファ管理領域604には、オフ
セット0x2000、サイズ0x2000の領域が既に登
録されており、これは書き込み要求データと同じ領域で
ある。
【0175】この場合、消去ブロックバッファ書き込み
手段614は、図40のS1305の処理、即ち、既に
登録されていた領域のチェック値を書き込み要求データ
に対するチェック値に更新する。これにより、データ書
き込み後は図41中の網掛けの部分が更新される。
【0176】次の例(例2)は、書き込み要求領域が消
去ブロックバッファ管理領域604に登録されている領
域の中に含まれる場合の例である。この例では、消去ブ
ロックバッファ管理領域604には、オフセット0x1
000、サイズ0x4000の領域があり、書き込み要
求領域はこの領域に含まれる。この場合、消去ブロック
バッファ書き込み手段614は、図40のS1307〜
S1310の処理を行う。
【0177】初めに、登録されている領域、即ちオフセ
ット0x1000、サイズ0x4000のデータを削除す
る(図40、S1307)。次に登録されていた領域の
先頭から書き込み要求領域の先頭までの領域(オフセッ
ト0x1000, サイズ0x1000)を新規登録する
(図40, S1308)。そして、書き込み要求領域
(オフセット0x2000, サイズ0x2000)を新規
登録する(図40, S1309)。最後に、書き込み要求
データの最後から登録されていた領域の最後までの領域
(オフセット0x4000,サイズ0x1000)を新規登
録する(図40, S1310)。これにより、データ書き
込み後は図41中の網掛けの部分が更新される。
【0178】次の例(例3)は、書き込み要求領域が消去
ブロックバッファ管理領域604に登録されている領域
を跨ぐ場合の例である。この例では、書き込み要求領域
は、消去ブロックバッファ管理領域604に登録されて
いる2つの領域(オフセット0x0000,サイズ0x3
000の領域およびオフセット0x3000、サイズ0x
2000の領域)を跨ぐ。この場合、消去ブロックバッ
ファ書き込み手段614は、図40のS1312〜S1
315の処理を行う。
【0179】初めに、登録されている領域、即ちオフセ
ット0x0000,サイズ0x3000の領域およびオフ
セット0x3000,サイズ0x2000の領域を削除す
る(図40, S1312)。次に登録されていた領域の
内最初の領域(オフセット0x0000、サイズ0x30
00)の先頭から、書き込み要求領域の先頭までの領域
(オフセット0x0000,サイズ0x2000)を新規
登録する(図40, S1313)。そして書き込み要求領
域(オフセット0x2000, サイズ0x2000)を新
規登録する(図40, S1314)。最後に、書き込み
要求領域の最後から跨れた領域の最後の領域の最後まで
の領域(オフセット0x4000, サイズ0x1000)
を新規登録する(図40, S1315)。これにより、
データ書き込み後は図41中の網掛けの部分が更新され
る。
【0180】最後の例(例4)は、書き込み要求領域が
消去ブロックバッファ管理領域604に登録されていな
い場合の例である。この例では、消去ブロックバッファ
管理領域604には、オフセット0x4000,サイズ0
xc000の領域のみ登録されており、書き込み要求領域
(オフセット0x2000, サイズ0x2000)は登録
されていない。
【0181】この場合、消去ブロックバッファ書き込み
手段614は図40のS1316の処理、即ち、書き込
み要求領域(オフセット0x2000, サイズ0x100
0)を消去ブロックバッファ管理領域604に新規登録
する。これにより、データ書き込み後は図41中の網掛
けの部分が更新される。
【0182】次に本実施の形態における復旧手段611
の動作を図42を用いて説明する。復旧手段611はま
ず、S1351において、消去単位番号保持領域202
内の値と消去単位番号確認領域601の値を読み出す。
続いて、S1282にて、消去単位番号保持領域202
内の値と消去単位番号確認領域601にフラッシュメモ
リ内の消去単位番号が存在するかチェックする。
【0183】番号が存在しない場合、消去ブロックバッ
ファにはデータがないので、復旧手段の処理を終了す
る。S1352において、番号が存在する場合、S13
53にて、消去単位番号保持領域202内の値と消去単
位番号確認領域601の値が同一かをチェックする。値
が同一でない場合、S1357に進み、情報処理装置に
エラー通知を行う。これにより、情報処理装置は書き込
み途中の電源断を検出することができる。その後、S1
358にて、消去単位番号保持領域202および消去単
位番号確認領域601をクリアする。これにより、消去
ブロックバッファを利用可能状態にする。
【0184】S1353にて、消去単位番号保持領域2
02内の値と消去単位番号確認領域601の値が同一で
ある場合、S1354に進む。S1354では、消去ブ
ロックバッファ管理領域604に登録されている領域情
報に対応させて、消去ブロックバッファ103内のデー
タを読み出す。そして、消去ブロックバッファ103内
のデータを用いて値を算出する(この算出規則は書き込
み領域のデータチェック値の算出規則と同様の規則にて
行う、例えばデータチェック値がチェックサム値であれ
ば、データの合計値を算出する)。続いて、S1355
にて算出した値と消去ブロックバッファ管理領域604
の領域情報にあるデータチェック値をチェックする。
【0185】両者の値が一致すれば、消去ブロックバッ
ファ103のデータが妥当であると判定する。
【0186】S1355にて妥当でない、即ち消去ブロ
ックバッファ103内のデータが正しくない場合、S1
357に進み、情報処理装置にエラー通知を行う。これ
により、本発明の手段以外の操作により消去ブロックバ
ッファ103にデータが書き込まれたり、消去ブロック
バッファ103が使用している不揮発性メモリが故障し
たことを検出することができる。そして、S1358に
て消去単位番号保持領域202と消去単位番号確認領域
601の内容をクリアする。これにより、消去ブロック
バッファを利用可能状態にする。
【0187】S1355にて妥当であると判断した場
合、S1356に進む、。S1356では、消去ブロッ
クバッファ管理領域604に登録されている領域の最後
に到達したかチェックする。領域の最後まで到達してい
ない場合、次の領域に対し、S1354〜S1356の
処理を続行する。
【0188】S1356にて、消去ブロックバッファ管
理領域604に登録されている領域の最後に登録されて
いる領域まで達した場合、処理を終了する。これによ
り、復旧後、消去ブロックバッファには正しいデータの
み残る。以上のように、この実施の形態によれば、消去
ブロックバッファ管理領域に登録する領域を可変サイズ
にするようにしたので、消去ブロックバッファ書き込み
手段でバッファへの書き込み時に書き込み要求領域を分
割する必要がなく、メモリへのデータ書き込み処理を高
速に行うことができる。
【0189】実施の形態14.本発明の他の実施の形態
における情報処理装置について説明する。情報処理装置
の構成は、実施の形態12と同様であり、図33に示さ
れる。本実施の形態では、読み出し手段の動作以外は実
施の形態12と同様である。
【0190】本実施の形態における読み出し手段201
の動作を図43を用いて説明する。図43において、S
1401〜S1403、S1404は実施の形態2の処
理(図6のS211〜S213、S215)と同一であ
るので説明を省略する。この実施の形態ではS140
5、S1406、S1407の処理を有する点で相違す
るため、この点を中心に説明する。
【0191】S1401において読み出し要求を受ける
と、S1402において読み出し要求領域を含むフラッ
シュメモリの消去単位の番号を求め、S1403におい
て消去単位番号保持領域202の記録とS1402にお
いて求めた消去単位の番号とが一致するかを判定する。
消去単位番号の記録が消去単位番号保持領域202に存
在しないか、あるいは記録された消去番号がS1402
において求めたものと一致しない場合には、読み出し領
域のデータは消去ブロックバッファに保持されていない
ので、S1404において、フラッシュメモリからデー
タの読み出しを行う。
【0192】消去単位番号の記録がS1402において
求めたものと一致する場合、S1405に進み、読み込
み要求領域のデータを消去ブロックバッファ103から
読み出す。続いてS1406において、読み出した領域
に対応する消去ブロックバッファ管理領域604のデー
タチェック値を用いて、読み出した領域のデータが正し
いか否かを判定する。即ち、S1405で消去ブロック
バッファ103から読み出したデータを用いて値を算出
し(この算出規則は消去ブロックバッファ管理領域60
4のデータチェック値を算出する算出規則と同様の規則
である。)、この算出値と読み出した領域に対応する消
去ブロックバッファ管理領域604のデータチェック値
とが同一か否かを判定する。両者が同一の値であれば、
消去ブロックバッファ103から読み出したデータが妥
当であると判断する。
【0193】S1406で妥当でないと判断した場合、
S1407にて情報処理装置にエラー通知を行い、処理
を終了する。S1406で妥当であると判断した場合、
読み出した領域のデータは正しい値であるので、そのま
ま処理を終了する。
【0194】以上のように本実施の形態によれば、消去
ブロックバッファ管理領域にあるデータチェック値をデ
ータ読み出し時のデータチェック用に利用するようにし
たので、本発明以外の手段により消去ブロックバッファ
にデータ書き込みが発生した場合や不揮発性メモリに故
障が発生した場合、読み出し時にそれをエラーとして検
出することができる。
【0195】実施の形態15.本発明の他の実施の形態
における情報処理装置について説明する。情報処理装置
の構成は、実施の形態12と同様であり、図33に示さ
れる。本実施の形態では、読み出し手段の動作以外は実
施の形態12と同様である。本実施の形態における読み
出し手段201の動作を図44を用いて説明する。図4
4において、S1501〜S1506は実施の形態14
の処理(図43のS1401〜S1406)と同一であ
るので説明を省略する。
【0196】この実施の形態ではフラッシュメモリから
の読み出しS1504の処理をS1506において消去
ブロックバッファ103から読み出したデータが妥当で
なかった場合にも行う。S1504では、読み出し要求
領域に対応するフラッシュメモリ上の領域からデータを
読み込み、その後処理を終了する。尚、S1504の処
理は、消去単位番号の記録が消去単位番号保持領域20
2に存在しないか、あるいは記録された消去番号がS1
502において求めたものと一致しない場合にも行う。
【0197】以上のように本実施の形態によれば、消去
ブロックバッファ103の読み出し時に、読み出したデ
ータが正しくない場合、消去ブロックバッファ103に
対応するフラッシュメモリ上の領域からデータを読み込
むようにしたので、書き込み前のデータを使い情報処理
装置の動作を継続することができる。
【0198】実施の形態16.図45は本発明の他の実
施の形態における情報処理装置の構成を示す図である。
図において、605は消去ブロックバッファの消去単位
番号情報や書き込みバッファの消去単位番号情報などが
入るバッファ管理領域である。また、611は情報処理
装置の起動時に実行され、バッファ管理領域605内の
情報に従い、消去ブロックバッファ103および書き込
みバッファ402のデータを復旧させる復旧手段であ
る。他の構成は、図8における構成の同一もしくは相当
部であり説明を省略する。なお、図8における消去単位
番号保持領域202は図45ではバッファ管理領域60
5内に設定される。
【0199】図46は、バッファ管理領域605に記録
されているデータの内容を示す。バッファ管理領域60
5は、消去ブロックバッファの情報を格納する消去ブロ
ックバッファ管理領域6051と、書き込みバッファの
情報を格納する書き込みバッファ管理領域6052とで
構成される。
【0200】バッファ管理領域605の消去ブロックバ
ッファ管理領域6051には、消去ブロックバッファ1
03が保持しているデータに対応するフラッシュメモリ
上の消去単位番号を記録する消去単位番号保持領域と、
消去単位番号保持領域と同じ値を持つ消去単位番号確認
領域と、消去ブロックバッファ内のデータが正しいか否
かのチェックに用いるデータチェック値を持つデータチ
ェック値領域が含まれる。
【0201】バッファ管理管理領域605の書き込みバ
ッファ管理領域6052には、書き込みバッファ402
に保存されてたデータが書き込まれるべきフラッシュメ
モリ101上の消去単位番号と、この消去単位領域内の
書き込み領域の位置を特定するオフセットと、書き込み
領域の大きさを示すサイズと、対応する書き込みバッフ
ァ内の領域のデータが正しいか否かのチェックに用いる
データチェック値と、この情報領域(消去単位番号領
域、消去単位内オフセット、サイズ、データチェック
値)のデータが正しいか否かのチェックに用いる管理領
域チェック値を保持する。消去単位番号の「−1」は、
これ以上書き込みデータが存在しないことを意味する。
【0202】本実施の形態におけるメモリへの書き込み
時の動作を図47を用いて説明する。以下の各処理は断
りがない限り書き込み制御手段111の動作である。ま
ず、S1601でデータの書き込み要求を受けるとS1
602で書き込み要求がされたフラッシュメモリの消去
単位の番号を求める。この動作は、実施の形態1および
4と同様である。
【0203】続いて、S1603において、消去ブロッ
クバッファ管理領域6051の消去単位番号保持領域を
参照し、消去単位番号の記録が存在するかを判定する。
ここで消去番号の記録が存在しなければ、S1604に
おいて、書き込み制御手段111は、消去ブロックバッ
ファ管理領域6051内にある消去単位番号保持領域に
S1602で求めた消去単位番号を格納する。続いて、
S1605において書き込み要求データを消去ブロック
バッファ103に書き込み、S1606において待避手
段112に対して待避指示を行う。待避指示の内容およ
び待避手段の処理動作は実施の形態1および4と同様で
ある。
【0204】続いてS1607において、データチェッ
ク値を消去ブロックバッファ管理領域6051内にある
データチェック値領域に書き込む。この値は、消去ブロ
ックバッファ103内に書き込まれているデータが正し
いか否かをチェックするために用いられる値であり、消
去ブロックバッファ103内のデータ値をすべて加算し
たチェックサム値など、データが正しいか否かをチェッ
クできる値が入る。
【0205】さらにS1608において、S1602で
求められた消去単位番号を消去ブロックバッファ管理領
域6051内にある消去単位番号確認領域に格納する。
これにより、消去単位番号保持領域および消去単位番号
確認領域の値が同一の場合、消去ブロックバッファ10
3への書き込みは全て完了したことになる。次に、S1
609において消去命令手段301に対して消去指示を
出す。消去指示の内容および消去命令手段301の動作
は実施の形態4と同様である。
【0206】S1603において消去ブロックバッファ
管理領域6051内の消去単位番号保持領域に消去単位
番号の記録が存在すると判断した場合には、S1610
において、S1602で求めた消去単位番号が消去ブロ
ックバッファ管理領域6051内の消去単位番号保持領
域に存在する記録と一致するかを判定する。
【0207】S1610で消去単位番号が異なると判断
した場合には、S1611において、書き込みバッファ
管理領域6052を参照し、書き込みバッファ管理領域
6052に記録されている情報から、書き込み要求領域
と同一の領域に書き込みを行うデータが既に書き込みバ
ッファ402に存在するかを判定する。この判定は、実
施の形態4と同様である。S1611で書き込み要求領
域と同一の領域に書き込みを行うデータが書き込みバッ
ファ402に存在しないと判断した場合には、さらにS
1612において書き込み制御手段111は書き込みバ
ッファ402の空き領域を調べる。この処理は、実施の
形態4と同様である。
【0208】書き込みバッファ402に空き領域が存在
しない場合には、S1613において書き込み制御手段
111は、書き込み手段301に対し書き込み指示を行
う。書き込み指示の内容および書き込み手段301の動
作は実施の形態1と同様である。続いて、S1614に
おいて消去ブロックバッファ管理領域6051の消去単
位番号保持領域と消去単位番号確認領域の内容をクリア
する。これにより、消去ブロックバッファ601にはデ
ータが残っていないことを示す。さらに、この後、S1
604からS1609の処理を、消去単位番号の記録が
存在しない場合と同様に行う。
【0209】S1612で書き込みバッファに空き領域
が存在した場合には、S1615において、書き込みデ
ータを書き込みバッファ402の空き領域へ書き込む。
次にS1616において、書き込みバッファ管理領域6
052に書き込みデータに関する管理情報を記録する。
管理情報は、消去単位番号、消去単位番号が示す領域内
で書き込みデータの位置を特定するオフセット、書き込
みデータのサイズ、書き込みデータが正しいか否かのチ
ェックに用いるデータチェック値、および前記3つの4
つのデータが正しいか否かのチェックに用いる管理領域
チェック値を記録する。書き込みバッファ管理領域60
52における管理情報と、書き込みバッファ402にお
ける書き込みデータの対応づけは、各エリアにおけるア
ドレス上の順序が同一になるように記録されていること
で行われる。
【0210】S1611で書き込み要求領域と同一の領
域に書き込みを行うデータが既に存在すると判定された
場合には、S1617において、書き込みデータを書き
込みバッファの同一領域のデータが記録されているエリ
アに書き込む。続いてS1618において、書き込みバ
ッファ管理領域6052の内、S1617で書き込みデ
ータを書き込んだ領域に関する領域情報を更新する。こ
の時更新される情報は、データチェック値および管理領
域チェック値である。
【0211】S1610で、S1602で算出した消去
単位番号が消去ブロックバッファ管理領域6051の消
去単位番号保持領域に存在する記録と一致すると判定さ
れた場合には、S1619において、書き込み要求デー
タを消去ブロックバッファ103に書き込む。続いて、
S1620において、消去ブロックバッファ管理領域6
051のデータチェック値領域に、更新された消去ブロ
ックバッファ103内のデータから求めたデータチェッ
ク値を書き込む。以上がメモリへのデータ書き込み時の
動作である。
【0212】次に、メモリからのデータ読み出し時の動
作を図48を用いて説明する。以下の各処理は、断りの
ない限り読み出し手段201の動作である。まずS16
51において、読み出し要求を受ける。この読み出し要
求の内容は実施の形態4と同様である。S1652にお
いて、読み出し要求領域を含むフラッシュメモリの消去
単位番号を求める。消去単位番号を求める動作は実施の
形態4と同様である。
【0213】続いてS1653において、消去ブロック
バッファ管理領域6051の消去単位番号保持領域を参
照し、消去単位番号の記録が存在するかを判定する。消
去単位番号の記録が存在しない場合には、S1657に
おいて、書き込みバッファ管理領域6052の管理情報
を参照し、読み出し要求領域として特定された領域に書
き込まれるべきデータが書き込みバッファ402に存在
するかを判定する。
【0214】読み出し要求領域として特定された領域に
書き込まれるべきデータが書き込みバッファ402に存
在する場合には、S1659において、そのデータが正
しいものかどうかを書き込みバッファ管理領域6052
に登録されているデータチェック値を使用して判定す
る。即ち、読み出し要求領域として特定された領域に書
き込まれるべきデータを書き込みバッファ402から読
み出し、このデータを用いて値を算出する(この算出規
則は書き込みバッファ管理領域6052に登録されるデ
ータチェック値の算出規則を用いる)。そして、算出値
と書き込みバッファ管理領域6052に登録されている
データチェック値とを比較して、両者が同一値となれ
ば、書き込みバッファ402のデータが妥当であると判
断する。
【0215】データが妥当であると判定した場合、S1
661において、当該データを書き込みバッファ402
から読み出し、処理を終了する。データが妥当でないと
判定した場合、S1650において、情報処理装置にエ
ラーを通知し、処理を終了する。
【0216】S1657で読み出し要求領域として特定
された領域に書き込まれるべきデータが書き込みバッフ
ァ402に存在しない場合には、S1658において、
読み出しデータをフラッシュメモリ101から読み出
す。
【0217】S1653で消去ブロックバッファ管理領
域6051の消去単位番号保持領域に消去単位番号の記
録が存在し、かつS1652で求めた消去単位番号と一
致する場合には、読み出し要求領域のデータは消去ブロ
ックバッファ103に保持されているので、S1654
においてまず、消去ブロックバッファ103内のデータ
が正しいものであるか、消去ブロックバッファ管理領域
6051のデータチェック値値を使用して判定する。こ
の判断手順はS1659の手順と同様である。
【0218】データが妥当であると判定した場合、S1
655において、当該データを消去ブロックバッファか
ら読み出し、処理を終了する。データが妥当でないと判
定した場合、S1656において、情報処理装置にエラ
ーを通知し、処理を終了する。以上がメモリからのデー
タ読み出し時の動作である。
【0219】次に、情報処理装置の起動時に実行される
復旧手段611の動作を図49を用いて説明する。復旧
手段611はまずS1681において、消去ブロックバ
ッファ管理領域6051の消去単位番号保持領域の値と
消去単位番号確認領域の値を読み出す。続いてS168
2において、消去単位番号保持領域と消去単位番号確認
領域にフラッシュメモリ内の消去単位番号が存在するか
を判定する。
【0220】消去単位番号が存在する場合、S1683
において、消去単位番号保持領域の値と消去単位番号確
認領域の値が同一かをチェックする。消去単位番号保持
領域の値と消去単位番号確認領域の値が同一の場合、S
1684において、消去ブロックバッファ管理領域60
51にあるデータチェック値を読み出す。
【0221】続いてS1685にて、消去ブロックバッ
ファ103内のデータが正しいかを読み出したデータチ
ェック値を用いて判定する。この判定は図48のS16
54と同様である。S1685で、消去ブロックバッフ
ァ103内のデータが妥当である場合、消去ブロックバ
ッファ103内のデータは破壊されていないことになる
ので、書き込みバッファの状態を復旧させるために、S
1687でバッファ管理領域605の書き込みバッファ
管理領域の領域情報を読み出す。
【0222】次に、S1688において、書き込みバッ
ファ管理領域6052のデータが正しいかを、管理領域
チェック値を用いて判定する。この判定は、管理領域チ
ェック値以外の情報(消去単位番号、オフセット、サイ
ズ、データチェック値)を取出してチェックサム値を算
出し、算出して得られたチェックサム値と管理領域チェ
ック値とを比較する。そして両者が一致すれば書き込み
バッファ管理領域6052のデータが妥当であると判断
する。
【0223】S1688で、書き込みバッファ管理領域
6052のデータが妥当である場合、S1689におい
て、領域情報に対応する書き込みバッファ402内のデ
ータが正しいか、領域情報にあるデータチェック値を用
いて判定する。この判定も上記したチェックサムによる
判定方法などを利用して判定される。S1689で、書
き込みバッファ402内のデータが正しいと判断した場
合、S1691でこの領域情報が書き込みバッファ管理
領域に保持されている領域情報の最後かを判定する。領
域情報の最後である場合、処理を終了する。
【0224】S1691で、まだ領域情報の最後でない
場合、次の領域情報を読み出しその領域情報が正しいか
を判定するために、S1687〜S1691の処理を実
行する。S1689で、書き込みバッファのデータが正
しくない場合、S1690において、書き込みバッファ
管理領域6052の当該領域情報をクリアし、領域情報
および当該書き込みバッファを別のデータが使用するこ
とを可能にする。そして、S1691に進み、次の領域
情報へ処理を進める。
【0225】S1688で、領域情報のデータが正しく
ない場合、S1690において、書き込みバッファ管理
領域6052の当該領域情報をクリアし、領域情報およ
び当該書き込みバッファを別のデータが使用することを
可能にする。そして、S1691に進み、次の領域情報
へ処理を進める。
【0226】S1685で、消去ブロックバッファ10
3内のデータが正しくないと判断した場合、S1686
において、消去ブロックバッファ管理領域6051の消
去単位番号保持領域および消去単位番号確認領域をクリ
アし、消去ブロックバッファを使用可能にする。そし
て、S1687〜S1691を実施し、書き込みバッフ
ァ104の復旧処理を行う。
【0227】S1683で、消去ブロックバッファ管理
領域6051の消去単位番号保持領域と消去単位番号確
認領域の値が同一でない場合、S1686において、消
去単位番号保持領域および消去単位番号確認領域をクリ
アし、消去ブロックバッファを使用可能にする。そし
て、S1687〜S1691を実施し、書き込みバッフ
ァ104の復旧処理を行う。S1682で、消去ブロッ
クバッファ管理領域6051にある消去単位番号保持領
域と消去単位番号確認領域に消去単位番号の記録がない
場合、S1687〜S1691を実施し、書き込みバッ
ファ104の復旧処理を行う。
【0228】以上のように本実施の形態によれば、バッ
ファ管理領域605に消去ブロックバッファを管理する
消去ブロックバッファ管理領域6051と書き込みバッ
ファを管理する書き込みバッファ管理領域6052を設
け、消去ブロックバッファ管理領域6051には、消去
単位番号保持領域の他に消去単位番号確認領域とデータ
チェック値領域を、書き込みバッファ管理領域6052
には、消去単位番号領域と消去単位内のオフセット値領
域と書き込みデータサイズ領域の他にデータチェック値
領域と管理領域チェック値を保持している。そのため、
メモリからのデータ読み出し時および情報処理装置の復
旧時に当該データチェック値を用い消去ブロックバッフ
ァおよび書き込みバッファのデータが正しいかをチェッ
クすることができ、消去ブロックバッファおよび書き込
みバッファを保持している不揮発性メモリが故障し、消
去ブロックバッファ内のデータが不正になっても、情報
処理装置がそれを検出することができる。さらに、消去
ブロックバッファおよび書き込みバッファに他手段から
不正なデータ書き込みがあっても、それを検出すること
ができる。
【0229】実施の形態17.本発明の他の実施の形態
における情報処理装置について説明する。情報処理装置
の構成は、実施の形態16と同様であり、図45に示さ
れる。本実施の形態では、復旧手段の動作以外は実施の
形態16と同様である。本実施の形態における復旧手段
611の動作を図50を用いて説明する。図50は、実
施の形態16における復旧手段の動作が一部相違してい
る。
【0230】S1701〜S1705については実施の
形態16で述べたS1681〜S1685の処理と同様
である。S1705で消去ブロックバッファのデータが
正しくないと判断した場合、S1707に進み、S17
07において消去単位番号保持領域と消去単位番号確認
領域をクリアし、消去ブロックバッファ103を再利用
可能にしてから、S1708に進み、書き込みバッファ
402の復旧処理を行う。
【0231】S1705で消去ブロックバッファのデー
タが正しいと判断した場合、S1706で消去命令手段
301に消去指示を行い、消去ブロックバッファに対応
するフラッシュメモリの消去単位領域を消去する。この
消去指示の内容は、実施の形態1と同様である。そし
て、書き込み手段302に書き込み指示を出し、消去ブ
ロックバッファの内容を、消去した領域に書き込む。こ
の書き込み指示の内容も実施の形態1と同様である。
【0232】そして、S1707において、消去ブロッ
クバッファ管理領域6051の消去単位番号保持領域と
消去単位番号確認領域をクリアする。S1702〜S1
707の処理により消去ブロックバッファ103の復旧
処理が完了すると、復旧手段611はS1708におい
て、書き込みバッファ管理領域6052の領域情報を読
み出す。
【0233】次に、S1709、S1710の処理を行
う。この処理は実施の形態16で述べたS1688、S
1689の処理と同様である。S1709で書き込みバ
ッファ管理領域6052の領域情報が妥当でないと判断
した場合およびS1710で書き込みバッファ402内
のデータが正しくないと判断した場合、書き込みバッフ
ァ402の書き込み途中で電源断が発生したと考えられ
るので、S1716において、当該領域情報を書き込み
バッファ管理領域6052から削除し、書き込みバッフ
ァ402を再利用可能にする。
【0234】S1710で書き込みバッファ402内の
データが正しいと判断した場合、S1711において、
当該領域情報に対応する書き込みバッファ402のデー
タを消去ブロックバッファ103に書き込む。次にS1
712において、待避手段112に対して待避指示を行
う。待避指示の内容は実施の形態1と同様である。待避
指示を受けた待避手段112は、消去単位内の不変デー
タを消去ブロックバッファ103に書き込むことにより
待避させる。
【0235】続いてS1713において、消去ブロック
バッファ管理領域6051を更新、即ち、消去単位番号
保持領域および消去単位番号確認領域に消去単位番号を
書き込み、S1711およびS1712により消去ブロ
ックバッファ103に書き込まれたデータのデータチェ
ック値を書き込む。
【0236】次にS1714において、消去命令手段3
01に消去指示を行い、消去ブロックバッファ103に
対応するフラッシュメモリの消去単位領域を消去する。
この消去指示の内容は、実施の形態1と同様である。そ
して書き込み手段302に書き込み指示を出し、消去ブ
ロックバッファ103の内容を、消去した領域に書き込
む。この書き込み指示の内容も実施の形態1と同様であ
る。
【0237】続いてS1715にて、消去ブロックバッ
ファ管理領域6051の消去単位番号保持領域と消去単
位番号確認領域をクリアする。次にS1716におい
て、S1708で読み出した領域情報を書き込みバッフ
ァ管理領域6052から削除し、書き込みバッファ40
2の当該領域を再利用可能にする。
【0238】次に、S1717において、S1708で
読み出した領域情報が、バッファ管理領域605の書き
込みバッファ管理領域に登録されている領域情報の最後
かを判定する。書き込みバッファ管理領域の最後ではな
い場合、当該領域情報の次に登録されている領域情報に
対し、S1708〜S1717の処理を行う。書き込み
バッファ管理領域の最後である場合、書き込みバッファ
402には、データが残っていないので、処理を終了す
る。
【0239】以上のように本実施の形態によれば、情報
処理装置の復旧時に、消去ブロックバッファの内容と書
き込みバッファの内容をフラッシュメモリに書き込むよ
うにしたので、復旧後にメモリへのデータ書き込みを行
わない限り、不揮発性メモリの故障によるデータの破壊
を防ぐことができる。
【0240】実施の形態18.図51は本発明の他の実
施の形態における情報処理装置の構成を示す図である。
図において、185は揮発性メモリであるDRAMであ
り、DRAM185には、不揮発性メモリ102内の消
去単位番号保持領域202と同じ値を持つ消去単位番号
保持領域606と不揮発性メモリ102内の書き込みバ
ッファ管理領域403と同じ値を持つ書き込みバッファ
管理領域607とを備える。このDRAM185は不揮
発性メモリ102よりもデータの読み書きが高速であ
る。また図において、611は情報処理装置の起動時に
実行される復旧手段である。他の構成は図8における構
成の同一もしくは相当部であり、説明を省略する。
【0241】次に本実施の形態におけるメモリへの書き
込み時の動作を、図52を用いて説明する。以下の各処
理は断りのない限り書き込み制御手段111の動作であ
る。まず、S1801、S1802の処理は実施の形態
4と同様である。続いて、S1803において、DRA
M185上の消去単位番号保持領域606を参照し、消
去単位番号の記録が存在するかを判定する。ここで消去
単位番号の記録が存在しなければ、S1804におい
て、書き込み制御手段111は書き込み要求データを消
去ブロックバッファ103に書き込む。
【0242】さらにS1805において、待避手段11
2に対して待避指示を行う。待避指示の内容および待避
手段112の動作は、実施の形態4と同様である。続い
てS1806において、S1802で求めた消去単位番
号を不揮発性メモリ102上の消去単位番号保持領域2
02およびDRAM185上の消去単位番号保持領域6
06に記録する。DRAM185への消去単位番号の書
き込み処理は図54のS1851の処理に相当する。
【0243】さらにS1807において、消去命令手段
301に対して消去指示を出す。消去指示の内容および
消去命令手段301の動作は、実施の形態4と同様であ
る。S1803においてDRAM185上の消去単位番
号保持領域606に消去単位番号の記録が存在する場合
には、S1808において、S1802で求めた消去単
位番号がDRAM185上の消去単位番号保持領域60
6に存在する記録と一致するかを判定する。
【0244】S1808において消去単位番号が異なる
場合には、S1809において、DRAM185上の書
き込みバッファ管理領域607を参照し、書き込みバッ
ファ管理領域607に記録されている情報から、書き込
み要求領域と同一の領域に書き込みを行うデータが既に
書き込みバッファ402に存在するかを判定する。この
判定は、DRAM185上の書き込みバッファ管理領域
607に記憶されている消去単位番号及び消去単位内オ
フセットおよびサイズから把握することができる。
【0245】S1809において書き込み要求領域と同
一の領域に書き込みを行うデータが書き込みバッファ4
02に存在しない場合には、さらにS1810において
書き込み制御手段111は、書き込み要求のデータを書
き込むことができる領域が書き込みバッファ402に存
在するかを、書き込みバッファ402に空き領域を調べ
ることで判定する。空き領域の存在は、DRAM185
上の書き込みバッファ管理領域607に記録されている
情報から知ることができる。
【0246】書き込みバッファ402に空き領域がない
場合には、S1811において書き込み制御手段111
は、書き込み手段302に対し書き込み指示を行う。書
き込み指示の内容および書き込み手段302の動作は実
施の形態4と同様である。続いて、S1804からS1
807の処理を、消去単位番号の記録が存在しない場合
と同様に行う。
【0247】S1810で書き込みバッファに空き領域
が存在した場合には、S1812において、書き込みデ
ータを書き込みバッファ402へ書き込む。次にS18
13において、不揮発性メモリ102上の書き込みバッ
ファ管理領域403およびDRAM185上の書き込み
バッファ管理領域607に、S1812で書き込んだ書
き込みデータに関する管理情報を記録する。管理情報
は、消去単位番号とその中での位置を特定するオフセッ
ト、及び書き込みデータの大きさを記録する。このDR
AM185へ書き込みデータに関する管理情報を記録す
る処理は、図54のS1852に相当する。
【0248】S1809で書き込み要求領域と同一の領
域に書き込みを行うデータが既に存在すると判定された
場合には、S1814において、書き込みデータを書き
込みバッファの同一領域のデータが記録されているエリ
アに書き込む。S1808で、S1802で算出した消
去単位番号がDRAM185上の消去単位番号保持領域
606に存在する記録と一致すること判定された場合に
は、S1815において、書き込み要求データを消去ブ
ロックバッファ103に書き込む。
【0249】次に、メモリからのデータ読み出し時の動
作を図53を用いて説明する。以下の各処理は、断りの
ない限り読み出し手段201の動作である。まずS18
31およびS1832は、実施の形態4と同様である。
続いてS1833において、DRAM185上の消去単
位番号保持領域606を参照し、消去単位番号の記録が
存在するかを判定する。
【0250】消去単位番号の記録が存在しない場合に
は、S1834において、DRAM185上の書き込み
バッファ管理領域607の管理情報を参照し、読み出し
要求領域として特定された領域に書き込まれるべきデー
タが書き込みバッファ402に存在するかを判定する。
【0251】読み出し要求領域として特定された領域に
書き込まれるべきデータが書き込みバッファ402に存
在する場合には、S1835において、その領域のデー
タを書き込みバッファ402から読み出す。読み出し要
求領域として特定された領域に書き込まれるべきデータ
が書き込みバッファ402に存在しない場合には、S1
836において、読み出しデータをフラッシュメモリ1
01から読み出す。
【0252】S1833でDRAM185上の消去単位
番号保持領域606に消去単位番号の記録が存在し、か
つS1832で求めた消去単位番号と一致する場合に
は、読み出し領域のデータは消去ブロックバッファ10
3に保持されているので、S1837において、消去ブ
ロックバッファ103から読み出しデータを読み出す。
以上の処理がメモリからのデータ読み出し時の動作であ
る。
【0253】次に、復旧手段611の動作を図54を用
いて説明する。復旧手段611はまず、S1851にお
いて、DRAM185上の消去単位番号保持領域606
に、不揮発性メモリ102上の消去単位番号保持領域2
02の内容を書き込む。これは、DRAM185は揮発
性メモリであり、情報処理装置の再起動時にデータが消
去されてしまうためである。
【0254】次に、S1852において、DRAM18
5上の書き込みバッファ管理領域607に、不揮発性メ
モリ102上の書き込みバッファ管理領域403の内容
を書き込む。以上が復旧手段の動作である。この動作に
より、復旧手段の処理完了後、不揮発性メモリ102上
の消去単位番号保持領域202および書き込みバッファ
管理領域403の内容と、DRAM185上の消去単位
番号保持領域606および書き込みバッファ管理領域6
07の内容は同じになる。
【0255】以上のように、この実施の形態によれば、
消去単位番号保持領域と書き込みバッファ管理領域を不
揮発性メモリ102および不揮発性メモリ102よりも
高速なDRAM185上に配置し、消去単位番号保持領
域および書き込みバッファ管理領域からの読み出しをD
RAM185上のもので行い、消去単位番号保持領域お
よび書き込みバッファ管理領域への書き込みはDRAM
185および不揮発性メモリ102双方に行い、復旧時
は不揮発性メモリ102の内容をDRAM185にコピ
ーするようにしたので、電源断による消去単位番号保持
領域および書き込みバッファ管理領域の内容破壊を起こ
さずに、かつメモリへのデータの書き込みおよびメモリ
からのデータの読み込みを速く行うことができる。
【0256】実施の形態19.本発明の他の実施形態に
おける情報処理装置について説明する。情報処理装置の
構成は実施の形態5と同様であり、図12に示される。
実施の形態19における書き込み時の動作を図55を用
いて説明する。以下の各処理は断りがない限り書き込み
制御手段111の動作である。図55において、S19
01〜S1910、S1914、S1915は実施の形
態5の処理(図13のS501〜S510、S516、
S517)と同一であるので説明を省略する。この実施
の形態ではS1910の後にS1911、S1912、
S1913の処理を有する点で相違するため、この点を
中心に説明する。
【0257】S1901〜S1910については実施の
形態5と同様に処理を行う。S1910で空き領域が存
在すると判断した場合には、S1911において書き込
み制御手段111は、書き込みデータを書き込みバッフ
ァ402の空き領域へ書き込む。続いて、S1912に
おいて、書き込みバッファ管理領域403に管理情報と
して、消去単位番号とその中のオフセット、及び書き込
みデータの大きさを記録する。S1912が完了後、処
理を終了する。S1910において書き込みバッファ4
02に空き領域が存在しない場合には、S1913にお
いてバッファデータ移動処理を行う。
【0258】バッファデータ移動処理の動作を図56を
用いて説明する。以下の各処理は、断りのない限り書き
込み制御手段111の動作である。まず、S1951に
おいて、消去ブロックバッファ103に現在登録されて
いるデータをフラッシュメモリ101に書き込む。
【0259】次にS1952において、書き込みバッフ
ァ管理領域403と書き込み要求データを検索し、書き
込みバッファ管理領域403に登録されている領域およ
び書き込み要求データの内で、同一消去単位内に含まれ
る領域群にグループ分けした場合にグループ分けした領
域群のサイズが一番多い領域群を選択する。
【0260】例えば、書き込みバッファに消去単位番号
1に含まれる領域が2個あり、それぞれのサイズが10
0バイトおよび200バイトであったとする。さらに書
き込みバッファに消去単位番号2に含まれる領域が3個
あり、それぞれのサイズが10バイトおよび20バイト
および30バイトであったとし、書き込み要求データは
消去単位番号3に対する書き込みでサイズが50バイト
であったとする。この場合、S1952の処理では、消
去単位番号1の領域群のサイズが300バイトと一番多
いので、この2つの領域が選択される。
【0261】次に、S1953においてバッファ移動手
段501は、書き込みバッファ402に記録されている
データおよび書き込み要求データの内、S1952で選
択された領域群のデータを消去ブロックバッファ103
へ移動する。続いて、S1954において、待避手段1
12に対して待避指示を行い、待避指示を受けた待避手
段112は、S1953において消去ブロックバッファ
103へ書き込まれた領域以外のデータである不変デー
タを、フラッシュメモリの当該消去単位から待避する。
さらに、S1955において、消去単位番号を消去単位
番号保持領域202に記録する。
【0262】次に、S1956において書き込み制御手
段111は、S1953で消去ブロックバッファ103
へ移動した領域群に関する管理情報を書き込みバッファ
管理領域403から削除する。次に、S1957におい
て、S1952で算出した領域群に書き込み要求データ
が存在したか判定する。書き込み要求データが存在しな
かった場合、S1958において、S1956の動作に
よって空きができた書き込みバッファ402に書き込み
要求データを書き込み、書き込みバッファ管理領域40
3に書き込み要求データに関する管理情報を登録する。
【0263】次にS1959において、消去命令手段3
01に対して消去指示を出し、消去指示を受けた消去命
令手段301は消去ブロックバッファ103へ待避され
た消去単位の消去を行うようにフラッシュメモリ101
に命令を出す。以上はメモリ書き込み時の動作である。
尚、実施の形態19における読み出し時の動作は、実施
の形態4と同一である。
【0264】以上のように、この実施の形態によれば、
書き込みバッファおよび書き込み要求データを、フラッ
シュメモリの1消去単位内に収まる領域毎にグループ化
し、その内で一番サイズが大きい領域グループを消去ブ
ロックバッファに移動することにより、書き込みバッフ
ァの空き領域を効率よく増やすことができるので、フラ
ッシュメモリへの書き込み回数を低減でき、フラッシュ
メモリの劣化を低減することができる。
【0265】実施の形態20.本発明の他の実施形態に
おける情報処理装置について説明する。情報処理装置の
構成は実施の形態5と同様であり、図12に示される。
また、メモリ書き込み時におけるバッファ移動処理以外
は実施の形態19と同一である。書き込みバッファ40
2に空き領域が存在しない場合に行われる、バッファデ
ータ移動処理の動作を図57を用いて説明する。以下の
各処理は、断りのない限り書き込み制御手段111の動
作である。
【0266】図57において、S2001〜S2009
は実施の形態19の処理(図56のS1951〜S19
59)と同一であるので説明を省略する。この実施の形
態ではS2009以降の処理としてさらにS2010〜
S2018の処理を有する。
【0267】S2001〜S2009については実施の
形態19のS1951〜S1959と同様に実行する。
S2010において書き込み制御手段111は、書き込
みバッファ管理領域403を検索し、書き込みバッファ
管理領域403に登録されている領域で、同一消去単位
内に含まれる領域群にグループ分けした場合にグループ
分けした領域群のサイズがnバイトよりも小さい領域群
の群数を調べる。
【0268】続いて、S2011において、S2010
で調べた群数がm個よりも多いか判定する。群数がm個
よりも少ない場合、処理を終了する。S2011におい
て、群数がm個よりも大きい場合、書き込みバッファの
内容を空にする処理を行う。まず、S2012において
書き込み制御手段111は、書き込み手段302に書き
込み指示を行い、消去ブロックバッファの内容をフラッ
シュメモリ101に書き込む。
【0269】次に、S2013において、書き込みバッ
ファ管理領域403を検索し、書き込みバッファ管理領
域403に登録されている領域の内で、同一消去単位内
に含まれる領域群にグループ分けした場合にグループ分
けした領域群のサイズが一番多い領域群を選択する。
【0270】次に、S2014においてバッファ移動手
段501は、書き込みバッファ402に記録されている
データの内、S2013で選択された領域群のデータを
消去ブロックバッファ103へ移動する。続いて、S2
015において、待避手段112に待避指示を行い、待
避指示を受けた待避手段112は、S2014において
消去ブロックバッファ103へ書き込まれた領域以外の
データである不変データを、フラッシュメモリの当該消
去単位から待避する。さらに、S2016において、消
去単位番号を消去単位番号保持領域202に記録する。
【0271】次にS2017において書き込み制御手段
111は、S2014で消去ブロックバッファ103へ
移動した領域群に関する領域情報を書き込みバッファ管
理領域403から削除する。次に、S2108におい
て、S2017で更新された書き込みバッファ管理領域
403を検索し、まだ登録されている管理情報が存在す
るか判定する。登録されている管理情報が存在する場
合、S2012からS2018の処理をさらに続行す
る。登録されている管理情報が存在しない場合、処理を
終了する。これにより、書き込みバッファ403にはデ
ータが残らなくなる。
【0272】以上のように、この実施の形態によれば、
書き込みバッファに空きがない場合に、書き込みバッフ
ァの内容を消去ブロックバッファに移動した後、書き込
みバッファ管理領域を検索し、書き込みバッファ管理領
域に登録されている領域で、同一消去単位内に含まれる
領域群にグループ分けした場合に、グループ分けした領
域群のサイズがnバイトより小さい領域群の群数がm個
よりも多い場合に、書き込みバッファの内容を空にする
ようにし、書き込みサイズが小さいものを強制的に書き
込みバッファから排除するようにしたので、実施の形態
19よりもより効率よく書き込みバッファの空き領域を
増やすことができ、フラッシュメモリへの書き込み回数
を低減することができる。
【0273】
【発明の効果】この発明は、以上に説明したように構成
されているので、以下に記載されるような効果を奏す
る。
【0274】この発明におけるデータ記憶方法は、あら
かじめ定められた消去単位でデータの消去および書き込
みがなされる複数の消去単位領域を有するメモリと、前
記消去単位領域に書き込む書き込みデータおよび前記消
去単位領域内の不変データの双方を記憶する不揮発性の
消去ブロックバッファとを用いて前記メモリ内のデータ
の書き換えを行なうデータ記憶方法であって、前記メモ
リの第1の消去単位領域に第1の書き込みデータを書き
込むことを要求する第1の書き込み要求に対し、前記第
1の書き込みデータを前記消去ブロックバッファに書き
込む第1の消去ブロックバッファ書き込みステップと、
前記メモリの第1の消去単位領域に第1の書き込みデー
タを書き込むことを要求する第1の書き込み要求に対
し、前記第1の消去単位領域内の不変データを前記消去
ブロックバッファに書き込む第2の消去ブロックバッフ
ァ書き込みステップと、前記第2の消去ブロックバッフ
ァ書き込みステップの後、前記第1の消去単位領域のデ
ータを消去する消去ステップと、前記第1の消去ブロッ
クバッファ書き込みステップ及び前記消去ステップの
後、前記消去ブロックバッファに記憶された前記第1の
書き込みデータ及び前記不変データを前記第1の消去単
位領域に書き込むメモリ書き込みステップとを有するの
で、メモリ内の不変データを消去後、メモリ内に第1の
書き込みデータを書き込む前に電源断等の不備が生じた
場合にも、不変データおよび第1の書き込みデータが失
われることなく、メモリ内のデータの書き換えの信頼性
が向上する。
【0275】この発明におけるデータ記憶方法は、あら
かじめ定められた消去単位でデータの消去および書き込
みがなされる複数の消去単位領域を有するメモリと、前
記消去単位領域に書き込む書き込みデータおよび前記消
去単位領域内の不変データの双方を記憶する不揮発性の
消去ブロックバッファとを用いて前記メモリ内のデータ
の書き換えを行なうデータ記憶方法であって、前記メモ
リの第1の消去単位領域に第1の書き込みデータを書き
込むことを要求する第1の書き込み要求に対し、前記第
1の書き込みデータを前記消去ブロックバッファに書き
込む第1の消去ブロックバッファ書き込みステップと、
前記メモリの第1の消去単位領域に第1の書き込みデー
タを書き込むことを要求する第1の書き込み要求に対
し、前記第1の消去単位領域内の不変データを前記消去
ブロックバッファに書き込む第2の消去ブロックバッフ
ァ書き込みステップと、前記第1の消去ブロックバッフ
ァ書き込みステップの後、前記メモリに第2の書き込み
データを書き込むことを要求する第2の書き込み要求に
対して、前記第2の書き込みデータを前記消去ブロック
バッファに書き込む第3の消去ブロックバッファ書き込
みステップと、前記第2の消去ブロックバッファ書き込
みステップ及び前記第3の消去ブロックバッファ書き込
みステップの後、前記消去ブロックバッファに書き込ま
れたデータを前記第1の消去単位領域に書き込むメモリ
書き込みステップとを有するため、複数の書き込み要求
が生じても第1の消去単位領域に書き込む処理を一括し
て行なうことができ、メモリの劣化を低減することがで
きる。
【0276】また、前記第1の消去ブロックバッファ書
き込みステップの後、前記第1の書き込みデータの書き
込み先である消去単位領域と前記第2の書き込みデータ
の書き込み先である消去単位領域とを比較する比較ステ
ップとを有し、前記比較ステップにおける比較結果が同
一の場合に、前記第3の消去ブロックバッファ書き込み
ステップおよび前記メモリ書き込みステップを実行する
ものであるため、同一の消去単位領域への書き込み要求
が続く場合であっても、同一消去単位領域へ書き込み処
理を一括して行なうことができ、メモリの劣化を低減す
ることができる。
【0277】この発明におけるデータ記憶方法は、あら
かじめ定められた消去単位でデータの消去および書き込
みがなされる複数の消去単位領域を有するメモリと、前
記消去単位領域に書き込む書き込みデータおよび前記消
去単位領域内の不変データの双方を記憶する消去ブロッ
クバッファとを用いて前記メモリ内のデータの書き換え
を行なうデータ記憶方法であって、前記メモリの第1の
消去単位領域に第1の書き込みデータを書き込むことを
要求する第1の書き込み要求に対し、前記第1の書き込
みデータを前記消去ブロックバッファに書き込む第1の
消去ブロックバッファ書き込みステップと、前記メモリ
の第1の消去単位領域に第1の書き込みデータを書き込
むことを要求する第1の書き込み要求に対し、前記第1
の消去単位領域内の不変データを前記消去ブロックバッ
ファに書き込む第2の消去ブロックバッファ書き込みス
テップと、前記第2の消去ブロックバッファ書き込みス
テップの後、前記第1の消去単位領域のデータを消去す
る消去ステップと、前記メモリに第2の書き込みデータ
を書き込むことを要求する第2の書き込み要求を受けた
後に、前記消去ブロックバッファに記憶されたデータを
前記消去ステップにおいて消去された前記第1の消去単
位領域に書き込むメモリ書き込みステップとを有するた
め、メモリ書き込みステップの際に消去ステップを実行
する必要が無いため、メモリ書き込みステップの処理時
間を短縮することができる。
【0278】また、前記消去ステップの後、第1の書き
込みデータの書き込み先である消去単位領域と前記第2
の書き込みデータの書き込み先である消去単位領域とを
比較する比較ステップとを有し、 前記比較ステップの
比較結果が異なる場合に、前記メモリ書き込みステップ
を実行するため、メモリ書き込みステップの処理時間を
短縮することができる。
【0279】この発明におけるデータ記憶方法は、あら
かじめ定められた消去単位での消去および書き込みがな
される複数の消去単位領域を有するメモリと、前記消去
単位領域に書き込む書き込みデータおよび前記消去単位
領域内の不変データの双方を記憶する消去ブロックバッ
ファと、不変データを記憶することなく書き込みデータ
を記憶する書き込みバッファとを用いて前記メモリ内の
データの書き換えを行なうデータ記憶方法であって、前
記メモリの第1の消去単位領域に第1の書き込みデータ
を書き込むことを要求する第1の書き込み要求に対し、
前記第1の書き込みデータ及び前記第1の消去単位領域
内の不変データとを前記消去ブロックバッファに書き込
む消去ブロックバッファ書き込みステップと、前記消去
ブロックバッファ書き込みステップの後、前記メモリの
第2の消去単位領域に第2の書き込みデータを書き込む
ことを要求する第2の書き込み要求に対して、前記第2
の書き込みデータを前記書き込みバッファに書き込む第
1の書き込みバッファ書き込みステップと、前記第1の
書き込みバッファ書き込みステップの後、前記メモリの
消去単位領域に第3の書き込みデータを書き込むことを
要求する第3の書き込み要求に対して、前記第3の書き
込みデータを前記書き込みバッファに書き込む第2の書
き込みバッファ書き込みステップとを有するため、第
2、第3の書き込み要求に対する消去ブロックバッファ
を設ける場合に比較し、バッファの有効利用を図ること
ができる。
【0280】また、前記第2の書き込みデータの書き込
み先である前記メモリ内の位置を規定する書き込み要求
領域と、前記第3の書き込みデータの書き込み先である
前記メモリ内の位置を規定する書き込み要求領域とを比
較する比較ステップとを有し、前記第2の書き込みバッ
ファ書き込みステップは、前記第3の書き込みデータの
書き込み要求領域が前記第2の書き込みデータの書き込
み要求領域に含まれる場合に、前記第2の書き込みデー
タが書き込まれた前記書き込みバッファの領域に前記第
3の書き込みデータを上書きするため、メモリへの書き
込み回数を少なくすることができ、メモリの劣化を低減
することが可能となる。
【0281】この発明におけるデータ記憶方法は、あら
かじめ定められた消去単位でデータの消去および書き込
みがなされる複数の消去単位領域を有するメモリと、前
記消去単位領域に書き込む書き込みデータおよび前記消
去単位領域内の不変データの双方を記憶する消去ブロッ
クバッファと、不変データを記憶することなく書き込み
データを記憶する書き込みバッファとを用いて前記メモ
リ内のデータの書き換えを行なうデータ記憶方法であっ
て、前記メモリの第1の消去単位領域に第1の書き込み
データを書き込むことを要求する第1の書き込み要求に
対し、前記第1の書き込みデータ及び前記第1の消去単
位領域内の不変データとを前記消去ブロックバッファに
書き込む第1の消去ブロックバッファ書き込みステップ
と、前記メモリの第2の消去単位領域に第2の書き込み
データを書き込むことを要求する第2の書き込み要求に
対して、前記第1の消去ブロックバッファ書き込みステ
ップの後、前記第2の書き込みデータを前記書き込みバ
ッファに記憶する第1の書き込みバッファ書き込みステ
ップと、前記メモリの消去単位領域に第3の書き込みデ
ータを書き込むことを要求する第3の書き込み要求が発
生した場合に、前記第1の書き込みバッファ書き込みス
テップの後、前記消去ブロックバッファに書き込まれた
前記第1の書き込みデータ及び前記不変データとを前記
第1の消去単位領域に書き込むメモリ書き込みステップ
と、前記メモリ書き込みステップの後、前記第2の書き
込みデータ、前記第3の書き込みデータ、及び前記第2
の消去単位領域内の不変データを前記消去ブロックバッ
ファに書き込む第2の消去ブロックバッファ書き込みス
テップとを有するため、複数の書き込みデータおよび不
変データをブロックバッファ書き込みステップにまとめ
てメモリへの書き込み回数を低減することができ、メモ
リの劣化を低減することができる。
【0282】また、前記第1の書き込みバッファ書き込
みステップの後、前記第2の書き込みデータの書き込み
先である消去単位領域と、前記第3の書き込みデータの
書き込み先である消去単位領域とを比較する比較ステッ
プとを有し、前記比較ステップの比較結果が、前記第3
の書き込みデータの書き込み先である消去単位領域が前
記第2の書き込みデータの書き込み先である消去単位領
域と同じ場合に、前記メモリ書き込みステップ及び前記
第2の消去ブロックバッファ書き込みステップとを実行
するため、消去単位領域の同じ複数の書き込みデータの
書き込みを一括して行なうことが可能となり、メモリへ
の書き込み回数を低減することができる。
【0283】この発明における情報処理装置は、あらか
じめ定められた消去単位でデータの消去および書き込み
がなされる複数の消去単位領域を有するメモリと、前記
消去単位領域に記憶されたデータを前記消去単位で消去
する消去手段とを有し、前記消去単位領域に記憶された
データを第1の書き込みデータに書き換える情報処理装
置において、任意のデータ単位でデータの書き込みが可
能な不揮発性の消去ブロックバッファと、前記消去ブロ
ックバッファに前記第1の書き込みデータを書き込む書
き込みデータ書き込み手段と、前記メモリの消去単位領
域に記憶されたデータの内、前記第1の書き込みデータ
による書き換えが行われない不変データを前記消去ブロ
ックバッファに書き込む待避手段と、前記消去ブロック
バッファに書き込まれた前記第1の書き込みデータおよ
び前記不変データを前記消去手段によって消去された前
記消去単位領域に書き込むメモリ書き込み手段とを有す
るため、メモリ内の不変データを消去後、メモリ内に第
1の書き込みデータを書き込む前に電源断等の不備が生
じた場合にも、不変データおよび第1の書き込みデータ
が失われることなく、メモリ内のデータの書き換えの信
頼性が向上する。
【0284】この発明における情報処理装置は、あらか
じめ定められた消去単位でデータの消去および書き込み
がなされる複数の消去単位領域を有するメモリと、前記
消去単位領域に書き込む書き込みデータおよび前記消去
単位領域内の不変データの双方を記憶する消去ブロック
バッファとを用いて前記メモリ内のデータの書き換えを
行なう情報処理装置であって、前記メモリの第1の消去
単位領域に第1の書き込みデータを書き込むことを要求
する第1の書き込み要求に対し、前記第1の書き込みデ
ータを前記消去ブロックバッファに書き込む書き込みデ
ータ書き込み手段と、前記メモリの第1の消去単位領域
に第1の書き込みデータを書き込むことを要求する第1
の書き込み要求に対し、前記第1の消去単位領域内の不
変データを前記消去ブロックバッファに書き込む待避手
段と、前記消去ブロックバッファに書き込まれたデータ
を前記第1の消去単位領域に書き込むメモリ書き込み手
段とを有し、前記消去ブロックバッファは、前記第1の
書き込み要求後に発生する第2の書き込み要求まで前記
第1の書き込みデータ及び前記第1の消去単位領域内の
不変データを保持し、前記第2の書き込み要求が前記第
1の消去単位領域に第2の書き込みデータを書き込むこ
とを要求する場合に、前記書き込みデータ書き込み手段
は前記第2の書き込みデータを前記消去ブロックバッフ
ァに書き込み、前記メモリ書き込み手段は前記第2の書
き込みデータが書き込まれた前記消去ブロックバッファ
内のデータを前記第1の消去単位領域に書き込むため、
複数の書き込み要求が生じても第1の消去単位領域に書
き込む処理を一括して行なうことができ、メモリの劣化
を低減することができる。
【0285】この発明における情報処理装置は、あらか
じめ定められた消去単位での消去および書き込みがなさ
れる複数の消去単位領域を有するメモリと、前記消去単
位領域に書き込む書き込みデータおよび前記消去単位領
域内の不変データの双方を記憶する消去ブロックバッフ
ァと、不変データを記憶することなく書き込みデータを
記憶する書き込みバッファとを用いて前記メモリ内のデ
ータの書き換えを行なう情報処理装置であって、前記メ
モリの第1の消去単位領域に第1の書き込みデータを書
き込むことを要求する第1の書き込み要求に対し、前記
第1の書き込みデータを前記消去ブロックバッファに書
き込む書き込みデータ書き込み手段と、前記メモリの第
1の消去単位領域に第1の書き込みデータを書き込むこ
とを要求する第1の書き込み要求に対し、前記第1の消
去単位領域内の不変データを前記消去ブロックバッファ
に書き込む待避手段と、前記メモリの第2の消去単位領
域に第2の書き込みデータを書き込むことを要求する第
2の書き込み要求に対して、前記第2の書き込みデータ
を前記書き込みバッファに書き込む書き込みバッファ書
き込み手段とを有し、前記書き込みバッファは、前記第
2の書き込み要求後に発生する第3の書き込み要求まで
前記第2の書き込みデータを保持し、前記第3の書き込
み要求が前記第2の書き込みデータの書き込み要求領域
内に第3のデータを書き込むことを要求する場合に、前
記書き込みバッファ書き込み手段は、前記第3の書き込
みデータを前記書き込みバッファに書き込むため、第
2、第3の書き込み要求に対する消去ブロックバッファ
を設ける場合に比較し、バッファの有効利用を図ること
ができる。
【0286】この発明における情報処理装置は、あらか
じめ定められた消去単位でデータの消去および書き込み
がなされる複数の消去単位領域を有する第1のメモリ
と、前記消去単位領域に記憶されたデータを前記消去単
位で消去する消去手段とを有し、前記消去単位領域に記
憶されたデータを第1の書き込みデータに書き換える情
報処理装置において、消去ブロックバッファ、消去単位
番号保持領域および消去単位番号確認領域とを備え、任
意のデータ単位でデータの書き込みが可能な不揮発性の
第2のメモリと、前記消去単位領域に記憶されたデータ
の内、前記第1の書き込みデータによる書き換えが行わ
れない不変データを前記消去ブロックバッファに書き込
む待避手段と、前記第1の書き込みデータを書き込むべ
き消去単位領域を特定する情報を前記消去単位番号保持
領域に書き込み、前記第1の書き込みデータを前記消去
ブロックバッファに書き込み、前記第1の書き込みデー
タおよび前記不変データの書き込み完了後に、前記消去
単位番号保持領域に書き込んだ情報に対応する情報を前
記消去単位番号確認領域に書き込む書き込み制御手段
と、前記消去ブロックバッファに書き込まれた前記第1
の書き込みデータおよび前記不変データを前記消去単位
領域に書き込むメモリ書き込み手段と、前記情報処理装
置の復旧時に、前記消去単位番号保持領域と前記消去単
位番号確認領域の情報に基づいて復旧処理を行う復旧手
段とを有するため、復旧手段は第1の書き込みデータの
書き換え処理のどの段階で処理が中断したかを認識する
ことができ、適切な復旧処理が可能となる。
【0287】また、前記第2のメモリは、前記消去ブロ
ックバッファ内のデータを処理することで得られるデー
タチェック値が書き込まれる消去ブロックバッファ確認
領域を有し、前記書き込み制御手段は、前記データチェ
ック値を前記消去ブロックバッファ確認領域に書き込
み、前記復旧手段は、前記消去単位番号保持領域の値、
前記消去単位番号確認領域の値および前記消去ブロック
バッファ確認領域のデータチェック値に基づいて復旧処
理を行うため、消去ブロックバッファ内のデータが正常
なデータであるかを検出することができ、適切な復旧処
理を行うことができる。
【0288】この発明における情報処理装置は、あらか
じめ定められた消去単位でデータの消去および書き込み
がなされる複数の消去単位領域を有する第1のメモリ
と、前記消去単位領域に記憶されたデータを前記消去単
位で消去する消去手段とを有し、前記消去単位領域に記
憶されたデータを第1の書き込みデータに書き換える情
報処理装置において、消去ブロックバッファおよび書き
込み禁止フラグ領域を備えた任意のデータ単位でデータ
の書き込みが可能な不揮発性の第2のメモリと、前記第
1のメモリの第1の消去単位領域に前記第1の書き込み
データを書き込むことを要求する第1の書き込み要求に
対し、前記書き込み禁止フラグ領域の値が書き込み許可
状態になっている場合に、前記第1の書き込みデータを
前記消去ブロックバッファに書き込む書き込み制御手段
と、前記第1の書き込み要求に対し、前記書き込み禁止
フラグ領域の値が書き込み許可状態になっている場合
に、前記第1の消去単位領域内の不変データを前記消去
ブロックバッファに書き込む待避手段と、前記書き込み
禁止フラグ領域の値が書き込み許可状態になっている場
合に、前記消去ブロックバッファの内容を第1のメモリ
に書き込むメモリ書き込み手段とを備えたため、消去ブ
ロックバッファへのデータの書き込みを抑制することが
できる。
【0289】また、前記消去ブロックバッファは、前記
第1の書き込みデータの書き込み要求後に発生する第2
の書き込み要求まで前記第1の書き込みデータおよび前
記第1の消去単位領域内の不変データを保持し、前記第
2の書き込み要求が前記第1の消去単位領域に第2の書
き込みデータを書き込むことを要求する場合に、前記書
き込み制御手段は前記第2の書き込みデータを前記消去
ブロックバッファに書き込み、前記メモリ書き込み手段
は前記第2の書き込みデータが書き込まれた前記消去ブ
ロックバッファ内のデータを前記第1の消去単位領域に
書き込むため、複数の書き込み要求が生じても第1の消
去単位領域に書き込む処理を一括して行うことができ、
第1のメモリの劣化を低減することができる。
【0290】前記書き込み制御手段は、前記第1のメモ
リの消去単位領域への前記消去ブロックバッファ内のデ
ータの書き込みが完了した後、前記消去単位番号保持領
域および前記消去単位番号確認領域のデータを消去する
ため、復旧手段は前記消去単位番号保持領域および前記
消去単位番号確認領域のデータの有無により、前記第1
のメモリの消去単位領域への前記消去ブロックバッファ
内のデータの書き込みが完了したか否かを認識すること
ができる。
【0291】また、前記復旧手段は、前記消去単位番号
保持領域の値と前記消去単位番号確認領域の値とが同一
の場合に、前記消去ブロックバッファに書き込まれた前
記第1の書き込みデータおよび前記不変データを前記消
去手段によって消去された前記第1のメモリの消去単位
領域に書き込むよう前記メモリ書き込み手段に対して指
示するため、消去ブロックバッファに記憶されたデータ
を第1のメモリに記憶させることができ、データ破壊を
防止することができる。
【0292】さらに、前記復旧手段は、前記消去単位番
号保持領域の値と前記消去単位番号確認領域の値とが同
一でない場合に、前記消去単位番号保持領域の値と前記
消去単位番号確認領域の値を消去するため、復旧後も前
記消去単位番号保持領域と前記消去単位番号確認領域を
利用することができる。
【0293】さらにまた、前記第2のメモリは、前記消
去ブロックバッファ内の領域を分割して管理し、当該分
割領域内のデータを処理することで得られるデータチェ
ック値が格納される消去ブロックバッファ管理領域を有
し、前記書き込み制御手段は前記データチェック値を前
記消去ブロックバッファ確認領域に書き込み、前記復旧
手段は、前記消去単位番号保持領域の値、前記消去単位
番号確認領域の値および前記データチェック値に基づい
て復旧処理を行うため、消去ブロックバッファ内のデー
タが正しいか否かを細かい領域ごとに認識することがで
きる。
【0294】また、前記書き込み制御手段は、前記第2
の書き込みデータの書き込み要求領域が前記消去ブロッ
クバッファ管理領域に管理されている前記分割領域と同
一の場合に、前記データチェック値を書き換えるため、
消去ブロックバッファに記憶されているデータ全体のデ
ータチェック値を書き換える必要がない。
【0295】さらに、読み込み要求されたデータが前記
消去ブロックバッファに記憶されている場合に、前記消
去ブロックバッファからデータを読み込む読み込み手段
を備え、当該読み込み手段は、前記消去ブロックバッフ
ァ管理領域に記憶されている前記データチェック値に基
づいて前記消去ブロックバッファ内のデータが正しいと
判断した場合に、前記消去ブロックバッファからデータ
を読み込むため、正常でないデータの読み出しを未然に
防止することができる。
【0296】さらにまた、読み込み要求されたデータが
前記消去ブロックバッファに書き込まれている場合に、
前記消去ブロックバッファからデータを読み込む読み込
み手段を備え、当該読み込み手段は、前記消去ブロック
バッファ管理領域に記憶されている前記データチェック
値に基づいて前記消去ブロックバッファ内のデータが正
しくないと判断した場合には、前記第1のメモリからデ
ータを読み込むため、第1のメモリのデータを用いて情
報処理装置の動作を継続することができる。
【0297】あらかじめ定められた消去単位でデータの
消去および書き込みがなされる複数の消去単位領域を有
する第1のメモリと、前記消去単位領域に記憶されたデ
ータを前記消去単位で消去する消去手段とを有する情報
処理装置において、前記消去単位領域に書き込む書き込
みデータおよび前記消去単位領域内の不変データの双方
を記憶する消去ブロックバッファ、不変データを記憶す
ることなく書き込みデータを記憶する書き込みバッフ
ァ、前記消去ブロックバッファに記憶されるデータを処
理することにより得られる第1データチェック値の保持
領域、前記書き込みバッファに書き込まれたデータを処
理することにより得られる第2データチェック値の保持
領域を備え、任意のデータ単位でデータの書き込みが可
能な不揮発性の第2のメモリと、第1の消去単位領域に
第1の書き込みデータを書き込むことを要求する第1の
書き込み要求に対して当該第1の書き込みデータを前記
消去ブロックバッファに書き込み、第2の消去単位領域
に第2の書き込みデータを書き込むことを要求する第2
の書き込み要求に対して当該第2の書き込みデータを前
記書き込みバッファに書き込み、前記第1のデータチェ
ック値および前記第2のデータチェック値を前記第2の
メモリに書き込む書き込み制御手段と、前記第1の書き
込み要求に対し、前記第1の消去単位領域内の不変デー
タを前記消去ブロックバッファに書き込む待避手段と、
前記消去ブロックバッファに書き込まれた前記第1の書
き込みデータおよび前記不変データを前記消去手段によ
って消去された前記第1の消去単位領域に書き込むメモ
リ書き込み手段と、前記情報処理装置の復旧時に、前記
第2のメモリに書き込まれた前記第1のデータチェック
値および前記第2のデータチェック値に基づいて復旧処
理を行うため、前記消去ブロックバッファおよび前記書
き込みバッファに書き込まれたデータの正否を認識した
上で適切な復旧処理を行うことができる。
【0298】また、前記復旧手段は、前記第1のデータ
チェック値に基づいて前記消去ブロックバッファに記憶
されたデータが正しいと判断した場合に、前記消去ブロ
ックバッファに記憶されたデータを前記第1の消去単位
領域に書き込むことを前記メモリ書き込み手段に指示
し、前記第2のデータチェック値に基づいて前記書き込
みバッファに記憶されたデータが正しいと判断した場合
に、前記書き込みバッファに記憶された前記第2の書き
込みデータを前記消去ブロックバッファに書き込むこと
を前記書き込み制御手段に指示し、前記第2の消去単位
領域の不変データを前記消去ブロックバッファに書き込
むことを前記待避手段に指示するため、消去ブロックバ
ッファおよび書き込みバッファに書き込まれたデータの
破壊を防止することができる。
【0299】さらに、消去単位番号保持領域を備え、前
記第2のメモリよりもデータの読み出しが高速な第3の
メモリを有し、前記書き込み制御手段は、前記消去単位
領域を特定する情報を前記第2のメモリの消去単位番号
保持領域と前記第3のメモリの消去単位番号保持領域双
方に書き込むようにし、前記消去単位領域を特定する情
報を参照する際には、前記第3のメモリの消去単位番号
保持領域からデータを読み出すため、復旧作業を高速化
させることができる。
【0300】あらかじめ定められた消去単位でデータの
消去および書き込みがなされる複数の消去単位領域を有
する第1のメモリと、前記消去単位領域に記憶されたデ
ータを前記消去単位で消去する消去手段とを有し前記消
去単位領域に記憶されたデータを第1の書き込みデータ
に書き換える情報処理装置において、前記第1の書き込
みデータおよび前記消去単位領域内の不変データの双方
を記憶する消去ブロックバッファと、不変データを記憶
することなく書き込みデータを記憶する書き込みバッフ
ァとを備え、任意のデータ単位でデータの書き込みが可
能な不揮発性の第2のメモリと、第1の消去単位領域に
第1の書き込みデータを書き込むことを要求する第1の
書き込み要求に対し、前記第1の書き込みデータを前記
消去ブロックバッファに書き込む消去ブロックバッファ
書き込み手段と、前記第1の書き込み要求に対し、前記
第1の消去単位領域内の不変データを前記消去ブロック
バッファに書き込む待避手段と、前記第1の書き込み要
求以外の複数の書き込み要求に対し、当該複数の書き込
みデータを前記書き込みバッファに書き込む書き込みバ
ッファ書き込み手段と、前記消去ブロックバッファ書き
込み手段に書き込まれた前記第1の書き込みデータおよ
び前記不変データを前記第1の消去単位領域に書き込む
メモリ書き込み手段と、前記書き込みバッファ内の複数
の書き込みデータについて、書き込み要求がされた消去
単位領域ごとにそのデータ量を計算し、この計算結果に
基づいて同一の消去単位領域に書き込む書き込みデータ
すべてを前記消去ブロックバッファに移動させるデータ
移動手段とを有し、前記待避手段は前記消去ブロックバ
ッファに移動された書き込みデータに対応する消去単位
領域内の不変データを前記消去ブロックバッファに書き
込むため、書き込みバッファの空き領域を効率良く増や
すことができる。
【0301】また、前記データ移動手段は、前記書き込
みバッファ内の書き込みデータの内、同一の消去単位領
域に書き込み要求がなされた書き込みデータのデータ量
が所定量よりも少なく、当該書き込みデータの数が所定
数よりも多い場合に、当該書き込みデータすべてを前記
消去ブロックバッファに移動させるため、第1のメモリ
への書き込み回数を低減することができる。
【図面の簡単な説明】
【図1】 実施の形態1の情報処理装置の構成図であ
る。
【図2】 実施の形態1のシステムの概略を示す構成図
である。
【図3】 実施の形態1における情報処理装置がフラッ
シュメモリ上のデータを書き換える動作を示すフローチ
ャートである。
【図4】 実施の形態2の情報処理装置の構成図であ
る。
【図5】 実施の形態2における情報処理装置がフラッ
シュメモリ上のデータを書き換える動作を示すフローチ
ャートである。
【図6】 実施の形態2における情報処理装置がメモリ
からデータを読み出す動作を示すフローチャートであ
る。
【図7】 実施の形態3における情報処理装置がフラッ
シュメモリ上のデータを書き換える動作を示すフローチ
ャートである。
【図8】 実施の形態4における情報処理装置の構成図
である。
【図9】 書き込みバッファ管理領域に記録されている
データの内容を示す図である。
【図10】 実施の形態4における情報処理装置がフラ
ッシュメモリ上のデータを書き換える動作を示すフロー
チャートである。
【図11】 実施の形態4における情報処理装置がメモ
リからデータを読み出す動作を示すフローチャートであ
る。
【図12】 実施の形態5における情報処理装置の構成
図である。
【図13】 実施の形態5における情報処理装置がフラ
ッシュメモリ上のデータを書き換える動作を示すフロー
チャートである。
【図14】 バッファデータ移動処理S515、S62
0の動作を示すフローチャートである。
【図15】 書き込みバッファの領域を使用する使用頻
度の情報の一例である。
【図16】 実施の形態6における情報処理装置がフラ
ッシュメモリ上のデータを書き換える動作を示すフロー
チャートである。
【図17】 バッファデータ移動処理S612の動作を
示すフローチャートである。
【図18】 従来の回路の概略を示す構成図である。
【図19】 実施の形態7における情報処理装置の構成
図である。
【図20】 実施の形態7における情報処理装置がフラ
ッシュメモリ上のデータを書き換える動作を示すフロー
チャートである。
【図21】 復旧手段611の動作を示すフローチャー
トである。
【図22】 実施の形態8における情報処理装置の構成
図である。
【図23】 実施の形態8における情報処理装置がフラ
ッシュメモリ上のデータを書き換える動作を示すフロー
チャートである。
【図24】 復旧手段611の動作を示すフローチャー
トである。
【図25】 実施の形態9における情報処理装置の構成
図である。
【図26】 実施の形態9における情報処理装置がフラ
ッシュメモリ上のデータを書き換える動作を示すフロー
チャートである。
【図27】 書き込み許可指示手段612の動作を示す
フローチャートである。
【図28】 書き込み禁止指示手段613の動作を示す
フローチャートである。
【図29】 実施の形態10における情報処理装置の構
成図である。
【図30】 実施の形態10における情報処理装置がフ
ラッシュメモリ上のデータを書き換える動作を示すフロ
ーチャートである。
【図31】 復旧手段611の動作を示すフローチャー
トである。
【図32】 実施の形態11における情報処理装置の復
旧手段611の動作を示すフローチャートである。
【図33】 実施の形態12における情報処理装置の構
成図である。
【図34】 消去ブロックバッファ管理領域604の構
造図である。
【図35】 実施の形態12における情報処理装置がフ
ラッシュメモリ上のデータを書き換える動作を示すフロ
ーチャートである。
【図36】 待避手段112の動作を示すフローチャー
トである。
【図37】 消去ブロックバッファ書き込み手段614
の動作を示すフローチャートである。
【図38】 復旧手段611の動作を示すフローチャー
トである。
【図39】 実施の形態13における消去ブロックバッ
ファ管理領域604の構造図である。
【図40】 消去ブロックバッファ書き込み手段614
の動作を示すフローチャートである。
【図41】 消去ブロックバッファ管理領域604のデ
ータ操作の例を示す図である。
【図42】 復旧手段611の動作を示すフローチャー
トである。
【図43】 実施の形態14における情報処理装置のデ
ータ読み出し時の動作を示すフローチャートである。
【図44】 実施の形態15における情報処理装置のデ
ータ読み出し時の動作を示すフローチャートである。
【図45】 実施の形態16における情報処理装置の構
成図である。
【図46】 バッファ管理領域605に記録されるデー
タの内容を示す図である。
【図47】 実施の形態16における情報処理装置がフ
ラッシュメモリ上のデータを書き換える動作を示すフロ
ーチャートである。
【図48】 実施の形態16における情報処理装置のデ
ータ読み出し時の動作を示すフローチャートである。
【図49】 復旧手段611の動作を示すフローチャー
トである。
【図50】 実施の形態17における復旧手段611の
動作を示すフローチャートである。
【図51】 実施の形態18における情報処理装置の構
成図である。
【図52】 実施の形態18における情報処理装置がフ
ラッシュメモリ上のデータを書き換える動作を示すフロ
ーチャートである。
【図53】 実施の形態18における情報処理装置のデ
ータ読み出し時の動作を示すフローチャートである。
【図54】 DRAM152へのデータの書き込み動作
を示すフローチャートである。
【図55】 実施の形態19における情報処理装置がフ
ラッシュメモリ上のデータを書き換える動作を示すフロ
ーチャートである。
【図56】 バッファデータ移動処理の動作を示すフロ
ーチャートである。
【図57】 実施の形態20におけるバッファデータ移
動処理の動作を示すフローチャートである。
【符号の説明】
101 フラッシュメモリ、102 不揮発性メモリ、
103 消去ブロックバッファ、111 書き込み制御
手段、112 待避手段、185 DRAM、201
読み出し手段、202 消去単位番号保持領域、301
消去命令手段、302 書き込み手段、402 書き
込みバッファ、403 書き込みバッファ管理領域、5
01 バッファ移動手段、601 消去単位番号確認領
域、602 消去ブロックバッファ確認領域、603
書き込み禁止フラグ領域、604消去ブロックバッファ
管理領域、605 バッファ管理領域、611 復旧手
段、614 消去ブロックバッファ書き込み手段。
フロントページの続き (72)発明者 古林 三郎 東京都千代田区丸の内二丁目2番3号 三 菱電機株式会社内 Fターム(参考) 5B018 GA04 HA23 KA03 LA02 NA06 QA15 5B025 AD04 AD05 AD08 AE08

Claims (28)

    【特許請求の範囲】
  1. 【請求項1】 あらかじめ定められた消去単位でデータ
    の消去および書き込みがなされる複数の消去単位領域を
    有するメモリと、前記消去単位領域に書き込む書き込み
    データおよび前記消去単位領域内の不変データの双方を
    記憶する不揮発性の消去ブロックバッファとを用いて前
    記メモリ内のデータの書き換えを行なうデータ記憶方法
    であって、 前記メモリの第1の消去単位領域に第1の書き込みデー
    タを書き込むことを要求する第1の書き込み要求に対
    し、前記第1の書き込みデータを前記消去ブロックバッ
    ファに書き込む第1の消去ブロックバッファ書き込みス
    テップと、 前記メモリの第1の消去単位領域に第1の書き込みデー
    タを書き込むことを要求する第1の書き込み要求に対
    し、前記第1の消去単位領域内の不変データを前記消去
    ブロックバッファに書き込む第2の消去ブロックバッフ
    ァ書き込みステップと、 前記第2の消去ブロックバッファ書き込みステップの
    後、前記第1の消去単位領域のデータを消去する消去ス
    テップと、 前記第1の消去ブロックバッファ書き込みステップ及び
    前記消去ステップの後、前記消去ブロックバッファに記
    憶された前記第1の書き込みデータ及び前記不変データ
    を前記第1の消去単位領域に書き込むメモリ書き込みス
    テップとを有することを特徴とするデータ記憶方法。
  2. 【請求項2】 あらかじめ定められた消去単位でデータ
    の消去および書き込みがなされる複数の消去単位領域を
    有するメモリと、前記消去単位領域に書き込む書き込み
    データおよび前記消去単位領域内の不変データの双方を
    記憶する不揮発性の消去ブロックバッファとを用いて前
    記メモリ内のデータの書き換えを行なうデータ記憶方法
    であって、 前記メモリの第1の消去単位領域に第1の書き込みデー
    タを書き込むことを要求する第1の書き込み要求に対
    し、前記第1の書き込みデータを前記消去ブロックバッ
    ファに書き込む第1の消去ブロックバッファ書き込みス
    テップと、 前記メモリの第1の消去単位領域に第1の書き込みデー
    タを書き込むことを要求する第1の書き込み要求に対
    し、前記第1の消去単位領域内の不変データを前記消去
    ブロックバッファに書き込む第2の消去ブロックバッフ
    ァ書き込みステップと、 前記第1の消去ブロックバッファ書き込みステップの
    後、前記メモリに第2の書き込みデータを書き込むこと
    を要求する第2の書き込み要求に対して、前記第2の書
    き込みデータを前記消去ブロックバッファに書き込む第
    3の消去ブロックバッファ書き込みステップと、 前記第2の消去ブロックバッファ書き込みステップ及び
    前記第3の消去ブロックバッファ書き込みステップの
    後、前記消去ブロックバッファに書き込まれたデータを
    前記第1の消去単位領域に書き込むメモリ書き込みステ
    ップとを有することを特徴とするデータ記憶方法。
  3. 【請求項3】 前記第1の消去ブロックバッファ書き込
    みステップの後、前記第1の書き込みデータの書き込み
    先である消去単位領域と前記第2の書き込みデータの書
    き込み先である消去単位領域とを比較する比較ステップ
    とを有し、 前記比較ステップにおける比較結果が同一の場合に、前
    記第3の消去ブロックバッファ書き込みステップおよび
    前記メモリ書き込みステップを実行することを特徴とす
    る請求項2記載のデータ記憶方法。
  4. 【請求項4】 あらかじめ定められた消去単位でデータ
    の消去および書き込みがなされる複数の消去単位領域を
    有するメモリと、前記消去単位領域に書き込む書き込み
    データおよび前記消去単位領域内の不変データの双方を
    記憶する消去ブロックバッファとを用いて前記メモリ内
    のデータの書き換えを行なうデータ記憶方法であって、 前記メモリの第1の消去単位領域に第1の書き込みデー
    タを書き込むことを要求する第1の書き込み要求に対
    し、前記第1の書き込みデータを前記消去ブロックバッ
    ファに書き込む第1の消去ブロックバッファ書き込みス
    テップと、 前記メモリの第1の消去単位領域に第1の書き込みデー
    タを書き込むことを要求する第1の書き込み要求に対
    し、前記第1の消去単位領域内の不変データを前記消去
    ブロックバッファに書き込む第2の消去ブロックバッフ
    ァ書き込みステップと、 前記第2の消去ブロックバッファ書き込みステップの
    後、前記第1の消去単位領域のデータを消去する消去ス
    テップと、 前記メモリに第2の書き込みデータを書き込むことを要
    求する第2の書き込み要求を受けた後に、前記消去ブロ
    ックバッファに記憶されたデータを前記消去ステップに
    おいて消去された前記第1の消去単位領域に書き込むメ
    モリ書き込みステップとを有することを特徴とするデー
    タ記憶方法。
  5. 【請求項5】 前記消去ステップの後、第1の書き込み
    データの書き込み先である消去単位領域と前記第2の書
    き込みデータの書き込み先である消去単位領域とを比較
    する比較ステップとを有し、 前記比較ステップの比較結果が異なる場合に、前記メモ
    リ書き込みステップを実行することを特徴とする請求項
    4記載のデータ記憶方法。
  6. 【請求項6】 あらかじめ定められた消去単位での消去
    および書き込みがなされる複数の消去単位領域を有する
    メモリと、前記消去単位領域に書き込む書き込みデータ
    および前記消去単位領域内の不変データの双方を記憶す
    る消去ブロックバッファと、不変データを記憶すること
    なく書き込みデータを記憶する書き込みバッファとを用
    いて前記メモリ内のデータの書き換えを行なうデータ記
    憶方法であって、 前記メモリの第1の消去単位領域に第1の書き込みデー
    タを書き込むことを要求する第1の書き込み要求に対
    し、前記第1の書き込みデータ及び前記第1の消去単位
    領域内の不変データとを前記消去ブロックバッファに書
    き込む消去ブロックバッファ書き込みステップと、 前記消去ブロックバッファ書き込みステップの後、前記
    メモリの第2の消去単位領域に第2の書き込みデータを
    書き込むことを要求する第2の書き込み要求に対して、
    前記第2の書き込みデータを前記書き込みバッファに書
    き込む第1の書き込みバッファ書き込みステップと、 前記第1の書き込みバッファ書き込みステップの後、前
    記メモリの消去単位領域に第3の書き込みデータを書き
    込むことを要求する第3の書き込み要求に対して、前記
    第3の書き込みデータを前記書き込みバッファに書き込
    む第2の書き込みバッファ書き込みステップとを有する
    ことを特徴とするデータ記憶方法。
  7. 【請求項7】 前記第2の書き込みデータの書き込み先
    である前記メモリ内の位置を規定する書き込み要求領域
    と、前記第3の書き込みデータの書き込み先である前記
    メモリ内の位置を規定する書き込み要求領域とを比較す
    る比較ステップとを有し、 前記第2の書き込みバッファ書き込みステップは、前記
    第3の書き込みデータの書き込み要求領域が前記第2の
    書き込みデータの書き込み要求領域に含まれる場合に、
    前記第2の書き込みデータが書き込まれた前記書き込み
    バッファの領域に前記第3の書き込みデータを上書きす
    ることを特徴とする請求項6記載のデータ記憶方法。
  8. 【請求項8】 あらかじめ定められた消去単位でデータ
    の消去および書き込みがなされる複数の消去単位領域を
    有するメモリと、前記消去単位領域に書き込む書き込み
    データおよび前記消去単位領域内の不変データの双方を
    記憶する消去ブロックバッファと、不変データを記憶す
    ることなく書き込みデータを記憶する書き込みバッファ
    とを用いて前記メモリ内のデータの書き換えを行なうデ
    ータ記憶方法であって、 前記メモリの第1の消去単位領域に第1の書き込みデー
    タを書き込むことを要求する第1の書き込み要求に対
    し、前記第1の書き込みデータ及び前記第1の消去単位
    領域内の不変データとを前記消去ブロックバッファに書
    き込む第1の消去ブロックバッファ書き込みステップ
    と、 前記メモリの第2の消去単位領域に第2の書き込みデー
    タを書き込むことを要求する第2の書き込み要求に対し
    て、前記第1の消去ブロックバッファ書き込みステップ
    の後、前記第2の書き込みデータを前記書き込みバッフ
    ァに記憶する第1の書き込みバッファ書き込みステップ
    と、 前記メモリの消去単位領域に第3の書き込みデータを書
    き込むことを要求する第3の書き込み要求が発生した場
    合に、前記第1の書き込みバッファ書き込みステップの
    後、前記消去ブロックバッファに書き込まれた前記第1
    の書き込みデータ及び前記不変データとを前記第1の消
    去単位領域に書き込むメモリ書き込みステップと、 前記メモリ書き込みステップの後、前記第2の書き込み
    データ、前記第3の書き込みデータ、及び前記第2の消
    去単位領域内の不変データを前記消去ブロックバッファ
    に書き込む第2の消去ブロックバッファ書き込みステッ
    プとを有することを特徴とするデータ記憶方法。
  9. 【請求項9】 前記第1の書き込みバッファ書き込みス
    テップの後、前記第2の書き込みデータの書き込み先で
    ある消去単位領域と、前記第3の書き込みデータの書き
    込み先である消去単位領域とを比較する比較ステップと
    を有し、 前記比較ステップの比較結果が、前記第3の書き込みデ
    ータの書き込み先である消去単位領域が前記第2の書き
    込みデータの書き込み先である消去単位領域と異なる場
    合に、前記メモリ書き込みステップ及び前記第2の消去
    ブロックバッファ書き込みステップとを実行することを
    特徴とする請求項8記載のデータ記憶方法。
  10. 【請求項10】 あらかじめ定められた消去単位でデー
    タの消去および書き込みがなされる複数の消去単位領域
    を有するメモリと、前記消去単位領域に記憶されたデー
    タを前記消去単位で消去する消去手段とを有し、前記消
    去単位領域に記憶されたデータを第1の書き込みデータ
    に書き換える情報処理装置において、 任意のデータ単位でデータの書き込みが可能な不揮発性
    の消去ブロックバッファと、 前記消去ブロックバッファに前記第1の書き込みデータ
    を書き込む書き込みデータ書き込み手段と、 前記メモリの消去単位領域に記憶されたデータの内、前
    記第1の書き込みデータによる書き換えが行われない不
    変データを前記消去ブロックバッファに書き込む待避手
    段と、 前記消去ブロックバッファに書き込まれた前記第1の書
    き込みデータおよび前記不変データを前記消去手段によ
    って消去された前記消去単位領域に書き込むメモリ書き
    込み手段とを有することを特徴とする情報処理装置。
  11. 【請求項11】 あらかじめ定められた消去単位でデー
    タの消去および書き込みがなされる複数の消去単位領域
    を有するメモリと、前記消去単位領域に書き込む書き込
    みデータおよび前記消去単位領域内の不変データの双方
    を記憶する消去ブロックバッファとを用いて前記メモリ
    内のデータの書き換えを行なう情報処理装置であって、 前記メモリの第1の消去単位領域に第1の書き込みデー
    タを書き込むことを要求する第1の書き込み要求に対
    し、前記第1の書き込みデータを前記消去ブロックバッ
    ファに書き込む書き込みデータ書き込み手段と、 前記メモリの第1の消去単位領域に第1の書き込みデー
    タを書き込むことを要求する第1の書き込み要求に対
    し、前記第1の消去単位領域内の不変データを前記消去
    ブロックバッファに書き込む待避手段と、 前記消去ブロックバッファに書き込まれたデータを前記
    第1の消去単位領域に書き込むメモリ書き込み手段とを
    有し、 前記消去ブロックバッファは、前記第1の書き込み要求
    後に発生する第2の書き込み要求まで前記第1の書き込
    みデータ及び前記第1の消去単位領域内の不変データを
    保持し、 前記第2の書き込み要求が前記第1の消去単位領域に第
    2の書き込みデータを書き込むことを要求する場合に、
    前記書き込みデータ書き込み手段は前記第2の書き込み
    データを前記消去ブロックバッファに書き込み、前記メ
    モリ書き込み手段は前記第2の書き込みデータが書き込
    まれた前記消去ブロックバッファ内のデータを前記第1
    の消去単位領域に書き込むことを特徴とする情報処理装
    置。
  12. 【請求項12】 あらかじめ定められた消去単位での消
    去および書き込みがなされる複数の消去単位領域を有す
    るメモリと、前記消去単位領域に書き込む書き込みデー
    タおよび前記消去単位領域内の不変データの双方を記憶
    する消去ブロックバッファと、不変データを記憶するこ
    となく書き込みデータを記憶する書き込みバッファとを
    用いて前記メモリ内のデータの書き換えを行なう情報処
    理装置であって、 前記メモリの第1の消去単位領域に第1の書き込みデー
    タを書き込むことを要求する第1の書き込み要求に対
    し、前記第1の書き込みデータを前記消去ブロックバッ
    ファに書き込む書き込みデータ書き込み手段と、 前記メモリの第1の消去単位領域に第1の書き込みデー
    タを書き込むことを要求する第1の書き込み要求に対
    し、前記第1の消去単位領域内の不変データを前記消去
    ブロックバッファに書き込む待避手段と、 前記メモリの第2の消去単位領域に第2の書き込みデー
    タを書き込むことを要求する第2の書き込み要求に対し
    て、前記第2の書き込みデータを前記書き込みバッファ
    に書き込む書き込みバッファ書き込み手段とを有し、 前記書き込みバッファは、前記第2の書き込み要求後に
    発生する第3の書き込み要求まで前記第2の書き込みデ
    ータを保持し、 前記第3の書き込み要求が前記第2の書き込みデータの
    書き込み要求領域内に第3のデータを書き込むことを要
    求する場合に、前記書き込みバッファ書き込み手段は、
    前記第3の書き込みデータを前記書き込みバッファに書
    き込むことを特徴とする情報処理装置。
  13. 【請求項13】 あらかじめ定められた消去単位でデー
    タの消去および書き込みがなされる複数の消去単位領域
    を有する第1のメモリと、前記消去単位領域に記憶され
    たデータを前記消去単位で消去する消去手段とを有し、
    前記消去単位領域に記憶されたデータを第1の書き込み
    データに書き換える情報処理装置において、消去ブロッ
    クバッファ、消去単位番号保持領域および消去単位番号
    確認領域とを備え、任意のデータ単位でデータの書き込
    みが可能な不揮発性の第2のメモリと、 前記消去単位領域に記憶されたデータの内、前記第1の
    書き込みデータによる書き換えが行われない不変データ
    を前記消去ブロックバッファに書き込む待避手段と、 前記第1の書き込みデータを書き込むべき消去単位領域
    を特定する情報を前記消去単位番号保持領域に書き込
    み、前記第1の書き込みデータを前記消去ブロックバッ
    ファに書き込み、前記第1の書き込みデータおよび前記
    不変データの書き込み完了後に、前記消去単位番号保持
    領域に書き込んだ情報に対応する情報を前記消去単位番
    号確認領域に書き込む書き込み制御手段と、 前記消去ブロックバッファに書き込まれた前記第1の書
    き込みデータおよび前記不変データを前記消去単位領域
    に書き込むメモリ書き込み手段と、 前記情報処理装置の復旧時に、前記消去単位番号保持領
    域と前記消去単位番号確認領域の情報に基づいて復旧処
    理を行う復旧手段とを有することを特徴とする情報処理
    装置。
  14. 【請求項14】 前記第2のメモリは、前記消去ブロッ
    クバッファ内のデータを処理することで得られるデータ
    チェック値が書き込まれる消去ブロックバッファ確認領
    域を有し、 前記書き込み制御手段は、前記データチェック値を前記
    消去ブロックバッファ確認領域に書き込み、 前記復旧手段は、前記消去単位番号保持領域の値、前記
    消去単位番号確認領域の値および前記消去ブロックバッ
    ファ確認領域のデータチェック値に基づいて復旧処理を
    行うことを特徴とする請求項13記載の情報処理装置。
  15. 【請求項15】 あらかじめ定められた消去単位でデー
    タの消去および書き込みがなされる複数の消去単位領域
    を有する第1のメモリと、前記消去単位領域に記憶され
    たデータを前記消去単位で消去する消去手段とを有し、
    前記消去単位領域に記憶されたデータを第1の書き込み
    データに書き換える情報処理装置において、 消去ブロックバッファおよび書き込み禁止フラグ領域を
    備えた任意のデータ単位でデータの書き込みが可能な不
    揮発性の第2のメモリと、 前記第1のメモリの第1の消去単位領域に前記第1の書
    き込みデータを書き込むことを要求する第1の書き込み
    要求に対し、前記書き込み禁止フラグ領域の値が書き込
    み許可状態になっている場合に、前記第1の書き込みデ
    ータを前記消去ブロックバッファに書き込む書き込み制
    御手段と、 前記第1の書き込み要求に対し、前記書き込み禁止フラ
    グ領域の値が書き込み許可状態になっている場合に、前
    記第1の消去単位領域内の不変データを前記消去ブロッ
    クバッファに書き込む待避手段と、 前記書き込み禁止フラグ領域の値が書き込み許可状態に
    なっている場合に、前記消去ブロックバッファの内容を
    第1のメモリに書き込むメモリ書き込み手段とを備えた
    ことを特徴とする情報処理装置。
  16. 【請求項16】 前記消去ブロックバッファは、前記第
    1の書き込みデータの書き込み要求後に発生する第2の
    書き込み要求まで前記第1の書き込みデータおよび前記
    第1の消去単位領域内の不変データを保持し、 前記第2の書き込み要求が前記第1の消去単位領域に第
    2の書き込みデータを書き込むことを要求する場合に、
    前記書き込み制御手段は前記第2の書き込みデータを前
    記消去ブロックバッファに書き込み、前記メモリ書き込
    み手段は前記第2の書き込みデータが書き込まれた前記
    消去ブロックバッファ内のデータを前記第1の消去単位
    領域に書き込むことを特徴とする請求項13に記載の情
    報処理装置。
  17. 【請求項17】 前記書き込み制御手段は、前記第1の
    メモリの消去単位領域への前記消去ブロックバッファ内
    のデータの書き込みが完了した後、前記消去単位番号保
    持領域および前記消去単位番号確認領域のデータを消去
    することを特徴とする請求項13または請求項16記載
    の情報処理装置。
  18. 【請求項18】 前記復旧手段は、前記消去単位番号保
    持領域の値と前記消去単位番号確認領域の値とが同一の
    場合に、前記消去ブロックバッファに書き込まれた前記
    第1の書き込みデータおよび前記不変データを前記消去
    手段によって消去された前記第1のメモリの消去単位領
    域に書き込むよう前記メモリ書き込み手段に対して指示
    することを特徴とする請求項13または請求項16記載
    の情報処理装置。
  19. 【請求項19】 前記復旧手段は、前記消去単位番号保
    持領域の値と前記消去単位番号確認領域の値とが同一で
    ない場合に、前記消去単位番号保持領域の値と前記消去
    単位番号確認領域の値を消去することを特徴とする請求
    項13または請求項16に記載の情報処理装置。
  20. 【請求項20】 前記第2のメモリは、前記消去ブロッ
    クバッファ内の領域を分割して管理し、当該分割領域内
    のデータを処理することで得られるデータチェック値が
    格納される消去ブロックバッファ管理領域を有し、 前記書き込み制御手段は前記データチェック値を前記消
    去ブロックバッファ確認領域に書き込み、 前記復旧手段は、前記消去単位番号保持領域の値、前記
    消去単位番号確認領域の値および前記データチェック値
    に基づいて復旧処理を行うことを特徴とする請求項16
    記載の情報処理装置。
  21. 【請求項21】 前記書き込み制御手段は、前記第2の
    書き込みデータの書き込み要求領域が前記消去ブロック
    バッファ管理領域に管理されている前記分割領域と同一
    の場合に、前記データチェック値を書き換えることを特
    徴とする請求項20記載の情報処理装置。
  22. 【請求項22】 読み込み要求されたデータが前記消去
    ブロックバッファに記憶されている場合に、前記消去ブ
    ロックバッファからデータを読み込む読み込み手段を備
    え、 当該読み込み手段は、前記消去ブロックバッファ管理領
    域に記憶されている前記データチェック値に基づいて前
    記消去ブロックバッファ内のデータが正しいと判断した
    場合に、前記消去ブロックバッファからデータを読み込
    むことを特徴とする請求項20記載の情報処理装置。
  23. 【請求項23】 読み込み要求されたデータが前記消去
    ブロックバッファに書き込まれている場合に、前記消去
    ブロックバッファからデータを読み込む読み込み手段を
    備え、 当該読み込み手段は、前記消去ブロックバッファ管理領
    域に記憶されている前記データチェック値に基づいて前
    記消去ブロックバッファ内のデータが正しくないと判断
    した場合には、前記第1のメモリからデータを読み込む
    ことを特徴とする請求項20記載の情報処理装置。
  24. 【請求項24】 あらかじめ定められた消去単位でデー
    タの消去および書き込みがなされる複数の消去単位領域
    を有する第1のメモリと、前記消去単位領域に記憶され
    たデータを前記消去単位で消去する消去手段とを有する
    情報処理装置において、 前記消去単位領域に書き込む書き込みデータおよび前記
    消去単位領域内の不変データの双方を記憶する消去ブロ
    ックバッファ、不変データを記憶することなく書き込み
    データを記憶する書き込みバッファ、前記消去ブロック
    バッファに記憶されるデータを処理することにより得ら
    れる第1データチェック値の保持領域、前記書き込みバ
    ッファに書き込まれたデータを処理することにより得ら
    れる第2データチェック値の保持領域を備え、任意のデ
    ータ単位でデータの書き込みが可能な不揮発性の第2の
    メモリと、 第1の消去単位領域に第1の書き込みデータを書き込む
    ことを要求する第1の書き込み要求に対して当該第1の
    書き込みデータを前記消去ブロックバッファに書き込
    み、第2の消去単位領域に第2の書き込みデータを書き
    込むことを要求する第2の書き込み要求に対して当該第
    2の書き込みデータを前記書き込みバッファに書き込
    み、前記第1のデータチェック値および前記第2のデー
    タチェック値を前記第2のメモリに書き込む書き込み制
    御手段と、 前記第1の書き込み要求に対し、前記第1の消去単位領
    域内の不変データを前記消去ブロックバッファに書き込
    む待避手段と、 前記消去ブロックバッファに書き込まれた前記第1の書
    き込みデータおよび前記不変データを前記消去手段によ
    って消去された前記第1の消去単位領域に書き込むメモ
    リ書き込み手段と、 前記情報処理装置の復旧時に、前記第2のメモリに書き
    込まれた前記第1のデータチェック値および前記第2の
    データチェック値に基づいて復旧処理を行うことを特徴
    とする復旧手段とを備えたことを特徴とする情報処理装
    置。
  25. 【請求項25】 前記復旧手段は、前記第1のデータチ
    ェック値に基づいて前記消去ブロックバッファに記憶さ
    れたデータが正しいと判断した場合に、前記消去ブロッ
    クバッファに記憶されたデータを前記第1の消去単位領
    域に書き込むことを前記メモリ書き込み手段に指示し、
    前記第2のデータチェック値に基づいて前記書き込みバ
    ッファに記憶されたデータが正しいと判断した場合に、
    前記書き込みバッファに記憶された前記第2の書き込み
    データを前記消去ブロックバッファに書き込むことを前
    記書き込み制御手段に指示し、前記第2の消去単位領域
    の不変データを前記消去ブロックバッファに書き込むこ
    とを前記待避手段に指示することを特徴とする請求項2
    4記載の情報処理装置。
  26. 【請求項26】 消去単位番号保持領域を備え、前記第
    2のメモリよりもデータの読み出しが高速な第3のメモ
    リを有し、 前記書き込み制御手段は、前記消去単位領域を特定する
    情報を前記第2のメモリの消去単位番号保持領域と前記
    第3のメモリの消去単位番号保持領域双方に書き込むよ
    うにし、 前記消去単位領域を特定する情報を参照する際には、前
    記第3のメモリの消去単位番号保持領域からデータを読
    み出すことを特徴とする請求項13または請求項16記
    載の情報処理装置。
  27. 【請求項27】 あらかじめ定められた消去単位でデー
    タの消去および書き込みがなされる複数の消去単位領域
    を有する第1のメモリと、前記消去単位領域に記憶され
    たデータを前記消去単位で消去する消去手段とを有し前
    記消去単位領域に記憶されたデータを第1の書き込みデ
    ータに書き換える情報処理装置において、 前記第1の書き込みデータおよび前記消去単位領域内の
    不変データの双方を記憶する消去ブロックバッファと、
    不変データを記憶することなく書き込みデータを記憶す
    る書き込みバッファとを備え、任意のデータ単位でデー
    タの書き込みが可能な不揮発性の第2のメモリと、 第1の消去単位領域に第1の書き込みデータを書き込む
    ことを要求する第1の書き込み要求に対し、前記第1の
    書き込みデータを前記消去ブロックバッファに書き込む
    消去ブロックバッファ書き込み手段と、 前記第1の書き込み要求に対し、前記第1の消去単位領
    域内の不変データを前記消去ブロックバッファに書き込
    む待避手段と、 前記第1の書き込み要求以外の複数の書き込み要求に対
    し、当該複数の書き込みデータを前記書き込みバッファ
    に書き込む書き込みバッファ書き込み手段と、前記消去
    ブロックバッファ書き込み手段に書き込まれた前記第1
    の書き込みデータおよび前記不変データを前記第1の消
    去単位領域に書き込むメモリ書き込み手段と、 前記書き込みバッファ内の複数の書き込みデータについ
    て、書き込み要求がされた消去単位領域ごとにそのデー
    タ量を計算し、この計算結果に基づいて同一の消去単位
    領域に書き込む書き込みデータすべてを前記消去ブロッ
    クバッファに移動させるデータ移動手段とを有し、 前記待避手段は前記消去ブロックバッファに移動された
    書き込みデータに対応する消去単位領域内の不変データ
    を前記消去ブロックバッファに書き込むことを特徴とす
    る情報処理装置。
  28. 【請求項28】 前記データ移動手段は、前記書き込み
    バッファ内の書き込みデータの内、同一の消去単位領域
    に書き込み要求がなされた書き込みデータのデータ量が
    所定量よりも少なく、当該書き込みデータの数が所定数
    よりも多い場合に、当該書き込みデータすべてを前記消
    去ブロックバッファに移動させることを特徴とする請求
    項27記載の情報処理装置。
JP2000025179A 1999-02-19 2000-02-02 データ記憶方法および情報処理装置 Expired - Fee Related JP3632543B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2000025179A JP3632543B2 (ja) 1999-02-19 2000-02-02 データ記憶方法および情報処理装置
US09/640,454 US6795890B1 (en) 1999-02-19 2000-08-17 Data storage method, and data processing device using an erasure block buffer and write buffer for writing and erasing data in memory

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP4126099 1999-02-19
JP11-41260 1999-02-19
JP2000025179A JP3632543B2 (ja) 1999-02-19 2000-02-02 データ記憶方法および情報処理装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2004319381A Division JP4066991B2 (ja) 1999-02-19 2004-11-02 情報処理装置

Publications (2)

Publication Number Publication Date
JP2000305862A true JP2000305862A (ja) 2000-11-02
JP3632543B2 JP3632543B2 (ja) 2005-03-23

Family

ID=26380824

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000025179A Expired - Fee Related JP3632543B2 (ja) 1999-02-19 2000-02-02 データ記憶方法および情報処理装置

Country Status (1)

Country Link
JP (1) JP3632543B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002071409A1 (de) * 2001-03-02 2002-09-12 Infineon Technologies Ag Verfahren zum einspeichern einer datenmenge in einen zielspeicherbereich und speichersystem
WO2005050453A1 (ja) * 2003-11-18 2005-06-02 Matsushita Electric Industrial Co., Ltd. ファイル記録装置
WO2006098212A1 (ja) * 2005-03-15 2006-09-21 Matsushita Electric Industrial Co., Ltd. メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びデータ書き込み方法
JP2007241576A (ja) * 2006-03-07 2007-09-20 Matsushita Electric Ind Co Ltd 不揮発性記憶装置およびそのデータ書込み方法
JP2013205933A (ja) * 2012-03-27 2013-10-07 Mitsubishi Electric Corp ファームウェア更新装置およびその方法
JP2016519795A (ja) * 2013-03-06 2016-07-07 アビニシオ テクノロジー エルエルシー 記憶されたデータユニットに対する操作の管理

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002071409A1 (de) * 2001-03-02 2002-09-12 Infineon Technologies Ag Verfahren zum einspeichern einer datenmenge in einen zielspeicherbereich und speichersystem
US6839287B2 (en) 2001-03-02 2005-01-04 Infineon Technologies Ag Method of storing a quantity of data in a target memory location and storage system
WO2005050453A1 (ja) * 2003-11-18 2005-06-02 Matsushita Electric Industrial Co., Ltd. ファイル記録装置
US7610434B2 (en) 2003-11-18 2009-10-27 Panasonic Corporation File recording apparatus
KR101087906B1 (ko) 2003-11-18 2011-11-30 파나소닉 주식회사 파일기록장치
WO2006098212A1 (ja) * 2005-03-15 2006-09-21 Matsushita Electric Industrial Co., Ltd. メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びデータ書き込み方法
US7702846B2 (en) 2005-03-15 2010-04-20 Panasonic Corporation Memory controller, nonvolatile storage device, nonvolatile storage system, and data writing method
JP2007241576A (ja) * 2006-03-07 2007-09-20 Matsushita Electric Ind Co Ltd 不揮発性記憶装置およびそのデータ書込み方法
JP2013205933A (ja) * 2012-03-27 2013-10-07 Mitsubishi Electric Corp ファームウェア更新装置およびその方法
JP2016519795A (ja) * 2013-03-06 2016-07-07 アビニシオ テクノロジー エルエルシー 記憶されたデータユニットに対する操作の管理

Also Published As

Publication number Publication date
JP3632543B2 (ja) 2005-03-23

Similar Documents

Publication Publication Date Title
CN109343790B (zh) 一种基于nand flash的数据存储方法、终端设备及存储介质
US6795890B1 (en) Data storage method, and data processing device using an erasure block buffer and write buffer for writing and erasing data in memory
JP4897524B2 (ja) ストレージシステム及びストレージシステムのライト性能低下防止方法
US6571312B1 (en) Data storage method and data processing device using an erasure block buffer and write buffer for writing and erasing data in memory
EP3376394B1 (en) Method and device for processing access request, and computer system
JP5976980B1 (ja) 階層化ストレージシステム、階層化ストレージ装置を利用するコンピュータ、及びファイルへのアクセスのカウントを補正する方法
JP2008033788A (ja) 不揮発性記憶装置、データ記憶システム、およびデータ記憶方法
CN107423233B (zh) 一种可写快照实现方法和装置
US10915478B2 (en) Method and apparatus for scatter gather processing engine in a storage controller for caching applications
US11030092B2 (en) Access request processing method and apparatus, and computer system
JPWO2008099786A1 (ja) メモリ障害復旧方法、情報処理装置およびプログラム
JP4908481B2 (ja) データ記憶装置及び筐体内レプリケーション方法
JP2000305862A (ja) データ記憶方法および情報処理装置
JP4608434B2 (ja) 情報記録媒体のデータ処理装置及びデータ記録方法
JP4066991B2 (ja) 情報処理装置
JP4572930B2 (ja) 情報処理装置
JP4731325B2 (ja) 記録媒体、データ処理装置及びデータ処理方法
TW201621668A (zh) 資料儲存裝置及其資料寫入方法
JP4535049B2 (ja) 仮想ライブラリ装置、仮想ライブラリ装置の制御方法、仮想ライブラリ装置の制御プログラム
JP2007179085A (ja) ディスク装置、ディスク書込データ選択方法およびディスク書込データ選択プログラム
JP2004062851A (ja) 直接重複書き込み可能で冗長フィールドの使用不要の非揮発性メモリの保存システム及びその書き込み方法
JP4480592B2 (ja) ファイルシステム
JP2011133947A (ja) 不揮発性記憶装置、アクセス装置、及び不揮発性記憶システム
JP7103671B2 (ja) 情報処理装置
JP4403338B2 (ja) 情報処理装置、情報処理方法

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20040625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040907

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041102

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20041130

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041213

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080107

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090107

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100107

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110107

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120107

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130107

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130107

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees