JP2013516000A - メモリ装置における制御データの誤り訂正システムおよび方法 - Google Patents
メモリ装置における制御データの誤り訂正システムおよび方法 Download PDFInfo
- Publication number
- JP2013516000A JP2013516000A JP2012545985A JP2012545985A JP2013516000A JP 2013516000 A JP2013516000 A JP 2013516000A JP 2012545985 A JP2012545985 A JP 2012545985A JP 2012545985 A JP2012545985 A JP 2012545985A JP 2013516000 A JP2013516000 A JP 2013516000A
- Authority
- JP
- Japan
- Prior art keywords
- data
- control data
- compressed
- ecc
- parity
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012937 correction Methods 0.000 title claims abstract description 60
- 238000000034 method Methods 0.000 title claims description 53
- 230000006835 compression Effects 0.000 claims abstract description 85
- 238000007906 compression Methods 0.000 claims abstract description 84
- 230000006837 decompression Effects 0.000 claims description 10
- 238000013500 data storage Methods 0.000 claims description 9
- 238000001514 detection method Methods 0.000 claims description 4
- 238000013144 data compression Methods 0.000 claims description 2
- 238000007726 management method Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- 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/35—Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
-
- 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/63—Joint error correction and other techniques
- H03M13/6312—Error control coding in combination with data compression
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/40—Specific encoding of data in memory or cache
- G06F2212/401—Compressed data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/40—Specific encoding of data in memory or cache
- G06F2212/403—Error protection encoding, e.g. using parity or ECC codes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
Description
ホスト装置102は作動中にメモリアレイ108に蓄積されるユーザデータ145をメモリ装置104へ提供しうる。ユーザデータ145はコントローラ106で受信され、ECC強化圧縮モジュール110へ提供されうる。また、コントローラ106はメモリ装置104の操作に役立つ制御データ(例えば、制御データ144)を生成しうる。例えば、コントローラ106は、論理−物理アドレスマッピングを遂行するか、消去回数を計算するか、メモリ装置104の状態情報を判断するか、またはこれらの任意の組み合わせのために、制御データ144を使用しうる。例えば、制御データ144は、メモリアレイ108の中で論理アドレスを物理アドレスにマッピングする論理ブロックアドレステーブルと物理ブロックアドレステーブルとを含みうる。制御データ144はまた、メモリアレイ108におけるデータ構造のインデックス、ポインタ、およびオフセット、メモリ装置104のウェアレベリングデータ、他の制御データ、またはこれらの任意の組み合わせを含む。制御データ144はユーザデータ145に対応する場合と対応しない場合とがあり、またユーザデータ145と時間的に同期する場合と同期しない場合とがある(つまり、ユーザデータ145の受信時間とは大幅に異なる時間に制御データ144が生成される場合もある)。制御データ144はユーザデータ145から独立している。あるいは、制御データ144はユーザデータ145と交互に配置され、あるいはユーザデータ145に付加され、ECC強化圧縮モジュール110で圧縮される。
例えば、ECC強化圧縮モジュール110は圧縮比(CR)に従って制御データ144を圧縮しうる。(CR)は、CR= SizeofCompressedControlData/SizeofControlData で定義される。
(CorrectableBitsNumber)はバイト単位によるサイズ(SizeofControlData)を有するデータワードでECCエンジン112が訂正できるビットの数である。制御データ144の圧縮はECCエンジン112の(ECR)に影響をおよぼしうる。例えば、ECCエンジン112に圧縮済み制御データ140を適用した場合の(ECR’)は、ECR'=CorrectableBitsNumber/8* CompressionRatio* SizeofControlData で定義されうる。
例えば、ECCエンジン112は512バイトの制御データ144で最大12ビット(すなわち、(CorrectableBitsNumber))を訂正するように設計されうる。対応するECR(CorrectableBitsNumber=12)は約2.9E−3である。制御データ144に50%の圧縮比(CR)を適用すると圧縮済み制御データ140のサイズは256バイトとなり、対応するECR’は約5.9E−3となる。ECC強化圧縮モジュール110による圧縮比が向上(すなわち、減少)すると、ECCエンジン112の誤り訂正能力は高まりうる。
復号化済み圧縮済み制御データはBRAM226から展開モジュール232へ提供され、展開モジュール232は復号化済み圧縮済み制御データに働きかけて展開済み制御データ242を生成する。展開済み制御データ242は、メモリ装置204の制御管理のために制御管理モジュール222へ提供されうる。
データ部分のサイズはコントローラ206によるECCエンジンのモード選択に影響をおよぼす。例えば、メモリアレイ208の2,112バイトページでデータ0部分とデータ1部分が2,048バイトのスペースを占め、ヘッダとヘッダパリティを合わせたサイズが20バイトなら、2,112バイトページのサイズによりデータ部分のパリティは22バイトずつになる。この場合、ECCエンジン254は16ビットモードの訂正機能を使用できない。
BLER計算に圧縮比(CR)を導入すると、BLER=Sum((p)i *C(n, i)*(l-p)n-i , i = k, n) となる。
コントローラ206はECC強化圧縮モジュール224の(CR)を制御するように構成されうる。例えば、コントローラ206は、ECCエンジン254からの所望の最大入力BER(p)が0.41ならば、ECC強化圧縮モジュール224に0.8の(CR)を使用するように指示しうる。例えば、0.001の一定最大ビット誤り率確率と1Kバイトブロックで16の誤りを訂正できるECCエンジンを仮定すると、(n)=8*1024バイト=8,192ビット、(k)=17、(p)=0.001である。
制御データ320は圧縮され、フォーマット済みデータワード302に符号化されうる(330)。フォーマット済みデータワード302は、ヘッダデータ306と、ヘッダパリティデータ308と、圧縮済み制御データ310と、追加データ312と、ECCビット等のパリティデータ314とを含みうる。フォーマット済みデータワード302のペイロードは、圧縮済み制御データ310と、追加データ312とを含みうる。
追加データを追加せずに圧縮済み制御データ410を蓄積する場合は、メモリアレイ、例えば図1〜2のメモリアレイ108または208に可変サイズフォーマット済みデータワード402が蓄積される。可変サイズフォーマット済みデータワードはメモリアレイのスペースを節約し、メモリアレイのデータ蓄積効率を向上させうる。
Claims (30)
- 方法であって、
メモリ装置のコントローラにて、
制御データを圧縮するステップと、
圧縮済み制御データに相当するコードワードを生成するために圧縮済み制御データを符号化するステップと、
前記コントローラへ結合されたメモリアレイにコードワードを蓄積するステップと、を含み、
コードワードは、前記メモリ装置の誤り訂正コード(ECC)エンジンにより復号化可能である方法。 - 請求項1記載の方法において、
制御データは、前記コントローラで生成される方法。 - 請求項1記載の方法において、
制御データは、メモリ装置におけるメモリアレイの論理および物理ブロックアドレステーブル、メモリアレイにおけるデータ構造のインデックス、ポインタ、およびオフセット、およびメモリ装置のウェアレベリングデータからなるグループから選ばれるある種のデータを備える方法。 - 請求項1記載の方法において、
前記メモリ装置へ結合された外部装置からユーザデータを受信するステップをさらに含み、前記外部装置はホスト装置であり、ユーザデータは前記メモリ装置にあるホストランダムアクセスメモリ(HRAM)で受信される方法。 - 請求項1記載の方法において、
圧縮済み制御データは、バッファランダムアクセスメモリ(BRAM)に蓄積される方法。 - 請求項1記載の方法において、
前記ECCエンジンにおける圧縮済み制御データの有効誤り訂正率は、制御データの有効誤り訂正率を上回る方法。 - 請求項1記載の方法において、
前記コードワードを蓄積するステップは、フォーマット済みデータワードを蓄積することを含み、
フォーマット済みデータワードは、
ヘッダデータ部分と、
ペイロード部分と、
パリティ部分と、を含む方法。 - 請求項7記載の方法において、
フォーマット済みデータワードはヘッダパリティ部分をさらに含み、圧縮済み制御データのサイズをヘッダデータ部分に蓄積するステップと、フォーマット済みデータワードの蓄積サイズを所定のサイズまで増やすため圧縮済み制御データに追加データを追加するステップとをさらに含む方法。 - 請求項8記載の方法において、
追加データは、圧縮済み制御データが符号化された後に圧縮済み制御データに追加される方法。 - 請求項1記載の方法において、
圧縮済み制御データのサイズを前記メモリアレイに蓄積するステップをさらに含む方法。 - 請求項1記載の方法において、
圧縮済み制御データのサイズを前記コントローラに蓄積するステップをさらに含む方法。 - 請求項1記載の方法において、
前記符号化するステップは、圧縮済み制御データに対応するECCビットを生成することを含む方法。 - 請求項1記載の方法において、
前記符号化するステップは、リード・ソロモン符号、ボース・レイ・チョドーリ・オッケンジェム(BCH)符号、および低密度パリティ検査(LDPC)符号のいずれか1つに基づく方法。 - 方法であって、
メモリ装置のコントローラにて、
メモリアレイからコードワードを読み取るステップと、
圧縮済み制御データを生成するために誤り訂正コード(ECC)エンジンでコードワードを復号化するステップと、
圧縮済み制御データを展開するステップと、
を含む方法。 - 請求項14記載の方法において、
圧縮済み制御データは追加データを含み、圧縮済み制御データのサイズに基づいて圧縮済み制御データから追加データを廃棄するステップをさらに含み、圧縮済み制御データのサイズは追加データを除いた圧縮済み制御データのサイズを表す方法。 - 請求項15記載の方法において、
圧縮済み制御データのサイズを前記メモリアレイから取り出すステップをさらに含む方法。 - 請求項15記載の方法において、
圧縮済み制御データのサイズを前記コントローラから取り出すステップをさらに含む方法。 - システムであって、
メモリアレイと、
前記メモリアレイへ結合されたコントローラと、を備え、
前記コントローラは、
誤り訂正コード(ECC)エンジンと、
前記ECCエンジンへ結合されたECC強化圧縮モジュールと、を備え、
前記ECC強化圧縮モジュールは前記ECCエンジンへ提供されて符号化される制御データを受信しかつ圧縮するように構成され、前記ECCエンジンで生成された圧縮済み符号化済み制御データはコードワードとして前記メモリアレイに蓄積されるシステム。 - 請求項18記載のシステムにおいて、
前記ECC強化圧縮モジュールは、
前記メモリアレイから圧縮済み符号化済み制御データを取り出し、かつ
圧縮済み制御データを生成するため圧縮済み符号化済み制御データを復号化するようにさらに構成されるシステム。 - 請求項18記載のシステムにおいて、
前記ECCエンジンは、
圧縮済み制御データを符号化するように構成された誤り検出コード回路と、
符号化済み圧縮済み制御データを復号化するように構成された誤り訂正コード回路と、
をさらに備えるシステム。 - 方法であって、
誤り訂正コード(ECC)エンジンと1群の蓄積素子を含む複数の蓄積素子とを含み、データ部分とパリティ部分とを含むページ形式に従って情報を前記蓄積素子に蓄積するように構成されたメモリ装置にて、
1群の蓄積素子に蓄積されるデータを圧縮するために圧縮操作を開始し、
データの圧縮範囲に基づき、第1のパリティビット数を生成するECCエンジンの第1のモードと、第2のパリティビット数を生成するECCエンジンの第2のモードのうちのいずれか一方を選択し、
圧縮済みデータに対応するパリティビットを生成するために圧縮済みデータを符号化し、かつ
ページ形式に従い1群の蓄積素子に圧縮済みデータとパリティビットとを蓄積することを遂行するステップを含み、
圧縮済みデータはデータ部分に蓄積され、パリティビットの少なくとも一部はパリティ部分に蓄積される方法。 - 請求項21記載の方法において、
第1のパリティビット数はパリティ部分のサイズに一致し、第2のパリティビット数はパリティ部分のサイズより大きい方法。 - 請求項22記載の方法において、
第2のモードが選択される場合には、パリティビットの第1の部分はパリティ部分に蓄積され、パリティビットの第2の部分はデータ部分に蓄積される方法。 - 請求項23記載の方法において、
第2のモードは、データ部分が圧縮済みデータとパリティビットの第2の部分とを含めるにあたって十分なスペースを有する場合に選択される方法。 - 方法であって、
誤り訂正コード(ECC)エンジンと複数の蓄積素子とを含み、データ部分とパリティ部分とを含むページ形式に従って情報を前記蓄積素子に蓄積するように構成されたメモリ装置にて、
ページ形式に従い前記蓄積素子から圧縮済みデータとパリティビットとを含む1ページのデータを読み取り、
パリティビットを使用し前記ECCエンジンで圧縮済みデータを復号化し、かつ
展開済みデータを生成するために圧縮済みデータを展開することを遂行するステップを含み、
圧縮済みデータはページのデータ部分に含まれ、パリティビットの少なくとも一部はページのパリティ部分に含まれ、
前記ECCエンジンは、パリティビットの全てがページのパリティ部分に含まれる場合には第1のモードに従って動作し、あるいはパリティビットの第1の部分がページのパリティ部分に含まれかつパリティビットの第2の部分がページのデータ部分に含まれる場合には第2のモードに従って動作するように構成可能である方法。 - 請求項25記載の方法において、
前記メモリ装置はコントローラを備え、展開済みデータは前記コントローラで生成された制御データを含む方法。 - データ蓄積装置であって、
複数の蓄積素子を含むメモリと、
前記メモリへ結合され、データ部分とパリティ部分とを含むページ形式に従って前記蓄積素子に情報を蓄積するように構成されたコントローラと、を備え、
前記コントローラは、
誤り訂正コード(ECC)エンジンと、
前記ECCエンジンへ結合され、符号化のため前記ECCエンジンへ提供されるデータを受信しかつ圧縮するように構成された圧縮モジュールと、を備え、
前記ECCエンジンは、データの圧縮範囲に基づき、第1のパリティビット数を生成する第1のモードで動作し、あるいは第2のパリティビット数を生成する第2のモードで動作するように構成可能であり、
前記コントローラはページ形式に従い前記蓄積素子に圧縮済みデータとパリティビットとを含むページを蓄積するように構成され、圧縮済みデータはページのデータ部分に蓄積され、パリティビットの少なくとも一部はページのパリティ部分に蓄積されるデータ蓄積装置。 - 請求項27記載のデータ蓄積装置において、
前記コントローラは制御データを生成するようにさらに構成され、受信データは制御データを含み、制御データは、メモリの論理および物理ブロックアドレステーブル、メモリにおけるデータ構造のインデックス、ポインタ、およびオフセット、およびデータ蓄積装置のウェアレベリングデータからなるグループから選ばれるある種のデータを備えるデータ蓄積装置。 - データ蓄積装置であって、
複数の蓄積素子を含むメモリと、
前記メモリへ結合され、データ部分とパリティ部分とを含むページ形式に従って前記蓄積素子から情報を読み取るように構成されたコントローラと、を備え、
前記コントローラは、
誤り訂正コード(ECC)エンジンと、
前記ECCエンジンへ結合され、前記ECCエンジンによって提供される復号化済みデータを受信しかつ展開するように構成された展開モジュールと、を備え、
前記ECCエンジンは、ページ形式に従い前記メモリから読み取られた1ページの圧縮済みデータおよびパリティビットを復号化するように動作し、圧縮済みデータはページのデータ部分に含まれ、パリティビットの少なくとも一部はページのパリティ部分に含まれ、
前記ECCエンジンは、パリティビットの全てがページのパリティ部分に含まれる場合には第1のモードに従って動作し、あるいはパリティビットの第1の部分がページのパリティ部分に含まれかつパリティビットの第2の部分がページのデータ部分に含まれる場合には第2のモードに従って動作するように構成されるデータ蓄積装置。 - 請求項29記載のデータ蓄積装置において、
展開済み復号化済みデータは前記コントローラによって使用される制御データを含み、前記メモリはフラッシュメモリを含むデータ蓄積装置。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/645,700 | 2009-12-23 | ||
US12/645,700 US8533564B2 (en) | 2009-12-23 | 2009-12-23 | System and method of error correction of control data at a memory device |
US12/955,174 | 2010-11-29 | ||
US12/955,174 US8533558B2 (en) | 2009-12-23 | 2010-11-29 | System and method of error correction of control data at a memory device |
PCT/US2010/058591 WO2011087602A1 (en) | 2009-12-23 | 2010-12-01 | System and method of error correction of control data at a memory device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013516000A true JP2013516000A (ja) | 2013-05-09 |
JP5698260B2 JP5698260B2 (ja) | 2015-04-08 |
Family
ID=44152894
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012545985A Expired - Fee Related JP5698260B2 (ja) | 2009-12-23 | 2010-12-01 | メモリ装置における制御データの誤り訂正システムおよび方法 |
Country Status (7)
Country | Link |
---|---|
US (2) | US8533564B2 (ja) |
EP (2) | EP2713274B1 (ja) |
JP (1) | JP5698260B2 (ja) |
KR (1) | KR101727267B1 (ja) |
CN (2) | CN104657231B (ja) |
TW (1) | TW201133501A (ja) |
WO (1) | WO2011087602A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015170374A (ja) * | 2014-03-06 | 2015-09-28 | ウィンボンド エレクトロニクス コーポレーション | 半導体記憶装置 |
WO2016051599A1 (ja) * | 2014-10-03 | 2016-04-07 | 株式会社日立製作所 | メモリコントローラ及びデータ制御方法 |
JP2016161990A (ja) * | 2015-02-26 | 2016-09-05 | ファナック株式会社 | 誤り訂正機能による寿命予測を有する制御装置 |
Families Citing this family (68)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8023345B2 (en) * | 2009-02-24 | 2011-09-20 | International Business Machines Corporation | Iteratively writing contents to memory locations using a statistical model |
US8560918B1 (en) | 2009-04-21 | 2013-10-15 | Marvell International Ltd. | Method and apparatus for dynamically selecting an error correction code to be applied to data in a communication system |
US8386739B2 (en) * | 2009-09-28 | 2013-02-26 | International Business Machines Corporation | Writing to memory using shared address buses |
US8463985B2 (en) * | 2010-03-31 | 2013-06-11 | International Business Machines Corporation | Constrained coding to reduce floating gate coupling in non-volatile memories |
US8495464B2 (en) * | 2010-06-28 | 2013-07-23 | Intel Corporation | Reliability support in memory systems without error correcting code support |
TWI455144B (zh) * | 2010-07-22 | 2014-10-01 | Silicon Motion Inc | 使用於快閃記憶體的控制方法與控制器 |
US8892809B2 (en) | 2010-10-25 | 2014-11-18 | Marvell World Trade Ltd. | Data compression and encoding in a memory system |
US8879640B2 (en) * | 2011-02-15 | 2014-11-04 | Hong Kong Applied Science and Technology Research Institute Company Limited | Memory efficient implementation of LDPC decoder |
US8635514B2 (en) * | 2011-02-28 | 2014-01-21 | Micron Technology, Inc. | Error control in memory storage systems |
US8732538B2 (en) * | 2011-03-10 | 2014-05-20 | Icform, Inc. | Programmable data storage management |
KR101800445B1 (ko) * | 2011-05-09 | 2017-12-21 | 삼성전자주식회사 | 메모리 컨트롤러 및 메모리 컨트롤러의 동작 방법 |
KR20130012737A (ko) * | 2011-07-26 | 2013-02-05 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 이를 포함하는 반도체 시스템 |
US20130117632A1 (en) * | 2011-11-08 | 2013-05-09 | Sony Corporation | Storage control apparatus |
KR101888074B1 (ko) * | 2012-01-09 | 2018-08-13 | 삼성전자주식회사 | 저장 장치 및 불휘발성 메모리 장치, 그리고 그것의 동작 방법 |
US8862967B2 (en) * | 2012-03-15 | 2014-10-14 | Sandisk Technologies Inc. | Statistical distribution based variable-bit error correction coding |
US9246511B2 (en) * | 2012-03-20 | 2016-01-26 | Sandisk Technologies Inc. | Method and apparatus to process data based upon estimated compressibility of the data |
US9251060B2 (en) | 2012-03-29 | 2016-02-02 | Intel Corporation | Compression-enabled blending of data in non-volatile memory |
US8694862B2 (en) * | 2012-04-20 | 2014-04-08 | Arm Limited | Data processing apparatus using implicit data storage data storage and method of implicit data storage |
KR102081980B1 (ko) * | 2012-10-08 | 2020-02-27 | 삼성전자 주식회사 | 메모리 시스템에서의 라이트 동작 또는 리드 동작 수행 방법 |
US9043674B2 (en) | 2012-12-26 | 2015-05-26 | Intel Corporation | Error detection and correction apparatus and method |
US9495288B2 (en) | 2013-01-22 | 2016-11-15 | Seagate Technology Llc | Variable-size flash translation layer |
KR20140099689A (ko) | 2013-02-04 | 2014-08-13 | 삼성전자주식회사 | 불휘발성 메모리 셀 어레이를 포함하는 반도체 메모리 장치 |
US9136873B2 (en) | 2013-03-11 | 2015-09-15 | Intel Corporation | Reduced uncorrectable memory errors |
JP2015022516A (ja) * | 2013-07-19 | 2015-02-02 | ソニー株式会社 | 記憶制御装置、記憶装置、情報処理システムおよび記憶制御方法 |
TWI609263B (zh) * | 2013-08-16 | 2017-12-21 | 司固科技公司 | 可變大小快閃轉變層 |
TWI512732B (zh) * | 2013-08-30 | 2015-12-11 | Phison Electronics Corp | 解碼方法、記憶體儲存裝置與非揮發性記憶體模組 |
US9213595B2 (en) * | 2013-10-15 | 2015-12-15 | International Business Machines Corporation | Handling errors in ternary content addressable memories |
US9959072B2 (en) * | 2013-12-20 | 2018-05-01 | Sandisk Technologies Llc | Systems and methods of compressing data |
US9927998B2 (en) * | 2014-02-05 | 2018-03-27 | Tidal Systems, Inc. | Flash memory compression |
US9350388B2 (en) * | 2014-03-07 | 2016-05-24 | Storart Technology Co. Ltd. | Data format with ECC information for on-the-fly decoding during data transfer and method for forming the data format |
US9391646B2 (en) * | 2014-03-25 | 2016-07-12 | Samsung Electronics Co., Ltd. | Joint source-channel encoding and decoding for compressed and uncompressed data |
US9442799B2 (en) * | 2014-06-26 | 2016-09-13 | Microsoft Technology Licensing, Llc | Extended lifetime memory |
CN105448334B (zh) * | 2014-09-01 | 2019-08-23 | 华邦电子股份有限公司 | 半导体存储装置 |
GB2531756A (en) | 2014-10-29 | 2016-05-04 | Ibm | Multi-chip device and method for storing data |
EP3016432B1 (en) * | 2014-10-30 | 2018-07-04 | Vodafone IP Licensing limited | Content compression in mobile network |
US9710199B2 (en) | 2014-11-07 | 2017-07-18 | International Business Machines Corporation | Non-volatile memory data storage with low read amplification |
US10162700B2 (en) * | 2014-12-23 | 2018-12-25 | International Business Machines Corporation | Workload-adaptive data packing algorithm |
US9710324B2 (en) | 2015-02-03 | 2017-07-18 | Qualcomm Incorporated | Dual in-line memory modules (DIMMs) supporting storage of a data indicator(s) in an error correcting code (ECC) storage unit dedicated to storing an ECC |
US9858994B2 (en) | 2015-06-18 | 2018-01-02 | Samsung Electronics Co., Ltd. | Memory system with MLC memory cells and partial page compression or reduction |
US9712190B2 (en) | 2015-09-24 | 2017-07-18 | International Business Machines Corporation | Data packing for compression-enabled storage systems |
US20170126249A1 (en) * | 2015-10-30 | 2017-05-04 | Intel Corporation | Temperature dependent multiple mode error correction |
KR102435181B1 (ko) | 2015-11-16 | 2022-08-23 | 삼성전자주식회사 | 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 메모리 시스템의 동작 방법 |
US10255004B2 (en) * | 2015-11-16 | 2019-04-09 | Marvell World Trade Ltd. | Systems and methods for managing address-mapping data in memory devices |
US9870285B2 (en) | 2015-11-18 | 2018-01-16 | International Business Machines Corporation | Selectively de-straddling data pages in non-volatile memory |
US10223198B2 (en) | 2016-02-18 | 2019-03-05 | Micron Technology, Inc. | Error rate reduction |
US10592336B1 (en) * | 2016-03-24 | 2020-03-17 | Amazon Technologies, Inc. | Layered indexing for asynchronous retrieval of redundancy coded data |
CN107239224B (zh) * | 2016-03-29 | 2020-05-12 | 群联电子股份有限公司 | 数据保护方法、存储器控制电路单元与存储器存储装置 |
US10275541B2 (en) | 2016-08-05 | 2019-04-30 | Micron Technology, Inc. | Proactive corrective actions in memory based on a probabilistic data structure |
KR102504178B1 (ko) | 2016-08-23 | 2023-02-28 | 에스케이하이닉스 주식회사 | 반도체장치 |
US10236917B2 (en) * | 2016-09-15 | 2019-03-19 | Qualcomm Incorporated | Providing memory bandwidth compression in chipkill-correct memory architectures |
US10394648B2 (en) * | 2016-11-07 | 2019-08-27 | Samsung Electronics Co., Ltd. | Method to deliver in-DRAM ECC information through DDR bus |
US10284230B2 (en) * | 2016-11-15 | 2019-05-07 | Western Digital Technologies, Inc. | Linked storage system and host system error correcting code |
US10312944B2 (en) * | 2017-03-17 | 2019-06-04 | Micron Technology, Inc. | Error correction code (ECC) operations in memory for providing redundant error correction |
US10269422B2 (en) * | 2017-09-08 | 2019-04-23 | Cnex Labs, Inc. | Storage system with data reliability mechanism and method of operation thereof |
KR102468721B1 (ko) * | 2017-12-20 | 2022-11-21 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그의 동작 방법 |
KR102432551B1 (ko) * | 2018-02-13 | 2022-08-16 | 삼성전자주식회사 | 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 반도체 메모리 장치의 동작 방법 |
US10587284B2 (en) * | 2018-04-09 | 2020-03-10 | International Business Machines Corporation | Multi-mode compression acceleration |
US10747638B2 (en) * | 2018-04-18 | 2020-08-18 | Oracle International Corporation | Computing memory health metrics |
KR20200011655A (ko) * | 2018-07-25 | 2020-02-04 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템 |
TWI703438B (zh) * | 2018-09-11 | 2020-09-01 | 慧榮科技股份有限公司 | 映射表更新方法 |
US20200127685A1 (en) * | 2018-10-19 | 2020-04-23 | Nyquist Semiconductor Limited | Systems and methods for a hybrid non-volatile storage system |
KR102645140B1 (ko) * | 2018-12-06 | 2024-03-07 | 삼성전자주식회사 | Fpga를 포함하는 메모리 시스템 및 이의 동작 방법 |
KR102139826B1 (ko) * | 2018-12-27 | 2020-07-31 | 한양대학교 산학협력단 | 플래시 메모리 저장장치 저장 장치 및 그 구동 방법 |
US11200004B2 (en) * | 2019-02-01 | 2021-12-14 | EMC IP Holding Company LLC | Compression of data for a file system |
CN112540719A (zh) * | 2019-09-23 | 2021-03-23 | 深圳宏芯宇电子股份有限公司 | 数据编码方法、存储器存储装置及存储器控制器 |
US11307804B2 (en) | 2019-12-16 | 2022-04-19 | Samsung Electronics Co., Ltd. | Enhanced SSD reliability |
TWI719880B (zh) * | 2019-12-16 | 2021-02-21 | 慧榮科技股份有限公司 | 寫入頁面群組的資料到閃存模組的裝置及方法 |
KR20220018757A (ko) | 2020-08-07 | 2022-02-15 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 동작 방법 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0512800A (ja) * | 1991-07-04 | 1993-01-22 | Matsushita Electric Ind Co Ltd | データ圧縮機能を備えた情報記録再生装置と情報記録媒体 |
JP2000326571A (ja) * | 1999-05-24 | 2000-11-28 | Canon Inc | 印刷制御装置及びその印刷制御方法ならびに記録媒体 |
JP2001229073A (ja) * | 2000-02-16 | 2001-08-24 | Hitachi Ltd | フラッシュメモリ |
JP2003131954A (ja) * | 2001-08-16 | 2003-05-09 | Hewlett Packard Co <Hp> | 動的可変長誤り訂正符号 |
JP2007094639A (ja) * | 2005-09-28 | 2007-04-12 | Tdk Corp | メモリコントローラ及びフラッシュメモリシステム |
JP2008009943A (ja) * | 2006-06-30 | 2008-01-17 | Toshiba Corp | メモリコントローラ |
JP2008123160A (ja) * | 2006-11-10 | 2008-05-29 | Megachips Lsi Solutions Inc | メモリ管理方法 |
WO2008070811A2 (en) * | 2006-12-06 | 2008-06-12 | Fusion Multisystems, Inc. (Dba Fusion-Io) | Apparatus, system, and method for managing data in a storage device with an empty data token directive |
JP2009205411A (ja) * | 2008-02-27 | 2009-09-10 | Toshiba Corp | メモリコントローラおよびメモリシステム |
Family Cites Families (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0661156B2 (ja) * | 1983-05-21 | 1994-08-10 | ソニー株式会社 | エラ−訂正のための符号化方法 |
US5200962A (en) | 1988-11-03 | 1993-04-06 | Racal-Datacom, Inc. | Data compression with error correction |
US5394534A (en) | 1992-09-11 | 1995-02-28 | International Business Machines Corporation | Data compression/decompression and storage of compressed and uncompressed data on a same removable data storage medium |
US5357614A (en) | 1992-09-17 | 1994-10-18 | Rexon/Tecmar, Inc. | Data compression controller |
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 |
US5771081A (en) | 1994-02-28 | 1998-06-23 | Korea Telecommunication Authority | Bit system for transmitting digital video data |
EP1336963B1 (en) | 1994-03-19 | 2006-05-31 | Sony Corporation | Optical disk, method and apparatus for recording and reproducing information |
GB2298078B (en) | 1995-02-20 | 1998-09-16 | Sony Uk Ltd | Digital tape recorder |
JPH10275417A (ja) | 1997-03-31 | 1998-10-13 | Sony Corp | ディジタル情報信号記録再生装置およびその方法 |
EP0915413A1 (en) | 1997-10-31 | 1999-05-12 | Hewlett-Packard Company | Data encoding scheme with switchable compression |
JP2927282B2 (ja) | 1997-11-06 | 1999-07-28 | 日本電気株式会社 | ディスクアレイ装置 |
JP3809719B2 (ja) * | 1998-01-05 | 2006-08-16 | ソニー株式会社 | ディジタルビデオ信号処理装置および方法、ディジタルビデオ信号再生装置、復号装置および方法、ならびに、再生装置および方法 |
US6754277B1 (en) * | 1998-10-06 | 2004-06-22 | Texas Instruments Incorporated | Error protection for compressed video |
US6470142B1 (en) | 1998-11-09 | 2002-10-22 | Sony Corporation | Data recording apparatus, data recording method, data recording and reproducing apparatus, data recording and reproducing method, data reproducing apparatus, data reproducing method, data record medium, digital data reproducing apparatus, digital data reproducing method, synchronization detecting apparatus, and synchronization detecting method |
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 |
US6862662B1 (en) | 2000-03-03 | 2005-03-01 | Micron Technology, Inc. | High density storage scheme for semiconductor memory |
JP2002024084A (ja) | 2000-07-12 | 2002-01-25 | Mitsubishi Electric Corp | 半導体集積回路装置および電子システム |
ATE350415T1 (de) * | 2000-07-31 | 2007-01-15 | Fuji Photo Film Co Ltd | Fluoreszente lampenabdeckung und beleuchtungseinrichtung |
US7113432B2 (en) | 2000-09-14 | 2006-09-26 | Sandisk Corporation | Compressed event counting technique and application to a flash memory system |
JP2002329367A (ja) * | 2001-04-27 | 2002-11-15 | Sony Corp | データ記録方法および装置、データ再生方法および装置、並びにデータ記録媒体 |
US20030014716A1 (en) * | 2001-07-16 | 2003-01-16 | Cute Ltd. | Universal lossless data compression |
JP4112849B2 (ja) * | 2001-11-21 | 2008-07-02 | 株式会社東芝 | 半導体記憶装置 |
US7051152B1 (en) | 2002-08-07 | 2006-05-23 | Nvidia Corporation | Method and system of improving disk access time by compression |
TWI228257B (en) * | 2004-05-06 | 2005-02-21 | Carry Computer Eng Co Ltd | Silicon storage media, controller, and access method thereof |
TWI248617B (en) | 2004-08-13 | 2006-02-01 | Prolific Technology Inc | Data storage device |
US7340666B1 (en) * | 2004-09-16 | 2008-03-04 | Sun Microsystems, Inc. | Method and apparatus for using memory compression to enhance error correction |
US7673215B2 (en) | 2004-12-17 | 2010-03-02 | Samsung Electronics Co., Ltd. | Apparatus and method for using an error correcting code to achieve data compression in a data communication network |
US8473673B2 (en) * | 2005-06-24 | 2013-06-25 | Hewlett-Packard Development Company, L.P. | Memory controller based (DE)compression |
US7987514B2 (en) | 2006-04-04 | 2011-07-26 | Intertrust Technologies Corp. | Systems and methods for retrofitting electronic appliances to accept different content formats |
EP1885131A1 (en) * | 2006-08-04 | 2008-02-06 | STMicroelectronics (Research & Development) Limited | Iterative image compression for limited file sizes |
TW200820261A (en) | 2006-09-08 | 2008-05-01 | Samsung Electronics Co Ltd | Fusion memory device and method |
US7958331B2 (en) | 2006-12-13 | 2011-06-07 | Seagate Technology Llc | Storage device with opportunistic address space |
US7945842B2 (en) * | 2007-06-19 | 2011-05-17 | International Business Machines Corporation | Method and apparatus for rateless source coding with/without decoder side information |
US7941409B2 (en) * | 2007-09-11 | 2011-05-10 | Hitachi, Ltd. | Method and apparatus for managing data compression and integrity in a computer storage system |
US8131927B2 (en) * | 2007-11-30 | 2012-03-06 | Hitachi, Ltd. | Fast accessible compressed thin provisioning volume |
US8341501B2 (en) | 2009-04-30 | 2012-12-25 | International Business Machines Corporation | Adaptive endurance coding of non-volatile memories |
-
2009
- 2009-12-23 US US12/645,700 patent/US8533564B2/en active Active
-
2010
- 2010-11-29 US US12/955,174 patent/US8533558B2/en active Active
- 2010-12-01 CN CN201510102335.9A patent/CN104657231B/zh active Active
- 2010-12-01 EP EP13198178.9A patent/EP2713274B1/en not_active Not-in-force
- 2010-12-01 CN CN201080058296.2A patent/CN102713855B/zh active Active
- 2010-12-01 WO PCT/US2010/058591 patent/WO2011087602A1/en active Application Filing
- 2010-12-01 JP JP2012545985A patent/JP5698260B2/ja not_active Expired - Fee Related
- 2010-12-01 KR KR1020127018462A patent/KR101727267B1/ko active IP Right Grant
- 2010-12-01 EP EP10796202.9A patent/EP2517107B1/en not_active Not-in-force
- 2010-12-08 TW TW099142853A patent/TW201133501A/zh unknown
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0512800A (ja) * | 1991-07-04 | 1993-01-22 | Matsushita Electric Ind Co Ltd | データ圧縮機能を備えた情報記録再生装置と情報記録媒体 |
JP2000326571A (ja) * | 1999-05-24 | 2000-11-28 | Canon Inc | 印刷制御装置及びその印刷制御方法ならびに記録媒体 |
JP2001229073A (ja) * | 2000-02-16 | 2001-08-24 | Hitachi Ltd | フラッシュメモリ |
JP2003131954A (ja) * | 2001-08-16 | 2003-05-09 | Hewlett Packard Co <Hp> | 動的可変長誤り訂正符号 |
JP2007094639A (ja) * | 2005-09-28 | 2007-04-12 | Tdk Corp | メモリコントローラ及びフラッシュメモリシステム |
JP2008009943A (ja) * | 2006-06-30 | 2008-01-17 | Toshiba Corp | メモリコントローラ |
JP2008123160A (ja) * | 2006-11-10 | 2008-05-29 | Megachips Lsi Solutions Inc | メモリ管理方法 |
WO2008070811A2 (en) * | 2006-12-06 | 2008-06-12 | Fusion Multisystems, Inc. (Dba Fusion-Io) | Apparatus, system, and method for managing data in a storage device with an empty data token directive |
JP2009205411A (ja) * | 2008-02-27 | 2009-09-10 | Toshiba Corp | メモリコントローラおよびメモリシステム |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015170374A (ja) * | 2014-03-06 | 2015-09-28 | ウィンボンド エレクトロニクス コーポレーション | 半導体記憶装置 |
WO2016051599A1 (ja) * | 2014-10-03 | 2016-04-07 | 株式会社日立製作所 | メモリコントローラ及びデータ制御方法 |
US10067828B2 (en) | 2014-10-03 | 2018-09-04 | Hitachi, Ltd. | Memory controller and data control method |
JP2016161990A (ja) * | 2015-02-26 | 2016-09-05 | ファナック株式会社 | 誤り訂正機能による寿命予測を有する制御装置 |
CN105929723A (zh) * | 2015-02-26 | 2016-09-07 | 发那科株式会社 | 通过纠错功能进行寿命预测的控制装置 |
US9906242B2 (en) | 2015-02-26 | 2018-02-27 | Fanuc Corporation | Control device performing lifetime prediction by error correction function |
CN105929723B (zh) * | 2015-02-26 | 2019-05-07 | 发那科株式会社 | 通过纠错功能进行寿命预测的控制装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2011087602A1 (en) | 2011-07-21 |
US20110154160A1 (en) | 2011-06-23 |
KR20120107495A (ko) | 2012-10-02 |
EP2517107A1 (en) | 2012-10-31 |
CN104657231A (zh) | 2015-05-27 |
EP2713274A2 (en) | 2014-04-02 |
JP5698260B2 (ja) | 2015-04-08 |
US8533558B2 (en) | 2013-09-10 |
US20110154158A1 (en) | 2011-06-23 |
US8533564B2 (en) | 2013-09-10 |
CN102713855A (zh) | 2012-10-03 |
EP2517107B1 (en) | 2014-01-22 |
KR101727267B1 (ko) | 2017-05-02 |
CN102713855B (zh) | 2015-04-08 |
EP2713274B1 (en) | 2017-04-26 |
EP2713274A3 (en) | 2014-04-30 |
CN104657231B (zh) | 2017-11-17 |
TW201133501A (en) | 2011-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5698260B2 (ja) | メモリ装置における制御データの誤り訂正システムおよび方法 | |
US8499221B2 (en) | Accessing coded data stored in a non-volatile memory | |
US8769374B2 (en) | Multi-write endurance and error control coding of non-volatile memories | |
US8719677B2 (en) | Using ECC encoding to verify an ECC decode operation | |
US8862967B2 (en) | Statistical distribution based variable-bit error correction coding | |
KR101686980B1 (ko) | 비휘발성 메모리 내의 데이터 저장 방법 | |
US8949687B2 (en) | Memory device and memory system | |
US8645789B2 (en) | Multi-phase ECC encoding using algebraic codes | |
JP5687062B2 (ja) | レートコンパチブルパンクチャドコードをサポートするメモリコントローラ | |
JP6975047B2 (ja) | ライトワンスメモリコードのエラー訂正コード管理 | |
US9071269B2 (en) | Encoding data for storage in a data storage device | |
KR101367351B1 (ko) | 분산형 ecc 프로세싱 시스템 및 방법 | |
CN112837728B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20131105 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140217 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140311 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140609 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140909 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20141205 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20141212 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141217 |
|
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: 20150120 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150212 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5698260 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
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 |
|
LAPS | Cancellation because of no payment of annual fees |