JPH10124401A - メモリ装置 - Google Patents

メモリ装置

Info

Publication number
JPH10124401A
JPH10124401A JP26433697A JP26433697A JPH10124401A JP H10124401 A JPH10124401 A JP H10124401A JP 26433697 A JP26433697 A JP 26433697A JP 26433697 A JP26433697 A JP 26433697A JP H10124401 A JPH10124401 A JP H10124401A
Authority
JP
Japan
Prior art keywords
memory
block
flash memory
memory area
electronic signal
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.)
Abandoned
Application number
JP26433697A
Other languages
English (en)
Inventor
Ian Masters Jonathan
イーアン マースターズ ジョナサン
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.)
Nokia Oyj
Original Assignee
Nokia Mobile Phones Ltd
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 Nokia Mobile Phones Ltd filed Critical Nokia Mobile Phones Ltd
Publication of JPH10124401A publication Critical patent/JPH10124401A/ja
Abandoned legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【課題】 フラッシュメモリについてメモリの消耗を均
一化する。 【解決手段】 第1のメモリ領域として所定の閾値を越
える複数の使用されたメモリ領域を検出する段階と、電
子信号を記憶するため利用できる第2のメモリ領域を決
める段階と、そして前記の第1のメモリー領域に記憶さ
れたパラメータデータを表している電子信号に対応する
電子信号を前記の第2のメモリ領域に記憶させる段階と
を備えるメモリ管理方法。それによってメモリの消耗を
均一化する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はメモリ装置及びその
装置の動作方法に関する。限定するわけではないが、特
に、本発明はフラッシュメモリとして知られるメモリ装
置に関する。
【0002】
【従来の技術】半導体もしくは固体メモリ装置は電子信
号もしくは電荷を備えており、それらの電子信号もしく
は電荷は、メモリ装置に記憶される必要があるデータを
表すように配置されている。電子信号を維持するのに電
力を供給しなければならない(時にはリフレッシュする
と称す)メモリ装置は、揮発性メモリとして知られてい
る。電子信号を維持するのに電力を必要としないメモリ
装置は不揮発性メモリとして知られている。不揮発性メ
モリの初期のタイプは読み出し専用メモリ(ROM)と
して知られており、ROMにはデータを表す電子信号も
しくは電荷がROMを製造する時点でつくられ、その
後、装置が作動した時に電子信号によって表されるデー
タが読み出された。ユーザがROMにプログラムしたり
ROMに記憶されたデータを電気的に消去して他のデー
タに置き換える機能は電気的消去可能プログラム可能読
み出し専用メモリ(EEPROM)を用いれば可能であ
る。
【0003】データの入出力及びアドレス指定がシリア
ル形式なのでEEPROMのプログラム作成には比較的
時間がかかる。加えてEEPROMのプログラム作成時
は特別に「高い」電圧が必要となる。しかしながら、携
帯電子装置の使用中にユーザもしくはシステムパラメー
タが変更され、その携帯電子装置が動作する次回の使用
のために携帯電子装置が電源を切られる時にパラメータ
が保存されている必要がある携帯電子装置にEEPRO
Mは特に有益である。このような携帯電子装置は例えば
無線電話で、そのパラメータは例えば通話回数/時間、
最新通話スタック、ユーザインターフェース用のユーザ
設定そしてユーザ名とユーザ番号のメモリのためのパラ
メータである。このような使用は「1回書き込み/多数
回読み出し」タイプのアプリケーションと呼ばれてお
り、使用時に比較的時間を要し、また再プログラミング
時に高電力を消費することは携帯電池式装置へのEEP
ROMの使用に不都合ではない。
【0004】しかしながら、一般的にEEPROMは8
キロバイトもしくは16キロバイトといった比較的小さ
なメモリサイズでのみ使用可能であり、それ以上のサイ
ズになると非常に高価になってしまう。ますます多くの
低電力消費で携帯電子装置用の不揮発性メモリ領域が必
要とされるにつれて、EEPROMの代案が必要とされ
る。このような代案はいわゆるフラッシュメモリで、高
記憶密度で使用可能であり、例えば16や32メガビッ
ト装置が商用的に使用可能である。並列のアドレス指定
及びデータフォーマットを用いているので、フラッシュ
メモリはEEPROMよりも早い。加えて、フラッシュ
メモリはEEPROMよりも待機電力消費が小さい。フ
ラッシュメモリは、通常4キロ、8キロ、16キロ等の
倍数のバイト単位であるブロック単位に消去する。一度
に1ブロックを消去することによりフラッシュメモリの
再プログラミングはEEPROMの再プログラミングよ
りも早くなり、それが「フラッシュ」の語源になってい
る。それでもやはり、1ブロック消去には比較的時間が
かかり、一般的に8キロバイトの1ブロックには0.5
秒かかる。
【0005】ブロック専用消去機能は「リンクリスト」
データ構造を記憶するために用いられているフラッシュ
メモリである。このような構造はインテル社のスマート
ヴォルテージブートブロックフラッシュメモリファミリ
ー用の「インテルコーポレーションアプリケーリョンノ
ート AP-604 」に記述されている。これらのフラッシュ
メモリ装置には変わるデータを記憶するための2 つのい
わゆるパラメータブロックが与えられる。いずれの場合
もある一時にはパラメータブロックの一方だけが使用さ
れる。各データレコードはパラメータ値及びそのパラメ
ータの次のレコードへのポインターを備える。もしある
レコードのパラメータが最新の値ならばそのポインター
は「空」であるかもしくはそのパラメータのさらなるデ
ータはないということを示すFFHのような値を与えら
れる。パラメータ値が更新されると先の最新値のポイン
ターは「空」から新しいパラメータ値が記憶されるレコ
ードのアドレスに変更される。新しいレコードはそのレ
コード中に記憶される新しい値と「空」ポインターを持
つ。
【0006】最新パラメータブロックが一杯になるまで
パラメータ値はリンクリスト構造に記憶される。この段
階に達すると、各パラメータの最新値は第2のパラメー
タブロック(現時点では最新パラメータブロックであ
る)に記憶され、リンクリスト構造は新しい最新ブロッ
クに続く。その後、元の最新パラメータブロックは消去
される。
【0007】
【発明が解決しようとする課題】しかしながら、フラッ
シュメモリはEEPROM及び同種のものに関連するい
くつかの問題や欠点の解決を提示しているけれども、フ
ラッシュメモリにはそれ自身の欠点もある。消去サイク
ル中はそのブロックが消去されているかどうかに関わら
ずどのブロックからも読み出すことができない。このこ
とはEEPROM以上の深刻な欠点である。EEPRO
Mではどの個々のバイトについてもデータを読み書きで
きる。加えて、性能低下が起こる前のフラッシュメモリ
の消去サイクル数は約100、000消去サイクルが限
界であり、それはEEPROMの限界よりも非常に少な
い。本発明の目的はフラッシュメモリに関して起こる問
題もしくは欠点の少なくとも一つを改善することであ
る。
【0008】
【課題を解決するための手段】本発明の第1の特徴の実
施例は、第1のメモリ領域として所定の閾値を越える複
数の使用されたメモリ領域を検出する段階と、電子信号
を記憶するため利用できる第2のメモリ領域を決める段
階と、そして前記の第1のメモリー領域に記憶されたパ
ラメータデータを表している電子信号に対応する電子信
号を前記の第2のメモリ領域に記憶させる段階とを備え
るメモリ管理方法である。本発明の実施例の有利な点は
均一でないメモリ使用が避けられることである。これは
メモリの有効な寿命を改善する。好ましい実施例におい
て、第2のメモリ領域は電子信号を記憶するのに利用で
きるメモリ領域の中で最も少なく消去されたメモリ領域
である。
【0009】メモリ管理方法は更に複数の第1のメモリ
領域から最大の使用済み領域を有する第3のメモリ領域
を見出す段階と、この第3のメモリ領域に記憶されたパ
ラメータデータを表している電子信号に対応した電子信
号を前記の第2のメモリ領域に記憶する段階とを備える
のが好ましい。任意で、メモリ管理方法は更に複数の第
1のメモリ領域から所定数の消去を受けた第3のメモリ
領域を見出す段階と、この第3のメモリ領域に記憶され
たパラメータデータを表している電子信号に対応する電
子信号を前記の第2のメモリ領域に記憶させる段階とを
備えている。本発明の第2の特徴は、複数のメモリ領域
から最小数の消去を受けた第1のメモリ領域と最大数の
消去を受けた第2のメモリ領域とを見出す段階と、最小
数と最大数との間の差が所定の基準を越えるのを検出す
る段階と、前記の第1のメモリ領域に記憶されたパラメ
ータデータを表す電子信号に対応する電子信号を前記の
第2のメモリ領域に記憶する段階と、そして前記の第2
のメモリ領域に記憶されたパラメータデータを表してい
る電子信号に対応する電子信号を前記の第1のメモリ領
域に記憶する段階とを備えるメモリ管理方法である。
【0010】本発明の第3の特徴は、前記のメモリ管理
方法に従って作動するコンピュータプロセッサによりメ
モリを管理する電子装置である。本発明の第4の特徴
は、前記のメモリ管理方法に従って器械による読解可能
な命令を記憶する媒体である。
【0011】
【発明の実施例】1995年11月に発行されたアプリ
ケーション・ノートAP−604にインテル・コーポレ
ーションの4メガビット、スマートヴォルテージブート
ブロックフラッシュメモリが説明されている。このイン
テルの4メガビットフラッシュメモリを図1に示す。イ
ンテルの4メガビットフラッシュメモリ100はブロッ
クに分けられており、各ブロックは固定アドレス・レン
ジを有している。ブロック102、104そして106
はいずれもアドレス00000Hと30000Hとの間
に広がっている128キロバイトのブロックである。更
に、96キロバイトのブロック108があって、これは
アドレス30000Hと3BFFFHとの間に広がって
いる。フラッシュメモリブロック102、104、10
6、108はメインメモリブロックを構成し、フラッシ
ュメモリ100の使用中変更することのないもしくは変
更されそうにないデータもしくは情報を記憶するのに使
用するのが典型である。そのようなデータもしくは情報
とはごくたまにソフトウェアのアップグレードもしくは
更新が必要となる装置の操作プログラムやアプリケーシ
ョンソフトウエアである。インテルの4メガバイトフラ
ッシュメモリは8キロバイトのパラメータブロック11
0と112も含んでいる。パラメータブロックI(11
0)はアドレス3C000Hと3CFFFHとの間に広
がっており、そしてパラメータブロックII(112)
はアドレス3D000Hと3DFFFHとの間に広がっ
ている。パラメータブロックIとIIは、フラッシュメ
モリ100の作動中更新されるのが当然であるデータを
記憶するために割り当てられているフラッシュメモリの
ブロックである。例えば、それらのデータは、フラッシ
ュメモリ100を設置した電子装置の作動に関連するパ
ラメータである。もしその電子装置が例えば携帯無線電
話であると、その情報とはユーザーのインターフエース
のセットアップ、ユーザー個人の電話帳もしくは使用中
変わる無線電話のパラメータに関連しており、無線電話
の電源を切っている間、保持されなければならない。最
終のメモリブロック114はコードブロックであり、例
えば電子装置のオペレーティングシステムを初期化し、
そしてアプリケーションコードの破局的な故障の際シス
テムを回復させるのに必要なソフトウエアを記憶するの
に適切に割り当てている。更に、コードブロック114
は通常フラッシュメモリをプログラムし、そして消去す
るのに必要なコードを記憶する。コードブロック114
はブートブロックとしばしば称され、そしてアドレスが
3E000Hから3FFFFHまでのメモリの最高領域
を占めている。
【0012】他の半導体メモリと同じように、フラッシ
ュメモリは電子信号としてデータを記憶する。データは
バイナリ情報として記憶され、すなわちその情報もしく
は記憶されたデータは「1」もしくは「0」のどちらか
を表している。フラッシュメモリの特性は、「1」を
「0」に変えることによりフラッシュメモリに情報を書
き込む(もしくはプログラムする)ことができるだけで
あるということである。従ってすべてのメモリ位置を
「1」で埋めることにより書き込み(もしくは、プログ
ラミング)ができるようフラッシュメモリを初期化す
る。フラッシュメモリを消すときは「0」を「1」に変
える。更に、フラッシュメモリの特徴は、消去プロセス
がブロック単位で実施されることにある。図1を参照す
る。消去プロセスもしくはサイクルは102〜114の
ブロック内の一つで生じることとなろう。ブロック内で
情報を選択的に消去することはできない。そのブロック
内の総ての情報を消さなければならないからである。ブ
ロック消去はその一ブロック内の情報を消去するだけで
あって、他の総てのブロックは影響を受けることはな
い。消去サイクルの典型的な定義は、消去操作の後に書
き込みもしくはプログラミング操作が続く、もしくは書
き込みもしくはプログラミング操作の後に消去操作が続
くである。最初、データを読み出そうとする場所をアド
レス指定し、それからそのデータを読み出すという比較
的普通の方法でフラッシュメモリからの読み出し操作は
実施される。インテルの4メガバイト、スマートヴォル
テージブートブロックフラッシュメモリの特徴として、
5ボルト電源で作動しているとき標準温度範囲では10
0、000消去サイクルにわたって作動し、広い温度範
囲ではわずか10、000消去サイクルにわたってだけ
作動することとなっている。規定サイクル数のこの上限
はある形式の電子装置にこのフラッシュメモリを使用し
たときの限界である。
【0013】図2を参照する。このブロック図に示すマ
イクロ・コントローラ200は複数の集合搭載機能ユニ
ットを有する。マイクロ・コントローラ200はCPU
202、フラッシュメモリ204、ランダムアクセスメ
モリ(RAM)206、入出力ドライバー208、そし
てデジタル信号プロセッサ(DSP)210を備える。
CPU202は、そのようなプロセッサに関連した通常
の機能を有する普通のプロセッサユニットであり、マイ
クロ・コントローラ200の他の機能ユニットと相互的
に作動し、そしてマイクロ・コントローラ200と組み
合わされた電子装置からマイクロ・コントローラ200
へ加えられる信号で作動する。入出力ドライバー208
は、マイクロ・コントローラ200に搭載の個別の機能
ユニット間でのデータの転送を扱い、そしてマイクロ・
コントローラ200のユニットと外部電子装置との間で
のデータの流れを扱う。集合が大きくなるにつれて、マ
イクロ・コントローラに搭載の機能ユニットは精緻なも
のとなっていくのが普通であり、例えばDSP210は
無線電話におけるボコーディング機能を果たすよう適切
にプログラムされている。一般的にマイクロ・コントロ
ーラ200はまた様々な形式のメモリを搭載している。
フラッシュメモリ204は不揮発性メモリ手段であっ
て、EEPROMの代わりとしてしばしば使用され、E
EPROMに匹敵する。RAM206は揮発性メモリ手
段であって、通常スクラッチパッドメモリのような機能
を果たすか、もしくはCPUで作動しているソフトウエ
アと関連して使用する。
【0014】一般的にフラッシュメモリ204は、CP
U202がフラッシュメモリ204の書き込みと消去と
を行うための命令をメモリブロック114に記憶してい
る。しかしながら、フラッシュメモリの一つの場所から
の読み出しは、そのフラッシュメモリの中の別の場所へ
の書き込みを行っているときにはできないので、フラッ
シュメモリへの書き込み命令は全てRAM206に先ず
一時的に記憶されてから、そのコードを実行させて書き
込みプロセスを遂行しなければならない。消去プロセス
は「0」を「1」に変えるプロセス、すなわち「書き込
み」の形であるので、消去サイクル命令も一時的にRA
Mにダウンロードしてから消去サイクルが始まるように
しなければならない。本発明の好ましい実施例ではRA
M206は、フラッシュメモリのパラメータブロック1
10、112の一つに記憶されるパラメータもしくは変
数を暫定的に記憶するための8キロバイトブロック(以
下、8キロRAMキャッシュと称す)を構成している。
フラッシュメモリマネージャー(FMM)として知られ
ている器械による読解可能な一組の命令に従ってCPU
202を条件づけてフラッシュメモリの効果的な利用を
管理する。FMM−RAMキャッシュルーチンとして知
られている器械による読解可能な一組の命令が与えられ
て、RAMキャッシュ212とパラメータブロック11
0、112とにおける、そしてそれらの間でのパラメー
タの記憶を制御する。一般的にFMM−RAMキャッシ
ュルーチンのようなFMM命令がフラッシュメモリ20
0のメインメモリブロック102から108に記憶され
ており、そしてもしFMM命令がフラッシュメモリのブ
ロック、具体的にはパラメータブロック110、112
の一方もしくは他方のブロックの書き込みもしくは消去
を構成するのであればFMM命令はRAM206にダウ
ンロードされる。
【0015】図3を参照する。FMM−RAMキャッシ
ュルーチン命令に従って条件づけられたCPU202の
動作のための流れ図300を示す。今生きているフラッ
シュメモリ100のフラッシュパラメータブロック、例
えばブロック110に記憶されたパラメータを変えるも
しくは更新するとき、FMM300は状態302に入
り、この状態ではRAMキャッシュ212に記憶された
対応パラメータは新しいパラメータ値に更新される。そ
れからFMM300は状態304に進み、この状態では
今生きているフラッシュパラメータブロック110への
書き込み中にRAMキャッシュ212の更新が生じた
か、否かを決定する。もしRAMキャッシュの更新がフ
ラッシュ書き込み中に生じていると、そのときはFMM
300は状態306に入り、この状態では今生きている
フラッシュパラメータブロック110にRAMキャッシ
ュ212の内容が書き込まれ、今生きているフラッシュ
パラメータブロック110をRAMキャッシュ212の
内容に更新している。このことは、今生きているフラッ
シュパラメータブロック110に一部古いデータを、そ
して一部新しいデータを記憶させることになるかもしれ
ないフラッシュ書き込み中のRAMキャッシュ212へ
の書き込みによって、RAMキャッシュ212に記憶さ
れたパラメータ値と今生きているフラッシュパラメータ
ブロック110に記憶されているパラメータ値との間で
発生する不一致を考慮してのことである。もし状態30
4がノーであると、FMM300は状態308に入り、
この状態ではRAM内でいま更新されたパラメータの優
先レベルを決める。本発明に従ってパラメータは、フラ
ッシュメモリもしくはマイクロ・コントローラが存在す
る電子装置の作動に対するそれらの重要性如何によって
「至急」パラメータもしくは「緩慢」パラメータのどち
らかとすることに注目されたい。どのパラメータが「至
急」で、そしてどのパラメータが「緩慢」であるのか、
そしてそのような優先レベルが電子装置のための様々な
パラメータの中にどのように分配されるかは本発明にと
って関心事ではない。ただ注意さるべきこととしては、
これら2つの優先レベルを有するパラメータがシステム
内に存在しており、そしてそのような優先レベルを有す
るものとして認識されているということである。いかな
るシステムにおいても2つ以上の優先レベルがあっても
よいことは明らかであり、そしてそのときはFMM30
0を他の優先レベルを許容するよう適当に変更する。も
し今のパラメータが「緩慢」優先レベルを有するのであ
れば、FMM300は状態310に入り、そしてもし今
のパラメータが「至急」優先レベルを有するのであれ
ば、FMM300は状態312に入る。状態310の間
で、もし最後のフラッシュバックアップ以来5つよりも
多くの「緩慢」パラメータがRAMキャッシュ212に
書き込まれているか、もしくは最後の「緩慢」パラメー
タがRAMキャッシュ212へ書き込まれてから一分以
上経っていて、そしてその間にフラッシュバックアップ
がないならば、FMM300は状態306に入り、この
状態では今生きているフラッシュパラメータブロック1
10にはRAMキャッシュ212の内容が書き込まれ
て、RAMキャッシュ212をバックアップする。もし
状態310がノーであると、FMM300は状態302
に入り、この状態では次のパラメータがRAMキャッシ
ュ212に書き込まれるのを待っている。状態312に
おいて、もし最後のフラッシュバックアップ以来一つよ
りも多い至急パラメータがRAMキャッシュ212に書
き込まれているか、もしくは最後の至急パラメータがR
AMキャッシュ212へ書き込まれてから2秒経ってお
り、そしてフラッシュへの暫定的なバックアップがなか
ったならば、FMM300は状態306に入り、この状
態ではRAMキャッシュ212の内容が今生きているフ
ラッシュメモリのパラメータブロック110にバックア
ップされる。もし状態312がノーであると、FMM3
00は状態302に入り、この状態では次のパラメータ
がRAMキャッシュ212に書き込まれるのをプロセス
は待っている。
【0016】それぞれの状態310、312における基
準を詳述する必要のないことは当業者なら理解されよ
う。その基準は特定の電子装置のパラメータの種類と優
先レベルとを考慮して変えられるものである。図3の流
れ図から明かなように、生きているフラッシュメモリの
パラメータブロック110への書き込みを必要とする状
態と、そのような書き込みを必要としない状態とをFM
M300は有している。従って、CPU202がFMM
300に従って作動するよう条件づけられようとすると
き、FMM300に関係する命令の総てをフラッシュメ
モリからRAM206にダウンロードしなければならな
いということではなく、フラッシュメモリのパラメータ
ブロック110への「書き込み」を開始するその部分の
FMM300の命令だけをダウンロードすれば足りる。
【0017】フラッシュメモリは個別に消去されること
はできないので、RAMキャッシュ212の内容の各々
の順次のバック・アップは今生きているフラッシュメモ
リのパラメータブロック110内の次に利用できるアド
レスに書き込まれる。前に説明したリンクリストのデー
タ構造がこの目的に特に適している。いつかは、今生き
ているフラッシュメモリのパラメータブロック110は
一杯になる。その時は今生きているフラッシュメモリの
パラメータブロック110に記憶されているパラメータ
の最近の値が第2のフラッシュメモリのパラメータのメ
モリブロック112に記憶される。今はこの第2のフラ
ッシュメモリのパラメータブロックが、今生きているパ
ラメータブロックとなり、そしてRAMキャッシュ21
2の内容はFMM300の制御下で新しい今生きている
パラメータブロック112へ書き込まれる。電子装置の
作動中都合のよいときに元の生きていたパラメータブロ
ック110を消去する、すなわちすべてのメモリ領域を
1で満たして、今生きているパラメータブロック212
が一杯になった時にパラメータの更新値を受けれるよう
にする。
【0018】FMM−RAMキャッシュ・ルーチンによ
り管理されているフラッシュメモリは長く有効に使用で
きる。パラメータ値が変化する毎にフラッシュメモリを
必ずしも更新する必要はなく、ある回数のパラメータの
更新があったときだけ、もしくはパラメータが非常に重
要であってフラッシュメモリに直ぐにも保存されなけれ
ばならないときだけフラッシュメモリを更新すれば足り
るからである。こうして、従来の仕方で管理されている
フラッシュメモリで可能となるよりももっと多くのパラ
メータの更新が可能となる。CPU202のようなセン
トラルプロセッサユニットが制御している電子装置の作
動中、フラッシュメモリ204とRAM206のような
メモリデバイスから情報を読み出さなければならない。
しかしながら、上に説明したように、フラッシュメモリ
のブロックへの書き込み中もしくは消去中にフラッシュ
メモリ204から読み出すことはできない。従ってもし
書き込み中もしくは消去中にフラッシュメモリ204か
らデータを読むことをCPUが要求するならば、その要
求は無視される。そのような要求は以下にインタラプト
と称する。
【0019】電子装置の種類とそれの状態とによって異
なるが、もしインタラプトもしくは少なくともある種類
のインタラプトに迅速に応じないのであれば、その電子
装置は正しく機能するのを停止する。消去についてはそ
の遅延は8キロブロックで2秒までであり、普通この遅
延はインタラプトに応じるまでの遅延としては長過ぎる
遅延である。図4を参照する。本発明の好ましい実施例
に従うフラッシュメモリマネージャー(FMM)インタ
ラプトハンドラールーチン400の流れ図を示す。CP
U202はFMMインタラプトハンドラールーチン40
0に従って動作するよう条件づけられている。フラッシ
ュメモリ204へのアクセスを要求するインタラプトが
発生するとFMMインタラプトハンドラー400が発動
される。フラッシュメモリ204が現在書き込みもしく
は消去動作中かどうかを状態402でFMMインタラプ
トハンドラーが決定する。もしそのような動作中でなけ
れば本システムの標準インタラプトハンドラールーチン
が開始される状態404に入る。標準インタラプトハン
ドリングルーチンは当業者には良く知られていて、詳細
な説明は不要である。標準インタラプトハンドラーは通
常の方法でイタラプト要求に応じ、必要なデータ場所で
あればどこからでも読み出す。もし書き込みもしくは消
去中で、もしフラッシュメモリ204へ「短い」書き込
み中ならばFMMインタラプトハンドラー400は状態
406に入り、もし「長い」書き込み、例えば1ワード
の書き込み中ならば状態408に入り、そしてもし消去
中ならば状態410に入る。
【0020】状態406でフラッシュメモリ204への
短い書き込みのために、インタラプトハンドラー400
は状態412に入る。そこではインタラプトは不可能で
ある。「短い」書き込みが終わったら、インタラプトハ
ンドラー400は状態414に入る。そこではフラッシ
ュメモリ204のブロック読み出し状態が可能である。
その後、インタラプトハンドラーは状態404に入る。
そこでは標準インタラプトハンドラーが発動される。一
般的に「短い」書き込みとみなされる書き込みの最長時
間はCPU202上で動く命令によって制御される電子
装置の性質によって変わり、当業者によって適切に決定
される。一般的に6マシンサイクルよりも少ない書き込
みもしくは1命令が「短い」書き込みとみなされてい
る。もし例えば多くの「ワード」から成るような「長
い」書き込み中ならば、インタラプトハンドラー400
は状態408に入り、そして1ワード(一般的に8もし
くは16ビット)を現在フラッシュメモリ204に書き
込み中かどうかを判断する。もし書き込み中でないなら
インタラプトハンドラー400は状態414に入る。そ
こではフラッシュメモリ204はブロック読み出しモー
ドになり、そしてその後状態404に入る。そこでは標
準インタラプトハンドラーが発動される。もし1ワード
を現在フラッシュメモリ204に書き込み中ならば状態
412に入り、ワードの書き込みが終わるまでインタラ
プトは不可能となる。その後、状態414に入り、ブロ
ック読み出しモードが可能となり、そして状態404で
標準インタラプトハンドラーが発動される。任意に、ワ
ード書き込みとワード書き込みの間でインタラプトが可
能である。一般的に、ワード書き込みとワード書き込み
の間には、新しいワードをデータバッファに置いたりも
しくは新しいワードの書き込み用アドレスをロードする
ための休止があるからである。このようにして、もしこ
のような可能な期間中にインタラプトが発生したらFM
Mインタラプトハンドラーはフラッシュメモリ204を
読み出しモードにして、インタラプトに応じる。FMM
インタラプトハンドラーは「長い」書き込みがワード書
き込みとワード書き込みとの間にあるのを検出し、その
後フラッシュメモリ204を読み出しモードにする。
「長い」書き込みがワード書き込みとワード書き込みの
間に入ってきそうな時も認識する。
【0021】もしFMMインタラプトハンドラー400
が消去中であることが検出されている状態410に入る
と消去処理は中止されて、状態414でブロック読み出
しモードが可能となる。標準インタラプトハンドラーが
状態404で発動される。状態404からFMMインタ
ラプトハンドラー400は状態416に入る。そこでは
インタラプトハンドラーの発動に先立って実施されてい
た動作が継続される。例えばもし消去中であったならば
インタラプトに応じて中止したところから状態416で
消去を続ける。同様に、もし「長い」書き込み中にイン
タラプトされたなら次のワード書き込みが状態416で
実施される。FMMインタラプトハンドラー400はフ
ラッシュメモリ204に記憶されているが、フラッシュ
消去もしくは書き込み操作が実施されなければならない
場合は一時的にRAM206に移される。任意で、イン
タラプトハンドラー400はRAM206に記憶される
のが好ましい。単に一時的にもしくは好ましくに関わら
ずRAMに記憶されたならば、インタラプト要求はFM
Mインタラプトハンドラー400を含むRAMアドレス
に指示されなければならない。
【0022】前記したようにフラッシュメモリ204に
はフラッシュメモリの性能の低下前に実施できる消去サ
イクル数に限界がある。フラッシュメモリマネージャー
はCPU202にFMMブロックリ・ユースポリシーと
して知られる器械による読解可能な一組の命令を与え
て、フラッシュメモリブロックを均等に再使用する手段
を与え、全ブロックが丁度各ブロック同じ消耗になるよ
うにする。図5を参照する。本発明の好ましい実施例に
従うFMMブロックリ・ユースポリシーを表している図
を示す。CPU202はFMMブロックリ・ユースポリ
シーに従って動作するよう条件づけられている。ブロッ
クリ・ユースポリシーは一組のサブルーチンを備え、消
去−カウント502(erase _count )、消去−開始5
04(erase _initiate)、コピー−開始506(copy
_initiate)、コピー−フロム508(copy_from)、
コピー−トゥ510(copy_to)そしてコピー−消耗均
一化用(copy_for _wear_levelling )512に分類
されている。
【0023】消去−カウントサブルーチン502は何回
ブロックが消去されたかの記録を保持する。ブロックが
消去された回数はブロック消耗カウントとして知られて
いる。ブロック消耗カウントはフラッシュメモリが使用
される最初の回数を0として開始される。すなわちフラ
ッシュメモリマネージャーがフラッシュメモリ204が
備わっている電子装置で動く最初の回数である。フラッ
シュメモリの各ブロックに対してブロック消耗カウント
があり、ブロック消耗カウントは対応するブロックが消
去される度に増す。一般的にあるブロックを消去して、
そこに他のブロックをコピーする。従ってコピー先のブ
ロックが消去されている間、消去されているブロック消
去のブロック消耗カウントはコピー元のブロックに記憶
される。消去−開始サブルーチン504はフラッシュメ
モリ204内で消去処理の動作を制御する。一般的に消
去可能なブロックは消去される。このような消去は、C
PU202からのインタラプト要求に応じる必要性から
フラッシュメモリマネージャーがインタラプションを要
求する時にだけインタラプトされる。
【0024】コピーの開始はコピー−開始サブルーチン
506に従って器械による読解可能な命令により制御さ
れる。殆ど一杯のブロックから未使用のブロックへブロ
ックコピーを開始する規準は以下の通りである。「少な
くとも1ブロックが80%以上一杯で、そのブロック中
に少なくとも20%の使用済み領域がある。かつ同じサ
イズの空きブロックが使用可能である場合。」 コピー開始サブルーチン506を特定の電子装置もしく
はマイクロ・コントローラ/命令セットアーキテクチャ
ーに適応する当業者によって他の条件もしくは規準は決
められる。コピー開始サブルーチン506で規準を満た
す条件になるとコピー−フロムサブルーチン508及び
コピー−トゥサブルーチン510が発動される。コピー
−フロムサブルーチン508により最大の使用済み領域
をもつブロックの内容がコピーされる。一般的にコピー
−フロムサブルーチン508が発動する時、通常1つよ
りも多くのコピー元の候補となるブロックがある。例え
ば、もし8つの8キロバイトがあり、その内6ブロック
が以下の通り一杯であるとする。
【0025】「1つは90%の使用済み領域があり、消
耗カウントは30である。1つは80%の使用済み領域
があり、消耗カウントは20である。1つは50%の使
用済み領域があり、消耗カウントは9である。1つは4
5%の使用済み領域があり、消耗カウントは3である。
1つは30%の使用済み領域があり、消耗カウントは2
である。そして最後の1つは10%の使用済み領域があ
る。消去されているブロックと最後のブロックの中から
1つが消去される。」 コピー−フロムサブルーチン508の規準に従ってコピ
ー元となる候補は90%の使用済み領域があるブロック
となる。しかしながら、このブロックは最も消耗カウン
ト数が多い。消耗カウントと使用済みの割合とのいずれ
かを優先させるのは任意である。例えば、使用済みの割
合が高くなると、最大の領域が解放されるためメモリ資
源の使用が良くなり、次のブロックコピーまでの時間が
増大する。もし最大の使用済み領域を持つブロックが選
ばれないと、次のコピーが早く発生し、従ってブロック
コピー要求が早く出され、それ故消耗が早くなってしま
うというように連鎖する。「使用済み領域」という言葉
は既に更新されてしまった値を記憶するメモリ領域のこ
とを称しており、従って更新された値は異なるメモリ領
域にあるということを注意しておく。各フラッシュブロ
ックは100、000回消去及び再書き込みできるの
で、コピー元となるブロックの決定において消耗カウン
トは小さい要因である。従って、特定の実施例において
はコピー−フロムサブルーチン508は消耗カウントを
無視し、コピー元となるブロックは最大の使用済み領域
をもつブロックであるという単純な規準を使っている。
特定の環境内でフラッシュメモリ装置の使用を最適にし
ようとして当業者が消耗カウントと使用済み領域の割合
とのいずれかを優先させるのをいけないと言っているわ
けではない。
【0026】コピー−トゥポリシー510が発動される
時、一般的にコピー先のメモリブロックの候補は1つよ
りも多い。例えば、8つの内4つが一杯である8キロバ
イトブロックを取り上げる。1つは他のブロックに既に
コピーされているデータをもち、一つは消去中であり、
そして2つは既に消去されているので、この2つだけが
すぐに使用可能である。正確には既に消去されている2
つのメモリブロックである。これら2つのブロックの各
々がブロック消耗カウントをもつ。コピー−トゥサブル
ーチン510の規準はコピー先となる最初のブロックは
最小の消耗カウントをもつブロックである。ある型のア
プリケーションにおいてはフラッシュメモリブロックの
いくつかは決してもしくは殆ど消去されない。例えば、
あるアプリケーションは2つの大きなレコードをメモリ
ブロックに保存し、決してそれらを消去したり、書き込
んだりしない。このような状態では、この特定ブロック
は決して消耗しないが、フラッシュメモリ中の他のブロ
ックは消耗してしまう。フラッシュメモリ内のブロック
の消耗値間の何らかの大きな差異を認識するためにコピ
ー−消耗均一化専用サブルーチン512が適応され、比
較的消耗していないブロックから最も消耗しているブロ
ックへブロックコピーさせたり、又、最も消耗している
ブロックから比較的消耗していないブロックへブロック
コピーさせたりする。このようにして殆ど消耗していな
いブロックは何度も使用されるようになり、非常に消耗
したブロックの消耗は実質的に減少する。最も使用され
ていないブロックの消耗レベルと最も使用されているブ
ロックの消耗レベルの差が所定の値を超えると強制コピ
ーが発生する。この値はフラッシュメモリを使用してい
るアプリケーションに依存するが、一般的に1から40
%の範囲内である。フラッシュメモリへの書き込み/消
去頻度に応じてこの範囲を変更するようにする。高頻度
の書き込み/消去の使用によって強制コピーがより頻繁
に発生するからである。加えて、ブロックの消耗カウン
トが増大するにつれて強制コピーが頻繁に発生する。1
ブロック単位についてであっても、強制コピーは前述し
た規準を考慮するよう適応される。
【0027】前記の観点から本発明の範囲内で様々な変
更を加えることが可能であることは当業者にとって明ら
かである。例えば、先に述べたように2つよりも多いパ
ラメータの優先レベルがあり、RAMキャッシュ212
がフラッシュメモリ100にバックアップされるかどう
かを決定する基準がマイクロ・コントローラ200とフ
ラッシュメモリ100が備わっている電子装置に合うよ
うに適応される。例えば、さらに先の状態がFMM30
0には存在し、FMM300は携帯電子装置の電源停止
の始まりを検出して、電源停止の前にRAMキャッシュ
212を今生きているフラッシュメモリパラメータブロ
ックにバックアップする。加えて、図5の流れ図に関し
て記述された基準はフラッシュメモリの消耗を均一化し
て最適にするように適応される。更に、一つのブロック
からパラメータデータが他のブロックに記憶される時、
そのデータの後の更新はこの他のブロックで発生すると
いうことは当業者にとって明らかである。本発明は、本
文中で明記した、もしくは示唆したいかなる新規な特徴
又はそのような特徴の組み合わせをも含む。又は本発明
の請求項に関するかどうか、或いは取り上げた問題のい
ずれか又は全てを改善するかどうかに関わらず、本発明
は一般化したどのような特徴をも含む。本件ならびに本
件の分割審査中に新しい請求項を提出することがあるこ
とを注記しておく。
【図面の簡単な説明】
【図1】一般的なフラッシュメモリの図を示す。
【図2】VLSIマイクロ・コントローラのブロック図
を示す。
【図3】フラッシュメモリマネージャーRAMキャッシ
ュルーチンの流れ図を示す。
【図4】フラッシュメモリマネージャーインタラプトハ
ンドリングルーチンの流れ図を示す。
【図5】本発明の好ましい実施例に従うフラッシュメモ
リマネージャーブロックコピーポリシーの図式表現を示
す。
【符号の説明】
100 フラッシュメモリ 102、104、106 128キロバイトのブロック 108 96キロバイトのブロック 110、112 8キロバイトのパラメータブロック 114 16キロバイトのコードブロック 200 マイクロ・コントローラ 202 CPU 204 フラッシュメモリ 206 ランダムアクセスメモリ(RAM) 208 入出力装置 210 デジタル信号プロセッサー(DSP) 212 RAMキャッシュ 214 無線電話 502 消去−カウントサブルーチン 504 消去−開始サブルーチン 506 コピー−開始506サブルーチン 508 コピー−フロムサブルーチン 510 コピー−トゥサブルーチン 512 コピー−消耗均一化用サブルーチン

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 第1のメモリ領域として所定の閾値を越
    える複数の使用されたメモリ領域を検出する段階、 電子信号を記憶するため利用できる第2のメモリ領域を
    決める段階、そして前記の第1のメモリー領域に記憶さ
    れたパラメータデータを表している電子信号に対応する
    電子信号を前記の第2のメモリ領域に記憶させる段階を
    備えたことを特徴とするメモリ管理方法。
  2. 【請求項2】 第2のメモリ領域は電子信号を記憶する
    のに利用できるメモリ領域の中で最も少なく消去された
    メモリ領域である請求項1に記載のメモリ管理方法。
  3. 【請求項3】 複数の第1のメモリ領域から最大の使用
    済み領域を有する第3のメモリ領域を見出す段階と、こ
    の第3のメモリ領域に記憶されたパラメータデータを表
    している電子信号に対応した電子信号を前記の第2のメ
    モリ領域に記憶する段階とを更に備えた請求項1もしく
    は2に記載のメモリ管理方法。
  4. 【請求項4】 所定数の消去を受けた第3のメモリ領域
    を複数の第1のメモリ領域から見出す段階と、前記の第
    3のメモリ領域に記憶されたパラメータデータを表して
    いる電子信号に対応する電子信号を前記の第2のメモリ
    領域に記憶させる段階とを更に備えている請求項1もし
    くは2に記載のメモリ管理方法。
  5. 【請求項5】 最小数の消去を受けた第1のメモリ領域
    と最大数の消去を受けた第2のメモリ領域とを複数のメ
    モリ領域から見出す段階、 最小数と最大数との間の差が規定の基準を越えるのを検
    出する段階、 前記の第1のメモリ領域に記憶されたパラメータデータ
    を表す電子信号に対応する電子信号を前記の第2のメモ
    リ領域に記憶する段階、そして前記の第2のメモリ領域
    に記憶されたパラメータデータを表している電子信号に
    対応する電子信号を前記の第1のメモリ領域に記憶する
    段階を備えたことを特徴とするメモリ管理方法。
  6. 【請求項6】 請求項1から5のいずれかに従って作動
    するコンピュータプロセッサによりメモリを管理する電
    子装置。
  7. 【請求項7】 請求項1から6のいずれかに従って器械
    による読解可能な命令を記憶する媒体。
JP26433697A 1996-09-30 1997-09-29 メモリ装置 Abandoned JPH10124401A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB9620370A GB2317720A (en) 1996-09-30 1996-09-30 Managing Flash memory
GB9620370:8 1996-09-30

Publications (1)

Publication Number Publication Date
JPH10124401A true JPH10124401A (ja) 1998-05-15

Family

ID=10800719

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26433697A Abandoned JPH10124401A (ja) 1996-09-30 1997-09-29 メモリ装置

Country Status (5)

Country Link
US (1) US6092160A (ja)
EP (1) EP0833251B1 (ja)
JP (1) JPH10124401A (ja)
DE (1) DE69726088T2 (ja)
GB (1) GB2317720A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100818035B1 (ko) 2000-05-04 2008-03-31 엔엑스피 비 브이 저장 매체 상의 데이터 관리 및 데이터 관리 시스템과 컴퓨터 판독가능한 저장 매체

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69832609D1 (de) * 1998-09-30 2006-01-05 St Microelectronics Srl Emulierte EEPROM Speicheranordnung und entsprechendes Verfahren
FR2787601A1 (fr) * 1998-12-22 2000-06-23 Gemplus Card Int Systeme de memorisation comprenant des moyens de gestion d'une memoire avec anti-usure et procede de gestion anti-usure d'une memoire
DE19904573C2 (de) 1999-02-04 2000-12-28 Siemens Ag Vorrichtung und Verfahren zum Speichern von Telefoneinträgen
JP2001025053A (ja) 1999-07-09 2001-01-26 Mitsubishi Electric Corp 携帯電話のメモリシステム
US6188602B1 (en) * 2000-01-25 2001-02-13 Dell Usa, L.P. Mechanism to commit data to a memory device with read-only access
US6704835B1 (en) 2000-09-26 2004-03-09 Intel Corporation Posted write-through cache for flash memory
US6829667B2 (en) * 2001-09-14 2004-12-07 Intel Corporation Method and system for improved processing of CPU intensive communications protocols by disabling per frame interrupts for an interrupt period
EP1313020A1 (fr) * 2001-11-19 2003-05-21 EM Microelectronic-Marin SA Architecture d'un circuit intégré pour carte à puce et procédé d'allocation mémoire associé
US7013384B2 (en) * 2002-01-15 2006-03-14 Lenovo (Singapore) Pte. Ltd. Computer system with selectively available immutable boot block code
JP4179945B2 (ja) * 2003-08-08 2008-11-12 サンデン株式会社 自動販売機の端末制御装置
US7089349B2 (en) * 2003-10-28 2006-08-08 Sandisk Corporation Internal maintenance schedule request for non-volatile memory system
US7216244B2 (en) * 2004-02-25 2007-05-08 Hitachi, Ltd. Data storage system with redundant storage media and method therefor
US7644239B2 (en) 2004-05-03 2010-01-05 Microsoft Corporation Non-volatile memory cache performance improvement
DE102004037785A1 (de) * 2004-08-03 2006-03-16 Endress + Hauser Gmbh + Co. Kg Feldgerät für die Automatisierungstechnik
US7490197B2 (en) 2004-10-21 2009-02-10 Microsoft Corporation Using external memory devices to improve system performance
EP1832131B1 (en) 2004-12-27 2009-04-29 Research In Motion Limited Method and device for writing data in a wireless handheld communications device between volatile and non-volatile memories
US7363421B2 (en) * 2005-01-13 2008-04-22 Stmicroelectronics S.R.L. Optimizing write/erase operations in memory devices
EP1872606B1 (en) * 2005-04-18 2010-12-22 Motorola, Inc. Method and system for centralized memory management in wireless terminal devices
US8914557B2 (en) * 2005-12-16 2014-12-16 Microsoft Corporation Optimizing write and wear performance for a memory
EP1857631A1 (en) 2006-05-19 2007-11-21 Services Pétroliers Schlumberger Directional control drilling system
JP5134255B2 (ja) * 2007-01-30 2013-01-30 富士通株式会社 データ記録システム
US7689762B2 (en) * 2007-05-03 2010-03-30 Atmel Corporation Storage device wear leveling
US8631203B2 (en) 2007-12-10 2014-01-14 Microsoft Corporation Management of external memory functioning as virtual cache
US8032707B2 (en) 2008-09-15 2011-10-04 Microsoft Corporation Managing cache data and metadata
US9032151B2 (en) 2008-09-15 2015-05-12 Microsoft Technology Licensing, Llc Method and system for ensuring reliability of cache data and metadata subsequent to a reboot
US7953774B2 (en) 2008-09-19 2011-05-31 Microsoft Corporation Aggregation of write traffic to a data store
US10141314B2 (en) * 2011-05-04 2018-11-27 Micron Technology, Inc. Memories and methods to provide configuration information to controllers
US10355001B2 (en) 2012-02-15 2019-07-16 Micron Technology, Inc. Memories and methods to provide configuration information to controllers
US8937845B2 (en) 2012-10-31 2015-01-20 Freescale Semiconductor, Inc. Memory device redundancy management system

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5088036A (en) * 1989-01-17 1992-02-11 Digital Equipment Corporation Real time, concurrent garbage collection system and method
EP0392895B1 (en) * 1989-04-13 1995-12-13 Sundisk Corporation Flash EEprom system
US5303198A (en) * 1990-09-28 1994-04-12 Fuji Photo Film Co., Ltd. Method of recording data in memory card having EEPROM and memory card system using the same
GB2251323B (en) * 1990-12-31 1994-10-12 Intel Corp Disk emulation for a non-volatile semiconductor memory
DE4215063C2 (de) * 1991-05-10 1999-11-25 Intel Corp Einrichtung und Verfahren zum Seitenwechsel bei einem nicht-flüchtigen Speicher
FI89993C (fi) * 1991-05-31 1993-12-10 Nokia Mobile Phones Ltd Programmering av installationsdata i en mobiltelefon
EP0528280B1 (en) * 1991-08-09 1997-11-12 Kabushiki Kaisha Toshiba Memory card apparatus
US5309451A (en) * 1992-08-12 1994-05-03 Digital Equipment Corporation Data and parity prefetching for redundant arrays of disk drives
US5341339A (en) * 1992-10-30 1994-08-23 Intel Corporation Method for wear leveling in a flash EEPROM memory
US5740395A (en) * 1992-10-30 1998-04-14 Intel Corporation Method and apparatus for cleaning up a solid state memory disk storing floating sector data
US5485595A (en) * 1993-03-26 1996-01-16 Cirrus Logic, Inc. Flash memory mass storage architecture incorporating wear leveling technique without using cam cells
US5479638A (en) * 1993-03-26 1995-12-26 Cirrus Logic, Inc. Flash memory mass storage architecture incorporation wear leveling technique
US5471518A (en) * 1993-08-10 1995-11-28 Novatel Communications Ltd. Method and apparatus for non-volatile data storage in radio telephones and the like
US5566314A (en) * 1993-08-30 1996-10-15 Lucent Technologies Inc. Flash memory device employing unused cell arrays to update files
AU1447295A (en) * 1993-12-30 1995-08-01 Connectix Corporation Virtual memory management system and method using data compression
GB2291990A (en) * 1995-09-27 1996-02-07 Memory Corp Plc Flash-memory management system
US5867641A (en) * 1995-10-27 1999-02-02 Scm Microsystems (U.S.) Inc. Flash translation layer cleanup system and method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100818035B1 (ko) 2000-05-04 2008-03-31 엔엑스피 비 브이 저장 매체 상의 데이터 관리 및 데이터 관리 시스템과 컴퓨터 판독가능한 저장 매체

Also Published As

Publication number Publication date
GB2317720A (en) 1998-04-01
EP0833251A1 (en) 1998-04-01
GB9620370D0 (en) 1996-11-13
DE69726088T2 (de) 2004-08-26
US6092160A (en) 2000-07-18
EP0833251B1 (en) 2003-11-12
DE69726088D1 (de) 2003-12-18

Similar Documents

Publication Publication Date Title
JP3544610B2 (ja) メモリ装置
JPH10124401A (ja) メモリ装置
JPH10133940A (ja) メモリ装置
US7664923B2 (en) Method and system for updating software
US5530827A (en) Data management system for programming-limited type semiconductor memory and IC memory card employing data save/erase process with flag assignment
US5933846A (en) Rewritable ROM file device having read/write buffer access control via copy of rewritable area
JP4822440B2 (ja) 不揮発性メモリシステムのための内部メンテナンススケジュール要求
JPH09185551A (ja) 半導体記憶装置
US10579300B2 (en) Information handling system firmware persistent memory runtime reclaim
WO2006067923A1 (ja) メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム及びメモリ制御方法
JP2005242897A (ja) フラッシュディスク装置
US7149844B2 (en) Non-volatile memory device
US6687815B1 (en) Method and apparatus for storing non-volatile configuration information
CN109690465B (zh) 一种存储设备管理方法及用户终端
US5748537A (en) Method and apparatus for storing items in flash memory
JP2004206381A (ja) 不揮発性メモリの記憶方法及び記憶装置
US20020169923A1 (en) Microcomputer with reduced memory usage and associated method
JP2011175361A (ja) データ記憶装置及びデータ記憶方法
JP2000276461A (ja) マイクロコンピュータ
JPH06222986A (ja) メモリ制御装置
JPH11120085A (ja) 制御システム
KR20010056103A (ko) 시스템에서 부팅 및 수행 프로그램을 공유하는 플래시메모리 및 그 메모리 갱신 방법
JP2002244935A (ja) 記憶管理装置および記憶管理方法
JP2021140464A (ja) ストレージ装置、ストレージシステム及び方法
JPH10312693A (ja) 記憶装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040818

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20060720