JP5311081B2 - 固体記憶装置におけるデータ収集および圧縮 - Google Patents

固体記憶装置におけるデータ収集および圧縮 Download PDF

Info

Publication number
JP5311081B2
JP5311081B2 JP2011517463A JP2011517463A JP5311081B2 JP 5311081 B2 JP5311081 B2 JP 5311081B2 JP 2011517463 A JP2011517463 A JP 2011517463A JP 2011517463 A JP2011517463 A JP 2011517463A JP 5311081 B2 JP5311081 B2 JP 5311081B2
Authority
JP
Japan
Prior art keywords
memory
data
page
compressed data
compression
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.)
Active
Application number
JP2011517463A
Other languages
English (en)
Other versions
JP2011527807A (ja
Inventor
クライン,ディーン
Original Assignee
マイクロン テクノロジー, インク.
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 マイクロン テクノロジー, インク. filed Critical マイクロン テクノロジー, インク.
Publication of JP2011527807A publication Critical patent/JP2011527807A/ja
Application granted granted Critical
Publication of JP5311081B2 publication Critical patent/JP5311081B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1041Resource optimization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/40Specific encoding of data in memory or cache
    • G06F2212/401Compressed data
    • 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/7202Allocation control and policies

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

本発明は、概してメモリ装置の分野に関し、特定の実施形態において本発明は、不揮発性メモリ装置に関する。
メモリ装置は、コンピュータまたは他の電子デバイスの内部における半導体集積回路を含み得る。ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックRAM(SRAM)、同期ダイナミックRAM(SDRAM)、およびフラッシュメモリを含む多くの異なる種類のメモリが存在する。
フラッシュメモリ装置は、電子機器での応用における広い適用性のために、不揮発性メモリに多く使用されている。フラッシュメモリ装置は、通常、高い記憶密度、高信頼性、および低消費電力を可能にする1つのトランジスタメモリセルを用いる。フラッシュメモリは、通常、パーソナルコンピュータ、携帯情報端末(PDA)、デジタルカメラ、および携帯電話に用いられる。基本入出力システム(BIOS)等のプラグラムコードおよびシステムデータは、通常、パーソナルコンピュータシステムに用いられるためにフラッシュメモリ装置に記憶される。
フラッシュメモリ装置の1つの欠点は、プログラミングに用いられる物理的プロセスに起因して、それらは通常、限られた消去/プログラミングサイクルの回数においてのみ正しく動作することである。ほとんどのフラッシュメモリ装置は、100K回の消去/プログラミングサイクルにおいて動作できる。
別の欠点は、記憶装置における1ビットあたりのコストが、他のメモリ技術と比べ、比較的高価なことである。それ故、フラッシュメモリアレイ内のメモリセルの取り扱いを、使用されないメモリ域を残すことなく、可能な限り多くのメモリアレイを効率的に利用するように改善する必要がある。
上述した理由、および本明細書の解釈および理解を通じて当業者に明らかとなる下記に記述する他の理由により、当業界において不揮発性メモリの管理を改善する手段が要求される。
データ圧縮を含むデータ収集の方法の一実施形態を具体化するメモリシステムの一実施形態におけるブロック図である。 図1のメモリアレイに従った不揮発性メモリアレイの一部の一実施形態における回路図である。 データ圧縮を含むデータ収集を実行する方法の一実施形態におけるフローチャートである。 圧縮データを読み出す方法の一実施形態におけるフローチャートである。
以下の発明を実施するための形態では、例示として、本明細書の一部を成す添付の図面を参照し、そこでは、本発明が実行され得る特定の実施形態を示す。図面において、同様の参照番号は、複数の図面において、実質的に同様の構成要素を示す。これらの実施形態は、当業者が本発明を実行するのに十分な詳細が記述される。他の実施形態が利用され得、構造的、論理的、および電気的な変形が、本発明の範囲から逸脱せずに実施され得る。それ故、以下の発明を実施するための形態は限定的な意味で解釈するべきではなく、本発明の範囲は、添付の請求項およびその相当物によってのみ定義される。
図1は、固体記憶装置100を含むメモリシステム120の機能ブロック図を示す。固体記憶装置100は、フラッシュメモリ等の不揮発性メモリ100であり得る。固体記憶装置100は、本発明のプログラミングにおける実施形態の理解に役立つメモリの特徴に焦点を合わせるように簡易化されている。固体記憶装置100は、外部のシステム制御装置110に連結される。制御装置110は、マイクロプロセッサ、または他の種類の制御回路であり得る。
固体記憶装置100は、図2に示し、下記に記述するフローティングゲートメモリセル等の不揮発性メモリセルのアレイ130を含む。メモリアレイ130は、ワード線の行等のアクセス線、およびビット線の列等のデータ線のバンクに配列される。一実施形態では、メモリアレイ130の列は、メモリセルの直列ストリングにより構成される。当業界で公知のように、セルとビット線との接続は、アレイがNANDアーキテクチャ、ANDアーキテクチャ、またはNORアーキテクチャであるかを決定する。
メモリアレイ130は、メモリブロックに編成することができる。メモリブロックの大きさは、通常、メモリ装置のサイズ(すなわち、512MB、1GB)によって決定される。一実施形態では、各メモリブロックは、64ページのメモリセルにより形成される。各ページは、通常、2048バイトのデータにより構成される。
メモリ制御回路170は、アレイ130に書き込まれた非圧縮データが圧縮され得、アレイ130から読み出された圧縮データが復元され得るように、圧縮/復元ブロック190を含み得/それと連携できる。圧縮/復元190は、これらのタスクを実行するハードウェア回路を通じて達成され得る。別の実施形態では、ファームウェアルーチンを通じて圧縮/復元190が実行される。
揮発性メモリの記憶域(例えばDRAM)191は、一時的にデータを記憶するために備えられる。揮発性メモリは、メモリアレイ130に書き込まれるデータの一時的な記憶、メモリアレイから読み出されたデータの一時的な記憶、およびメモリ制御回路170に用いられる他のデータの記憶のために制御装置110により使用される。例えば、下で記述するように、圧縮/復元ブロック190は、データを記憶するために揮発性メモリ191を用いることができる。
アドレスバッファ回路140は、I/O回路160を通じて供給されるアドレス信号をラッチするために備えられる。アドレス信号は、メモリアレイ130にアクセスするために、行デコーダ144および列デコーダ146により受け取られ復号される。本発明の記述により、アドレス入力接続の数がメモリアレイ130の密度およびアーキテクチャによって決定されることが当業者によって理解されるであろう。すなわち、アドレスの数は、メモリセルの総数が増加すること、バンクおよびブロックの総数が増加することの両方により、増加する。
固体記憶装置100は、センス増幅器回路150を用いてメモリアレイの列における電圧または電流の変化を検知することによって、メモリアレイ130におけるデータを読み込む。センス増幅器回路150は、一実施形態では、メモリアレイ130からデータの行を読み出し、かつラッチするように接続される。データ入力および出力バッファ回路160は、制御装置110との双方向データ通信の他に、複数のデータ接続162を通じたアドレス通信のために備えられる。書き込み回路155は、データをメモリアレイに書き込むために備えられる。
メモリ制御回路170は、制御装置110から制御接続部172に供給された信号を復号する。これらの信号は、データの読み出し、データの書き込み(プログラム)、および消去動作を含む、メモリアレイ130による動作の制御に用いられる。メモリ制御回路170は、メモリ制御信号を生成するような状態機械、シーケンス制御装置、または他の種類の制御装置であり得る。制御回路170は、下に記述するデータ収集動作を実行するように構成される。追加的に、圧縮/復元動作190がファームウェアルーチンである場合、メモリ制御回路170は、圧縮/復元ならびに図3の実施形態における方法を実行するように構成される。
図2は、下に記述するデータ収集および圧縮/復元の実施形態を実施可能な、不揮発性メモリセルの連続ストリングを備えるNANDアーキテクチャメモリアレイ130の一部における回路図を示す。下の記述はNANDメモリ装置を参照するが、本発明の実施形態は、このようなアーキテクチャに限定されずに、他のメモリ装置アーキテクチャも同様に用いられ得る。
メモリアレイは、直列ストリング204、205のような、列に配置された不揮発性メモリセル130のアレイ(例えば、フローティングゲート)により構成される。セル130の各々は、各直列ストリング204、205においてドレインソース接続する。複数の直列ストリング204、205全体に及ぶワード線WL0−WL31は、行におけるメモリセルの制御ゲートをバイアスするために、行における各メモリセルの制御ゲートに接続される。ビット線BL1、BL2は、特定のビット線における電流を検知して各セルの状態を検出するセンス増幅器(不図示)に最終的に接続される。
メモリセルの各直列ストリング204、205は、ソース選択ゲート216、217によりソース線206、およびドレイン選択ゲート212、213により個々のビット線BL1、BL2に接続される。ソース選択ゲート216、217は、それらの制御ゲートに接続されたソース選択ゲート制御線SG(S)218により制御される。ドレイン選択ゲート212、213は、ドレイン選択ゲート制御線SG(D)214により制御される。
各メモリセルは、シングルレベルセル(SLC)またはマルチレベルセル(MLC)としてプログラミングされ得る。各セルの闘値電圧(V)は、セルに記憶されたデータを示す。例えば、SLCにおいて、0.5VのVは、プログラミングされたセルを示し得、−0.5VのVは、消去済のセルを示し得る。MLCは、それぞれが異なる状態を示す複数のV範囲を有し得る。マルチレベルセルは、ビットパターンをセルが記憶する特定の電圧範囲に割り当てることによって、従来のフラッシュセルのアナログ性質を利用できる。この技術は、セルに割り当てられた電圧範囲の量に応じて、セルあたり2ビット以上の記憶を可能にする。
当業界において情報源符号化としても言及されるデータ圧縮は、元のデータストリングを、元のストリングと同一または実質的に同一の情報を含むが、それらの長さが低減される新しいデータストリングに変換するプロセスである。データ圧縮は、損失性であるか無損失となり得る。
無損失データ圧縮は、より少ないビットを用いつつ同一の元の情報を保持する。この種類のデータ圧縮は、通常、損失性の圧縮と同程度の圧縮は達成できないが、プログラムのソースコードといったデータ損失が許容され得ない状況で用いられる。典型的な無損失データ圧縮アルゴリズムの例には、Lempel−Ziv(LZ)圧縮、DEFLATE、PKZIP、およびGZIPが挙げられる。本開示の実施形態は、いかなる種類の圧縮/復元にも限定されることはない。
図3は、データ収集および圧縮の方法の一実施形態におけるフローチャートを示す。データ収集動作は、どのメモリページおよび/またはメモリブロックが、有効データを用いてただ一部がプログラミングされたかを決定する301(有効データは、その特定のページに実際にプログラミングされ、かつ他の場所に移動していないプログラムされた情報であり得る)。これは、ページ/ブロックを読み出して、どのページ/ブロックが、ただ一部プログラミングされたかを決定することによって達成され得る。他の実施形態では、一部がプラグラミングされたページ/ブロックは、ページ/ブロックからデータの一部が移動した時点で特定され得る(例えば、フラグされる)。この実施形態では、ページ/ブロックの一部のみが有効データを保持することを示すビットを、ページまたはブロック状態レジスタに設定することができる。その後、読み出し動作は、一部がプログラミングされたページ/ブロックを検知するために、状態ビットを読み出すことのみが要求される。
一部がプログラミングされたメモリページおよびメモリブロックは、通常、3つの状況から生じ得る。一部がプログラミングされたメモリページの1つの原因は、メモリページを満たすのに十分な書き込みトラフィックが発生せず、制御装置が、それが有するデータを書き込んで、記憶装置が動作の完了信号をシステムに送信できるようになることである。一部がプログラミングされたメモリページの別の原因は、装置の1つ論理ブロックにデータの一部が書き込まれるが、その同一の論理ブロックは、前に書き込まれたページに既に含まれていることである。前に書き込まれたブロックはここで「無効」とマークされ、それによって、そのページがその中に利用可能な空のスポットを有し、データ収集候補となる。最後に、より一般的でない状況は、システムが装置に、論理ブロックを無効にすることを指示する命令を送信することである。その論理ブロックが前に満たされたページの一部である場合、このページはここでデータ収集候補となる。
これらの動作は、移動していない有効データをを有する、ただ一部がプログラミングされたページまたはブロックを残し得る。データ収集は、メモリの内容を読み出し、および圧縮をバックグラウンドタスクとする機会を提供する。
これらの一部がプログラミングされたメモリページ/ブロックにおける有効データを読み出す302。読み出したデータ302を、圧縮ブロックおよび同時に固体記憶装置のDRAMに入力する。データを圧縮し303、DRAMの異なる領域に一時的に記憶する。上述した圧縮ルーチンのうちの1つか、または他の圧縮ルーチンを用い得る。圧縮は、ハードウェアまたはソフトウェアのいずれかにおいて達成され得る。
転送が完了すると、データが圧縮可能であったか否かを決定するために圧縮を評価する304。データが圧縮可能でない場合305、非圧縮データをメモリページに書き込む306。
データが圧縮可能である場合305、圧縮データを他の圧縮データと組み合わせて、メモリページを満たす307。一実施形態では、1つのメモリページは、2ページに相当するデータを含み得る。
圧縮データは、圧縮済としてフラグが立てられ308、それによって、読み出し時に復元するように圧縮データとして認識されることができる。このようなフラグは、メモリアレイの別個のメモリ域(例えば、DRAMの変換テーブル)、またはメモリ制御回路の一部であるレジスタにおけるビット表示を含み得る。圧縮データの圧縮形式も、メモリ域/レジスタにおける類似のビットまたはマルチビット表示によって示され得る。他の実施形態では、メモリアレイに書き込まれている全てのデータを圧縮して、読み出し動作が全ての読み出しデータを復元するようにする。
図4は、固体記憶装置からデータを読み出す方法の一実施形態を示す。最初に、メモリセルからデータを読み出す401。これは、デジタル的に動作するメモリアレイにおける各セルからデジタルパターンを読み出すか、またはアナログ型で動作するメモリアレイにおける各読み出しメモリセルにおける闘値電圧を決定することにより達成され得る。
読み出しデータが、書き込み時に圧縮されているか否か403、またはデータが既に非圧縮形式で存在するか否かを次に決定する。上述のように、全ての読み出しデータが圧縮形式で存在し、それ故全ての読み出しデータに復元が要求されるか、または圧縮表示ビットが関連データに関して読み出される必要があることが想定され得る。一実施形態では、復元中に同一の復元アルゴリズムが用いられ得るように、使用される圧縮アルゴリズムの種類も決定され得る。
データが圧縮済の場合405、その圧縮に用いられた圧縮アルゴリズムに従って、次に復元し407、そして、復元データを要求ルーチンに転送する411。データが非圧縮状態において記憶されている場合405、読み出されたのと同一の形態において読み出しデータを転送する411。
結び
要約すれば、1つ以上の実施形態では、一部がプログラミングされたメモリブロックに残る有効データを読み出すことによってデータ収集を実行し、有効データをひとまとめにし、データを圧縮し、データを新規のメモリブロックに保存して、新規のメモリブロックが満たされるようにする。次に、一部がプログラミングされたブロックは、後の使用のために消去されて戻される。有効データのこの再書き込みは、実際に発生する書き込みの量がメモリ装置に書き込まれている元のデータの量と比較して増幅されるので、通常、書き込み増幅と呼ばれる。結果として生じた増加したメモリ容量は、メモリ制御回路によって実行される劣化レベル均一化(ウェアレベリング)を分散させることによって書き込み増幅を低減する。
特定の実施形態が本明細書に示され、説明されたが、等しい目的を達成するように意図された任意の構成が、示された特定の実施形態の代わりとなることが当業者に理解される。本発明の多くの改変が当業者に明らかになるであろう。従って、この適応は、本発明の任意の改変形態または変形を含むように意図される。この発明が、下記の請求項およびそれの同等物によってのみ限定されることが明らかに意図される。

Claims (19)

  1. 固体記憶装置におけるデータ収集および圧縮のための方法であって、
    有効データを用いて一部がプログラミングされたメモリページからデータを収集することと、
    前記収集データを圧縮することと、
    メモリページを満たすように、前記圧縮データを前記固体記憶装置にプログラミングすることと、を含む方法。
  2. データ収集が、一部がプログラミングされたメモリブロックからデータを収集することを含む、請求項1に記載の方法。
  3. 前記圧縮データのプログラミングが、前記圧縮データを前記固体記憶装置の異なるページにプログラミングすることを含む、請求項1に記載の方法。
  4. 前記圧縮データに関連するメモリ域にビットを設定することによって、前記圧縮データを識別することをさらに含む、請求項1に記載の方法。
  5. 前記固体記憶装置からデータを読み出すことと、
    前記データを復元することと、をさらに含む、請求項1に記載の方法。
  6. 前記圧縮データのプログラミングが、メモリページにおける部分的なプログラミングが生じないようにプログラミングすることを含む、請求項1に記載の方法。
  7. 前記収集データの圧縮が、前記読み出しデータの圧縮のためにGZIPアルゴリズムを用いることを含む、請求項6に記載の方法。
  8. 前記固体記憶装置から前記圧縮データを読み出すこと、および前記圧縮データを復元するためにLempel−Ziv(LZ)圧縮、DEFLATE、PKZIP、およびGZIPのうちの1つを用いることをさらに含む、請求項7に記載の方法。
  9. 前記収集データの圧縮に用いられた圧縮アルゴリズムの形式を識別することをさらに含む、請求項1に記載の方法。
  10. 前記一部がプログラミングされたメモリページから前記データを読み出した後に、前記一部がプログラミングされたメモリページを消去することをさらに含む、請求項1に記載の方法。
  11. データが第一のメモリページから移動した時に、前記第一のメモリページが、有効データを用いてただ一部がプログラミングされたことを表す情報を設定することをさらに含む、請求項1に記載の方法。
  12. 前記固体記憶装置に再びプログラミングする前に、前記圧縮データと他の圧縮データとを組み合わせることをさらに含む、請求項1に記載の方法。
  13. 複数のメモリページおよびブロックに編成されたメモリアレイと、
    前記メモリアレイに接続されており、メモリ装置の動作を制御するメモリ制御回路と、を備えたメモリ装置であって、
    前記メモリ制御回路が、一部がプログラミングされたページまたはブロックを検知するように前記メモリアレイを読み出し、前記一部がプログラミングされたページまたはブロックからデータを読み出し、前記読み出しデータを圧縮し、メモリページまたはブロックを満たすように、前記圧縮データを前記メモリアレイの別の場所にプログラミングするように構成される、メモリ装置。
  14. 前記メモリアレイが、NANDアーキテクチャフラッシュメモリアレイである、請求項13に記載のメモリ装置。
  15. 各メモリブロックが、複数のメモリページから構成される、請求項13に記載のメモリ装置。
  16. 前記メモリ制御回路が、前記読み出しデータが圧縮されたことを表す情報を生成し、前記表示をメモリにプログラミングするようにさらに構成される、請求項13に記載のメモリ装置。
  17. 前記メモリ制御回路が、1つの論理アドレスの書き込み動作に応じて、複数の物理アドレスに前記圧縮データを書き込むことによって劣化レベル均一化を実行するようにさらに構成される、請求項13に記載のメモリ装置
  18. 前記メモリ制御回路が、前記一部がプログラミングされたメモリブロックを消去するようにさらに構成される、請求項13に記載のメモリ装置
  19. 前記メモリ制御回路が、圧縮形式を表す情報を読み出し、前記圧縮形式を表す情報に応じて前記圧縮データを復元するようにさらに構成される、請求項13に記載のメモリ装置
JP2011517463A 2008-07-10 2009-06-25 固体記憶装置におけるデータ収集および圧縮 Active JP5311081B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/170,612 2008-07-10
US12/170,612 US9772936B2 (en) 2008-07-10 2008-07-10 Data collection and compression in a solid state storage device
PCT/US2009/048567 WO2010005791A2 (en) 2008-07-10 2009-06-25 Data collection and compression in a solid state storage device

Publications (2)

Publication Number Publication Date
JP2011527807A JP2011527807A (ja) 2011-11-04
JP5311081B2 true JP5311081B2 (ja) 2013-10-09

Family

ID=41506147

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011517463A Active JP5311081B2 (ja) 2008-07-10 2009-06-25 固体記憶装置におけるデータ収集および圧縮

Country Status (7)

Country Link
US (3) US9772936B2 (ja)
EP (1) EP2308057A4 (ja)
JP (1) JP5311081B2 (ja)
KR (1) KR101379048B1 (ja)
CN (1) CN102089828B (ja)
TW (1) TWI446358B (ja)
WO (1) WO2010005791A2 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101715575A (zh) 2006-12-06 2010-05-26 弗森多系统公司(dba弗森-艾奥) 采用数据管道管理数据的装置、系统和方法
US9772936B2 (en) * 2008-07-10 2017-09-26 Micron Technology, Inc. Data collection and compression in a solid state storage device
KR101487190B1 (ko) * 2008-09-11 2015-01-28 삼성전자주식회사 압축 코덱을 구비한 플래시 메모리 집적 회로
US20110238903A1 (en) * 2008-12-10 2011-09-29 Amir Ban Method and device of managing a reduced wear memory
KR101649357B1 (ko) 2010-05-10 2016-08-19 삼성전자주식회사 데이터 저장 장치, 그것의 동작 방법, 그리고 그것을 포함한 스토리지 서버
JP5687639B2 (ja) * 2012-02-08 2015-03-18 株式会社東芝 コントローラ、データ記憶装置及びプログラム
US10019353B2 (en) * 2012-03-02 2018-07-10 Longitude Enterprise Flash S.A.R.L. Systems and methods for referencing data on a storage medium
WO2013147819A1 (en) * 2012-03-29 2013-10-03 Intel Corporation Compression-enabled blending of data in non-volatile memory
US9148172B2 (en) 2012-06-22 2015-09-29 Micron Technology, Inc. Data compression and management
US8704686B1 (en) * 2013-01-03 2014-04-22 International Business Machines Corporation High bandwidth compression to encoded data streams
JP6628124B2 (ja) * 2014-05-30 2020-01-08 パナソニックIpマネジメント株式会社 送信装置、受信装置、送信方法および受信方法
CN104090730B (zh) * 2014-07-08 2017-02-22 飞天诚信科技股份有限公司 一种对存储设备进行数据读写的方法及装置
JP6650689B2 (ja) * 2015-06-04 2020-02-19 キヤノン株式会社 サムネイル画像作成装置、3次元造形システム
US9858994B2 (en) * 2015-06-18 2018-01-02 Samsung Electronics Co., Ltd. Memory system with MLC memory cells and partial page compression or reduction
US10379772B2 (en) * 2016-03-16 2019-08-13 Micron Technology, Inc. Apparatuses and methods for operations using compressed and decompressed data
US10614881B2 (en) 2018-08-13 2020-04-07 International Business Machines Corporation Calibration of open blocks in NAND flash memory
US11698758B2 (en) * 2018-12-17 2023-07-11 Micron Technology, Inc. Selective compression circuitry in a memory device
US11481119B2 (en) * 2019-07-15 2022-10-25 Micron Technology, Inc. Limiting hot-cold swap wear leveling
WO2023055459A1 (en) * 2021-09-29 2023-04-06 Micron Technology, Inc. Early detection of compression status using inline metadata

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5237460A (en) * 1990-12-14 1993-08-17 Ceram, Inc. Storage of compressed data on random access storage devices
US5341339A (en) * 1992-10-30 1994-08-23 Intel Corporation Method for wear leveling in a flash EEPROM memory
US5337275A (en) * 1992-10-30 1994-08-09 Intel Corporation Method for releasing space in flash EEPROM memory array to allow the storage of compressed data
US5740395A (en) * 1992-10-30 1998-04-14 Intel Corporation Method and apparatus for cleaning up a solid state memory disk storing floating sector data
US5586285A (en) * 1993-02-19 1996-12-17 Intel Corporation Method and circuitry for increasing reserve memory in a solid state memory disk
US5459850A (en) * 1993-02-19 1995-10-17 Conner Peripherals, Inc. Flash solid state drive that emulates a disk drive and stores variable length and fixed lenth data blocks
US5497419A (en) * 1994-04-19 1996-03-05 Prima Facie, Inc. Method and apparatus for recording sensor data
GB2291991A (en) * 1995-09-27 1996-02-07 Memory Corp Plc Disk drive emulation with a block-erasable memory
US5802553A (en) * 1995-12-19 1998-09-01 Intel Corporation File system configured to support variable density storage and data compression within a nonvolatile memory
US5943692A (en) * 1997-04-30 1999-08-24 International Business Machines Corporation Mobile client computer system with flash memory management utilizing a virtual address map and variable length data
US5930167A (en) * 1997-07-30 1999-07-27 Sandisk Corporation Multi-state non-volatile flash memory capable of being its own two state write cache
US6490649B2 (en) 1998-11-10 2002-12-03 Lexar Media, Inc. Memory device
US6145069A (en) * 1999-01-29 2000-11-07 Interactive Silicon, Inc. Parallel decompression and compression system and method for improving storage density and access speed for non-volatile memory and embedded memory devices
JP4050855B2 (ja) * 2000-01-28 2008-02-20 松下電器産業株式会社 ガベージコレクション装置および方法
EP1233522A1 (en) * 2001-02-14 2002-08-21 Siemens Aktiengesellschaft A data compression/decompression method and apparatus
US6735673B2 (en) * 2002-01-10 2004-05-11 Hewlett-Packard Development Company, L.P. Apparatus and methods for cache line compression
US7111142B2 (en) * 2002-09-13 2006-09-19 Seagate Technology Llc System for quickly transferring data
TWI227409B (en) * 2003-06-05 2005-02-01 Carry Computer Eng Co Ltd Storage device capable of enhancing transmission speed
TWI220959B (en) 2003-06-05 2004-09-11 Carry Computer Eng Co Ltd Storage device with optimized compression management mechanism
US7325090B2 (en) * 2004-04-29 2008-01-29 Sandisk Il Ltd. Refreshing data stored in a flash memory
ZA200700458B (en) * 2004-06-15 2009-03-25 Trek 2000 Int Ltd Solid-state storage device with wireless host interface
US7433994B2 (en) * 2004-12-07 2008-10-07 Ocz Technology Group, Inc. On-device data compression to increase speed and capacity of flash memory-based mass storage devices
US20070005911A1 (en) 2005-07-01 2007-01-04 Nec Laboratories America, Inc. Operating System-Based Memory Compression for Embedded Systems
US20070005625A1 (en) 2005-07-01 2007-01-04 Nec Laboratories America, Inc. Storage architecture for embedded systems
JP4533956B2 (ja) * 2005-08-03 2010-09-01 サンディスク コーポレイション フラッシュメモリシステムのデータ記憶容量の解放
US7596657B2 (en) * 2006-01-13 2009-09-29 Paul Kaler Increased storage capacity for solid state disks using data compression
JP2007305210A (ja) * 2006-05-10 2007-11-22 Toshiba Corp 半導体記憶装置
US20070291571A1 (en) * 2006-06-08 2007-12-20 Intel Corporation Increasing the battery life of a mobile computing system in a reduced power state through memory compression
US8219739B2 (en) * 2006-06-30 2012-07-10 Intel Corporation Read-only optimized flash file system architecture
US7843823B2 (en) * 2006-07-28 2010-11-30 Cisco Technology, Inc. Techniques for balancing throughput and compression in a network communication system
EP1939751A1 (en) * 2006-12-22 2008-07-02 Telefonaktiebolaget LM Ericsson (publ) Storing compressed data
US8127200B2 (en) * 2006-12-24 2012-02-28 Sandisk Il Ltd. Flash memory device and system with randomizing for suppressing errors
JP5037952B2 (ja) * 2007-01-15 2012-10-03 株式会社日立製作所 ストレージシステム及びストレージシステムの制御方法
US20080228998A1 (en) * 2007-03-16 2008-09-18 Spansion Llc Memory storage via an internal compression algorithm
US7975109B2 (en) * 2007-05-30 2011-07-05 Schooner Information Technology, Inc. System including a fine-grained memory and a less-fine-grained memory
US9772936B2 (en) * 2008-07-10 2017-09-26 Micron Technology, Inc. Data collection and compression in a solid state storage device
US9134918B2 (en) * 2009-12-31 2015-09-15 Sandisk Technologies Inc. Physical compression of data with flat or systematic pattern
US9148172B2 (en) * 2012-06-22 2015-09-29 Micron Technology, Inc. Data compression and management

Also Published As

Publication number Publication date
US20170364438A1 (en) 2017-12-21
EP2308057A4 (en) 2011-09-28
TW201011774A (en) 2010-03-16
CN102089828B (zh) 2015-07-01
WO2010005791A2 (en) 2010-01-14
EP2308057A2 (en) 2011-04-13
JP2011527807A (ja) 2011-11-04
KR20110016491A (ko) 2011-02-17
US10176091B2 (en) 2019-01-08
TWI446358B (zh) 2014-07-21
US20190108121A1 (en) 2019-04-11
US20100011150A1 (en) 2010-01-14
WO2010005791A3 (en) 2010-05-06
CN102089828A (zh) 2011-06-08
KR101379048B1 (ko) 2014-03-28
US9772936B2 (en) 2017-09-26
US10691588B2 (en) 2020-06-23

Similar Documents

Publication Publication Date Title
JP5311081B2 (ja) 固体記憶装置におけるデータ収集および圧縮
JP4834676B2 (ja) オンチップ不揮発性メモリ書き込みキャッシュを使用するシステムおよび方法
US7916534B2 (en) Semiconductor memory device
KR100719380B1 (ko) 향상된 신뢰성 특성을 갖는 다치 플래시 메모리 장치 및그것을 포함한 메모리 시스템
JP4787266B2 (ja) スクラッチパッドブロック
US8176234B2 (en) Multi-write coding of non-volatile memories
US20140298088A1 (en) Data conditioning to improve flash memory reliability
US8493782B2 (en) Memory device and program method thereof
US20200303016A1 (en) Memory reading method and memory system
US20080172521A1 (en) Memory System Determining Storage Mode According to Host Provided Data Information
US8751735B2 (en) Protection against data corruption for multi-level memory cell (MLC) flash memory
US10503433B2 (en) Memory management method, memory control circuit unit and memory storage device
US20110246703A1 (en) Constrained coding to reduce floating gate coupling in non-volatile memories
KR20210026431A (ko) 메모리 시스템, 메모리 컨트롤러 및 동작 방법
CN116403629A (zh) 存储装置
JP2007094639A (ja) メモリコントローラ及びフラッシュメモリシステム
US10204043B2 (en) Memory controller, method of controlling nonvolatile memory and memory system
US11249838B2 (en) Memory system, memory controller, and method of operating memory controller
KR20220029903A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120828

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121126

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20121126

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130618

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5311081

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