JP5764235B2 - メモリ・アクセス方法およびシステム - Google Patents
メモリ・アクセス方法およびシステム Download PDFInfo
- Publication number
- JP5764235B2 JP5764235B2 JP2014092635A JP2014092635A JP5764235B2 JP 5764235 B2 JP5764235 B2 JP 5764235B2 JP 2014092635 A JP2014092635 A JP 2014092635A JP 2014092635 A JP2014092635 A JP 2014092635A JP 5764235 B2 JP5764235 B2 JP 5764235B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- codeword
- metadata
- ecc
- memory
- 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.)
- Expired - Fee Related
Links
- 230000015654 memory Effects 0.000 title claims description 141
- 238000000034 method Methods 0.000 title claims description 64
- 239000011159 matrix material Substances 0.000 claims description 38
- 238000012545 processing Methods 0.000 claims description 5
- 238000012937 correction Methods 0.000 description 36
- 230000006835 compression Effects 0.000 description 31
- 230000008569 process Effects 0.000 description 29
- 238000007906 compression Methods 0.000 description 28
- 239000013598 vector Substances 0.000 description 13
- 210000004027 cell Anatomy 0.000 description 12
- 238000013144 data compression Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 12
- 230000009897 systematic effect Effects 0.000 description 9
- 230000008901 benefit Effects 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 7
- 230000003044 adaptive effect Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 5
- 230000006837 decompression Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 210000004460 N cell Anatomy 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000009429 electrical wiring Methods 0.000 description 1
- 238000004193 electrokinetic chromatography Methods 0.000 description 1
- 230000005670 electromagnetic radiation Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/349—Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
-
- 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/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
- G06F2212/1036—Life time enhancement
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7207—Details relating to flash memory management management of metadata or control data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
Description
(付記1)
データ記憶方法であって、
書き込みデータ及び書き込みアドレスを受信するステップと、
圧縮アルゴリズムを前記書き込みデータに適用して圧縮データを生成するステップと、
前記圧縮を前記書き込みデータに適用することによって節約されたスペースの量に応じて選択され適用されるエンデュランス・コードを前記圧縮データに適用してコードワードを得るステップと、
前記コードワードを前記書き込みアドレスに書き込むステップと、
を含む方法。
(付記2)
前記コードワードを書き込むステップの前に、エラー修正コード(ECC)ビットを前記コードワードに追加するステップを更に含む、付記1に記載の方法。
(付記3)
前記コードワードに追加される前記ECCビットの数は、前記圧縮を前記書き込みデータに適用することによって節約されたスペースの量に対応する、付記2に記載の方法。
(付記4)
前記コードワードに追加される前記ECCビットの数は、前記圧縮を前記書き込みデータに適用することによって節約されたスペースの量に応じて、デフォルト数のECCビット及び可変数のECCビットを含む、付記2に記載の方法。
(付記5)
前記コードワード内の前記ECCビットの位置は変化する、上記付記2に記載の方法。
(付記6)
前記書き込みは、前記コードワードが前記書き込みアドレスに書き込まれたときに、書き込み速度の増加、電力レベルの低下、及び損耗レベルの低下のうちの少なくとも1つが達成されるように、前記コードワードに追加されるECCビットの数に応じてプログラムされる、付記2に記載の方法。
(付記7)
前記書き込みアドレスに関するメタデータを生成するステップを更に含み、前記メタデータは、前記書き込みアドレスに書き込まれる前記コードワードを復号化する読み取り動作で利用される、付記1に記載の方法。
(付記8)
前記メタデータをテーブルに格納するステップを更に含む、付記7に記載の方法。
(付記9)
前記コードワードを読み取るステップと、
前記コードワードの分析を実行するステップと、
前記分析に応じて前記エンデュランス・コードを識別するステップと、
識別された前記エンデュランス・コードに関するデコーダを使用して前記コードワードを復号化するステップと、
復号化された前記コードワードを解凍して前記書き込みデータを生成するステップと、
を更に含む、付記1に記載の方法。
(付記10)
前記圧縮を適用するステップと、前記エンデュランス・コーディングを適用するステップとは、単一の符号化関数を使用して共同的に実行される、付記1に記載の方法。
(付記11)
システムであって、
書き込みデータ及び書き込みアドレスを受信する受信器と、
圧縮アルゴリズムを前記書き込みデータに適用して圧縮データを生成するデータ圧縮プログラムと、
前記圧縮を前記書き込みデータに適用することによって節約されたスペースの量に応じて選択され適用されるエンデュランス・コードを前記圧縮データに適用してコードワードを得るエンデュランス・エンコーダと、
前記コードワードを前記書き込みアドレスに書き込むメモリ書き込み装置と、
を備えるシステム。
(付記12)
前記コードワードが前記メモリ書き込み装置によって書き込まれる前に、エラー修正コード(ECC)ビットを前記コードワードに追加するエラー訂正エンコーダを更に備える、付記11に記載のシステム。
(付記13)
前記コードワード内の前記ECCビットの位置は変化する、付記12に記載のシステム。
204 RAMコード・テーブル
206 不揮発性メモリ・デバイス
208 データ圧縮プログラム
210 エンデュランス・エンコーダ
212 データ・セレクタ
214 エラー訂正エンコーダ
216 メモリ書き込みプロセス
218、504 メモリ読み取りプロセス
220、514 メモリ書き込み/読み取りプロセス
222、512 エラー訂正エンコーダ/デコーダ
302 システマティックECCエンコーダ
304 索引付きパーミュータ
506 エラー訂正デコーダ
508 データ解凍プログラム
510 エンデュランス・デコーダ
702 圧縮プログラム
704 エンデュランス・コード・エンコーダ
708 ECCエンコーダ
902 ECCデコーダ
908 エンデュランス・コード・デコーダ
910 解凍プログラム
Claims (7)
- メモリ・アクセス方法であって、
コードワードをメモリ・アドレスから取り出すステップと、
前記コードワードと、書き込み時と共用されるメタデータ行列との乗算を実行して、前記コードワードから情報を得るために用いられるメタデータを復元するステップであって、前記コードワードに対する前記メタデータは、前記コードワード内での処理対象データの位置を指定するデータ位置指定を含む、復元するステップと、
前記メタデータに応じて、前記コードワード内の前記データ位置指定で指定される処理対象データから、読み取るべきデータを識別するステップと、
前記データを読み取りデータとして出力するステップと、
を含む方法。 - 前記コードワードは、ECCビットを更に含み、前記方法は、前記乗算を実行するステップの前に、前記コードワード内のECCビットの数に対応する書き込み時と共用されるパリティ行列で指定されるECCコードを実施するように設計されたECCデコーダを前記コードワードに適用するステップを更に含む、請求項1に記載の方法。
- 前記コードワード内の前記ECCビットの数は可変である、請求項2に記載の方法。
- 前記コードワードは、可変数のECCビット及び未知数のECCビットを更に含み、前記方法は、1つ又は複数のECCデコーダを前記コードワードに適用して、前記コードワード内のECCビットの数に対応するECCデコーダを配置するステップを更に含む、請求項1に記載の方法。
- 前記コードワードを生成するステップを更に含み、前記生成するステップは、
前記データ及び前記メタデータを受信するステップと、
前記メタデータ内の前記データ位置指定に従って、前記メタデータ行列と前記コードワードとの積が前記メタデータと等しくなるように、前記データを前記コードワード内に配置するステップと、
前記コードワードを前記メモリ・アドレスに書き込むステップと、
を含む、請求項1に記載の方法。 - システムであって、
コードワードをメモリ・アドレスから取り出すメモリ読み取り装置と、
前記コードワードと、書き込み時と共用されるメタデータ行列との乗算を実行して、前記コードワードから情報を得るために用いられるメタデータを復元するメタデータ・コンピュータであって、前記コードワードに対する前記メタデータは、前記コードワード内での処理対象データの位置を指定するデータ位置指定を含む、メタデータ・コンピュータと、
前記メタデータに応じて、前記コードワード内の前記データ位置指定で指定される処理対象データから、読み取るべきデータを識別するメタデータ・インタープリタと、
前記データを読み取りデータとして出力する送信器と、
を備えるシステム。 - 前記コードワードは、ECCビットを更に含み、前記システムは、前記乗算を実行する前に、前記コードワード内のECCビットの数に対応する書き込み時と共用されるパリティ行列で指定されるECCコードを実施するように設計されたECCコードを前記コードワードに適用するECCデコーダを更に備える、請求項6に記載のシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/433669 | 2009-04-30 | ||
US12/433,669 US8341501B2 (en) | 2009-04-30 | 2009-04-30 | Adaptive endurance coding of non-volatile memories |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010097570A Division JP5567378B2 (ja) | 2009-04-30 | 2010-04-21 | 不揮発性メモリの適応型エンデュランス・コーディング方法及びシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014170578A JP2014170578A (ja) | 2014-09-18 |
JP5764235B2 true JP5764235B2 (ja) | 2015-08-19 |
Family
ID=43019506
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010097570A Expired - Fee Related JP5567378B2 (ja) | 2009-04-30 | 2010-04-21 | 不揮発性メモリの適応型エンデュランス・コーディング方法及びシステム |
JP2014092635A Expired - Fee Related JP5764235B2 (ja) | 2009-04-30 | 2014-04-28 | メモリ・アクセス方法およびシステム |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010097570A Expired - Fee Related JP5567378B2 (ja) | 2009-04-30 | 2010-04-21 | 不揮発性メモリの適応型エンデュランス・コーディング方法及びシステム |
Country Status (4)
Country | Link |
---|---|
US (2) | US8341501B2 (ja) |
JP (2) | JP5567378B2 (ja) |
KR (1) | KR20100119492A (ja) |
CN (1) | CN101876947B (ja) |
Families Citing this family (108)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
US8341501B2 (en) | 2009-04-30 | 2012-12-25 | International Business Machines Corporation | Adaptive endurance coding of non-volatile memories |
US8122190B1 (en) * | 2009-05-29 | 2012-02-21 | Itt Manufacturing Enterprises, Inc. | Method and system for reconfigurable memory-based permutation implementation |
US8453040B2 (en) * | 2009-11-05 | 2013-05-28 | International Business Machines Corporation | Obscuring information in messages using compression with site-specific prebuilt dictionary |
US8539224B2 (en) * | 2009-11-05 | 2013-09-17 | International Business Machines Corporation | Obscuring form data through obfuscation |
US8176235B2 (en) * | 2009-12-04 | 2012-05-08 | International Business Machines Corporation | Non-volatile memories with enhanced write performance and endurance |
US8176234B2 (en) * | 2009-12-04 | 2012-05-08 | International Business Machines Corporation | Multi-write coding of non-volatile memories |
US8533564B2 (en) * | 2009-12-23 | 2013-09-10 | Sandisk Technologies Inc. | System and method of error correction of control data at a memory device |
US8495464B2 (en) * | 2010-06-28 | 2013-07-23 | Intel Corporation | Reliability support in memory systems without error correcting code support |
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 |
US8407560B2 (en) * | 2010-07-14 | 2013-03-26 | Hewlett-Packard Development Company, L.P. | Systems and methods for encoding information for storage in an electronic memory and for decoding encoded information retrieved from an electronic memory |
SG188410A1 (en) * | 2010-09-06 | 2013-04-30 | Mitsubishi Electric Corp | Memory control device and memory control method |
WO2012039002A1 (en) * | 2010-09-21 | 2012-03-29 | Hitachi, Ltd. | Semiconductor storage device and data control method thereof |
US8769374B2 (en) | 2010-10-13 | 2014-07-01 | International Business Machines Corporation | Multi-write endurance and error control coding of non-volatile memories |
US8892809B2 (en) | 2010-10-25 | 2014-11-18 | Marvell World Trade Ltd. | Data compression and encoding in a memory system |
US9563501B2 (en) * | 2010-11-30 | 2017-02-07 | Micron Technology, Inc. | Preserving data integrity in a memory system |
TWI459396B (zh) * | 2010-12-30 | 2014-11-01 | Phison Electronics Corp | 資料寫入與讀取方法、記憶體控制器與記憶體儲存裝置 |
CN102591737B (zh) * | 2011-01-13 | 2015-04-22 | 群联电子股份有限公司 | 数据写入与读取方法、存储器控制器与存储器储存装置 |
EP2498187A1 (en) * | 2011-03-04 | 2012-09-12 | Nxp B.V. | A multiprocessor arrangement having shared memory, and a method of communication between processors in a multiprocessor arrangement |
US8732538B2 (en) * | 2011-03-10 | 2014-05-20 | Icform, Inc. | Programmable data storage management |
US9176670B2 (en) * | 2011-04-26 | 2015-11-03 | Taejin Info Tech Co., Ltd. | System architecture based on asymmetric raid storage |
WO2012148812A2 (en) * | 2011-04-29 | 2012-11-01 | Lsi Corporation | Encrypted transport solid-state disk controller |
US8806108B2 (en) | 2011-06-07 | 2014-08-12 | Hitachi, Ltd. | Semiconductor storage apparatus and method of controlling semiconductor storage apparatus |
TWI467590B (zh) * | 2011-07-11 | 2015-01-01 | Phison Electronics Corp | 資料處理方法、記憶體控制器及記憶體儲存裝置 |
CN102890969B (zh) * | 2011-07-20 | 2015-06-10 | 群联电子股份有限公司 | 数据处理方法、存储器控制器及存储器储存装置 |
US8495285B2 (en) * | 2011-08-31 | 2013-07-23 | Micron Technology, Inc. | Apparatuses and methods of operating for memory endurance |
US8666068B2 (en) | 2011-10-20 | 2014-03-04 | Sandisk Technologies Inc. | Method for scrambling shaped data |
US8799559B2 (en) | 2011-10-24 | 2014-08-05 | Sandisk Technologies Inc. | Endurance enhancement coding of compressible data in flash memories |
JP5728370B2 (ja) * | 2011-11-21 | 2015-06-03 | 株式会社東芝 | 半導体記憶装置およびその駆動方法 |
US9037779B2 (en) * | 2011-12-19 | 2015-05-19 | Sandisk Technologies Inc. | Systems and methods for performing variable flash wear leveling |
US9146855B2 (en) * | 2012-01-09 | 2015-09-29 | Dell Products Lp | Systems and methods for tracking and managing non-volatile memory wear |
KR101888074B1 (ko) * | 2012-01-09 | 2018-08-13 | 삼성전자주식회사 | 저장 장치 및 불휘발성 메모리 장치, 그리고 그것의 동작 방법 |
US9246511B2 (en) * | 2012-03-20 | 2016-01-26 | Sandisk Technologies Inc. | Method and apparatus to process data based upon estimated compressibility of the data |
WO2013147819A1 (en) * | 2012-03-29 | 2013-10-03 | 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 |
JP2013242694A (ja) * | 2012-05-21 | 2013-12-05 | Renesas Mobile Corp | 半導体装置、電子装置、電子システム及び電子装置の制御方法 |
US9032159B2 (en) * | 2012-06-27 | 2015-05-12 | Via Technologies, Inc. | Data prefetcher with complex stride predictor |
US9176902B1 (en) * | 2012-06-27 | 2015-11-03 | Emc Corporation | Data migration techniques |
US20150178193A1 (en) * | 2012-07-11 | 2015-06-25 | Industry-University Cooperation Foundation, Hanyang University | Apparatus and method for managing flash memory by means of writing data pattern recognition |
US9064575B2 (en) | 2012-08-03 | 2015-06-23 | Micron Technology, Inc. | Determining whether a memory cell state is in a valley between adjacent data states |
TWI521528B (zh) * | 2012-08-08 | 2016-02-11 | 群聯電子股份有限公司 | 記憶體儲存裝置、其記憶體控制器與資料處理方法 |
CN102915261A (zh) * | 2012-09-04 | 2013-02-06 | 邹粤林 | 提高闪存芯片存储单元利用率的方法、装置和系统 |
US8898539B2 (en) * | 2012-09-12 | 2014-11-25 | Lsi Corporation | Correcting errors in miscorrected codewords using list decoding |
US20140089761A1 (en) * | 2012-09-24 | 2014-03-27 | Zion Kwok | Method, apparatus and system for providing error correction information |
US9071269B2 (en) * | 2012-10-01 | 2015-06-30 | Sandisk Technologies Inc. | Encoding data for storage in a data storage device |
KR102081980B1 (ko) | 2012-10-08 | 2020-02-27 | 삼성전자 주식회사 | 메모리 시스템에서의 라이트 동작 또는 리드 동작 수행 방법 |
US8972826B2 (en) * | 2012-10-24 | 2015-03-03 | Western Digital Technologies, Inc. | Adaptive error correction codes for data storage systems |
TW201416849A (zh) * | 2012-10-30 | 2014-05-01 | Jmicron Technology Corp | 錯誤檢查及校正方法以及相關錯誤檢查及校正電路 |
CN103810054A (zh) * | 2012-11-14 | 2014-05-21 | 智微科技股份有限公司 | 错误检查及校正方法以及相关错误检查及校正电路 |
US8984463B2 (en) * | 2012-11-28 | 2015-03-17 | Qualcomm Incorporated | Data transfer across power domains |
US9047975B2 (en) * | 2012-11-28 | 2015-06-02 | Adesto Technologies Corporation | Coding techniques for reducing write cycles for memory |
KR101361670B1 (ko) | 2012-12-11 | 2014-02-12 | 충남대학교산학협력단 | 프로그램 정적 분석을 통한 플래시 메모리의 랜덤 쓰기 연산의 속도 향상 방법 |
US8854079B2 (en) * | 2013-01-30 | 2014-10-07 | Texas Instruments Incorporated | Error detection in nonvolatile logic arrays using parity |
US9201662B2 (en) * | 2013-03-29 | 2015-12-01 | Dell Products, Lp | System and method for pre-operating system memory map management to minimize operating system failures |
JP6129635B2 (ja) * | 2013-04-30 | 2017-05-17 | サイプレス セミコンダクター コーポレーション | 制御方法、制御プログラム、および制御装置 |
US9229640B2 (en) | 2013-11-15 | 2016-01-05 | Microsoft Technology Licensing, Llc | Inexpensive solid-state storage by throttling write speed in accordance with empirically derived write policy table |
KR102078853B1 (ko) * | 2013-11-27 | 2020-02-18 | 삼성전자 주식회사 | 메모리 시스템, 호스트 시스템 및 메모리 시스템에서의 라이트 동작 수행 방법 |
WO2015116184A1 (en) * | 2014-01-31 | 2015-08-06 | Hewlett-Packard Development Company, L.P. | Constant hamming weight coding |
US9391646B2 (en) * | 2014-03-25 | 2016-07-12 | Samsung Electronics Co., Ltd. | Joint source-channel encoding and decoding for compressed and uncompressed data |
KR20160141771A (ko) * | 2014-04-01 | 2016-12-09 | 래티스세미컨덕터코퍼레이션 | 직렬 비디오 인터페이스들내 에러 감지 및 정정을 위한 직교하는 데이터 구조화 |
US10503661B2 (en) * | 2014-05-21 | 2019-12-10 | Qualcomm Incorporated | Providing memory bandwidth compression using compressed memory controllers (CMCs) in a central processing unit (CPU)-based system |
US10838862B2 (en) | 2014-05-21 | 2020-11-17 | Qualcomm Incorporated | Memory controllers employing memory capacity compression, and related processor-based systems and methods |
US9710326B2 (en) * | 2014-07-28 | 2017-07-18 | SK Hynix Inc. | Encoder by-pass with scrambler |
CN105653391B (zh) * | 2014-11-13 | 2018-11-02 | 群联电子股份有限公司 | 数据存取方法、存储器控制电路单元及存储器储存装置 |
CN105808151B (zh) | 2014-12-29 | 2019-09-27 | 华为技术有限公司 | 固态硬盘存储设备和固态硬盘存储设备的数据存取方法 |
CN106156169B (zh) * | 2015-04-16 | 2019-12-06 | 深圳市腾讯计算机系统有限公司 | 离散数据的处理方法和装置 |
CN106201325B (zh) * | 2015-04-29 | 2019-04-23 | 群联电子股份有限公司 | 数据存取方法、存储器控制电路单元与存储器存储装置 |
US9792053B2 (en) * | 2015-04-30 | 2017-10-17 | Toshiba Memory Corporation | Controller for nonvolatile semiconductor memory |
US9331712B1 (en) * | 2015-05-11 | 2016-05-03 | Qualcomm Incorporated | Compressed caching in a virtual memory system |
US9690517B2 (en) * | 2015-05-22 | 2017-06-27 | Texas Instruments Incorporated | Dual-mode error-correction code/write-once memory codec |
JP6346123B2 (ja) * | 2015-05-25 | 2018-06-20 | 東芝メモリ株式会社 | コントローラ、制御方法 |
US10705909B2 (en) * | 2015-06-25 | 2020-07-07 | International Business Machines Corporation | File level defined de-clustered redundant array of independent storage devices solution |
CN105095014A (zh) * | 2015-07-01 | 2015-11-25 | 清华大学 | 基于错误纠正编码数据结构的数据隐藏方法 |
JP6403162B2 (ja) * | 2015-07-23 | 2018-10-10 | 東芝メモリ株式会社 | メモリシステム |
JP2017027388A (ja) * | 2015-07-23 | 2017-02-02 | 株式会社東芝 | メモリシステムおよび不揮発性メモリの制御方法 |
US9865338B2 (en) | 2015-09-02 | 2018-01-09 | Toshiba Memory Corporation | Memory system and method of controlling nonvolatile memory by converting write data written to a page |
US10033411B2 (en) * | 2015-11-20 | 2018-07-24 | Intel Corporation | Adjustable error protection for stored data |
US10089241B2 (en) | 2016-03-10 | 2018-10-02 | Toshiba Memory Corporation | Memory system |
US10216575B2 (en) | 2016-03-17 | 2019-02-26 | Sandisk Technologies Llc | Data coding |
KR20180086816A (ko) * | 2017-01-23 | 2018-08-01 | 에스케이하이닉스 주식회사 | 사전-검사된 에러율에 따른 적응형 에러정정을 수행하는 메모리장치 및 전자장치와, 메모리장치의 동작방법 |
DE102017201506A1 (de) * | 2017-01-31 | 2018-08-02 | Siemens Aktiengesellschaft | Verfahren und Vorrichtung zur verlustfreien Kompression eines Datenstromes |
US10289330B2 (en) * | 2017-03-30 | 2019-05-14 | Western Digital Technologies, Inc. | Allocating shared memory among multiple tasks in a multiprocessor environment |
JP2019079113A (ja) * | 2017-10-20 | 2019-05-23 | 株式会社日立製作所 | ストレージ装置、データ管理方法、及びデータ管理プログラム |
WO2019118191A1 (en) * | 2017-12-12 | 2019-06-20 | Futurewei Technologies, Inc. | A wear-leveling scheme and implementation for a storage class memory system |
US10789130B1 (en) | 2018-03-09 | 2020-09-29 | Toshiba Memory Corporation | Capacitor energy management for unexpected power loss in datacenter SSD devices |
JP6960877B2 (ja) | 2018-03-22 | 2021-11-05 | キオクシア株式会社 | メモリシステム |
US11030149B2 (en) * | 2018-09-06 | 2021-06-08 | Sap Se | File format for accessing data quickly and efficiently |
KR20200034312A (ko) * | 2018-09-21 | 2020-03-31 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
DE102018124296B4 (de) * | 2018-10-02 | 2024-06-20 | Infineon Technologies Ag | Kompensation von lesefehlern |
JP6649452B2 (ja) * | 2018-10-22 | 2020-02-19 | キオクシア株式会社 | メモリシステムおよび不揮発性メモリの制御方法 |
DE102018132503B4 (de) | 2018-12-17 | 2020-09-17 | Infineon Technologies Ag | Detektion von Codewörtern |
US11029872B2 (en) | 2018-12-18 | 2021-06-08 | Western Digital Technologies, Inc. | Non-volatile storage system with data shaping memory partitions |
US10963342B2 (en) | 2019-02-01 | 2021-03-30 | Micron Technology, Inc. | Metadata-assisted encoding and decoding for a memory sub-system |
DE102019107139A1 (de) * | 2019-03-20 | 2020-09-24 | Infineon Technologies Ag | Transformation von aus einem speicher gelesenen binären signalen |
US11288009B2 (en) * | 2019-07-10 | 2022-03-29 | Micron Technology, Inc. | Read sample offset bit determination using most probably decoder logic in a memory sub-system |
DE102020100541A1 (de) * | 2020-01-13 | 2021-07-15 | Infineon Technologies Ag | Bestimmung eines resultierenden datenworts beim zugriff auf einen speicher |
US11580315B2 (en) | 2020-02-10 | 2023-02-14 | Nxp B.V. | Agile time-continuous memory operation for a radio frequency identification transponder |
US11321167B2 (en) | 2020-05-09 | 2022-05-03 | Western Digital Technologies, Inc. | Adaptive folding for integrated memory assembly |
US11301321B2 (en) | 2020-05-28 | 2022-04-12 | Western Digital Technologies, Inc. | Data shaping for integrated memory assembly |
US11170870B1 (en) | 2020-05-28 | 2021-11-09 | Western Digital Technologies, Inc. | On-chip-copy for integrated memory assembly |
CN111638994B (zh) * | 2020-06-01 | 2021-05-04 | 长江存储科技有限责任公司 | 一种闪存存储器及其错误比特计数检测方法和系统 |
US11488682B2 (en) | 2020-06-24 | 2022-11-01 | Sandisk Technologies Llc | Calibration for integrated memory assembly |
US11392327B2 (en) | 2020-09-09 | 2022-07-19 | Western Digital Technologies, Inc. | Local data compaction for integrated memory assembly |
CN112118246B (zh) * | 2020-09-11 | 2022-04-19 | 北京微密科技发展有限公司 | 基于融合内存的区块链可信存储执行硬件环境 |
DE102020211842A1 (de) | 2020-09-22 | 2022-03-24 | Infineon Technologies Ag | Speichervorrichtungen und Verfahren zum Betreiben derselben |
US11650932B2 (en) | 2020-10-25 | 2023-05-16 | Western Digital Technologies, Inc. | Integrated non-volatile memory assembly with address translation |
US11481154B2 (en) | 2021-01-15 | 2022-10-25 | Sandisk Technologies Llc | Non-volatile memory with memory array between circuits |
JP2022147380A (ja) | 2021-03-23 | 2022-10-06 | キオクシア株式会社 | メモリコントローラおよびメモリシステム |
Family Cites Families (77)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US747909A (en) * | 1903-02-24 | 1903-12-22 | Henry Ford | Motor-vehicle. |
WO1983003912A1 (en) | 1982-04-30 | 1983-11-10 | Massachusetts Institute Of Technology | Method and apparatus for reusing non-erasable memory media |
JPH0745085A (ja) * | 1993-07-30 | 1995-02-14 | Tec Corp | データ書込装置及びデータ読取装置 |
JPH07287668A (ja) * | 1994-04-19 | 1995-10-31 | Hitachi Ltd | データ処理装置 |
US6978342B1 (en) | 1995-07-31 | 2005-12-20 | Lexar Media, Inc. | Moving sectors within a block of information in a flash memory mass storage architecture |
RU2182722C2 (ru) | 1995-11-10 | 2002-05-20 | Сони Корпорейшн | Устройство и способ обработки информации |
US5784698A (en) * | 1995-12-05 | 1998-07-21 | International Business Machines Corporation | Dynamic memory allocation that enalbes efficient use of buffer pool memory segments |
JPH113594A (ja) * | 1997-06-12 | 1999-01-06 | Hitachi Ltd | 不揮発性メモリおよびデータ書込み、読出し方法 |
JPH11283396A (ja) * | 1998-03-27 | 1999-10-15 | Sony Corp | メモリ装置 |
US6157570A (en) | 1999-02-04 | 2000-12-05 | Tower Semiconductor Ltd. | Program/erase endurance of EEPROM memory cells |
GB9903490D0 (en) | 1999-02-17 | 1999-04-07 | Memory Corp Plc | Memory system |
US6532121B1 (en) * | 1999-10-25 | 2003-03-11 | Hewlett-Packard Company | Compression algorithm with embedded meta-data for partial record operation augmented with expansion joints |
US20080256352A1 (en) | 2000-01-06 | 2008-10-16 | Super Talent Electronics, Inc. | Methods and systems of booting of an intelligent non-volatile memory microcontroller from various sources |
US6662263B1 (en) | 2000-03-03 | 2003-12-09 | Multi Level Memory Technology | Sectorless flash memory architecture |
JP2004507855A (ja) * | 2000-05-10 | 2004-03-11 | シーゲイト テクノロジー エルエルシー | 組込みサーボ・ディスク・ドライブにおける書込みエラー補償テーブルの圧縮および記憶 |
US6640319B1 (en) | 2000-08-29 | 2003-10-28 | Maxtor Corporation | Mis-synchronization detection system |
JP2002091831A (ja) * | 2000-09-12 | 2002-03-29 | Hitachi Ltd | データ処理システム及びデータ処理方法 |
ATE302464T1 (de) | 2000-12-15 | 2005-09-15 | Koninkl Philips Electronics Nv | Datenverarbeitungseinrichtung mit einer speicherstelle, in der daten gemäss einem wom- code gespeichert werden |
US7062602B1 (en) | 2001-04-09 | 2006-06-13 | Matrix Semiconductor, Inc. | Method for reading data in a write-once memory device using a write-many file system |
US6996660B1 (en) | 2001-04-09 | 2006-02-07 | Matrix Semiconductor, Inc. | Memory device and method for storing and reading data in a write-once memory array |
US6584034B1 (en) | 2001-04-23 | 2003-06-24 | Aplus Flash Technology Inc. | Flash memory array structure suitable for multiple simultaneous operations |
US7146524B2 (en) | 2001-08-03 | 2006-12-05 | Isilon Systems, Inc. | Systems and methods for providing a distributed file system incorporating a virtual hot spare |
TW543037B (en) | 2001-08-15 | 2003-07-21 | Numa Technology Inc | Embedded memory structure and its accessing method |
US6961890B2 (en) | 2001-08-16 | 2005-11-01 | Hewlett-Packard Development Company, L.P. | Dynamic variable-length error correction code |
GB0123415D0 (en) | 2001-09-28 | 2001-11-21 | Memquest Ltd | Method of writing data to non-volatile memory |
US6970969B2 (en) | 2002-08-29 | 2005-11-29 | Micron Technology, Inc. | Multiple segment data object management |
US7039788B1 (en) | 2002-10-28 | 2006-05-02 | Sandisk Corporation | Method and apparatus for splitting a logical block |
US6794997B2 (en) | 2003-02-18 | 2004-09-21 | Sun Microsystems, Inc. | Extending non-volatile memory endurance using data encoding |
JP4550439B2 (ja) | 2003-02-28 | 2010-09-22 | 東芝メモリシステムズ株式会社 | Ecc制御装置 |
JPWO2005001700A1 (ja) | 2003-06-27 | 2006-08-10 | 富士通株式会社 | ストレージ容量管理方法、そのサーバ、記録媒体 |
JP4220319B2 (ja) | 2003-07-04 | 2009-02-04 | 株式会社東芝 | 不揮発性半導体記憶装置およびそのサブブロック消去方法 |
JP2005100527A (ja) * | 2003-09-25 | 2005-04-14 | Matsushita Electric Ind Co Ltd | 半導体不揮発性記憶装置 |
JP2005190288A (ja) | 2003-12-26 | 2005-07-14 | Tdk Corp | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 |
US7398348B2 (en) | 2004-08-24 | 2008-07-08 | Sandisk 3D Llc | Method and apparatus for using a one-time or few-time programmable memory with a host device designed for erasable/rewritable memory |
US7457909B2 (en) | 2005-01-14 | 2008-11-25 | Angelo Di Sena | Controlling operation of flash memories |
US20060282610A1 (en) | 2005-06-08 | 2006-12-14 | M-Systems Flash Disk Pioneers Ltd. | Flash memory with programmable endurance |
GB2428496A (en) | 2005-07-15 | 2007-01-31 | Global Silicon Ltd | Error correction for flash memory |
EP1746604B1 (en) | 2005-07-22 | 2009-02-04 | STMicroelectronics S.r.l. | Method for accessing a multilevel nonvolatile memory device of the flash NAND type |
US7949845B2 (en) | 2005-08-03 | 2011-05-24 | Sandisk Corporation | Indexing of file data in reprogrammable non-volatile memories that directly store data files |
US7984084B2 (en) | 2005-08-03 | 2011-07-19 | SanDisk Technologies, Inc. | Non-volatile memory with scheduled reclaim operations |
US7409524B2 (en) | 2005-08-17 | 2008-08-05 | Hewlett-Packard Development Company, L.P. | System and method for responding to TLB misses |
JP2007094639A (ja) * | 2005-09-28 | 2007-04-12 | Tdk Corp | メモリコントローラ及びフラッシュメモリシステム |
EP1788575B1 (en) | 2005-11-18 | 2010-01-20 | STMicroelectronics S.r.l. | Method for accessing in reading, writing and programming to a NAND non-volatile memory electronic device monolithically integrated on semiconductor |
US7245556B1 (en) | 2005-12-28 | 2007-07-17 | Sandisk Corporation | Methods for writing non-volatile memories for increased endurance |
US20070150644A1 (en) | 2005-12-28 | 2007-06-28 | Yosi Pinto | System for writing non-volatile memories for increased endurance |
US7594087B2 (en) | 2006-01-19 | 2009-09-22 | Sigmatel, Inc. | System and method for writing data to and erasing data from non-volatile memory |
US8055979B2 (en) | 2006-01-20 | 2011-11-08 | Marvell World Trade Ltd. | Flash memory with coding and signal processing |
US7694102B2 (en) | 2006-03-30 | 2010-04-06 | International Business Machines Corporation | Systems and methods for self-tuning memory |
US7802064B2 (en) | 2006-03-31 | 2010-09-21 | Mosaid Technologies Incorporated | Flash memory system control scheme |
KR101185617B1 (ko) | 2006-04-04 | 2012-09-24 | 삼성전자주식회사 | 외부 메모리의 부하를 줄일 수 있는 웨어 레벨링 기법에의한 플래시 파일 시스템의 동작 방법 |
CN103280239B (zh) | 2006-05-12 | 2016-04-06 | 苹果公司 | 存储设备中的失真估计和消除 |
US7511646B2 (en) | 2006-05-15 | 2009-03-31 | Apple Inc. | Use of 8-bit or higher A/D for NAND cell value |
US7809994B2 (en) | 2006-05-17 | 2010-10-05 | Sandisk Corporation | Error correction coding for multiple-sector pages in flash memory devices |
KR100764052B1 (ko) | 2006-08-03 | 2007-10-08 | 삼성전자주식회사 | 유동적 어드레스 바운더리를 갖는 플래시 메모리 장치 및그것의 프로그램 방법 |
WO2008019347A2 (en) | 2006-08-05 | 2008-02-14 | Benhov Gmbh, Llc | Solid state storage element and method |
JP2007104708A (ja) * | 2006-11-27 | 2007-04-19 | Renesas Technology Corp | データ処理方法 |
US8074011B2 (en) | 2006-12-06 | 2011-12-06 | Fusion-Io, Inc. | Apparatus, system, and method for storage space recovery after reaching a read count limit |
CN100468576C (zh) * | 2007-05-30 | 2009-03-11 | 忆正存储技术(深圳)有限公司 | 闪存数据读写处理方法 |
US8125619B2 (en) | 2007-07-25 | 2012-02-28 | Eminent Electronic Technology Corp. | Integrated ambient light sensor and distance sensor |
US20090055605A1 (en) | 2007-08-20 | 2009-02-26 | Zining Wu | Method and system for object-oriented data storage |
US7697325B2 (en) | 2007-09-24 | 2010-04-13 | Sandisk Corporation | Non-volatile memory cell endurance using data encoding |
US20090150595A1 (en) | 2007-10-24 | 2009-06-11 | Avi Lavan | Balanced programming rate for memory cells |
JP5142685B2 (ja) | 2007-11-29 | 2013-02-13 | 株式会社東芝 | メモリシステム |
US8843691B2 (en) | 2008-06-25 | 2014-09-23 | Stec, Inc. | Prioritized erasure of data blocks in a flash storage device |
KR101102505B1 (ko) * | 2008-07-23 | 2012-01-04 | 주식회사 하이닉스반도체 | 비휘발성 메모리 장치의 프로그램 방법 |
US8347023B2 (en) * | 2008-10-06 | 2013-01-01 | Marvell World Trade Ltd. | Compression based wear leveling for non-volatile memory |
US9461763B2 (en) | 2008-11-28 | 2016-10-04 | Computer Performance, Inc. | Method and apparatus for reformatting and retiming digital telecommunications data for reliable retransmission via USB |
US20110238903A1 (en) | 2008-12-10 | 2011-09-29 | Amir Ban | Method and device of managing a reduced wear memory |
EP2396791B1 (en) * | 2009-02-12 | 2014-08-06 | Ramot at Tel-Aviv University Ltd. | Apparatus and method for enhancing flash endurance by encoding data |
US8341501B2 (en) | 2009-04-30 | 2012-12-25 | International Business Machines Corporation | Adaptive endurance coding of non-volatile memories |
US8307261B2 (en) | 2009-05-04 | 2012-11-06 | National Tsing Hua University | Non-volatile memory management method |
US8874825B2 (en) * | 2009-06-30 | 2014-10-28 | Sandisk Technologies Inc. | Storage device and method using parameters based on physical memory block location |
US8176235B2 (en) | 2009-12-04 | 2012-05-08 | International Business Machines Corporation | Non-volatile memories with enhanced write performance and endurance |
US8176234B2 (en) | 2009-12-04 | 2012-05-08 | International Business Machines Corporation | Multi-write coding of non-volatile memories |
KR101438072B1 (ko) | 2010-04-15 | 2014-09-03 | 라모트 앳 텔-아비브 유니버시티 리미티드 | 소거 없는 플래시 메모리의 다중 프로그래밍 |
US8392807B2 (en) | 2010-07-23 | 2013-03-05 | Sandisk Technologies Inc. | System and method of distributive ECC processing |
US8769374B2 (en) * | 2010-10-13 | 2014-07-01 | International Business Machines Corporation | Multi-write endurance and error control coding of non-volatile memories |
-
2009
- 2009-04-30 US US12/433,669 patent/US8341501B2/en active Active
-
2010
- 2010-03-22 KR KR1020100025312A patent/KR20100119492A/ko not_active Application Discontinuation
- 2010-04-21 JP JP2010097570A patent/JP5567378B2/ja not_active Expired - Fee Related
- 2010-04-21 CN CN2010101693292A patent/CN101876947B/zh active Active
-
2012
- 2012-07-24 US US13/556,275 patent/US8499221B2/en active Active
-
2014
- 2014-04-28 JP JP2014092635A patent/JP5764235B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2014170578A (ja) | 2014-09-18 |
CN101876947B (zh) | 2012-05-23 |
JP2010262640A (ja) | 2010-11-18 |
US20100281340A1 (en) | 2010-11-04 |
KR20100119492A (ko) | 2010-11-09 |
CN101876947A (zh) | 2010-11-03 |
US8341501B2 (en) | 2012-12-25 |
JP5567378B2 (ja) | 2014-08-06 |
US20120290898A1 (en) | 2012-11-15 |
US8499221B2 (en) | 2013-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5764235B2 (ja) | メモリ・アクセス方法およびシステム | |
US8769374B2 (en) | Multi-write endurance and error control coding of non-volatile memories | |
JP5698260B2 (ja) | メモリ装置における制御データの誤り訂正システムおよび方法 | |
KR101264476B1 (ko) | 증가된 용량의 이종의 스토리지 엘리먼트들 | |
JP5345201B2 (ja) | 符号化および/または復号化メモリ装置および方法 | |
KR101398200B1 (ko) | 메모리 장치 및 인코딩/디코딩 방법 | |
US20170264312A1 (en) | Read threshold calibration for ldpc | |
US8463985B2 (en) | Constrained coding to reduce floating gate coupling in non-volatile memories | |
KR20130029080A (ko) | 소거 없는 플래시 메모리의 다중 프로그래밍 | |
JP6847796B2 (ja) | メモリシステム | |
JP2022124682A (ja) | メモリシステム | |
KR20160150036A (ko) | 부분 페이지 압축을 위한 메모리 시스템 | |
JP2021047712A (ja) | メモリシステム | |
US9639421B2 (en) | Operating method of flash memory system | |
CN110113058B (zh) | 编译码方法、装置、设备及计算机可读存储介质 | |
KR101355988B1 (ko) | 연접 비씨에이치 부호, 복호 및 다계층 복호 회로 및 방법, 이를 이용한 플래쉬 메모리 장치의 오류 정정 회로 및 플래쉬 메모리 장치 | |
US8819331B2 (en) | Memory system and memory controller | |
KR101357544B1 (ko) | 연접 비씨에이치 부호, 복호 및 다계층 복호 회로 및 방법, 이를 이용한 플래쉬 메모리 장치의 오류 정정 회로 및 플래쉬 메모리 장치 | |
US10673465B2 (en) | Memory controller, memory system, and control method | |
KR20150060019A (ko) | 메모리 시스템에서 데이터를 인코딩 및 디코딩하기 위한 방법 및 장치 | |
KR20140006447A (ko) | 연접 비씨에이치 부호, 복호 및 다계층 복호 회로 및 방법, 이를 이용한 플래쉬 메모리 장치의 오류 정정 회로 및 플래쉬 메모리 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150122 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150203 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150424 |
|
TRDD | Decision of grant or rejection written | ||
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20150526 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150526 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150612 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5764235 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |