CN102023815A - 在固态存储器中实现raid - Google Patents
在固态存储器中实现raid Download PDFInfo
- Publication number
- CN102023815A CN102023815A CN2010102852332A CN201010285233A CN102023815A CN 102023815 A CN102023815 A CN 102023815A CN 2010102852332 A CN2010102852332 A CN 2010102852332A CN 201010285233 A CN201010285233 A CN 201010285233A CN 102023815 A CN102023815 A CN 102023815A
- Authority
- CN
- China
- Prior art keywords
- data
- memory
- logical
- block
- physical
- 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
- 239000007787 solid Substances 0.000 title claims abstract description 29
- 230000015654 memory Effects 0.000 title claims description 185
- 238000003860 storage Methods 0.000 claims abstract description 69
- 238000000034 method Methods 0.000 claims abstract description 43
- 238000013500 data storage Methods 0.000 claims abstract description 22
- 230000002085 persistent effect Effects 0.000 claims abstract 9
- 239000000872 buffer Substances 0.000 claims description 53
- 238000011084 recovery Methods 0.000 claims description 13
- 238000007726 management method Methods 0.000 claims description 3
- 230000005055 memory storage Effects 0.000 claims 2
- 230000008569 process Effects 0.000 description 20
- 230000003139 buffering effect Effects 0.000 description 17
- 239000010410 layer Substances 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 9
- 241001269238 Data Species 0.000 description 8
- 238000012937 correction Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000004044 response Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 208000000044 Amnesia Diseases 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 231100000863 loss of memory Toxicity 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 210000003813 thumb Anatomy 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/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
- G06F11/108—Parity data distribution in semiconductor storages, e.g. in SSD
-
- 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
-
- 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/1028—Adjacent errors, e.g. error in n-bit (n>1) wide storage units, i.e. package error
-
- 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
-
- 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
-
- 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
-
- 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/7208—Multiple device management, e.g. distributing data over multiple flash devices
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)
Abstract
Description
Claims (20)
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US24266209P | 2009-09-15 | 2009-09-15 | |
US61/242,662 | 2009-09-15 | ||
US25457709P | 2009-10-23 | 2009-10-23 | |
US61/254,577 | 2009-10-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102023815A true CN102023815A (zh) | 2011-04-20 |
CN102023815B CN102023815B (zh) | 2016-01-20 |
Family
ID=43731593
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010285233.2A Active CN102023815B (zh) | 2009-09-15 | 2010-09-15 | 在固态存储器中实现raid |
Country Status (2)
Country | Link |
---|---|
US (3) | US8402217B2 (zh) |
CN (1) | CN102023815B (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015035536A1 (zh) * | 2013-09-16 | 2015-03-19 | 上海宝存信息科技有限公司 | 在基于闪存的存储系统中构建raid的方法及系统 |
CN103092765B (zh) * | 2012-12-31 | 2015-08-05 | 记忆科技(深圳)有限公司 | 固态存储系统、装置及数据写入方法 |
CN104965768A (zh) * | 2014-01-23 | 2015-10-07 | Dssd股份有限公司 | 用于存储系统中的服务感知数据放置的方法和系统 |
CN105612500A (zh) * | 2013-09-06 | 2016-05-25 | 西部数据技术公司 | 提供硬件中的数据帧段的选择性合并的高性能系统 |
CN105637490A (zh) * | 2013-09-03 | 2016-06-01 | 桑迪士克科技股份有限公司 | 用于在闪速存储器装置之间迁移数据的方法和系统 |
CN106796544A (zh) * | 2014-10-03 | 2017-05-31 | 新加坡科技研究局 | 主动存储单元和阵列 |
CN106776110A (zh) * | 2016-12-29 | 2017-05-31 | 忆正科技(武汉)有限公司 | 一种用于固态存储读策略的控制方法 |
CN106980594A (zh) * | 2017-04-06 | 2017-07-25 | 上海航天测控通信研究所 | 一种低成本高性能空间用计算机 |
CN107273304A (zh) * | 2017-05-24 | 2017-10-20 | 记忆科技(深圳)有限公司 | 一种提高固态硬盘顺序读性能的方法及固态硬盘 |
CN107408019A (zh) * | 2015-03-27 | 2017-11-28 | 英特尔公司 | 用于提高对非易失性存储器中的缺陷的抗干扰性的方法和装置 |
CN107632947A (zh) * | 2017-09-12 | 2018-01-26 | 记忆科技(深圳)有限公司 | 一种智能raid数据保护系统 |
CN107807788A (zh) * | 2016-09-09 | 2018-03-16 | 北京忆恒创源科技有限公司 | 多平面闪存的数据组织方法与装置 |
CN109144407A (zh) * | 2017-06-16 | 2019-01-04 | 希捷科技有限公司 | 用于监测存储器以便引退的系统和方法 |
CN109324756A (zh) * | 2018-08-22 | 2019-02-12 | 华中科技大学 | 一种基于固态盘阵列的数据安全删除方法 |
CN113168866A (zh) * | 2021-03-05 | 2021-07-23 | 长江存储科技有限责任公司 | 用于独立磁盘冗余阵列条带化以防止编程故障的方法及其装置 |
Families Citing this family (158)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8719661B1 (en) * | 2010-11-15 | 2014-05-06 | Vmware, Inc. | Transparent and lightweight recovery from hardware memory errors |
US8050086B2 (en) | 2006-05-12 | 2011-11-01 | Anobit Technologies Ltd. | Distortion estimation and cancellation in memory devices |
WO2007132456A2 (en) | 2006-05-12 | 2007-11-22 | Anobit Technologies Ltd. | Memory device with adaptive capacity |
KR101202537B1 (ko) * | 2006-05-12 | 2012-11-19 | 애플 인크. | 메모리 디바이스를 위한 결합된 왜곡 추정 및 에러 보정 코딩 |
WO2008053472A2 (en) | 2006-10-30 | 2008-05-08 | Anobit Technologies Ltd. | Reading memory cells using multiple thresholds |
US8151163B2 (en) * | 2006-12-03 | 2012-04-03 | Anobit Technologies Ltd. | Automatic defect management in memory devices |
US8151166B2 (en) * | 2007-01-24 | 2012-04-03 | Anobit Technologies Ltd. | Reduction of back pattern dependency effects in memory devices |
CN101715595A (zh) | 2007-03-12 | 2010-05-26 | 爱诺彼得技术有限责任公司 | 存储器单元读取阈的自适应估计 |
US8234545B2 (en) | 2007-05-12 | 2012-07-31 | Apple Inc. | Data storage with incremental redundancy |
WO2008139441A2 (en) | 2007-05-12 | 2008-11-20 | Anobit Technologies Ltd. | Memory device with internal signal processing unit |
US8259497B2 (en) | 2007-08-06 | 2012-09-04 | Apple Inc. | Programming schemes for multi-level analog memory cells |
US8174905B2 (en) | 2007-09-19 | 2012-05-08 | Anobit Technologies Ltd. | Programming orders for reducing distortion in arrays of multi-level analog memory cells |
US8527819B2 (en) | 2007-10-19 | 2013-09-03 | Apple Inc. | Data storage in analog memory cell arrays having erase failures |
US8270246B2 (en) | 2007-11-13 | 2012-09-18 | Apple Inc. | Optimized selection of memory chips in multi-chips memory devices |
US8225181B2 (en) | 2007-11-30 | 2012-07-17 | Apple Inc. | Efficient re-read operations from memory devices |
US8209588B2 (en) | 2007-12-12 | 2012-06-26 | Anobit Technologies Ltd. | Efficient interference cancellation in analog memory cell arrays |
US8156398B2 (en) | 2008-02-05 | 2012-04-10 | Anobit Technologies Ltd. | Parameter estimation based on error correction code parity check equations |
US8230300B2 (en) | 2008-03-07 | 2012-07-24 | Apple Inc. | Efficient readout from analog memory cells using data compression |
US8493783B2 (en) | 2008-03-18 | 2013-07-23 | Apple Inc. | Memory device readout using multiple sense times |
US8400858B2 (en) | 2008-03-18 | 2013-03-19 | Apple Inc. | Memory device with reduced sense time readout |
US8498151B1 (en) | 2008-08-05 | 2013-07-30 | Apple Inc. | Data storage in analog memory cells using modified pass voltages |
US8949684B1 (en) | 2008-09-02 | 2015-02-03 | Apple Inc. | Segmented data storage |
US8169825B1 (en) | 2008-09-02 | 2012-05-01 | Anobit Technologies Ltd. | Reliable data storage in analog memory cells subjected to long retention periods |
US8482978B1 (en) | 2008-09-14 | 2013-07-09 | Apple Inc. | Estimation of memory cell read thresholds by sampling inside programming level distribution intervals |
US8239734B1 (en) | 2008-10-15 | 2012-08-07 | Apple Inc. | Efficient data storage in storage device arrays |
US8261159B1 (en) | 2008-10-30 | 2012-09-04 | Apple, Inc. | Data scrambling schemes for memory devices |
US8208304B2 (en) * | 2008-11-16 | 2012-06-26 | Anobit Technologies Ltd. | Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N |
US8174857B1 (en) | 2008-12-31 | 2012-05-08 | Anobit Technologies Ltd. | Efficient readout schemes for analog memory cell devices using multiple read threshold sets |
US8248831B2 (en) | 2008-12-31 | 2012-08-21 | Apple Inc. | Rejuvenation of analog memory cells |
US8924661B1 (en) | 2009-01-18 | 2014-12-30 | Apple Inc. | Memory system including a controller and processors associated with memory devices |
US8228701B2 (en) | 2009-03-01 | 2012-07-24 | Apple Inc. | Selective activation of programming schemes in analog memory cell arrays |
US8259506B1 (en) | 2009-03-25 | 2012-09-04 | Apple Inc. | Database of memory read thresholds |
US8832354B2 (en) | 2009-03-25 | 2014-09-09 | Apple Inc. | Use of host system resources by memory controller |
US8238157B1 (en) | 2009-04-12 | 2012-08-07 | Apple Inc. | Selective re-programming of analog memory cells |
US8479080B1 (en) | 2009-07-12 | 2013-07-02 | Apple Inc. | Adaptive over-provisioning in memory systems |
US8402217B2 (en) | 2009-09-15 | 2013-03-19 | Marvell International Ltd. | Implementing RAID in solid state memory |
US8988800B1 (en) | 2009-09-15 | 2015-03-24 | Marvell International Ltd. | Error correction for storage devices |
US8495465B1 (en) | 2009-10-15 | 2013-07-23 | Apple Inc. | Error correction coding over multiple memory pages |
US8677054B1 (en) | 2009-12-16 | 2014-03-18 | Apple Inc. | Memory management schemes for non-volatile memory devices |
US8694814B1 (en) | 2010-01-10 | 2014-04-08 | Apple Inc. | Reuse of host hibernation storage space by memory controller |
US8677203B1 (en) | 2010-01-11 | 2014-03-18 | Apple Inc. | Redundant data storage schemes for multi-die memory systems |
JP2011233186A (ja) * | 2010-04-23 | 2011-11-17 | Toshiba Corp | ディスク記憶装置及びデータ復元方法 |
US8694853B1 (en) | 2010-05-04 | 2014-04-08 | Apple Inc. | Read commands for reading interfering memory cells |
US8572423B1 (en) | 2010-06-22 | 2013-10-29 | Apple Inc. | Reducing peak current in memory systems |
US8514630B2 (en) | 2010-07-09 | 2013-08-20 | Sandisk Technologies Inc. | Detection of word-line leakage in memory arrays: current based approach |
US8432732B2 (en) | 2010-07-09 | 2013-04-30 | Sandisk Technologies Inc. | Detection of word-line leakage in memory arrays |
US8595591B1 (en) | 2010-07-11 | 2013-11-26 | Apple Inc. | Interference-aware assignment of programming levels in analog memory cells |
US9104580B1 (en) | 2010-07-27 | 2015-08-11 | Apple Inc. | Cache memory for hybrid disk drives |
US8767459B1 (en) | 2010-07-31 | 2014-07-01 | Apple Inc. | Data storage in analog memory cells across word lines using a non-integer number of bits per cell |
US8856475B1 (en) | 2010-08-01 | 2014-10-07 | Apple Inc. | Efficient selection of memory blocks for compaction |
US8493781B1 (en) | 2010-08-12 | 2013-07-23 | Apple Inc. | Interference mitigation using individual word line erasure operations |
US8694854B1 (en) | 2010-08-17 | 2014-04-08 | Apple Inc. | Read threshold setting based on soft readout statistics |
US8832507B2 (en) * | 2010-08-23 | 2014-09-09 | Apple Inc. | Systems and methods for generating dynamic super blocks |
US9021181B1 (en) | 2010-09-27 | 2015-04-28 | Apple Inc. | Memory management for unifying memory cell conditions by using maximum time intervals |
US9727414B2 (en) | 2010-12-01 | 2017-08-08 | Seagate Technology Llc | Fractional redundant array of silicon independent elements |
WO2012073287A1 (en) * | 2010-12-01 | 2012-06-07 | Hitachi, Ltd. | Storage control apparatus and storage control method |
US8601313B1 (en) | 2010-12-13 | 2013-12-03 | Western Digital Technologies, Inc. | System and method for a data reliability scheme in a solid state memory |
US8615681B2 (en) | 2010-12-14 | 2013-12-24 | Western Digital Technologies, Inc. | System and method for maintaining a data redundancy scheme in a solid state memory in the event of a power loss |
US8601311B2 (en) | 2010-12-14 | 2013-12-03 | Western Digital Technologies, Inc. | System and method for using over-provisioned data capacity to maintain a data redundancy scheme in a solid state memory |
US9007836B2 (en) * | 2011-01-13 | 2015-04-14 | Kabushiki Kaisha Toshiba | Non-volatile semiconductor memory device |
US8578208B2 (en) * | 2011-01-13 | 2013-11-05 | Micron Technology, Inc. | Determining location of error detection data |
CN103415844B (zh) | 2011-01-18 | 2016-04-20 | 希捷科技有限公司 | 用于高级冗余信息计算的系统和方法 |
US8700950B1 (en) | 2011-02-11 | 2014-04-15 | Western Digital Technologies, Inc. | System and method for data error recovery in a solid state subsystem |
US8700951B1 (en) | 2011-03-09 | 2014-04-15 | Western Digital Technologies, Inc. | System and method for improving a data redundancy scheme in a solid state subsystem with additional metadata |
US8379454B2 (en) | 2011-05-05 | 2013-02-19 | Sandisk Technologies Inc. | Detection of broken word-lines in memory arrays |
KR20120129239A (ko) * | 2011-05-19 | 2012-11-28 | 삼성전자주식회사 | 비휘발성 메모리 장치, 이의 동작 방법, 및 이를 포함하는 메모리 시스템 |
US8726104B2 (en) | 2011-07-28 | 2014-05-13 | Sandisk Technologies Inc. | Non-volatile memory and method with accelerated post-write read using combined verification of multiple pages |
US8775901B2 (en) * | 2011-07-28 | 2014-07-08 | SanDisk Technologies, Inc. | Data recovery for defective word lines during programming of non-volatile memory arrays |
US8750042B2 (en) | 2011-07-28 | 2014-06-10 | Sandisk Technologies Inc. | Combined simultaneous sensing of multiple wordlines in a post-write read (PWR) and detection of NAND failures |
US9449692B2 (en) * | 2011-08-03 | 2016-09-20 | Micron Technology, Inc. | Functional data programming and reading in a memory |
KR20130031046A (ko) * | 2011-09-20 | 2013-03-28 | 삼성전자주식회사 | 플래시 메모리 장치 및 플래시 메모리 장치의 데이터 관리 방법 |
JP5768654B2 (ja) * | 2011-10-25 | 2015-08-26 | ソニー株式会社 | 記憶制御装置、記憶装置、情報処理システム、および、記憶制御方法 |
US8730722B2 (en) | 2012-03-02 | 2014-05-20 | Sandisk Technologies Inc. | Saving of data in cases of word-line to word-line short in memory arrays |
US9026887B2 (en) | 2012-03-15 | 2015-05-05 | Micron Technology, Inc. | Physical page, logical page, and codeword correspondence |
US20130304970A1 (en) * | 2012-04-20 | 2013-11-14 | Stec, Inc. | Systems and methods for providing high performance redundant array of independent disks in a solid-state device |
US9176812B1 (en) | 2012-05-22 | 2015-11-03 | Pmc-Sierra, Inc. | Systems and methods for storing data in page stripes of a flash drive |
US9021337B1 (en) | 2012-05-22 | 2015-04-28 | Pmc-Sierra, Inc. | Systems and methods for adaptively selecting among different error correction coding schemes in a flash drive |
US9021336B1 (en) | 2012-05-22 | 2015-04-28 | Pmc-Sierra, Inc. | Systems and methods for redundantly storing error correction codes in a flash drive with secondary parity information spread out across each page of a group of pages |
US9047214B1 (en) | 2012-05-22 | 2015-06-02 | Pmc-Sierra, Inc. | System and method for tolerating a failed page in a flash device |
US9021333B1 (en) | 2012-05-22 | 2015-04-28 | Pmc-Sierra, Inc. | Systems and methods for recovering data from failed portions of a flash drive |
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 |
KR101925383B1 (ko) | 2012-07-23 | 2018-12-05 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 데이터 관리 방법 |
US9111648B2 (en) * | 2012-08-28 | 2015-08-18 | Apple Inc. | Redundancy schemes for non-volatile memory based on physical memory layout |
US8972826B2 (en) | 2012-10-24 | 2015-03-03 | Western Digital Technologies, Inc. | Adaptive error correction codes for data storage systems |
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 |
US9026893B1 (en) * | 2012-12-13 | 2015-05-05 | Western Digital Technologies, Inc. | Dynamically assigning inactive pages not used in Reed-Solomon code in non-volatile solid-state storage array |
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 |
US9026757B2 (en) | 2013-01-25 | 2015-05-05 | Sandisk Technologies Inc. | Non-volatile memory programming data preservation |
US8913428B2 (en) | 2013-01-25 | 2014-12-16 | Sandisk Technologies Inc. | Programming non-volatile storage system with multiple memory die |
KR20140099689A (ko) * | 2013-02-04 | 2014-08-13 | 삼성전자주식회사 | 불휘발성 메모리 셀 어레이를 포함하는 반도체 메모리 장치 |
US8972776B2 (en) * | 2013-03-06 | 2015-03-03 | Seagate Technology, Llc | Partial R-block recycling |
US9478271B2 (en) * | 2013-03-14 | 2016-10-25 | Seagate Technology Llc | Nonvolatile memory data recovery after power failure |
US9208018B1 (en) | 2013-03-15 | 2015-12-08 | Pmc-Sierra, Inc. | Systems and methods for reclaiming memory for solid-state 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 |
US20140281802A1 (en) * | 2013-03-15 | 2014-09-18 | SEAKR Engineering, Inc. | Multi-dimensional error detection and correction memory and computing architecture |
US9081701B1 (en) | 2013-03-15 | 2015-07-14 | Pmc-Sierra, Inc. | Systems and methods for decoding data for solid-state memory |
US9009565B1 (en) * | 2013-03-15 | 2015-04-14 | Pmc-Sierra, Inc. | Systems and methods for mapping for solid-state memory |
US9053012B1 (en) | 2013-03-15 | 2015-06-09 | Pmc-Sierra, Inc. | Systems and methods for storing data for solid-state memory |
CA2812607A1 (en) * | 2013-04-02 | 2014-10-02 | Sunb Ub Moon | A multi-layer usb storage drive with physically separated secure storage layer and non secure storage layer, and with multiple layers |
JP2015018451A (ja) * | 2013-07-11 | 2015-01-29 | 株式会社東芝 | メモリコントローラ、記憶装置およびメモリ制御方法 |
CN105453053B (zh) | 2013-08-13 | 2018-10-09 | 英派尔科技开发有限公司 | 存储器系统 |
US9189332B1 (en) * | 2013-09-13 | 2015-11-17 | Seagate Technology Llc | Parity data in solid state memory |
US9424131B2 (en) | 2013-09-19 | 2016-08-23 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Spatially decoupled redundancy schemes for a solid state drive (SSD) |
US9411817B2 (en) * | 2013-09-23 | 2016-08-09 | Google Inc. | Programmatically choosing preferred storage parameters for files in large-scale distributed storage systems based on desired file reliability or availability |
US9165683B2 (en) | 2013-09-23 | 2015-10-20 | Sandisk Technologies Inc. | Multi-word line erratic programming detection |
JP6062060B2 (ja) * | 2013-10-11 | 2017-01-18 | 株式会社日立製作所 | ストレージ装置、ストレージシステム、及びストレージ装置制御方法 |
US9286176B1 (en) * | 2013-11-08 | 2016-03-15 | Western Digital Technologies, Inc. | Selective skipping of blocks in an SSD |
US9405480B2 (en) * | 2014-01-13 | 2016-08-02 | Seagate Technology Llc | Interleaving codewords over multiple flash planes |
US8949692B1 (en) | 2014-01-23 | 2015-02-03 | DSSD, Inc. | Method and system for service-aware parity placement in a storage system |
US9431052B2 (en) | 2014-06-26 | 2016-08-30 | Marvell World Trade Ltd. | Two dimensional magnetic recording systems, devices and methods |
US9460809B2 (en) | 2014-07-10 | 2016-10-04 | Sandisk Technologies Llc | AC stress mode to screen out word line to word line shorts |
US9514835B2 (en) | 2014-07-10 | 2016-12-06 | Sandisk Technologies Llc | Determination of word line to word line shorts between adjacent blocks |
US9443612B2 (en) | 2014-07-10 | 2016-09-13 | Sandisk Technologies Llc | Determination of bit line to low voltage signal shorts |
US9484086B2 (en) | 2014-07-10 | 2016-11-01 | Sandisk Technologies Llc | Determination of word line to local source line shorts |
US9202593B1 (en) | 2014-09-02 | 2015-12-01 | Sandisk Technologies Inc. | Techniques for detecting broken word lines in non-volatile memories |
US9240249B1 (en) | 2014-09-02 | 2016-01-19 | Sandisk Technologies Inc. | AC stress methods to screen out bit line defects |
US9449694B2 (en) | 2014-09-04 | 2016-09-20 | Sandisk Technologies Llc | Non-volatile memory with multi-word line select for defect detection operations |
KR102330391B1 (ko) | 2014-09-11 | 2021-11-24 | 삼성전자주식회사 | 저장 장치 및 그것을 포함하는 데이터 저장 시스템의 가비지 컬렉션 방법 |
US9858325B1 (en) * | 2014-09-29 | 2018-01-02 | Amazon Technologies, Inc. | Consolidating data in storage host groupings |
TWI539282B (zh) * | 2014-10-13 | 2016-06-21 | 慧榮科技股份有限公司 | 非揮發性儲存裝置與控制器 |
US9619326B2 (en) * | 2014-12-09 | 2017-04-11 | Western Digital Technologies, Inc. | Methods and systems for implementing redundancy in memory controllers |
WO2016092364A1 (en) | 2014-12-09 | 2016-06-16 | Marvell Israel (M.I.S.L.) Ltd. | System and method for performing simultaneous read and write operations in memory |
WO2016113831A1 (ja) * | 2015-01-13 | 2016-07-21 | 株式会社日立製作所 | ストレージシステム、及び、記憶制御方法 |
WO2016174521A1 (en) * | 2015-04-30 | 2016-11-03 | Marvell Israel (M-I.S.L.) Ltd. | Multiple read and write port memory |
US11403173B2 (en) | 2015-04-30 | 2022-08-02 | Marvell Israel (M.I.S.L) Ltd. | Multiple read and write port memory |
US9857986B2 (en) | 2015-06-30 | 2018-01-02 | International Business Machines Corporation | Wear leveling of a memory array |
US9659666B2 (en) | 2015-08-31 | 2017-05-23 | Sandisk Technologies Llc | Dynamic memory recovery at the sub-block level |
US9569306B1 (en) * | 2015-12-18 | 2017-02-14 | International Business Machines Corporation | Recovery of multi-page failures in non-volatile memory system |
US10198315B2 (en) * | 2016-02-29 | 2019-02-05 | Sandisk Technologies Llc | Non-volatile memory with corruption recovery |
US10198313B2 (en) | 2016-03-11 | 2019-02-05 | Western Digital Technologies, Inc. | Redundancy of error correction encoded data in a storage system |
US9946469B2 (en) | 2016-03-21 | 2018-04-17 | Smart Modular Technologies, Inc. | Solid state storage system with latency management mechanism and method of operation thereof |
US9996417B2 (en) | 2016-04-12 | 2018-06-12 | Apple Inc. | Data recovery in memory having multiple failure modes |
KR102580123B1 (ko) * | 2016-05-03 | 2023-09-20 | 삼성전자주식회사 | Raid 스토리지 장치 및 그것의 관리 방법 |
KR102573301B1 (ko) * | 2016-07-15 | 2023-08-31 | 삼성전자 주식회사 | Raid 리커버리를 수행하는 메모리 시스템 및 그 동작방법 |
US9996285B2 (en) * | 2016-11-08 | 2018-06-12 | SK Hynix Inc. | Cyclically interleaved XOR array for error recovery |
US10445199B2 (en) * | 2016-12-22 | 2019-10-15 | Western Digital Technologies, Inc. | Bad page management in storage devices |
CN106873912B (zh) * | 2017-02-16 | 2020-02-07 | 苏州浪潮智能科技有限公司 | Tlc芯片固态硬盘的动态分区存储方法及装置、系统 |
US10579471B2 (en) * | 2017-03-02 | 2020-03-03 | Toshiba Memory Corporation | Storage device and error correction method for storage device |
CN108958961B (zh) * | 2017-05-22 | 2021-11-30 | 上海宝存信息科技有限公司 | 数据储存装置以及数据错误管理方法 |
US10474527B1 (en) * | 2017-06-30 | 2019-11-12 | Seagate Technology Llc | Host-assisted error recovery |
US10585749B2 (en) * | 2017-08-10 | 2020-03-10 | Samsung Electronics Co., Ltd. | System and method for distributed erasure coding |
US10365967B2 (en) | 2017-08-23 | 2019-07-30 | Toshiba Memory Corporation | On the fly raid parity calculation |
CN109600242A (zh) * | 2017-09-30 | 2019-04-09 | 美的智慧家居科技有限公司 | 用于家电配网的管理方法、家电、客户端及系统 |
US10496472B2 (en) * | 2017-10-18 | 2019-12-03 | Western Digital Technologies, Inc. | Combined XOR buffer memory for multiple open blocks of non-volatile memory |
US10838805B2 (en) * | 2018-02-23 | 2020-11-17 | Micron Technology, Inc. | Generating parity data based on a characteristic of a stream of data |
US10768856B1 (en) * | 2018-03-12 | 2020-09-08 | Amazon Technologies, Inc. | Memory access for multiple circuit components |
US10755787B2 (en) | 2018-06-28 | 2020-08-25 | Apple Inc. | Efficient post programming verification in a nonvolatile memory |
US10762967B2 (en) | 2018-06-28 | 2020-09-01 | Apple Inc. | Recovering from failure in programming a nonvolatile memory |
JP2020095548A (ja) * | 2018-12-13 | 2020-06-18 | 株式会社日立製作所 | 不揮発性メモリドライブを備えたシステム |
US10936455B2 (en) | 2019-02-11 | 2021-03-02 | Apple Inc. | Recovery of data failing due to impairment whose severity depends on bit-significance value |
US10915394B1 (en) | 2019-09-22 | 2021-02-09 | Apple Inc. | Schemes for protecting data in NVM device using small storage footprint |
US11138071B1 (en) | 2020-06-22 | 2021-10-05 | Western Digital Technologies, Inc. | On-chip parity buffer management for storage block combining in non-volatile memory |
CN111897746B (zh) * | 2020-07-31 | 2023-06-23 | 广东昆仑信息科技有限公司 | 一种机房设备编码方法及系统 |
KR20220081610A (ko) | 2020-12-09 | 2022-06-16 | 에스케이하이닉스 주식회사 | 컨트롤러 및 상기 컨트롤러를 포함하는 메모리 시스템 |
US11556416B2 (en) | 2021-05-05 | 2023-01-17 | Apple Inc. | Controlling memory readout reliability and throughput by adjusting distance between read thresholds |
US11847342B2 (en) | 2021-07-28 | 2023-12-19 | Apple Inc. | Efficient transfer of hard data and confidence levels in reading a nonvolatile memory |
US11550657B1 (en) | 2021-09-01 | 2023-01-10 | Apple Inc. | Efficient programming schemes in a nonvolatile memory |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5737742A (en) * | 1994-06-29 | 1998-04-07 | Hitachi, Ltd. | Memory system using flash memory and method of controlling the memory system |
CN1535422A (zh) * | 2001-07-26 | 2004-10-06 | 在无线通信设备中更新持久数据的系统和方法 | |
CN1687904A (zh) * | 2005-06-16 | 2005-10-26 | 北京航空航天大学 | 智能卡存储环境的控制方法 |
US20060195654A1 (en) * | 2005-02-28 | 2006-08-31 | Challener David C | Hard disk drive with write-only region |
US20090044078A1 (en) * | 2007-08-08 | 2009-02-12 | Andrew Vogan | Ecc functional block placement in a multi-channel mass storage device |
US20090228762A1 (en) * | 2008-03-07 | 2009-09-10 | Kabushiki Kaisha Toshiba | Inforamtion Precessing Apparatus and Non-Volatile Semiconductor Memory Drive |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8078794B2 (en) * | 2000-01-06 | 2011-12-13 | Super Talent Electronics, Inc. | Hybrid SSD using a combination of SLC and MLC flash memory arrays |
KR100380024B1 (ko) * | 2001-01-04 | 2003-04-18 | 삼성전자주식회사 | 리던던시를 구비하는 반도체 메모리 장치 |
US7664903B2 (en) * | 2002-02-25 | 2010-02-16 | Solid Access Technologies LLC | Control unit with PCI and SCSI buses and computing system with electronic semiconductor disk |
US7188228B1 (en) * | 2003-10-01 | 2007-03-06 | Sandisk Corporation | Hybrid mapping implementation within a non-volatile memory system |
WO2007058617A1 (en) * | 2005-11-17 | 2007-05-24 | Chee Keng Chang | A controller for non-volatile memories, and methods of operating the memory controller |
US8935302B2 (en) * | 2006-12-06 | 2015-01-13 | Intelligent Intellectual Property Holdings 2 Llc | Apparatus, system, and method for data block usage information synchronization for a non-volatile storage volume |
US8185713B2 (en) * | 2007-09-19 | 2012-05-22 | Marvell World Travel Ltd. | Flexible sequencer design architecture for solid state memory controller |
US8392687B2 (en) * | 2009-01-21 | 2013-03-05 | Micron Technology, Inc. | Solid state memory formatting |
JP5185156B2 (ja) * | 2009-02-24 | 2013-04-17 | 株式会社東芝 | メモリコントローラおよび半導体記憶装置 |
JP5404804B2 (ja) * | 2009-05-25 | 2014-02-05 | 株式会社日立製作所 | ストレージサブシステム |
US8751860B2 (en) * | 2009-06-03 | 2014-06-10 | Micron Technology, Inc. | Object oriented memory in solid state devices |
TWI400707B (zh) * | 2009-07-09 | 2013-07-01 | Phison Electronics Corp | 快閃記憶體邏輯區塊管理方法及其控制電路與儲存系統 |
US8447915B2 (en) * | 2009-07-23 | 2013-05-21 | Hitachi, Ltd. | Flash memory device for allocating physical blocks to logical blocks based on an erase count |
JP5342014B2 (ja) * | 2009-08-31 | 2013-11-13 | 株式会社日立製作所 | 複数のフラッシュパッケージを有するストレージシステム |
US8402217B2 (en) | 2009-09-15 | 2013-03-19 | Marvell International Ltd. | Implementing RAID in solid state memory |
-
2010
- 2010-09-14 US US12/881,881 patent/US8402217B2/en active Active
- 2010-09-15 CN CN201010285233.2A patent/CN102023815B/zh active Active
-
2013
- 2013-03-15 US US13/844,302 patent/US8725944B2/en active Active
-
2014
- 2014-04-23 US US14/260,237 patent/US8977813B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5737742A (en) * | 1994-06-29 | 1998-04-07 | Hitachi, Ltd. | Memory system using flash memory and method of controlling the memory system |
CN1535422A (zh) * | 2001-07-26 | 2004-10-06 | 在无线通信设备中更新持久数据的系统和方法 | |
US20060195654A1 (en) * | 2005-02-28 | 2006-08-31 | Challener David C | Hard disk drive with write-only region |
CN1687904A (zh) * | 2005-06-16 | 2005-10-26 | 北京航空航天大学 | 智能卡存储环境的控制方法 |
US20090044078A1 (en) * | 2007-08-08 | 2009-02-12 | Andrew Vogan | Ecc functional block placement in a multi-channel mass storage device |
US20090228762A1 (en) * | 2008-03-07 | 2009-09-10 | Kabushiki Kaisha Toshiba | Inforamtion Precessing Apparatus and Non-Volatile Semiconductor Memory Drive |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103092765B (zh) * | 2012-12-31 | 2015-08-05 | 记忆科技(深圳)有限公司 | 固态存储系统、装置及数据写入方法 |
CN105637490A (zh) * | 2013-09-03 | 2016-06-01 | 桑迪士克科技股份有限公司 | 用于在闪速存储器装置之间迁移数据的方法和系统 |
CN105637490B (zh) * | 2013-09-03 | 2019-07-05 | 桑迪士克科技有限责任公司 | 用于在闪速存储器装置之间迁移数据的方法和系统 |
CN105612500A (zh) * | 2013-09-06 | 2016-05-25 | 西部数据技术公司 | 提供硬件中的数据帧段的选择性合并的高性能系统 |
CN105612500B (zh) * | 2013-09-06 | 2019-04-12 | 西部数据技术公司 | 提供硬件中的数据帧段的选择性合并的高性能系统 |
CN105556480A (zh) * | 2013-09-16 | 2016-05-04 | 上海宝存信息科技有限公司 | 在基于闪存的存储系统中构建raid的方法及系统 |
WO2015035536A1 (zh) * | 2013-09-16 | 2015-03-19 | 上海宝存信息科技有限公司 | 在基于闪存的存储系统中构建raid的方法及系统 |
CN105556480B (zh) * | 2013-09-16 | 2017-06-30 | 上海宝存信息科技有限公司 | 在基于闪存的存储系统中构建raid的方法及系统 |
US9720770B2 (en) | 2013-09-16 | 2017-08-01 | Shannon Systems Ltd. | Method for calculating raids parity code on interleaving and out of order data streams, and a system using the same |
CN104965768B (zh) * | 2014-01-23 | 2019-01-18 | Emc知识产权控股有限公司 | 用于存储系统中的服务感知数据放置的方法和系统 |
CN104965768A (zh) * | 2014-01-23 | 2015-10-07 | Dssd股份有限公司 | 用于存储系统中的服务感知数据放置的方法和系统 |
CN106796544A (zh) * | 2014-10-03 | 2017-05-31 | 新加坡科技研究局 | 主动存储单元和阵列 |
CN107408019A (zh) * | 2015-03-27 | 2017-11-28 | 英特尔公司 | 用于提高对非易失性存储器中的缺陷的抗干扰性的方法和装置 |
CN107408019B (zh) * | 2015-03-27 | 2021-07-20 | 英特尔公司 | 用于提高对非易失性存储器中的缺陷的抗干扰性的方法和装置 |
CN107807788A (zh) * | 2016-09-09 | 2018-03-16 | 北京忆恒创源科技有限公司 | 多平面闪存的数据组织方法与装置 |
CN107807788B (zh) * | 2016-09-09 | 2021-06-15 | 北京忆恒创源科技有限公司 | 块条带构造方法、构造装置及固态存储设备 |
CN106776110A (zh) * | 2016-12-29 | 2017-05-31 | 忆正科技(武汉)有限公司 | 一种用于固态存储读策略的控制方法 |
CN106980594A (zh) * | 2017-04-06 | 2017-07-25 | 上海航天测控通信研究所 | 一种低成本高性能空间用计算机 |
CN107273304A (zh) * | 2017-05-24 | 2017-10-20 | 记忆科技(深圳)有限公司 | 一种提高固态硬盘顺序读性能的方法及固态硬盘 |
CN109144407A (zh) * | 2017-06-16 | 2019-01-04 | 希捷科技有限公司 | 用于监测存储器以便引退的系统和方法 |
CN109144407B (zh) * | 2017-06-16 | 2021-12-21 | 希捷科技有限公司 | 用于监测存储器以便引退的系统和方法 |
CN107632947A (zh) * | 2017-09-12 | 2018-01-26 | 记忆科技(深圳)有限公司 | 一种智能raid数据保护系统 |
CN109324756A (zh) * | 2018-08-22 | 2019-02-12 | 华中科技大学 | 一种基于固态盘阵列的数据安全删除方法 |
CN113168866A (zh) * | 2021-03-05 | 2021-07-23 | 长江存储科技有限责任公司 | 用于独立磁盘冗余阵列条带化以防止编程故障的方法及其装置 |
Also Published As
Publication number | Publication date |
---|---|
CN102023815B (zh) | 2016-01-20 |
US8977813B2 (en) | 2015-03-10 |
US20140237287A1 (en) | 2014-08-21 |
US8725944B2 (en) | 2014-05-13 |
US20130227202A1 (en) | 2013-08-29 |
US8402217B2 (en) | 2013-03-19 |
US20110066793A1 (en) | 2011-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102023815B (zh) | 在固态存储器中实现raid | |
US8327224B2 (en) | Data recovery in a solid state storage system | |
JP5516924B2 (ja) | ストライプに基づく不揮発性多値メモリ操作 | |
CN101183563B (zh) | 包括闪存的存储器系统和操作该系统的方法 | |
US8266501B2 (en) | Stripe based memory operation | |
US9430329B2 (en) | Data integrity management in a data storage device | |
US11531590B2 (en) | Method and system for host-assisted data recovery assurance for data center storage device architectures | |
US20110029716A1 (en) | System and method of recovering data in a flash storage system | |
MX2012010944A (es) | Detección de distribución de paridad no regulada vía etiqueta de metadatos. | |
WO2008091590A1 (en) | Programming management data for nand memories | |
US20090150596A1 (en) | Device identifiers for nonvolatile memory modules | |
JP6524126B2 (ja) | メモリ制御装置及びメモリ制御方法 | |
US20220254435A1 (en) | Semiconductor storage device and error processing method for defective memory cell in the device | |
CN117632579B (zh) | 存储器控制方法和存储器存储装置 | |
US20220179564A1 (en) | Controller and memory system including the same | |
CN119025020A (zh) | 数据存取管理的方法、存储器装置的存储器控制器、存储器装置以及电子装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200422 Address after: Singapore City Patentee after: Marvell Asia Pte. Ltd. Address before: Ford street, Grand Cayman, Cayman Islands Patentee before: Kaiwei international Co. Effective date of registration: 20200422 Address after: Ford street, Grand Cayman, Cayman Islands Patentee after: Kaiwei international Co. Address before: Hamilton, Bermuda Patentee before: Marvell International Ltd. Effective date of registration: 20200422 Address after: Hamilton, Bermuda Patentee after: Marvell International Ltd. Address before: Babado J San Michael Patentee before: MARVELL WORLD TRADE Ltd. |
|
TR01 | Transfer of patent right |