JPH09319645A - 不揮発性半導体記憶装置 - Google Patents

不揮発性半導体記憶装置

Info

Publication number
JPH09319645A
JPH09319645A JP15304896A JP15304896A JPH09319645A JP H09319645 A JPH09319645 A JP H09319645A JP 15304896 A JP15304896 A JP 15304896A JP 15304896 A JP15304896 A JP 15304896A JP H09319645 A JPH09319645 A JP H09319645A
Authority
JP
Japan
Prior art keywords
data
size
block
writable
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.)
Pending
Application number
JP15304896A
Other languages
English (en)
Inventor
Ryosuke Fujio
良輔 藤尾
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP15304896A priority Critical patent/JPH09319645A/ja
Priority to US08/862,373 priority patent/US6189081B1/en
Priority to KR1019970020578A priority patent/KR100320897B1/ko
Publication of JPH09319645A publication Critical patent/JPH09319645A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Read Only Memory (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【課題】電気的に書き換え可能な不揮発性半導体記憶装
置への書き込みデータの割付を効率的に行う。 【解決手段】不揮発性半導体記憶装置へデータが書き込
まれるときに、書き込まれるデータのサイズと消去ブロ
ックのサイズとを比較し(図1の18)、消去ブロック
の大きさ分のデータは、書き込み可能な消去ブロックに
書き込み、消去ブロックの大きさに満たない分のデータ
は書き込み可能な領域に書き込むことをそれぞれ割り付
ける手段を有する(図1の1A〜1D)。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は不揮発性半導体記憶
装置に関し、特に不揮発性半導体記憶装置のデータの書
き込み及び書き換え方法に関する。
【0002】
【従来の技術】従来、パーソナル・コンピュータ(以下
「パソコン」と略記する)などにおいて外部記憶装置と
して使用されるディスク装置は、ハード・ディスク装
置、フロッピー・ディスク装置、光磁気ディスク装置な
どが主流であるが、近年半導体メモリを用いた半導体記
憶装置の普及も著しい。半導体記憶装置は、記憶容量あ
たりのコストは前述のディスク装置に対して未だ高いと
いう欠点を有している反面、機構部品が少ない、小型軽
量化が容易である。耐湿性が高い、耐衝撃性が高い、高
速である、低消費電力であるという利点をもち、複数の
半導体メモリをカード形状の筐体に収納したメモリ・カ
ードとして携帯機器へ適用などが有望である。
【0003】半導体記憶装置を構成する半導体メモリ
は、RAM(Random Access Memor
y)とROM(Read Only Memoryとに
大きく分類される。RAMは揮発性であり、記憶された
データを保持し続けるにはバック・アップ用の電源が必
要となり消費電力が増える。一方、ROMは不揮発性で
データの保持にバック・アップ用の電源を必要としない
ため低消費電力を実現する上では最適である。ROMに
はMROM(Mask ROM)、UVEPROM(U
ltra−Violet Erasable and
Programmable ROM)、EEPROM
(Electrically Erasable an
d Programmable ROM)がある。
【0004】このうちMROMはコストが安いが、デー
タの書き換えが不可能なためにその用途は限定される。
またUVEPROMはデータの書き換えは可能である
が、データの書き換えに先だった旧データの消去時に紫
外線照射が必要であり、MROMほどではないが用途が
限定される。EEPROMは紫外線照射を必要とせずに
電気的にデータの書き換えが可能であることから半導体
ディスクに適したメモリであるといえる。
【0005】EEPROM(電気的に消去及び書き換え
可能な読み出し専用メモリ)にはバイト単位でデータを
消去するバイト消去型EEPROMと、チップ内の全デ
ータを一括またはバイト単位よりも大規模なブロック単
位で消去するFlash型EEPROM(以下「フラッ
シュ・メモリ」という)とがある。
【0006】バイト消去型EEPROMはフラッシュ・
メモリに比べ、バイト単位で消去するための消去回路構
成が複雑、素子数が増えるなどのデメリットを有するた
めに、半導体記憶装置の大容量化を実現するにはフラッ
シュ・メモリほど適していないといえる。また、チップ
内のデータを一括に消去してしまうタイプのフラッシュ
・メモリでは、一部分のデータの書き換えを行うような
時でも書き換える必要のないデータを待避させるため
の、フラッシュ・メモリと同一な容量をもつバッファ・
メモリが必要になってしまうことと、書き換え時間が長
くなるといったデメリットがあるために、近年はブロッ
ク単位で消去可能なフラッシュ・メモリが半導体記憶装
置に搭載されることが多い。
【0007】以下にフラッシュ・メモリを用いた不揮発
性半導体記憶装置(以下「半導体ディスク」という)の
動作について説明する。
【0008】図6は、フラッシュ・メモリを用いた半導
体ディスクを含む携帯機器装置のシステム全体の構成概
要を、図7には半導体ディスクの構成概要を、図8には
フラッシュ・メモリの構成概要をそれぞれ示す。
【0009】図6に示すように、半導体ディスク20
は、バス24を介し、コネクタなどの外部と電気的に接
続可能な手段(不図示)により携帯機器装置21に接続
されている。半導体ディスク20は、一般的には、図7
に示すように、1個、またはそれ以上の個数のフラッシ
ュ・メモリ30a〜30c(参照符号30でも指示す
る)と、半導体ディスク20からのデータの読み出し、
半導体ディスクへのデータの書き込みや書き換えといっ
た携帯機器装置21と半導体ディスク20との間のデー
タ処理全般を制御するカード・コントローラ31と、こ
れらデータを一時的に格納するためのバッファRAM3
3とから構成されている。
【0010】半導体ディスク20に搭載されているフラ
ッシュ・メモリ30は、図8に示すように、チップ内を
1つ、またはそれ以上の個数のブロック40a〜40f
(参照符号40でも指示する)に分割されており、これ
らのブロック40は全体の動作を制御する全体制御回路
42と、各ブロックに対応するブロック制御回路41a
〜41f(参照符号41でも指示する)の制御のもと
で、ブロック単位でデータを消去することができるよう
になっている。なお、全体制御回路42と、ブロック制
御回路41の詳細な制御内容の記載は省略する。
【0011】例えば、16Mビットのフラッシュ・メモ
リなどでは、64Kバイトの1消去ブロックとしている
ものや、8Kバイトを1消去ブロックとしているものな
どがある。
【0012】一般的に、携帯機器装置21と半導体ディ
スク20との間は、特定のインタフェース(例えばディ
スク・インタフェース)によって接続されており、両者
の間のデータのやりとりは、512バイト単位とするセ
クタ単位で行われるのが一般的である。
【0013】次に、ディスク装置類におけるデータの管
理形態について説明する。ハード・ディスクやフロッピ
ー・ディスク装置のディスク上のデータ構造は、それを
サポートするOS(Operating Syste
m)によって異なるが、基本的には同様である。ここで
は、MS−DOS(Microsoft社、DiskO
perating System)の例に基づいて説明
する。
【0014】MS−DOSでは、図9に示すように、デ
ィスク上の記憶領域50を、予約領域51、FAT(F
ile Allocation Table;ファイル
アロケーションテーブル)領域52、ディレクトリ領域
53、データ領域54の4つの領域に分割している。ま
た、ディスクの最小記憶単位はセクタである。
【0015】ユーザがディスク装置を使用するときに
は、ユーザはファイルがディスク上のどの位置にあるか
を知る必要はなく、DOSが全てを管理している。DO
Sは、指定されたファイル名が与えられると、ディスク
上のディレクトリ領域53とFAT領域52のデータに
基づいて、そのファイルが格納されているデータ領域5
4上の位置を知ることができるようになっている。
【0016】この方法を図10に示す。図10を参照し
て、ディレクトリ領域53には、各々のファイルに対す
る、そのファイル名60と、そのファイルがディスク上
のどの位置に存在するかを示すFATエントリ番号61
と、が記憶されている(実際にはその他のファイル属性
情報なども記憶されているが、主題に直接関係しないた
めここでは省略する)。
【0017】DOSはファイルを作成するとき、セクタ
単位ではなく、セクタと同一、または複数セクタ分のサ
イズのクラスタ単位でデータ領域54を割り当てる。従
って、DOSはデータ領域54をクラスタ63a〜63
d(参照符号63で指示する)に分割して管理する。
【0018】ファイルは、そのサイズが小さいと1クラ
スタで済むが、サイズが大きいと複数のクラスタが必要
となる。このとき、ファイルが格納されているクラスタ
は必ずしも連続しているとは限らず、格納されているク
ラスタの連続性はFATエントリ番号61によって示さ
れている。FAT領域52はエントリ62a〜62d
(参照符号62で指示する)と呼ばれる単位の集合であ
り、各エントリ62はデータ領域54のクラスタと1対
1対応とされる。
【0019】一般的にFAT領域52のエントリ番号0
00と001は未使用な領域で、有効なエントリは00
2から始まる。FAT領域52のエントリ番号002は
データ領域54の第1番目のクラスタに対応し、エント
リ番号003は第2番目のクラスタに対応している。
【0020】FAT領域52内の各エントリ62はクラ
スタ使用状況や格納されているファイルの連鎖状況を示
している。エントリ値000は対応するクラスタが空き
であることを示し、FFFはファイルの終了を示し、0
02〜FF7の値はファイルの記憶に1クラスタ以上を
要し、かつその次のクラスタ番号を示している。
【0021】例えば、図10中でFile−Aをアクセ
スするときには、まず、File−Aを検索し、Fil
e−Aに対応するFATエントリ番号61が003を認
識する。これは、File−AはFATエントリ003
に対応するクラスタに格納されていることを示す。
【0022】次に、FAT領域52のエントリ番号00
3のデータを調べると、005となっている。これはF
ile−Aが格納されている次のクラスタはFATエン
トリ番号005に対応するクラスタであることを示す。
【0023】引き続きエントリ番号005のデータを調
べるとFFFであり、これは先に述べたように、ファイ
ルの終了を示す。すなわち、File−AはFATエン
トリ番号003に対応するクラスタから始まり、エント
リ番号003と、005に対応する2つのクラスタに格
納されていることになる。
【0024】次に、図11に示した流れ図を参照して、
従来の半導体ディスクの動作について説明する。
【0025】例として、消去ブロック40のサイズが5
12バイト(1セクタ)であり、クラスタ63の単位を
1セクタに設定しているフラッシュ・メモリ30で構成
されるような半導体ディスク20を考えたときのデータ
の書き込み方法を説明する。半導体ディスク20に対し
て、携帯機器装置21からデータの書き込みコマンドが
発行されるとまず、カード・コントローラ31は書き込
みコマンドが発行されたことを認識し(ステップ7
0)、書き込みデータのサイズと書き込まれる領域(ま
たは番地)とを確認する(ステップ71)。
【0026】次にカード・コントローラ31はデータが
書き込まれる領域のFAT領域52のFATエントリ6
2のデータ値より、書き込み動作が新規の書き込みか、
あるいは書き換えであるかを判断する(ステップ7
2)。ここで、書き換え動作である時には、カード・コ
ントローラ31はデータの書き込みに先だって、該当す
るクラスタ54の消去命令をフラッシュ・メモリ30に
対して発行し(ステップ73)、消去完了後に書き換え
データの書き込みを行い(ステップ74)、動作を終了
する(ステップ77)。
【0027】一方、新規の書き込み動作であるときは、
カード・コントローラ31はフラッシュ・メモリ30の
該当するクラスタ54への書き込みを行い(ステップ7
5)、書き込まれたクラスタに対応するFAT領域52
のFATエントリ62のデータを更新し(ステップ7
6)、動作を終了する(ステップ77)。
【0028】このような動作を実現する一つの方法とし
て、たとえば特開平4−84216号公報には、フラッ
シュ・メモリ30の消去ブロック40のサイズをデータ
の書き込みや読み出し単位であるセクタ、またはファイ
ル割り当ての単位であるクラスタと同一なサイズとして
半導体ディスクを構成することにより、バッファRAM
33の容量を小さくするか、または不要とすることと、
データの書き換え速度の向上をはかり、半導体ディスク
の高速化を実現するようにした構成が提案されている。
また特開平1−298600号公報には電気的に書き込
み及び消去可能な不揮発性半導体記憶装置において、独
立的に書き込み及び消去可能な複数のブロックのうち消
去すべき任意数のブロックを選択するブロック選択信号
を出力するブロック選択回路と、ブロック選択信号を記
憶して消去すべき任意数のブロックを選択する記憶回路
と、選択されたブロックに対してブロック消去信号を加
えるブロック消去回路を備えた半導体記憶装置の構成が
提案されている。
【0029】
【発明が解決しようとする課題】上記した従来技術は下
記記載の問題点を有している。
【0030】第1の問題点は、フラッシュ・メモリを使
用した従来の不揮発性半導体記憶装置では記憶容量の大
容量化が困難であるということである。
【0031】この理由は、データの読み出し単位である
セクタをフラッシュ・メモリの1消去ブロックに対応さ
せると、フラッシュ・メモリの単位記憶容量あたりの消
去ブロック数が増大し、各消去ブロックを個別に制御す
るための制御回路が複雑になり、かつ構成素子数が増え
ることによる。
【0032】また第2の問題点は、記憶できるファイル
数が少なくなるということである。
【0033】この理由は、上記した第1の問題点を解決
するために、フラッシュ・メモリの1消去ブロックのサ
イズを、データの読み出し単位であるセクタのサイズで
はなく、ファイル割り当て単位であるクラスタのサイズ
に対応させようとしたとき、クラスタのサイズが大きす
ぎると、1クラスタ・サイズに満たない容量のファイル
の格納にも1クラスタが割り当てられることになり、記
憶領域に無駄が生じるためである。
【0034】さらに第3の問題点は、フラッシュ・メモ
リの消去ブロックの書き換え回数が必要以上に増えてし
まい、フラッシュ・メモリの特性劣化を早める可能性が
あることである。
【0035】この理由は、フラッシュ・メモリには書き
換え回数の寿命があり、この回数を超えると、デバイス
の破壊には至らないが、書き込みや消去のスピードが著
しく遅くなる傾向がある(例として、フラッシュ・メモ
リの書き換え回数の寿命は1K回から1000K回程度
とされる)。フラッシュ・メモリを記憶装置として使用
するとき、データの記憶に多くの消去ブロックを要する
と、データの書き換え時に消去を必要とするブロックの
数がふえることと、特定の消去ブロックに対して書き換
え操作が集中すると、そのブロックの書き換え回数が他
のブロックよりも早く寿命回数に達していまい、記憶装
置全体としての書き込み特性を遅めてしまうことになる
からである。
【0036】従って、本発明は、上記事情に鑑みてなさ
れたものであって、その目的は、データの書込み時割り
当てられる不揮発性半導体記憶装置内の消去ブロック数
を最小に抑えることでデータ処理効率の向上を図るよう
にした不揮発性半導体記憶装置を提供することにある。
【0037】また、本発明の他の目的は、データの書き
換え時に発生する不揮発性半導体記憶装置内の消去ブロ
ックの消去回数を軽減して、書き換え回数に寿命のある
不揮発性半導体記憶装置の信頼性の向上を図ることにあ
る。
【0038】
【課題を解決するための手段】前記目的を達成するた
め、本発明の不揮発性半導体記憶装置は、不揮発性半導
体記憶装置へデータの書き込む際に、書き込みデータの
サイズと、消去ブロックのサイズ及び/又は消去ブロッ
ク中の書き込み可能な領域のサイズの情報と、を比較
し、消去ブロックの大きさ分の書き込みデータは書き込
み可能な消去ブロックに書き込み、該消去ブロックの大
きさに満たない分のデータは書き込み可能な領域に書き
込むようにして、データの大きさに対する最適な格納領
域を割付する手段を備えたことを特徴とする。
【0039】本発明によれば、不揮発性半導体記憶装置
に対してデータの書き込みを行う時に、データのサイズ
に応じたブロックの割り当てが行われ、データの書き換
え時に発生するブロックの消去回数を軽減することがで
きる。
【0040】
【発明の実施の形態】本発明の実施の形態について図面
を参照して以下に説明する。図2は、本発明の実施の形
態の構成を示した図である。
【0041】図2を参照すると、本発明の実施の形態
は、電気的に書き込み及び消去が可能であり、内部がひ
とつ、もしくは複数のブロックに分割され、分割された
ブロック単位でデータの消去が行われるフラッシュ・メ
モリ30と、電源投入後にカード・コントローラ31の
制御により、フラッシュ・メモリ30の各消去ブロック
毎のデータ格納情報がフラッシュ・メモリ30から転送
され、外部からのデータ書込時にカード・コントローラ
31が書き込みデータの割付を行うときに参照するため
のデータ管理情報が格納されている管理情報用RAM3
2と、外部とのデータの入出力時にデータを一時的に蓄
えるバッファRAM33と、これら全てを収納し、外部
との電気的接続手段(コネクタ)をもつ半導体ディスク
20と、を備えている。
【0042】本発明の実施の形態の動作について、図1
の流れ図及び図2を参照して説明する。
【0043】まず、半導体ディスク20の電源投入後
に、カード・コントローラ31は半導体ディスク20内
のフラッシュ・メモリ30に対して、各消去ブロック毎
のデータ管理情報を管理情報用RAM32に転送する命
令を発行する(ステップ10)。ここで、各消去ブロッ
ク毎の管理情報は、消去ブロック毎に個別に格納されて
いても、ある消去ブロックに全ての消去ブロック分の管
理情報を格納されていてもかまわない。
【0044】次に半導体ディスク20に対してデータの
書き込みが要求されると、カード・コントローラ31
は、まず、書き込みコマンドが発行されたことを確認し
(ステップ11)、書き込まれるデータのサイズ(セク
タ数)と、指定された領域を確認し(ステップ12)、
書き込みデータをバッファRAM33に取り込む(ステ
ップ13)。
【0045】次にカード・コントローラ31は管理情報
用RAM32に格納されている各フラッシュ・メモリ3
0の消去ブロック毎のデータ格納情報を参照し(ステッ
プ14)、データが書き込まれる領域(クラスタ)の状
態を確認し(ステップ15)、新規のデータ書き込みで
あるのか、データの書き換えであるのかを確認する(ス
テップ16)。
【0046】ここで、データが書き込まれるクラスタに
すでにデータが記憶されていたとき、すなわちデータの
書き換えである場合に限っては、従来の技術では、該当
するクラスタが含まれるブロックの消去を経て、消去完
了後にデータを書き込むような手順をふむことになる
が、このような手順では高速化が図れない。
【0047】そこで、本発明の実施の形態においては、
カード・コントローラ31は、管理情報用RAM32に
格納されているデータ管理情報を参照して、まず、書き
込み指定されたクラスタに該当するFATエントリを、
無効を示すデータ値に、書き換える(ステップ17)。
【0048】一方、新規の書き込みである場合には、上
記ステップ17のFATエントリの無効化操作は必要な
い。
【0049】次にカード・コントローラ31は、書き込
まれるデータのサイズと、フラッシュ・メモリ30の消
去ブロックのサイズと、の大小比較を行う(ステップ1
8)。
【0050】ステップ18の大小比較判定において、書
き込まれるデータのサイズが消去ブロックのサイズより
も大きい場合には、カード・コントローラ31はデータ
の格納に要する消去ブロックの数と、書き込みデータの
サイズから、先に算出した消去ブロックの整数倍のサイ
ズを減じた、残りのデータのサイズと、を算出する(ス
テップ19)。ここで、もし、書き込まれるデータのサ
イズが、消去ブロックの整数倍のサイズであるときは、
上記残りのデータのサイズは、0ということになる。
【0051】一方、ステップ18において、書き込まれ
るデータのサイズが消去ブロックのサイズに満たないと
きは、消去ブロック数は0として算出され、書き込まれ
るデータのサイズそのものが残りのデータのサイズとし
て算出されることになる。
【0052】次にカード・コントローラ31は、管理情
報用RAM32に格納されている管理情報テーブルを参
照し、書き込み可能な消去ブロックを検索するととも
に、書き込みデータのサイズが1消去ブロックのサイズ
に満たない場合や、消去ブロックのサイズ整数倍を減じ
た残りのサイズが0でないときは、クラスタの先頭番地
を検索する(ステップ1A)。
【0053】次にカード・コントローラ31は、前記残
りのデータのサイズが検索された1消去ブロック中の書
き込み可能なクラスタのサイズに格納可能であるかを判
断する。もし、前記クラスタのサイズが前記残りのデー
タのサイズより小さい場合、カード・コントローラ31
は再び管理情報用RAM32に格納されている管理情報
テーブルを参照し、書き込み可能な次のクラスタを検索
することを繰り返し(ステップ1B)、上述の残りのデ
ータのサイズよりも大きいサイズのクラスタを検索する
(ステップ1C)。
【0054】引き続き、カード・コントローラ31は、
前記ステップ1Cによって抽出された、クラスタの中か
ら、前記残りのデータのサイズに最も近い(等しいのが
一番望ましい)クラスタを抽出する(ステップ1D)。
【0055】これら一連の操作を経て、カード・コント
ローラ31は、書き込みデータが格納される新規の消去
ブロック30と書き込み可能なクラスタを算出する。
【0056】この後、カード・コントローラ31は、バ
ッファRAM33から、検索された消去ブロックまたは
クラスタに対して、データの書き込みを行うためにデー
タの転送を開始する(ステップ1E)。
【0057】そして、バッファRAM33から読み出さ
れたデータを指定された領域に書き込む(ステップ1
F)。このとき、書き込みデータの格納に、消去ブロッ
クとクラスタを併用するとき、データの書き込みをどち
らから行うかは任意である。
【0058】カード・コントローラ31は、1クラスタ
への書き込みが完了する毎に、管理情報用RAM32に
格納されている管理情報テーブル中の書き込まれたクラ
スタに対応するFATエントリのデータ値を更新し(ス
テップ1G)、全ての書き込みデータに対するFATエ
ントリのデータ値の更新が完了すると動作を終了する
(ステップ1H)。
【0059】
【実施例】次に本発明の実施例について図面を参照して
説明する。
【0060】図2を参照すると、本発明の実施例は、電
気的に書き込み及び消去が可能であり、内部が複数の6
4Kバイトのブロックに分割され、分割されたブロック
単位でデータの消去が行われるフラッシュ・メモリ30
と、電源投入後にカード・コントローラ31の制御によ
り、フラッシュ・メモリ30の各消去ブロック毎のデー
タ格納情報がフラッシュ・メモリ30から転送され、外
部からのデータ書込時にカード・コントローラ31が書
き込みデータの割付を行うときに参照するためのデータ
管理情報が格納されている管理情報用RAM32と、外
部とのデータの入出力時にデータを一時的に蓄えるバッ
ファRAM33と、これら全てを収納し、外部との電気
的接続手段(コネクタ)をもつ半導体ディスク20とか
ら構成される。
【0061】次に、図3及び図4を参照して本実施例の
動作を説明する。なお、図3及び図4は単に図面作成の
都合上、分図されたものである。
【0062】図3及び図4は、本実施例の動作を示すフ
ロー・チャートである。まず、電源投入後に、カード・
コントローラ31の制御によって、フラッシュ・メモリ
30の消去ブロック31と消去ブロック31中に存在す
る16個のクラスタに関する管理情報が管理情報用RA
M32に転送される(ステップ90)。ただし、ここで
管理情報用RAM32を有していないような場合はこの
操作は省略され、カード・コントローラ31はフラッシ
ュ・メモリ30の管理情報の記憶領域を直接アクセスす
ることになる。
【0063】次に書き込みコマンドが発行されると、カ
ード・コントローラ31はまず書き込みコマンドが発行
されたことを認識し(ステップ91)、書き込まれるデ
ータのサイズが100Kバイトであり、そのデータがF
ATエントリ番号61が100で始まるファイルのデー
タであることを確認する(ステップ92)。これらを認
識した後に、カード・コントローラ31はバッファRA
M33に対して、書き込みデータの取り込みを開始する
(ステップ93)。このとき、バッファRAM33はフ
ラッシュ・メモリ30の内部に存在していてもかまわな
い。
【0064】バッファRAM33に書き込みデータが取
り込まれている間に、カード・コントローラ31は管理
情報用RAM32をアクセスしてFATエントリ100
に対応するクラスタの状態を確認する(ステップ9
4)。
【0065】ここで、FATエントリ100に対応する
クラスタにはすでにデータが書き込まれていたので(ス
テップ95)、カード・コントローラ31はデータの新
規の書き込みではなく、書き換えであることを認識する
(ステップ96)。そこで、書き換えデータを新しいブ
ロックに割り付けるためにまず、カード・コントローラ
31は、管理情報用RAM32のFATエントリ100
の領域のデータ値を無効を示す値に変更する(ステップ
97)。
【0066】さらにカード・コントローラ31は、書き
込まれるデータのサイズが100Kバイト、すなわち消
去ブロックのサイズよりも大きいことを確認する(ステ
ップ98)。
【0067】引き続きカード・コントローラ31は10
0Kバイトの書き込みデータの格納には1つの消去ブロ
ック(64Kバイト)と、消去ブロックのサイズに満た
ない36Kバイトのデータに分割されることを算出する
(ステップ99)。
【0068】これをもとに、カード・コントローラ31
は管理情報用RAM32に格納されている管理テーブル
をアクセスし、書き込み可能な1つの消去ブロックと書
き込み可能なクラスタそれぞれの先頭番地を検索する
(ステップ9A)。
【0069】ここでは最初に検索された連続したクラス
タが36Kバイトよりも小さいために(ステップ9
B)、次のクラスタを検索している(ステップ9C)。
【0070】最終的に、カード・コントローラ31は、
36Kバイト以上の大きさの連続したクラスタを全て抽
出し(ステップ9D)、かつ、抽出されたクラスタの中
で36Kバイトに最も大きさの近い(同じであることが
最も望ましい)クラスタを選択する(ステップ9E)。
【0071】カード・コントローラ31は、このクラス
タと先に検索された1つの消去ブロックを書き込まれる
データの格納に割り当てることを決定し、バッファRA
M33に取り込まれている書き込みデータを読み出し
(ステップ9F)、抽出された消去ブロックとクラスタ
に書き込む(ステップ9G)。この間、1つのクラスタ
分に相当するデータの書き込みが完了する毎に、カード
・コントローラ31は書き込みが完了したクラスタに対
応する管理情報用RAM32のFATエントリのデータ
値を更新する(ステップ9H)。
【0072】そして、100Kバイト全てのデータの書
き込みが完了し、ファイルの最終クラスタに対応するF
ATエントリのデータ値の更新が完了することにより書
き込み動作は終了する(ステップ9I)。
【0073】以上が、データの書き込みに関する動作で
ある。
【0074】次に同じく図3及び図4を参照して、既に
書き込まれているデータの再割り付けの動作について説
明する。
【0075】上記ステップ91からステップ9Iに至る
操作を繰り返していくと、フラッシュ・メモリ30の中
のブロック、またはクラスタの状態は、(1)データが
格納されていず、書き込み可能である状態と、(2)有
効なデータが格納されている状態と、(3)データは格
納されているが、そのデータは別なブロック、またはク
ラスタに書き換えられており、対応するFATエントリ
には無効を示すデータ値が設定されている状態と、の3
つに分類される。
【0076】このまま上記ステップ91からステップ9
Iをさらに続けると、最終的には、無効なデータが増え
続け、書き込み可能な領域が無くなってしまうことにな
る。
【0077】これを回避するためには、適宜フラッシュ
・メモリ30に格納されているデータに対するデータの
再割り付けが必要である。
【0078】図4中の操作ステップ9Jからステップ9
Uは、データの再割り付けの動作を示すフロー・チャー
トである。
【0079】まず、カード・コントローラ31は、管理
情報用RAM32に格納されている管理テーブルを参照
し、FATエントリに無効を示すデータ値が設定されて
いる全てのクラスタを抽出し(ステップ9J)、さらに
抽出されたクラスタ数が多い消去ブロックを抽出する
(ステップ9K)。なお、この消去ブロックの抽出過程
においては、無効なクラスタ数のみに着目する以外に、
ブロックの消去回数のファクタを加味して判断すること
も任意である。
【0080】続いて、カード・コントローラ31は抽出
されたブロックの消去に先立ち、抽出されたブロック中
に存在する有効なクラスタのデータをバッファRAM3
3に書き込み(有効なデータを待避させる)(ステップ
9L)、ブロックを消去する(ステップ9M)。
【0081】ブロックの消去が完了後、カード・コント
ローラ31は消去されたブロックに対応するFATエン
トリのデータ値を書き込み可能であることを示す値に管
理テーブル上で更新する(ステップ9N)。これにより
書き込み可能なブロックが増加したことになる。
【0082】次に、カード・コントローラ31は、バッ
ファRAM33に格納されている有効なクラスタのデー
タを書き戻すために、前述した、データの書き込み動作
フローにおけるステップ9A〜ステップ9Eに相当す
る、書き込み可能なクラスタを検索し(ステップ9
P)、有効なクラスタの大きさに最も近い大きさ(同一
であることが最も望ましい)の書き込み可能なクラスタ
を割り付け(ステップ9Q)、上記ステップ9Fに対応
した、バッファRAMから有効なクラスタのデータを読
み出し(ステップ9R)、ステップ9Qで割り付けられ
たクラスタに書き込む(ステップ9S)。
【0083】そしてステップ9Hのように、割り付けら
れたクラスタへのデータの書き込みが完了する毎に、カ
ード・コントローラ31は管理情報用RAMに格納され
ている管理テーブル上の書き込まれたクラスタに該当す
るFATエントリのデータ値を更新し(ステップ9
T)、バッファRAM33に格納されている全ての有効
なクラスタ分のデータのFATエントリのデータ値の更
新が完了することによりデータの再割り付け操作は終了
する(ステップ9U)。
【0084】以上がデータの再割り付けに関する動作で
あり、この操作は電源投入中の任意の期間に行われるも
のとする。
【0085】更に、図4を参照して、管理情報用RAM
32に格納されている管理情報の、フラッシュ・メモリ
への書き戻しの動作について説明する。
【0086】図4のステップ9V〜ステップ9Wは、管
理情報用RAM32に格納されている管理情報をフラッ
シュ・メモリ30に書き戻す(ステップ9V)作業を行
うことにより、現状のデータの格納状態をフラッシュ・
メモリに反映させて終了する(ステップ9W)。
【0087】この作業は電源投入後から電源オフに至る
ある任意の期間にまとめて行われるのが望ましい。ま
た、管理情報用RAM32を所有していない場合は、本
操作はフラッシュ・メモリの管理情報格納領域に行われ
るものである。
【0088】以上のような操作により、書き込まれるデ
ータのサイズの大きさに応じた格納領域が割り当てられ
ることになる。
【0089】次に本発明の第2の実施例について説明す
る。本実施例が、上記第1の実施例と大きく異なる点
は、図2で示される不揮発性半導体記憶装置を構成して
いるフラッシュ・メモリ30の消去ブロック31の分割
形態が異なることである。本実施例においては、フラッ
シュ・メモリ30の消去ブロック31は64Kバイトで
あるものと、512バイトであるものとを併用した場合
の動作を図5に流れ図として示す。
【0090】まず、電源投入後、カード・コントローラ
31の制御によって、フラッシュ・メモリ30の消去ブ
ロック31と消去ブロック31中に存在する16個のク
ラスタに関する管理情報と、512バイトを消去ブロッ
ク、またはクラスタとするフラッシュ・メモリの各消去
ブロックに関する管理情報とが管理情報用RAM32に
転送される(ステップ100)。
【0091】次に書き込みコマンドが発行されると、カ
ード・コントローラ31はまず書き込みコマンドが発行
されたことを認識し(ステップ101)、書き込まれる
データのサイズが65Kバイトであり、そのデータがF
ATエントリ番号61が100で始まるファイルのデー
タであることを確認する(ステップ102)。
【0092】これらを認識した後に、カード・コントロ
ーラ31はバッファRAM33に対して、書き込みデー
タの取り込みを開始させる(ステップ103)。
【0093】バッファRAM33に書き込みデータが取
り込まれている間に、カード・コントローラ31は管理
情報用RAM32をアクセスしてFATエントリ100
に対応するクラスタの状態を確認する(ステップ10
4)。ここで、FATエントリ100に対応するクラス
タにはすでにデータが書き込まれていたので(ステップ
105)、カード・コントローラ31はデータの新規書
き込みではなく、書き換えであることを認識する(ステ
ップ106)。
【0094】そこで、書き換えデータを新しいブロック
に割り付けるためにまず、カード・コントローラ31は
管理情報用RAM32のFATエントリ100の領域の
データ値を無効を示す値に変更する(ステップ10
7)。さらにカード・コントローラ31は書き込まれる
データのサイズが65Kバイト、すなわち消去ブロック
のサイズよりも大きいことを確認する(ステップ10
8)。
【0095】引き続きカード・コントローラ31は65
Kバイトの書き込みデータの格納には64Kバイトを消
去ブロックとするフラッシュ・メモリ30の1つの消去
ブロックと、消去ブロックのサイズに満たない1Kバイ
トのデータに分割されることを算出する(ステップ10
9)。
【0096】ここで、残りの1Kバイトのデータの格納
に、64Kバイトを消去ブロックとするフラッシュ・メ
モリの空いているクラスタを割り当てると、4Kバイト
のクラスタに1Kバイトのデータを格納する事になり、
記憶領域としては3Kバイト分の無駄が生じることにな
る(ステップ10A)。
【0097】そこで、これら1Kバイトのデータの格納
には、消去ブロックのサイズ512バイトの消去ブロッ
クを2つ割り当てる方が効率的である(ステップ10
B)。これをもとに、カード・コントローラ31は管理
情報用RAM32に格納されている管理テーブルをアク
セスし、書き込み可能な64Kバイト消去ブロックと、
512バイト単位で書き込み可能なクラスタそれぞれの
先頭番地を検索する(ステップ10C)。
【0098】その結果、64Kバイトを単位とする1つ
の消去ブロックと、512バイトを単位とする2つの消
去ブロックに書き込まれるデータの格納に割り当てるこ
とを決定し、カード・コントローラ31はバッファRA
M33に取り込まれている書き込みデータを読み出し
(ステップ10D)、抽出された消去ブロックに書き込
む(ステップ10E)。
【0099】この間、1つのクラスタ分に相当するデー
タの書き込みが完了する毎に、カード・コントローラ3
1は書き込みが完了したクラスタに対応するFATエン
トリのデータ値を更新する(ステップ10F)。
【0100】そして、65Kバイト全てのデータの書き
込みが完了し、ファイルの最終クラスタに対応するFA
Tエントリのデータ値の更新が完了することにより書き
込み動作は終了する(ステップ10G)。
【0101】従って、第1の実施例と同様に、書き込ま
れるデータの大きさに応じた格納領域の割付ができると
共に、ブロックのサイズが互いに異なるようなフラッシ
ュ・メモリを搭載している場合にも本発明が適用できる
利点を持っている。
【0102】
【発明の効果】以上説明したように、本発明によれば、
不揮発性半導体記憶装置の中の消去ブロックの書き換え
回路を減らすことができるという効果を有し、消去ブロ
ックの書き換え回数に寿命がある不揮発性半導体記憶装
置の信頼性が向上する。
【0103】これは、本発明においては、不揮発性半導
体記憶装置に書き込まれるデータのサイズと、不揮発性
半導体記憶装置内の1消去ブロックのサイズと、書き込
み可能な消去ブロック内の空き領域のサイズとを照らし
合わせ、書き込みデータの格納に要する消去ブロック数
を最小にするように割り付けるからである。
【図面の簡単な説明】
【図1】本発明の実施の形態を説明するためのフローチ
ャートである。
【図2】本発明の実施の形態を示す概念構成を示す図で
ある。
【図3】本発明の第1の実施例を説明するためのフロー
チャートである。
【図4】本発明の第1の実施例を説明するためのフロー
チャートである。
【図5】本発明の第2の実施例を説明するためのフロー
チャートである。
【図6】フラッシュ・メモリを用いた半導体ディスクを
含む携帯機器装置のシステム全体の構成を示す概要図で
ある。
【図7】半導体ディスクの構成概要図である。
【図8】フラッシュ・メモリの構成概要図である。
【図9】ディスク上の記憶領域を示す概要図である。
【図10】ディスクにおけるファイル管理を示す概要図
である。
【図11】従来の不揮発性半導体記憶装置の動作を示す
フローチャートである。
【符号の説明】
20 半導体ディスク 21 携帯機器装置 22 CPU 23 主メモリ 24 バス 25 周辺付属機器類 30a〜30c フラッシュ・メモリ 31 カード・コントローラ 32 管理情報用RAM 33 バッファRAM 40a〜40f 消去ブロック 41a〜41f ブロック制御回路 42 全体制御回路 50 ディスク上の記憶領域 51 予約領域 52 FAT領域 53 ディレクトリ領域 54 データ領域 60 ファイル名 61 FATエントリ番号 62a〜62f FATエントリ 63a〜63d クラスタ

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】不揮発性半導体記憶装置へデータの書き込
    む際に、書き込みデータのサイズと、消去ブロックのサ
    イズ及び/又は消去ブロック中の書き込み可能な領域の
    サイズの情報と、を比較し、消去ブロックの大きさ分の
    書き込みデータは書き込み可能な消去ブロックに書き込
    み、該消去ブロックの大きさに満たない分のデータは書
    き込み可能な領域に書き込むようにして、データの大き
    さに対する最適な格納領域を割付する手段を備えたこと
    を特徴とする不揮発性半導体記憶装置。
  2. 【請求項2】電気的に書き込み及び消去可能な内部記憶
    素子を有する不揮発性半導体記憶装置において、 前記内部記憶素子は、互いに独立に書き込み及び消去可
    能なひとつ、もしくは複数のブロックに分割され、前記
    ブロックは更に一又は複数の記憶単位として分割可能と
    され、 前記記憶単位への書き込み及び読み出しデータを格納す
    る第2の記憶装置と、 前記記憶単位毎のデータの状態を示す情報記憶領域と、 前記情報記憶領域の情報の読み出し及び書き込みを制御
    する制御手段と、 を有し、 前記制御手段は、外部からデータの書き込み命令が入力
    されると、前記書き込み命令の入力を認識する手段と、 前記第2の記憶装置に書き込まれるデータを取り込む命
    令を出す手段と、 前記書き込まれるデータの大きさを算出する手段と、 前記書き込まれるデータ大きさと前記ブロックの大きさ
    とを比較し、前記書き込まれるデータの大きさに対し
    て、前記ブロックまたは前記記憶単位数を算出する手段
    と、 前記情報記憶領域の情報を参照して書き込み可能なブロ
    ックまたは記憶単位を検索する手段と、 前記書き込まれるデータのうち前記ブロックの大きさの
    整数倍のデータは前記検索された書き込み可能なブロッ
    クに、また、前記書き込まれるデータから前記ブロック
    の整数倍のデータを減じた残りのデータは、前記検索さ
    れた書き込み可能な記憶単位の大きさと比較され、前記
    検索された書き込み可能な記憶単位の大きさが、前記残
    りのデータの大きさに等しい、または前記残りのデータ
    の大きさより大きく、かつ最も近い場合に、前記残りの
    データは前記検索された書き込み可能な記憶単位に割り
    付ける手段と、 前記割り付けが完了後、前記第2の半導体装置に格納さ
    れている前記書き込まれるデータを読み出し、前記検索
    された前記書き込み可能なブロックまたは書き込み可能
    な記憶単位に書き込む手段と、 前記書き込まれるデータの前記検索された書き込み可能
    なブロック、または前記書き込み可能な記憶単位への書
    き込みが完了すると、前記情報記憶領域の情報を書き換
    える手段と、 を有することを特徴とする不揮発性半導体記憶装置。
  3. 【請求項3】前記制御装置が、前記書き込まれるデータ
    から前記書き込み可能なブロックの整数倍のデータを減
    じた前記残りのデータと前記検索された前記書き込み可
    能な記憶単位の大きさとを比較して前記検索された前記
    書き込み可能な記憶単位の大きさの方が小さい場合は、
    次の前記書き込み可能な前記記憶単位を検索する手段を
    有することを特徴とする請求項2記載の不揮発性半導体
    記憶装置。
  4. 【請求項4】前記ブロックまたは前記記憶単位がそれぞ
    れ任意の大きさであることを特徴とする請求項2記載の
    不揮発性半導体記憶装置。
  5. 【請求項5】前記情報記憶領域の情報が、前記制御装置
    の制御のもとで、読み出し及び書き込みが可能である第
    3の半導体記憶装置にまず格納され、前記不揮発性半導
    体記憶装置の電源投入中のある期間に前記第3の半導体
    記憶装置に格納された情報を前記情報記憶領域に書き込
    むことを特徴とする請求項2記載の不揮発性半導体記憶
    装置。
  6. 【請求項6】前記書き込み及び読み出しデータを格納す
    る第2の半導体記憶装置が、前記内部記憶装置内に含ま
    れることを特徴とする請求項2記載の不揮発性半導体記
    憶装置。
  7. 【請求項7】前記制御装置が、データの書き込み以外の
    時も、前記記憶素子内の前記書き込み可能なブロックま
    たは前記書き込み可能な記憶単位の検索を適宜行い、前
    記記憶素子内に既に割り付け、書き込まれているデータ
    を前記書き込み可能なブロックまたは前記書き込み可能
    な記憶単位に、再割り付けする、 ことを特徴とする請求項2記載の不揮発性半導体記憶装
    置。
JP15304896A 1996-05-24 1996-05-24 不揮発性半導体記憶装置 Pending JPH09319645A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP15304896A JPH09319645A (ja) 1996-05-24 1996-05-24 不揮発性半導体記憶装置
US08/862,373 US6189081B1 (en) 1996-05-24 1997-05-23 Non-volatile semiconductor storage with memory requirement and availability comparison means and method
KR1019970020578A KR100320897B1 (ko) 1996-05-24 1997-05-24 불휘발성반도체기억장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15304896A JPH09319645A (ja) 1996-05-24 1996-05-24 不揮発性半導体記憶装置

Publications (1)

Publication Number Publication Date
JPH09319645A true JPH09319645A (ja) 1997-12-12

Family

ID=15553846

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15304896A Pending JPH09319645A (ja) 1996-05-24 1996-05-24 不揮発性半導体記憶装置

Country Status (3)

Country Link
US (1) US6189081B1 (ja)
JP (1) JPH09319645A (ja)
KR (1) KR100320897B1 (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002055878A (ja) * 2000-08-09 2002-02-20 Sony Corp データ蓄積装置
JP2002091806A (ja) * 2000-09-20 2002-03-29 Olympus Optical Co Ltd ファイルシステム
JP2006107379A (ja) * 2004-10-08 2006-04-20 Sony Corp 情報処理装置及び情報処理方法、並びにコンピュータ・プログラム
JP2006172458A (ja) * 2004-12-15 2006-06-29 Samsung Electronics Co Ltd 不揮発性保存装置にマルチメディアデータをブロック単位で保存する方法及び装置
JP2008507756A (ja) * 2004-07-21 2008-03-13 サンディスク コーポレイション 最適化されたシーケンシャルなクラスタの管理のためのfat分析
US8230156B2 (en) 1997-08-08 2012-07-24 Kabushiki Kaisha Toshiba Method for controlling non-volatile semiconductor memory system
US8661186B2 (en) 2006-07-26 2014-02-25 Panasonic Corporation Nonvolatile memory device, access device, and nonvolatile memory system
JP2014044490A (ja) * 2012-08-24 2014-03-13 Toshiba Corp ホスト装置及びメモリデバイス
US8688895B2 (en) 2009-02-27 2014-04-01 Samsung Electronics Co., Ltd. Memory system and data management method of flash translation layer thereof
JP2016524770A (ja) * 2014-06-27 2016-08-18 華為技術有限公司Huawei Technologies Co.,Ltd. データをフラッシュメモリ装置に書き込む方法、フラッシュメモリ装置及び記憶システム

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6182188B1 (en) * 1997-04-06 2001-01-30 Intel Corporation Method of performing reliable updates in a symmetrically blocked nonvolatile memory having a bifurcated storage architecture
US6707982B2 (en) * 1997-05-30 2004-03-16 Canon Kabushiki Kaisha Image recording apparatus having computer readable recording medium for recording image data
KR100704998B1 (ko) * 1999-02-26 2007-04-09 소니 가부시끼 가이샤 기록방법, 관리방법 및 기록장치
JP3249959B2 (ja) * 1999-10-12 2002-01-28 株式会社ソニー・コンピュータエンタテインメント 可搬型記憶装置及びメモリカード
US6763428B1 (en) * 2000-08-02 2004-07-13 Symantec Corporation Methods and systems for performing push-pull optimization of files while file storage allocations are actively changing
US6823417B2 (en) 2001-10-01 2004-11-23 Hewlett-Packard Development Company, L.P. Memory controller for memory card manages file allocation table
JP2003296177A (ja) * 2002-04-03 2003-10-17 Sony Corp 記録装置および方法、記録媒体、並びにプログラム
US20030225962A1 (en) * 2002-05-31 2003-12-04 Hitachi, Ltd. Memory card and memory card system
US7003621B2 (en) * 2003-03-25 2006-02-21 M-System Flash Disk Pioneers Ltd. Methods of sanitizing a flash-based data storage device
DE10324996A1 (de) * 2003-06-03 2005-02-17 Giesecke & Devrient Gmbh Chipkarte mit wenigstens einer Applikation
FR2856490B1 (fr) * 2003-06-17 2005-10-07 Thales Sa Procede d'ecriture, de mise a jour et d'allocation memoire applique a l'ecriture de fichiers sur un support memoire tel qu'une carte a puce
US20050041453A1 (en) * 2003-08-22 2005-02-24 Brazis Paul W. Method and apparatus for reading and writing to solid-state memory
JP2005092659A (ja) * 2003-09-19 2005-04-07 Nec Electronics Corp データ書込・読出制御装置、及びデータ書込・読出制御方法
US7173852B2 (en) 2003-10-03 2007-02-06 Sandisk Corporation Corrected data storage and handling methods
JP3892851B2 (ja) * 2004-02-04 2007-03-14 株式会社東芝 メモリカード及び半導体装置
JP4157501B2 (ja) * 2004-06-30 2008-10-01 株式会社東芝 記憶装置
US7395384B2 (en) * 2004-07-21 2008-07-01 Sandisk Corproation Method and apparatus for maintaining data on non-volatile memory systems
US7562202B2 (en) * 2004-07-30 2009-07-14 United Parcel Service Of America, Inc. Systems, methods, computer readable medium and apparatus for memory management using NVRAM
US7315916B2 (en) * 2004-12-16 2008-01-01 Sandisk Corporation Scratch pad block
US7412560B2 (en) 2004-12-16 2008-08-12 Sandisk Corporation Non-volatile memory and method with multi-stream updating
US7386655B2 (en) 2004-12-16 2008-06-10 Sandisk Corporation Non-volatile memory and method with improved indexing for scratch pad and update blocks
US7366826B2 (en) * 2004-12-16 2008-04-29 Sandisk Corporation Non-volatile memory and method with multi-stream update tracking
US7395404B2 (en) * 2004-12-16 2008-07-01 Sandisk Corporation Cluster auto-alignment for storing addressable data packets in a non-volatile memory array
US7409489B2 (en) * 2005-08-03 2008-08-05 Sandisk Corporation Scheduling of reclaim operations in non-volatile memory
US20070041050A1 (en) * 2005-08-17 2007-02-22 Bing-Yu Wang Memory management method and system
US7529905B2 (en) * 2005-10-13 2009-05-05 Sandisk Corporation Method of storing transformed units of data in a memory system having fixed sized storage blocks
US7814262B2 (en) * 2005-10-13 2010-10-12 Sandisk Corporation Memory system storing transformed units of data in fixed sized storage blocks
TWI338856B (en) * 2007-03-09 2011-03-11 Ite Tech Inc A flash memory storing device and a data storing method thereof
KR101716348B1 (ko) * 2010-03-16 2017-03-15 삼성전자주식회사 메모리 시스템, 그것의 동작 방법, 그리고 그것을 포함하는 컴퓨팅 시스템
CN101216806B (zh) * 2008-01-17 2011-11-23 北京中星微电子有限公司 一种数据更新的方法和装置
JP2010020586A (ja) * 2008-07-11 2010-01-28 Nec Electronics Corp データ処理装置
KR101543431B1 (ko) * 2008-11-20 2015-08-11 삼성전자주식회사 불휘발성 메모리 시스템 및 그것의 액세스 방법
US9507670B2 (en) * 2010-06-14 2016-11-29 Veeam Software Ag Selective processing of file system objects for image level backups
CN103838526B (zh) * 2014-03-31 2017-12-01 广州华欣电子科技有限公司 一种存储芯片数据写入方法及装置
US10157103B2 (en) 2015-10-20 2018-12-18 Veeam Software Ag Efficient processing of file system objects for image level backups
US10976947B2 (en) * 2018-10-26 2021-04-13 Pure Storage, Inc. Dynamically selecting segment heights in a heterogeneous RAID group
US10936218B2 (en) * 2019-04-18 2021-03-02 EMC IP Holding Company LLC Facilitating an out-of-order transmission of segments of multi-segment data portions for distributed storage devices

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0271335A (ja) * 1988-06-23 1990-03-09 Kawasaki Steel Corp 集積回路
JPH06139140A (ja) * 1990-12-31 1994-05-20 Intel Corp 不揮発性半導体メモリのファイル構造
JPH07244992A (ja) * 1994-03-02 1995-09-19 Oki Electric Ind Co Ltd 半導体記憶装置とメモリ制御方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01298600A (ja) 1988-05-26 1989-12-01 Toshiba Corp 半導体記憶装置
JPH0484216A (ja) 1990-07-26 1992-03-17 Toshiba Corp 半導体ディスク装置のデータ消去方法
US5339411A (en) * 1990-12-21 1994-08-16 Pitney Bowes Inc. Method for managing allocation of memory space
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
JPH05313999A (ja) * 1992-05-12 1993-11-26 Nec Corp メモリ制御装置
JPH0659982A (ja) * 1992-08-10 1994-03-04 Hitachi Ltd 仮想記憶制御方法および装置
US5535369A (en) * 1992-10-30 1996-07-09 Intel Corporation Method for allocating memory in a solid state memory disk
JPH06250928A (ja) * 1993-02-24 1994-09-09 Matsushita Electric Ind Co Ltd 情報処理装置
US5584042A (en) * 1993-06-01 1996-12-10 International Business Machines Corporation Dynamic I/O data address relocation facility
JPH07219720A (ja) 1993-10-01 1995-08-18 Hitachi Maxell Ltd 半導体メモリ装置ならびにその制御方法
US5491810A (en) * 1994-03-01 1996-02-13 International Business Machines Corporation Method and system for automated data storage system space allocation utilizing prioritized data set parameters
JPH08115238A (ja) 1994-10-18 1996-05-07 Fuji Xerox Co Ltd ファイルシステム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0271335A (ja) * 1988-06-23 1990-03-09 Kawasaki Steel Corp 集積回路
JPH06139140A (ja) * 1990-12-31 1994-05-20 Intel Corp 不揮発性半導体メモリのファイル構造
JPH07244992A (ja) * 1994-03-02 1995-09-19 Oki Electric Ind Co Ltd 半導体記憶装置とメモリ制御方法

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8756401B2 (en) 1997-08-08 2014-06-17 Kabushiki Kaisha Toshiba Method for controlling non-volatile semiconductor memory system
US8230156B2 (en) 1997-08-08 2012-07-24 Kabushiki Kaisha Toshiba Method for controlling non-volatile semiconductor memory system
JP4609680B2 (ja) * 2000-08-09 2011-01-12 ソニー株式会社 データ蓄積装置
JP2002055878A (ja) * 2000-08-09 2002-02-20 Sony Corp データ蓄積装置
JP2002091806A (ja) * 2000-09-20 2002-03-29 Olympus Optical Co Ltd ファイルシステム
JP2008507756A (ja) * 2004-07-21 2008-03-13 サンディスク コーポレイション 最適化されたシーケンシャルなクラスタの管理のためのfat分析
JP4931810B2 (ja) * 2004-07-21 2012-05-16 サンディスク コーポレイション 最適化されたシーケンシャルなクラスタの管理のためのfat分析
US8607016B2 (en) 2004-07-21 2013-12-10 Sandisk Technologies Inc. FAT analysis for optimized sequential cluster management
JP4715155B2 (ja) * 2004-10-08 2011-07-06 ソニー株式会社 情報処理装置及び情報処理方法、並びにコンピュータ・プログラム
JP2006107379A (ja) * 2004-10-08 2006-04-20 Sony Corp 情報処理装置及び情報処理方法、並びにコンピュータ・プログラム
JP2006172458A (ja) * 2004-12-15 2006-06-29 Samsung Electronics Co Ltd 不揮発性保存装置にマルチメディアデータをブロック単位で保存する方法及び装置
US8661186B2 (en) 2006-07-26 2014-02-25 Panasonic Corporation Nonvolatile memory device, access device, and nonvolatile memory system
US8688895B2 (en) 2009-02-27 2014-04-01 Samsung Electronics Co., Ltd. Memory system and data management method of flash translation layer thereof
JP2014044490A (ja) * 2012-08-24 2014-03-13 Toshiba Corp ホスト装置及びメモリデバイス
JP2016524770A (ja) * 2014-06-27 2016-08-18 華為技術有限公司Huawei Technologies Co.,Ltd. データをフラッシュメモリ装置に書き込む方法、フラッシュメモリ装置及び記憶システム
US10203899B2 (en) 2014-06-27 2019-02-12 Huawei Technologies Co., Ltd. Method for writing data into flash memory apparatus, flash memory apparatus, and storage system

Also Published As

Publication number Publication date
KR100320897B1 (ko) 2002-11-20
KR970076215A (ko) 1997-12-12
US6189081B1 (en) 2001-02-13

Similar Documents

Publication Publication Date Title
JPH09319645A (ja) 不揮発性半導体記憶装置
JP6553566B2 (ja) メモリシステムおよび制御方法
US5860083A (en) Data storage system having flash memory and disk drive
US5717886A (en) Semiconductor disk device and memory management method
US5946714A (en) Semiconductor storage device utilizing address management tables and table state maps for managing data storage and retrieval
JP3942807B2 (ja) ブロックアラインメント機能付き半導体記憶装置
US7215580B2 (en) Non-volatile memory control
US5809558A (en) Method and data storage system for storing data in blocks without file reallocation before erasure
JP4238514B2 (ja) データ記憶装置
US9489301B2 (en) Memory systems
JP3588231B2 (ja) データ処理システム及びブロック消去型記憶媒体
KR100951107B1 (ko) 최적의 성능을 위한 파일 관리 방법
US8145829B2 (en) Flash memory device capable of preventing read disturbance
JPWO2005103903A1 (ja) 不揮発性記憶システム
US20070033325A1 (en) Non-volatile memory with scheduled reclaim operations
JP2003308241A (ja) データ記憶装置
WO2006098212A1 (ja) メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びデータ書き込み方法
JP2006285669A (ja) ホスト機器
WO2005124530A2 (en) Method for controlling memory card and method for controlling nonvolatile semiconductor memory
JPH08147202A (ja) 書換え可能なromファイル装置
WO1999030239A1 (fr) Memoire et procede d'acces
JP2004295865A (ja) 自動ブーティングシステム及び自動ブーティング方法
CN110362499A (zh) 电子机器及其控制方法、计算机系统及其控制方法以及主机的控制方法
JPH0484216A (ja) 半導体ディスク装置のデータ消去方法
WO2007105688A1 (ja) メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20000321