JPH1091490A - フラッシュメモリを利用した記憶装置 - Google Patents

フラッシュメモリを利用した記憶装置

Info

Publication number
JPH1091490A
JPH1091490A JP24212496A JP24212496A JPH1091490A JP H1091490 A JPH1091490 A JP H1091490A JP 24212496 A JP24212496 A JP 24212496A JP 24212496 A JP24212496 A JP 24212496A JP H1091490 A JPH1091490 A JP H1091490A
Authority
JP
Japan
Prior art keywords
data
area
flash memory
history information
storing
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
JP24212496A
Other languages
English (en)
Inventor
Haruaki Kanbara
春明 神原
Shigemi Kahara
成美 花原
Takahiro Yamashita
隆弘 山下
Masaya Amisaki
真哉 網崎
Isao Umezawa
功 梅沢
Fumitaka Urakawa
文隆 浦川
Koji Maeda
浩司 前田
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.)
Tokyo Sanyo Electric Co Ltd
Sanyo Electric Co Ltd
Original Assignee
Tokyo Sanyo Electric Co Ltd
Tottori Sanyo Electric Co Ltd
Sanyo Electric Co 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 Tokyo Sanyo Electric Co Ltd, Tottori Sanyo Electric Co Ltd, Sanyo Electric Co Ltd filed Critical Tokyo Sanyo Electric Co Ltd
Priority to JP24212496A priority Critical patent/JPH1091490A/ja
Publication of JPH1091490A publication Critical patent/JPH1091490A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Read Only Memory (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【課題】 NAND型のフラッシュメモリにおいてもデ
ータ更新を短時間で行なえるようにする。 【解決手段】 データを格納するためのデータエリア5
と、該データエリアの各々に対応付けられ、上記データ
エリア個々の論理アドレスを格納するアロケーションエ
リア6と、該エリア6に格納された論理アドレスの格納
履歴情報を格納する履歴情報エリア7とをフラッシュメ
モリ3内に形成する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はフラッシュメモリを
利用した記憶装置に関する。
【0002】
【従来の技術】フラッシュメモリはバッテリバックアッ
プなしに半永久的にメモリ内容を保持可能であり、か
つ、アクセスに関しては半導体メモリと同様に電気的に
行なえるため、FD(フロッピィディスク)やHD(ハ
ードディスク)等のディスク型の記憶装置に換わる記憶
装置として期待されている。
【0003】しかし、フラッシュメモリのデータ消去は
最低でも数Kバイト単位で行わなければならず、1バイ
トのデータを消去又は変更する際には、まず変更対象と
なる1バイトを含む数Kバイトのデータを半導体RAM
等の別のメモリに待避した後、上記数Kバイトの領域を
消去し、その後待避した数Kバイトのデータをフラッシ
ュメモリ上に書込まなければならず、時間がかかるとい
う問題があった。
【0004】そこで、米国特許第5,404,485号
明細書には、フラッシュメモリ中のデータを格納すべき
データエリア毎に対応するアロケーションエリアを設
け、このアロケーションエリアに対応するデータエリア
の論理アドレス又は更新済であることを示すデータを格
納可能としておき、データエリア中の既格納データに対
する書替は、この既格納データエリアに対して書替処理
を行なうのではなく、空きのデータエリアに新規データ
を書込み、このデータエリアと対応するアロケーション
エリアに上記既格納データの論理アドレスを書込むと共
に既格納データに対応したアロケーションエリアのデー
タを更新済であることを示すデータに書替えることによ
りデータエリアの書替処理を省略することによりデータ
更新速度を向上する方法が開示されている。
【0005】
【発明が解決しようとする課題】しかし、この米国特許
に開示された方法は、消去単位は数Kバイトであるが、
データの書き込みは1バイト毎に行なえる所謂NOR型
と称されるフラッシュメモリを対象としているものであ
り、書込み単位が数百バイトとなるNAND型のフラッ
シュメモリには適用できないのである。
【0006】即ち、フラッシュメモリでは、NOR型、
NAND型共に電気的に無チャージ状態の論理「1」か
らチャージ状態の論理「0」への変更は、チャージ状態
から無チャージ状態にする所謂「データ消去」に比して
容易に行なえるという特徴があり、従って、上記更新済
を示すデータを例えばオール「0」のデータとして規定
しておけば、NOR型ではアロケーションエリアの論理
アドレスデータをオール「0」の更新済データに変更す
ることは容易に行なえる。しかし、NAND型では、1
バイト単位での書込みが行なえないため、上記米国特許
に記載の発明は採用できないのである。
【0007】
【課題を解決するための手段】本発明は上述の課題に鑑
みてなされたもので、その基本的な特徴は、データを格
納するための複数のデータエリアと、該データエリアの
各々に対応付けられ、上記データエリア個々の論理アド
レスを格納するための複数のアロケーションエリアと、
上記各データエリアに対応付けられ、各データエリアと
対応する上記アロケーションエリアに格納された論理ア
ドレスの格納履歴情報を格納するため複数の履歴情報エ
リアとをフラッシュメモリ内に形成したことにある。
【0008】
【発明の実施の形態】図1は、本発明を適用したシステ
ムの主要回路構成を示すブロック図であり、マイクロコ
ンピュータからなる主制御部1は内蔵の制御プログラム
に基づいて例えば半導体ランダムアクセスメモリRAM
2に対するアクセスを行なったり、フラッシュメモリ3
を制御するフラッシュメモリ制御部4をコントロールす
る。
【0009】本実施例が対象とするフラッシュメモリ3
は、例えば図2に示す如く(512+16)バイトから
なるブロック単位での書込み及び8ブロック(4.12
5Kバイト)を1単位とする単位毎の消去しか行なえな
いNAND型である。また、上記各ブロックには図3に
模式的に示す如く512バイトのデータが格納されるデ
ータエリア5、2バイトの論理アドレスを格納するアロ
ケーションエリア6、2バイトの同一の論理アドレスが
格納された回数を示す情報が格納される履歴情報エリア
7に分割され、残りの12バイトはこのECCデータ等
の格納エリア8として利用される。
【0010】フラッシュメモリ制御部4は、主制御部1
の制御の下で供給されたアドレスデータや新規データに
基づいて上記フラッシュメモリ3へのデータ読出・書込
を行なうもので、専用のゲートアレイやワンチップマイ
コンで構成される。
【0011】次に本実施例の動作について説明する。図
4はフラッシュメモリ制御部4のフラッシュメモリ3へ
のデータ書込時の制御動作を示すフローチャートであ
る。
【0012】フラッシュメモリ制御部4は、主制御部1
より論理アドレスaに新規データDNを書込むように指
令を受けると、S1ステップにおいて新規データ書込み
(含:更新)のための初期化を行なう。
【0013】具体的には、フラッシュメモリ3中の各ブ
ロックを特定するための変数iに先頭ブロック番号であ
る「0」をセットし、また、履歴情報エリア8中のデー
タを格納するための変数cntに「−1」をセットし、
更にブロック番号を格納するための変数blkに「−
1」をセットする。尚、上記各変数i、cnt及びbl
kは、フラッシュメモリ制御部4中のRAM(図示せ
ず)に保持される。
【0014】続くS2ステップでは、フラッシュメモリ
3中のブロックiのアロケーションエリア(以下、al
loc[i]と称す)中に格納されている論理アドレス
が論理アドレスaと一致するか否かを判定する。
【0015】一致した場合には、S3ステップにおい
て、フラッシュメモリ3中のブロックiの履歴情報エリ
ア(以下、count[i]と称す)中のデータと変数
cntとを比較し、「count[i]>cnt」の際
にはS4ステップにおいて変数blkの値を変数iの値
に置換すると共に、変数cntの値をcount[i]
の値に置換し、処理をS5ステップに進める。
【0016】一方、S2ステップにおいて不一致と判定
された場合、及び、S3ステップにおいて「count
[i]>cnt」と判定されなかった場合には、直ちに
処理をS5ステップに進める。
【0017】S5ステップで変数iをインクリメント
し、続くS6ステップでは変数iの値がフラッシュメモ
リ3中のブロック数(max blk)を超えたか否か
を判定し、超えていないと判定すると処理をS2ステッ
プに戻す。
【0018】一方、超えたと判定した場合、即ちフラッ
シュメモリ3の全てのブロックのアロケーションエリア
6に格納されている論理アドレスと論理アドレスaとの
比較が終了しているので、最終的な処理を行なうためS
7ステップに進む。
【0019】S7ステップでは、変数blkの値が「−
1」であるか否かを判定する。変数blkの値が「−
1」である場合、S8ステップにおいて変数cntに
「0」をセットし、一方、変数blkの値が「−1」で
ない場合、S9ステップにおいて変数cntの値をイン
クリメントした後、処理をS10ステップに進める。
【0020】S10ステップでは、フラッシュメモリ3
中の空きブロックを検出し、そのブロックのデータエリ
ア5、アロケーションエリア6及び履歴情報エリア8に
夫々新規データDN、論理アドレスa及び変数cntの
値を書込み、処理を終了する。
【0021】尚、上記空きブロックの検出は、上記フラ
ッシュメモリ3のブロックのデータが消去された状態で
は全エリアとも無チャージ状態の論理「1」となってい
るので、これを検出することにより行なえる。また、書
込対象となる全エリアは同一ブロック上にあるため、N
AND型のものであっても書込は簡単に行なえる。
【0022】次に、図4のフローチャートの制御動作を
より理解し易くするために一具体例を使って説明する。
【0023】今、図5に示す如くフラッシュメモリ3に
はブロック0〜7までの8個のブロックが存在し、か
つ、全ブロックのエリアは全て消去されオール「1」と
なっているものとする。
【0024】この状態において、主制御部1より論理ア
ドレスa1に新規データd1を書込むように指示がある
と、フラッシュメモリ制御部4は、図4のフローを実行
するが、この時点ではいずれのブロックも空きであるた
めS2、S5、S6ステップを8回繰返し実行した後、
S7ステップに処理を進める。また、この時点では変数
blkは「−1」のままであるため、S8、S10ステ
ップが順次処理され、図6に示す如く空きブロックであ
るブロック0のデータエリア5、アロケーションエリア
6及び履歴情報エリア7に夫々データd1、論理アドレ
スa1及び変数cntの値である数値「0」が格納され
る。
【0025】また、続いて異なる論理アドレスa2、a
3に夫々新規データd2、d3(d1=d2=d3であ
っても良い)を書込むよう指示があると、フラッシュメ
モリ3のアロケーションエリア6には同一のアドレスが
存在しないので、上述のケースと同様にS1、S2、S
5、S6、S7、S8、S10ステップのみが処理さ
れ、図7に示す如くデータd2、d3及びアドレスa
2、a3が空き領域であったブロック1及び2に格納さ
れる。
【0026】次に、主制御部1より論理アドレスa1に
新規データd4を書込むように指令を受けると、ブロッ
ク0のアロケーションエリア中の論理アドレス(all
oc[0])のみが「a1」となっているため、S2ス
テップでこれを判定した際、S3及びS4ステップでの
処理により変数blkにはブロック0のブロック番号を
示す数値「0」がセットされ、変数cntにはブロック
0の履歴情報エリアの値「0」がセットされる。従っ
て、S2〜S6ステップにおける全ブロックに対する判
定を行なった後、S7、S9、S10ステップが順次処
理されることとなるので、図8に示す如くブロック3の
データエリア5、アロケーションエリア6及び履歴情報
エリア7に夫々データd4、論理アドレスa1及び数値
「1」が書込まれることとなる。
【0027】更に、再々度論理アドレスa1に新規デー
タd5を書込むように主制御部1より指令を受けると、
変数iが「0」及び「3」となった際にS2ステップで
一致と判定され、変数iが「0」の時に変数blk及び
cntに夫々数値「0」がセットされ、変数iが「0」
の時には変数blk及びcntに夫々数値「3」及び
「1」がセットされることとなる。従って、S7ステッ
プ以下を処理した結果、図9に示す如くブロック4のデ
ータエリア5、アロケーションエリア6及び履歴情報エ
リア7には、夫々データd5、論理アドレスa1及び数
値「2」が書込まれることとなる。
【0028】このように、本実施例装置では、新規及び
更新データは空きブロックに論理アドレスと共に順次書
込まれ、また更新データの新旧は各ブロックの履歴情報
エリア7の数値で判定できる。
【0029】図10は、フラッシュメモリ制御部4のフ
ラッシュメモリ3に対するデータ読出制御動作を示すフ
ローチャートである。
【0030】フラッシュメモリ制御部4は、主制御部1
より論理アドレスaと対応するデータを読み出すように
指令を受けると、図10に示すS20ステップ以下を処
理する。
【0031】S20〜S25ステップでは、上述のS1
〜S6ステップと同様にフラッシュメモリ3中の全ての
ブロックを順次サーチし、アロケーションエリア6に上
記論理アドレスaと同一のアドレスが格納されているブ
ロックを検出し、そのブロック番号及び履歴情報エリア
7内のデータ(count[i])を夫々変数blk及
びcntにセットする。尚、検出ブロックが複数ある場
合には、最も履歴情報の数値が大きいもの、即ち最新の
変更データが格納されたブロックのものがセットされ
る。
【0032】S26ステップでは、S7ステップと同様
に変数blkの値を判定する。このとき、変数blkが
S20ステップで初期化された「−1」のままである場
合、論理アドレスaが格納されたブロックが発見されな
かったことを意味するので、エラーとして処理する。
【0033】一方、変数blkの値が「−1」以外であ
れば、論理アドレスaが格納されたブロックが発見さ
れ、上記S23ステップにおいてそのブロック番号に変
更されたことを意味するため、続くS27ステップにお
いて変数blkの値と同一のブロック番号のブロックの
データエリア5中のデータを読み出し主制御部1に出力
し処理を終了する。
【0034】
【発明の効果】本発明によれば、NAND型のフラッシ
ュメモリにおいても消去を必要とすることなくデータ変
更が可能となるので、データ更新速度を向上できる。
【図面の簡単な説明】
【図1】本発明を適用した装置の主要部を示すブロック
回路図である。
【図2】本発明が対象とするNAND型フラッシュメモ
リの構成を示す模式図である。
【図3】本発明の一実施例におけるフラッシュメモリを
示す模式図である。
【図4】本発明の一実施例における動作を説明するため
のフローチャートである。
【図5】本発明の一実施例におけるフラッシュメモリを
示す模式図である。
【図6】本発明の一実施例におけるフラッシュメモリを
示す模式図である。
【図7】本発明の一実施例におけるフラッシュメモリを
示す模式図である。
【図8】本発明の一実施例におけるフラッシュメモリを
示す模式図である。
【図9】本発明の一実施例におけるフラッシュメモリを
示す模式図である。
【図10】本発明の一実施例における動作を説明するた
めのフローチャートである。
【符号の説明】
3 フラッシュメモリ 4 フラッシュメモリ制御部 5 データエリア 6 アロケーションエリア 7 履歴情報エリア
───────────────────────────────────────────────────── フロントページの続き (72)発明者 山下 隆弘 鳥取県鳥取市南吉方3丁目201番地 鳥取 三洋電機株式会社内 (72)発明者 網崎 真哉 鳥取県鳥取市南吉方3丁目201番地 鳥取 三洋電機株式会社内 (72)発明者 梅沢 功 鳥取県鳥取市南吉方3丁目201番地 鳥取 三洋電機株式会社内 (72)発明者 浦川 文隆 鳥取県鳥取市南吉方3丁目201番地 鳥取 三洋電機株式会社内 (72)発明者 前田 浩司 鳥取県鳥取市南吉方3丁目201番地 鳥取 三洋電機株式会社内

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 データを格納するための複数のデータエ
    リアと、該データエリアの各々に対応付けられ、上記デ
    ータエリア個々の論理アドレスを格納するための複数の
    アロケーションエリアと、上記各データエリアに対応付
    けられ、各データエリアと対応する上記アロケーション
    エリアに格納された論理アドレスの格納履歴情報を格納
    するための複数の履歴情報エリアとをフラッシュメモリ
    内に形成したことを特徴とするフラッシュメモリを利用
    した記憶装置。
  2. 【請求項2】 データを格納するための複数のデータエ
    リアと、該データエリアの各々に対応付けられ、上記デ
    ータエリア個々の論理アドレスを格納するための複数の
    アロケーションエリアと、上記各データエリアに対応付
    けられ、各データエリアと対応する上記アロケーション
    エリアに格納された論理アドレスの格納履歴情報を格納
    するための複数の履歴情報エリアとを有するフラッシュ
    メモリと、該メモリ中の空きデータエリアを検出する空
    きエリア検出手段と、入力されたアドレスデータと同一
    の論理アドレスデータが格納されている上記アロケーシ
    ョンエリアを検索するエリア検索手段と、該検索手段で
    検索されたアロケーションエリアと対応する履歴情報エ
    リアに格納されている履歴情報に従って新たな履歴情報
    を作成する手段と、上記空きデータエリア検出手段で検
    出したデータエリアと対応するアロケーションエリア及
    び履歴情報エリアに夫々上記アドレスデータ及び上記作
    成手段で作成された新たな履歴情報を書込む手段とを備
    えたことを特徴とするフラッシュメモリを利用した記憶
    装置。
  3. 【請求項3】 請求項2の上記書込手段は、上記アドレ
    スデータと共に入力された新規データを上記空きデータ
    エリア検出手段で検出したデータエリアに書込むことを
    特徴とするフラッシュメモリを利用した記憶装置。
  4. 【請求項4】 請求項1〜3のフラッシュメモリはNA
    ND型であることを特徴とするフラッシュメモリを利用
    した記憶装置。
  5. 【請求項5】 請求項4において、対応関係にある上記
    データエリア、アロケーションエリア及び履歴情報エリ
    アは書込単位となる同一ブロック内に位置することを特
    徴とするフラッシュメモリを利用した記憶装置。
  6. 【請求項6】 請求項1〜5において、上記履歴情報は
    同一の論理アドレスが格納された回数を示す情報である
    ことを特徴とするフラッシュメモリを利用した記憶装
    置。
JP24212496A 1996-09-12 1996-09-12 フラッシュメモリを利用した記憶装置 Pending JPH1091490A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24212496A JPH1091490A (ja) 1996-09-12 1996-09-12 フラッシュメモリを利用した記憶装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24212496A JPH1091490A (ja) 1996-09-12 1996-09-12 フラッシュメモリを利用した記憶装置

Publications (1)

Publication Number Publication Date
JPH1091490A true JPH1091490A (ja) 1998-04-10

Family

ID=17084664

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24212496A Pending JPH1091490A (ja) 1996-09-12 1996-09-12 フラッシュメモリを利用した記憶装置

Country Status (1)

Country Link
JP (1) JPH1091490A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006048585A (ja) * 2004-08-09 2006-02-16 Fujitsu Ltd フラッシュメモリのアクセス方法
JP2008108257A (ja) * 2006-10-23 2008-05-08 Hewlett-Packard Development Co Lp 不揮発性記憶装置
US7657702B2 (en) 2001-01-19 2010-02-02 Sandisk Corporation Partial block data programming and reading operations in a non-volatile memory

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7657702B2 (en) 2001-01-19 2010-02-02 Sandisk Corporation Partial block data programming and reading operations in a non-volatile memory
US7818490B2 (en) 2001-01-19 2010-10-19 Sandisk Corporation Partial block data programming and reading operations in a non-volatile memory
US7970987B2 (en) 2001-01-19 2011-06-28 Sandisk Corporation Partial block data programming and reading operations in a non-volatile memory
US8316177B2 (en) 2001-01-19 2012-11-20 Sandisk Corporation Partial block data programming and reading operations in a non-volatile memory
JP2006048585A (ja) * 2004-08-09 2006-02-16 Fujitsu Ltd フラッシュメモリのアクセス方法
JP2008108257A (ja) * 2006-10-23 2008-05-08 Hewlett-Packard Development Co Lp 不揮発性記憶装置

Similar Documents

Publication Publication Date Title
US10078449B2 (en) Flash memory architecture with separate storage of overhead and user data
US6865658B2 (en) Nonvolatile data management system using data segments and link information
US5966720A (en) Flash memory accessed using only the logical address
EP1228510B1 (en) Space management for managing high capacity nonvolatile memory
JP4399029B2 (ja) 半導体不揮発性大容量記憶メモリ内の自動摩耗レベリングによるシステム・データ制御の方法およびアーキテクチャ
EP0686976B1 (en) Data management system for programming-limited type semiconductor memory and IC memory card having the data management system
US6134151A (en) Space management for managing high capacity nonvolatile memory
US6172906B1 (en) Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
US7526601B2 (en) Data rewriting method for flash memory using partial erases
KR20030011230A (ko) 비휘발성 기억 장치 및 그의 재기입 제어 방법
JPH07219720A (ja) 半導体メモリ装置ならびにその制御方法
US6839798B1 (en) Flash memory capable of storing frequently rewritten data
US8219739B2 (en) Read-only optimized flash file system architecture
JP3122222B2 (ja) メモリカード装置
KR20020092261A (ko) 멀티-플레인 구조의 플래시 메모리 관리 방법
JP2003058417A (ja) 記憶装置
JPH07153284A (ja) 不揮発性半導体記憶装置及びその制御方法
JP3219699B2 (ja) 半導体メモリ装置
JPH1091490A (ja) フラッシュメモリを利用した記憶装置
JP4233213B2 (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム及びフラッシュメモリの制御方法
JP2000330850A (ja) フラッシュメモリ制御方法
JPH11259357A (ja) 半導体集積装置及び不揮発性メモリ書き込み方式
JPH07111092A (ja) 不揮発性半導体記憶装置の制御方法
JP2007272657A (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JP2001014865A (ja) フラッシュメモリ、フラッシュメモリ書き換え回数記憶方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040408

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041207

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050405