JPH07109717B2 - メモリ書き込み制御方法 - Google Patents

メモリ書き込み制御方法

Info

Publication number
JPH07109717B2
JPH07109717B2 JP12473286A JP12473286A JPH07109717B2 JP H07109717 B2 JPH07109717 B2 JP H07109717B2 JP 12473286 A JP12473286 A JP 12473286A JP 12473286 A JP12473286 A JP 12473286A JP H07109717 B2 JPH07109717 B2 JP H07109717B2
Authority
JP
Japan
Prior art keywords
block
area
file
memory
written
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.)
Expired - Lifetime
Application number
JP12473286A
Other languages
English (en)
Other versions
JPS62283497A (ja
Inventor
眞一 仲田
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 JP12473286A priority Critical patent/JPH07109717B2/ja
Publication of JPS62283497A publication Critical patent/JPS62283497A/ja
Publication of JPH07109717B2 publication Critical patent/JPH07109717B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、メモリに書き込まれた情報を電気的に書き
換えできるメモリの書き込みを制御するメモリの書き込
み制御方法に関するものである。
〔従来の技術〕 従来のEEPROM(Electrical Erasable and Programmable
ROM)は、容量も少なく、また書き込むために必要な外
部回路が多かった。さらに、チップ内のすべてのデータ
を消去するモードしか有していなかった。最近は、容量
も大きくなるとともに、外部回路も殆ど必要なくCPUの
アドレスバス,データバスに結線できるようになり、ま
たEEPROM内の1バイトのデータのみの消去も可能となっ
てきた。以上の改良により、使用目的によっては、従来
のランダムアクセスメモリ(RAM)で構成していた機能
の置換が可能となった。
例えば、従来の小型パソコン、日本語ワープロで作成し
たプログラムや文章,外字等を保存しておくためにメモ
リカードと云うもとがある。これは、必要なときにパソ
コン,日本語ワープロ等の本体に差し込んでプログラム
や文章を記憶させ、本体から引き抜いても、そのデータ
を記憶しているように、メモリカード内にはRAMと電池
が搭載されていた。そこで、メモリカードをEEPROMで構
成することにより、電池を無くすことができると考えら
れた。
〔発明が解決しようとする問題点〕
ところが、従来のプログラマブルリードオンリメモリ、
例えばEEPROMの書込み管理方式は、記録媒体領域を何ら
ブロック領域(所定の記憶容量を備えるブロック領域)
に分割することなく、連続的なアドレスでEEPOMへのデ
ータ書込みアクセスを管理していたため、書き込まれる
データ容量が不定で、かつ書き換えられるデータの格納
領域も不定となるため、各領域に設定された書込みアス
セス回数を正確、かつ効率よく管理することができなく
なり、設定された書込みアスセス回数を越えた特定領域
以外には、設定された書込みアクセス回数に未だに到達
していない、すなわち、有効な書込み可能領域を有して
いても、当該EEPROMへの書込みが不能となってしまうた
め、貴重なメモリ資源を有効に使用することができない
等の問題点があった。
この発明は、上記の問題点を解決するためになされたも
ので、メモリの記憶領域を複数のブロックに分割し、か
つ該分割された複数の領域にわたり情報を書き込む際
に、該領域毎に書き込み回数を管理することにより、分
割された領域の大きさに影響されず、メモリ大のデータ
の書き込みができるとともに、メモリの破壊を妨げるこ
とができるメモリの書き込み制御方法を提供することを
目的とする。
〔問題点を解決するための手段〕
この発明に係るメモリの書き込み制御方法は、複数の領
域に分割されたメモリと各領域毎に設けられたカウンタ
とを利用し、該分割された領域にわたり情報を書き込む
工程と、該情報が書き込まれた複数の領域の前記カウン
タを更新する工程とを有するものである。
〔作用〕
この発明においては、複数の領域に分割されたメモリと
各領域毎に設けられたカウンタとを利用し、該分割され
た領域にわたり情報を書き込み、該情報が書き込まれた
複数の領域の前記カウンタをそれぞれ更新して、複数の
分割された領域にわたって情報を書き込むとともに、各
領域毎に書き込み回数を管理して、メモリ大のデータ書
き込みを可能にするとともに、書き込みによる該メモリ
の破壊を防止することを可能とする。
〔実施例〕
第1図(a)はこの発明の一実施例を示すプログラマブ
ルリードオンリメモリへの書き込み制御方法を説明する
模式図であり、1はEEPROMで、例えば書き込み容量が32
798バイト×8ビットで、書き込み回数が1万回に設定
してある。EEPROM1は、ポインタブロック1aおよび予備
ポインタブロックSPB1〜SPB50より構成される。ポイン
タブロック1aは5アドレス(各1バイト)で構成され、
『0〜1』番地の2バイトで、書き換え回数WCNT、例え
ば『138816』を記憶している。またポインタブロック1a
の『2』番地の1バイトは、ディレクトリDB、例えば
『0116』を記憶している。さらに、ポインタブロック1a
の『3』番地の1バイトは、未使用のスタートブロック
番号OSB、例えば『3316』を記憶している。またポイン
タブロック1aの『4』番地の1バイトは、未使用のエン
ドブロック番号OEB、例えば『8A16』を記憶している。
第1図(b)はこの発明に係るメモリの書き込み制御方
法を適用可能なデータ処理装置の一例を示すブロック図
であり、11はCPUで、ROM11a,RAM11bを有し、ROM11aに格
納された第6図に示すフローに準じたプログラムに応じ
て各部を制御する。12は入力手段で、データ書き込み装
置13にセットされるEEPROM1へのデータ書き込みおよび
データ消去を指示する。なお、CPU11にはデータの転送
を行うアキュムレータACC,BCCを有している。
第2図は第1図(a)に示すEEPROM1の構造を示す模式
図であり、21はブロック番号であり、例えば127個のブ
ロックBLOCK1〜BLOCK127に分割されている。各ブロック
は、例えば256バイトで構成され、先頭の2バイトで、
そのブロックが更新された回数、すなわち、後述する更
新回数が記憶されている。次に続く253バイトは記憶デ
ータDATAが記憶されており、最後の1バイトは、記憶デ
ータDATAがこのブロックに留まるか、または他のブロッ
クに及ぶかどうかを示す継続ブロックエリアCBがあり、
他のブロックに記憶データDATAが及ぶ場合は、継続ブロ
ックエリアCBには継続するブロック番号が記憶され、他
のブロックに記憶データDATAが及ばない場合は、継続ブ
ロックエリアCBには『FF16』が記憶されている。
この発明に係るメモリの書き込み制御方法は、メモリ
(この実施例ではEEPROM1)を、例えば127個のブロック
BLOCK1〜BLOCK127に分割し、各ブロック毎の書き込み
を、CPU11がROM11aに記憶された後述するフローチャー
トに従って制御するので、メモリ大のデータ書き込みを
可能にするとともに、書き込みによる該メモリの破壊を
防止することを可能となる。
第3図は第2図に示す各ディレクトリブロック構造を説
明する模式図であり、30は前記ディレクトリDBに指示さ
れるディレクトリブロック、31は前記ディレクトリブロ
ック30の更新カウンタで、例えば2バイトで構成され
る。32はファイル領域で、各ファイル名が12バイトで記
憶される。33はスタートブロック番号エリア(SB)で、
例えば1バイトで構成され、ファイルのスタートブロッ
ク番号が記憶されている。34はエンドブロック番号エリ
ア(EB)で、例えば1バイトで構成され、ファイルのエ
ンドブロック番号が記憶されている。35はチェーンブロ
ックエリア(CB)で、ディレクトリブロック30に継続す
るディレクトリブロックの有無を記憶する。例えばチェ
ーンブロックエリア35が『FF16』となる。なお、ディレ
クトリブロック30は、例えば18個のファイル領域32で構
成される。
次に第1図(a)および第3図を参照しながらEEPROM1
の構造について説明する。
第1図(a)に示すようにポインタブロック1aの書き換
え回数WCNTに、例えば『138816』が記憶されているとす
ると、5000回の更新が行われたことを示し、またディレ
クトリDBには『0116』ぎ記憶されているので、ディレク
トリDBに指示されるディレクトリブロック30のブロック
番号が『1』で、そのディレクトリブロック30の更新カ
ウンタ31には、『142F16』が記憶されている。これは、
このディレクトリブロック30を5167回更新したことを示
し、ファイル領域32のファイル(FiLe)1(ファイル
名)はスタートブロック番号エリア33が『0216』で、エ
ンドブロック番号エリア34が『0516』となっているた
め、ブロックBLOCK2から始まり、ブロックBLOCK5で終る
ことになる。またファイル領域32のファイル2は、スタ
ートブロック番号エリア33が『0A16』で、エンドブロッ
ク番号エリア34が『0F16』となっているため、ブロック
BLOCK10から始まり、ブロックBLOCK15で終ることにな
る。さらに、ファイル領域32のファイル3(ファイル
名)は、スタートブロック番号エリア33が『1516』で、
エンドブロック番号エリア34が『1816』となっているた
め、ブロックBLOCK21から始まり、ブロックBLOCK24で終
わることになる。またファイル領域32のファイル3の次
に『FF16』が書かれているので、このファイル領域32は
ファイル3で終了していることになる。
第4図は未使用のEEPROM1の状態を説明する模式図であ
り、第1図(a),第3図と同一のものには同じ符号を
付している。
この図から分かるように、未使用のEEPROM1のポインタ
ブロック1aの書き換え回数WCNTが『000116』、ディレク
トリDBが『0116』、未使用のスタートブロック番号OSB
が『0216』、未使用のエンドブロック番号OEBが『7
F16』がそれぞれポインタブロック1aの0番地から4番
地にそれぞれ記憶されている。これにより、ディレクト
リDBに指示されるブロックBLOCK1を参照すると、更新カ
ウンタ31に『000116』が書き込まれているとともに、フ
ァイル領域32のファイル1に『FF16』が書き込まれてお
り、さらに、チェーンブロックエリア35に『FF16』が書
き込まれており、EEPROM1が未使用状態であることを示
している。
さらに、ポインタブロック1aのスタートブロック番号OS
Bおよびエンドブロック番号OEBには『0216』,『7F16
がそれぞれ書き込まれている。すなわち、ブロックBLOC
K2〜127には先頭の2バイトに『000116』が書き込ま
れ、最終の1バイトに各接続のブロックの継続を示すチ
ェーンブロックエリア35には、ブロックBLOCK2〜126に
対して『03〜7F16』が書き込まれ、ブロックBLOCK127の
チェーンブロックエリア35には『FF』が書き込まれてい
る。このように、各ブロックBLOCK2〜127は1つのチェ
イン構造となる。
次に第3図,第5図(a),(b)を参照しながらEEPR
OM1への書き込み動作を説明する。
第5図(a),(b)はEEPROM1への書き込み動作を説
明する模式図であり、第1図(a),第3図と同一のも
のには同じ符号を付している。なお、書き込み直前は、
第3図に示す状態であったものとする。
まず、ディレクトリブロック30のファイル領域32の先頭
が『0016』のところを捜し当てる。第3図の場合は、フ
ァイル2とファイル3との間に『0016』があり、そこに
ファイル4という名前を12バイトで書き込み、ポインタ
ブロック1aの未使用ブロックのスタートブロック番号OS
Bを参照して、スタートブロック番号OSBの指示するブロ
ックBLOCK、すなわち『5716』の先頭の2バイト情報、
すなわち、更新カウンタ31を『1』インクリメントし、
その加算値が、例えば1万回を越えているようであれ
ば、ファイル4のチェーンブロックエリア35が示すブロ
ックBLOCKに対して同様の操作を行い、更新カウンタ31
が1万回以下のブロックBLOCKを捜し当てて、そのブロ
ックBLOCKの番号をポインタブロック1aのスタートブロ
ック番号OSBに書き込むとともに、ファイル4のデータ
をブロックBLOCK87(253バイト)に書き込み、ブロック
BLOCK87に溢れるようであれば、ブロックBLOCK87のチェ
ーンブロックエリア35の指示するブロックBLCOKの更新
カウンタ31を『1』インクリメントして加算値が、例え
ば1万回を越えているかどうかを調べ、指示されるブロ
ックBLOCKの更新カウンタ31が1万回を越えるようであ
れば、更新回数が1万回以下のブロックBLOCKを捜し当
て、そのブロックBLOCKの番号を直前に書き込んだブロ
ックBLOCKのチェーンブロックエリア35に書き込む。こ
のようにして、データの書き込みが行われ、更新回数が
1万数が1万回を越えるブロックBLOCKが排除されて行
く。そして、書き込みデータがなくなるまで同様の操作
を行い、最後に書き込んだブロックBLOCKのチェーンブ
ロックエリア35に記憶されていた内容を新しい未使用の
スタートブロック番号OSBに書き換え、ポインタブロッ
ク1aの書き換え回数WCNTを『1』インクリメントして
『138916』となり、最後にデータを書き込んだブロック
BLOCKのチェーンブロックエリア35を『FF16』にする。
そして、ディレクトリブロック30の最終ブロック番号を
記憶するエンドブロック番号エリア34に最後のデータを
書き込んだブロックBLOCKの番号を書き込むとともに、
更新カウンタ31を『1』インクリメントすると、第5図
(b)に示されるように、更新カウント31が『143016
となり、ファイル4のスタートブロック番号エリア33が
『3316』で、エンドブロック番号エリア34が『3716』と
なる。
次に第5図(a),(b)を参照しながらEEPROM1に書
き込まれているファイル1の削除動作について説明す
る。
ディレクトリブロック30となるブロックBLOCK1よりファ
イル1を探し、ファイル領域32の先頭の2バイトを『00
16』とする。次いで、ディレクトリブロック30の更新カ
ウンタ31を『1』インクリメントし、ファイル1のスタ
ートブロック番号エリア33とエンドブロック番号エリア
34のデータを参照して、ポインタブロック1aのエンドブ
ロックOEBが指示するブロックのチェーンブロックエリ
ア35の内容(削除直前までは『FF16』であった)をスタ
ートブロック番号エリア33の内容に変更し、このブロッ
クの更新カウンタ31を『1』インクリメントする。すな
わち、未使用ブロックの最後に今削除したファイル4を
接続するわけである。このようにして、更新カウンタ31
を進めながら何度もファイルの更新,削除を実行して行
くうちに、更新カウンタ31が1万回に接近する。
次に更新カウンタ31が1万回に到達した場合のアクセス
処理について説明する。
まず、ポインタブロック1aのスタートブロック番号OSB
の内容が示しているブロックBLOCKのチェーンブロック
エリア35の内容を新規のスタートブロック番号OSBとす
る。次いで、このブロック直前のディレクトリブロック
30の更新カウンタ31の情報以外の内容を転送する。そし
て、ポインタブロック1aのディレクトリDBに新規のディ
レクトリブロック番号を書き込み、ポインタブロック1a
の書き換え回数WCNTおよび更新カウンタ31を『1』イン
クリメントする。
一方、ポインタブロック1aの書き換え回数WCNTは1万回
を越えた場合は、予備ポインタブロックSPB1〜SPB50の
うち一番近い予備ポインタブロックへ書き換え回数WCNT
の情報以外のデータを転送し、新規のポインタブロック
の書き換え回数WCNT(000016)を『1』インクリメント
して『000116』に設定する。この場合、破棄されたポイ
ンタブロック1aの書き換え回数WCNTは1万回以上とな
り、新のポインタブロック1aの書き換え回数WCNTは1万
回以下となる。このようにして、カウンタブロック30お
よびポインタブロック1aの書き込み削除を管理する。ま
た削除されたファイルが使用していたブロックは未使用
ブロックの一番最後に回される。これは、未使用ブロッ
クの使用回数を平均化するためである。
第6図はこの発明の一実施例を示すメモリの書き込み制
御方法を説明するためのフローチャートである。なお、
(1)〜(18)は各ステップを示す。
まず、ディレクトリブロック30の空エリアを探して、新
規のファイル名を書き込む(1)。次いで、未使用のス
タートブロック番号OSBをCPU11のアキュムレータACCに
記憶させる(2)。アキュムレータACCが指示するブロ
ックの書き換え回数WCNTを+1更新する(3)。ここ
で、書き換え回数WCNTが10000を越えたかどうかを判断
し(4)、YESならばアキュムレータACCの指示するブロ
ックの継続ブロックエリアCBをアキュムレータACCに記
憶し(5)、ステップ(3)に戻り、NOならばディレク
トリブロック30のスタートブロック番号エリア(SB)33
にアキュムレータACCの内容を書き込む(6)。次い
で、アキュムレータACCが指示するブロックのデータエ
リアにデータを書き込む(7)。ここで、書き込むデー
タがアキュムレータACCが指示するブロックの容量が235
バイトを越えるかどうかを判断し(8)、YESならばア
キュムレータACCが指示するブロックの継続ブロックエ
リアCBをアキュムレータBCCに記憶させる(9)。次い
で、アキュムレータBCCが指示するブロックの書き換え
回数WCNTを+1更新する(10)。次いで、書き換え回数
WCNTが10000を越えたかどうかを判断し(11)、YESなら
ばアキュムレータBCCの指示するブロックの継続ブロッ
クエリアCBを記憶させ(12)、ステップ(10)に戻り、
NOならばアキュムレータACCが指示するブロックの継続
ブロックエリアCBにアキュムレータBCCの内容を書き込
み(13)、ステップ(7)に戻る。
一方、ステップ(8)の判断でNOの場合は、アキュムレ
ータACCが指示する継続ブロックエリアCBを未使用のス
タートブロック番号OSBに書き込む(14)。次いで、ポ
インタブロック1aの書き換え回数WCNTを+1更新する
(15)。次いで、アキュムレータACCが指示するブロッ
クの継続ブロックエリアCBへ「FF16」を書き込む(1
6)。そして、ディレクトリブロック30の新ファイル位
置のエンドブロック番号エリア34へアキュムレータACC
の内容を書き込む(17)。次いで、ディレクトリブロッ
ク30の書き換え回数WCNTを更新する(18)。
以上説明したように、この発明は記憶領域を複数のブロ
ックに分割し、各ブロック毎に書き込み回数を記憶し、
あらかじめ設定される書き込み回数を越えたブロックへ
の書き込みを抑止させるようにしたので、EEPROMに書き
込まれるデータの消失を未然に防げるとともに、不要に
なったブロックを未使用ブロックの最後尾に接続するよ
うにしたので、各ブロックの書き込み回数を平均化でき
る利点を有する。
〔発明の効果〕
以上説明したように、この発明によれば、分割した複数
の領域にわたり書き込みができるので、分割された領域
の大きさに影響されず、メモリ大のデータの書き込みが
できる。
また、分割された領域毎にカウンタを更新できるので、
メモリの破壊を妨げることができる等の効果を奏する。
【図面の簡単な説明】
第1図(a)はこの発明の一実施例を示すプログラマブ
ルリードオンリメモリの書き込み制御方法を説明する模
式図、第1図(b)はこの発明に係るメモリの書き込み
制御方法を適用可能なデータ処理装置の一例を示すブロ
ック図、第2図は第1図(a)に示すEEPROMの構造を示
す模式図、第3図は第2図に示す各ディレクトリブロッ
ク構造を説明する模式図、第4図は未使用のEEPROM状態
を説明する模式図、第5図(a),(b)はEEPROMへの
書き込み動作を説明する模式図、第6図はこの発明の一
実施例を示すメモリの書き込み制御方法を説明するため
のフローチャートである。 図中、1はEEPROM、1aはポインタブロック、21はブロッ
ク番号、30はディレクトリブロック、31は更新カウン
タ、32はファイル領域、33はスタートブロック番号エリ
ア、34はエンドブロック番号エリア、35はチェーンブロ
ックエリアである。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】メモリに書き込まれた情報を電気的に書き
    換えのできるメモリの書き込み制御方法であって、 複数の領域に分割されたメモリと各領域毎に設けられた
    カウンタとを利用し、 該分割された領域にわたり情報を書き込む工程と、 該情報が書き込まれた複数の領域の前記カウンタを更新
    する工程と、 を有することを特徴とするメモリの書き込み制御方法。
JP12473286A 1986-05-31 1986-05-31 メモリ書き込み制御方法 Expired - Lifetime JPH07109717B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP12473286A JPH07109717B2 (ja) 1986-05-31 1986-05-31 メモリ書き込み制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP12473286A JPH07109717B2 (ja) 1986-05-31 1986-05-31 メモリ書き込み制御方法

Publications (2)

Publication Number Publication Date
JPS62283497A JPS62283497A (ja) 1987-12-09
JPH07109717B2 true JPH07109717B2 (ja) 1995-11-22

Family

ID=14892737

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12473286A Expired - Lifetime JPH07109717B2 (ja) 1986-05-31 1986-05-31 メモリ書き込み制御方法

Country Status (1)

Country Link
JP (1) JPH07109717B2 (ja)

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5268319A (en) * 1988-06-08 1993-12-07 Eliyahou Harari Highly compact EPROM and flash EEPROM devices
US5268870A (en) * 1988-06-08 1993-12-07 Eliyahou Harari Flash EEPROM system and intelligent programming and erasing methods therefor
EP0617363B1 (en) * 1989-04-13 2000-01-26 SanDisk Corporation Defective cell substitution in EEprom array
US7447069B1 (en) 1989-04-13 2008-11-04 Sandisk Corporation Flash EEprom system
JP2654215B2 (ja) * 1990-01-19 1997-09-17 株式会社東芝 半導体メモリシステム
GB2251323B (en) * 1990-12-31 1994-10-12 Intel Corp Disk emulation for a non-volatile semiconductor memory
GB2251324B (en) * 1990-12-31 1995-05-10 Intel Corp File structure for a non-volatile semiconductor memory
JP2582487B2 (ja) * 1991-07-12 1997-02-19 インターナショナル・ビジネス・マシーンズ・コーポレイション 半導体メモリを用いた外部記憶システム及びその制御方法
US6230233B1 (en) * 1991-09-13 2001-05-08 Sandisk Corporation Wear leveling techniques for flash EEPROM systems
US6256642B1 (en) * 1992-01-29 2001-07-03 Microsoft Corporation Method and system for file system management using a flash-erasable, programmable, read-only memory
JP3390482B2 (ja) * 1992-06-12 2003-03-24 株式会社リコー ファクシミリ装置
JPH0750558B2 (ja) * 1992-09-22 1995-05-31 インターナショナル・ビジネス・マシーンズ・コーポレイション 一括消去型不揮発性メモリ
US5369616A (en) * 1992-10-30 1994-11-29 Intel Corporation Method for assuring that an erase process for a memory array has been properly completed
US5485595A (en) * 1993-03-26 1996-01-16 Cirrus Logic, Inc. Flash memory mass storage architecture incorporating wear leveling technique without using cam cells
US5388083A (en) * 1993-03-26 1995-02-07 Cirrus Logic, Inc. Flash memory mass storage architecture
US5479638A (en) * 1993-03-26 1995-12-26 Cirrus Logic, Inc. Flash memory mass storage architecture incorporation wear leveling technique
US5600821A (en) * 1993-07-28 1997-02-04 National Semiconductor Corporation Distributed directory for information stored on audio quality memory devices
JP3215237B2 (ja) 1993-10-01 2001-10-02 富士通株式会社 記憶装置および記憶装置の書き込み/消去方法
US6801979B1 (en) 1995-07-31 2004-10-05 Lexar Media, Inc. Method and apparatus for memory control circuit
US6728851B1 (en) 1995-07-31 2004-04-27 Lexar Media, Inc. Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
US5907856A (en) * 1995-07-31 1999-05-25 Lexar Media, Inc. Moving sectors within a block of information in a flash memory mass storage architecture
US5845313A (en) * 1995-07-31 1998-12-01 Lexar Direct logical block addressing flash memory mass storage architecture
US5930815A (en) * 1995-07-31 1999-07-27 Lexar Media, Inc. Moving sequential sectors within a block of information in a flash memory mass storage architecture
US6081878A (en) 1997-03-31 2000-06-27 Lexar Media, Inc. Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
US6757800B1 (en) 1995-07-31 2004-06-29 Lexar Media, Inc. Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
US5838614A (en) 1995-07-31 1998-11-17 Lexar Microsystems, Inc. Identification and verification of a sector within a block of mass storage flash memory
US6125435A (en) * 1995-09-13 2000-09-26 Lexar Media, Inc. Alignment of cluster address to block addresses within a semiconductor non-volatile mass storage memory
US5928370A (en) * 1997-02-05 1999-07-27 Lexar Media, Inc. Method and apparatus for verifying erasure of memory blocks within a non-volatile memory structure
US6411546B1 (en) 1997-03-31 2002-06-25 Lexar Media, Inc. Nonvolatile memory using flexible erasing methods and method and system for using same
US6122195A (en) * 1997-03-31 2000-09-19 Lexar Media, Inc. Method and apparatus for decreasing block write operation times performed on nonvolatile memory
US6034897A (en) * 1999-04-01 2000-03-07 Lexar Media, Inc. Space management for managing high capacity nonvolatile memory
US6076137A (en) 1997-12-11 2000-06-13 Lexar Media, Inc. Method and apparatus for storing location identification information within non-volatile memory devices
GB9801373D0 (en) 1998-01-22 1998-03-18 Memory Corp Plc Memory system
US6040997A (en) * 1998-03-25 2000-03-21 Lexar Media, Inc. Flash memory leveling architecture having no external latch
JP3544859B2 (ja) * 1998-05-11 2004-07-21 富士通株式会社 不揮発性半導体メモリを使用した2次記憶装置
AU1729100A (en) 1998-11-17 2000-06-05 Lexar Media, Inc. Method and apparatus for memory control circuit
WO2000060605A1 (en) 1999-04-01 2000-10-12 Lexar Media, Inc. Space management for managing high capacity nonvolatile memory
US6141249A (en) * 1999-04-01 2000-10-31 Lexar Media, Inc. Organization of blocks within a nonvolatile memory unit to effectively decrease sector write operation time
US6426893B1 (en) 2000-02-17 2002-07-30 Sandisk Corporation Flash eeprom system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks
US6567307B1 (en) 2000-07-21 2003-05-20 Lexar Media, Inc. Block management for mass storage
GB0123415D0 (en) 2001-09-28 2001-11-21 Memquest Ltd Method of writing data to non-volatile memory
GB0123412D0 (en) 2001-09-28 2001-11-21 Memquest Ltd Memory system sectors
GB0123410D0 (en) 2001-09-28 2001-11-21 Memquest Ltd Memory system for data storage and retrieval
US7231643B1 (en) 2002-02-22 2007-06-12 Lexar Media, Inc. Image rescue system including direct communication between an application program and a device driver
US6831865B2 (en) 2002-10-28 2004-12-14 Sandisk Corporation Maintaining erase counts in non-volatile storage systems
CN100483552C (zh) 2002-10-28 2009-04-29 桑迪士克股份有限公司 在非易失性存储系统中执行自动磨损平衡的方法
US6985992B1 (en) 2002-10-28 2006-01-10 Sandisk Corporation Wear-leveling in non-volatile storage systems
US7181611B2 (en) 2002-10-28 2007-02-20 Sandisk Corporation Power management block for use in a non-volatile memory system
US7174440B2 (en) 2002-10-28 2007-02-06 Sandisk Corporation Method and apparatus for performing block caching in a non-volatile memory system
US7526599B2 (en) 2002-10-28 2009-04-28 Sandisk Corporation Method and apparatus for effectively enabling an out of sequence write process within a non-volatile memory system
US8412879B2 (en) 2002-10-28 2013-04-02 Sandisk Technologies Inc. Hybrid implementation for error correction codes within a non-volatile memory system
US7035967B2 (en) 2002-10-28 2006-04-25 Sandisk Corporation Maintaining an average erase count in a non-volatile storage system
US6973531B1 (en) 2002-10-28 2005-12-06 Sandisk Corporation Tracking the most frequently erased blocks in non-volatile memory systems
US7254668B1 (en) 2002-10-28 2007-08-07 Sandisk Corporation Method and apparatus for grouping pages within a block
US7096313B1 (en) 2002-10-28 2006-08-22 Sandisk Corporation Tracking the least frequently erased blocks in non-volatile memory systems
US7171536B2 (en) 2002-10-28 2007-01-30 Sandisk Corporation Unusable block management within a non-volatile memory system
US7234036B1 (en) 2002-10-28 2007-06-19 Sandisk Corporation Method and apparatus for resolving physical blocks associated with a common logical block
US7039788B1 (en) 2002-10-28 2006-05-02 Sandisk Corporation Method and apparatus for splitting a logical block
US7103732B1 (en) 2002-10-28 2006-09-05 Sandisk Corporation Method and apparatus for managing an erase count block
US7559004B1 (en) 2003-10-01 2009-07-07 Sandisk Corporation Dynamic redundant area configuration in a non-volatile memory system
US7188228B1 (en) 2003-10-01 2007-03-06 Sandisk Corporation Hybrid mapping implementation within a non-volatile memory system
US8706990B2 (en) 2003-10-28 2014-04-22 Sandisk Technologies Inc. Adaptive internal table backup for non-volatile memory system
US7089349B2 (en) 2003-10-28 2006-08-08 Sandisk Corporation Internal maintenance schedule request for non-volatile memory system
US7032087B1 (en) 2003-10-28 2006-04-18 Sandisk Corporation Erase count differential table within a non-volatile memory system
US7370166B1 (en) 2004-04-30 2008-05-06 Lexar Media, Inc. Secure portable storage device
JP4434217B2 (ja) 2007-02-14 2010-03-17 株式会社デンソー 充電制御装置
JP5330136B2 (ja) * 2009-07-22 2013-10-30 株式会社東芝 半導体記憶装置
US8910017B2 (en) 2012-07-02 2014-12-09 Sandisk Technologies Inc. Flash memory with random partition

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58215794A (ja) * 1982-06-08 1983-12-15 Toshiba Corp 不揮発性メモリ装置
JPS60212900A (ja) * 1984-04-09 1985-10-25 Nec Corp 半導体固定記憶装置

Also Published As

Publication number Publication date
JPS62283497A (ja) 1987-12-09

Similar Documents

Publication Publication Date Title
JPH07109717B2 (ja) メモリ書き込み制御方法
JP2685173B2 (ja) メモリ書き込み制御方法
US5682497A (en) Managing file structures for a flash memory file system in a computer
US5530827A (en) Data management system for programming-limited type semiconductor memory and IC memory card employing data save/erase process with flag assignment
US6038636A (en) Method and apparatus for reclaiming and defragmenting a flash memory device
US6591328B1 (en) Non-volatile memory storing address control table data formed of logical addresses and physical addresses
US7634613B2 (en) Memory device and recording and/or reproducing apparatus employing this memory device
US6871259B2 (en) File system including non-volatile semiconductor memory device having a plurality of banks
JP2669365B2 (ja) 書換え可能なromファイル装置
US5937434A (en) Method of managing a symmetrically blocked nonvolatile memory having a bifurcated storage architecture
MX2007001185A (es) Sistemas, metodos, medio legible por computadora y aparato para el manejo de memoria utilizando una memoria de acceso aleatorio no volatil.
EP1330715B1 (en) Storing device, storing control method and program
US7895164B1 (en) Efficient checkpoint process
JP2001154909A (ja) フラッシュメモリ管理装置及び記録媒体
JP4175881B2 (ja) 不揮発性メモリの記憶方法及び記憶装置
EP1046996B1 (en) Memory defragmentation in chipcards
JPH113287A (ja) 記憶装置およびそれに用いられる記憶領域管理方法
JPH0695955A (ja) フラッシュ・ファイル・システム
JP2749752B2 (ja) メモリの書き込み制御装置
JP3784844B2 (ja) 半導体記憶装置
JPH10289144A (ja) メモリの制御方法
JPH05258585A (ja) ファイル装置
US20220164135A1 (en) Apparatus, method and computer program for managing memory page updates within non-volatile memory
JPH05250884A (ja) 不揮発性記憶装置
JP2002222120A (ja) メモリ・アクセス管理装置並びに管理方法

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term