JP2010027026A - メモリストレージ装置及びその制御方法 - Google Patents

メモリストレージ装置及びその制御方法 Download PDF

Info

Publication number
JP2010027026A
JP2010027026A JP2009021332A JP2009021332A JP2010027026A JP 2010027026 A JP2010027026 A JP 2010027026A JP 2009021332 A JP2009021332 A JP 2009021332A JP 2009021332 A JP2009021332 A JP 2009021332A JP 2010027026 A JP2010027026 A JP 2010027026A
Authority
JP
Japan
Prior art keywords
data
storage device
memory storage
physical block
block
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
Application number
JP2009021332A
Other languages
English (en)
Other versions
JP5413572B2 (ja
Inventor
Ritsuhei Cho
立平 張
Ming-Dar Chen
明達 陳
Chien-Ting Huang
千庭 黄
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.)
A Data Technology Co Ltd
Original Assignee
A Data Technology 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 A Data Technology Co Ltd filed Critical A Data Technology Co Ltd
Publication of JP2010027026A publication Critical patent/JP2010027026A/ja
Application granted granted Critical
Publication of JP5413572B2 publication Critical patent/JP5413572B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • 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
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/08Address circuits; Decoders; Word-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7211Wear 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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Read Only Memory (AREA)

Abstract

【課題】メモリの消去回数の平均化の効率を向上させる。
【解決手段】メモリストレージ装置の制御方法は、ホストにおいて更新データを前記メモリストレージ装置内への書き込みに適用し、メモリストレージ装置は、前記更新データを格納するための複数の物理ブロックのストレージスペースを提供する。前記制御方法は、先ず、書き込もうとする更新データはホットデータであるか否かを判断し、最後に、判断結果に基づいてホットデータではない、更新の少ないデータを消去回数の高い物理ブロック内に搬送する。
【選択図】図8

Description

本発明は、メモリストレージ装置の制御方法に係り、特に、メモリの消去回数の平均化(Wear-leveling)の制御方法に関わるものである。
NAND型フラッシュメモリをストレージ媒介とする不揮発性メモリストレージ装置は、その体積が小さく、省電力、静かで、耐震などの利点を有するので、現在、複数の異なる形態でホスト(すなわち、様々な電子装置)に幅広く適用されている。例えば、ネットワークサーバや、ノートパソコン、MP3プレイヤー、一般の卓上型コンピュータ、デジタルカメラ等に適用されている。
図1は、従来のメモリストレージ装置の具体的な実施例一を示すシステム構造図である。図1に示すように、メモリストレージ装置13は、制御手段131及びストレージ手段133を含み、ストレージ手段133は、フラッシュメモリからなりデータを記憶するもので、制御手段131は、ホスト11に接続し、ホストから下した指令を受信して動作し、かつ指令に指定された作業に合わせてデータアクセス動作を行い、ホストから入力したデータをストレージ手段133に記憶するか、或いは、ストレージ手段133からホストが求めるデータを読み取った後にバックして伝送するものである。
ストレージ手段133において複数の物理ブロック(Physical Block)を含んだ物理ストレージスペースが提供されてデータをアクセスし、物理ブロックは、それぞれ元の記憶データが搬送された後の消去動作によって累計消去回数(Accumulated Erase Count)が増加され、その損耗程度が使用可能寿命(Useable Life Cycle)に接近すると、データ格納の信頼性(Reliability of Data Retention)が徐々に劣化し(gradually degraded)、データを正確かつ信頼的に記録できなくなるとともに、ストレージ装置は、ストレージ手段中の一部の物理ブロックの劣化によって故障が発生する事態を招いてしまう。そのため、各物理ブロック間の累計消去回数の差異を低下させるために、消去回数平均化技術(Wear-leveling Technique)によりそれぞれの物理ブロックを均等に使用するようにさせる。これによって、物理ブロックの一部を集中して使用し過ぎて、使用寿命制限に直ぐに達し、他の物理ブロックが十分に使用される前に、ストレージ装置が正確なデータを信頼的に保証できなくなることを避ける。
現在提供されている消去回数の平均化技術は、大体ダイナミック消去回数平均化及びスタティック消去回数平均化の2種類に分けられている。ダイナミック消去回数平均化は、物理ブロック内に記録・格納されたデータを変更、更新する時に、消去された物理ブロックのうちから累計消去回数の最も低いものを選んで更新後のデータを格納する。内容が更新・変更されたダイナミックデータだけはアクセス位置が調整されるので、ダイナミック消去回数平均化技術と称される。
スタティック消去回数平均化は、物理ブロック内に記録・格納されたデータが変更、更新されないが、データが配置された物理ブロックにおいて、累計消去回数の最高及び最低の差が予め設定された閾値に達すると、スタティック消去回数平均化作業を行い始める。スタティック消去回数平均化を実行する時に、コントローラは、累計消去回数の最も低い物理ブロック中のデータを累計消去回数の最も高い消去された物理ブロック中に搬送するとともに、累計消去回数の最も低い物理ブロックを消去する。よって、スタティックデータが使用する物理ブロックの位置を変更でき、前に長期間に亘ってスタティックデータに占められ、累計消去回数が低くなる物理ブロックを開放し、後続に更新データを書き込む時に使用され、ひいてスタティックデータが使用する物理ブロックの位置を調整し、スタティック消去回数平均化の効果を実現する。
しかしながら、上記の消去回数平均化作業は、大量の時間及び資源を消費して総消去回数の低い物理ブロックを探し出す必要がある。また、ダイナミック消去回数平均化作業は、データ更新されたブロックのみ消去回数平均化するため、なお消去回数不均一の欠点があるので、如何にして消去回数平均化の効率を向上させるかは、この技術分野において解決しようとする課題である。
此れに鑑みて、メモリストレージ装置の使用寿命を効率的に向上させるため、本発明に提出したメモリストレージ装置の制御方法は、データ更新位置を追跡することによりメモリ消去回数平均化作業方式を選択して、より信頼できかつ効率的な方法で物理ストレージスペース中の消去回数不均一の問題を改善できるように望んでいる。
そのため、本発明は、更新データをメモリ内に配置する時に、消去回数平均化の目的を達し、ひいてメモリシステムの寿命を向上させ、ストレージ資源の無駄使いを防ぐとともに、メモリ消去回数平均化作業を簡易化させ、メモリのデータストレージ効率を向上するメモリストレージ装置及びその制御方法を提供することを目的とする。
本発明に係るメモリストレージ装置及びその制御方法は、データのホストから前記メモリストレージ装置内への書き込みに適用し、ホストのファイルシステムは、複数のロジカルブロックを有するストレージスペースを提供し、メモリストレージ装置は、ファイルシステムのロジカルブロックに対応する複数の物理ブロックのストレージスペースを提供する。前記ストレージ装置は、さらに、ホットデータリストとソース指標レジスタを備え、ホットデータリストには複数の所定ロジカルブロックアドレス(LBA)が記録されている。ソース指標レジスタは、その内部に格納されたアドレスがロジカルブロックに指向され、スタティック消去回数平均化時のデータソースブロックとする。前記制御方法は、先ず、更新データの書き込み動作を実行する予定と判断すれば、ダイナミック消去回数平均化工程を実行するステップと、続いて、前記更新データがストレージされたロジカルブロックアドレスをホットデータリスト内に加えるステップと、その後、ソース指標レジスタのロジカルブロックアドレスがホットデータリスト内に入っているか否かを対比するステップと、最後に、対比結果に基づいて指向するロジカルブロックを変更するようにソース指標レジスタを調整し、ひいてストレージ装置はスタティック消去回数平均化を行う時に、ホットデータリスト内に現れなかったロジカルブロックアドレスに対応して格納する内容は、消去回数のより高い物理ブロック内に優先的に搬送されるように確保するステップと、を含む。
本発明の具体的な実施例では、消去動作を実行しようと判断すると、消去された物理ブロックの消去回数が閾値よりも大きいか否かを判断し、大きいと判断すれば、スタティック消去回数平均化工程を行い、ソース指標レジスタが指向しているロジカルブロックに対応する物理ブロック内のデータを消去回数のより高い物理ブロック内に搬送する。
本発明は、さらに、ホストにデータをアクセスするために適用されたメモリストレージ装置を掲示し、その中、ホストのファイルシステムは、複数のロジカルブロックを有するストレージスペースを提供する。前記メモリストレージ装置は、ストレージ手段と制御手段とを含む。ストレージ手段は、複数の物理ブロックのストレージスペースを含んでデータをアクセスし、制御手段は、ホストとストレージ手段との間に接続され、レジスタ手段及びマイクロプロセサを含む。マイクロプロセサはレジスタ手段に接続され、レジスタ手段は、ホットデータリストとソース指標レジスタとを含む。ホットデータリストは、複数の所定のホットデータを格納したロジカルブロックアドレスを記録し、ソース指標レジスタ内部に格納されたアドレスは、ファイルシステムが提供した複数のロジカルブロックの中の一つに指向される。ホストがデータ更新指令を発して更新データをストレージ手段に書き込むと、ホットデータリストは、この更新データのロジカルブロックアドレスを記録し、その後、マイクロプロセサは、ソース指標レジスタに一時格納されたロジカルブロックがホットデータリスト内に格納された所定のロジカルブロックアドレスと同じか否かを対比し、対比結果に基づいて、ソース指標レジスタの内容を選択的に調整し、或いは、スタティック消去回数平均化工程を実行し、ひいて、非ホットデータを元の格納の物理ブロックから消去回数のより高い物理ブロック内に搬送させる。
本発明の具体的な実施例では、前記ソース指標レジスタは、ソース指標レジスタが次のロジカルブロックに順次に指向されるように、マイクロプロセサにより調整される。
以上の略述及び後続の詳細な説明や添付図面は、いずれも、本発明が所定の目的を達成するため採択した方式や、手段及び効果をより詳しく説明するためのものである。以下に、本発明に関わる他の目的および利点について、後続の説明及び図面に述べられる。
本発明のメモリストレージ装置及びその制御方法は、ホットデータリスト及びソース指標レジスタの管理によって、長期間に更新されていないスタティックデータを正確に識別し、かつ、このような長期間に更新されていないスタティックデータを消去回数の最も高い物理ブロック内に移送して、スタティックデータに占用された物理ブロックを開放し、累計消去回数の高い物理ブロックが引き続き損耗されることを防ぐことができるので、消去回数平均化工程をより確実に実行でき、フラッシュメモリストレージ装置の使用寿命をより効率的に発揮できる。
図1は、従来のメモリストレージ装置の具体的な実施例一を示すシステム構造図である。 図2は、本発明に係るメモリストレージ装置の具体的な実施例一を示すシステム構造図である。 図3Aは、本発明に係るロジカル/物理ブロック変換の一具体実施例を示す図である。 図3Bは、本発明に係るストレージスペース管理のデータ構造を示す図である。 図4Aは、本発明に係るデータ処理の一具体実施例を示す図である。 図4Bは、本発明に係るデータ処理の一具体実施例を示す図である。 図5Aは、本発明に係るデータ処理の一具体実施例を示す図である。 図5Bは、本発明に係るデータ処理の一具体実施例を示す図である。 図6Aは、本発明に係るデータ処理の一具体実施例を示す図である。 図6Bは、本発明に係るデータ処理の一具体実施例を示す図である。 図7Aは、本発明に係るデータ処理の一具体実施例を示す図である。 図7Bは、本発明に係るデータ処理の一具体実施例を示す図である。 図8は、本発明に係るメモリストレージ装置の制御方法の一具体実施例のフローチャートである。 図9は、本発明に係るメモリストレージ装置の制御方法の一具体実施例のフローチャートである。
本発明は、消去回数平均化メモリストレージ装置の制御方法及びその方法を用いるメモリストレージ装置の構造を主な技術特徴とする。以下に必要な内部システム構造およびそのフローチャートのみ掲示するが、当該分野における通常の技術者が、以下に提示された素子の他、メモリストレージ装置中に他の必要な素子をも勿論含まれていることを承知できるので、本実施例に掲示されたものに限られるわけではない。
まず、図2は、本発明に係るメモリストレージ装置の具体的な実施例の一つを示すシステム構造図である。図2に示すように、メモリストレージ装置23はホスト21に接続し、ホスト21から下された指令を受けてデータの読み取り、書き込みまたはストレージブロックの消去動作を行う。
メモリストレージ装置23は、ストレージ手段233と制御手段231とを含む。ストレージ手段233は、フラッシュメモリからなり、ホスト21が格納を要求するデータをストレージし、制御手段231は、ホスト21とストレージ手段233との間に接続され、ホスト21から下された指令を受け取る。上記の指令は書込み指令または読取り指令で、書込み指令は、ロジカルアドレスに対応するデータをストレージ手段233内に書き込み、読取り指令は、ロジカルアドレスに対応するデータをストレージ手段233から読み取る。
制御手段231は、システムインターフェース2311、データ伝送バッファ2313、メモリインターフェース2315、マイクロプロセサ2317、及びレジスタ手段2319を含む。システムインターフェース2311は、ホスト21に接続し、ホスト21とメモリストレージ装置23の間の指令及びデータの伝送インターフェースとして機能を果たす。データ伝送バッファ2313は、システムインターフェース2311に接続し、データを一時的に格納するためのものである。メモリインターフェース2315は、データ伝送バッファ2313とストレージ手段233との間に接続され、マイクロプロセサ2317によりデータを伝送するように制御される。マイクロプロセサ2317は、レジスタ手段2319に接続し、メモリストレージ装置23内のそれぞれの素子の動作状態を制御する。
本発明の具体的な実施例では、ストレージ手段233は、シングルレベルセル(SLC)、相変化メモリ(PCM)、強誘電体メモリ(FeRAM)、磁気抵抗メモリ(MRAM)、またはマルチレベルセル(MLC)からなる群の組み合わせの一つである。
ロジカル/物理アドレスの対応関係をより理解するため、図3Aを参照して説明する。図3Aは本発明に係るロジカル/物理ブロック変換の一具体実施例を示す図である。関連するシステム構造については図2を合せて参照すること。図3Aに示すように、ホスト21のファイルシステム及びストレージ手段233は、それぞれ、ロジカルストレージスペース31及び物理ストレージスペース35を提供してデータをアクセスし、ロジカルストレージスペース31は、複数のロジカルブロックLBA0〜LBAnに区分され、物理ストレージスペース35も複数の物理ブロックPBA0〜PBAnに区分され、L2P変換テーブル(Logical to Physical Translation Table)33によりロジカルブロックLBA0〜LBAn及び物理ブロックPBA0〜PBAnの対応関係を記録する。
図3Bは、本発明に係るストレージスペース管理のデータ構造を示す図である。図3Bに示すように、物理ストレージスペース35の使用状況を管理し易くするために、レジスタ手段2319中に特に消去完了リスト23191、配分完了リスト23193、ホットデータリスト23195、及びソース指標レジスタ23197が格納されている。消去完了リスト23191は、消去された物理ブロックPBAiのアドレスを記録し、一具体実施例では、消去完了リスト23191は、消去された物理ブロックPBAiの累計消去回数に基づいて、消去された物理ブロックPBAiのアドレスを小から大へと(或いは、大から小でもかまわない)テーブル内に順次に記録する。図3Bを参照すると、物理ブロックPBA5の消去回数が最も小さく、右へ寄るほどその物理ブロックPBAiの消去回数が大きくなる。消去回数の多いか少ないかを順次で表示する他、消去完了リストは、他に一欄を増加して個々の消去された物理ブロックPBAiの消去回数を記録しても良く、本実施例に限られるべきではない。
本発明の具体的な実施例では、消去完了リスト23191、配分完了リスト23193、ホットデータリスト23195、及びソース指標レジスタ23197が、制御手段231外部のRAM内に格納または設置されても良い。その内容がメモリストレージ装置23の電源オフによって失ってしまうことを避けるため、制御手段231は、その内容をストレージ手段233内に複写し、かつ、メモリストレージ装置23を起動する時にロードする。
配分完了リスト23193は、データを配置した物理ブロックPBAiのアドレスを記録し、ホットデータリスト23195は、複数の所定のロジカルブロックのアドレスを記録し、該所定のロジカルブロックは、常に更新されているデータ(即ち、ホットデータ)を保存するロジカルブロックLBAiである。ソース指標レジスタ23197の内部に保存されたアドレスは、データが保存されたロジカルブロックLBAiに順次に指向し、一番目のロジカルブロックLBA0にデータが保存されると、ソース指標レジスタ23197は、ロジカルブロックLBA0のアドレスを保存する。
続いて、図4A〜図7Bは、本発明に係るデータ処理の一具体実施例を示す図であり、ロジカルブロックLBA0に保存された更新データを書き込む時に行っている消去回数平均化処理方式を説明する。まず、図3Aを参照すると、原始データがロジカルブロックLBA0に保存され、L2P変換テーブル33の対応関係から、該原始データが実際に物理ブロックPBA2に格納されていることが分かる。その後、該原始データに対しデータ更新動作を行おうとすると、制御手段231は、消去完了リスト23191のうちから累計消去回数の最も少ない物理ブロックPBA5を選び出して、更新データ及び現在物理ブロックPBA2に保存された原始データを格納する。続いて、図4A、図4Bに示すように、マイクロプロセサ2317は、前記動作に基づいて物理ブロックPBA5を消去完了リスト23191から削除して配分完了リスト23193内に記録し、さらに、更新データ動作が発生したロジカルブロックLBA0のアドレスをホットデータリスト23195内に記録する。
ホットデータリスト23195を更新した後、マイクロプロセサ2317は、ソース指標レジスタ23197が指向しているロジカルブロックLBAiがホットデータリスト23195中の所定のロジカルブロックであるか否かを検査し、図5A、図5Bに示すように、ソース指標レジスタ23197が指向しているロジカルブロックLBA0は、更新したホットデータリスト23195内に記録されているため、ソース指標レジスタ23197は、次のロジカルブロックLBA1に順次に指向し、そして、ホットデータリスト23195の所定のロジカルブロックと対比する。この手順は、ソース指標レジスタ23197が指向しているロジカルブロックLBAのアドレスがホットデータリスト23195内に記録されていないと確認するまで繰り返して行う。続いて、原始データが保存された物理ブロックPBA2を消去し、さらに、累計消去回数の大きさに応じて物理ブロックPBA2を消去完了リスト23191中の適当な位置に配置する。本実施例の場合、物理ブロックPBA2の消去回数が物理ブロックPBA3と物理ブロックPBAnとの間にあるので、消去完了リスト23191が消去された物理ブロックのアドレスを格納する順次は、図5Bに示される。
メモリストレージ装置23の中に閾値が特に定義されている。何れか一つの消去された物理ブロックPBAiの累計消去回数が閾値より大きくなると、ストレージ手段233中に消去した回数の高すぎる物理ブロックPBAiがあることを示しているので、消去回数平均化工程を行い常に更新されていないデータを消去回数の高すぎる物理ブロックPBAi内に搬送し、該物理ブロックPBAiが消去され過ぎることを避ける。具体的な実施例では、閾値ECは、全ての物理ブロックPBAiの平均消去回数ECavgと予め設定された閾値ずれ値ECthの合計であり、システムは、閾値ずれ値ECthの大きさのみを調整すれば、スタティック消去回数平均化工程が実行される頻度を容易に調整でき、そのうち、閾値ずれ値ECthを拡大すると、消去回数平均化工程を実行する頻度が低下し、逆にも同様である。
そのため、物理ブロックPBA2を消去した後に、マイクロプロセサ2317は、該ブロックの累計消去回数に1を加算するとともに平均消去回数ECavgを更新して、次に物理ブロックPBA2の消去回数が更新した閾値より大きいか否かを判断し、大きいと判断された場合は、消去回数平均化を実行する条件に達したことを示し、スタティック消去回数平均化工程を実行する。
物理ブロックPBA2が消去回数平均化を実行する条件に達し、かつ、ソース指標レジスタ23197が指向している所定のロジカルブロックLBA1のアドレスがホットデータリスト23195内に現れていないとすれば、ロジカルブロックLBA1内のデータが常に更新されておらず、消去回数の高すぎる物理ブロックPBA2内に搬送されるべきと判定し、物理ブロックPBA2がより多くの消去損耗を受けることを避ける。そのため、図6A、図6Bに示すように、マイクロプロセサ2317は、ソース指標レジスタ23197が指向しているロジカルブロックLBA1に対応する物理ブロックPBA4内に格納されたデータを物理ブロックPBA2内に複写し、そして物理ブロックPBA4を消去し、さらに、物理ブロックPBA2を消去完了リスト23191から削除して配分完了リスト23193内に移送する。
図7A、図7Bに示すように、前記消去回数平均化工程の後に、L2P変換テーブル33を更新して、ロジカルブロックLBA1が物理ブロックPBA2に対応するようにさせ、同時に、物理ブロックPBA4が消去され他のデータの書き込みに提供されるので、該ブロックPBA4の累計消去回数及び平均消去回数ECavgをも更新する必要がある。
その後、ソース指標レジスタ23197は、次のロジカルブロックLBA2に順次に指向し、ソース指標レジスタ23197が指向しているロジカルブロックLBAiがホットデータリスト23195内に入っておらず、且つ消去回数平均化を実行する条件に達しなくなるまで、前記のホットデータリスト23195との対比の検査工程を繰り返して行い、完全な消去回数平均化処理の完了となる。
最後に、図8及び図9は、本発明に係るメモリストレージ装置の制御方法の一具体実施例のフローチャートである。そのうち関連のシステム構造及びデータ処理方式については図2〜図7Bを同時に参照すること。図8に示すように、該制御方法は以下の工程を含む。
先ず、メモリストレージ装置23を起動し(ステップS901)、かつ、消去完了リスト23191、配分完了リスト23193、ホットデータリスト23195、及びソース指標レジスタ23197の内容をレジスタ手段2319内にロードし(ステップS903)、初期化起動作業が終了した後に、メモリストレージ装置23は待機状態に入り(ステップS905)、ホスト21が指令を下すのを待ち、メモリストレージ装置はシステムインターフェース2311を介してホスト21が下した指令を受けると(ステップS907)、制御手段231は、該指令が更新データの書き込み指令であるか否かを判断し(ステップS909)、即ちホスト21端から更新データをストレージ手段233内に書き込むか否かを判断し、更新データの書き込み指令でない場合、該指令の関連作業を実行し(ステップS911)、逆の場合、ダイナミック消去回数平均化工程を実行し始め、消去完了リスト23191のうちから累計消去回数の最も少ない物理ブロックを選出し(ステップS913)、次に、選出された物理ブロック内に更新データを書き込み(ステップS915)、その後、マイクロプロセサ2317は上記動作に基づいて消去完了リスト23191、配分完了リスト23193及びホットデータリスト23195を更新し(ステップS917)、更新データのロジカルブロックアドレスをホットデータリスト23195内に記録し、そのうちの一つの所定ロジカルブロックとなる(ステップS913〜S917は、図3A、図4A、図4Bを参照する)。
次に、マイクロプロセサ2317は、ソース指標レジスタ23197が指向しているロジカルブロックが、ホットデータリスト23195中の所定のロジカルブロックであるか否かを判断し(ステップS919)、YESであれば、ソース指標レジスタ23197が次のロジカルブロックに順次に指向されるように調整した後に(ステップS921)、さらにホットデータリスト23195と対比し、逆の場合において、ソース指標レジスタ23197が指向しているロジカルブロックはホットデータリスト23195中に入っていないと、現在ソース指標レジスタ23197が指向しているロジカルブロック中に保存されたデータは常に更新されていないはずであることを示し、消去回数のより高い物理ブロック内に置くことが適切であると判断し、且つストレージ手段233内において無効データに占用されている物理ブロックがあるか否かを検査し(ステップS923)、NOであれば、待機状態に戻り次の指令を待ち(ステップS905)、YESであれば、消去作業を実行し(ステップS925)、無効データに占用されている物理ブロックを消去する(ステップS919〜S925は、図5A、図5Bを参照する)。
無効データに占用されている物理ブロックを消去する作業が完了した後に、該物理ブロックの累計消去回数及び全ての物理ブロックの平均消去回数ECavgを累計し(ステップS927)、その後、消去された物理ブロックの消去回数が所定の閾値より大きいか否かを判断し(ステップS929)、NOであれば、前記ブロックを消去する動作に基づいて消去完了リスト23191を更新した後に(ステップS931)、待機状態に戻り(ステップS905)、逆に、ステップS929ではYESと判断すれば、消去回数平均化作業を起動する要求に達したことが示され、ひいて消去回数平均化工程を行う(ステップS933)。
消去回数平均化作業を起動すると、マイクロプロセサ2317は、ソース指標レジスタ23197が指向しているロジカルブロックに対応する物理ブロック(以下に、Siでこの物理ブロックを示す)内のデータを物理ブロックSj内に複写し(ステップS1001)、変更したブロック対応関係に基づいてL2P変換テーブル33を更新し(ステップS1003)、その後、物理ブロックSjアドレスを配分完了リスト23193内に加入する(ステップS1005)(ステップS927〜S1005は、図6A、図6Bを参照する)。
物理ブロックSi内のデータが物理ブロックSj内に搬送され格納されたので、直ちに物理ブロックSiを消去し(ステップS1007)、他の新たなデータの書き込みに用いられ、消去作業の後に、物理ブロックSiの消去回数を累計し、及び全ての物理ブロックの平均消去回数を算出し(ステップS1009)、物理ブロックSiアドレスを消去完了リスト23191内に加入する(ステップS1011)。
上記の作業を完了すると、マイクロプロセサ2317は、ソース指標レジスタ23197が次のロジカルブロックに指向するように調整し(ステップS1013)、現在ソース指標レジスタ23197が指向しているロジカルブロックはホットデータリスト23195中に入っているか否かを対比し(ステップS1015)、入っている場合、ソース指標レジスタ23197を順次に移動するとともにステップS1015の対比工程を繰り返して行う。ソース指標レジスタ23197が指向しているロジカルブロックが、ホットデータリスト23195中に入っておらず、所定のロジカルブロックに指向されると、消去回数平均化工程を終了し(ステップS1017)、待機状態に戻る(ステップS1007〜S1017は、図7A、図7Bを参照する)。
このように、制御手段231は、配分完了リスト23193のうち累計消去回数の最も少ない物理ブロック内に記録されたユーザのデータを、複写により消去完了リスト23191中の累計消去回数の最も多い物理ブロック内に移送する。よって、長期間に亘って更新されていないデータが使用する物理ブロックを変更し開放することができ、配分完了リスト23193から消去回数の低い物理ブロックを消去完了リスト23191内に移送させ、後続に更新データを書き込むときに使用され、ひいて消去回数平均化の効果を効率的に達することができる。
以上の実施例での詳細な説明によって、本発明のメモリストレージ装置及びその制御方法は、ホットデータリスト及びソース指標レジスタの管理によって、長期間に更新されていないスタティックデータを正確に識別し、かつ、このような長期間に更新されていないスタティックデータを消去回数の最も高い物理ブロック内に移送して、スタティックデータに占用された物理ブロックを開放し、累計消去回数の高い物理ブロックが引き続き損耗されることを防ぐことができるので、本発明は、消去回数平均化工程をより確実に実行でき、フラッシュメモリストレージ装置の使用寿命をより効率的に発揮できる。
本発明は、以下の利点を備える。
1、ダイナミック消去回数平均化作業を行う時に、消去回数平均化工程を実行するか否かを制御することによって、制御手段が他に暇な時間を利用してダイナミック消去回数平均化作業を実行する必要はなく、大量のシステム資源が消費される欠点を避けることができる。
2、ダイナミック消去回数平均化作業を実行する時に、消去完了リスト中から累計消去回数の低い物理ブロックを優先的に選択して更新データを記録し、消去回数平均化を累計する速度を速くさせ、かつ、更新データのロジカルブロックがホットデータリスト中に入っているか否かを判断することで、該更新データが非ホットデータであるため消去回数が閾値に達する物理ブロックに搬送すべきか否かを決定し、ホットデータがスタティック消去回数平均化作業において累計消去回数の高い物理ブロック内に複写されることが避けられる他、消去完了リスト中から累計消去回数の高い物理ブロックを探し出して非ホットデータを格納する作業工程を大幅に簡易化することができ、ひいて作業時間を短縮し、コントローラの負荷及びメモリへの負担を低下できる。
3、データ書き込み及びダイナミック消去回数平均化作業を実行して、無効データが物理ブロックを占用することによって消去作業が発生した時に、消去された物理ブロックの累計消去回数が消去回数平均化作業を起動する起動値に達したか否かを同時に検査する。このように、消去回数平均化作業を起動する判断工程を簡易化することができ、統計分析或いは物理ブロックの累計消去回数を対比検査に必要とする作業工程や、作業時間および制御手段に発生した負荷並びにメモリへの負担を無くすことができる。
4、直接にソース指標レジスタでロジカルブロックアドレス配布の始め位置から最大のストレージスペースの終了位置まで順次に累進する循環方式によって、ホットデータが占用するロジカルブロックを避けて、消去回数平均化作業を実行する時に累計消去回数の低い物理ブロックを選択する。このように、配分完了リストから累計消去回数の低い物理ブロックを探し出して該物理ブロック中のデータを搬送する作業工程を大幅に簡易化することができ、作業時間を短縮し、コントローラ負荷及びメモリへの負担を低下させる他、全てのロジカルブロックでのユーザデータの保存記録位置を効率的に調整できる。
5、閾値ずれ値ECthの大きさを調整することにより、消去回数平均化作業実行頻度、目標平均化程度を調整する目的を容易に達成できる。すなわち、閾値ずれ値ECthを拡大すると、消去回数平均化工程実行頻度が低く、累計消去回数は均等でなく、閾値ずれ値ECthを縮小すると、スタティック消去回数平均化工程実行頻度が高く、累計消去回数は均等になる。
しかし、前記の説明は、単に本発明の好ましい具体的な実施例の詳細説明及び図面に過ぎず、本発明の特許請求の範囲を限定するものではなく、本発明の主張する範囲は、下記の特許請求の範囲に基づくべき、いずれの当該分野における通常の知識を有する専門家が本発明の分野の中で、適当に変更や修飾などを実施できるが、それらの実施が本発明の主張範囲内に含まれるべきことは言うまでもないことである。
11 ホスト
13 メモリストレージ装置
131 制御手段
133 ストレージ手段
21 ホスト
23 メモリストレージ装置
231 制御手段
233 ストレージ手段
2311 システムインターフェース
2313 データ伝送バッファ
2315 メモリインターフェース
2317 マイクロプロセサ
2319 レジスタ手段
23191 消去完了リスト
23193 配分完了リスト
23195 ホットデータリスト
23197 ソース指標レジスタ
31 ロジカルストレージスペース
33 L2P変換テーブル
35 物理ストレージスペース
LBA0〜LBAn ロジカルブロック
PBA0〜PBAn、Si、Sj 物理ブロック
EC 閾値
ECavg 平均消去回数
ECth 閾値ずれ値
S901〜S933 各ステップフロー
S1001〜S1017 各ステップフロー

Claims (11)

  1. ファイルシステムの複数のロジカルブロックに対応する複数の物理ブロックのストレージスペースを提供するメモリストレージ装置の制御方法であって、
    所定のロジカルブロックのアドレスを記録したホットデータリストを提供するステップと、
    内部に保存されたアドレスが前記複数のロジカルブロック中の一つに指向しているソース指標レジスタを提供するステップと、
    更新データの書き込み動作を実行し、前記データを保存するロジカルブロックアドレスを前記ホットデータリスト内に保存させるステップと、
    前記ソース指標レジスタが指向しているロジカルブロックは前記ホットデータリスト内の複数の所定ロジカルブロック中の一つであるか否かを対比するステップと、
    対比結果に基づいて、前記ソース指標レジスタが指向しているロジカルブロックを調整するステップと、を含むメモリストレージ装置の制御方法。
  2. さらに、消去された物理ブロックのアドレスを記録するための消去完了リストを提供するステップと、
    データ配置された物理ブロックのアドレスを記録するための配分完了リストを提供するステップと、を含むことを特徴とする請求項1に記載のメモリストレージ装置の制御方法。
  3. さらに、前記消去完了リストから累計消去回数の最も少ない物理ブロックを選出するステップと、
    前記更新データを原始データとともに前記累計消去回数の最も少ない物理ブロック内に書き込むステップと、
    選出された前記累計消去回数の最も少ない物理ブロックのアドレスを前記消去完了リストから削除するステップと、
    選出された前記累計消去回数の最も少ない物理ブロックのアドレスを前記配分完了リスト内に記録するステップと、を含むことを特徴とする請求項2に記載のメモリストレージ装置の制御方法。
  4. 前記対比結果に基づいて前記ソース指標レジスタを調整するステップにおいて、
    対比結果がYESであれば、他のロジカルブロックに指向させるように前記ソース指標レジスタを調整するステップと、
    対比結果がNOであれば、前記更新データの原始データを保存する物理ブロックを削除するステップと、消去された物理ブロックの累計消去回数が閾値より大きいか否かを判断するステップとを実行するステップと、を含むことを特徴とする請求項3に記載のメモリストレージ装置の制御方法。
  5. 前記消去された物理ブロックの累計消去回数が閾値より大きいか否かを判断するステップの後に、さらに、閾値より大きいと判断すると、スタティック消去回数平均化工程を行い、前記ソース指標レジスタが指向しているロジカルブロックに対応する物理ブロック内のデータを前記消去された物理ブロック内に格納するステップを、含むことを特徴とする請求項4に記載のメモリストレージ装置の制御方法。
  6. 前記閾値は、全ての物理ブロックの平均消去回数と予め設定された閾値ずれ値の累計であることを特徴とする請求項4に記載のメモリストレージ装置の制御方法。
  7. 前記消去完了リスト中のアドレスデータ順序は、指向された物理ブロックの累計消去回数に応じて大から小、或いは小から大へ配列されていることを特徴とする請求項2に記載のメモリストレージ装置の制御方法。
  8. メモリストレージ装置であって、
    ファイルシステムのロジカルブロックに対応する複数の物理ブロックのストレージスペースを有するストレージ手段と、
    ホットデータを格納する所定のロジカルブロックのアドレスを記録するホットデータリストと、
    内部に保存されたアドレスが前記複数のロジカルブロックの中の一つに指向しているソース指標レジスタと、を含み、
    前記ソース指標レジスタが指向しているロジカルブロックは、ホットデータリスト内の所定のロジカルブロックに基づいて調整されることを特徴とするメモリストレージ装置。
  9. レジスタ手段は、さらに、消去された物理ブロックのアドレスを記録するための消去完了リストと、
    データ配置された物理ブロックのアドレスを記録するための配分完了リストと、を含むことを特徴とする請求項8に記載のメモリストレージ装置。
  10. 制御手段は、さらに、ホストに接続され、前記ホストと前記メモリストレージ装置との間の指令及びデータの伝送インターフェースとして機能を果たすシステムインターフェースと、
    前記システムインターフェースに接続され、前記更新データを一時的に格納するデータ伝送バッファと、
    前記ホストが前記装置に下した指令を実行するマイクロプロセサと、
    前記データ伝送バッファと前記ストレージ手段との間に接続され、前記マイクロプロセサによりデータをストレージ手段へ伝送するように制御されるメモリインターフェースと、を含むことを特徴とする請求項8に記載のメモリストレージ装置。
  11. 前記ソース指標レジスタは、前記マイクロプロセサにより指向しているロジカルブロックを調整することを特徴とする請求項10に記載のメモリストレージ装置。
JP2009021332A 2008-07-18 2009-02-02 メモリストレージ装置及びその制御方法 Active JP5413572B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW097127299A TWI389125B (zh) 2008-07-18 2008-07-18 記憶體儲存裝置及其控制方法
TW097127299 2008-07-18

Publications (2)

Publication Number Publication Date
JP2010027026A true JP2010027026A (ja) 2010-02-04
JP5413572B2 JP5413572B2 (ja) 2014-02-12

Family

ID=41531271

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009021332A Active JP5413572B2 (ja) 2008-07-18 2009-02-02 メモリストレージ装置及びその制御方法

Country Status (4)

Country Link
US (1) US8909846B2 (ja)
JP (1) JP5413572B2 (ja)
KR (1) KR101515617B1 (ja)
TW (1) TWI389125B (ja)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI375887B (en) * 2008-10-31 2012-11-01 A Data Technology Co Ltd Flash memory device with wear-leveling mechanism and controlling method thereof
JP4666080B2 (ja) * 2009-02-09 2011-04-06 Tdk株式会社 メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4666081B2 (ja) * 2009-02-09 2011-04-06 Tdk株式会社 メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4844639B2 (ja) * 2009-02-19 2011-12-28 Tdk株式会社 メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
TWI421869B (zh) * 2009-10-14 2014-01-01 Phison Electronics Corp 用於快閃記憶體的資料寫入方法及其控制器與儲存系統
TWI447735B (zh) * 2010-02-05 2014-08-01 Phison Electronics Corp 記憶體管理與寫入方法及其可複寫式非揮發性記憶體控制器與儲存系統
US8621141B2 (en) * 2010-04-01 2013-12-31 Intel Corporations Method and system for wear leveling in a solid state drive
TWI475564B (zh) * 2010-04-21 2015-03-01 Silicon Motion Inc 記憶體之資料寫入方法及資料儲存裝置
US8660608B2 (en) * 2010-11-12 2014-02-25 Apple Inc. Apparatus and methods for recordation of device history across multiple software emulations
TWI417721B (zh) * 2010-11-26 2013-12-01 Etron Technology Inc 衰減熱資料之方法
TWI466121B (zh) * 2010-12-31 2014-12-21 Silicon Motion Inc 用來進行區塊管理之方法以及記憶裝置及控制器
US8621328B2 (en) * 2011-03-04 2013-12-31 International Business Machines Corporation Wear-focusing of non-volatile memories for improved endurance
JP2012203443A (ja) * 2011-03-23 2012-10-22 Toshiba Corp メモリシステムおよびメモリシステムの制御方法
US8862902B2 (en) * 2011-04-29 2014-10-14 Seagate Technology Llc Cascaded data encryption dependent on attributes of physical memory
KR101257691B1 (ko) 2011-08-12 2013-04-24 아주대학교산학협력단 메모리 컨트롤러 및 이의 데이터 관리방법
US8694754B2 (en) * 2011-09-09 2014-04-08 Ocz Technology Group, Inc. Non-volatile memory-based mass storage devices and methods for writing data thereto
JP5971547B2 (ja) * 2012-02-15 2016-08-17 国立大学法人 東京大学 メモリコントローラ,データ記憶装置およびメモリの制御方法
US9116792B2 (en) * 2012-05-18 2015-08-25 Silicon Motion, Inc. Data storage device and method for flash block management
FR2999845A1 (fr) * 2012-12-14 2014-06-20 Thomson Licensing Methode d'activation d'un mode de maintenance dans un dispositif electronique et dispositif associe
US20150143021A1 (en) * 2012-12-26 2015-05-21 Unisys Corporation Equalizing wear on storage devices through file system controls
KR102023351B1 (ko) * 2013-03-19 2019-11-04 삼성전자 주식회사 저장 장치 내 할당 촉진을 위한 데이터 분석 방법 및 장치
US10007428B2 (en) * 2013-08-16 2018-06-26 Micron Technology, Inc. Data storage management
US9587501B2 (en) 2013-11-11 2017-03-07 General Electric Company Rotary machine secondary sealing assembly and method of assembling the same
CN104015981A (zh) * 2014-06-13 2014-09-03 浙江理工大学 一种伸缩式草莓包装运输箱
US9785374B2 (en) * 2014-09-25 2017-10-10 Microsoft Technology Licensing, Llc Storage device management in computing systems
US9978440B2 (en) 2014-11-25 2018-05-22 Samsung Electronics Co., Ltd. Method of detecting most frequently accessed address of semiconductor memory based on probability information
TWI553477B (zh) * 2015-06-12 2016-10-11 群聯電子股份有限公司 記憶體管理方法、記憶體控制電路單元及記憶體儲存裝置
JP6544088B2 (ja) * 2015-07-06 2019-07-17 富士通株式会社 端末、情報漏洩防止方法および情報漏洩防止プログラム
US10007432B2 (en) * 2015-10-13 2018-06-26 Dell Products, L.P. System and method for replacing storage devices
US10310770B2 (en) * 2015-11-05 2019-06-04 Hitachi, Ltd. Nonvolatile memory device, and storage apparatus having nonvolatile memory device
TWI608350B (zh) 2016-03-09 2017-12-11 慧榮科技股份有限公司 儲存裝置及其控制單元、可用於儲存裝置的資料搬移方 法
JP6629999B2 (ja) * 2016-04-12 2020-01-15 ガードノックス・サイバー・テクノロジーズ・リミテッドGuardKnox Cyber Technologies Ltd. セキュアロックダウンを実装するように構成された関連装置を有する特別にプログラムされたコンピューティングシステムおよびその使用方法
GB2559119B (en) * 2017-01-20 2020-12-30 Advanced Risc Mach Ltd Apparatus and methods to prolong lifetime of memories
KR102504368B1 (ko) * 2017-12-22 2023-02-24 에스케이하이닉스 주식회사 비휘발성 메모리의 웨어 레벨링 동작을 관리하는 반도체 장치
KR102534648B1 (ko) * 2018-03-08 2023-05-22 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
WO2019195249A1 (en) 2018-04-02 2019-10-10 Apex Brands, Inc. Intelligent soldering tip
KR102387960B1 (ko) * 2018-07-23 2022-04-19 삼성전자주식회사 컨트롤러 및 그것의 동작 방법
US10795576B2 (en) * 2018-11-01 2020-10-06 Micron Technology, Inc. Data relocation in memory
JP2020086748A (ja) * 2018-11-21 2020-06-04 Tdk株式会社 メモリコントローラ、及びメモリシステム
US10877671B2 (en) * 2018-12-03 2020-12-29 Vast Data Ltd. Techniques for prolonging lifespan of storage drives
US11157379B2 (en) * 2019-10-30 2021-10-26 International Business Machines Corporation Managing blocks of memory based on block health using hybrid controllers
CN111459850B (zh) * 2020-05-18 2023-08-15 北京时代全芯存储技术股份有限公司 记忆体装置以及运作方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006504201A (ja) * 2002-10-28 2006-02-02 サンディスク コーポレイション 不揮発性記憶システムにおける自動損耗均等化
JP2006268880A (ja) * 1991-11-28 2006-10-05 Hitachi Ltd フラッシュメモリを備えた情報機器
JP2007133683A (ja) * 2005-11-10 2007-05-31 Sony Corp メモリシステム
JP2008097132A (ja) * 2006-10-06 2008-04-24 Matsushita Electric Ind Co Ltd メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム
JP2008112445A (ja) * 2006-10-27 2008-05-15 Samsung Electronics Co Ltd 不揮発性メモリを管理する装置及び方法
JP2008123314A (ja) * 2006-11-14 2008-05-29 Nec Electronics Corp 半導体記憶装置への情報記録方法及び情報記録システム
JP2008529130A (ja) * 2005-01-20 2008-07-31 サンディスク コーポレイション フラッシュメモリシステムにおけるハウスキーピング操作のスケジューリング

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004240616A (ja) 2003-02-05 2004-08-26 Mitsubishi Electric Corp メモリコントローラ及びメモリアクセス制御方法
US7441067B2 (en) * 2004-11-15 2008-10-21 Sandisk Corporation Cyclic flash memory wear leveling
TWI368224B (en) * 2007-03-19 2012-07-11 A Data Technology Co Ltd Wear-leveling management and file distribution management of hybrid density memory
KR101401560B1 (ko) * 2007-12-13 2014-06-03 삼성전자주식회사 반도체 메모리 시스템 및 그것의 마모도 관리 방법

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006268880A (ja) * 1991-11-28 2006-10-05 Hitachi Ltd フラッシュメモリを備えた情報機器
JP2006504201A (ja) * 2002-10-28 2006-02-02 サンディスク コーポレイション 不揮発性記憶システムにおける自動損耗均等化
JP2008529130A (ja) * 2005-01-20 2008-07-31 サンディスク コーポレイション フラッシュメモリシステムにおけるハウスキーピング操作のスケジューリング
JP2007133683A (ja) * 2005-11-10 2007-05-31 Sony Corp メモリシステム
JP2008097132A (ja) * 2006-10-06 2008-04-24 Matsushita Electric Ind Co Ltd メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム
JP2008112445A (ja) * 2006-10-27 2008-05-15 Samsung Electronics Co Ltd 不揮発性メモリを管理する装置及び方法
JP2008123314A (ja) * 2006-11-14 2008-05-29 Nec Electronics Corp 半導体記憶装置への情報記録方法及び情報記録システム

Also Published As

Publication number Publication date
TW201005746A (en) 2010-02-01
US20100017555A1 (en) 2010-01-21
KR101515617B1 (ko) 2015-05-04
JP5413572B2 (ja) 2014-02-12
TWI389125B (zh) 2013-03-11
US8909846B2 (en) 2014-12-09
KR20100009464A (ko) 2010-01-27

Similar Documents

Publication Publication Date Title
JP5413572B2 (ja) メモリストレージ装置及びその制御方法
US8103820B2 (en) Wear leveling method and controller using the same
TWI604455B (zh) 資料儲存裝置、記憶體控制器及其資料管理方法與資料區塊管理方法
US8055873B2 (en) Data writing method for flash memory, and controller and system using the same
US8386698B2 (en) Data accessing method for flash memory and storage system and controller using the same
JP5612514B2 (ja) 不揮発性メモリコントローラ及び不揮発性記憶装置
US9384123B2 (en) Memory system
US8046526B2 (en) Wear leveling method and controller using the same
TWI505088B (zh) 基於寫入頻率將資料寫至記憶體不同部份之方法、非暫態電腦可讀媒體與裝置
US10572379B2 (en) Data accessing method and data accessing apparatus
US20090150597A1 (en) Data writing method for flash memory and controller using the same
US7649794B2 (en) Wear leveling method and controller using the same
US20120260025A1 (en) Method for controlling memory system, information processing apparatus, and storage medium
KR20120037786A (ko) 저장 장치, 그것의 락 모드 관리 방법, 및 그것을 포함하는 메모리 시스템
JP2006018839A (ja) 漸進的マージ方法及びそれを利用したメモリシステム
CN110674056B (zh) 一种垃圾回收方法及装置
EP3926451B1 (en) Communication of data relocation information by storage device to host to improve system performance
JP2011070365A (ja) メモリシステム
TWI454922B (zh) 記憶體儲存裝置及其記憶體控制器與資料寫入方法
TWI540428B (zh) 資料寫入方法、記憶體控制器與記憶體儲存裝置
TW202011194A (zh) 快閃記憶體控制器及相關電子裝置
JP4829202B2 (ja) 記憶装置及びメモリ制御方法
CN101739350B (zh) 存储器储存装置及其控制方法
US20120079231A1 (en) Data writing method, memory controller, and memory storage apparatus
US11036414B2 (en) Data storage device and control method for non-volatile memory with high-efficiency garbage collection

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111212

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130605

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130618

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130909

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: 20131001

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131029

R150 Certificate of patent or registration of utility model

Ref document number: 5413572

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250