JP4419525B2 - メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 - Google Patents
メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 Download PDFInfo
- Publication number
- JP4419525B2 JP4419525B2 JP2003376131A JP2003376131A JP4419525B2 JP 4419525 B2 JP4419525 B2 JP 4419525B2 JP 2003376131 A JP2003376131 A JP 2003376131A JP 2003376131 A JP2003376131 A JP 2003376131A JP 4419525 B2 JP4419525 B2 JP 4419525B2
- Authority
- JP
- Japan
- Prior art keywords
- block
- flash memory
- data
- erased
- erase
- 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
Links
- 238000000034 method Methods 0.000 title claims description 45
- 238000009792 diffusion process Methods 0.000 description 21
- 238000006243 chemical reaction Methods 0.000 description 17
- 239000004065 semiconductor Substances 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 239000000758 substrate Substances 0.000 description 6
- 230000002950 deficient Effects 0.000 description 4
- 230000005856 abnormality Effects 0.000 description 2
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Landscapes
- Read Only Memory (AREA)
Description
フラッシュメモリからデータを読出す読出し手段と、
フラッシュメモリに書込まれているデータを消去する消去手段と、
フラッシュメモリに書込まれているデータを消去したときにフラッシュメモリが生成する消去ステータスを取得するステータス取得手段と、を備え、
取得した前記消去ステータスが正常な消去状態に該当するときだけ、該消去ステータスに係る消去済ブロックに対するデータの書込みが開始されるように構成されていることを特徴とするメモリコントローラによって達成される。
前記消去処理の終了後にフラッシュメモリが生成する消去ステータスを取得し、
取得した前記消去ステータスが、正常な消去状態を示す情報であったときに、
前記消去処理が行なわれたブロックに対して、データの書込み処理を行なうことを特徴とするフラッシュメモリの制御方法によって達成される。
消去状態になっていないビットが存在すれば異常を示す。)を取得し、このステータス情報に基づいて正常な消去状態であると判断されたブロックに対して、データの書込みを行なっている。又、この消去状態の判断とデータの書込みは、一連の処理として行なわれる。このような処理を行なうことにより、書込みに伴う処理時間が長くなるのを抑えつつ、信頼性の高いデータ書込みを行なうことができる。
図1は、本発明に係るフラッシュメモリシステム1を概略的に示すブロック図である。図1に示したようにフラッシュメモリシステム1は、フラッシュメモリ2と、それを制御するコントローラ3で構成されている。又、フラッシュメモリシステム1は、通常ホストシステム4に着脱可能に装着されて使用され、ホストシステム4に対して一種の外部記憶装置として用いられる。
モリシステム1からホストシステム4に供給されるデータ等は、ホストインターフェースブロック7を出口としてホストシステム4に供給される。
次に、図2及び3参照して図1に示したフラッシュメモリ2を構成するメモリセル16の具体的な構造について説明する。
リセル16の「書込状態」が論理値の「0」のデータに対応する。
次に、フラッシュメモリのメモリ構造を説明する。図4は、フラッシュメモリのメモリ構造を概略的に示す図である。図4に示したように、フラッシュメモリはデータの読出し及び書込みにおける処理単位であるページと、データの消去単位であるブロックで構成されている。
フラッシュメモリはデータの上書きができないため、データの書替えを行なう場合には、ブロック消去されている消去済ブロックに新データ(書替後のデータ)を書込み、旧データ(書替前のデータ)が書込まれていたブロックを消去するという処理を行なわなければならない。この際、消去はブロック単位で処理されるため、旧データ(書替前のデータ)が書込まれていたページが含まれるブロックの、全ページのデータが消去されてしまう。従って、データの書替えを行なう場合、書替えるページが含まれるブロックの、他のページのデータについても、消去済ブロックに移動させる処理が必要となる。
上述のようにフラッシュメモリシステムでは、論理ブロックアドレスと物理ブロックアドレスの対応関係を示したアドレス変換テーブルを用いて、データの書込み処理や読出し処理を行なっている。又、このアドレス変換テーブルの作成時間を短縮するために、フラッシュメモリ内の複数のブロックで構成したゾーン毎にアドレス変換テーブルを作成しているフラッシュメモリシステムも多い。尚、ゾーンを構成するブロックの数は、特に限定されずフラッシュメモリシステムの用途やフラッシュメモリの仕様に応じて適宜設定することができる。
ロックアドレスの空間に割当てられている。ここで、ブロックは消去処理の単位であり、ページは読出し及び書込み処理の単位である。又、ゾーンを構成するブロックが、24ブロック分余計に割当てられているのは、不良ブロックの発生を考慮したためである。但し、データ書替の際に一旦別のブロックに新データを書込み、その後、旧データが書込まれていたブロックをブロック消去する場合には、新データを書込むための予備ブロックが必要なので、実質的には23ブロック分が余計に割当てられていることになる。
次に、図5に示したゾーンに対するアドレス変換テーブルの例を、図面を参照して説明する。図6は、図5に示したようにブロックB0000〜B1023(物理ブロックアドレスの0000〜1023)でゾーンを構成し、このゾーンを1000ブロック分の論理ブロックアドレスの空間に割当てた場合のアドレス変換テーブルを示している。このアドレス変換テーブルには、各論理ブロックアドレスに対応するデータが格納されているブロックの物理ブロックアドレスが、論理ブロックアドレス順に記述されている。ここで、対応するデータが格納されていない論理ブロックアドレスについては、アドレス変換テーブルのその論理ブロックアドレスに対応した部分に、物理ブロックアドレスではなく、対応するデータが格納されていないことを示すフラグ(以下、対応するデータが格納されていないことを示すフラグを未格納フラグと言う。)が設定される。
次に、消去済ブロック検索用テーブルと候補テーブルについて説明する。候補テーブルは、データの書込み先として準備しておく消去済ブロック(以下、データの書込み先として準備しておく消去済ブロックを書込み候補ブロックと言う。)を設定しておくテーブルであり、各ゾーン毎に作成される。又、消去済ブロック検索用テーブルは、候補テーブルに書込み候補ブロックとして設定される消去済ブロックを検索するためのテーブルである。この消去済ブロック検索用テーブルの例としては、ゾーンを構成する各ブロックを、SRAM上の各ビットに対応させ、各ビットの値(「0」又は「1」)により、データが書込まれている状態、又はデータが書込まれていない状態を示したものが挙げられる。
あるか否かを示しており、例えば、データが書込まれている場合(又は不良ブロックであることを示すブロックステータスが記述されている場合)は、そのビットに「0」を、データが書込まれていない場合(消去済ブロックの場合)は、そのビットに「1」を設定する。尚、この消去済ブロック検索用テーブルは、アドレス変換テーブルを作成する際に一緒に作成することができる。例えば、消去済ブロック検索用テーブルを作成するSRAM上の領域に「0」を設定しておき、各ブロックの冗長領域に対応論理ブロックアドレスも不良ブロックであることを示すブロックステータスも記述されていないときに、そのブロックに対応するビットに「1」を設定するようにすれば、アドレス変換テーブルを作成する際に一緒に作成することができる。つまり、ゾーンを構成するブロックの冗長領域に記述されているデータを読出したときにこの処理を行なえば、消去済ブロックに対応するビットだけに「1」が設定され、消去済ブロックでないブロックに対応するビットは予め設定した「0」のままになる。
本発明に係る処理を図8に示したフローチャートを参照して説明する。本発明に係るフラッシュメモリシステムでは、ブロック消去の際に消去したブロックの消去状態をチェックし、全てのビットが消去状態になっているか否かを示すステータス情報(以下、ブロック消去されブロックの全てのビットが、消去状態になっているか否かを示すステータス情報を消去ステータスという。)を生成する機能を備えたフラッシュメモリを用いて、フラッシュメモリシステムを構成している。
ステップ1:
候補テーブルに設定されているブロックに対して、消去処理を行なう。候補テーブルには、消去済ブロック又は冗長領域に無効フラグが設定されているブロックが設定されている。尚、消去済ブロックに対して消去処理を行なうのは、消去ステータスにより、そのブロックの全てのビットが、消去状態になっているかを確認するためである。又、候補テーブルに設定されているブロックに対して、消去処理を行なう場合、フラッシュメモリシーケンサブロックが有するレジスタに、以下のような消去処理の設定がなされる。
1)内部コマンドとして内部消去コマンドが、フラッシュメモリシーケンサブロック内の所定のレジスタに設定される。
2)候補テーブルに設定されているブロックの物理ブロックアドレスが、フラッシュメモリシ―ケンサブロック内の所定のレジスタに設定される。
ステップ2:
ブロック消去の完了後に、フラッシュメモリ内のレジスタに消去ステータスがセットされる。この消去ステータスを読出し、消去処理が行なわれたブロックの全てのビットが消去状態になっているか否かを判定する。この判定で正常な消去状態になっている(全てのビットが消去状態になっている)と判断された場合はステップ3に、正常な消去状態になっていないと判断された場合はステップ4に進む。
ステップ3:
ステップ1で消去処理が行なわれたブロックに対して書込み処理が行なわれる。この書込み処理では、フラッシュメモリシーケンサブロックが有するレジスタに、以下のような書込み処理の設定がなされる。
1)内部コマンドとして内部書込みコマンドが、フラッシュメモリシーケンサブロック内の所定のレジスタに設定される。
2)ステップ1で消去処理が行なわれたブロック内のページのアドレスが、フラッシュメモリシ―ケンサブロック内の所定のレジスタに設定される。ここで、上記ページのアドレスは、物理ブロックアドレスにページ番号に相当する5ビット(32のページを識別するためのビット)を付加することによって与えられる。
その後、上記書込み処理の設定に基づいて、フラッシュメモリシーケンサブロックが処理を実行する。この処理が実行されると、フラッシュメモリインターフェースブロックから、内部バスを介してフラッシュメモリに内部書込みコマンドを実行するためのコマンド情報やアドレス情報等が供給される。又、バッファに保持されている書込みデータも、内部バスを介してフラッシュメモリに供給され、ステップ1で消去処理が行なわれたブロック内のページに書込まれる。又、書込み処理の終了後に、データを書込んだブロックに対応する消去済ブロック検索用テーブル上のビットを「1」から「0」に変更する。
ステップ4:
消去済ブロック検索用テーブルを用いて、消去済ブロック又は冗長領域に無効フラグが設定されているブロックを検索し、候補テーブルに消去済ブロック又は冗長領域に無効フラグが設定されているブロックの物理ブロックアドレスを設定する。
2、35、36 フラッシュメモリ
3 コントローラ
4 ホストコンピュータ
5 ホストインターフェース制御ブロック
6 マイクロプロセッサ
7 ホストインターフェースブロック
8 ワークエリア
9 バッファ
10 フラッシュメモリインターフェースブロック
11 ECCブロック
12 フラッシュメモリシーケンサブロック
13 外部バス
14 内部バス
16 メモリセル
17 P型半導体基板
18 ソース拡散領域
19 ドレイン拡散領域
20 トンネル酸化膜
21 フローティングゲート電極
22 絶縁膜
23 コントロールゲート電極
24 チャネル
25 ユーザ領域
26 冗長領域
Claims (7)
- フラッシュメモリにデータを書込む書込み手段と、
フラッシュメモリからデータを読出す読出し手段と、
フラッシュメモリに書込まれているデータを消去する消去手段と、
フラッシュメモリに書込まれているデータを消去したときにフラッシュメモリが生成する消去ステータスを取得するステータス取得手段と、を備え、
取得した前記消去ステータスが正常な消去状態に該当するときだけ、該消去ステータスに係る消去済ブロックに対するデータの書込みが開始されるように構成されていることを特徴とするメモリコントローラ。 - データの書込み先となるブロックの候補を設定する候補ブロック設定手段を備えることを特徴とする請求項1に記載のメモリコントローラ。
- ブロックのユーザ領域に書込まれているデータが無効であることを示す無効フラグを、冗長領域に設定する無効フラグ設定手段を備え、前記候補ブロック設定手段が、冗長領域に前記無効フラグが設定されているブロックを、データの書込み先の候補に設定することを特徴とする請求項2に記載のメモリコントローラ。
- 消去済ブロックに対する読出し処理に基づき、消去状態を診断する診断手段を備え、該診断手段と前記ステータス取得手段のいずれか一方の手段によって、正常な消去状態であると判断された消去済ブロックに対して、データの書込みが開始されるように構成されていることを特徴とする請求項1乃至3のいずれか1項に記載のメモリコントローラ。
- 請求項1乃至4記載のいずれか1項記載のメモリコントローラと、前記消去ステータスを生成するステータス生成手段を有するフラッシュメモリと、を備えることを特徴とするフラッシュメモリシステム。
- フラッシュメモリにデータの書込みを行なうときに、データの書込み先となるブロックに対して消去処理を行ない、
前記消去処理の終了後にフラッシュメモリが生成する消去ステータスを取得し、
取得した前記消去ステータスが、正常な消去状態を示す情報であったときに、
前記消去処理が行なわれたブロックに対して、データの書込み処理を行なうことを特徴とするフラッシュメモリの制御方法。 - 消去済ブロック、又はブロックのユーザ領域に書込まれているデータが無効であることを示す無効フラグが冗長領域に設定されているブロックを、データの書込み先とすることを特徴とする請求項6に記載のフラッシュメモリの制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003376131A JP4419525B2 (ja) | 2003-11-05 | 2003-11-05 | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003376131A JP4419525B2 (ja) | 2003-11-05 | 2003-11-05 | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005141418A JP2005141418A (ja) | 2005-06-02 |
JP4419525B2 true JP4419525B2 (ja) | 2010-02-24 |
Family
ID=34687298
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003376131A Expired - Lifetime JP4419525B2 (ja) | 2003-11-05 | 2003-11-05 | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4419525B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4943683B2 (ja) * | 2005-09-15 | 2012-05-30 | 株式会社リコー | 画像形成装置、プログラム、記録媒体 |
JP5815212B2 (ja) | 2010-04-19 | 2015-11-17 | スパンション エルエルシー | データ書き込み方法およびシステム |
CN112540882A (zh) * | 2019-09-23 | 2021-03-23 | 深圳宏芯宇电子股份有限公司 | 闪存设备检测系统及闪存设备检测方法 |
-
2003
- 2003-11-05 JP JP2003376131A patent/JP4419525B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2005141418A (ja) | 2005-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7330995B2 (en) | Nonvolatile memory apparatus which prevents destruction of write data caused by power shutdown during a writing process | |
JP2647312B2 (ja) | 一括消去型不揮発性半導体記憶装置 | |
US7315870B2 (en) | Memory controller, flash memory system, and method for recording data on flash memory | |
JP4236485B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 | |
JP4173410B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム | |
JP4433792B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 | |
JP4419525B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 | |
JP4661191B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP4513786B2 (ja) | メモリコントローラ、メモリシステム及びメモリ制御方法 | |
JP4461754B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 | |
JP2010128697A (ja) | メモリシステム | |
JP4213053B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 | |
JP4177292B2 (ja) | メモリンコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP2005316793A (ja) | フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP4194473B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム | |
JP4177301B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP4068594B2 (ja) | フラッシュメモリコントローラ、フラッシュメモリシステム、及びフラッシュメモリの制御方法 | |
JP4332108B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP4251950B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 | |
JP4203994B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 | |
JP4222879B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 | |
JP4561110B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 | |
JP4282410B2 (ja) | フラッシュメモリの制御回路、並びに、この制御回路を備えるメモリコントローラ及びフラッシュメモリシステム | |
JP4569554B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP4304167B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060818 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20091020 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20091110 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20091123 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121211 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4419525 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121211 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131211 Year of fee payment: 4 |
|
EXPY | Cancellation because of completion of term |