CN102077176A - 存储器系统的回拷优化 - Google Patents

存储器系统的回拷优化 Download PDF

Info

Publication number
CN102077176A
CN102077176A CN2009801252990A CN200980125299A CN102077176A CN 102077176 A CN102077176 A CN 102077176A CN 2009801252990 A CN2009801252990 A CN 2009801252990A CN 200980125299 A CN200980125299 A CN 200980125299A CN 102077176 A CN102077176 A CN 102077176A
Authority
CN
China
Prior art keywords
data page
changed
data
metadata
treated
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
Application number
CN2009801252990A
Other languages
English (en)
Other versions
CN102077176B (zh
Inventor
尼尔·雅各布·瓦卡拉特
马克·阿兰·赫尔姆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Computer Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Apple Computer Inc filed Critical Apple Computer Inc
Publication of CN102077176A publication Critical patent/CN102077176A/zh
Application granted granted Critical
Publication of CN102077176B publication Critical patent/CN102077176B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding 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/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's

Abstract

在针对非易失性存储器子系统的回拷或读取操作中,数据页改变指示符被用于管理数据页在非易失性存储器中的寄存器与非易失性存储器外部的控制器之间的传送。

Description

存储器系统的回拷优化
技术领域
本发明总地涉及存储器系统。
背景技术
闪存是一类电可擦除可编程只读存储器(EEPROM)。因为闪存是非易失性的并且相对密集,所以它们被用于在手持式计算机、移动电话、数字相机、便携式音乐播放器以及许多其他不适合用其他存储方案(例如磁盘)的设备中存储文件和其他持久性对象。当闪存中存储的数据被处理时,数据页被从闪存中读出被存储在寄存器中。寄存器内容被传送到该非易失性存储器外部的控制器以便处理。经处理的数据页(data page)被放回寄存器中,以便经处理的数据页可被写回到闪存。
发明内容
在针对非易失性存储器子系统的回拷(copyback)或读取操作中,数据页改变指示符(indicator)被用于管理数据页在非易失性存储器中的寄存器与非易失性存储器外部的控制器之间的传送。
附图说明
图1A是用于实现优化的回拷过程的一种示例性存储器系统的框图。
图1B是用于实现优化的回拷过程的另一示例性存储器系统的框图。
图2是用于计算和存储被图1A和1B的存储器系统使用的数据改变指示符的示例性优化回拷过程200的流程图。
图3A-3C是由图1A和1B的存储器系统实现的示例性优化回拷过程的流程图。
图4是由图1A和1B的存储器系统实现的示例性优化读取操作的流程图。
图5示出了图3A-3C的回拷过程所使用的示例性数据结构。
具体实施方式
存储器子系统的示例
图1A是用于实现优化的回拷过程的一种示例性存储器系统100的框图。在一些实现方式中,系统100可包括通过外部总线122(例如,开放式NAND闪存接口(ONFI),ATA)耦合到主机设备124的存储器子系统102。主机设备124可以是任何电子设备,包括但不限于智能电话、媒体播放器、文本消息传递设备、便携式计算机、固态驱动器、数字相机等等。存储器子系统102可以是任何非易失性存储器子系统(例如,管理型NAND(managed NAND))。
主机设备124可包括片上系统(SoC)126和易失性存储器128。SoC126可包括用于与存储器子系统102交互的硬件和软件,所述交互例如是发送由在主机设备124上运行的应用做出的读取和写入请求。
存储器子系统102可包括非易失性存储器104(也称为“原始存储器”)和外部控制器116。存储器104可包括存储单元阵列106、内部状态机108、存储器寄存器110以及数据改变指示符(data change indicator,DCI)130。外部控制器116可包括处理器118、易失性存储器114以及差错校正码(ECC)引擎120。存储器子系统102的其他配置也是可能的。例如,在存储单元阵列106与存储器寄存器110之间的数据路径中可包括缓存寄存器,以使得内部状态机可以在通过内部总线112向控制器116传送当前页的同时从存储单元阵列106读取下一数据页。
图1B是用于实现优化的回拷过程的另一示例性存储器系统130的框图。系统130只示出了存储器子系统102,其操作已参考图1A描述。
回拷操作
回拷可以是用于将数据从一页移动到另一页的存储器子系统命令。回拷可用于损耗均衡(wear leveling)和其他非易失性存储器管理操作中。在典型的回拷操作中,一数据页被内部状态机从存储单元阵列106中读取并被存储在存储器寄存器110中。外部控制器116从存储器寄存器110中读取或钟控出该数据页,以使得处理器118可以对该数据页执行期望的操作(例如,ECC操作)。经处理的数据页可以被控制器116写回到存储器寄存器110。内部状态机108可以将存储器寄存器110的内容写入到存储单元阵列106中的新数据页中。通过避免将存储器寄存器110的全部内容传送到外部控制器116,可以减少处理时间和功率消耗。
用于写入新数据页的示例性过程
图2是用于计算和存储被图1A和1B的存储器系统使用的数据改变指示符的示例性优化回拷过程200的流程图。在一些实现方式中,过程200可以在新的数据页被传送到存储器子系统的存储器寄存器中时(202)开始。可以为该数据页计算DCI并将其存储在存储器子系统中(204)。数据改变指示符的一些示例可包括差错检测码(EDC),包括但不限于:校验和、汉明码、奇偶位、循环冗余校验(CRC)、极性符号反转、Turbo码,等等。EDC也可以是诸如Reed-Solomon码、Reed-Muller码、二进制Golay码和低密度奇偶校验码之类的ECC的一部分。在计算和存储DCI之后,可将寄存器内容写入到非易失性存储器(206)。DCI可用于参考图3A-3C描述的优化回拷过程。
示例性优化回拷过程
图3A-3C是由图1A和1B的存储器系统实现的示例性优化回拷过程的流程图。在一些实现方式中,过程300可以通过从非易失性存储器(例如,存储单元阵列106)中读取数据页并将该数据页存储在存储器寄存器(例如,寄存器110)中(302)而开始。可以为存储器寄存器中的数据页核对DCI(例如DCI 130)(304)。在一些实现方式中,DCI可以预先在该数据页首次被写入到非易失性存储器(例如,利用过程200)时被计算并存储在存储器子系统中。在其他实现方式中,DCI可以作为单独的操作或者作为读取操作的一部分“实时”计算。存储器子系统可以向外部控制器(例如,外部控制器116)报告读取操作已完成(306)。
如果寄存器中的数据页的DCI表明该数据页已改变(308),则可将该数据页传送到外部控制器(310),可以为该数据页计算ECC(312),并且可以在外部控制器中校正该数据页的ECC信息(314)。可以将数据页和相关联的ECC传送回存储器寄存器(316)。可以为存储器寄存器中的数据页计算新的DCI(318)。
如果寄存器中的数据页的DCI表明该数据页没有改变(308),则为与该数据页相关联的新的元数据计算ECC(320)。可以将新元数据和相关联的ECC传送到存储器寄存器(322)。可以为存储器寄存器中的元数据计算新的DCI(324)。可以将存储器寄存器内容写入到非易失性存储器中的新数据页(326)。
优化读取操作
图4是由图1A和1B的存储器系统实现的示例性优化读取操作的流程图。在一些实现方式中,过程400可以通过从非易失性存储器中读取数据页并且将该数据页存储在存储器寄存器中(402)而开始。与该数据页相关联的预先计算的DCI可以被从存储器子系统中的一存储位置钟控到存储器寄存器中并被核对(404)。也可以“实时”计算DCI。可以读取DCI的状态以判定该数据页是否已改变(406)。
如果该数据页已改变(408),则可以计算与该数据页相关联的新元数据的ECC并将其与该新元数据一起传送到存储器寄存器(412)。可以为存储器寄存器中的元数据计算新的DCI并且可将寄存器内容写入到非易失性存储器中的新数据页(414)。
如果该数据页没有改变(408),则可将存储器寄存器内容传送到外部控制器并且外部控制器可以计算ECC(410)。外部控制器可以计算与该数据页相关联的新元数据的ECC并将其与新元数据一起传送到存储器寄存器(412)。可以为存储器寄存器中的元数据计算新的DCI并且可将寄存器内容写入到非易失性存储器中的新数据页(414)。
示例性数据结构
图5示出了图3A-3C的回拷过程所使用的示例性数据结构。在所示出的示例中,非易失性存储器中的数据页500包括元数据502、元数据ECC504、数据506和数据ECC 508。如果数据没有改变,则只有元数据502和元数据ECC 504被从寄存器传送到外部控制器510以便处理。经处理的元数据502和元数据ECC 504被传送回存储器子系统并存储在存储器寄存器中。该数据页可被写入到非易失性存储器(例如,存储单元阵列)中的新数据页。
已经描述了若干实现方式。然而,应理解,可以进行各种修改。例如,一个或多个实现方式的要素可以被组合、删除、修改或补充以形成其他实现方式。作为另一示例,附图中示出的逻辑流程并不要求按所示出的特定顺序或者先后顺序才能实现期望的结果。此外,可以提供其他步骤,或者可以从所描述的流程中去除步骤,并且可以添加其他组件,或从所描述的系统中去除组件。因此,其他实现方式在权利要求的范围内。

Claims (17)

1.一种方法,包括:
从存储器子系统的非易失性存储器获得数据页;
判定所述数据页是否改变了;以及
如果所述数据页改变了,
则将所述数据页发送到控制器以便处理;
如果所述数据页未改变,
则将与所述数据页相关联的元数据发送到所述控制器以便处理。
2.如权利要求1所述的方法,其中判定所述数据页是否改变了还包括:
读取所述数据页的数据改变指示符。
3.如权利要求2所述的方法,其中所述数据改变指示符与差错检测码相关联。
4.如权利要求1所述的方法,其中判定所述数据页是否改变了还包括:
为所述数据页计算数据改变指示符;以及
基于所述数据改变指示符来判定所述数据页是否改变了。
5.一种系统,包括:
适合于耦合到控制器的接口;
非易失性存储器;
耦合到所述非易失性存储器和所述接口的处理器,该处理器可操作以用于从所述非易失性存储器获得数据页;
判定所述数据页是否改变了;以及
如果所述数据页改变了,
则将所述数据页通过所述接口发送到所述控制器以便处理;
如果所述数据页未改变,
则将与所述数据页相关联的元数据通过所述接口发送到所述控制器以便处理。
6.如权利要求5所述的系统,其中判定所述数据页是否改变了还包括:
读取所述数据页的数据改变指示符。
7.如权利要求6所述的系统,其中所述数据改变指示符与差错检测码相关联。
8.如权利要求5所述的系统,其中判定所述数据页是否改变了还包括:
为所述数据页计算数据改变指示符;以及
基于所述数据改变指示符来判定所述数据页是否改变了。
9.一种方法,包括:
从耦合到控制器的存储器子系统的非易失性存储器获得数据页和相关联的元数据;
将所述数据页存储在所述存储器子系统的寄存器中;
将所述数据页和相关联的元数据从所述寄存器发送到所述控制器以便处理;
从所述控制器接收经处理的数据页和相关联的元数据;
判定所述经处理的数据页是否改变了;
如果所述经处理的数据页改变了,
则将所述经处理的数据页和相关联的元数据写入到所述存储器子系统中的所述寄存器;
如果所述经处理的数据页未改变,
则将所述相关联的元数据写入到所述存储器子系统中的所述寄存器;以及
将所述寄存器的内容写入到所述非易失性存储器。
10.如权利要求9所述的方法,其中判定所述经处理的数据页是否改变了还包括:
读取所述经处理的数据页的数据改变指示符。
11.如权利要求10所述的方法,其中所述数据改变指示符与差错检测码相关联。
12.如权利要求9所述的方法,其中判定所述经处理的数据页是否改变了还包括:
为所述经处理的数据页计算数据改变指示符;以及
基于所述数据改变指示符来判定所述经处理的数据页是否改变了。
13.一种系统,包括:
适合于耦合到控制器的接口;
非易失性存储器;
耦合到所述非易失性存储器和所述接口的处理器,该处理器可操作以用于从耦合到所述控制器的存储器子系统的非易失性存储器获得数据页和相关联的元数据;
将所述数据页存储在所述存储器系统的寄存器中;
将所述数据页和相关联的元数据从所述寄存器通过所述接口发送到所述控制器以便处理;
通过所述接口从所述控制器接收经处理的数据页和相关联的元数据;
判定所述经处理的数据页是否改变了;
如果所述经处理的数据页改变了,
则将所述经处理的数据页和相关联的元数据传送到所述存储器子系统中的所述寄存器;
如果所述经处理的数据页未改变,
则将经处理的元数据传送到所述存储器子系统中的所述寄存器;以及
将所述寄存器的内容写入到所述非易失性存储器。
14.如权利要求13所述的系统,其中判定所述经处理的数据页是否改变了还包括:
读取所述经处理的数据页的数据改变指示符。
15.如权利要求14所述的系统,其中所述数据改变指示符与差错检测码相关联。
16.如权利要求13所述的系统,其中判定所述经处理的数据页是否改变了还包括:
为所述经处理的数据页计算数据改变指示符;以及
基于所述数据改变指示符来判定所述经处理的数据页是否改变了。
17.一种系统,包括:
用于从存储器子系统的非易失性存储器获得数据页的装置;
用于判定所述数据页是否改变了的装置;以及
如果所述数据页改变了,
用于将所述数据页发送到控制器以便处理的装置;
如果所述数据页未改变,
用于将与所述数据页相关联的元数据发送到所述控制器以便处理的装置。
CN2009801252990A 2008-04-30 2009-04-01 存储器系统的回拷优化 Expired - Fee Related CN102077176B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US4933008P 2008-04-30 2008-04-30
US61/049,330 2008-04-30
US12/193,638 2008-08-18
US12/193,638 US8185706B2 (en) 2008-04-30 2008-08-18 Copyback optimization for memory system
PCT/US2009/039160 WO2009134576A1 (en) 2008-04-30 2009-04-01 Copyback optimization for memory system

Publications (2)

Publication Number Publication Date
CN102077176A true CN102077176A (zh) 2011-05-25
CN102077176B CN102077176B (zh) 2013-06-19

Family

ID=40801795

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009801252990A Expired - Fee Related CN102077176B (zh) 2008-04-30 2009-04-01 存储器系统的回拷优化

Country Status (9)

Country Link
US (2) US8185706B2 (zh)
EP (2) EP2407883B1 (zh)
JP (1) JP5192587B2 (zh)
KR (2) KR101471262B1 (zh)
CN (1) CN102077176B (zh)
AT (1) ATE535866T1 (zh)
ES (1) ES2378371T3 (zh)
HK (3) HK1166390A1 (zh)
WO (1) WO2009134576A1 (zh)

Families Citing this family (80)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8762620B2 (en) 2007-12-27 2014-06-24 Sandisk Enterprise Ip Llc Multiprocessor storage controller
US8443263B2 (en) * 2009-12-30 2013-05-14 Sandisk Technologies Inc. Method and controller for performing a copy-back operation
US8365041B2 (en) 2010-03-17 2013-01-29 Sandisk Enterprise Ip Llc MLC self-raid flash data protection scheme
KR101844346B1 (ko) * 2010-11-05 2018-04-02 삼성전자주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
US8910020B2 (en) 2011-06-19 2014-12-09 Sandisk Enterprise Ip Llc Intelligent bit recovery for flash memory
US8909982B2 (en) 2011-06-19 2014-12-09 Sandisk Enterprise Ip Llc System and method for detecting copyback programming problems
US9058289B2 (en) 2011-11-07 2015-06-16 Sandisk Enterprise Ip Llc Soft information generation for memory systems
US9048876B2 (en) 2011-11-18 2015-06-02 Sandisk Enterprise Ip Llc Systems, methods and devices for multi-tiered error correction
US8924815B2 (en) 2011-11-18 2014-12-30 Sandisk Enterprise Ip Llc Systems, methods and devices for decoding codewords having multiple parity segments
US8954822B2 (en) 2011-11-18 2015-02-10 Sandisk Enterprise Ip Llc Data encoder and decoder using memory-specific parity-check matrix
US9699263B1 (en) 2012-08-17 2017-07-04 Sandisk Technologies Llc. Automatic read and write acceleration of data accessed by virtual machines
US9501398B2 (en) 2012-12-26 2016-11-22 Sandisk Technologies Llc Persistent storage device with NVRAM for staging writes
US9612948B2 (en) 2012-12-27 2017-04-04 Sandisk Technologies Llc Reads and writes between a contiguous data block and noncontiguous sets of logical address blocks in a persistent storage device
US9239751B1 (en) 2012-12-27 2016-01-19 Sandisk Enterprise Ip Llc Compressing data from multiple reads for error control management in memory systems
US9003264B1 (en) 2012-12-31 2015-04-07 Sandisk Enterprise Ip Llc Systems, methods, and devices for multi-dimensional flash RAID data protection
US9454420B1 (en) 2012-12-31 2016-09-27 Sandisk Technologies Llc Method and system of reading threshold voltage equalization
US9329928B2 (en) 2013-02-20 2016-05-03 Sandisk Enterprise IP LLC. Bandwidth optimization in a non-volatile memory system
US9214965B2 (en) 2013-02-20 2015-12-15 Sandisk Enterprise Ip Llc Method and system for improving data integrity in non-volatile storage
US9870830B1 (en) 2013-03-14 2018-01-16 Sandisk Technologies Llc Optimal multilevel sensing for reading data from a storage medium
US9244763B1 (en) 2013-03-15 2016-01-26 Sandisk Enterprise Ip Llc System and method for updating a reading threshold voltage based on symbol transition information
US9009576B1 (en) 2013-03-15 2015-04-14 Sandisk Enterprise Ip Llc Adaptive LLR based on syndrome weight
US9092350B1 (en) 2013-03-15 2015-07-28 Sandisk Enterprise Ip Llc Detection and handling of unbalanced errors in interleaved codewords
US9236886B1 (en) 2013-03-15 2016-01-12 Sandisk Enterprise Ip Llc Universal and reconfigurable QC-LDPC encoder
US9367246B2 (en) 2013-03-15 2016-06-14 Sandisk Technologies Inc. Performance optimization of data transfer for soft information generation
US9136877B1 (en) 2013-03-15 2015-09-15 Sandisk Enterprise Ip Llc Syndrome layered decoding for LDPC codes
US9170941B2 (en) 2013-04-05 2015-10-27 Sandisk Enterprises IP LLC Data hardening in a storage system
US10049037B2 (en) 2013-04-05 2018-08-14 Sandisk Enterprise Ip Llc Data management in a storage system
US9043517B1 (en) 2013-07-25 2015-05-26 Sandisk Enterprise Ip Llc Multipass programming in buffers implemented in non-volatile data storage systems
US9524235B1 (en) 2013-07-25 2016-12-20 Sandisk Technologies Llc Local hash value generation in non-volatile data storage systems
US9384126B1 (en) 2013-07-25 2016-07-05 Sandisk Technologies Inc. Methods and systems to avoid false negative results in bloom filters implemented in non-volatile data storage systems
US9639463B1 (en) 2013-08-26 2017-05-02 Sandisk Technologies Llc Heuristic aware garbage collection scheme in storage systems
US9361221B1 (en) 2013-08-26 2016-06-07 Sandisk Technologies Inc. Write amplification reduction through reliable writes during garbage collection
US9519577B2 (en) 2013-09-03 2016-12-13 Sandisk Technologies Llc Method and system for migrating data between flash memory devices
US9442670B2 (en) 2013-09-03 2016-09-13 Sandisk Technologies Llc Method and system for rebalancing data stored in flash memory devices
US9158349B2 (en) 2013-10-04 2015-10-13 Sandisk Enterprise Ip Llc System and method for heat dissipation
US9323637B2 (en) 2013-10-07 2016-04-26 Sandisk Enterprise Ip Llc Power sequencing and data hardening architecture
US9298608B2 (en) 2013-10-18 2016-03-29 Sandisk Enterprise Ip Llc Biasing for wear leveling in storage systems
US9442662B2 (en) 2013-10-18 2016-09-13 Sandisk Technologies Llc Device and method for managing die groups
US9436831B2 (en) 2013-10-30 2016-09-06 Sandisk Technologies Llc Secure erase in a memory device
US9263156B2 (en) 2013-11-07 2016-02-16 Sandisk Enterprise Ip Llc System and method for adjusting trip points within a storage device
US9244785B2 (en) 2013-11-13 2016-01-26 Sandisk Enterprise Ip Llc Simulated power failure and data hardening
US9152555B2 (en) 2013-11-15 2015-10-06 Sandisk Enterprise IP LLC. Data management with modular erase in a data storage system
US9703816B2 (en) 2013-11-19 2017-07-11 Sandisk Technologies Llc Method and system for forward reference logging in a persistent datastore
US9520197B2 (en) 2013-11-22 2016-12-13 Sandisk Technologies Llc Adaptive erase of a storage device
US9122636B2 (en) 2013-11-27 2015-09-01 Sandisk Enterprise Ip Llc Hard power fail architecture
US9280429B2 (en) 2013-11-27 2016-03-08 Sandisk Enterprise Ip Llc Power fail latching based on monitoring multiple power supply voltages in a storage device
US9520162B2 (en) 2013-11-27 2016-12-13 Sandisk Technologies Llc DIMM device controller supervisor
US9582058B2 (en) 2013-11-29 2017-02-28 Sandisk Technologies Llc Power inrush management of storage devices
US9250676B2 (en) 2013-11-29 2016-02-02 Sandisk Enterprise Ip Llc Power failure architecture and verification
US9092370B2 (en) 2013-12-03 2015-07-28 Sandisk Enterprise Ip Llc Power failure tolerant cryptographic erase
US9235245B2 (en) 2013-12-04 2016-01-12 Sandisk Enterprise Ip Llc Startup performance and power isolation
US9129665B2 (en) 2013-12-17 2015-09-08 Sandisk Enterprise Ip Llc Dynamic brownout adjustment in a storage device
US9549457B2 (en) 2014-02-12 2017-01-17 Sandisk Technologies Llc System and method for redirecting airflow across an electronic assembly
US9703636B2 (en) 2014-03-01 2017-07-11 Sandisk Technologies Llc Firmware reversion trigger and control
US9519319B2 (en) 2014-03-14 2016-12-13 Sandisk Technologies Llc Self-supporting thermal tube structure for electronic assemblies
US9485851B2 (en) 2014-03-14 2016-11-01 Sandisk Technologies Llc Thermal tube assembly structures
US9348377B2 (en) 2014-03-14 2016-05-24 Sandisk Enterprise Ip Llc Thermal isolation techniques
US9454448B2 (en) 2014-03-19 2016-09-27 Sandisk Technologies Llc Fault testing in storage devices
US9448876B2 (en) 2014-03-19 2016-09-20 Sandisk Technologies Llc Fault detection and prediction in storage devices
US9390814B2 (en) 2014-03-19 2016-07-12 Sandisk Technologies Llc Fault detection and prediction for data storage elements
US9390021B2 (en) 2014-03-31 2016-07-12 Sandisk Technologies Llc Efficient cache utilization in a tiered data structure
US9626399B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Conditional updates for reducing frequency of data modification operations
US9626400B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Compaction of information in tiered data structure
US9697267B2 (en) 2014-04-03 2017-07-04 Sandisk Technologies Llc Methods and systems for performing efficient snapshots in tiered data structures
US10372613B2 (en) 2014-05-30 2019-08-06 Sandisk Technologies Llc Using sub-region I/O history to cache repeatedly accessed sub-regions in a non-volatile storage device
US9645749B2 (en) 2014-05-30 2017-05-09 Sandisk Technologies Llc Method and system for recharacterizing the storage density of a memory device or a portion thereof
US10114557B2 (en) 2014-05-30 2018-10-30 Sandisk Technologies Llc Identification of hot regions to enhance performance and endurance of a non-volatile storage device
US8891303B1 (en) 2014-05-30 2014-11-18 Sandisk Technologies Inc. Method and system for dynamic word line based configuration of a three-dimensional memory device
US9070481B1 (en) 2014-05-30 2015-06-30 Sandisk Technologies Inc. Internal current measurement for age measurements
US10162748B2 (en) 2014-05-30 2018-12-25 Sandisk Technologies Llc Prioritizing garbage collection and block allocation based on I/O history for logical address regions
US9093160B1 (en) 2014-05-30 2015-07-28 Sandisk Technologies Inc. Methods and systems for staggered memory operations
US10656842B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Using history of I/O sizes and I/O sequences to trigger coalesced writes in a non-volatile storage device
US10146448B2 (en) 2014-05-30 2018-12-04 Sandisk Technologies Llc Using history of I/O sequences to trigger cached read ahead in a non-volatile storage device
US10656840B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Real-time I/O pattern recognition to enhance performance and endurance of a storage device
US9703491B2 (en) 2014-05-30 2017-07-11 Sandisk Technologies Llc Using history of unaligned writes to cache data and avoid read-modify-writes in a non-volatile storage device
US9652381B2 (en) 2014-06-19 2017-05-16 Sandisk Technologies Llc Sub-block garbage collection
US9443601B2 (en) 2014-09-08 2016-09-13 Sandisk Technologies Llc Holdup capacitor energy harvesting
CN108600043A (zh) * 2018-04-02 2018-09-28 郑州云海信息技术有限公司 连接服务器和控制端的方法、服务器Memory功能模块测试方法
US11556267B2 (en) * 2020-08-31 2023-01-17 Micron Technology, Inc. Data management during a copyback operation
US11436142B1 (en) * 2021-04-23 2022-09-06 EMC IP Holding Company, LLC System and method for moving metadata without updating references used by the metadata

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040049632A1 (en) * 2002-09-09 2004-03-11 Chang Albert H. Memory controller interface with XOR operations on memory read to accelerate RAID operations
US20070048715A1 (en) * 2004-12-21 2007-03-01 International Business Machines Corporation Subtitle generation and retrieval combining document processing with voice processing
US20070268905A1 (en) * 2006-05-18 2007-11-22 Sigmatel, Inc. Non-volatile memory error correction system and method

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4020466A (en) * 1974-07-05 1977-04-26 Ibm Corporation Memory hierarchy system with journaling and copy back
FR2292803A1 (fr) * 1974-11-29 1976-06-25 Nord Ressorts Dispositif elastique pour la fixation de rail et systeme de fixation de rail en comportant application
US5555379A (en) 1994-07-06 1996-09-10 Advanced Micro Devices, Inc. Cache controller index address generator
US5732275A (en) * 1996-01-11 1998-03-24 Apple Computer, Inc. Method and apparatus for managing and automatically updating software programs
JPH11259357A (ja) * 1998-03-09 1999-09-24 Seiko Epson Corp 半導体集積装置及び不揮発性メモリ書き込み方式
JP3376331B2 (ja) * 1999-11-25 2003-02-10 エヌイーシーアクセステクニカ株式会社 フラッシュメモリを用いる記憶方法及び記憶制御プログラムを記録した記録媒体
US6601216B1 (en) * 2000-03-31 2003-07-29 Microsoft Corporation Differential cyclic redundancy check
US7350044B2 (en) * 2004-01-30 2008-03-25 Micron Technology, Inc. Data move method and apparatus
US7287209B2 (en) * 2004-06-03 2007-10-23 Cheertek, Inc. System and method for detecting codeword errors in error correction code or cyclic redundancy check code
US7466597B2 (en) * 2004-09-09 2008-12-16 Samsung Electronics Co., Ltd. NAND flash memory device and copyback program method for same
TWI258074B (en) 2004-12-24 2006-07-11 Phison Electronics Corp Method for reducing data error when flash memory storage device executing copy back command
JP4688584B2 (ja) * 2005-06-21 2011-05-25 株式会社日立製作所 ストレージ装置
US7362611B2 (en) * 2005-08-30 2008-04-22 Micron Technology, Inc. Non-volatile memory copy back
US7512864B2 (en) * 2005-09-30 2009-03-31 Josef Zeevi System and method of accessing non-volatile computer memory
JP4956230B2 (ja) * 2006-04-10 2012-06-20 株式会社東芝 メモリコントローラ
US20070276863A1 (en) * 2006-05-02 2007-11-29 Research In Motion Limited Plug in registration method and apparatus for push content delivery
JP2007310680A (ja) * 2006-05-18 2007-11-29 Matsushita Electric Ind Co Ltd 不揮発性記憶装置およびそのデータ転送方法
KR100881669B1 (ko) * 2006-12-18 2009-02-06 삼성전자주식회사 비휘발성 데이터 저장장치의 정적 데이터 영역 검출 방법,마모도 평준화 방법 및 데이터 유닛 병합 방법과 그 장치
US20080288712A1 (en) * 2007-04-25 2008-11-20 Cornwell Michael J Accessing metadata with an external host

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040049632A1 (en) * 2002-09-09 2004-03-11 Chang Albert H. Memory controller interface with XOR operations on memory read to accelerate RAID operations
US20070048715A1 (en) * 2004-12-21 2007-03-01 International Business Machines Corporation Subtitle generation and retrieval combining document processing with voice processing
US20070268905A1 (en) * 2006-05-18 2007-11-22 Sigmatel, Inc. Non-volatile memory error correction system and method

Also Published As

Publication number Publication date
KR101471262B1 (ko) 2014-12-10
HK1155530A1 (en) 2012-05-18
US8572335B2 (en) 2013-10-29
US20120233387A1 (en) 2012-09-13
HK1158344A1 (en) 2012-07-13
EP2407883B1 (en) 2013-08-21
US8185706B2 (en) 2012-05-22
HK1166390A1 (en) 2012-10-26
WO2009134576A1 (en) 2009-11-05
EP2297642B1 (en) 2011-11-30
EP2407883A1 (en) 2012-01-18
KR20110008301A (ko) 2011-01-26
CN102077176B (zh) 2013-06-19
EP2297642A1 (en) 2011-03-23
KR20120059658A (ko) 2012-06-08
JP5192587B2 (ja) 2013-05-08
ES2378371T3 (es) 2012-04-11
JP2011520188A (ja) 2011-07-14
ATE535866T1 (de) 2011-12-15
KR101225924B1 (ko) 2013-01-24
US20090276560A1 (en) 2009-11-05

Similar Documents

Publication Publication Date Title
CN102077176B (zh) 存储器系统的回拷优化
CN110858129B (zh) 数据存储装置及其操作方法
CN101427323B (zh) 读取非易失性计算机存储器的系统和方法
KR101491943B1 (ko) 트랜잭션 로그 복구
US10347349B2 (en) Method and device for fail-safe erase of flash memory
US10963160B2 (en) Apparatus and method for checking valid data in block capable of storing large volume data in memory system
CN101901169B (zh) 扫描装置及方法
US11544157B2 (en) Apparatus and method for storing data in an MLC area of a memory system
US20200089566A1 (en) Apparatus for diagnosing memory system and operating method thereof
CN113900586A (zh) 存储器系统及其操作方法
US11526438B2 (en) Memory system capable of increasing storage efficiency and operation method thereof
CN102981969A (zh) 重复数据删除的方法及其固态硬盘
TWI540428B (zh) 資料寫入方法、記憶體控制器與記憶體儲存裝置
US10289328B2 (en) Memory controller and method for handling host request based on data character
US11314653B2 (en) Memory controller
US11288015B2 (en) Memory system for accurately predicting power required for sequential command operations performed in memory device, and operation method thereof
US11354051B2 (en) Memory system for efficiently managing memory block and operating method thereof
KR101369408B1 (ko) 스토리지 시스템 및 이의 데이터 전송 방법
CN109918315B (zh) 存储器系统及存储器系统的操作方法
TWI436209B (zh) 記憶體管理表處理方法、記憶體控制器與記憶體儲存裝置
CN113849121A (zh) 用于访问条带形式的数据的存储器系统及其操作方法
CN112433668A (zh) 预测内部操作是否可执行的存储器系统和数据处理系统
US20230103004A1 (en) Data protection method for memory and storage device thereof
CN117389461A (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1158344

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1158344

Country of ref document: HK

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130619