JPWO2005083573A1 - 半導体メモリ装置 - Google Patents
半導体メモリ装置 Download PDFInfo
- Publication number
- JPWO2005083573A1 JPWO2005083573A1 JP2006510464A JP2006510464A JPWO2005083573A1 JP WO2005083573 A1 JPWO2005083573 A1 JP WO2005083573A1 JP 2006510464 A JP2006510464 A JP 2006510464A JP 2006510464 A JP2006510464 A JP 2006510464A JP WO2005083573 A1 JPWO2005083573 A1 JP WO2005083573A1
- Authority
- JP
- Japan
- Prior art keywords
- memory
- completion flag
- write completion
- write
- unit
- 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
Links
- 239000004065 semiconductor Substances 0.000 title claims description 37
- 238000006243 chemical reaction Methods 0.000 claims description 14
- 230000004044 response Effects 0.000 claims description 3
- 238000007726 management method Methods 0.000 description 46
- 238000010586 diagram Methods 0.000 description 18
- 238000000034 method Methods 0.000 description 8
- 238000013523 data management Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012536 packaging technology Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1441—Resetting or repowering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1435—Saving, restoring, recovering or retrying at system level using file system or storage system metadata
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
クラスタ又は物理ブロック等の所定の記憶単位に対応した書き込み完了フラグを記憶する書き込み完了フラグテーブル105を不揮発性の制御メモリ106に格納する。そして所定の記憶単位へのデータ書き込みが完了したことを検出し、書き込み完了フラグテーブル105上の対応する記憶単位のアドレスに書き込み完了フラグを書き込む。こうすればデータが正常に書き込まれたことが確認できる。主記憶メモリの書き込み単位のページに書き込みの完了を示すフラグを書き込めない場合も書き込みの信頼性を向上できる。
Description
本発明は、半導体を使用したメモリ装置に関し、詳しくは主記憶用の半導体メモリとして不揮発性のメモリを用いた半導体メモリ装置に関するものである。
半導体メモリ装置の中で、SDメモリカードやコンパクトフラッシュ(登録商標)等のメモリカードは小型サイズであるので、デジタルスチルカメラ等のポータブル機器の着脱可能なメモリ装置として実用に供されている。
実用に供されている半導体メモリ装置は、通常内部に不揮発性メモリであるフラッシュメモリと、その制御回路であるコントローラLSIが内蔵されている。近年、半導体メモリ装置における大容量化のニーズの高まりに伴い、不揮発性メモリチップ自体も大容量が進みつつある。また実装技術の進歩により半導体メモリ装置に実装される不揮発性メモリのチップ数も増加し、半導体メモリ装置としてのメモリ空間として1GBを超えるものが実用化されている。
フラッシュメモリにおけるアドレス管理情報の管理方法として、大別して2通りの方法がある。第1の方法は、メモリカードのメモリ領域全体、あるいはメモリ領域全体を所定数に分割した領域毎に、その領域全体に対応するアドレス管理情報をまとめて所定ブロックに記憶させる方法である。このアドレス管理方法は集中型アドレス管理方法と呼ばれる。
第2の方法は、物理ブロックを構成している所定ページ(セクタ)にデータを書き込む際に、管理情報、即ち当該データが有効であるかどうか等を表すステータス情報や論理アドレスをそのページが含まれる物理ブロックの冗長領域に書き込む。そして電源投入時において各物理ブロックに分散して書き込まれた管理情報を読み出して、メモリにアドレス管理テーブルを構築する方法である。この方法を分散型アドレス管理方法という。本発明は分散型アドレス管理方法を前提とするものである。
次に分散型アドレス管理方法による半導体メモリ装置の主記憶メモリの一例について説明する。主記憶メモリとして4Gビット、即ち512Mバイトの容量を持つものとする。主記憶メモリ11は図1に示すように、複数の物理ブロック、例えばPB0〜PB2047までの2048の物理ブロックによって構成される。各物理ブロックのデータ容量は256kB(バイト)とする。この主記憶メモリは、二値のNANDフラッシュメモリとする。
図2は1つの物理ブロックを示した説明図である。この例では各物理ブロックはページ0〜ページ127までの128ページから構成される。各ページは、セクタ0〜セクタ3までの4セクタのデータ領域と管理領域(MR)とから構成される。1セクタは512Bの容量を有し、各ページは計2048Bのデータ領域を有する。管理領域は64Bの容量を有する。管理領域内にはそのデータの有効や無効を示す状態コード、書き込み完了フラグ、誤り訂正のためのECCコード等が含まれる。ECCコードはそのデータ領域内で1乃至2ビットのエラー訂正機能を有する。この主記憶メモリは二値のNANDフラッシュメモリであるため、ページ単位のみならす、ページ中のセクタのみ、又はセクタの一部の管理領域のみを独立して書き込むことができる。
さて、図3は1クラスタ(16kB)分のデータの書き込み又は書き換えを示したタイムチャートである。この例では1つの物理ブロックのページ0〜ページ7にデータを書き込む。この書き込み時間T1は例えば数m秒である。そしてページ7の書き込みが完了した直後に、図2のページ7の管理領域MRに書き込み完了フラグを書き込む。この書き込み時間T2は例えば200〜300μ秒である。又書き換えをする場合には、ページ0〜7の書き込みに加えて、他のブロックの既に書かれているデータを新しい物理ブロックにコピーする処理を行う。この書き換え時間をT3とする。この後に有効な各クラスタの最終ページであるページ7,15,・・・127に書き込み完了フラグを書き込む(T2)。
こうすることにより書き込み完了フラグを主記憶メモリに書き込む時間は必要となるが、電源遮断が起きた場合においても、電源遮断後の電源投入時にこの管理領域中の書き込み完了フラグが書き込まれているかどうかで、データの書き込みが成功したか失敗したかを判別することができる。書き込み完了フラグが立てられたページを含むクラスタ又はブロックについては、確実なデータが記録されたものとして取り扱うことができ、信頼性が向上する。(特許文献1参照)
特開2003−15929号公報
さて最近、1つのメモリセルで2を超える論理状態をとることができるメモリセル、即ち多値のフラッシュメモリとして、多値のNANDフラッシュメモリが注目されている。多値のフラッシュメモリは低コストで大容量化できる品種であるが、書き込み単位であるページに対して分割書き込みができない。即ちページのある領域部分にデータを書き込んだ後に、消去することなく同一ページの別の領域にデータを書き込むことができない。このような制約があるため、主記憶メモリに多値のNANDフラッシュメモリを用いると、従来のようにデータを書き込んだ後に、書き込んだページの管理領域に書き込み完了フラグを書き込むことができない。
書き込み完了フラグを書き込まなければ書き込み速度が速くなるが、信頼性が低下することとなり、このため電源遮断対策が困難になる。従って信頼性を確保するためには、データの書き込み先とは異なる物理領域に書き込み完了フラグ領域を設けて、そこに書き込み完了フラグを書き込む必要がある。
しかし、別の物理領域を設けるとすると、主記憶メモリの容量として512MB(バイト)を使用する場合、数式(1)により32k個の書き込み完了フラグを書き込める領域を確保する必要がある。
512MB÷16kB=32k個・・・(1)
しかし、書き込み単位であるページの分割書き込みができないので、書き込み完了フラグを1ビットとしても、その1ビット用に1ページ(2kB)分の容量を確保する必要がある。従って、数式(2)により書き込み完了フラグ用に充てる物理ブロックの容量は64MBとなる。
32k個×2kB=64MB・・・(2)
そのため主記憶メモリにおいてデータを記憶させるための使用可能領域が大幅に減ってしまうという問題が生じる。
512MB÷16kB=32k個・・・(1)
しかし、書き込み単位であるページの分割書き込みができないので、書き込み完了フラグを1ビットとしても、その1ビット用に1ページ(2kB)分の容量を確保する必要がある。従って、数式(2)により書き込み完了フラグ用に充てる物理ブロックの容量は64MBとなる。
32k個×2kB=64MB・・・(2)
そのため主記憶メモリにおいてデータを記憶させるための使用可能領域が大幅に減ってしまうという問題が生じる。
本発明は、不揮発性メモリを主記憶メモリとし、分散型の管理方法を用いる半導体メモリ装置において、信頼性を高く保ちつつ高速に書き込みができるようにすることを解決すべき課題とする。
本発明による半導体メモリ装置は、第1の記憶容量のデータ領域とデータ管理領域から成る複数の記憶容量単位で構成された記憶領域を有する不揮発性の主記憶メモリと、前記主記憶メモリのアドレス管理情報を記憶するアドレス管理情報記憶部と、前記主記憶メモリに対して第2の記憶容量単位毎に設けられ、データ書き込みが完了したときに立てられる書き込み完了フラグから成る書き込み完了フラグテーブルを記憶する不揮発性の制御メモリと、ホストからデータ読み書き指示に応じて前記主記憶メモリに対してデータの読み書き制御を行うと共に、前記アドレス管理情報記憶部及び前記制御メモリの更新制御を行う制御部と、を備えたものである。
ここで前記第2の記憶容量単位はクラスタサイズであり、前記制御メモリは、ホストのファイルシステムで規定されたクラスタサイズ毎に1ビット以上の書き込み完了フラグから成る書き込み完了フラグテーブルを記録するようにしてもよい。
ここで前記第2の記憶容量単位はセクタサイズであり、前記制御メモリは、ホストのファイルシステムで規定されたセクタサイズ毎に1ビット以上の書き込み完了フラグから成る書き込み完了フラグテーブルを記録するようにしてもよい。
前記第2の記憶容量単位は物理ブロックサイズとし、前記制御メモリは、前記主記憶メモリのN個(Nは1以上の整数)の物理ブロックの容量毎に1ビット以上の書き込み完了フラグから成る書き込み完了フラグテーブルを記録するようにしてもよい。
前記制御メモリは、書き込み速度が前記主記憶メモリより速いものとしてもよい。
前記制御部は、予め記憶された第2の記憶容量単位に基づき、初期化時もしくは工場出荷時に、書き込み完了フラグテーブルのメモリマップを構成するようにしてもよい。
前記制御部は、ホストから転送された第2の記憶容量単位に基づき、初期化時もしくは工場出荷時に、書き込み完了フラグテーブルのメモリマップを構成するようにしてもよい。
前記主記憶メモリは、多値型のNANDフラッシュメモリとしてもよい。
前記アドレス管理情報記憶部は、前記主記憶メモリの記憶容量単位毎の状態を記憶する物理領域管理テーブルと、ホストのファイルシステムで規定されるアドレスと前記主記憶メモリの記憶容量単位のアドレスを変換するアドレス変換テーブルとを有するようにしてもよい。
ここで前記制御メモリは、強誘電体メモリ(FeRAM)、磁性記録式随時書き込み読み出しメモリ(MRAM)、オボニックユニファイドメモリ(OUM)、レジスタンスRAM(RRAM)としてもよい。
本発明では主記憶メモリへのデータの書き込みに対応して、制御メモリに書き込み完了フラグを書き込むようにした。そのため主記憶メモリへのデータ書き込み中に電源遮断が起きても、その直後の電源投入時に制御メモリの対応する書き込み完了フラグの有無を調べることにより、電源遮断前にデータが正しく書き込めたかどうかを判断することができる。また制御メモリは、1バイト単位以下での書き込み速度が主記憶メモリより速い書き込み速度のメモリを用いることにより、従来の半導体メモリ装置よりも高速な書き込み処理が実現できる。
100 ホスト
102 制御部
103 RAM
104 ROM
105 書き込み完了フラグテーブル
106 制御メモリ
107 メモリアクセス部
108 アドレス変換テーブル
109 物理領域管理テーブル
110 アドレス管理情報記憶部
111 メモリコントローラ
112 主記憶メモリ
102 制御部
103 RAM
104 ROM
105 書き込み完了フラグテーブル
106 制御メモリ
107 メモリアクセス部
108 アドレス変換テーブル
109 物理領域管理テーブル
110 アドレス管理情報記憶部
111 メモリコントローラ
112 主記憶メモリ
本発明の実施の形態による半導体メモリ装置について、図面を参照しつつ説明する。図4は、本実施の形態における半導体メモリ装置の全体構成図である。半導体メモリ装置はメモリコントローラ111及び主記憶用の不揮発性メモリ(以下、単に主記憶メモリという)112により構成される。ホスト100は、メモリコントローラ111を介して主記憶メモリ112にユーザデータ(以下、データという)の読み書き命令及び読み書きアドレスとデータとを転送するアクセス装置である。メモリコントローラ111は、ホストI/F101、制御部102、RAM103、ROM104、制御用不揮発性メモリ(以下、単に制御メモリという)106、メモリアクセス部107、アドレス管理情報記憶部110を含んで構成される。
次に主記憶メモリ112について説明する。この実施の形態においては、主記憶メモリ112は4Gビット、即ち512Mバイトの容量を持つ。主記憶メモリ112は図1に示すように、複数の物理ブロック、例えばPB0〜PB2047までの2048の物理ブロックによって構成される。各物理ブロックのデータ容量は256kB(バイト)とする。この主記憶メモリ112は、多値のNANDフラッシュメモリとする。
図5は本実施の形態における物理ブロックを示した説明図である。各物理ブロックはページ0〜ページ127までの128ページから構成される。各ページは、セクタ0〜セクタ3までの4セクタのデータ領域と管理領域(MR)とから構成される。1セクタは512Bの容量を有し、各ページは2048Bの容量のデータ領域を有する。ここでは1ページ分のデータ容量単位を第1の容量単位とし、その容量単位に対応して管理領域を有する。管理領域は64Bの容量を有する。管理領域内にはそのデータの有効や無効を示す状態コード、誤り訂正のためのECCコードが含まれるが、書き込み完了フラグは含まれていない。この主記憶メモリ112は多値のNANDフラッシュメモリであるため、ページ単位でのみ書き込みが可能であり、ページ中のセクタのみ、又はセクタの一部の管理領域のみを独立して書き込むことができない。
図6は本実施の形態における論理アドレスフォーマットを示した説明図である。図6において下位ビットから順に、セクタナンバー、ページナンバー、論理ブロックナンバー(LBN)であり、論理ブロックナンバーに対応する11ビット分がアドレス変換の対象、即ちアドレス変換テーブル108のアドレスに相当する。なおホスト100のファイルシステムで規定されるセクタサイズを512B、クラスタサイズを16kBとすると、クラスタナンバーのLSBは論理アドレスフォーマットのビットb5に対応する。
制御部102はメモリコントローラ111内の全体制御、ホスト100からのデータ読み書き指示に応じてメモリアクセス部107に対しデータの読み書き制御を行うと共に、アドレス管理情報記憶部110と制御メモリ106の更新制御を行うものであり、CPUを含んで構成される。RAM103は制御部102のワーク用のRAMである。ROM104は制御部102が実行するプログラムを格納したROMである。制御メモリ106は書き込み完了フラグテーブル105を記憶する不揮発性メモリである。制御メモリ106は、1ビット単位又は1バイト単位以下での書き込み速度が主記憶メモリ112より速いものであることが好ましい。制御メモリ106は、例えば強誘電体メモリ(FeRAM)、磁気記録式随時書込読出メモリ(MRAM)、オボニックユニファイドメモリ(OUM)、又はレジスタンスRAM(RRAM)を用いることができる。ここでは制御メモリ106としてFeRAMを使用する。一般のフラッシュメモリと比較してFeRAMは、オーバーライトが可能、即ち書換時に消去等が不要であり、少容量、例えば1ビット又は1バイト単位での書き込み速度が速いという利点がある。
制御メモリ106の書き込み完了フラグテーブル105は、ホスト100が転送したデータを主記憶メモリ112に書き込んだ直後に、対応する論理アドレスに書き込み完了フラグを書き込むためのテーブルである。
図7は本実施の形態における書き込み完了フラグテーブル105を示す説明図である。書き込み完了フラグは第2の記憶容量単位毎に立てられ、その単位への書き込みを示すものであり、図7は第2の記憶容量単位、ここでは1クラスタ(16kB)、即ち8ページ毎にフラグを書き込む場合を示す。即ち書き込み完了フラグがクラスタ単位で記録されているので、1つの論理ブロックに対応する書き込み完了フラグは2バイト分ある。この場合、書き込み完了フラグテーブル105、即ち制御メモリ106は4kBの容量である。32kクラスタ分の書き込み完了フラグ(1ビット)はバイト0のb0から順番にクラスタ順に配列させる。そして対応するクラスタのデータが主記憶メモリ112に書き込まれた直後に、対応するビットに値「1」を書き込むものとする。
次にメモリコントローラ111内のメモリアクセス部107は、主記憶メモリ112の読み書き及び消去制御を行うアクセス部である。
次にアドレス管理情報記憶部110は、アドレス変換テーブル108と物理領域管理テーブル109を一時記憶するメモリである。このメモリはRAM等の揮発性メモリでも不揮発性メモリでも良い。
図8は本実施の形態におけるアドレス変換テーブル108の説明図である。アドレス変換テーブル108はホスト100が転送した論理アドレスを、主記憶メモリ112内の物理アドレスに変換するテーブルである。図8において、そのアドレスはホスト100が指定した論理アドレスの論理ブロックナンバー(LBN)に対応し、アドレス変換テーブル108内には当該アドレスに対する物理ブロックナンバー(PBN)が記憶されている。
図9は本実施の形態における物理管理領域テーブル109の説明図である。物理領域管理テーブル109は主記憶メモリ112内の物理領域、例えば消去単位である物理ブロックの状態を記憶するテーブルである。物理ブロックの状態とは、例えば有効データが書き込まれているどうか等を示すものである。図9において物理領域管理テーブル109のアドレスは、主記憶メモリ112の各物理ブロックナンバーPSNに対応し、各物理ブロックの状態を記憶する。2進数で値「00」は有効なデータが記憶されている有効ブロックを示す。値「11」は消去済みブロック又はデータが書き込まれているが不要である無効ブロックを示す。値「10」はメモリセル上のソリッドエラー等により使用できなくなった不良ブロックを示す。
まず、本半導体メモリ装置の出荷直後における主記憶メモリ112や各種テーブルの内容について説明する。なお簡単のため、主記憶メモリ112内のシステム領域については説明を省略し、通常領域、即ちユーザがデータを読み書きする領域についてのみ説明する。制御部102は、ROM104や主記憶メモリ112等に予め記憶された所定の記憶容量単位に基づき、初期化時もしくは工場出荷時に、書き込み完了フラグテーブルのメモリマップを構成する。この場合はクラスタ単位に図7に示すように書き込み完了フラグテーブル105のメモリマップを構成する。初期化時若しくは工場出荷時には、書き込み完了フラグテーブル105は全ビット、値「0」となっている。
また主記憶メモリ112の良ブロックは全て消去された状態となっている。物理領域管理テーブル109の良ブロックは無効ブロック状態、2進数で「11」となり、初期不良ブロックは不良ブロック、2進数で「10」となっている。アドレス変換テーブル108は全ビット、値「0」となっている。因みにどんな値をとっても差し支えない。
この半導体メモリ装置の動作について説明する。この実施の形態による半導体メモリ装置は、分散型のアドレス管理方法をとるため、電源投入時には主記憶メモリ112の各物理ブロックの管理領域に保持されている管理情報を読み出す。そしてアドレス管理情報記憶部110に2つのテーブル108,109を構成する。
次に、1クラスタの書き込み毎に書き込み完了フラグを記憶する場合について説明する。ホスト100からの読み書き等のコマンド受付状態に入った後、ホスト100から任意の論理アドレスへの書き込み指示がなされる。なお通常ホスト100はクラスタ単位で書き込む場合が多いので、以降クラスタ単位での書き込みについて説明する。
図10(A)は本実施の形態における1クラスタ分の書き込みを示したタイムチャートである。ホスト100はメモリコントローラ111に任意のクラスタの書き込み指示及び対応する論理アドレスを転送する。ホスト100から任意のクラスタの書き込み命令が転送されると、そのクラスタが含まれる論理ブロックに対応する2バイト分の書き込み完了フラグのビットをリセットし、値「0」とする。制御部102は物理領域管理テーブル109の0番地側から降順に無効ブロックをサーチし、最初に見つかった無効ブロックを書き込み対象ブロックとし、主記憶メモリ112のその物理ブロックを消去した後に送られてきたデータを書き込む。この書き込み時間T11は数msである。
図10において主記憶メモリ112からフィードバックされるビジー信号(R/B信号)の立ち上がりに基づき、一連の書き込み動作が完了した時刻t1の直後の時刻t2に、制御部102は書き込み完了フラグテーブル105の対応するビットに値「1」を書き込む。制御メモリ106にFeRAMを用いているので、この書き込み時間T12は100ns程度である。
一方書き込み対象となるクラスタを含む論理ブロックナンバーに対応する物理ブロックが有効ブロックとなっていれば、その論理ブロックの他のページにデータが既に書き込まれていると判断する。図11は1クラスタ分の書き換えを示した説明図である。図11において、物理ブロックPBiはページ0〜ページ127に全てデータが書き込まれている物理ブロックとする。この物理ブロックPBiの1クラスタ分、ページ0〜7を書き換える場合について説明する。物理ブロックPBjは書き換えのために用意された新たな物理ブロックであり、無効なデータが書き込まれている物理ブロックとする。この場合には書き込む対象となる物理ブロックPBjのページ0〜7に1クラスタ分の新たなデータを書き込む。続いて既存の物理ブロックPBiのページ8〜127までの120ページ分を物理ブロックPBjにコピーする。このとき書き込み完了フラグは、残りのページのコピーが必要か否かを制御部102が判断するために用いられる。
図10(B)においてT21は主記憶メモリ112のページ0〜7への書き込み時間であり、これは例えば数m秒である。そしてこの終了後にページ8〜127までの120ページ分のコピーを行う。この書き込み時間T22は例えば数十m秒である。制御部102は主記憶メモリ112からフィードバックされるビジー信号(R/B)の立上りに基づき、一連の書き込み動作が終了した時刻t3の直後の時刻t4に書き込み完了フラグを書き込み完了フラグテーブル105に書き込む。この書き込み時間T23は100ns程度である。このフラグの書き込みは127ページ分の全ての物理ブロックに書き込みがなされているため、各クラスタに相当するビットに1を立てて書き込み完了フラグとする。
以上のように書き込み完了フラグテーブル105を不揮発性メモリ上に、クラスタに対応したビット配列にマッピングし、一連の書き込み動作が完了した後に書き込み完了フラグを書き込み完了フラグテーブル105に書き込むようにした。このため、データの書き込み中において電源遮断等が発生しても、電源遮断後の初期化時に制御部102が書き込み完了フラグテーブル105の内容を調べることにより、正常にデータが書かれたかどうかを判別することができる。
次に電源投入時に書き込み完了フラグを用いて書き込みの信頼性を確認する処理について説明する。まず制御部102は物理領域管理テーブル109を検索し、有効な物理ブロックを調べる。そしてアドレス変換テーブル109より有効な物理ブロックアドレスに対応する有効な論理ブロックアドレスを検索する。次いで有効な論理ブロックに対応する書き込み完了フラグテーブル105を調べる。このとき書き込み完了フラグがクラスタ単位で記録されているので、1つの論理ブロックに対応する書き込み完了フラグは2バイト分ある。そこで上位のバイト(バイト0)から2バイトづつ論理ブロックアドレス0,1,2・・・の順に書き込み完了フラグテーブル105を検索する。そして有効な論理ブロックアドレスに対応する書き込み完了フラグテーブルの2バイトの組が全て「0」の場合には、その論理ブロックはデータが書き込まれている最中に電源遮断が生じて正しくデータが書き込まれていない可能性があると判断する。この場合はその論理ブロックは無効な論理ブロックとする。即ちアドレス変換テーブル108に基づいて対応する物理ブロックアドレスを調べ、物理領域管理テーブル109の物理ブロックの状態を無効状態とする。
こうすれば書き込み単位であるページに分割書き込みできない不揮発性メモリを主記憶メモリ112として使用した場合においても、データとしての使用可能領域を大幅に削減することなく、簡単な回路構成で信頼性の高い半導体メモリ装置を提供できる。
また書き込み完了フラグテーブル105を、FeRAMのような少容量(少なくとも1ビット〜1バイト)での書き込み速度が速い不揮発性メモリに備えることとすれば、書き込み完了フラグの書き込み時間を短縮でき、全体の書き込み速度を向上させることができる。
なお、本実施の形態においては、書き込み完了フラグを記録する第2の記憶容量単位は図7に示すようにクラスタ単位としたが、図12に示すように物理ブロック(256kB)単位とし、この単位で書き込み完了フラグを書き込むようにしてもよい。また第2の記憶容量単位をセクタ単位やページ単位としてこの単位で書き込み完了フラグを書き込むようにしてもよい。
また本実施の形態では、不揮発性の主記憶メモリ112として、多値のNANDフラッシュメモリを用いているが、主記憶メモリとして二値型のNANDフラッシュメモリやAGAND型フラッシュメモリを用いてもよい。又フラッシュメモリ以外の不揮発性メモリを用いてもよい。また主記憶メモリ112は、複数の不揮発性メモリチップを内蔵してもよい。
本実施の形態では、予め記憶された記憶容量単位に基づき初期化時もしくは工場出荷時に書き込み完了フラグテーブルのメモリマップを構成している。これに代えて、所定の記憶容量単位の値をホストが転送し、書き込み完了フラグテーブルの構成を決定するようにしてもよい。
本発明にかかる半導体メモリ装置は、特に大容量の不揮発性メモリを主記憶メモリとして用いたメモリ装置において、簡単な回路で高信頼性と高速処理化を図ることができる。このため、半導体メモリ装置を使用した機器、例えば静止画記録再生装置や動画記録再生装置、あるいは携帯電話等の種々の機器において有益である。
Claims (13)
- 第1の記憶容量のデータ領域と管理領域から成る複数の記憶容量単位で構成された記憶領域を有する不揮発性の主記憶メモリと、
前記主記憶メモリのアドレス管理情報を記憶するアドレス管理情報記憶部と、
前記主記憶メモリに対して第2の記憶容量単位毎に設けられ、データ書き込みが完了したときに立てられる書き込み完了フラグから成る書き込み完了フラグテーブルを記憶する不揮発性の制御メモリと、
ホストからデータ読み書き指示に応じて前記主記憶メモリに対してデータの読み書き制御を行うと共に、前記アドレス管理情報記憶部及び前記制御メモリの更新制御を行う制御部と、を備えた半導体メモリ装置。 - 前記第2の記憶容量単位はクラスタサイズであり、
前記制御メモリは、ホストのファイルシステムで規定されたクラスタサイズ毎に1ビット以上の書き込み完了フラグから成る書き込み完了フラグテーブルを記録する請求項1記載の半導体メモリ装置。 - 前記第2の記憶容量単位はセクタサイズであり、
前記制御メモリは、ホストのファイルシステムで規定されたセクタサイズ毎に1ビット以上の書き込み完了フラグから成る書き込み完了フラグテーブルを記録する請求項1記載の半導体メモリ装置。 - 前記第2の記憶容量単位は物理ブロックサイズとし、
前記制御メモリは、前記主記憶メモリのN個(Nは1以上の整数)の物理ブロックの容量毎に1ビット以上の書き込み完了フラグから成る書き込み完了フラグテーブルを記録する請求項1記載の半導体メモリ装置。 - 前記制御メモリは、書き込み速度が前記主記憶メモリより速い請求項1記載の半導体メモリ装置。
- 前記制御部は、予め記憶された第2の記憶容量単位に基づき、初期化時もしくは工場出荷時に、書き込み完了フラグテーブルのメモリマップを構成する請求項1記載の半導体メモリ装置。
- 前記制御部は、ホストから転送された第2の記憶容量単位に基づき、初期化時もしくは工場出荷時に、書き込み完了フラグテーブルのメモリマップを構成する請求項1記載の半導体メモリ装置。
- 前記主記憶メモリは、多値型のNANDフラッシュメモリである請求項1記載の半導体メモリ装置。
- 前記アドレス管理情報記憶部は、前記主記憶メモリの記憶容量単位毎の状態を記憶する物理領域管理テーブルと、ホストのファイルシステムで規定されるアドレスと前記主記憶メモリの記憶容量単位のアドレスを変換するアドレス変換テーブルとを有する請求項1記載の半導体メモリ装置。
- 前記制御メモリは、強誘電体メモリ(FeRAM)である請求項1記載の半導体メモリ装置。
- 前記制御メモリは、磁性記録式随時書き込み読み出しメモリ(MRAM)である請求項1記載の半導体メモリ装置。
- 前記制御メモリは、オボニックユニファイドメモリ(OUM)である請求項1記載の半導体メモリ装置。
- 前記制御メモリは、レジスタンスRAM(RRAM)である請求項1記載の半導体メモリ装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004053960 | 2004-02-27 | ||
JP2004053960 | 2004-02-27 | ||
PCT/JP2005/003136 WO2005083573A1 (ja) | 2004-02-27 | 2005-02-25 | 半導体メモリ装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2005083573A1 true JPWO2005083573A1 (ja) | 2007-11-29 |
Family
ID=34908773
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006510464A Pending JPWO2005083573A1 (ja) | 2004-02-27 | 2005-02-25 | 半導体メモリ装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7610435B2 (ja) |
JP (1) | JPWO2005083573A1 (ja) |
CN (1) | CN100422962C (ja) |
WO (1) | WO2005083573A1 (ja) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100549871B1 (ko) * | 2004-10-22 | 2006-02-06 | 삼성전자주식회사 | 데이터 핀의 상태에 의해서 동작 모드가 결정되는 반도체메모리 장치 및 이를 이용한 동작 모드 결정 방법 |
US20090100290A1 (en) * | 2005-08-22 | 2009-04-16 | Matsushita Electric Industrial Co., Ltd. | Memory controller, nonvolatile memory device, nonvolatile memory system, and data writing method |
JPWO2007049455A1 (ja) * | 2005-10-28 | 2009-04-30 | パナソニック株式会社 | 半導体メモリカード |
WO2007145316A1 (ja) * | 2006-06-15 | 2007-12-21 | Panasonic Corporation | メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶装置システム |
WO2008016081A1 (fr) * | 2006-08-04 | 2008-02-07 | Panasonic Corporation | Contrôleur de mémoire, dispositif de mémoire non-volatile, dispositif d'accès et système de mémoire non-volatile |
JP2008070929A (ja) * | 2006-09-12 | 2008-03-27 | Matsushita Electric Ind Co Ltd | メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム |
WO2008032711A1 (fr) * | 2006-09-13 | 2008-03-20 | Panasonic Corporation | Contrôleur mémoire, dispositif de stockage non volatil, dispositif d'accès et système de stockage non volatil |
EP2144167B1 (en) * | 2007-04-27 | 2012-07-18 | Fujitsu Limited | Remote file system, terminal device, and server device |
JP2009211234A (ja) * | 2008-03-01 | 2009-09-17 | Toshiba Corp | メモリシステム |
KR101543431B1 (ko) * | 2008-11-20 | 2015-08-11 | 삼성전자주식회사 | 불휘발성 메모리 시스템 및 그것의 액세스 방법 |
US8458562B1 (en) * | 2008-12-30 | 2013-06-04 | Micron Technology, Inc. | Secondary memory element for non-volatile memory |
US9396104B1 (en) * | 2010-03-22 | 2016-07-19 | Seagate Technology, Llc | Accessing compressed data of varying-sized quanta in non-volatile memory |
US9158678B2 (en) * | 2013-03-13 | 2015-10-13 | Kabushiki Kaisha Toshiba | Memory address management system and method |
DE102013214795A1 (de) * | 2013-07-29 | 2015-01-29 | Continental Automotive Gmbh | Tachografenanordnung und Verfahren zum Betreiben einer Tachografenanordnung |
KR102272228B1 (ko) * | 2014-05-13 | 2021-07-06 | 삼성전자주식회사 | 불휘발성 메모리 장치, 그것을 포함하는 저장 장치 및 그것의 동작 방법 |
CN106527957B (zh) * | 2015-09-09 | 2019-05-28 | 深圳市凯路创新科技有限公司 | 嵌入式数据采集终端的循环记录和采集方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001005928A (ja) * | 1999-06-17 | 2001-01-12 | Hitachi Maxell Ltd | Icカード |
JP2001344156A (ja) * | 2000-06-02 | 2001-12-14 | Canon Inc | フラッシュメモリを有する装置およびデータの書き換え方法 |
JP2003015929A (ja) * | 2001-06-28 | 2003-01-17 | Matsushita Electric Ind Co Ltd | 不揮発性メモリの制御方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4079506B2 (ja) * | 1997-08-08 | 2008-04-23 | 株式会社東芝 | 不揮発性半導体メモリシステムの制御方法 |
US6732222B1 (en) * | 2002-02-01 | 2004-05-04 | Silicon Motion, Inc. | Method for performing flash memory file management |
US6917539B2 (en) * | 2002-08-02 | 2005-07-12 | Unity Semiconductor Corporation | High-density NVRAM |
-
2005
- 2005-02-25 JP JP2006510464A patent/JPWO2005083573A1/ja active Pending
- 2005-02-25 WO PCT/JP2005/003136 patent/WO2005083573A1/ja active Application Filing
- 2005-02-25 CN CNB2005800060798A patent/CN100422962C/zh active Active
- 2005-02-25 US US10/598,307 patent/US7610435B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001005928A (ja) * | 1999-06-17 | 2001-01-12 | Hitachi Maxell Ltd | Icカード |
JP2001344156A (ja) * | 2000-06-02 | 2001-12-14 | Canon Inc | フラッシュメモリを有する装置およびデータの書き換え方法 |
JP2003015929A (ja) * | 2001-06-28 | 2003-01-17 | Matsushita Electric Ind Co Ltd | 不揮発性メモリの制御方法 |
Also Published As
Publication number | Publication date |
---|---|
CN100422962C (zh) | 2008-10-01 |
WO2005083573A1 (ja) | 2005-09-09 |
US20080028129A1 (en) | 2008-01-31 |
CN1922588A (zh) | 2007-02-28 |
US7610435B2 (en) | 2009-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPWO2005083573A1 (ja) | 半導体メモリ装置 | |
US8606987B2 (en) | Data writing method for flash memory and controller using the same | |
US8386698B2 (en) | Data accessing method for flash memory and storage system and controller using the same | |
US8055873B2 (en) | Data writing method for flash memory, and controller and system using the same | |
US7404031B2 (en) | Memory card, nonvolatile semiconductor memory, and method of controlling semiconductor memory | |
US20070214309A1 (en) | Nonvolatile storage device and data writing method thereof | |
US20080082737A1 (en) | Memory card and semiconductor device | |
JPWO2007000862A1 (ja) | メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びデータ書き込み方法 | |
TWI660271B (zh) | 整理指令記錄方法、記憶體控制電路單元與記憶體儲存裝置 | |
US8074128B2 (en) | Block management and replacement method, flash memory storage system and controller using the same | |
US7657697B2 (en) | Method of controlling a semiconductor memory device applied to a memory card | |
JP2007011872A (ja) | メモリカードとその制御方法 | |
US20090210612A1 (en) | Memory controller, nonvolatile memory device, and nonvolatile memory system | |
US9778862B2 (en) | Data storing method for preventing data losing during flush operation, memory control circuit unit and memory storage apparatus | |
US10496549B2 (en) | Memory manage method and storage controller using the same | |
JP4751037B2 (ja) | メモリカード | |
JP4661369B2 (ja) | メモリコントローラ | |
JP4308780B2 (ja) | 半導体メモリ装置、メモリコントローラ及びデータ記録方法 | |
JP2007233838A (ja) | メモリシステムの制御方法 | |
JP2012068765A (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
US20050204115A1 (en) | Semiconductor memory device, memory controller and data recording method | |
JP2006244017A (ja) | データコピー方法 | |
JP2012068764A (ja) | メモリコントローラ及びメモリコントローラを備える不揮発性メモリシステム、並びに不揮発性メモリの制御方法 | |
JP3999564B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP2012037971A (ja) | メモリコントローラ及びメモリコントローラを備える不揮発性メモリシステム、並びに不揮発性メモリの制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080109 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080109 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110111 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110906 |