JP2013542533A - フラッシュメモリベースのデータ記憶のための順応ecc技術 - Google Patents
フラッシュメモリベースのデータ記憶のための順応ecc技術 Download PDFInfo
- Publication number
- JP2013542533A JP2013542533A JP2013536786A JP2013536786A JP2013542533A JP 2013542533 A JP2013542533 A JP 2013542533A JP 2013536786 A JP2013536786 A JP 2013536786A JP 2013536786 A JP2013536786 A JP 2013536786A JP 2013542533 A JP2013542533 A JP 2013542533A
- Authority
- JP
- Japan
- Prior art keywords
- error correction
- encoding
- correction code
- error
- code
- 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
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/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- 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/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- 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/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1012—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
- G06F11/1016—Error in accessing a memory location, i.e. addressing error
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5628—Programming or writing circuits; Data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2906—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Hardware Design (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
【選択図】 図1
Description
本序論は、詳細な説明のより迅速な理解を促すために含めたものである。序論のいずれの段落も、必然的に当該主題全体を概説するものであり、完全なまたは限定的な説明を意図するものではないので、本発明は、序論に示される概念(もしあれば明確な例を含む)に限定されるものではない。たとえば、以下の序論は、紙面と構成により特定の実施形態のみに限定された概略情報を提供する。最終的に請求項と整合するものも含め、本明細書の残部を通じてその他多くの実施形態が論じられている。
本明細書の他の部分では、様々な略称または頭字語が、特定の要素を指す。頭字語の少なくともいくつかの説明は、以下のとおりである。
詳細な説明の序論の結びとして、少なくとも「EC」(Example Combinations、組み合わせ例)として明示的に列挙されたいくつかを含む実施形態例集を以下に示し、本明細書に記載される概念にしたがって様々な実施形態タイプのさらなる説明を提供する。これらの例は、相互に排他的、網羅的、または限定的となるように意図されるものではなく、本発明はこれらの実施形態例に限定されず、むしろ特許請求の範囲内で可能な全ての変更形態および変形形態を包含する。
フラッシュメモリの一部分へのアクセスにおける生ビット誤り率(BER)を決定する誤り統計収集または追跡ハードウェア論理ブロックと、
複数の誤り訂正符号の中から選択された1つにしたがって符号化を行い、さらに少なくとも部分的に前記生BERに基づいて前記選択された誤り訂正符号を動的に決定する順応エンコーダハードウェアブロックと、
を有するシステム。
前記誤り訂正符号のいずれかにしたがって復号する順応デコーダを有するものであるシステム。
フラッシュメモリの一部分へのアクセスにおける生ビット誤り率(BER)を決定する誤り統計収集または追跡ハードウェア論理ブロックと、
順応エンコーダおよび順応デコーダを有する順応コーデックであって、
前記順応エンコーダは複数の誤り訂正符号の中から第1に選択された誤り訂正符号にしたがって符号化を行い、
前記順応デコーダは前記誤り訂正符号の中から第2に選択された1つにしたがって復号を行うものであり、
前記順応コーデックは、さらに、少なくとも部分的に前記誤り統計収集および追跡ハードウェア論理ブロックから受信した情報に基づいて、前記誤り訂正符号の中から第1に選択された誤り訂正符号を決定する前記制御ハードウェア論理ブロックと
を有するものである、前記順応コーデックと、
を有するシステム。
フラッシュメモリの複数の部分の各々に関連付けられた符号化率を決定する符号化率選択ブロックと、
前記決定された各符号化率にしたがって動作可能なエンコーダと、
前記決定された各符号化率にしたがって動作可能なデコーダと
を有し、
前記決定された各符号化率の特定の1つにしたがって前記エンコーダによって符号化されたデータが前記フラッシュメモリの前記部分の特定の1つに書き込まれ、次に前記特定部分から読み出されて前記デコーダによって復号されるものであるシステム。
訂正された誤りの数と、
検出された誤りの数と、
プログラムサイクルまたは消去サイクルの数と、
読み出しサイクルの数と、
プログラム時間、
消去時間と、
読み出し時間と、
温度と、
閾値電圧と
を含むものであるシステム。
図1は、フラッシュメモリベースのデータ記憶のための順応ECC技術を用いるシステム100の実施形態の選択された詳細を示す。書き込み記憶データパス110は、様々なハードウェアブロックを含む。ユニバーサルエンコーダ120は制御/インターフェース130に接続され、これは同様に(たとえば1若しくはそれ以上のフラッシュメモリダイを有する)フラッシュユニット140に接続されている。読み出し記憶データパス150は様々なハードウェアブロックを含む。フラッシュユニットおよび制御/インターフェースはユニバーサルデコーダ160に接続されている。符号ライブラリ170ハードウェアブロックは、ユニバーサルエンコーダおよびユニバーサルデコーダのハードウェアブロックに接続されている。誤り統計収集または追跡180ハードウェアブロックは、ユニバーサルエンコーダ、符号ライブラリ、ユニバーサルデコーダ、および制御/インターフェースのハードウェアブロックに接続されている。
図2Aは、フラッシュメモリベースのデータ記憶のための順応ECC技術を用いるSSDコントローラを含むSSDの実施形態の、選択された詳細を図示する。SSDコントローラ200は、1若しくはそれ以上の外部インターフェース210を経由して、ホスト(図示せず)と通信可能に接続されている。様々な実施形態によれば、外部インターフェース210は、SATAインターフェース、SASインターフェース、PCIeインターフェース、ファイバーチャネルインターフェース、イーサネット(登録商標)インターフェース(10ギガビットイーサネット(登録商標)など)、上記インターフェースの非標準バージョン、カスタムインターフェース、あるいは記憶および/または通信および/または計算装置を相互接続するために使用されるその他いずれかのタイプのインターフェース、のうちの1若しくはそれ以上である。
いくつかの実施形態において、たとえば図1のハードウェアブロック、コンピューティングホスト・フラッシュメモリ・コントローラおよび/またはSSDコントローラ(図2AのSSDコントローラ200など)、など、システムが実現するするフラッシュメモリベースのデータ記憶のための順応ECC技術によって実行される動作の全てまたは一部、およびプロセッサ、マイクロプロセッサ、システムオンチップ、特定用途向け集積回路、ハードウェアアクセラレータ、または上記動作の全てまたは一部を提供するその他の回路の様々な組み合わせは、コンピュータシステムによる処理と互換性のある仕様によって指定される。前記仕様は、ハードウェア記述言語、回路記述、ネットリスト記述、マスク記述、またはレイアウト記述など、様々な記述に準拠している。記述の例は、Verilog、VHDL、SPICE、SPICE、PSpiceなどのSPICEの変更例、IBIS、LEF、DEF、GDS−II、OASIS、またはその他の記述を含む。様々な実施形態において、前記処理は、1若しくはそれ以上の集積回路への搭載に適した論理および/または回路を生成、検証、または指定するための解釈、コンパイル、シミュレーション、および合成の、いずれかの組み合わせを含む。各集積回路は、様々な実施形態によれば、様々な技術にしたがって設計可能および/または製造可能である。前記技術は、プログラマブル技術(フィールドまたはマスク・プログラマブル・ゲートアレイ集積回路など)、セミカスタム技術(完全または部分的セルベース集積回路など)、およびフルカスタム技術(実質的に特化された集積回路など)、これらのいずれかの組み合わせ、あるいは集積回路の設計および/または製造と互換性のあるその他いずれかの技術を含む。
本文および図面を作成する利便性のみのため、本明細書において特定の選択がなされてきたが、別途指示のない限り、前記選択は本質的に、記載される実施形態の構造または動作に関する付加的な情報を伝達するものとして解釈されるべきではない。前記選択の例は、図の参照番号に使用される指定の具体的な構成または割当て、および実施形態の特徴および要素を識別および参照するために使用される要素識別子(付記また参照番号など)の具体的な構成または割当てを含む。
110...書き込み記憶データパス
120...ユニバーサルエンコーダ
130...制御/インターフェース
140...フラッシュユニット
150...読み出し記憶データパス
160...ユニバーサルデコーダ
170...符号ライブラリ
180...誤り統計収集または追跡
200...SSDコントローラ
201...SSD
202...ホスト
203...中間コントローラ
204...中間インターフェース
210...外部インターフェース
211...ホストインターフェース
213...タグ追跡
221...データ処理
223...エンジン
231...バッファ
233...DMA
237...メモリ
241...マップ
243...テーブル
251...リサイクラ
261...ECC
271...CPU
273...コマンド管理
275...バッファ管理
277...変換管理
279...コヒーレンシ管理
281...CPUコア
282...装置管理
290...装置インターフェース
291...装置インターフェース論理
292...フラッシュ装置
293...スケジューリング
294...フラッシュダイ
299...不揮発性メモリ
Claims (19)
- システムであって、
フラッシュメモリの一部分へのアクセスにおける生ビット誤り率(BER)を動的に決定する誤り統計収集および追跡手段と、
複数の誤り訂正符号の中から選択された1つにしたがって符号化を行い、さらに少なくとも部分的に前記生BERに基づいて前記動的に選択された誤り訂正符号を動的に決定する順応(adaptive)符号化手段と、
を有するシステム。 - 請求項1記載のシステムにおいて、前記誤り訂正符号のうちの第1の誤り訂正符号による符号化の結果、前記誤り訂正符号のうちの第2の誤り訂正符号による符号化よりも少ない数の誤り訂正ビットが前記部分に格納されるものであるシステム。
- 請求項2記載のシステムにおいて、前記第1の誤り訂正符号にしたがって符号化する場合、ユーザデータとして使用される部分のビット数が、最大で、前記第2の誤り訂正符号によって使用される誤り訂正ビットの数から前記第1の誤り訂正符号によって使用される誤り訂正ビットの数を引いた差分だけ増加するものであるシステム。
- 請求項2記載のシステムにおいて、前記第2の誤り訂正符号にしたがって符号化する場合、ユーザデータとして使用される部分のビット数が、最大で、前記第2の誤り訂正符号によって使用される誤り訂正ビットの数から前記第1の誤り訂正符号によって使用される誤り訂正ビットの数を引いた差分だけ減少するものであるシステム。
- 請求項2記載のシステムにおいて、前記順応符号化手段は、さらに、前記部分の寿命の第1の時期の間は前記第1の誤り訂正符号を選択し、前記寿命の第2の時期の間は前記第2の誤り訂正符号を選択するものであり、前記第2の時期は前記第1の時期より後であるシステム。
- 請求項2記載のシステムにおいて、前記誤り統計収集および追跡手段および前記順応符号化手段のうちの1若しくはそれ以上は少なくとも部分的に、ハードウェア論理回路および/または1若しくはそれ以上のソフトウェアルーチンを通じて実現されるものであるシステム。
- システムであって、
フラッシュメモリの一部分へのアクセスにおける生ビット誤り率(BER)を決定する誤り統計収集および追跡手段と、
順応符号化手段および順応復号手段を有する順応符号化または復号手段であって、
前記順応符号化手段は、複数の誤り訂正符号の中から第1に選択された誤り訂正符号にしたがって符号化を行い、
前記順応復号手段は、前記誤り訂正符号の中から第2に選択された誤り訂正符号したがって復号を行うものであり、
前記順応符号化または復号手段は、さらに、少なくとも部分的に前記誤り統計収集および追跡手段から受信した情報に基づいて、前記第1に選択された誤り訂正符号を決定するものである、
前記順応符号化または復号手段と
を有するシステム。 - 請求項7記載のシステムにおいて、前記順応符号化手段は、前記誤り訂正符号のいずれかにしたがって符号化を行うユニバーサル符号化手段であるシステム。
- 請求項7記載のシステムにおいて、前記順応復号手段は、前記誤り訂正符号のいずれかにしたがって復号を行うユニバーサル復号手段であるシステム。
- 請求項7記載のシステムにおいて、前記第1に選択された誤り訂正符号による符号化の結果、前記第2に選択された誤り訂正符号による符号化よりも少ない数の誤り訂正ビットが前記部分に格納されるものであるシステム。
- 請求項10記載のシステムにおいて、前記第1に選択された誤り訂正符号にしたがって符号化する場合、ユーザデータとして使用される部分のビット数は、最大で、前記第2に選択された誤り訂正符号にしたがって符号化を行うときに使用される誤り訂正ビット数から前記第1に選択された誤り訂正符号にしたがって符号化を行うときに使用される誤り訂正ビット数を引いた差分だけ増加するものであるシステム。
- 請求項10記載のシステムにおいて、前記第2に選択された誤り訂正符号にしたがって符号化する場合、ユーザデータとして使用される部分のビット数は、最大で、前記第2に選択された誤り訂正符号にしたがって符号化を行うときに使用される誤り訂正ビット数から前記第1に選択された誤り訂正符号にしたがって符号化を行うときに使用される誤り訂正ビット数を引いた差分だけ減少するものであるシステム。
- 請求項10記載のシステムにおいて、前記順応符号化手段は、さらに、前記部分の寿命の第1の時期の間は前記第1に選択された誤り訂正符号を選択し、前記寿命の第2の時期の間は前記第2に選択された誤り訂正符号を選択するものであり、前記第2の時期は前記第1の時期より後であるシステム。
- 請求項7記載のシステムにおいて、前記誤り統計収集および追跡手段および前記順応符号化手段のうちの1若しくはそれ以上は少なくとも部分的に、ハードウェア論理回路および/または1若しくはそれ以上のソフトウェアルーチンを通じて実現されるものであるシステム。
- システムであって、
フラッシュメモリの複数の部分の各々に関連付けられた符号化率を動的に決定する動的符号化率選択手段と、
前記決定された各符号化率にしたがって動作可能な符号化手段と、
前記決定された各符号化率にしたがって動作可能な復号手段と
を有し、
前記決定された各符号化率の特定の1つにしたがって前記符号化手段によって符号化されたデータが前記部分のうちの特定の1つに書き込まれ、次に、前記特定部分から読み出されて前記復号手段によって復号されるものであるシステム。 - 請求項15記載のシステムにおいて、前記動的符号化率選択手段は、少なくとも部分的に、前記部分のうちの1若しくはそれ以上ごとに1若しくはそれ以上のパラメータに基づいて、または前記パラメータのうちの1若しくはそれ以上の1若しくはそれ以上の履歴に基づいて、前記各符号化率を動的に決定するものであり、前記パラメータは、
訂正された誤りの数と、
検出された誤りの数と、
プログラムサイクルまたは消去サイクルの数と、
読み出しサイクルの数と、
プログラム時間と、
消去時間と、
読み出し時間と、
温度と、
閾値電圧と
を含むものであるシステム。 - 請求項15記載のシステムにおいて、前記動的決定は、
前記部分のうちの第1の部分に当該第1の部分の寿命の比較的初期において関連付けられる比較的低い符号化率の決定と、
前記第1の部分に前記寿命の比較的後期に関連付けられる比較的高い符号化率の決定とを有するものであるシステム。 - 請求項17記載のシステムにおいて、前記比較的低い符号化率にしたがって符号化する場合、ユーザデータとして使用される前記第1の部分のビット数は、前記比較的高い符号化率にしたがって符号化するときよりも大きいものであるシステム。
- 請求項15記載のシステムにおいて、前記動的符号化率選択手段、前記符号化手段、および前記復号手段のうちの1若しくはそれ以上は少なくとも部分的に、ハードウェア論理回路および/または1若しくはそれ以上のソフトウェアルーチンを通じて実現されるものであるシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US40717810P | 2010-10-27 | 2010-10-27 | |
US61/407,178 | 2010-10-27 | ||
PCT/US2011/057914 WO2012058328A1 (en) | 2010-10-27 | 2011-10-26 | Adaptive ecc techniques for flash memory based data storage |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013542533A true JP2013542533A (ja) | 2013-11-21 |
JP2013542533A5 JP2013542533A5 (ja) | 2014-12-11 |
Family
ID=45994376
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013536786A Pending JP2013542533A (ja) | 2010-10-27 | 2011-10-26 | フラッシュメモリベースのデータ記憶のための順応ecc技術 |
Country Status (7)
Country | Link |
---|---|
US (2) | US20140136927A1 (ja) |
EP (1) | EP2633409A4 (ja) |
JP (1) | JP2013542533A (ja) |
KR (1) | KR101606718B1 (ja) |
CN (1) | CN103329103B (ja) |
TW (1) | TWI512452B (ja) |
WO (1) | WO2012058328A1 (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015138498A (ja) * | 2014-01-24 | 2015-07-30 | 三菱電機株式会社 | フラッシュメモリの誤り訂正符号化装置および方法 |
JP2016085671A (ja) * | 2014-10-28 | 2016-05-19 | 株式会社メガチップス | エラー訂正装置 |
JP2016161990A (ja) * | 2015-02-26 | 2016-09-05 | ファナック株式会社 | 誤り訂正機能による寿命予測を有する制御装置 |
WO2017018008A1 (ja) * | 2015-07-24 | 2017-02-02 | ソニー株式会社 | 符号化装置、メモリコントローラ、通信システムおよび符号化方法 |
JP2018507462A (ja) * | 2015-01-20 | 2018-03-15 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 分散ストレージのための多重イレージャーコード |
US10261857B2 (en) | 2016-09-14 | 2019-04-16 | Toshiba Memory Corporation | Memory system and method for controlling code rate for data to be stored |
Families Citing this family (188)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8775717B2 (en) | 2007-12-27 | 2014-07-08 | Sandisk Enterprise Ip Llc | Storage controller for flash memory including a crossbar switch connecting a plurality of processors with a plurality of internal memories |
US8241425B2 (en) * | 2009-01-23 | 2012-08-14 | Axcelis Technologies, Inc. | Non-condensing thermos chuck |
WO2011080768A1 (en) * | 2009-12-29 | 2011-07-07 | Ferdinando Bedeschi | Memory devices comprising partitions with particular ecc attributes |
EP2545554A4 (en) | 2010-03-12 | 2015-03-11 | Lsi Corp | LDPC CLEARANCE DECODING FOR FLASH MEMORY |
EP2646922A4 (en) | 2010-12-01 | 2015-11-25 | Lsi Corp | DYNAMIC MANAGEMENT OF HIGHER LEVEL REDUNDANCY MODE WITH INDEPENDENT SILICON ELEMENTS |
JP5720210B2 (ja) * | 2010-12-02 | 2015-05-20 | 富士通株式会社 | アクセス制御装置、誤り訂正制御方法およびストレージ装置 |
US8719663B2 (en) | 2010-12-12 | 2014-05-06 | Lsi Corporation | Cross-decoding for non-volatile storage |
CN103415844B (zh) | 2011-01-18 | 2016-04-20 | 希捷科技有限公司 | 用于高级冗余信息计算的系统和方法 |
US9130596B2 (en) * | 2011-06-29 | 2015-09-08 | Seagate Technology Llc | Multiuse data channel |
US9189329B1 (en) | 2011-10-13 | 2015-11-17 | Marvell International Ltd. | Generating error correcting code (ECC) data using an ECC corresponding to an identified ECC protection level |
US8793543B2 (en) | 2011-11-07 | 2014-07-29 | Sandisk Enterprise Ip Llc | Adaptive read comparison signal generation for memory systems |
US9048876B2 (en) | 2011-11-18 | 2015-06-02 | Sandisk Enterprise Ip Llc | Systems, methods and devices for multi-tiered error correction |
US8954822B2 (en) | 2011-11-18 | 2015-02-10 | Sandisk Enterprise Ip Llc | Data encoder and decoder using memory-specific parity-check matrix |
US9183085B1 (en) | 2012-05-22 | 2015-11-10 | Pmc-Sierra, Inc. | Systems and methods for adaptively selecting from among a plurality of error correction coding schemes in a flash drive for robustness and low latency |
US9176812B1 (en) | 2012-05-22 | 2015-11-03 | Pmc-Sierra, Inc. | Systems and methods for storing data in page stripes of a flash drive |
US8856431B2 (en) | 2012-08-02 | 2014-10-07 | Lsi Corporation | Mixed granularity higher-level redundancy for non-volatile memory |
JP2014035673A (ja) * | 2012-08-09 | 2014-02-24 | Renesas Electronics Corp | 半導体記憶装置及び方法 |
US9699263B1 (en) | 2012-08-17 | 2017-07-04 | Sandisk Technologies Llc. | Automatic read and write acceleration of data accessed by virtual machines |
US8972826B2 (en) * | 2012-10-24 | 2015-03-03 | Western Digital Technologies, Inc. | Adaptive error correction codes for data storage systems |
US10318365B2 (en) | 2012-11-02 | 2019-06-11 | Hewlett Packard Enterprise Development Lp | Selective error correcting code and memory access granularity switching |
US9021339B2 (en) | 2012-11-29 | 2015-04-28 | Western Digital Technologies, Inc. | Data reliability schemes for data storage systems |
US9059736B2 (en) | 2012-12-03 | 2015-06-16 | Western Digital Technologies, Inc. | Methods, solid state drive controllers and data storage devices having a runtime variable raid protection scheme |
US9257203B2 (en) | 2012-12-06 | 2016-02-09 | Micron Technology, Inc. | Setting a default read signal based on error correction |
US9214963B1 (en) | 2012-12-21 | 2015-12-15 | Western Digital Technologies, Inc. | Method and system for monitoring data channel to enable use of dynamically adjustable LDPC coding parameters in a data storage system |
US9501398B2 (en) | 2012-12-26 | 2016-11-22 | Sandisk Technologies Llc | Persistent storage device with NVRAM for staging writes |
US9612948B2 (en) | 2012-12-27 | 2017-04-04 | Sandisk Technologies Llc | Reads and writes between a contiguous data block and noncontiguous sets of logical address blocks in a persistent storage device |
US9239751B1 (en) | 2012-12-27 | 2016-01-19 | Sandisk Enterprise Ip Llc | Compressing data from multiple reads for error control management in memory systems |
US9454420B1 (en) | 2012-12-31 | 2016-09-27 | Sandisk Technologies Llc | Method and system of reading threshold voltage equalization |
US9870830B1 (en) | 2013-03-14 | 2018-01-16 | Sandisk Technologies Llc | Optimal multilevel sensing for reading data from a storage medium |
US9136877B1 (en) | 2013-03-15 | 2015-09-15 | Sandisk Enterprise Ip Llc | Syndrome layered decoding for LDPC codes |
US9236886B1 (en) | 2013-03-15 | 2016-01-12 | Sandisk Enterprise Ip Llc | Universal and reconfigurable QC-LDPC encoder |
US9244763B1 (en) | 2013-03-15 | 2016-01-26 | Sandisk Enterprise Ip Llc | System and method for updating a reading threshold voltage based on symbol transition information |
US9367246B2 (en) | 2013-03-15 | 2016-06-14 | Sandisk Technologies Inc. | Performance optimization of data transfer for soft information generation |
US9092350B1 (en) | 2013-03-15 | 2015-07-28 | Sandisk Enterprise Ip Llc | Detection and handling of unbalanced errors in interleaved codewords |
US9208018B1 (en) * | 2013-03-15 | 2015-12-08 | Pmc-Sierra, Inc. | Systems and methods for reclaiming memory for solid-state memory |
KR102102171B1 (ko) * | 2013-04-05 | 2020-05-29 | 삼성전자 주식회사 | 멀티 레벨 셀 메모리 시스템 |
CN103269230B (zh) * | 2013-05-28 | 2017-02-22 | 中国科学院自动化研究所 | 一种自适应调整纠错码的容错系统及方法 |
US9159437B2 (en) | 2013-06-11 | 2015-10-13 | Sandisk Enterprise IP LLC. | Device and method for resolving an LM flag issue |
US9152488B2 (en) * | 2013-06-25 | 2015-10-06 | Sandisk Technologies Inc. | Storage module and low-complexity methods for assessing the health of a flash memory device |
WO2015005903A1 (en) * | 2013-07-09 | 2015-01-15 | Hewlett-Packard Development Company, L.P. | Write flow control for memory modules that include or interface with non-compliant memory technologies |
US9524235B1 (en) | 2013-07-25 | 2016-12-20 | Sandisk Technologies Llc | Local hash value generation in non-volatile data storage systems |
US9384126B1 (en) | 2013-07-25 | 2016-07-05 | Sandisk Technologies Inc. | Methods and systems to avoid false negative results in bloom filters implemented in non-volatile data storage systems |
US20150058697A1 (en) * | 2013-08-22 | 2015-02-26 | Kabushiki Kaisha Toshiba | Storage device, controller and memory controlling method |
US9235509B1 (en) | 2013-08-26 | 2016-01-12 | Sandisk Enterprise Ip Llc | Write amplification reduction by delaying read access to data written during garbage collection |
US9639463B1 (en) | 2013-08-26 | 2017-05-02 | Sandisk Technologies Llc | Heuristic aware garbage collection scheme in storage systems |
US10102060B2 (en) * | 2013-08-30 | 2018-10-16 | Hitachi, Ltd. | Storage apparatus and data control method of storing data with an error correction code |
US9442670B2 (en) | 2013-09-03 | 2016-09-13 | Sandisk Technologies Llc | Method and system for rebalancing data stored in flash memory devices |
US9519577B2 (en) | 2013-09-03 | 2016-12-13 | Sandisk Technologies Llc | Method and system for migrating data between flash memory devices |
US9158349B2 (en) | 2013-10-04 | 2015-10-13 | Sandisk Enterprise Ip Llc | System and method for heat dissipation |
US9442662B2 (en) | 2013-10-18 | 2016-09-13 | Sandisk Technologies Llc | Device and method for managing die groups |
US9298608B2 (en) | 2013-10-18 | 2016-03-29 | Sandisk Enterprise Ip Llc | Biasing for wear leveling in storage systems |
US9436831B2 (en) | 2013-10-30 | 2016-09-06 | Sandisk Technologies Llc | Secure erase in a memory device |
US9263156B2 (en) | 2013-11-07 | 2016-02-16 | Sandisk Enterprise Ip Llc | System and method for adjusting trip points within a storage device |
US9244785B2 (en) | 2013-11-13 | 2016-01-26 | Sandisk Enterprise Ip Llc | Simulated power failure and data hardening |
US9703816B2 (en) | 2013-11-19 | 2017-07-11 | Sandisk Technologies Llc | Method and system for forward reference logging in a persistent datastore |
US9520197B2 (en) | 2013-11-22 | 2016-12-13 | Sandisk Technologies Llc | Adaptive erase of a storage device |
US9520162B2 (en) | 2013-11-27 | 2016-12-13 | Sandisk Technologies Llc | DIMM device controller supervisor |
US9582058B2 (en) | 2013-11-29 | 2017-02-28 | Sandisk Technologies Llc | Power inrush management of storage devices |
US9235245B2 (en) | 2013-12-04 | 2016-01-12 | Sandisk Enterprise Ip Llc | Startup performance and power isolation |
US9280419B2 (en) | 2013-12-16 | 2016-03-08 | International Business Machines Corporation | Dynamic adjustment of data protection schemes in flash storage systems based on temperature, power off duration and flash age |
US9645924B2 (en) * | 2013-12-16 | 2017-05-09 | International Business Machines Corporation | Garbage collection scaling |
US9129665B2 (en) | 2013-12-17 | 2015-09-08 | Sandisk Enterprise Ip Llc | Dynamic brownout adjustment in a storage device |
US9417960B2 (en) * | 2013-12-20 | 2016-08-16 | Seagate Technology Llc | Preventing programming errors from occurring when programming flash memory cells |
US8874835B1 (en) | 2014-01-16 | 2014-10-28 | Pure Storage, Inc. | Data placement based on data properties in a tiered storage device system |
US9549457B2 (en) | 2014-02-12 | 2017-01-17 | Sandisk Technologies Llc | System and method for redirecting airflow across an electronic assembly |
US9703636B2 (en) | 2014-03-01 | 2017-07-11 | Sandisk Technologies Llc | Firmware reversion trigger and control |
US9390814B2 (en) | 2014-03-19 | 2016-07-12 | Sandisk Technologies Llc | Fault detection and prediction for data storage elements |
US9448876B2 (en) | 2014-03-19 | 2016-09-20 | Sandisk Technologies Llc | Fault detection and prediction in storage devices |
US9454448B2 (en) | 2014-03-19 | 2016-09-27 | Sandisk Technologies Llc | Fault testing in storage devices |
US9626399B2 (en) | 2014-03-31 | 2017-04-18 | Sandisk Technologies Llc | Conditional updates for reducing frequency of data modification operations |
US9390021B2 (en) | 2014-03-31 | 2016-07-12 | Sandisk Technologies Llc | Efficient cache utilization in a tiered data structure |
US9626400B2 (en) | 2014-03-31 | 2017-04-18 | Sandisk Technologies Llc | Compaction of information in tiered data structure |
US9697267B2 (en) | 2014-04-03 | 2017-07-04 | Sandisk Technologies Llc | Methods and systems for performing efficient snapshots in tiered data structures |
US9419655B2 (en) * | 2014-04-04 | 2016-08-16 | Seagate Technology Llc | Error correction code (ECC) selection using probability density functions of error correction capability in storage controllers with multiple error correction codes |
TWI545581B (zh) * | 2014-04-15 | 2016-08-11 | 群聯電子股份有限公司 | 資料寫入方法、記憶體儲存裝置及記憶體控制電路單元 |
CN105005450B (zh) * | 2014-04-25 | 2018-11-02 | 群联电子股份有限公司 | 数据写入方法、存储器存储装置及存储器控制电路单元 |
US9244764B2 (en) | 2014-05-08 | 2016-01-26 | Sandisk Technologies Inc. | Error correcting code techniques for a memory having a three-dimensional memory configuration |
US9257186B2 (en) | 2014-05-08 | 2016-02-09 | Sandisk Technologies Inc. | Memory access techniques for a memory having a three-dimensional memory configuration |
US10146448B2 (en) | 2014-05-30 | 2018-12-04 | Sandisk Technologies Llc | Using history of I/O sequences to trigger cached read ahead in a non-volatile storage device |
US10656840B2 (en) | 2014-05-30 | 2020-05-19 | Sandisk Technologies Llc | Real-time I/O pattern recognition to enhance performance and endurance of a storage device |
US9093160B1 (en) | 2014-05-30 | 2015-07-28 | Sandisk Technologies Inc. | Methods and systems for staggered memory operations |
US10372613B2 (en) | 2014-05-30 | 2019-08-06 | Sandisk Technologies Llc | Using sub-region I/O history to cache repeatedly accessed sub-regions in a non-volatile storage device |
US10656842B2 (en) | 2014-05-30 | 2020-05-19 | Sandisk Technologies Llc | Using history of I/O sizes and I/O sequences to trigger coalesced writes in a non-volatile storage device |
US9703491B2 (en) | 2014-05-30 | 2017-07-11 | Sandisk Technologies Llc | Using history of unaligned writes to cache data and avoid read-modify-writes in a non-volatile storage device |
US10114557B2 (en) | 2014-05-30 | 2018-10-30 | Sandisk Technologies Llc | Identification of hot regions to enhance performance and endurance of a non-volatile storage device |
US9070481B1 (en) | 2014-05-30 | 2015-06-30 | Sandisk Technologies Inc. | Internal current measurement for age measurements |
US9645749B2 (en) | 2014-05-30 | 2017-05-09 | Sandisk Technologies Llc | Method and system for recharacterizing the storage density of a memory device or a portion thereof |
US10162748B2 (en) | 2014-05-30 | 2018-12-25 | Sandisk Technologies Llc | Prioritizing garbage collection and block allocation based on I/O history for logical address regions |
US8891303B1 (en) | 2014-05-30 | 2014-11-18 | Sandisk Technologies Inc. | Method and system for dynamic word line based configuration of a three-dimensional memory device |
US10116336B2 (en) | 2014-06-13 | 2018-10-30 | Sandisk Technologies Llc | Error correcting code adjustment for a data storage device |
US9652381B2 (en) | 2014-06-19 | 2017-05-16 | Sandisk Technologies Llc | Sub-block garbage collection |
US9082512B1 (en) | 2014-08-07 | 2015-07-14 | Pure Storage, Inc. | Die-level monitoring in a storage cluster |
US10983859B2 (en) * | 2014-08-07 | 2021-04-20 | Pure Storage, Inc. | Adjustable error correction based on memory health in a storage unit |
US9558069B2 (en) | 2014-08-07 | 2017-01-31 | Pure Storage, Inc. | Failure mapping in a storage array |
US9766972B2 (en) | 2014-08-07 | 2017-09-19 | Pure Storage, Inc. | Masking defective bits in a storage array |
GB2529670A (en) * | 2014-08-28 | 2016-03-02 | Ibm | Storage system |
GB2529669B8 (en) | 2014-08-28 | 2017-03-15 | Ibm | Storage system |
TWI550615B (zh) * | 2014-08-28 | 2016-09-21 | 群聯電子股份有限公司 | 資料存取方法、記憶體儲存裝置及記憶體控制電路單元 |
US9652153B2 (en) | 2014-09-02 | 2017-05-16 | Sandisk Technologies Llc | Process and apparatus to reduce declared capacity of a storage device by reducing a count of logical addresses |
US9519427B2 (en) | 2014-09-02 | 2016-12-13 | Sandisk Technologies Llc | Triggering, at a host system, a process to reduce declared capacity of a storage device |
US9563362B2 (en) | 2014-09-02 | 2017-02-07 | Sandisk Technologies Llc | Host system and process to reduce declared capacity of a storage device by trimming |
US9582202B2 (en) | 2014-09-02 | 2017-02-28 | Sandisk Technologies Llc | Process and apparatus to reduce declared capacity of a storage device by moving data |
US9582212B2 (en) | 2014-09-02 | 2017-02-28 | Sandisk Technologies Llc | Notification of trigger condition to reduce declared capacity of a storage device |
US9524112B2 (en) | 2014-09-02 | 2016-12-20 | Sandisk Technologies Llc | Process and apparatus to reduce declared capacity of a storage device by trimming |
US9524105B2 (en) | 2014-09-02 | 2016-12-20 | Sandisk Technologies Llc | Process and apparatus to reduce declared capacity of a storage device by altering an encoding format |
US9563370B2 (en) | 2014-09-02 | 2017-02-07 | Sandisk Technologies Llc | Triggering a process to reduce declared capacity of a storage device |
US9158681B1 (en) * | 2014-09-02 | 2015-10-13 | Sandisk Technologies Inc. | Process and apparatus to reduce declared capacity of a storage device by conditionally trimming |
US9665311B2 (en) | 2014-09-02 | 2017-05-30 | Sandisk Technologies Llc | Process and apparatus to reduce declared capacity of a storage device by making specific logical addresses unavailable |
US9582193B2 (en) * | 2014-09-02 | 2017-02-28 | Sandisk Technologies Llc | Triggering a process to reduce declared capacity of a storage device in a multi-storage-device storage system |
US9582203B2 (en) * | 2014-09-02 | 2017-02-28 | Sandisk Technologies Llc | Process and apparatus to reduce declared capacity of a storage device by reducing a range of logical addresses |
US9552166B2 (en) | 2014-09-02 | 2017-01-24 | Sandisk Technologies Llc. | Process and apparatus to reduce declared capacity of a storage device by deleting data |
US9582220B2 (en) * | 2014-09-02 | 2017-02-28 | Sandisk Technologies Llc | Notification of trigger condition to reduce declared capacity of a storage device in a multi-storage-device storage system |
US9443601B2 (en) | 2014-09-08 | 2016-09-13 | Sandisk Technologies Llc | Holdup capacitor energy harvesting |
US9690655B2 (en) * | 2014-09-30 | 2017-06-27 | EMC IP Holding Company LLC | Method and system for improving flash storage utilization by predicting bad m-pages |
US10365859B2 (en) * | 2014-10-21 | 2019-07-30 | International Business Machines Corporation | Storage array management employing a merged background management process |
CN105528178B (zh) * | 2014-10-21 | 2018-09-21 | 华为技术有限公司 | 数据存储方法及固态硬盘 |
TWI520140B (zh) * | 2014-11-03 | 2016-02-01 | 慧榮科技股份有限公司 | 資料儲存裝置以及快閃記憶體控制方法 |
US10691531B2 (en) | 2014-12-04 | 2020-06-23 | Western Digital Technologies, Inc. | Systems and methods for multi-zone data tiering for endurance extension in solid state drives |
US10067823B2 (en) * | 2014-12-04 | 2018-09-04 | Western Digital Technologies, Inc. | Systems and methods for adaptive error corrective code mechanisms |
CN106415502B (zh) * | 2014-12-12 | 2019-07-12 | 华为技术有限公司 | 数据存储的方法和装置 |
US10430112B2 (en) * | 2014-12-22 | 2019-10-01 | Sandisk Technologies Llc | Memory block cycling based on memory wear or data retention |
US10339048B2 (en) | 2014-12-23 | 2019-07-02 | International Business Machines Corporation | Endurance enhancement scheme using memory re-evaluation |
US9990279B2 (en) | 2014-12-23 | 2018-06-05 | International Business Machines Corporation | Page-level health equalization |
TWI555028B (zh) * | 2015-02-12 | 2016-10-21 | 慧榮科技股份有限公司 | 資料儲存裝置以及錯誤校正方法 |
US9768808B2 (en) | 2015-04-08 | 2017-09-19 | Sandisk Technologies Llc | Method for modifying device-specific variable error correction settings |
US9792053B2 (en) | 2015-04-30 | 2017-10-17 | Toshiba Memory Corporation | Controller for nonvolatile semiconductor memory |
US9639282B2 (en) | 2015-05-20 | 2017-05-02 | Sandisk Technologies Llc | Variable bit encoding per NAND flash cell to improve device endurance and extend life of flash-based storage devices |
US9606737B2 (en) | 2015-05-20 | 2017-03-28 | Sandisk Technologies Llc | Variable bit encoding per NAND flash cell to extend life of flash-based storage devices and preserve over-provisioning |
US10439650B2 (en) * | 2015-05-27 | 2019-10-08 | Quantum Corporation | Cloud-based solid state device (SSD) with dynamically variable error correcting code (ECC) system |
KR102324769B1 (ko) * | 2015-06-29 | 2021-11-10 | 삼성전자주식회사 | 반도체 메모리 장치의 에러 정정 회로, 반도체 메모리 장치 및 이를 포함하는 메모리 시스템 |
US9727416B2 (en) * | 2015-07-01 | 2017-08-08 | Xilinx, Inc. | Variable code rate solid-state drive |
US10133625B2 (en) | 2015-08-11 | 2018-11-20 | Western Digital Technologies, Inc. | Storing parity data separate from protected data |
FR3040523B1 (fr) | 2015-08-28 | 2018-07-13 | Continental Automotive France | Procede de detection d'une erreur non corrigible dans une memoire non volatile d'un microcontroleur |
US20170126249A1 (en) * | 2015-10-30 | 2017-05-04 | Intel Corporation | Temperature dependent multiple mode error correction |
US10013179B2 (en) | 2015-12-03 | 2018-07-03 | Sandisk Technologies Llc | Reading logical groups of data from physical locations in memory using headers |
US9946473B2 (en) | 2015-12-03 | 2018-04-17 | Sandisk Technologies Llc | Efficiently managing unmapped blocks to extend life of solid state drive |
US9946483B2 (en) | 2015-12-03 | 2018-04-17 | Sandisk Technologies Llc | Efficiently managing unmapped blocks to extend life of solid state drive with low over-provisioning |
US9830084B2 (en) | 2015-12-03 | 2017-11-28 | Sandisk Technologies Llc | Writing logical groups of data to physical locations in memory using headers |
CN106970852A (zh) * | 2016-01-14 | 2017-07-21 | 钰创科技股份有限公司 | 闪存错误控制电路及其方法 |
JP6605359B2 (ja) * | 2016-03-02 | 2019-11-13 | ルネサスエレクトロニクス株式会社 | 半導体装置及びメモリアクセス制御方法 |
US9761325B1 (en) * | 2016-03-14 | 2017-09-12 | Toshiba Memory Corporation | Memory system |
US10055159B2 (en) * | 2016-06-20 | 2018-08-21 | Samsung Electronics Co., Ltd. | Morphic storage device |
US9672905B1 (en) | 2016-07-22 | 2017-06-06 | Pure Storage, Inc. | Optimize data protection layouts based on distributed flash wear leveling |
US10650621B1 (en) | 2016-09-13 | 2020-05-12 | Iocurrents, Inc. | Interfacing with a vehicular controller area network |
CN108255633B (zh) * | 2016-12-28 | 2021-07-30 | 旺宏电子股份有限公司 | 存储控制方法、存储装置 |
US9747158B1 (en) | 2017-01-13 | 2017-08-29 | Pure Storage, Inc. | Intelligent refresh of 3D NAND |
KR20180086816A (ko) | 2017-01-23 | 2018-08-01 | 에스케이하이닉스 주식회사 | 사전-검사된 에러율에 따른 적응형 에러정정을 수행하는 메모리장치 및 전자장치와, 메모리장치의 동작방법 |
US10908988B2 (en) | 2017-04-03 | 2021-02-02 | Hitachi, Ltd. | Storage apparatus |
US10346232B2 (en) | 2017-08-16 | 2019-07-09 | Western Digital Technologies, Inc. | Non-volatile storage with failure prediction |
CN107656831A (zh) * | 2017-08-21 | 2018-02-02 | 深圳市致存微电子企业(有限合伙) | 闪存纠错方法以及纠错装置 |
US20190196726A1 (en) * | 2017-12-26 | 2019-06-27 | Nanya Technology Corporation | Dynamic random access memory and method of operating the same |
US10949113B2 (en) * | 2018-01-10 | 2021-03-16 | SK Hynix Inc. | Retention aware block mapping in flash-based solid state drives |
US10644727B2 (en) | 2018-01-11 | 2020-05-05 | Western Digital Technologies, Inc. | Code rate switching mechanism for flash memory |
JP6482690B1 (ja) * | 2018-01-11 | 2019-03-13 | ウィンボンド エレクトロニクス コーポレーション | 半導体記憶装置 |
CN108287794A (zh) * | 2018-01-26 | 2018-07-17 | 国科美国研究实验室 | Nand闪存的动态管理方法 |
CN108363639B (zh) * | 2018-02-07 | 2022-04-05 | 置富科技(深圳)股份有限公司 | 一种参数可配置的动态bch纠错方法及装置 |
US10656847B2 (en) * | 2018-05-10 | 2020-05-19 | International Business Machines Corporation | Mitigating asymmetric transient errors in non-volatile memory by proactive data relocation |
US10747613B2 (en) * | 2018-09-07 | 2020-08-18 | Toshiba Memory Corporation | Pooled frontline ECC decoders in memory systems |
KR20200034420A (ko) * | 2018-09-21 | 2020-03-31 | 삼성전자주식회사 | 복수의 에러 정정 기능을 갖는 메모리 장치 및 메모리 시스템과 그 동작 방법 |
US11163886B2 (en) | 2018-09-28 | 2021-11-02 | Dell Products L.P. | Information handling system firmware bit error detection and correction |
US10783024B2 (en) | 2018-10-12 | 2020-09-22 | International Business Machines Corporation | Reducing block calibration overhead using read error triage |
TWI673613B (zh) * | 2018-10-17 | 2019-10-01 | 財團法人工業技術研究院 | 伺服器及其資源調控方法 |
TWI668699B (zh) * | 2018-10-25 | 2019-08-11 | 群聯電子股份有限公司 | 資料儲存方法、記憶體控制電路單元以及記憶體儲存裝置 |
KR102076624B1 (ko) | 2018-12-06 | 2020-02-12 | 한국외국어대학교 연구산학협력단 | 플래시 메모리 기반의 저장 시스템 및 이의 에러 보정 방법 |
CN109872764B (zh) * | 2019-01-18 | 2021-01-08 | 南京大学 | 一种多级存储单元闪存的ecc多码率编解码系统及方法 |
US11137910B2 (en) * | 2019-03-04 | 2021-10-05 | Advantest Corporation | Fast address to sector number/offset translation to support odd sector size testing |
KR102601152B1 (ko) * | 2019-05-10 | 2023-11-13 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러 및 그 동작 방법 |
CN110310692A (zh) * | 2019-06-28 | 2019-10-08 | 上海华虹集成电路有限责任公司 | 一种增强使用寿命的非易失性存储器擦除控制方法 |
US11088711B2 (en) | 2019-07-08 | 2021-08-10 | Winbond Electronics Corp. | Memory apparatus and data accessing method thereof |
KR20210025249A (ko) * | 2019-08-27 | 2021-03-09 | 삼성전자주식회사 | 메모리 시스템 및 그 동작 방법 |
US10963336B2 (en) | 2019-08-29 | 2021-03-30 | Micron Technology, Inc. | Semiconductor device with user defined operations and associated methods and systems |
US11200118B2 (en) | 2019-08-29 | 2021-12-14 | Micron Technology, Inc. | Semiconductor device with modified command and associated methods and systems |
US11042436B2 (en) | 2019-08-29 | 2021-06-22 | Micron Technology, Inc. | Semiconductor device with modified access and associated methods and systems |
TWI723515B (zh) * | 2019-08-29 | 2021-04-01 | 華邦電子股份有限公司 | 記憶體裝置及其資料存取方法 |
KR20210085284A (ko) | 2019-12-30 | 2021-07-08 | 삼성전자주식회사 | Pim 메모리 디바이스, pim 메모리 디바이스를 포함하는 컴퓨팅 시스템 및 pim 메모리 디바이스의 동작 방법 |
JP2021141369A (ja) * | 2020-03-02 | 2021-09-16 | キオクシア株式会社 | メモリシステム |
KR20210147686A (ko) | 2020-05-29 | 2021-12-07 | 에스케이하이닉스 주식회사 | 오류 정정 회로 및 오류 정정 인코딩 방법 |
CN111638994B (zh) * | 2020-06-01 | 2021-05-04 | 长江存储科技有限责任公司 | 一种闪存存储器及其错误比特计数检测方法和系统 |
CN111863080A (zh) * | 2020-07-08 | 2020-10-30 | 上海威固信息技术股份有限公司 | 一种基于层间差异的3d闪存读性能优化方法 |
CN113094296B (zh) * | 2021-04-29 | 2023-10-10 | 深圳忆联信息系统有限公司 | Ssd读加速的实现方法、装置、计算机设备及存储介质 |
WO2023047149A1 (en) * | 2021-09-23 | 2023-03-30 | Micron Technology, Inc. | Improved ecc configuration in memories |
US11704027B2 (en) * | 2021-11-12 | 2023-07-18 | Western Digital Technologies, Inc. | Optimizing recovery of recurrent blocks using bloom filter |
US11853607B2 (en) | 2021-12-22 | 2023-12-26 | Western Digital Technologies, Inc. | Optimizing flash memory utilization for NVMe KV pair storage |
US11817883B2 (en) | 2021-12-27 | 2023-11-14 | Western Digital Technologies, Inc. | Variable length ECC code according to value length in NVMe key value pair devices |
US11733876B2 (en) | 2022-01-05 | 2023-08-22 | Western Digital Technologies, Inc. | Content aware decoding in KV devices |
CN114637712B (zh) * | 2022-03-18 | 2023-03-10 | 无锡众星微系统技术有限公司 | 一种EDFB模式下SAS2SATA Bridge的错误处理方法和装置 |
US20230393932A1 (en) * | 2022-06-02 | 2023-12-07 | Micron Technology, Inc. | Managing data integrity using a change in a number of data errors and an amount of time in which the change occurred |
TWI836610B (zh) * | 2022-09-19 | 2024-03-21 | 慧榮科技股份有限公司 | 存取快閃記憶體模組的方法與相關的快閃記憶體控制器及記憶裝置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003131954A (ja) * | 2001-08-16 | 2003-05-09 | Hewlett Packard Co <Hp> | 動的可変長誤り訂正符号 |
JP2004164634A (ja) * | 2002-10-28 | 2004-06-10 | Sandisk Corp | 不揮発性メモリシステム内のエラー訂正コードのためのハイブリッド実装 |
JP2005216301A (ja) * | 2004-01-29 | 2005-08-11 | Hewlett-Packard Development Co Lp | 誤り訂正符号を有する固体記憶装置を構成するシステムおよび方法 |
JP2007316779A (ja) * | 2006-05-23 | 2007-12-06 | Sharp Corp | 不揮発性メモリシステム |
JP2008508632A (ja) * | 2004-08-02 | 2008-03-21 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | データ記憶及び再生装置 |
JP2009080651A (ja) * | 2007-09-26 | 2009-04-16 | Toshiba Corp | 半導体記憶装置、及びその制御方法 |
JP2010092574A (ja) * | 2008-10-12 | 2010-04-22 | Kyoto Software Research Inc | フラッシュファイルシステムの誤り訂正機能 |
JP2010518523A (ja) * | 2007-03-08 | 2010-05-27 | インテル・コーポレーション | 動的ecc符号化率調節方法、装置、およびシステム |
Family Cites Families (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA1235189A (en) * | 1985-01-14 | 1988-04-12 | Haruhiko Akiyama | Error correction encoding system |
US5644312A (en) * | 1994-11-30 | 1997-07-01 | Analog Devices, Inc. | Rom encoder circuit for flash ADC'S with transistor sizing to prevent sparkle errors |
US5699365A (en) * | 1996-03-27 | 1997-12-16 | Motorola, Inc. | Apparatus and method for adaptive forward error correction in data communications |
GB2329805B (en) * | 1996-05-15 | 2000-09-20 | Seagate Technology | Read error recovery utilizing ECC and read channel quality indicators |
US6477669B1 (en) * | 1997-07-15 | 2002-11-05 | Comsat Corporation | Method and apparatus for adaptive control of forward error correction codes |
US6931009B1 (en) * | 1997-07-15 | 2005-08-16 | Viasat, Inc. | Frame format and frame assembling/disassembling method for the frame format |
US6182264B1 (en) * | 1998-05-22 | 2001-01-30 | Vlsi Technology, Inc. | Smart dynamic selection of error correction methods for DECT based data services |
US6957379B1 (en) * | 1999-01-04 | 2005-10-18 | Maxtor Corporation | Method and apparatus for selecting storage capacity of data storage media |
JP3699863B2 (ja) * | 1999-07-12 | 2005-09-28 | 株式会社日立コミュニケーションテクノロジー | エラー訂正符号装置、エラー訂正符号復号装置および伝送装置 |
CA2324574A1 (en) * | 2000-10-26 | 2002-04-26 | Bin Li | An optimal bit allocation algorithm for reed-solomon coded data for adsl |
US7290184B2 (en) * | 2001-08-23 | 2007-10-30 | Seagate Technology Llc | Emulation system for evaluating digital data channel configurations |
JP4459960B2 (ja) * | 2003-09-15 | 2010-04-28 | インテル・コーポレーション | 高スループットの空間−周波数ブロック・コードを使用するマルチアンテナ・システムおよび方法 |
KR100732628B1 (ko) * | 2005-07-28 | 2007-06-27 | 삼성전자주식회사 | 멀티-비트 데이터 및 싱글-비트 데이터를 저장하는 플래시메모리 장치 |
US7526715B2 (en) * | 2005-10-17 | 2009-04-28 | Ramot At Tel Aviv University Ltd. | Probabilistic error correction in multi-bit-per-cell flash memory |
US8055979B2 (en) * | 2006-01-20 | 2011-11-08 | Marvell World Trade Ltd. | Flash memory with coding and signal processing |
US7809994B2 (en) * | 2006-05-17 | 2010-10-05 | Sandisk Corporation | Error correction coding for multiple-sector pages in flash memory devices |
US7739576B2 (en) * | 2006-08-31 | 2010-06-15 | Micron Technology, Inc. | Variable strength ECC |
US8171380B2 (en) * | 2006-10-10 | 2012-05-01 | Marvell World Trade Ltd. | Adaptive systems and methods for storing and retrieving data to and from memory cells |
US9116823B2 (en) * | 2006-12-06 | 2015-08-25 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for adaptive error-correction coding |
CN100458718C (zh) * | 2006-12-29 | 2009-02-04 | 福昭科技(深圳)有限公司 | 一种闪存存储装置及其数据读取和写入方法 |
US7984360B2 (en) * | 2006-12-31 | 2011-07-19 | Ramot At Tel Aviv University Ltd. | Avoiding errors in a flash memory by using substitution transformations |
CN101256521B (zh) * | 2007-03-01 | 2010-12-01 | 创惟科技股份有限公司 | 提高闪存资料存取可靠性的方法 |
EP2188898A4 (en) * | 2007-09-14 | 2011-11-02 | Agency Science Tech & Res | METHOD FOR ENCODING BIT SEQUENCE AND ENCODING CIRCUIT |
US8429492B2 (en) * | 2007-11-30 | 2013-04-23 | Marvell World Trade Ltd. | Error correcting code predication system and method |
WO2009072103A2 (en) * | 2007-12-05 | 2009-06-11 | Densbits Technologies Ltd. | Flash memory apparatus and methods using a plurality of decoding stages including optional use of concatenated bch codes and/or designation of 'first below' cells |
WO2009078006A2 (en) * | 2007-12-18 | 2009-06-25 | Densbits Technologies Ltd. | Apparatus for coding at a plurality of rates in multi-level flash memory systems, and methods useful in conjunction therewith |
KR101398212B1 (ko) * | 2008-03-18 | 2014-05-26 | 삼성전자주식회사 | 메모리 장치 및 인코딩/디코딩 방법 |
US8442398B2 (en) * | 2008-10-21 | 2013-05-14 | Broadcom Corporation | Performance monitoring in passive optical networks |
US8407400B2 (en) * | 2008-11-12 | 2013-03-26 | Micron Technology, Inc. | Dynamic SLC/MLC blocks allocations for non-volatile memory |
KR101059673B1 (ko) * | 2008-12-26 | 2011-08-25 | 서울대학교산학협력단 | 신뢰도 또는 저장 용량을 동적으로 조절하는 저장 장치 및 그 방법 |
US8370702B2 (en) * | 2009-06-10 | 2013-02-05 | Micron Technology, Inc. | Error correcting codes for increased storage capacity in multilevel memory devices |
US8495467B1 (en) * | 2009-06-30 | 2013-07-23 | Micron Technology, Inc. | Switchable on-die memory error correcting engine |
CN102098130A (zh) * | 2009-12-15 | 2011-06-15 | 意法半导体研发(深圳)有限公司 | 具有高速度和高可靠性的高效动态传输 |
WO2011080768A1 (en) * | 2009-12-29 | 2011-07-07 | Ferdinando Bedeschi | Memory devices comprising partitions with particular ecc attributes |
US8327226B2 (en) * | 2010-02-03 | 2012-12-04 | Seagate Technology Llc | Adjustable error correction code length in an electrical storage device |
US8533550B2 (en) * | 2010-06-29 | 2013-09-10 | Intel Corporation | Method and system to improve the performance and/or reliability of a solid-state drive |
US8656256B2 (en) * | 2010-07-07 | 2014-02-18 | Stec, Inc. | Apparatus and method for multi-mode operation of a flash memory device |
US8832507B2 (en) * | 2010-08-23 | 2014-09-09 | Apple Inc. | Systems and methods for generating dynamic super blocks |
US8560922B2 (en) * | 2011-03-04 | 2013-10-15 | International Business Machines Corporation | Bad block management for flash memory |
KR101991911B1 (ko) * | 2012-05-22 | 2019-06-24 | 삼성전자주식회사 | 비트 상태 맵핑 동작을 수행하는 코드 변조 인코더와 코드 변조 디코더를 포함하는 메모리 컨트롤러, 그것을 포함하는 데이터 저장 장치 및 플래시 메모리 시스템 |
US8898549B2 (en) * | 2013-02-12 | 2014-11-25 | Seagate Technology Llc | Statistical adaptive error correction for a flash memory |
US9026867B1 (en) * | 2013-03-15 | 2015-05-05 | Pmc-Sierra, Inc. | Systems and methods for adapting to changing characteristics of multi-level cells in solid-state memory |
-
2011
- 2011-10-26 KR KR1020137013372A patent/KR101606718B1/ko active IP Right Grant
- 2011-10-26 JP JP2013536786A patent/JP2013542533A/ja active Pending
- 2011-10-26 US US13/879,383 patent/US20140136927A1/en not_active Abandoned
- 2011-10-26 CN CN201180063160.5A patent/CN103329103B/zh active Active
- 2011-10-26 EP EP11837032.9A patent/EP2633409A4/en not_active Withdrawn
- 2011-10-26 WO PCT/US2011/057914 patent/WO2012058328A1/en active Application Filing
- 2011-10-27 TW TW100139204A patent/TWI512452B/zh active
-
2015
- 2015-11-18 US US14/945,276 patent/US20160188405A1/en not_active Abandoned
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003131954A (ja) * | 2001-08-16 | 2003-05-09 | Hewlett Packard Co <Hp> | 動的可変長誤り訂正符号 |
JP2004164634A (ja) * | 2002-10-28 | 2004-06-10 | Sandisk Corp | 不揮発性メモリシステム内のエラー訂正コードのためのハイブリッド実装 |
JP2005216301A (ja) * | 2004-01-29 | 2005-08-11 | Hewlett-Packard Development Co Lp | 誤り訂正符号を有する固体記憶装置を構成するシステムおよび方法 |
JP2008508632A (ja) * | 2004-08-02 | 2008-03-21 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | データ記憶及び再生装置 |
JP2007316779A (ja) * | 2006-05-23 | 2007-12-06 | Sharp Corp | 不揮発性メモリシステム |
JP2010518523A (ja) * | 2007-03-08 | 2010-05-27 | インテル・コーポレーション | 動的ecc符号化率調節方法、装置、およびシステム |
JP2009080651A (ja) * | 2007-09-26 | 2009-04-16 | Toshiba Corp | 半導体記憶装置、及びその制御方法 |
JP2010092574A (ja) * | 2008-10-12 | 2010-04-22 | Kyoto Software Research Inc | フラッシュファイルシステムの誤り訂正機能 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015138498A (ja) * | 2014-01-24 | 2015-07-30 | 三菱電機株式会社 | フラッシュメモリの誤り訂正符号化装置および方法 |
JP2016085671A (ja) * | 2014-10-28 | 2016-05-19 | 株式会社メガチップス | エラー訂正装置 |
JP2018507462A (ja) * | 2015-01-20 | 2018-03-15 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 分散ストレージのための多重イレージャーコード |
JP2016161990A (ja) * | 2015-02-26 | 2016-09-05 | ファナック株式会社 | 誤り訂正機能による寿命予測を有する制御装置 |
US9906242B2 (en) | 2015-02-26 | 2018-02-27 | Fanuc Corporation | Control device performing lifetime prediction by error correction function |
WO2017018008A1 (ja) * | 2015-07-24 | 2017-02-02 | ソニー株式会社 | 符号化装置、メモリコントローラ、通信システムおよび符号化方法 |
US10481971B2 (en) | 2015-07-24 | 2019-11-19 | Sony Corporation | Encoding device, memory controller, communication system, and encoding method |
US10261857B2 (en) | 2016-09-14 | 2019-04-16 | Toshiba Memory Corporation | Memory system and method for controlling code rate for data to be stored |
US10789125B2 (en) | 2016-09-14 | 2020-09-29 | Toshiba Memory Corporation | Memory system and method |
Also Published As
Publication number | Publication date |
---|---|
CN103329103A (zh) | 2013-09-25 |
US20160188405A1 (en) | 2016-06-30 |
EP2633409A1 (en) | 2013-09-04 |
KR101606718B1 (ko) | 2016-03-28 |
TW201234170A (en) | 2012-08-16 |
KR20130096753A (ko) | 2013-08-30 |
TWI512452B (zh) | 2015-12-11 |
EP2633409A4 (en) | 2014-07-23 |
US20140136927A1 (en) | 2014-05-15 |
CN103329103B (zh) | 2017-04-05 |
WO2012058328A1 (en) | 2012-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI512452B (zh) | 資料儲存系統 | |
US10365920B2 (en) | Management of device firmware update effects as seen by a host | |
US9971547B2 (en) | Storage system with application to NVM address, span, and length | |
TWI579854B (zh) | 用於快閃記憶體之低密度同位檢查抹除解碼 | |
JP6452278B2 (ja) | 不揮発性メモリの耐久性平準化のためのセル損傷の測定 | |
KR101467941B1 (ko) | 비휘발성 저장부에 대한 가변 오버프로비저닝 | |
US9461904B2 (en) | Selective enablement of operating modes or features via host transfer rate detection | |
US9396104B1 (en) | Accessing compressed data of varying-sized quanta in non-volatile memory | |
CN114708898A (zh) | 表格管理方法、存储器存储装置及存储器控制电路单元 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141024 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20141024 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20151028 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20151201 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20160229 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20160427 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160526 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160610 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20160809 |