JP2009211225A - メモリシステム - Google Patents
メモリシステム Download PDFInfo
- Publication number
- JP2009211225A JP2009211225A JP2008051470A JP2008051470A JP2009211225A JP 2009211225 A JP2009211225 A JP 2009211225A JP 2008051470 A JP2008051470 A JP 2008051470A JP 2008051470 A JP2008051470 A JP 2008051470A JP 2009211225 A JP2009211225 A JP 2009211225A
- Authority
- JP
- Japan
- Prior art keywords
- logical
- block
- track
- cluster
- management table
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7202—Allocation control and policies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7207—Details relating to flash memory management management of metadata or control data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7208—Multiple device management, e.g. distributing data over multiple flash devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7211—Wear leveling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
- Read Only Memory (AREA)
Abstract
【解決手段】データ消去の単位である物理ブロックを複数個夫々有する複数個の並列動作要素を備えた不揮発性半導体メモリと、複数の並列動作要素を並列駆動することが可能であり、且つ、並列駆動される複数の物理ブロックに対応付けられた論理ブロック単位で消去回数を管理する消去回数管理手段を有するコントローラとを有する。
【選択図】 図23
Description
以下、本発明の実施の形態について図面を参照して説明する。なお、以下の説明において、同一の機能および構成を有する要素については、同一符号を付し、重複説明は必要な場合にのみ行う。
・物理ページ:NANDメモリチップ内部において一括して書き込み/読み出しが可能な単位のこと。物理ページサイズは、例えば4kB。ただし、主データ(ユーザデータなど)に対してSSD内で付加される誤り訂正符号などの冗長ビットは含まないものとする。通常、4kB+冗長ビット(例えば、数10B)が同時にメモリセルに書き込まれる単位となるが、説明の便宜上、上記のように定義する。
・論理ページ:SSD内で設定される書き込み/読み出し単位であり、1以上の物理ページに対応付けられている。論理ページサイズは、例えば8ビットノーマルモードでは、4kB、32ビット倍速モードでは、32kB。ただし、冗長ビットは含まないものとする。
・物理ブロック:NANDメモリチップ内部において独立して消去可能な最小単位のことであり、複数の物理ページから構成される。物理ブロックサイズは、例えば512kB。ただし、主データに対してSSD内で付加される誤り訂正符号などの冗長ビットは含まないものとする。通常、512kB+冗長ビット(例えば、数10kB)が同時に消去される単位となるが、説明の便宜上、上記のように定義する。
・論理ブロック:SSD内で設定される消去単位であり、1以上の物理ブロックに対応付けられている。論理ブロックサイズは、例えば8ビットノーマルモードでは、512kB、32ビット倍速モードでは、4MB。ただし、冗長ビットは含まないものとする。
・セクタ:ホストからの最小アクセス単位のこと。セクタサイズは、例えば512B。
・クラスタ:SSD内で「小さなデータ」を管理する管理単位。クラスタサイズはセクタサイズ以上であり、クラスタサイズの2以上の自然数倍が論理ページサイズとなるように定められる。
・トラック:SSD内で「大きなデータ」を管理する管理単位。クラスタサイズの2以上の自然数倍がトラックサイズに、かつ、トラックサイズの2以上の自然数倍が論理ブロックサイズとなるように定められる。
・フリーブロック(FB):用途未割り当てのNAND型フラッシュメモリ上の論理ブロックのこと。用途を割り当てる際に消去してから使用する。
・バッドブロック(BB):NAND型フラッシュメモリ上の、誤りが多いなど記憶領域として使用できない物理ブロックのこと。例えば、消去動作が正常に終了しなかった物理ブロックがバッドブロックBBとして登録される。
・書き込み効率:所定期間内における、ホストから書き込んだデータ量に対する、論理ブロックの消去量の統計値のこと。小さいほどNAND型フラッシュメモリの消耗度が小さい。
・有効クラスタ:最新のデータを保持しているクラスタ。
・無効クラスタ:最新ではないデータを保持しているクラスタ。
・有効トラック:最新のデータを保持しているトラック。
・無効トラック:最新ではないデータを保持しているトラック。
・コンパクション:管理対象内の論理ブロックから、有効クラスタや有効トラックのみを取り出して、新しい論理ブロックに書き直すこと。
[第1の実施形態]
(1)8ビットノーマルモード
1chだけ動作させ、8ビット単位でデータ転送を行うモードである。物理ページサイズ(4kB)で書き込み/読み出しが行われる。また、物理ブロックサイズ(512kB)で消去が行われる。1つの物理ブロックに対して1つの論理ブロックが対応付けられ、論理ブロックサイズは512kBとなる。
(2)32ビットノーマルモード
4ch並列で動作させ、32ビット単位でデータ転送を行うモードである。物理ページサイズ×4(16kB)で書き込み/読み出しが行われる。また、物理ブロックサイズ×4(2MB)で消去が行われる。4つの物理ブロックに対して1つの論理ブロックが対応付けられ、論理ブロックサイズは2MBとなる。
(3)32ビット倍速モード
4ch並列で動作させ、更に、NANDメモリチップの倍速モードを利用して書き込み/読み出しを行うモードである。物理ページサイズ×4×2(32kB)で書き込み/読み出しが行われる。また、物理ブロックサイズ×4×2(4MB)で消去が行われる。8つの物理ブロックに対して1つの論理ブロックが対応付けられ、論理ブロックサイズは4MBとなる。
RC22について説明する。RC22は、ATAコマンド処理部121からのRead要求に対して、NANDメモリ10(FS12、IS13、MS11)からのReadデータを一時的に保存するための領域である。RC22は、本実施形態では例えば、m-line、n-way(mは2(k−i)以上の自然数、nは2以上の自然数)セットアソシアティブ方式で管理されており、1エントリに1クラスタ分のデータを保持できる。論理クラスタアドレスのLSB(k−i)ビットでlineが決定される。なお、RC22は、フルアソシアティブ方式で管理されていても良いし、単純なFIFO方式で管理されていてもよい。
WC21について説明する。WC21は、ATAコマンド処理部121からのWrite要求に対して、ホスト装置1からのWriteデータを一時的に保存するための領域である。m-line、n-way(mは2(k−i)以上の自然数、nは2以上の自然数)セットアソシアティブ方式で管理されており、1エントリに1クラスタ分のデータを保持できる。論理クラスタアドレスのLSB(k−i)ビットでlineが決定される。例えば、way1〜waynの順で書き込み可能なwayが検索される。また、WC21に登録されているトラックは最も古く更新された順が分かるように後述するWCトラック管理テーブル24のFIFO構造によってLRU(Least Recently Used)で管理される。なお、WC21は、フルアソシアティブ方式で管理されていても良い。また、WC21は、RC22とline数、way数が互いに異なっていてもよい。
(i)タグによって決定されたlineの書き込み可能なwayが最後の(本実施形態では、n個目の)空きwayだった場合、則ち最後の空きwayが使用される場合は、そのlineに登録されたトラックのうち、LRUに基づいて最も古く更新されたトラックを追い出し確定する。
(ii)WC21に登録されている異なるトラックの個数が所定数を超えた場合、LRU順で、当該トラックに属するWC中のクラスタ数が所定数未満のトラックの追い出しを確定する。
つぎに、FS12について説明する。FS12はクラスタ単位でデータを管理されるFIFOである。FS12は、ここを通過しているデータは、後段のIS13よりも更新頻度が高いとみなすためのバッファである。すなわち、FS12のFIFO構造においては、FIFO中を通過中の有効クラスタ(最新クラスタ)は、ホストからの同じアドレスに対する再書き込みがあった場合無効化されるので、FS12を通過中のクラスタは、FS12からIS13やMS11に追い出されたクラスタよりも、更新頻度が高いとみなすことができる。
つぎに、IS13について説明する。IS13は、FS13と同様にクラスタ単位でデータの管理が行われる。前述したように、IS13に格納されたデータは、更新頻度が低いデータとみなすことができる。FS12からIS13に対して論理ブロックの移動(Move)、すなわちFS12からの追い出しが発生すると、以前FS12の管理対象であった追い出し対象の論理ブロックはポインタの付け替えによりIS13の管理対象ブロックとなる。このFS12からIS13への論理ブロックの移動により、IS13のブロック数がIS13として許容される所定の上限値を超えると、すなわちIS内の書き込み可能なフリーブロックFBの数が閾値を下回ると、IS13からMS11へのデータ追い出しおよびコンパクション処理が実行され、IS13のブロック数は規定値に戻される。
・トラックをトラック内の有効クラスタ数×有効クラスタ係数(トラックがMS11内で無効トラックが存在する論理ブロックに存在するか否かによって重み付けされる数であり、存在したほうが存在しない場合より数が大きい)順にソートし、積の値が大きいトラック2i+1個(2論理ブロック分)を集めて論理ブロックサイズの自然数倍にしてMSIB11aに追い出す。
・有効クラスタ数が最も少ない2つの論理ブロックの合計有効クラスタ数が例えば、所定の設定値である2k個(1論理ブロック分)以上ある場合は、上のステップを繰り返す(IS内の2つの論理ブロックから、フリーブロックFBを作れるようになるまで行うため)。
・有効クラスタ数の少ない論理ブロックから順にクラスタを2k個集め、IS13内でコンパクションを行う。
なお、ここでは有効クラスタ数が最も少ない2つの論理ブロックを選択するとしたが、この数は2つに限定されず、2つ以上の数であればよい。また、所定の設定値は、選択する論路ブロック数よりも1つ少ない論理ブロック数に収容可能なクラスタ数以下であればよい。
つぎに、MS11について説明する。MS11はトラック単位でデータの管理を行う。MS11に格納されたデータは、更新頻度が低いとみなすことができる。WC21、FS12、IS13からMS11に対してトラックデータのCopyまたはMoveが発生すると、そのトラックはMSIS11aに割り当てられた論理ブロックに対して書き込まれる。一方で、トラック中の一部のデータ(クラスタ)のみがWC等から書き込まれるような場合には、既存のMS中のトラックデータと新しいデータをマージして新しいトラックデータを作った上でMSIB11aに書き込む、後述する受動マージが行われる。MS11内に無効トラックが蓄積し、MS11に割り当てられている論理ブロックの個数がMS11として許容されるブロック数の上限値を越えるような状況が発生すると、コンパクション処理を行って、無効なフリーブロックFBを作る。
・有効トラックが少ない論理ブロックから順番に、無効トラックを合わせることによって無効なフリーブロックFBが作れるようになるまで選択する。
・選択した論理ブロックに収容されたトラックを、WC21、FS12、IS13内のデータと統合する受動マージを行いながらコンパクションを実行する。
・2iトラック統合できた論理ブロックは、TFS11bに出力し(2iトラックMSコンパクション)、2iトラックに満たない個数のトラックは、MSIB11aに出力して(2iトラック未満コンパクション)、より多くの無効なフリーブロックFBを作る。
まず、図9を用いてRCクラスタ管理テーブル23について説明する。RC22は、前述したように、論理クラスタアドレスLSB(k−i)ビットでインデックスされるn-wayセットアソシアティブ方式で管理されている。RCクラスタ管理テーブル23は、RC(クラスタサイズ×m-line×n-way)22の各エントリのタグを管理するためのテーブルであり、各タグは、複数ビットの状態フラグ23aと、論理トラックアドレス23bによって構成されている。状態フラグ23aには、当該エントリを使用しても良いか否か(有効/無効)を示すValidビットの他に、当該エントリがNANDメモリ10からの読み出し待ちか否かを示すビット、当該エントリがATAコマンド処理部121への読み出し待ちか否かを示すビットなどが含まれる。RCクラスタ管理テーブル23は、DRAM20上のタグ記憶位置からLBAに一致する論理トラックアドレスを検索する逆引きテーブルとして機能する。
つぎに、図10を用いてWCクラスタ管理テーブル25について説明する。WC21は、前述したように、論理クラスタアドレスLSB(k−i)ビットでインデックスされるn-wayセットアソシアティブ方式で管理されている。WCクラスタ管理テーブル25は、WC(クラスタサイズ×m-line×n-way)21の各エントリのタグを管理するためのテーブルであり、各タグは、複数ビットの状態フラグ25aと、セクタ位置ビットマップ25bと、論理トラックアドレス25cによって構成されている。
つぎに、図11を用いてWCトラック管理テーブル24について説明する。WCトラック管理テーブル24は、WC21上に格納されているクラスタをトラック単位でまとめた情報を管理するものであり、FIFO的な機能を有するリンクドリスト構造によってトラック間のWC21に登録された順序(LRU)を表現している。なお、WC21で最後に更新された順序によってLRUを表現するようにしてもよい。各リストのエントリは、論理トラックアドレス24a、当該論理トラックアドレスに含まれるWC21中の有効クラスタ数24b、way-lineビットマップ24cおよび次のエントリへのポインタを示すnextポインタ24dから構成されている。WCトラック管理テーブル24は、論理トラックアドレス24aから所要情報を得るので、正引きテーブルとして機能する。
つぎに、図12を用いてトラック管理テーブル30について説明する。トラック管理テーブル30は、論理トラックアドレス単位でMS11上の論理的なデータ位置を管理するためのテーブルであり、クラスタ単位でFS12やIS13にデータが保持されている場合には、それらに関する基本情報と、詳細情報へのポインタも保持している。論理トラックアドレス30aをインデックスとした配列形式で構成される。論理トラックアドレス30aをインデックスとした各エントリは、クラスタビットマップ30b、論理ブロックID30c+論理ブロック内トラック位置30d、クラスタテーブルポインタ30e、FSクラスタ数30f、ISクラスタ数30gなどの情報で構成されている。トラック管理テーブル30は、論理トラックアドレスをインデックスとして、その論理トラックアドレスに対応する論理トラックが記憶されている論理ブロックID(記憶デバイス位置に対応)などの所要情報を得るので、正引きテーブルとして機能する。
つぎに、図13を用いてFS/IS管理テーブル40について説明する。FS/IS管理テーブル40は、論理クラスタ単位でFS12(FSIB12aも含む)もしくはIS13に保持されているデータの位置を管理するためのテーブルである。図13に示すように、論理トラックアドレス毎に独立したリンクドリスト形式で構成され、各リストの先頭エントリへのポインタは、前述したように、トラック管理テーブル30のクラスタテーブルポインタ30eのフィールドに保持されている。図13では、2つの論理トラックアドレス分のリンクドリストが示されている。各エントリは、論理クラスタアドレス40a、論理ブロックID40b、論理ブロック内クラスタ位置40c、FS/ISブロックID40d、nextポインタ40eから構成されている。FS/IS管理テーブル40は、論理クラスタアドレス40aから、その論理クラスタアドレスに対応する論理クラスタが記憶されている論理ブロックID40b、論理ブロックン内クラスタ位置40c(記憶デバイス位置に対応)などの所要情報を得るので、正引きテーブルとして機能する。
つぎに、図14を用いてMS論理ブロック管理テーブル35について説明する。MS論理ブロック管理テーブル35は、MS11に用いられている論理ブロックに関する情報(どの論理トラックが記憶されているか、追記可能か等)を一元管理するためのテーブルである。なお、MS論理ブロック管理テーブル35には、FS12(FSIB12も含む)、IS13に所属する論理ブロックに関する情報も登録されている。MS論理ブロック管理テーブル35は、論理ブロックID35aをインデックスとした配列形式で構成され、エントリ数は128GBのNANDメモリ10の場合は、32Kエントリまで持つことができる。各エントリは、2iトラック分のトラック管理ポインタ35b、有効トラック数35c、書き込み可能先頭トラック35d、Validフラグ35eから構成されている。このMS論理ブロック管理テーブル35は、記憶デバイス位置に対応する論理ブロックID35aから、この論理ブロックに記憶されている論理トラックアドレスなどの所要情報を得るので、逆引きテーブルとして機能する。
つぎに、図15を用いてFS/IS論理ブロック管理テーブル42について説明する。FS/IS論理ブロック管理テーブル42は、FS/ISブロックID42aをインデックスとした配列形式で構成され、FS12またはIS13として利用されている論理ブロックに関する情報(論理ブロックIDとの対応、FS/IS内クラスタ管理テーブル44へのインデックス、追記可能か等)を管理するためのテーブルである。FS/IS論理ブロック管理テーブル42は、主にFS/IS管理テーブル40中のFS/ISブロックID40dを用いてアクセスされる。各エントリは、論理ブロックID42b、ブロック内クラスタテーブル42c、有効クラスタ数42d、書き込み可能先頭ページ42e、Validフラグ42fから構成されている。このMS論理ブロック管理テーブル35は、記憶デバイス位置に対応するFS/ISブロックID42aから、この論理ブロックに記憶されている論理クラスタなどの所要情報を得るので、逆引きテーブルとして機能する。
つぎに、図16を用いてFS/IS内クラスタ管理テーブル44について説明する。FS/IS内クラスタ管理テーブル44は、FS12もしくはIS13として利用されている論理ブロック中の各クラスタ位置にどの論理クラスタが記録されているのかを示すテーブルである。1論理ブロックあたり、2jページ×2(k−j)クラスタ=2k個のエントリを持ち、当該論理ブロック内のクラスタ位置の0番目〜2k−1番目に対応する情報が連続領域に配置される。さらにこの2k個の情報を含むテーブルがFS12およびIS13に所属する論理ブロック数(P個)分だけ保持されており、FS/IS論理ブロック管理テーブル42のブロック内クラスタテーブル42cは、このP個のテーブルに対する位置情報(ポインタ)となっている。連続領域に配される各エントリ44aの位置は、1論理ブロック中のクラスタ位置を示し、また各エントリ44aの内容は、当該クラスタ位置にどの論理クラスタが記憶されているかが識別できるように、FS/IS管理テーブル40で管理される該当論理クラスタアドレスを含むリストへのポインタが登録されている。すなわち、エントリ44aは、リンクドリストの先頭を指し示すのではなく、リンクドリスト中の該当論理クラスタアドレスを含む1つのリストへのポインタが登録されている。
つぎに、図17を用いて論物変換テーブル50について説明する。論物変換テーブル50は、論理ブロックID50aをインデックスとした配列形式で構成され、エントリ数は、128GBのNANDメモリ10の場合は、最大32Kエントリまで持つことができる。論物変換テーブル50は、論理ブロックIDと物理ブロックIDとの変換、寿命に関する情報を管理するためのテーブルである。各エントリは、物理ブロックアドレス50b、消去回数50c、読み出し回数50dから構成される。この論物変換テーブル50は、論理ブロックIDから物理ブロックID(物理ブロックアドレス)などの所要情報を得るので、正引きテーブルとして機能する。
RC管理:RCクラスタ管理テーブル
WC管理:WCクラスタ管理テーブル、WCトラック管理テーブル
MS管理:トラック管理テーブル30、MS論理ブロック管理テーブル35
FS/IS管理:トラック管理テーブル30、FS/IS管理テーブル40、MS論理ブロック管理テーブル35、FS/IS論理ブロック管理テーブル42、FS/IS内クラスタ管理テーブル44
つぎに、図18に示すフローチャートを参照して、読み出し処理について説明する。ATAコマンド処理部121から、Readコマンドおよび読み出しアドレスとしてのLBAが入力されると、データ管理部120は、図9に示したRCクラスタ管理テーブル23と図10に示したWCクラスタ管理テーブル25を検索する(ステップS100)。具体的には、LBAのクラスタアドレスのLSB(k−i)ビット(図7参照)に対応するlineをRCクラスタ管理テーブル23とWCクラスタ管理テーブル25から選択し、選択したlineの各wayにエントリされている論理トラックアドレス23b、25cをLBAのトラックアドレスと比較し(ステップS110)、一致したwayが存在している場合は、キャッシュヒットとし、ヒットしたRCクラスタ管理テーブル23またはWCクラスタ管理テーブル25の該当line、該当wayに対応するWC21またはRC22のデータを読み出して、ATAコマンド処理部121に送る(ステップS115)。
つぎに、図19に示すフローチャートを参照して、書き込み処理について説明する。FUA(DRAMキャッシュをバイパスしてNANDへの直接書き込みを行う)でないWriteコマンドにより書き込まれたデータは必ず一旦WC21上に格納され、その後条件に応じてNANDメモリ10に対して書き込まれることになる。書き込み処理では、追い出し処理、コンパクション処理が発生する可能性がある。この実施の形態では、書き込み処理を、ライトキャッシュフラッシュ処理(以下WCF処理)と、クリーンインプットバッファ処理(以下CIB処理)との2ステージに大きく分割している。ステップS300からステップS320までは、ATAコマンド処理部121からのWrite要求からWCF処理までを示しており、ステップS330〜最終ステップまでがCIB処理を示している。
(i) タグによって決定されたlineの書き込み可能なwayが最後の(本実施形態では、n個目の)空きwayだった場合、則ち最後の空きwayが使用される場合は、そのlineに登録されたトラックのうちLRUに基づいて最も古く更新されたトラックを追い出し確定する
に基づいて追い出すトラックすなわちWC21内エントリを選択する。
(ii)WC21に登録されているトラックの数が所定数を超えた場合、
が成立した場合も、上記同様にしてNANDメモリ10への追い出し処理を実行する。
つぎに、上記有効クラスタ数(有効クラスタ数が2(k−i−1)個以上)に基づく判定によりWC21からMSIB11aへの追い出しが発生したときは、前述したように、次のような手順を実行する(ステップS310)。
1.WCクラスタ管理テーブル25を参照し、追い出しを行うクラスタに対応するタグ中のセクタ位置ビットマップ25bを参照し、セクタ位置ビットマップ25bが全て“1”でない場合は、NANDメモリ10に含まれる同一クラスタ中のセクタとマージする、後述のトラック内セクタ穴埋めを行う。また、トラック中のWC21内に存在しないクラスタについてはNANDメモリ10から読み出してマージする、受動マージ処理を実行する。
2.追い出し確定トラックが2i個未満の場合、WC21中のトラックの古いものから2i個になるまで2(k−i−1)個以上有効クラスタを持つ追い出し確定トラックを追加する。
3.Copyされるトラックが2i個以上あれば、2i個ずつを組として、MSIB11aに対して論理ブロック単位に書き込みを行う。
4.2i個組みに出来なかったトラックをMSIB11aに対してトラック単位に書き込みを行う。
5.Copy終了後に既にFS、IS、MS上に存在していたクラスタ、トラックのうちコピーされたトラックに属するものを無効化する。
つぎに、上記有効クラスタ数(有効クラスタ数が2(k−i−1)個未満)に基づく判定によりWC21からFSIB12aへの追い出しが発生したときは、前述したように、次のような手順を実行する。
1.WCクラスタ管理テーブル25における追い出しを行うクラスタに対応するタグ中のセクタ位置ビットマップ25bを参照し、セクタ位置ビットマップ25bが全て“1”でない場合は、NANDメモリ10に含まれる同一クラスタ中のセクタとマージする、クラスタ内セクタ穴埋めを行う。
2.WC内のトラックを古い順に辿って2(k−i−1)個未満の有効クラスタしか持たないトラックからクラスタを取り出して行き、有効クラスタ数が2k個になったらそれら全クラスタをFSIB12aに論理ブロック単位に書き込む。
3.2k個見つからなかった場合には、有効クラスタ数が2(k−i−1)個未満の全てのトラックを必要な論理ページ数分だけFSIB12aに書き込む。
4.Copy終了後に既にFS、IS上に存在していたクラスタのうちコピーされたのと同じものを無効化する。
上記のようなWCF処理が終了すると、つぎに、論理NAND層管理部120bは、WCF処理によって書き込まれたFSIB12aのデータをFS12にMoveする処理と、WCF処理によって書き込まれたMSIB11aのデータをMS11にMoveする処理などを含むCIB処理を実行する。CIB処理を開始すると、前述したように、連鎖的に各ブロック間のデータ移動やコンパクション処理が発生する可能性があり、処理全体に要する時間は状態によって大きく変化する。このCIB処理においては、基本的には、先ずMS11でのCIB処理が行われ(ステップS330)、つぎに、FS12でのCIB処理が行われ(ステップS340)、つぎに再びMS11でのCIB処理が行われ(ステップS350)、つぎにIS13でのCIB処理が行われ(ステップS360)、最後に再びMS11でのCIB処理が行われる(ステップS370)。なお、FS12からMSIB11aへの追い出し処理、あるいはFS12からIS13への追い出し処理、あるいはIS13からMSIB11aへの追い出し処理の際に、手順にループが発生した場合は、上記順番通りにならない場合もある。MS11、FS12およびIS13でのCIB処理を別々に説明する。
まず、MS11でのCIB処理について説明する(ステップS330)。WC21、FS12、IS13からMS11に対してトラックデータの移動が発生すると、そのトラックデータはMSIB11aに書き込まれる。MSIB11aへの書き込み完了後は、前述したように、トラック管理テーブル30を更新してトラックが配置される論理ブロックID30cとブロック内トラック位置30dなどを変更する(Move)。MSIB11aに新たなトラックデータが書き込まれた場合、もともとMS11もしくはTFS11bに存在していたトラックデータは無効化される。この無効化処理は、MS論理ブロック管理テーブル35における古いトラック情報が保存されていた論理ブロックのエントリからトラックを無効化することで実現する。具体的には、MS論理ブロック管理テーブル35の該当エントリ中のトラック管理ポインタ35bのフィールド中の該当トラックのポインタが削除され、有効トラック数が−1される。このトラック無効化によって1論理ブロック中の全てのトラックが無効になった場合は、Validフラグ35eが無効化される。このような無効化などにより、MS11のブロックは無効なトラックを含んだものが発生し、これが繰り返されるとブロックの利用効率が低下して、使用可能な論理ブロックに不足が生じることがある。
1.MS論理ブロック管理テーブル35のValidフラグ35eを参照することにより、MS11内に無効となった論理ブロックが存在する場合、そのブロックを無効なフリーブロックFBとする。
2.MSIB11aでフルに成った論理ブロックをMS11に追い出す。具体的には、前述したMS構造管理テーブル(図示せず)を更新して、該当論理ブロックをMSIB管理下からMS管理下に移し変える。
3.MS11に割り当てられている論理ブロックの個数がMS11として許容されるブロック数の上限値を越えるような状況が発生するか否かを判断し、発生している場合に、以下のMSコンパクションを実行する。
4.MS論理ブロック管理テーブル35の有効トラック数35cのフィールドなどを参照することにより、TFS11bに含まれない論理ブロックのうち無効にされたトラックを持つものを、有効トラック数でソートする。
5.有効トラック数の少ない論理ブロックから、トラックを集めてコンパクションを実施する。この際にまず、1論理ブロック分(2iトラック)ずつCopyしてコンパクションを実施する。なお、コンパクション対象のトラックがWC21、FS12、IS13に有効クラスタを持つ場合にはそれらもマージする。
6.コンパクション元の論理ブロックを無効なフリーブロックFBとする。
7.コンパクションして有効な2iトラックで構成された1論理ブロックができたら、TFS11bの先頭にMoveする。
8.論理ブロック内の有効トラックを他の論理ブロックにCopyして、無効なフリーブロックFBが作れる場合は、2iトラック未満の個数の有効トラックをMSIB11aに対し、トラック単位で追記書き込みする。
9.コンパクション元の論理ブロックを無効なフリーブロックFBとする。
10.MS11に割り当てられている論理ブロックの個数がMS11として許容されるブロック数の上限値を下回ると、MSコンパクション処理を終了する。
つぎに、FS12でのCIB処理について説明する(ステップS340)。WC21からFSIB12aへのクラスタ書き込み処理によって全ページ書き込み済みの論理ブロックがFSIB12a中に作られた場合、FSIB12a中のそれらのブロックは、FSIB12aからFS12に対してMoveされる。このMoveにともなって複数の論理ブロックで構成されるFIFO構造のFS12から古い論理ブロックが追い出される状況が発生する。
1.FS/IS論理ブロック管理テーブル42のValidフラグ35eなどを参照することにより、FS12内に無効となった論理ブロックが存在する場合、そのブロックを無効なフリーブロックFBとする。
2.FSIB12aでフルに成ったブロックをFS12に追い出す。具体的には、前述したFS/IS構造管理テーブル(図示せず)を更新して、該当ブロックをFSIB管理下からFS管理下に移し変える。
3.FS12に割り当てられている論理ブロックの個数がFS12として許容されるブロック数の上限値を越えるような状況が発生するか否かを判断し、発生している場合に、以下の追い出しを実行する。
4.まず追い出し対象の最古の論理ブロック中のクラスタデータのうちIS13に移動せずに、直接MS11に移動すべきものを決定する(実際には、MSの管理単位がトラックであるので、トラック単位での決定)。
(ア)追い出し対象の論理ブロック中の有効クラスタをページの先頭から順にスキャンする
(イ)クラスタが属するトラックがFS中に何個の有効クラスタを保有しているか、トラック管理テーブル30のFSクラスタ数30fのフィールドを参照して検索する。
(ウ)トラック内有効クラスタ数が所定の閾値(例えば2k−i個の50%)以上だった場合、そのトラックをMSへの追い出し候補とする。
5.MS11に追い出すべきトラックをMSIB11aに対して書き込む。
6.追い出しトラックが残っている場合、さらにMSIB11への追い出しを実行する。
7.上記2〜4の処理の後も追い出し対象の論理ブロックに有効なクラスタが存在している場合、この論理ブロックをIS13にMoveする。
なお、FS12からMSIB11aへの追い出しが発生したときには、その直後、MS11での前述したCIB処理が実行される(ステップS350)。
つぎに、IS13でのCIB処理について説明する(ステップS360)。上記したFS12からIS13へのブロック移動によって論理ブロックがIS13に追加されるが、これにともなって複数個の論理ブロックで構成されるIS13に対して管理可能なブロック数の上限を超えてしまう状況が発生する。このような状況が発生した場合、IS13では、まずMS11への1〜複数個の論理ブロックの追い出しを行った後、ISコンパクションを実行する。具体的には、次のような手順を実行する。
1.IS13に含まれるトラックをトラック内の有効クラスタ数×有効クラスタ係数でソートし、積の値が大きいトラック2i+1個(2論理ブロック分)を集めてMSIB11aに追い出す。
2.有効クラスタ数が最も少ない2i+1個の論理ブロックの合計有効クラスタ数が例えば、所定の設定値である2k個(1論理ブロック分)以上ある場合は、上のステップを繰り返す。
3.上記の追い出しを行った後、有効クラスタ数の少ない論理ブロックから順にクラスタを2k個集め、IS13内でコンパクションを行う。
4.コンパクション元の論理ブロックのうち有効クラスタがなくなったものを無効なフリーブロックFBとして返還する。
なお、IS13からMSIB11aへの追い出しが発生したときには、その直後、MS11での前述したCIB処理が実行される(ステップS370)。
論理ブロックL0は、例えば、1行3列、2行2列、3行2列、4行2列、5行2列、6行2列、7行2列、8行3列の8個の物理ブロックで構成されている。また、破線BL1で囲まれた論理ブロックL1は、例えば、1行4列、2行3列、3行3列、4行3列、5行3列、6行3列、7行3列、8行4列の8個の物理ブロックで構成されているとする。
Claims (4)
- データ消去の単位である物理ブロックを複数個夫々有する複数個の並列動作要素を備えた不揮発性半導体メモリと、
前記複数の並列動作要素を並列駆動することが可能であり、且つ、前記並列駆動される複数の物理ブロックに対応付けられた論理ブロック単位で消去回数を管理する消去回数管理手段を有するコントローラと、
を備えたことを特徴とするメモリシステム。 - 前記コントローラは、
前記論理ブロック中に、物理ブロック単位で管理されるバッドブロックが発生した場合、前記バッドブロックを同一並列動作要素内の他の物理ブロックに入れ替えるバッドブロック管理手段をさらに備えることを特徴とする請求項1に記載のメモリシステム。 - 前記消去回数管理手段は、
前記バッドブロック管理手段による物理ブロック単位のバッドブロックの入れ替えが発生した場合、論理ブロック単位に管理される前記消去回数を維持することを特徴とする請求項2に記載のメモリシステム。 - 前記コントローラは、
前記複数の並列動作要素のうちの少なくとも1つを単独駆動することが可能であり、且つ、前記単独駆動を行う場合、前記論理ブロックに割り当てられた複数の物理ブロックを同じ回数ずつ均等に使用することを特徴とする請求項1に記載のメモリシステム。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008051470A JP5010505B2 (ja) | 2008-03-01 | 2008-03-01 | メモリシステム |
EP09713660A EP2250565A4 (en) | 2008-03-01 | 2009-02-10 | MEMORY SYSTEM |
KR1020097018122A KR101079890B1 (ko) | 2008-03-01 | 2009-02-10 | 메모리 시스템 |
PCT/JP2009/052595 WO2009110302A1 (en) | 2008-03-01 | 2009-02-10 | Memory system |
CN200980000136XA CN101689140B (zh) | 2008-03-01 | 2009-02-10 | 存储器系统 |
US12/529,139 US8447914B2 (en) | 2008-03-01 | 2009-02-10 | Memory system managing the number of times of erasing |
TW098105828A TWI388988B (zh) | 2008-03-01 | 2009-02-24 | 記憶體系統 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008051470A JP5010505B2 (ja) | 2008-03-01 | 2008-03-01 | メモリシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009211225A true JP2009211225A (ja) | 2009-09-17 |
JP5010505B2 JP5010505B2 (ja) | 2012-08-29 |
Family
ID=41055863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008051470A Active JP5010505B2 (ja) | 2008-03-01 | 2008-03-01 | メモリシステム |
Country Status (7)
Country | Link |
---|---|
US (1) | US8447914B2 (ja) |
EP (1) | EP2250565A4 (ja) |
JP (1) | JP5010505B2 (ja) |
KR (1) | KR101079890B1 (ja) |
CN (1) | CN101689140B (ja) |
TW (1) | TWI388988B (ja) |
WO (1) | WO2009110302A1 (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011180773A (ja) * | 2010-02-26 | 2011-09-15 | Toshiba Corp | メモリシステム |
JP2011197788A (ja) * | 2010-03-17 | 2011-10-06 | Toshiba Corp | メモリシステム |
JP2011258182A (ja) * | 2010-05-12 | 2011-12-22 | Panasonic Corp | 半導体メモリ装置及び半導体メモリシステム |
US8671257B2 (en) | 2011-05-30 | 2014-03-11 | Kabushiki Kaisha Toshiba | Memory system having multiple channels and method of generating read commands for compaction in memory system |
US8924636B2 (en) | 2012-02-23 | 2014-12-30 | Kabushiki Kaisha Toshiba | Management information generating method, logical block constructing method, and semiconductor memory device |
US9251055B2 (en) | 2012-02-23 | 2016-02-02 | Kabushiki Kaisha Toshiba | Memory system and control method of memory system |
US9483411B2 (en) | 2014-03-05 | 2016-11-01 | Kabushiki Kaisha Toshiba | Memory system which transfers management information between first and second memories in a burst mode before a read process is performed on a third memory |
JP2019212103A (ja) * | 2018-06-06 | 2019-12-12 | 東芝メモリ株式会社 | メモリシステム |
JP2021507372A (ja) * | 2017-12-13 | 2021-02-22 | マイクロン テクノロジー,インク. | 可変幅スーパーブロックのアドレス指定 |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009084724A1 (en) | 2007-12-28 | 2009-07-09 | Kabushiki Kaisha Toshiba | Semiconductor storage device |
JP4461170B2 (ja) | 2007-12-28 | 2010-05-12 | 株式会社東芝 | メモリシステム |
JP2009205555A (ja) * | 2008-02-28 | 2009-09-10 | Toshiba Corp | メモリシステム |
JP5032371B2 (ja) * | 2008-03-01 | 2012-09-26 | 株式会社東芝 | メモリシステム |
JP4653817B2 (ja) * | 2008-03-01 | 2011-03-16 | 株式会社東芝 | メモリシステム |
JP4439569B2 (ja) * | 2008-04-24 | 2010-03-24 | 株式会社東芝 | メモリシステム |
JP5221332B2 (ja) * | 2008-12-27 | 2013-06-26 | 株式会社東芝 | メモリシステム |
JP5317690B2 (ja) * | 2008-12-27 | 2013-10-16 | 株式会社東芝 | メモリシステム |
EP2396729B1 (en) | 2009-02-12 | 2019-05-22 | Toshiba Memory Corporation | Memory system and method of controlling memory system |
TW201037711A (en) * | 2009-04-13 | 2010-10-16 | Jmicron Technology Corp | Data access method used in multi-channel flash memory system and data access apparatus thereof |
US8375162B2 (en) * | 2009-06-03 | 2013-02-12 | Ocz Technology Group Inc. | Method and apparatus for reducing write cycles in NAND-based flash memory devices |
JP2011070346A (ja) * | 2009-09-25 | 2011-04-07 | Toshiba Corp | メモリシステム |
JP2012123499A (ja) | 2010-12-07 | 2012-06-28 | Toshiba Corp | メモリシステム |
JP5813589B2 (ja) * | 2012-07-13 | 2015-11-17 | 株式会社東芝 | メモリシステムおよびその制御方法 |
US9734050B2 (en) | 2012-12-31 | 2017-08-15 | Sandisk Technologies Llc | Method and system for managing background operations in a multi-layer memory |
US9734911B2 (en) * | 2012-12-31 | 2017-08-15 | Sandisk Technologies Llc | Method and system for asynchronous die operations in a non-volatile memory |
US10445229B1 (en) * | 2013-01-28 | 2019-10-15 | Radian Memory Systems, Inc. | Memory controller with at least one address segment defined for which data is striped across flash memory dies, with a common address offset being used to obtain physical addresses for the data in each of the dies |
CN104021816B (zh) * | 2013-03-01 | 2017-03-29 | 安凯(广州)微电子技术有限公司 | 一种测试nftl的方法及系统 |
CN104424103B (zh) * | 2013-08-21 | 2018-05-29 | 光宝科技股份有限公司 | 固态储存装置中高速缓存的管理方法 |
KR102225989B1 (ko) | 2014-03-04 | 2021-03-10 | 삼성전자주식회사 | 불휘발성 메모리 시스템 및 그것의 동작 방법 |
KR102285462B1 (ko) * | 2014-03-26 | 2021-08-05 | 삼성전자주식회사 | 불휘발성 메모리 및 메모리 컨트롤러를 포함하는 메모리 시스템의 동작 방법 |
KR101963629B1 (ko) * | 2016-07-07 | 2019-03-29 | 고려대학교 산학협력단 | 메모리 관리 시스템 및 그 방법 |
JP2018160189A (ja) * | 2017-03-23 | 2018-10-11 | 東芝メモリ株式会社 | メモリシステム |
JP7109949B2 (ja) * | 2018-03-23 | 2022-08-01 | キオクシア株式会社 | メモリシステム及びメモリシステムの制御方法 |
KR102533207B1 (ko) * | 2018-08-30 | 2023-05-17 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템 |
KR20200085513A (ko) * | 2019-01-07 | 2020-07-15 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템 |
CN113485641B (zh) * | 2021-06-29 | 2024-04-16 | 成都忆芯科技有限公司 | 处理io命令的方法及其控制部件 |
CN113485948B (zh) * | 2021-06-29 | 2023-11-14 | 成都忆芯科技有限公司 | Nvm坏块管理方法与控制部件 |
US11467970B1 (en) | 2021-08-03 | 2022-10-11 | Kioxia Corporation | Metadata management in non-volatile memory devices using in-memory journal |
US20230044942A1 (en) * | 2021-08-03 | 2023-02-09 | Kioxia Corporation | Conditional update, delayed lookup |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002046929A1 (en) * | 2000-12-06 | 2002-06-13 | Tdk Corporation | Method of controlling flash memory |
JP2003228513A (ja) * | 2001-11-28 | 2003-08-15 | Access:Kk | メモリ制御方法および装置 |
JP2006504201A (ja) * | 2002-10-28 | 2006-02-02 | サンディスク コーポレイション | 不揮発性記憶システムにおける自動損耗均等化 |
JP2007334413A (ja) * | 2006-06-12 | 2007-12-27 | Sony Corp | 記憶装置 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR970008188B1 (ko) | 1993-04-08 | 1997-05-21 | 가부시끼가이샤 히다찌세이사꾸쇼 | 플래시메모리의 제어방법 및 그것을 사용한 정보처리장치 |
JP3976839B2 (ja) | 1996-07-09 | 2007-09-19 | 株式会社ルネサステクノロジ | 不揮発性メモリシステムおよび不揮発性半導体メモリ |
US6000006A (en) * | 1997-08-25 | 1999-12-07 | Bit Microsystems, Inc. | Unified re-map and cache-index table with dual write-counters for wear-leveling of non-volatile flash RAM mass storage |
US7966462B2 (en) * | 1999-08-04 | 2011-06-21 | Super Talent Electronics, Inc. | Multi-channel flash module with plane-interleaved sequential ECC writes and background recycling to restricted-write flash chips |
US20050144516A1 (en) | 2003-12-30 | 2005-06-30 | Gonzalez Carlos J. | Adaptive deterministic grouping of blocks into multi-block units |
US7441067B2 (en) | 2004-11-15 | 2008-10-21 | Sandisk Corporation | Cyclic flash memory wear leveling |
TW200636471A (en) * | 2005-04-01 | 2006-10-16 | Mediatek Inc | Method of parallel programmable memory and the system thereof |
US8055833B2 (en) * | 2006-10-05 | 2011-11-08 | Google Inc. | System and method for increasing capacity, performance, and flexibility of flash storage |
US20070088905A1 (en) * | 2005-10-17 | 2007-04-19 | Simpletech, Inc. | System and method for purging a flash storage device |
WO2007086214A1 (ja) | 2006-01-24 | 2007-08-02 | Advantest Corporation | 試験装置および選択装置 |
US7640389B2 (en) * | 2006-02-28 | 2009-12-29 | Freescale Semiconductor, Inc. | Non-volatile memory having a multiple block erase mode and method therefor |
JP4863749B2 (ja) | 2006-03-29 | 2012-01-25 | 株式会社日立製作所 | フラッシュメモリを用いた記憶装置、その消去回数平準化方法、及び消去回数平準化プログラム |
KR101185617B1 (ko) * | 2006-04-04 | 2012-09-24 | 삼성전자주식회사 | 외부 메모리의 부하를 줄일 수 있는 웨어 레벨링 기법에의한 플래시 파일 시스템의 동작 방법 |
CN100530070C (zh) * | 2006-11-24 | 2009-08-19 | 骆建军 | 基于flash的硬盘 |
KR100857761B1 (ko) * | 2007-06-14 | 2008-09-10 | 삼성전자주식회사 | 웨어 레벨링을 수행하는 메모리 시스템 및 그것의 쓰기방법 |
US8122179B2 (en) * | 2007-12-14 | 2012-02-21 | Silicon Motion, Inc. | Memory apparatus and method of evenly using the blocks of a flash memory |
US7917689B2 (en) * | 2007-12-28 | 2011-03-29 | Intel Corporation | Methods and apparatuses for nonvolatile memory wear leveling |
-
2008
- 2008-03-01 JP JP2008051470A patent/JP5010505B2/ja active Active
-
2009
- 2009-02-10 CN CN200980000136XA patent/CN101689140B/zh not_active Expired - Fee Related
- 2009-02-10 EP EP09713660A patent/EP2250565A4/en not_active Withdrawn
- 2009-02-10 US US12/529,139 patent/US8447914B2/en active Active
- 2009-02-10 WO PCT/JP2009/052595 patent/WO2009110302A1/en active Application Filing
- 2009-02-10 KR KR1020097018122A patent/KR101079890B1/ko not_active IP Right Cessation
- 2009-02-24 TW TW098105828A patent/TWI388988B/zh not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002046929A1 (en) * | 2000-12-06 | 2002-06-13 | Tdk Corporation | Method of controlling flash memory |
JP2003228513A (ja) * | 2001-11-28 | 2003-08-15 | Access:Kk | メモリ制御方法および装置 |
JP2006504201A (ja) * | 2002-10-28 | 2006-02-02 | サンディスク コーポレイション | 不揮発性記憶システムにおける自動損耗均等化 |
JP2007334413A (ja) * | 2006-06-12 | 2007-12-27 | Sony Corp | 記憶装置 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011180773A (ja) * | 2010-02-26 | 2011-09-15 | Toshiba Corp | メモリシステム |
JP2011197788A (ja) * | 2010-03-17 | 2011-10-06 | Toshiba Corp | メモリシステム |
JP2011258182A (ja) * | 2010-05-12 | 2011-12-22 | Panasonic Corp | 半導体メモリ装置及び半導体メモリシステム |
US8671257B2 (en) | 2011-05-30 | 2014-03-11 | Kabushiki Kaisha Toshiba | Memory system having multiple channels and method of generating read commands for compaction in memory system |
US8924636B2 (en) | 2012-02-23 | 2014-12-30 | Kabushiki Kaisha Toshiba | Management information generating method, logical block constructing method, and semiconductor memory device |
US9251055B2 (en) | 2012-02-23 | 2016-02-02 | Kabushiki Kaisha Toshiba | Memory system and control method of memory system |
US9483411B2 (en) | 2014-03-05 | 2016-11-01 | Kabushiki Kaisha Toshiba | Memory system which transfers management information between first and second memories in a burst mode before a read process is performed on a third memory |
US10310744B2 (en) | 2014-03-05 | 2019-06-04 | Toshiba Memory Corporation | Memory system which transfers management information between first and second memories in a burst mode before a read process is performed on a third memory |
JP2021507372A (ja) * | 2017-12-13 | 2021-02-22 | マイクロン テクノロジー,インク. | 可変幅スーパーブロックのアドレス指定 |
JP7080975B2 (ja) | 2017-12-13 | 2022-06-06 | マイクロン テクノロジー,インク. | 可変幅スーパーブロックのアドレス指定のためのnandデバイス、方法、及び機械可読媒体 |
JP2022111152A (ja) * | 2017-12-13 | 2022-07-29 | マイクロン テクノロジー,インク. | 可変幅スーパーブロックのアドレス指定のための装置及びシステム |
US11740819B2 (en) | 2017-12-13 | 2023-08-29 | Micron Technology, Inc. | Variable width superblock addressing |
JP2019212103A (ja) * | 2018-06-06 | 2019-12-12 | 東芝メモリ株式会社 | メモリシステム |
JP7077151B2 (ja) | 2018-06-06 | 2022-05-30 | キオクシア株式会社 | メモリシステム |
Also Published As
Publication number | Publication date |
---|---|
TW200947211A (en) | 2009-11-16 |
KR101079890B1 (ko) | 2011-11-04 |
CN101689140A (zh) | 2010-03-31 |
JP5010505B2 (ja) | 2012-08-29 |
EP2250565A4 (en) | 2012-10-31 |
US8447914B2 (en) | 2013-05-21 |
WO2009110302A1 (en) | 2009-09-11 |
EP2250565A1 (en) | 2010-11-17 |
TWI388988B (zh) | 2013-03-11 |
KR20090117936A (ko) | 2009-11-16 |
CN101689140B (zh) | 2012-04-18 |
US20110022784A1 (en) | 2011-01-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5010505B2 (ja) | メモリシステム | |
JP4745356B2 (ja) | メモリシステム | |
JP4498426B2 (ja) | メモリシステム | |
JP4675985B2 (ja) | メモリシステム | |
JP4691123B2 (ja) | メモリシステム | |
JP4691122B2 (ja) | メモリシステム | |
JP5032371B2 (ja) | メモリシステム | |
JP4653817B2 (ja) | メモリシステム | |
JP4551940B2 (ja) | メモリシステム | |
JP4643667B2 (ja) | メモリシステム | |
KR101067457B1 (ko) | 메모리 시스템 | |
JP2009211233A (ja) | メモリシステム | |
JP4643671B2 (ja) | メモリシステム | |
JP2009211234A (ja) | メモリシステム | |
JP4762261B2 (ja) | メモリシステム | |
JP4592774B2 (ja) | メモリシステム | |
JP5221593B2 (ja) | メモリシステム | |
JP4621749B2 (ja) | メモリシステム | |
JP4510107B2 (ja) | メモリシステム | |
JP4746641B2 (ja) | メモリシステム | |
JP5178857B2 (ja) | メモリシステム | |
JP2009211224A (ja) | メモリシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100219 |
|
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: 20120508 |
|
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: 20120601 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5010505 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150608 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |