JPH1040175A - フラッシュromの記憶管理方法及び装置 - Google Patents

フラッシュromの記憶管理方法及び装置

Info

Publication number
JPH1040175A
JPH1040175A JP8190806A JP19080696A JPH1040175A JP H1040175 A JPH1040175 A JP H1040175A JP 8190806 A JP8190806 A JP 8190806A JP 19080696 A JP19080696 A JP 19080696A JP H1040175 A JPH1040175 A JP H1040175A
Authority
JP
Japan
Prior art keywords
storage
erase
unit
area
flash rom
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.)
Withdrawn
Application number
JP8190806A
Other languages
English (en)
Inventor
Sukeyuki Tanaka
祐行 田中
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP8190806A priority Critical patent/JPH1040175A/ja
Publication of JPH1040175A publication Critical patent/JPH1040175A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 フラッシュROMのガーベジコレクション最
中に電源が遮断された場合でも、安全且つ効率的に復帰
できる。 【解決手段】 ステップS1403で、ブロックの破壊
判定ビットを判断する。ここで、異常が検出された場
合、そのブロックは、消去動作が発生して且つ消去動作
中に電源が断たれた可能性があるので、ステップS14
07に進み、現在のイレースブロックを消去イレースブ
ロックとして登録する。以上の処理をすべてのブロック
に対して繰り返すことにより、消去動作を安全に行うこ
とができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、フラッシュROM
のメモリ管理に関するものである。
【0002】
【従来の技術】フラッシュROMは、あるまとまった消
去単位、例えば64kバイト等といった大きな単位での
み消去(フラッシュ)が可能な不揮発メモリである。こ
れをファイルシステム支配下の記録メディアとして使用
できるようなサービスを提供するドライバが、従来から
存在している。
【0003】フラッシュROMのセクタ構造の例を図2
に示す。同図中のイレースブロックとは消去の単位の事
である。図2は、システム中に複数のフラッシュROM
が搭載されていて、フラッシュROMは複数のイレース
ブロックによって構成され、イレースブロックは、更に
消去回数カウンタと複数のセクタによって構成されてい
る様子を表わしている。消去回数カウンタは、イレース
ブロックを消去した回数をカウントするために用いる部
分であり、セクタは、管理領域として論理セクタ番号を
表す「セクタ番号」とセクタが有効利用されているかど
うかを表す「使用中」「使用済」といった管理フラグ、
そしてデータ領域から構成されている。
【0004】フラッシュROMでは、上書きが出来ない
ため、各セクタの書き換えは、論理セクタを移動させる
ことで行なっている。このメカニズムの例を、図3を用
いて説明する。
【0005】今、8番セクタを書換えようとしている。
同図中左側が書換え前の状態である。「セクタ番号8
(使用中)」の場所に8番セクタのデータが格納されて
いる。8番セクタがファイルの一部として利用されてい
て、その内容を変更したい場合には、未使用のセクタを
検索し、その場所を新たな8番セクタの場所としてセク
タ番号とデータを格納し、管理フラグを使用中にする。
次に以前8番セクタだったセクタの管理フラグを使用済
にする。このような手順で8番セクタのデータを書換え
たのが図中右の状態である。
【0006】このような方法で論理セクタの書換えをし
ていけば、何れフラッシュROMの殆どの領域を「使用
済セクタ」にしてしまう。そこであるタイミングでフラ
ッシュROMを一旦消去して「使用済セクタ」を「未使
用セクタ」へ戻す必要がある。この操作は、普通ガベー
ジコレクションと呼ばれている。
【0007】一般的なフラッシュROMのシステムで
は、上の様なイレースブロックが複数含まれている。ま
た通常、消去回数にはある保証の上限があるため、シス
テムに含まれる各イレースブロックの消去回数を均一に
するように、消去するイレースブロックを選定するのが
望ましい。このため、従来から、消去の回数カウンタを
使用した消去回数分散が行なわれている。このようなシ
ステムでは、あらかじめ消去回数カウンタを保持してお
き、消去する度にカウンタを一つ増やす。消去するタイ
ミングが来た時に、消去対象のイレースブロックの中か
ら、一番消去回数の少ないブロックを選んで消去するよ
うにしている。
【0008】残り容量が極端に少なくなるとガベージコ
レクションが多発してシステムのパフォーマンスが極端
に落ちる。従来から、総論理セクタ分を格納できるイレ
ースブロック数よりも1つだけ余分にイレースブロック
を退避ブロックとして用意して、その様な事態を避ける
ことが行なわれている。
【0009】
【発明が解決しようとする課題】ガベージコレクション
は、内部のメモリの再配置を行なうのみであり、ユーザ
ーから見ればデータの増減などはない。しかるに、実際
はデータのコピーやイレースブロックの消去など時間の
かかる処理であり、その間に、電源ケーブルを突然引き
抜く等の事故が発生することは充分考えられ、その結
果、以下のような不具合が検出する可能性がある。
【0010】(1)セクタのコピー最中にシステムが中
断されれば、システムに同一論理セクタが2つ存在して
しまう。
【0011】(2)データコピーの間にシステムが中断
されたことにより、不完全なセクタが発生する。
【0012】(3)システムで使用できるぎりぎりのセ
クタ数まで使用している場合、安全のために確保してあ
った余分のイレースブロックに使用中セクタをコピーし
ている間にシステムが中断されると、次回にシステムが
稼働し始めた時には余分のイレースブロックはもはや存
在していないので、ガベージコレクションに多くのメイ
ンメモリが必要となる危険が発生する。
【0013】消去の過程は、メモリハードウェアの設計
方法によって様々なものが考えられる。しかし、ROM
ハードウエアに消去命令を発行した直後から、消去完了
になるまでのメモリの状態は保証されていないことも多
く、一般的には、ランダムなビット列が書かれている可
能性がある。
【0014】例えば、消去後のビットをTRUEとし
て、消去動作を開始すると、一度すべてのビットをFA
LSEにしてからTRUEにする、という動作が行なわ
れるものも考えられるし、その様な操作なしに、単にF
ALSEのビットだけをTRUEにするものも考えられ
る。またフラッシュROMの特徴として当然、一度FA
LSEにしたビットは、次の消去動作が起こるまではT
RUEにはならない。
【0015】これらの性質から、例えば、一つのビット
をパリティの様に使用して、内容のエラー判定をするこ
とは不可能である。
【0016】使用中のセクタの移動処理が完了し、消去
処理をしている時の状態は、例えば図5の上の様にな
る。現在市販されているフラッシュROMでは、消去作
業は、1秒といった時間を要するものが多く存在してい
る。よってこの状態の時に、電池が抜かれるなど電源が
遮断される可能性は高い。
【0017】この状態で電源が遮断された時の状態を、
同図の下側に示した。ブロック消去の方法は不明なの
で、次にシステムを起動した際に、本来システムが書き
込まないような不定なフラグが、管理領域に書き込まれ
ているブロックが一つ見つかる可能性がある。
【0018】本来ならば、このブロックは、消去が完了
していることが期待されている。もし消去が完了してい
なければ、フラッシュROMの性質上、上書きは出来な
いので、次にそのブロックにはデータを書き込むことが
出来なくなってしまう。
【0019】また、ガベージコレクションは、危険を含
むだけでなく、時間のかかる処理でもあるので、より効
率的に行なわれる必要がある。つまり、ある一つのイレ
ースブロックを消去する場合、より多くの「未使用」セ
クタが生じることが望ましい。
【0020】本発明は、以上の様な特性のフラッシュR
OMを鑑みて、安全に且つ効率的にガベージコレクショ
ンが行なわれるようにしたものである。
【0021】
【課題を解決するための手段】上記課題を解決するため
に、本発明は、ブロック単位で記憶領域を管理するフラ
ッシュROMの記憶管理装置であって、前記ブロックに
対して再配置処理が正常に終了したか否か判断する判断
手段と、前記判断手段により、再配置処理が正常に終了
していないと判断されたブロックに対して再配置処理を
実行する実行手段とを有することを特徴とするフラッシ
ュROMの記憶管理装置を提供する。
【0022】上記課題を解決するために、本発明は、ブ
ロック単位で記憶領域を管理するフラッシュROMの記
憶管理方法であって、前記ブロックに対して再配置処理
が正常に終了したか否か判断する判断工程と、前記判断
工程により、再配置処理が正常に終了していないと判断
されたブロックに対して再配置処理を実行する実行工程
とを有することを特徴とするフラッシュROMの記憶管
理方法を提供する。
【0023】
【発明の実施の形態】
(第1の実施形態)以下、本発明の実施例を図面に基づ
き説明する。
【0024】図1は本発明の第1の実施例のブロック図
である。
【0025】1はレンズ、2はレンズを通った光を電気
信号として出力するCCDユニット、3はCCDからの
アナログ信号をデジタル信号へ変換するA/Dコンバー
タ、4はCCDとA/D変換器に同期信号を供給するS
SGユニット、5はカメラシステムの中央演算器、6は
信号処理を高速に実現するためのアクセラレータ、7は
電池、8はシステム全体へ電源を供給するためのDC/
DCコンバータ、9はDC/DCコンバータをコントロ
ールする電源コントローラユニット、10はパネル操作
・表示装置・電源のコントロールを行なうマイクロコン
ピュータ、11はユーザーへの情報を表示する表示装
置、12はユーザーが直接操作するレリーズSWを含む
コントロールパネル、13はOS等システムプログラム
が入ったROM、14はカメラシステムの主記憶である
DRAM、15は内蔵記憶媒体として使用するフラッシ
ュROM、16はPCMCIAカードのインターフェー
ス部、17はATAハードディスク等の外部記録媒体、
18は拡張バスインターフェース、19はPC通信イン
ターフェース、20はDMAコントローラ、21はスト
ロボ、22はパーソナルコンピュータである。
【0026】このカメラの撮影時の動作を簡単に説明す
る。
【0027】12のコントロールパネルのレリーズスイ
ッチをユーザーが押したら、CPU5がそのことを検出
して撮影シーケンスを開始する。SSG4がCCD2を
駆動する。CCD2から出力されるアナログ信号は、A
/Dコンバータ3でデジタル信号へ変換される。20の
DMAコントローラによって3のA/Dコンバータの出
力は14のDRAMへDMA転送される。1フレーム分
のDMA転送が終了した時点で5のCPUは、信号処理
をシーケンスを開始する。15のフラッシュROMから
信号処理プログラムを主記憶上に読みだして実行する。
主記憶上のデータを6の信号処理アクセラレータへ転送
し信号処理を行なう。6の信号処理アクセラレータは信
号処理の全てを行なうわけではなく5のCPUで行なう
処理の時に時間のかかる処理などを助ける演算回路であ
り、5のCPUの処理ソフトウェアと連携して動作す
る。信号処理の一部または全部が終了すると画像ファイ
ルとして15のフラッシュROMへ記録する。この時記
録するファイルフォーマットが圧縮処理を必要とするの
であれば圧縮も行なう。
【0028】第一の実施例は、以上のように撮影画像を
フラッシュROMへファイルする電子カメラである。
【0029】本発明のフラッシュROMでは、システム
起動時に図5の下に示す様な不定なブロックを検出した
ならば、そのブロックにあらためて消去処理をする。
【0030】あらかじめ特定のパターンを管理領域に書
いておき、このパターンで破壊(電源断)を検出する。
システムは、管理領域にこのパターン以外が書かれてい
ればROMの破壊を報告するので、必要に応じて、ガベ
ージコレクション作業を継続して行なうことが可能とな
る。
【0031】セクタの管理情報を図4に示す。図で、1
は消去後の状態を表し、0は1のビット反転値を表す。
【0032】セクタへのデータ書き込み手順を図6に示
す。まずステップS602で、セクタの管理領域に「書
き込み中」フラグをつけて、ステップS603にすす
む。次にデータ本体を書き込み、ステップS604にす
すむ。その後、セクタ管理領域に「使用中」フラグをつ
けて、ステップS605で正常終了する。
【0033】システムの初期化時に行なう、セクタの検
査の手順を図7に示す。
【0034】ステップS702で、検査ポインタを最初
のセクタに移動する。ステップS703で、セクタ状態
フラグを読みだし、もし書き込み中なら、ステップS7
04に進む。もしそれ以外なら、ステップS705に進
む。ステップS704では、ポインタの指すセクタの管
理フラグを使用済にして、ステップS705に進む。ス
テップS705では、検査ポインタが最後のセクタを指
しているかどうかを判定し、もし最後のセクタなら、ス
テップS707に進み、検査を終了する。もし最後のセ
クタでないなら、ステップS706に進み、カウンタを
一つ進めて、ステップS702に戻る。
【0035】次に、本システムのガベージコレクション
について述べる。
【0036】整理対象ブロックを選出する手順を図8に
示す。
【0037】ステップS801で選出を開始する。ステ
ップS802で評価ポインタを最初のイレースブロック
へ移動する。ステップS803で、整理対象候補ポイン
タへ最初のイレースブロックを代入する。ステップS8
04で、評価ポインタの指すブロックが使用済セクタを
含んでいるかどうか判断する。使用済セクタが含まれて
いれば、ステップS805へ進み、含まれていなければ
ステップS807へ進む。ステップS805では、整理
対象候補ブロックのイレースカウンタから使用済セクタ
の数を引いた値Aと、評価ポインタの示すブロックのイ
レースカウンタから使用済セクタの数を引いた値Bを比
較する。もしAがBより大きいなら、ステップS807
に分岐し、AがB以下なら、ステップS806に進み、
整理対象候補ポインタへ評価ポインタを代入する。ステ
ップS807で、評価ポインタが最後のブロックである
かどうか判断し、最後でなければ、ステップS808に
進み、次のイレースブロックへ評価ポインタを移動し
て、ステップSに804に戻る。ステップS807で、
評価ポインタが最後のブロックであれば、ステップS8
09で書き込み終了する。
【0038】管理領域に書かれている状態が、システム
の管理下にある状態か、それともイレースブロックの消
去中の不定な状態なのかの判定には、いくつかのビット
を用いてある特定の破壊判定ビット列としてあらかじめ
決めておき、そのビットパターンを外れていれば、消去
中とみなすのが妥当である。
【0039】本システムにおける消去ブロックの管理情
報を、図9に示す。消去ブロックの管理情報は、消去回
数カウンタの格納領域1と、破壊判定ビット列2と、状
態ビット列3と消去回数カウンタの退避領域4からな
る。
【0040】破壊判定ビット列2として4ビット、状態
ビット列3として4ビットを使った例と意味を、図10
にまとめた。破壊判定ビット列は、消去直後のパターン
とは違うものにしなくてはならない。図10では、01
10という値を採用している。
【0041】イレースブロックの消去手順を、図11に
示す。
【0042】ステップS1101で、消去作業を開始す
る。ステップS1102で、退避ブロックにCOPYフ
ラグを書き込む。ステップS1103で、消去ブロック
の消去回数カウンタを読み取り、退避ブロックへ同消去
回数カウンタを書き込み、退避ブロックに消去ブロック
番号を書き込む。ステップS1103で、退避ブロック
にERASEフラグを書き込む。ステップS1105
で、消去ブロックの消去を行なう。この動作が、通常、
時間のかかる処理である。ステップS1106で、消去
ブロックに消去回数カウンタを書き込む。すると、消去
された消去ブロックは次回のガベージコレクションでは
退避ブロックになるので、ステップS1107で、RE
SERVEDフラグを書き込む。ステップS1108
で、退避ブロックにDONEフラグを書き込む。ステッ
プS1109で、消去作業を終了する。
【0043】ここで、イレースブロックの消去時の管理
領域の変化を、図12を用いて詳しく説明する。同図
は、退避イレースブロックと消去イレースブロックの管
理領域の遷移を表している。Aが退避イレースブロック
の管理領域を示し、Bが消去イレースブロックの管理領
域を示している。
【0044】1は消去動作の始まる前の状態を表す。消
去状態領域がRESEAVE状態にあるイレースブロッ
クが、退避イレースブロックである。消去するブロック
に決められたBブロックから、使用中のセクタをAブロ
ックにコピーし終わったら、2で、Aの消去状態領域を
COPYにする。図では、わかりやすさの便宜のため
に、その段階で変化した項目を太字で囲っている。3
で、Aの消去単位識別領域に、Bを指すポインタを代入
する。また、Bの消去回数を、Aの消去回数退避領域に
コピーする。4で、Aの消去状態をERASEにする。
5で、フラッシュROMに消去命令を与えて、イレース
ブロックを消去する。消去が終了するまでは、イレース
ブロックの管理領域に書かれる情報は不定なので、図で
は「?」印でその様子を表している。6で、消去が終了
する。この時、消去ブロックは全てFALSEで満たさ
れるので、管理領域も全てFALSEになっている。7
で、Bの消去回数領域に、Aの消去回数退避領域に格納
している値に1を加えた値をコピーする。8で、Bの消
去状態をRESERVEDにして、以後Bをシステムの
退避ブロックとする。9で、Aの消去状態をDONEに
して、消去動作を終了する。
【0045】本発明のシステムでは、システムの初期化
時に、前回のシステム終了時の途中電源断を検出し、検
出した場合は、消去作業を続行する。この手順を、図1
3に示す。
【0046】ステップS1301で、ブロックの検査を
開始する。ステップS1302で、システムに含まれる
消去イレースブロックと退避イレースブロックを検索
し、あれば登録する。ステップS1302は、フローチ
ャート14で詳しく説明する。もし登録されたイレース
ブロックがなければ、ステップS1309に進む。登録
されたイレースブロックがあれば、ステップS1303
に進む。ステップS1303で、消去ブロックの消去回
数カウンタを読み取り、退避ブロックへ同消去回数カウ
ンタを書き込み、退避ブロックに消去ブロック番号を書
き込む。ステップS1303で、退避ブロックにERA
SEフラグを書き込む。ステップS1305で、消去ブ
ロックの消去を行なう。この動作が、通常、時間のかか
る処理である。ステップS1306で、消去ブロックに
消去回数カウンタを書き込む。すると、消去された消去
ブロックは次回のガベージコレクションでは退避ブロッ
クになるので、ステップS1307で、RESERVE
Dフラグを書き込む。ステップS1308で退避ブロッ
クにDONEフラグを書き込む。ステップS1309で
初期化終了する。
【0047】図14に、システムに消去イレースブロッ
クや退避イレースブロックが含まれているかどうかを検
索し、登録する手順を示す。
【0048】ステップS1401で、検索及び登録を開
始する。ステップS1402で、最初のブロックにポイ
ンタを移動する。ステップS1403で、破壊判定ビッ
ト(図9−2)の判断をする。もし破壊判定ビットが正
常であれば、ステップS1404に分岐する。また、異
常であったなら、前回のシステム動作中、消去動作が発
生して且つ消去動作中に電源が断たれた可能性があるの
で、ステップS1407に分岐する。ステップS140
4で、管理フラグの判断をする。もし管理フラグが、C
OPYであれば、ステップS1405に分岐する。ま
た、ERASEなら、ステップS1406に分岐する。
また、DONEなら、ステップS1409に分岐する。
そして、それ以外の状態ならば、前回のシステム動作
中、消去動作が発生して且つ消去動作中に電源が断たれ
た可能性があるので、ステップS1407に分岐する。
ステップS1405で、消去イレースブロックを検索
し、見付かったらそのイレースブロックを消去イレース
ブロックとして登録し、ステップS1408に進む。ス
テップS1405は、8と同じアルゴリズムを使用でき
る。ステップS1406で、消去単位識別番号(図9−
3)を読んで退避イレースブロックとして登録し、ステ
ップS1408に進む。ステップS1407で、現在ポ
インタが指しているイレースブロックを、消去イレース
ブロックとして登録し、ステップS1409に進む。ス
テップS1408で、現在ポインタが指しているイレー
スブロックを、退避イレースブロックとして登録し、ス
テップS1409に進む。ステップS1409で、現在
ポインタが最後のブロックであるかどうか判断し、最後
のブロックでないなら、ステップS1410に移り、ポ
インタを一つ進めて、ステップS1403に戻る。ステ
ップS1409で、もし最後のブロックならば、ステッ
プS1411でイレースブロックの登録を終了する。
【0049】(他の実施形態)第一の実施形態では、セ
クタの復旧の時に不定のフラグが見付かった時、「使用
済」フラグをつける。この時点でシステムは破壊されて
いる可能性があるので、不定のフラグを持つセクタが複
数見付かった場合、そのイレースブロックを消去候補に
してもよい。
【0050】
【発明の効果】以上説明したように、本発明によれば、
各セクタの管理領域に、「書き込み中」状態を格納する
ことができる。
【0051】また、システム初期化時に「書き込み中」
状態のセクタを検出したならば、そのセクタを「使用
済」に変更するし、イレースブロックの消去回数とブロ
ック中に含まれる「使用済」セクタの数にもとずいて消
去するイレースブロックを決定することができる。
【0052】また、ガベージコレクションの際に用いる
退避イレースブロックを識別するフラグを、イレースブ
ロックの管理領域に持つ。
【0053】また、各イレースブロックの管理領域に、
消去回数カウンタを退避する退避領域を設ける。
【0054】また、各イレースブロックの管理領域に、
「消去開始」「消去終了」といった状態を格納できる。
【0055】また、各イレースブロックの管理領域に、
「消去開始」「消去終了」といった記憶状態を格納す
る。
【0056】また、各イレースブロックの管理領域に、
「消去回数コピー中」といった記憶状態を格納する。
【0057】また、少なくとも消去状態とは異なるビッ
ト列をあらかじめ指定する手段を持ち、各イレースブロ
ックの管理領域に、この指定されたビット列を上記消去
単位の管理領域へ格納する。
【0058】また、システムの立ち上げ時に「消去開
始」「消去終了」「消去回数コピー中」といった消去状
態を検出することで破壊の検査を行ない、破壊が検出さ
れたならば、消去動作を継続させるよう動作する。
【0059】以上により、システムの急激な電源断の際
にも、セクタの書き込み動作、イレースブロックの消去
動作、イレースブロックの消去回数カウンタを保証し、
完全に復帰することができる。
【図面の簡単な説明】
【図1】本発明の第一の実施例のブロック図である。
【図2】フラッシュROMのセクタ構造の例を表す図で
ある。
【図3】フラッシュROMのガベージコレクションのメ
カニズムを表す図である。
【図4】フラッシュROMのセクタの管理情報を表す図
である。
【図5】消去動作時のフラッシュROMの状態を表す図
である。
【図6】セクタへのデータ書き込み手順を表すフローチ
ャートである。
【図7】セクタの検査/復帰の手順を表すフローチャー
トである。
【図8】整理対象ブロックを選出する手順を表すフロー
チャートである。
【図9】消去ブロックの管理情報を表す図である。
【図10】破壊判定ビット列と状態ビット列の例を表す
図である。
【図11】本システムにおける消去動作の例を表すフロ
ーチャートである。
【図12】消去動作の消去単位の管理領域の遷移を表す
図である。
【図13】本システムにおける初期化動作の例を表すフ
ローチャートである。
【図14】本システムの初期化時の、消去イレースブロ
ックと退避イレースブロックの検索及び登録作業を表す
フローチャートである。

Claims (24)

    【特許請求の範囲】
  1. 【請求項1】 ブロック単位で記憶領域を管理するフラ
    ッシュROMの記憶管理装置であって、 前記ブロックに対して再配置処理が正常に終了したか否
    か判断する判断手段と、 前記判断手段により、再配置処理が正常に終了していな
    いと判断されたブロックに対して再配置処理を実行する
    実行手段と、を有することを特徴とするフラッシュRO
    Mの記憶管理装置。
  2. 【請求項2】 前記判断手段は、前記ブロックに対する
    再配置処理中に電源が遮断されたことを検出することを
    特徴とする請求項1に記載のフラッシュROMの記憶管
    理装置。
  3. 【請求項3】 管理領域とデータ領域からなるブロック
    単位で記憶領域を管理し、前記ブロックが「未使用」
    「使用中」「使用済」の3つの記憶状態をとり、前記記
    憶状態を管理領域へ格納しているフラッシュROMの記
    憶管理方法であって、前記記憶ブロックが、前記3つの
    記憶状態とは異なる「書き込み中」といった記憶状態を
    とり、前記記憶状態を前記管理領域へ格納する事を特徴
    とするフラッシュROMの記憶管理装置。
  4. 【請求項4】 前記「書き込み中」状態のブロックを検
    出し、システム初期化時に前記ブロックを検出したなら
    ば、当該ブロックの記憶状態を「使用済」に変更するよ
    う動作することを特徴とする請求項3に記載のフラッシ
    ュROMの記憶管理装置。
  5. 【請求項5】 前記ブロックを少なくとも一つ含む消去
    単位を有し、消去回数を表す消去回数記憶領域を消去単
    位内に有し、「使用済」状態の記憶ブロックの数と、上
    記消去回数記憶領域へ格納されたデータを元に、消去す
    る消去単位を決定することを特徴とする請求項4に記載
    のフラッシュROMの記憶管理装置。
  6. 【請求項6】 少なくとも1つ以上の消去単位を消去の
    際の退避消去単位とし、「使用中」の状態にある記憶ブ
    ロックを、上記退避消去単位に複写してから消去単位の
    消去動作を行ない、他の消去単位と退避消去単位を識別
    するフラグを上記消去単位の管理領域に格納するよう構
    成することを特徴とする請求項3に記載のフラッシュR
    OMの記憶管理装置。
  7. 【請求項7】 消去回数を記録する消去回数退避領域を
    消去単位内に有し、消去動作のたびに上記消去回数を、
    上記退避消去単位の上記消去回数退避領域に格納するよ
    う構成することを特徴とする請求項6に記載のフラッシ
    ュROMの記憶管理装置。
  8. 【請求項8】 消去単位が少なくとも「消去開始」「消
    去終了」といった記憶状態をとり、前記記憶状態を消去
    単位の管理領域へ格納することを特徴とした請求項6に
    記載のフラッシュROMの記憶管理装置。
  9. 【請求項9】 消去単位を識別する識別番号を格納する
    消去単位識別番号格納領域を上記消去単位の管理領域に
    持ち、消去動作の度に識別番号を上記の余っている消去
    単位の消去単位識別番号格納領域へ格納することを特徴
    とした請求項6に記載のフラッシュROMの記憶管理装
    置。
  10. 【請求項10】 消去単位が少なくとも「消去回数コピ
    ー中」といった記憶状態をとり、上記記憶状態を消去単
    位の管理領域へ格納することを特徴とした請求項4に記
    載のフラッシュROMの記憶管理装置。
  11. 【請求項11】 少なくとも消去状態とは異なるビット
    列をあらかじめ指定し、この指定されたビット列を前記
    消去単位の管理領域へ格納することを特徴とする請求項
    4に記載のフラッシュROMの記憶管理装置。
  12. 【請求項12】 システムの初期化時に上記「消去開
    始」「消去終了」「消去回数コピー中」といった消去状
    態をし、前記ビット列を読み取り、前記消去回数退避領
    域のデータを読みとり、これらの情報を元に消去動作を
    継続させるよう動作することを特徴とする請求項9に記
    載のフラッシュROMの記憶管理装置。
  13. 【請求項13】 ブロック単位で記憶領域を管理するフ
    ラッシュROMの記憶管理方法であって、 前記ブロックに対して再配置処理が正常に終了したか否
    か判断する判断工程と、 前記判断工程により、再配置処理が正常に終了していな
    いと判断されたブロックに対して再配置処理を実行する
    実行工程と、を有することを特徴とするフラッシュRO
    Mの記憶管理方法。
  14. 【請求項14】 前記判断工程は、前記ブロックに対す
    る再配置処理中に電源が遮断されたことを検出すること
    を特徴とする請求項13に記載のフラッシュROMの記
    憶管理方法。
  15. 【請求項15】 管理領域とデータ領域からなるブロッ
    ク単位で記憶領域を管理し、前記ブロックが「未使用」
    「使用中」「使用済」の3つの記憶状態をとり、前記記
    憶状態を管理領域へ格納しているフラッシュROMの記
    憶管理方法であって、前記記憶ブロックが、前記3つの
    記憶状態とは異なる「書き込み中」といった記憶状態を
    とり、前記記憶状態を前記管理領域へ格納する事を特徴
    とするフラッシュROMの記憶管理方法。
  16. 【請求項16】 前記「書き込み中」状態のブロックを
    検出し、システム初期化時に前記ブロックを検出したな
    らば、当該ブロックの記憶状態を「使用済」に変更する
    よう動作することを特徴とする請求項15に記載のフラ
    ッシュROMの記憶管理方法。
  17. 【請求項17】 前記ブロックを少なくとも一つ含む消
    去単位を有し、消去回数を表す消去回数記憶領域を消去
    単位内に有し、「使用済」状態の記憶ブロックの数と、
    上記消去回数記憶領域へ格納されたデータを元に、消去
    する消去単位を決定することを特徴とする請求項16に
    記載のフラッシュROMの記憶管理方法。
  18. 【請求項18】 少なくとも1つ以上の消去単位を消去
    の際の退避消去単位とし、「使用中」の状態にある記憶
    ブロックを、上記退避消去単位に複写してから消去単位
    の消去動作を行ない、他の消去単位と退避消去単位を識
    別するフラグを上記消去単位の管理領域に格納するよう
    構成することを特徴とする請求項15に記載のフラッシ
    ュROMの記憶管理方法。
  19. 【請求項19】 消去回数を記録する消去回数退避領域
    を消去単位内に有し、消去動作のたびに上記消去回数
    を、上記退避消去単位の上記消去回数退避領域に格納す
    るよう構成することを特徴とする請求項18に記載のフ
    ラッシュROMの記憶管理方法。
  20. 【請求項20】 消去単位が少なくとも「消去開始」
    「消去終了」といった記憶状態をとり、前記記憶状態を
    消去単位の管理領域へ格納することを特徴とした請求項
    18に記載のフラッシュROMの記憶管理方法。
  21. 【請求項21】 消去単位を識別する識別番号を格納す
    る消去単位識別番号格納領域を上記消去単位の管理領域
    に持ち、消去動作の度に識別番号を上記の余っている消
    去単位の消去単位識別番号格納領域へ格納することを特
    徴とした請求項18に記載のフラッシュROMの記憶管
    理方法。
  22. 【請求項22】 消去単位が少なくとも「消去回数コピ
    ー中」といった記憶状態をとり、上記記憶状態を消去単
    位の管理領域へ格納することを特徴とした請求項18に
    記載のフラッシュROMの記憶管理方法。
  23. 【請求項23】 少なくとも消去状態とは異なるビット
    列をあらかじめ指定し、この指定されたビット列を前記
    消去単位の管理領域へ格納することを特徴とする請求項
    18に記載のフラッシュROMの記憶管理方法。
  24. 【請求項24】 システムの初期化時に上記「消去開
    始」「消去終了」「消去回数コピー中」といった消去状
    態をし、前記ビット列を読み取り、前記消去回数退避領
    域のデータを読みとり、これらの情報を元に消去動作を
    継続させるよう動作することを特徴とする請求項23に
    記載のフラッシュROMの記憶管理方法。
JP8190806A 1996-07-19 1996-07-19 フラッシュromの記憶管理方法及び装置 Withdrawn JPH1040175A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8190806A JPH1040175A (ja) 1996-07-19 1996-07-19 フラッシュromの記憶管理方法及び装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8190806A JPH1040175A (ja) 1996-07-19 1996-07-19 フラッシュromの記憶管理方法及び装置

Publications (1)

Publication Number Publication Date
JPH1040175A true JPH1040175A (ja) 1998-02-13

Family

ID=16264065

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8190806A Withdrawn JPH1040175A (ja) 1996-07-19 1996-07-19 フラッシュromの記憶管理方法及び装置

Country Status (1)

Country Link
JP (1) JPH1040175A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002366423A (ja) * 2001-06-04 2002-12-20 Samsung Electronics Co Ltd フラッシュメモリの管理方法
US9257192B2 (en) 2013-02-12 2016-02-09 Samsung Electronics Co., Ltd. Memory system performing multi-step erase operation based on stored metadata

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002366423A (ja) * 2001-06-04 2002-12-20 Samsung Electronics Co Ltd フラッシュメモリの管理方法
US6938116B2 (en) * 2001-06-04 2005-08-30 Samsung Electronics Co., Ltd. Flash memory management method
USRE44052E1 (en) 2001-06-04 2013-03-05 Samsung Electronics Co., Ltd. Flash memory management method
USRE45222E1 (en) 2001-06-04 2014-10-28 Samsung Electronics Co., Ltd. Method of writing of writing to a flash memory including data blocks and log blocks, using a logical address having a block address portion and page identifying portion, a block address table and a page table
USRE45577E1 (en) * 2001-06-04 2015-06-23 Samsung Electronics Co., Ltd. Method of writing to a flash memory including data blocks and log blocks
USRE46404E1 (en) * 2001-06-04 2017-05-16 Samsung Electronics Co., Ltd. Flash memory management method
US9257192B2 (en) 2013-02-12 2016-02-09 Samsung Electronics Co., Ltd. Memory system performing multi-step erase operation based on stored metadata

Similar Documents

Publication Publication Date Title
KR100877448B1 (ko) 비휘발성 기억 시스템
CA2218354C (en) File management system of image data
KR100880415B1 (ko) 기억장치
US5933846A (en) Rewritable ROM file device having read/write buffer access control via copy of rewritable area
US6810441B1 (en) Apparatus, method and system for reading/writing data, and medium for providing data read/write program
WO2006098212A1 (ja) メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びデータ書き込み方法
US6378033B1 (en) Electronic device, control method thereof and storage medium
US8375160B2 (en) Memory controller, nonvolatile storage module, access module and nonvolatile storage system
US8112575B2 (en) Memory controller, nonvolatile memory device, access device, and nonvolatile memory system
JP2006079543A (ja) メモリ管理装置
US7620994B2 (en) Data recording system and data access method
JP2003228513A (ja) メモリ制御方法および装置
US6625626B1 (en) Recording apparatus and recording method, reproducing apparatus and reproducing method, and recording medium
JP2006003966A (ja) フラッシュメモリの書込方法
JPH1040175A (ja) フラッシュromの記憶管理方法及び装置
US20060153025A1 (en) Recording medium recording control method and recording control device
JPS58111197A (ja) 画像処理装置
JP3271935B2 (ja) 制御システム
JP2006260158A (ja) 情報処理装置、情報処理方法、プログラム
JP7107188B2 (ja) 情報処理装置、画像形成装置およびプログラム
JP3624647B2 (ja) 記憶装置、データ管理装置、データ管理システム、データ管理方法、ファイル管理装置、記録媒体及びファイル管理システム
JP4823921B2 (ja) 電子機器、フォーマット判別方法
JP3832933B2 (ja) 情報処理装置およびその方法、オペレーティングシステム、記憶媒体
KR100545654B1 (ko) 시스템 시동 후 디스크에 존재하는 파일의 무결점을감지하는 방법
JP2001331280A (ja) 情報処理装置、情報処理方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060328

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060404

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20060605