CN105874540B - 用于管理裸芯组的装置和方法 - Google Patents
用于管理裸芯组的装置和方法 Download PDFInfo
- Publication number
- CN105874540B CN105874540B CN201480067426.7A CN201480067426A CN105874540B CN 105874540 B CN105874540 B CN 105874540B CN 201480067426 A CN201480067426 A CN 201480067426A CN 105874540 B CN105874540 B CN 105874540B
- Authority
- CN
- China
- Prior art keywords
- naked core
- naked
- group
- core group
- tolerance
- 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
- 238000000034 method Methods 0.000 title claims abstract description 52
- 230000015654 memory Effects 0.000 claims abstract description 91
- 238000005259 measurement Methods 0.000 claims abstract description 68
- 230000004044 response Effects 0.000 claims abstract description 14
- 238000003860 storage Methods 0.000 claims description 103
- 238000013507 mapping Methods 0.000 claims description 32
- 238000004891 communication Methods 0.000 claims description 8
- 230000008878 coupling Effects 0.000 claims description 5
- 238000010168 coupling process Methods 0.000 claims description 5
- 238000005859 coupling reaction Methods 0.000 claims description 5
- 239000013598 vector Substances 0.000 description 32
- 238000007726 management method Methods 0.000 description 22
- 238000010586 diagram Methods 0.000 description 13
- 238000013500 data storage Methods 0.000 description 6
- 230000001052 transient effect Effects 0.000 description 6
- 239000002131 composite material Substances 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 3
- 230000005611 electricity Effects 0.000 description 3
- 230000000737 periodic effect Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 241000208340 Araliaceae Species 0.000 description 2
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 2
- 235000003140 Panax quinquefolius Nutrition 0.000 description 2
- 230000032683 aging Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 235000008434 ginseng Nutrition 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000010813 municipal solid waste Substances 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000017702 response to host Effects 0.000 description 2
- WNEODWDFDXWOLU-QHCPKHFHSA-N 3-[3-(hydroxymethyl)-4-[1-methyl-5-[[5-[(2s)-2-methyl-4-(oxetan-3-yl)piperazin-1-yl]pyridin-2-yl]amino]-6-oxopyridin-3-yl]pyridin-2-yl]-7,7-dimethyl-1,2,6,8-tetrahydrocyclopenta[3,4]pyrrolo[3,5-b]pyrazin-4-one Chemical compound C([C@@H](N(CC1)C=2C=NC(NC=3C(N(C)C=C(C=3)C=3C(=C(N4C(C5=CC=6CC(C)(C)CC=6N5CC4)=O)N=CC=3)CO)=O)=CC=2)C)N1C1COC1 WNEODWDFDXWOLU-QHCPKHFHSA-N 0.000 description 1
- 238000012935 Averaging Methods 0.000 description 1
- 206010011906 Death Diseases 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 210000003127 knee Anatomy 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000000246 remedial effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 241000894007 species Species 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- 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
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5628—Programming or writing circuits; Data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- 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
- G11C16/3495—Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically
-
- 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/7211—Wear leveling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
这里所述的实施例是增强非易失性存储器(例如,闪速存储器)的耐受性的方法和装置。方法包括为所述多个裸芯的每一个获得耐受性度量。所述方法还包括基于它们相应的耐受性度量将所述多个裸芯分类为多个裸芯组,其中每个裸芯组包括一个或多个裸芯并且每个裸芯组与耐受性度量的范围相关联。响应于指明一组写入数据的写入命令,所述方法还包括通过将写入数据的子组并行地写入到分配到所述多个裸芯组的单个裸芯组的所述一个或多个裸芯而将写入数据写入到非易失性存储器。
Description
技术领域
公开的实施例一般地涉及存储器系统,并且具体地涉及改善诸如闪速存储器的储存介质的耐受性。
背景技术
包括闪速存储器的半导体存储器装置通常利用存储器单元来将数据储存为电的值,诸如电荷或电压。闪速存储器单元例如包括具有被用于储存数据值的电荷表示的浮置栅极的单个晶体管。已经以各种方式促进了储存密度的提高、包括由制造的发展使能的存储器单元在芯片上的密度的提高、以及从单级闪速存储器单元到多级闪速存储器单元的转变使得可以由每个闪速存储器单元储存两个或多个位。
一般来说,非易失性存储器装置——诸如闪速存储器装置——包括多个裸芯。在相同的非易失性存储器装置中的多个裸芯在被认为是操作性地故障之前可以经受的编程-擦除(PE)周期的量显著地变化(例如,以三为因子)。如此,非易失性存储器装置的耐受性通常是,鲁棒程度仅与其最弱的裸芯一样。因此,用于管理在非易失性存储器装置中的裸芯的变化的耐受性能力的方法是所期望的。
发明内容
公开的装置和方法改善非易失性存储器的耐受性。获得用于非易失性存储器的每个裸芯的耐受性度量。裸芯被基于它们相应的耐受性度量而逻辑地组合在裸芯组中。此后,在单个裸芯组上进行存储器操作,其中裸芯组包括具有类似耐受性度量的多个裸芯。
附图说明
为了可以更加详细地理解本公开,可以具有参考各种实施例的特性的更加特定的描述,一些实施例在附图中说明。但是,附图仅示出了本公开的更加相关的特性并且从而不被认为是限制性的,因为说明书可能认可其他有效的特性。
图1是示出的根据一些实施例的数据储存系统的实现方式框图。
图2A是示出的根据一些实施例的管理模块的实现方式框图。
图2B是示出的根据一些实施例的包括在图2A中的特征向量表示意图。
图2C是示出的根据一些实施例的包括在图2B中的特征向量的示意图。
图3是根据一些实施例的非易失性存储器的示意图。
图4是根据一些实施例的多个裸芯组的框图。
图5是根据一些实施例的裸芯组映射的框图。
图6A-6B示出了根据一些实施例的管理储存系统的方法的流程图表示。
图7示出了根据一些实施例的管理储存系统的方法的流程图表示。
根据惯例,在附图中示出的各种特性可能未按比例绘制。相应地,为了清晰,各种特性的大小可以任意地扩大或减小。此外,一些附图可能没有绘制给定系统、方法或装置的所有组件。最后,贯穿说明书和附图,相似的参考标号可以被用于表示相似的特性。
具体实施方式
这里所述的各种实施例包括可以改善诸如闪速存储器的储存介质的耐受性的装置和/或方法。一些实施例包括通过将具有类似的耐受性度量的裸芯组合为裸芯组而管理储存系统的装置和/或方法。
一些实施例包括管理包括储存控制器和非易失性存储器(例如,闪速存储器)的储存系统的方法,所述非易失性存储器包括多个裸芯,并且每个裸芯包括多个块(在这里有时也被称为子单元)。在一些实施例中,在储存控制器处进行方法。方法包括为所述多个裸芯的每一个获得耐受性度量。方法还包括基于它们相应的耐受性度量将所述多个裸芯分类为多个裸芯组,其中每个裸芯组包括一个或多个裸芯,并且每个裸芯组与耐受性度量的范围相关联。响应于指明一组写入数据的写入命令,所述方法还包括,通过并行地将写入数据的子组写入到分配到所述多个裸芯组的单个裸芯组的所述一个或多个裸芯而将写入数据写入到非易失性存储器。
一些实施例包括管理包括储存控制器和非易失性存储器(例如,闪速存储器)的储存系统的方法,所述非易失性存储器包括多个裸芯,并且每个裸芯包括多个块(在这里有时也被称为子单元)。在一些实施例中,在储存控制器处进行方法,该储存控制器具有通信地耦接到非易失性存储器的多个信道,其中每个信道通信地与所述多个裸芯的各个子组耦接。方法包括:为所述多个裸芯的每一个获得耐受性度量;以及,对于每个信道,根据所述信道中的各个裸芯的耐受性度量分级所述信道中的裸芯。方法还包括:基于在所述信道的每一个中的所述裸芯的分级,向多个裸芯组的每个裸芯组分配来自每个信道的一个或多个裸芯,其中分配到各个裸芯组的所述裸芯具有对应于所述各个裸芯组的分级或者分级的范围,并且每个裸芯组具有有区别的相应的分级或者分级的范围。响应于指明一组写入数据的写入命令,所述方法还包括通过并行地将写入数据的子组写入到分配到多个裸芯组的单个裸芯组的多个裸芯而将写入数据写入到非易失性存储器。
一些实施例包括一种储存控制器,其包括:一个或多个处理器;主机接口,被配置为将储存控制器耦接到主机;储存介质接口,被配置为将储存控制器耦接到包括多个裸芯的非易失性存储器,每个裸芯包括多个块;以及储存控制器,储存指令,当由一个或多个处理器执行该指令时,使得储存控制器进行这里所述的任何方法的操作。
一些实施例包括一种储存控制器,包括:主机接口,被配置为将所述储存控制器耦接到主机;储存介质接口,被配置为将所述储存控制器耦接到包括多个裸芯的非易失性存储器,并且每个裸芯包括多个块;以及用于进行这里所述的任何方法的操作的构件。
一些实施例包括一种储存系统,包括:主机接口,被配置为将所述储存系统耦接到主机;非易失性存储器,包括多个裸芯,每个裸芯包括多个块;以及储存控制器,具有一个或多个处理器和储存一个或多个程序的存储器,当由所述一个或多个处理器执行所述程序时使得所述储存系统进行或控制这里所述的任何方法的性能。
一些实施例包括一种非瞬时性计算机可读储存介质,其储存一个或多个程序以用于由与非易失性存储器可通信地耦接的储存控制器的一个或多个处理器执行,该非易失性存储器包括多个裸芯并且每个裸芯包含多个块,一个或多个程序包括用于进行任何这里所述的方法的指令。
在这里描述许多细节以便于提供对在附图中示出的示例实施例的透彻理解。但是,可以不需要许多特定细节而实施一些实施例,并且权利要求的范围仅由在权利要求中特别记述的那些特性和方面限制。此外,没有以详尽的细节描述已知的方法、组件和电路,以便不必要地混淆这里所述的实施例的更加相关的方面。
图1是根据一些实施例的数据储存系统100的实现方式的示意图。尽管示出了一些示例特性,但是为了简洁而没有示出各种其它特性以便不混淆这里所述的示例实施例的更加相关的方面。为此,作为非限制性示例,数据储存系统100包括储存控制器120和储存介质130,并且被结合计算机系统110使用。在一些实施例中,储存介质130是单个闪速存储器装置,而在其它实施例中,储存介质130包括多个闪速存储器装置。在一些实施例中,储存介质130是NAND型闪速存储器或NOR型闪速存储器。此外,在一些实施例中,储存控制器120是固态驱动(SSD)控制器。但是,根据多种实施例的方面可以包括其它类型的储存介质。
计算机系统110通过数据连接101耦接到储存控制器120。但是,在一些实施例中,计算机系统110包括储存控制器120作为组件和/或子系统。计算机系统110可以是任何合适的计算机装置,诸如计算机、膝上型计算机、平板装置、网本、上网亭、个人数字助理、移动电话、智能电话、游戏装置、计算机服务器或任何其它计算装置。计算机系统110有时被称为主机或主机系统。在一些实施例中,计算机系统110包括一个或多个处理器、一个或多个类型的存储器、显示器和/或其它用户接口组件,诸如键盘、触摸屏、鼠标、触控板、数码相机和/或任何数量的补充装置以添加功能。
储存介质130通过连接103耦接到储存控制器120。连接103有时被称为数据连接,但是通常传送除了数据以外的命令,并且可选地传送除了将被储存在储存介质130中的数据值和从储存介质130读取的数据值以外的元数据、误差校正信息和/或其它信息。但是,在一些实施例中,储存控制器120和储存介质130被包含在与其组件相同的装置中。此外,在一些实现方式中,存储器控制器120和储存介质130被嵌入在主机装置中,该主机装置诸如移动装置、平板、其它计算机或计算机控制的装置,并且这里所述的方法由嵌入式存储器控制器进行。储存介质130可以包括任何数量的(即,一个或多个)存储器装置,该存储器装置非限制性地包括,诸如闪速存储器的非易失性半导体存储器装置。例如,闪速存储器装置可以被配置为用于适用于诸如云计算的应用的企业储存,或用于缓存储存在(或将被储存在)诸如硬盘驱动的二级储存中的数据。此外和/或可替换地,闪速存储器还可以被配置为相对小规模的应用,诸如个人闪速驱动或用于个人、膝上型和平板计算机的硬盘替换。
储存介质130被分为多个可编址的并且可单独选择的块,诸如可选择的部分131。在一些实施例中,可单独选择的块是闪速存储器装置中的最小尺寸的可擦除单元。换句话说,每个块包含可以被同时擦除的最小数量的存储器单元。每个块通常进一步被分为多个页和/或字线,其中每个页或字线通常是块中最小的可单独访问的(可读)部分的实例。然而,在一些实施例中(例如,使用一些种类的闪速存储器),数据组的最小的可单独访问的单元是区段,该区段是页的子单元。就是说,块包括多个页,每个页包含多个区段,并且每个区段是用于从闪速存储器装置读取数据的数据的最小单元。
例如,一个块包括任何数量的页,例如,64页、128页、256页或另外的合适数量的页。块通常被组合为多个区。每个块区可以在某些程度上被独立地管理,这提高了用于并行操作的并行度并且简化了储存介质130的管理。
如上所述,虽然非易失性半导体存储器装置的数据储存密度普遍地提高,但提高储存密度的缺点在于储存的数据更加倾向于被错误地储存和/或读取。如将在下面更加详细描述的,误差控制码可以被用于限制由电波动、储存介质、操作条件、装置历史、写入-读取电路等中的瑕疵,或这些和各种其它因素的组合引起的不可校正的误差的数量。
在一些实施例中,储存控制器120包括管理模块121、输入缓冲器123、输出缓冲器124、误差控制模块125和储存介质接口(I/O)128。储存控制器120可以包括为了简洁而没有示出各种额外的特性以便于不混淆这里公开的示例实施例的更加主要的特征,并且特性的不同的布置是可能的。输入和输出缓冲器123、124通过将接口提供到计算机系统110。类似地,储存介质I/O 128通过连接103将接口提供到储存介质130。在一些实施例中,储存介质I/O 128包括读取和写入电路,包括能够将读取信号提供到储存介质130的电路(例如,用于NAND型闪速存储器的读取阈值电压)。
在一些实施例中,管理模块121包括一个或多个处理单元(CPU,有时还被称为处理器)122,该一个或多个处理单元被配置为执行一个或多个程序中(例如,在管理模块121中)的指令。在一些实施例中,一个或多个CPU 122由储存控制器120的功能中的、并且在一些情况中由超出储存控制器120的功能的一个或多个组件共享。管理模块121耦接到输入缓冲器123、输出缓冲器124(连接未示出)、误差控制模块125和储存介质I/O 128以便于协调这些组件的操作。
误差控制模块125耦接到储存介质I/O 128、输入缓冲器123和输出缓冲器124。提供误差控制模块125以限制被无意引入到数据中的不可校正的误差的数量。在一些实施例中,误差控制模块125由管理模块121的一个或多个CPU 122在软件中执行,并且在其它实施例中,全部或部分使用专用电路进行编码和译码功能而实现误差控制模块125。为此,误差控制模块125包括编码器126和译码器127。编码器126通过施加误差控制码以产生码字而编码数据,该码字之后被储存在储存介质130中。
当从储存介质130读取编码的数据(例如,一个或多个码字)时,译码器127将译码过程施加到编码的数据以恢复数据,并且在误差控制码的误差校正能力中校正恢复的数据中的误差。本领域的技术人员将理解各种误差控制码具有不同的误差检测和校正能力,并且该特定的码由于超出本公开的范围的原因而被选择以用于各种应用。如此,这里不提供对各种类型的误差控制码的详尽的概述。此外,本领域的技术人员将理解每种类型或系列的误差控制码可以具有特定于误差控制码的类型或系列的编码和译码算法。另一方面,一些算法可以至少一些程度上用在译码多个不同类型的或系列的误差控制码中。如此,为了简洁,这里没有提供对本领域的技术人员一般可用并且已知的各种类型的编码和译码算法的详尽的描述。
在写入操作期间,输入缓冲器123从计算机系统110接收将储存在储存介质130中的数据。保持在输入缓冲器123中的数据可被用于编码器126,该编码器126编码数据以产生一个或多个码字。一个或多个码字可被用于储存介质I/O 128,该储存介质I/O 128以取决于所使用的储存介质的类型的方式将一个或多个码字转移到储存介质130。
当计算机系统(主机)110在控制线111上将一个或多个主机读取命令发送到储存控制器120从储存介质130请求数据时,起始读取操作。储存控制器120将一个或多个读取访问命令经由储存介质I/O 128发送到储存介质130,以根据由一个或多个主机读取命令指明的存储器位置(地址)获得原始读取数据。储存介质I/O 128将原始读取数据(例如,包括一个或多个码字)提供到译码器127。如果译码成功,译码的数据被提供到输出缓冲器124,其中译码的数据可被用于计算机系统110。在一些实施例中,如果译码不成功,储存控制器120可以求助于多个补救措施或者提供不可解决的误差条件的指示。
闪速存储器装置利用存储器单元以将数据储存为电的值,诸如电荷或电压。每个闪速存储器单元通常包括具有浮置栅极的单个晶体管,该浮置栅极被用于储存修改晶体管的阈值电压(即,导通晶体管所需要的电压)的电荷。电荷的大小、以及该电荷创建的相应的阈值电压被用于表示一个或多个数据值。在一些实施例中,在读取操作期间,读取阈值电压被施加到晶体管的控制栅极并且产生的感测的电流或电压被映射到数据值。
在闪速存储器单元的上下文中,术语“单元电压”和“存储器单元电压”意味着存储器单元的阈值电压,其是需要施加到存储器单元的晶体管的栅极以便于晶体管导通电流的最小电压。类似地,施加到闪速存储器单元的读取阈值电压(有时也被称为读取信号和读取电压)是施加到闪速存储器单元的栅极以确定存储器单元在该栅极电压处是否导通电流的栅极电压。在一些实施例中,当闪速存储器单元的晶体管在指示单元电压小于读取阈值电压的给定读取阈值电压处导通电流时,对于该读取操作的原始数据值为“1”,并且否则原始数据值为“0”。
图2A是示出根据一些实施例的示例性管理模块121的框图。管理模块121通常包括:一个或多个处理单元(CPU)122,用于执行储存在存储器202中的模块、程序和/或指令并且从而进行处理操作;存储器202;以及一个或多个通信总线204,用于互连这些组件。一个或多个通信总线204,可选地包括互连系统组件并控制系统组件之间的通信的电路(有时被称为芯片组)。管理模块121通过一个或多个通信总线204耦接到缓冲器123、缓冲器124、误差控制模块125和储存介质I/O 128。存储器202包括高速随机存取存储器——诸如DRAM、SRAM、DDR RAM,或者其它随机存取固态存储器装置,并且可以包括非易失性存储器——诸如一个或多个磁盘储存装置、光盘储存装置,闪速存储器装置、或者其它非易失性固态储存装置。存储器202,可选地包括位于远离(一个或多个)CPU 122的一个或多个储存装置。存储器202,或者可替换地存储器202中的(一个或多个)非易失性存储器装置包括非瞬时性计算机可读储存介质。在一些实施例中,存储器202或存储器202的非瞬时性计算机可读储存介质储存以下程序、模块和数据结构或其子集或超集:
·数据读取模块206,用于从包括闪速存储器的储存介质130(例如,一个或多个闪速存储器装置的每个包括多个裸芯)读取数据;
·用于将数据写入到储存介质130的数据写入模块208;
·用于将数据从储存介质130擦除的数据擦除模块210;
·裸芯组模块212,用于将储存介质130分为多个裸芯组并且管理多个裸芯组,包括但不限于:
·耐受性度量模块214,用于获得多个裸芯的每一个的耐受性度量;
·分级模块216,用于基于它们相应的耐受性度量分级多个裸芯;
·组合模块218,用于基于它们相应的分级将多个裸芯分配到裸芯组,包括将裸芯的逻辑地址与裸芯组相关联的裸芯组映射220;以及
选择模块222,用于选择用于存储器操作的裸芯组;
·特征向量表234,包括许多特征向量236,其每一个储存用于储存介质130的各个部分(例如,储存介质130的闪速存储器装置、裸芯、块区、块、字线、字线区或页部分)的特征数据;以及
·逻辑到物理映射238,将逻辑地址与用于储存介质130的各个部分(例如,储存介质130的区别的闪速存储器装置、裸芯、块区、块、字线、字线区或页部分)的物理地址相关联。
上述识别的元件的每一个可以储存在之前提到的存储器装置的一个或多个中,并且对应于用于进行上述功能的指令集。上述识别的模块或程序(即,指令集)不需要实现为单独的软件程序、规程或模块,并且从而这些模块的各种子集可以组合或者在各种实施例中另外地重新布置。在一些实施例中,存储器202可以储存以上识别的模块和数据结构的子集。此外,存储器202可以储存以上未描述的额外的模块和数据结构。在一些实施例中,储存在存储器202中的程序、模块和数据结构,或者存储器202的非瞬时性计算机可读储存介质提供用于实现参考图6A-6B在下面所述的任何方法的指令。
尽管图2A示出了管理模块121,但是图2A相比于这里所述的实施例的结构性示意更倾向于作为可能出现在管理模块中的各种特性的功能性描述。实践中,并且如由本领域普通技术人员识别的,单独示出的程序、模块和数据结构可以被组合并且一些程序、模块和数据结构可以被分开。
图2B是示出根据一些实施例的特征向量表234的实现方式的框图。特征向量表234包括多个特征向量236,其每个储存与储存介质130的各个部分(例如,储存介质130的区别装置、裸芯、块区、块、字线、字线区或页部分)相关联的特征数据。在一些实施例中,特征向量236的集合中的每个向量(例如,向量236-1、向量236-2、...、向量236-n)储存在至少两个时间段(例如,时间T-1和时间T-2、或X编程-擦除(PE)周期和2X PE周期)的一个期间得到的特征数据。在一些实施例中,统计地得到储存在特征向量236中的特征数据。例如,而不限制,在其中储存介质130(图1)(例如,一个或多个闪速存储器装置,每一个包括多个裸芯)包括多个裸芯的一些实施例中,特征向量表234包括用于每个裸芯的至少一个特征向量。在另外的示例中,在一些实施例中,特征向量表234包括用于储存介质130中的每个裸芯的一组区别特征向量236,并且用于每个裸芯的区别特征向量236的组包括用于裸芯中的每个块的至少一个区别特征向量。参考图2C在下面描述了特征向量236的更加详细的示例实施例。
图2C是根据一些实施例的用于多个裸芯的各个裸芯的特征向量240(例如,对应于图2B中示出的特征向量236的一个)的实现方式的示意图。在一些实施例中,用于各个裸芯的储存在特征向量240中的特征数据包括储存介质特征参数值——诸如耐受性度量字段242,其指示各个裸芯的耐受性能力(例如,在校准例程期间由在各个裸芯中的代表性的块保持的编程-擦除(PE)周期的数量);PE周期字段244,其指示在各个裸芯上进行的PE周期的数量的当前计数;以及平均误码率(BER)246,其指示在各个裸芯中的一个或多个块的平均BER。在一些实施例中,一个或多个储存介质特征参数值提供以下至少一个的指示:与储存介质的各自部分(例如,储存介质130的区别闪速存储器装置、裸芯、块区、块、字线、字线区或页部分,图1)相关联的物理特征、与储存介质的各个部分相关联的操作模式、与储存介质的各个部分相关联的使用历史、与储存介质的各个部分相关联的条件特征、与储存介质的各个部分相关联的读取类型以及与储存介质的各个部分相关联的(一个或多个)位置。
图3是根据一些实施例的非易失性存储器(例如,闪速存储器)的示意图。在一些实施例中,储存控制器120经由一组信道(例如,连接103,图1)通信地耦接到储存介质130(例如,闪速存储器包括一个或多个闪速存储器装置,每个闪速存储器装置包括多个裸芯)。在图3中,16个信道将闪速存储器300(例如,具有128个裸芯的闪速存储器装置)通信地耦接到储存控制器120。在图3中,闪速存储器300的多个裸芯(例如,8个裸芯)的子组连接到每个信道。以此方式,储存控制器120被配置为通过使用16个信道并行地在16个裸芯上进行存储器操作。在一些实施例中,裸芯被物理地焊接到信道并且每个裸芯仅连接到一个信道。
图4是根据一些实施例的多个裸芯组的框图。如在图3中的情况一样,在图4中,非易失性存储器(例如,闪速存储器)包括多个裸芯(例如,128个裸芯)并且多个裸芯被分为子组(例如,每个子组8个裸芯),其中裸芯的每个子组连接到信道(例如,16个信道的一个)。
例如,在普通操作性使用之前,校准例程在来自闪速存储器的每个裸芯的代表性块上运行,其仿真寿命结束的情况。例如,在预定的数量的PE周期在代表性块上进行之后测量的用于从各个裸芯的代表性块读取的数据的BER是耐受性度量。在另一示例中,当用于从代表性块读取的数据的BER满足或者超过预定的阈值时,在各个裸芯的代表性块上进行的总的PE周期的数量是耐受性度量。在一些实施例中,用于各个裸芯的耐受性度量(例如,BER或PE周期的数量)储存在与各个裸芯相关联的特征向量236的耐受性度量字段242中。
在一些实施例中,储存控制器120或其组件(例如,耐受性度量模块214,图2A)被配置为从特征向量表234获得用于每个裸芯的耐受性度量,并且储存控制器120或其组件(例如,分级模块216,图2A)被配置为基于它们相应的耐受性度量分级每个信道中的裸芯。在图4中,信道0中的8个裸芯从最高到最低被分级。关于信道0,裸芯3是最高等级(例如,等级1)的裸芯,因为与裸芯3相关联的耐受性度量高于信道0中的其它裸芯。关于信道0,裸芯6是最低等级的裸芯(例如,等级8),因为与裸芯6相关联的耐受性度量低于信道0中的其它裸芯。
在一些实施例中,储存控制器120或其组件(例如,组合(grouping)模块218,图2A)被配置为基于它们相应的分级将在闪速存储器装置中的多个裸芯组合为裸芯组。在一些实施例中,每个信道中的一个或多个裸芯被分配到裸芯组,其中分配到各个裸芯组的所述裸芯具有对应于所述各个裸芯组的分级或者分级的范围,并且每个裸芯组具有有区别的相应的分级或者分级的范围。在图4中,具有等级1-2的每个信道中的裸芯(例如,信道0中的裸芯3和7、以及信道15中的裸芯6和0)被分配到裸芯组0,具有等级3-4的每个信道中的裸芯(例如,信道0中的裸芯0和1、以及信道15中的裸芯3和7)被分配到裸芯组1,具有等级5-6的每个信道中的裸芯(例如,信道0中的裸芯5和4、以及信道15中的裸芯5和2)被分配到裸芯组2,并且具有等级7-8的每个信道中的裸芯(例如,信道0中的裸芯2和6、以及信道1中的裸芯4和1)被分配到裸芯组3。
在一些实施例中,多个信道(例如,16个信道)将储存控制器通信地耦接到闪速存储器,并且多个信道的每一个与多个裸芯的各个子组(例如,每个信道8或16个裸芯)通信地耦接。在一些实现方式中,分配到任何特定裸芯组的裸芯包括来自各种信道的不相等的数量的裸芯。例如,如果一个信道(例如,第一信道)在对应于特定裸芯组的耐受性度量范围中相比另外的信道(例如,第二信道)具有更大数量的裸芯,特定裸芯组将包括比来自第二信道更大数量的来自第一信道的裸芯。
此外,被分配到各个裸芯组的来自各个信道的裸芯的数量基于在各个信道中的裸芯的耐受性度量而变化。例如,各个信道中的零个裸芯被分配到裸芯组,因为各个信道中的裸芯的耐受性度量不满足与各个裸芯组相关联的耐受性度量的范围。在另一示例中,在各个信道中的所有裸芯基于它们的各个耐受性度量被分配到单个裸芯组,因为各个信道中的裸芯的耐受性度量都满足与各个裸芯组相关联的耐受性度量的范围。
图5是根据一些实施例的对应于图4中的多个裸芯组的裸芯组映射的示意图。在一些实施例中,裸芯组映射220被储存在储存控制器存储器中,并且包括用于分配到每个裸芯组的裸芯的逻辑地址(或逻辑地址的范围,或其表示)。在图5中,裸芯组映射220将用于在信道0-15中的所有裸芯的逻辑地址(或逻辑地址的范围)与它们分配的裸芯组相关联。在图5中,用于信道0中的裸芯3和7的逻辑地址(例如,分别地逻辑地址504和506)被包含在与裸芯组0相关联的条目502中。
图6A-6B示出了管理包括储存控制器和非易失性存储器的储存系统(例如,闪速存储器)的方法600的流程图表示,非易失性存储器包括一个或多个非易失性存储器装置,该非易失性存储器装置的每一个包括多个裸芯,并且每个裸芯包括多个块(有时也被称为子单元)。在一些实施例中,方法600由图1的储存控制器120进行,其中多个信道(例如,16个信道)将储存控制器120通信地耦接到闪速存储器。在一些实施例中,每个信道通信地与所述多个裸芯的各个子组(例如,每个信道8或16个裸芯)耦接。
在一些实施例中,方法600由储存控制器120或储存控制器120的一个或多个组件(例如,管理模块121,图1和2A)进行。在一些实施例中,方法600由储存在非瞬时性计算机可读储存介质中的指令以及由储存控制器120的一个或多个处理器、诸如管理模块121的一个或多个处理单元(CPU)122执行的指令来管理。
储存控制器对于所述多个裸芯的每一个获得(602)耐受性度量(例如,BER或PE周期的数量)。在一些实施例中,耐受性度量是指示用于各个裸芯的估测的寿命或使用期限的任何信息。在一些实施例中,耐受性度量基于在普通操作(例如,在初始化期间或者在出厂处)之前在来自每个裸芯的代表性裸芯上进行的校准例程的结果。在一些实施例中,耐受性度量基于在普通操作的时间段之后的实际数据(例如,在每个裸芯中的块的平均BER)。在一些实施例中,用于各个裸芯的耐受性度量基于从各个裸芯擦除数据所需要的时间量(例如,擦除时间随着各个裸芯的老化而增加)。在一些实施例中,用于各个裸芯的耐受性度量基于成功地译码储存在各个裸芯中的码字所需要的处理周期的时间长度或数量(例如,译码低密度校验码(LDPC)编码的码字所需要的迭代或周期的数量)。储存控制器120或其组件(例如,耐受性度量模块214,图2A)被配置为从与储存在特征向量表234中的各个裸芯相关联的特征向量236获得用于各个裸芯的耐受性度量。
在一些实施例中,每个裸芯与单个信道相关联(604)。例如,包括闪速存储器的多个裸芯的每一个与单个信道物理地连接或者焊接到单个信道。
在一些实施例中,获得用于所述多个裸芯的每一个的耐受性度量包括:在多个裸芯的每一个中的代表性块上进行(606)校准例程以产生耐受性度量(例如,BER或PE周期的数量)以用于多个裸芯的每一个。例如,在普通操作性使用(例如,在初始化期间或者在出厂处)之前,在来自闪速存储器的每个裸芯的代表性块上进行校准例程以仿真寿命条件的结束。在一些实施例中,在对代表性块进行预定数量的PE周期之后测量的用于从各个裸芯的代表性块读取的数据的BER是耐受性度量。在一些实施例中,当用于从代表性块读取的数据的BER满足或者超过预定的阈值时,在各个裸芯的代表性块上进行的总的PE周期的数量是耐受性度量。在一些实施例中,用于各个裸芯的耐受性度量被储存在与各个裸芯相关联的特征向量236的耐受性度量字段242中。
对于每个信道,储存控制器根据所述信道中的各个裸芯的耐受性度量来分级(608)信道中的裸芯。在一些实施例中,储存控制器120或其组件(例如,分级模块216,图2A)被配置为基于信道中的裸芯的耐受性度量来分级每个信道中的裸芯。在图4中,例如,信道0中的8个裸芯从最高到最低被分级。关于信道0,裸芯3是最高等级的裸芯(例如,等级1),因为与裸芯3相关联的耐受性度量高于信道0中的其它裸芯。关于信道0,裸芯6是最低等级(例如,等级8)的裸芯,因为与裸芯6相关联的耐受性度量低于信道0中的其它裸芯。
储存控制器基于在所述信道的每一个中的所述裸芯的分级,向多个裸芯组的每个裸芯组(有时也被称为“超级装置”)分配(610)来自每个信道的一个或多个裸芯(例如,每个信道一个或两个裸芯通常被分配到裸芯组),其中分配到各个裸芯组的所述裸芯具有对应于所述各个裸芯组的分级或者分级的范围,并且每个裸芯组具有有区别的相应的分级或者分级的范围。在一些实施例中,储存控制器120或其组件(例如,组合模块218,图2A)被配置为基于它们相应的分级将闪速存储器中的多个裸芯组合为裸芯组。在一些实施例中,每个信道中的一个或多个裸芯被分配到裸芯组。在一些实施例中,分配到多个裸芯组的第一裸芯组的裸芯的数量不等于分配到多个裸芯组的第二裸芯组的裸芯的数量。在图4中,例如,具有等级1-2的每个信道中的裸芯(例如,信道0中的裸芯3和7、以及信道15中的裸芯6和0)被分配到裸芯组0,具有等级3-4的每个信道中的裸芯(例如,信道0中的裸芯0和1、以及信道15中的裸芯3和7)被分配到裸芯组1,具有等级5-6的每个信道中的裸芯(例如,信道0中的裸芯5和4、以及信道15中的裸芯5和2)被分配到裸芯组2,并且具有等级7-8的每个信道中的裸芯(例如,信道0中的裸芯2和6、以及信道15中的裸芯4和1)被分配到裸芯组3。在一些实施例中,储存控制器120或其组件(例如,组合模块218,图2A)还被配置为在裸芯组映射220中储存用于分配到每个裸芯组的裸芯的逻辑地址(或逻辑地址的范围,或其表示)。
响应于指明一组写入数据的写入命令,储存控制器通过并行地将写入数据的子组写入到分配到多个裸芯组的单个裸芯组的多个裸芯,将写入数据写入到(612)闪速存储器。例如,参考图1,储存控制器120从计算机系统110(例如,主机)经由控制线111接收主机写入命令并且经由数据连接101接收一组写入数据。响应于主机写入命令,储存控制器120或其组件(例如,数据写入模块208,图2A)被配置为:通过并行地将写入数据的子组写入到分配到多个裸芯组的单个裸芯组的多个裸芯而将数据写入到闪速存储器。例如,关于图4,通过使用16个信道将写入数据的子组同时并行地写入到裸芯组0中的16个等级1的裸芯的每一个,而在包括单个裸芯组(例如,裸芯组0)的裸芯之上交错(stripe)写入数据。
在一些实施例中,写入该写入数据包括:根据分配到所述多个裸芯组的每个裸芯组的裸芯将写入数据的逻辑地址映射(614)到闪速存储器中的物理地址。在一些实施例中,储存控制器或其组件在逻辑到物理映射238中将写入数据的逻辑地址(或逻辑地址的范围)映射到闪速存储器中的物理地址。在一些实施例中,逻辑到物理映射238被储存在储存控制器120处或者远离储存控制器120。
在一些实施例中,储存控制器基于将要进行的操作和分配到所述裸芯组的裸芯的耐受性度量来选择(616)裸芯组。在一些实施例中,储存控制器120或其组件(例如,选择模块222,图2A)被配置为基于将要进行的操作(例如,主机写入或垃圾收集操作)和分配到所述裸芯组的裸芯的耐受性度量,选择多个裸芯组的裸芯组。例如,选择模块222选择包括用于写入操作的高等级的裸芯的裸芯组。在另一示例中,选择模块222选择包括用于垃圾收集/回收操作的低等级的裸芯的裸芯组。
在一些实施例中,在第一预定的条件出现以后,储存控制器储存(618)用于每个裸芯的一个或多个块(例如,一组块或“超级块”)的平均误码率。在一些实施例中,响应于检测第一预定的条件,储存控制器120或其组件被配置为采样用于每个裸芯的一个或多个块的当前BER,对每个裸芯的一个或多个块的BER求平均,并且储存用于每个裸芯的当前的平均BER。在一些实施例中,各个裸芯的当前的平均BER被储存在与各个裸芯相关联的特征向量236的平均BER字段246中。在一些实施例中,第一预定的条件是周期性的触发器(例如,每隔X小时或者每隔在各个裸芯上进行的N个PE周期)或事件(例如,关机、断电等)。
在一些实施例中,在第二预定的条件出现之后(620),对于所述多个裸芯的每一个,储存控制器获得(622)更新的耐受性度量。在一些实施例中,储存控制器120或其组件(例如,耐受性度量模块214,图2A)被配置为储存用于所述多个裸芯的每一个的更新的耐受性度量。在一些实施例中,更新的耐受性度量基于用于每个裸芯的一个或多个块的平均误码率,其响应于检测第一预定的条件而储存。在一些实施例中,更新的耐受性度量是基于与裸芯相关联的擦除时间或者成功地译码储存在裸芯中的码字所需要的时间量。在一些实施例中,用于各个裸芯的更新的耐受性度量被储存在与各个裸芯相关联的特征向量236的耐受性度量字段242中,并且替换储存在耐受性度量字段242中的之前的值。在一些实施例中,第二预定的条件是周期性的触发器(例如,每隔Y天、每隔在各个裸芯上进行的M个PE周期等)。
在一些实施例中,在第二预定的条件出现之后(620),对于每个信道,储存控制器根据所述信道中的各个裸芯的更新的耐受性度量来重新分类(624)信道中的裸芯。在一些实施例中,储存控制器120或其组件(例如,分级模块216,图2A)被配置为基于与在信道中的每个裸芯相关联的更新的耐受性度量来重新分类每个信道中的裸芯。
在一些实施例中,在第二预定的条件出现之后(620),储存控制器基于在每一个所述信道中的裸芯的重新分级向每个裸芯组分配(626)来自每个信道的一个或多个裸芯。在一些实施例中,储存控制器120或其组件(例如,组合模块218,图2A)被配置为基于它们相应的重新分级将闪速存储器中的多个裸芯组合为裸芯组。
在一些实施例中,在基于在每一个所述信道中的裸芯的重新分级将来自每个信道的一个或多个裸芯分配到每个裸芯组之后,储存控制器更新(628)裸芯组映射,裸芯组映射包括:包含每个裸芯组的裸芯的逻辑地址的表。在一些实施例中,在基于在每一个所述信道中的裸芯的重新分级将来自每个信道的一个或多个裸芯分配到每个裸芯组之后,储存控制器120或其组件(例如,组合模块218,图2A)被配置为基于重新分级更新裸芯组映射220以反映用于分配到每个裸芯组的裸芯的逻辑地址(或逻辑地址的范围,或其表示)。
图7示出了管理包括储存控制器和非易失性存储器的储存系统(例如,闪速存储器)的方法700的流程图表示,非易失性存储器包括一个或多个非易失性存储器装置,该非易失性存储器装置的每一个包括多个裸芯并且每个裸芯包括多个块(有时也被称为子单元)。在一些实施例中,方法700由储存控制器120或储存控制器120的一个或多个组件(例如,管理模块121,图1和2A)进行。在一些实施例中,方法700由储存在非瞬时性计算机可读储存介质中的指令管理,并且指令由储存控制器120的一个或多个处理器、诸如管理模块121的一个或多个处理单元(CPU)122执行。
储存控制器获得(702)用于所述多个裸芯的每一个的耐受性度量(例如,BER或PE周期的数量)。在一些实施例中,耐受性度量是指示用于各个裸芯的估测的寿命或使用期限的任何信息。在一些实施例中,在代表性块上预定的数量的PE周期进行之后测量的用于从各个裸芯的代表性块读取的数据的BER是耐受性度量。在一些实施例中,当用于从代表性块读取的数据的BER满足或者超过预定的阈值时,在各个裸芯的代表性块上进行的总的PE周期的数量是耐受性度量。在一些实施例中,用于各个裸芯的耐受性度量是基于从各个裸芯擦除数据所需要的时间量(例如,擦除时间随着各个裸芯的老化而增加)。在一些实施例中,用于各个裸芯的耐受性度量是基于成功地译码储存在各个裸芯中的码字所需要的处理周期的时间长度或数量(例如,译码低密度校验码(LDPC)编码的码字所需要的迭代或周期的数量)。储存控制器120或其组件(例如,耐受性度量模块214,图2A)被配置为从与储存在特征向量表234中的各个裸芯相关联的特征向量236获得用于各个裸芯的耐受性度量。
储存控制器基于它们相应的耐受性度量将多个裸芯分类为(704)多个裸芯组,其中每个裸芯组包括一个或多个裸芯并且每个裸芯组与耐受性度量的范围相关联。例如,具有基本上类似的耐受性度量的裸芯被分配到相同的裸芯组。如此,当在特定裸芯组的裸芯上进行存储器操作时,特定裸芯组中的裸芯将以基本上类似的速率损坏。在一些实施例中,分配到多个裸芯组的第一裸芯组的裸芯的数量不等于分配到多个裸芯组的第二裸芯组的裸芯的数量。
在一些实施例中,多个信道(例如,16个信道)将储存控制器通信地耦接到闪速存储器,并且多个信道的每一个与多个裸芯的各个子组(例如,每个信道8或16个裸芯)通信地耦接。在一些实现方式中,分配到任何特定裸芯组的裸芯包括来自各种信道的不相等的数量的裸芯。例如,如果一个信道(例如,第一信道)在对应于特定裸芯组的耐受性度量范围中相比另外的信道(例如,第二信道)具有更大数量的裸芯,特定裸芯组将包括比来自第二信道更大数量的来自第一信道的裸芯。
此外,被分配到各个裸芯组的来自各个信道的裸芯的数量基于在各个信道中的裸芯的耐受性度量而变化。例如,各个信道中零个裸芯被分配到裸芯组,因为各个信道中的裸芯的耐受性度量不满足与各个裸芯组相关联的耐受性度量的范围。在另一示例中,在各个信道中的所有裸芯基于它们的各个耐受性度量被分配到单个裸芯组,因为各个信道中的裸芯的耐受性度量都满足与各个裸芯组相关联的耐受性度量的范围。
响应于指明一组写入数据的写入命令,储存控制器通过并行地将写入数据的子组写入到分配到多个裸芯组的单个裸芯组的多个裸芯而将数据写入(706)到闪速存储器。例如,储存控制器120计算机系统110(例如,主机)经由控制线111接收主机写入命令并且经由数据连接101接收一组写入数据。响应于主机写入命令,储存控制器120或其组件(例如,数据写入模块208,图2A)被配置为通过将写入数据的子组(例如,当可能时并行地)写入到分配到多个裸芯组的单个裸芯组的多个裸芯而将数据写入到闪速存储器。
在一些实施例中,在预定的条件出现之后,储存控制器对于所述多个裸芯的每一个,获得更新的耐受性度量。在一些实施例中,储存控制器120或其组件(例如,耐受性度量模块214,图2A)被配置为储存用于所述多个裸芯的每一个的更新的耐受性度量。在一些实施例中,用于各个裸芯的更新的耐受性度量被储存在与各个裸芯相关联的特征向量236的耐受性度量字段242中,并且替换储存在耐受性度量字段242中的之前的值。在一些实施例中,第二预定的条件是周期性的触发器(例如,每隔Y天、每隔在各个裸芯上进行的M个PE周期等)。
在一些实施例中,在预定的条件出现之后,储存控制器基于它们相应的更新的耐受性度量将多个裸芯重新分类为多个更新的裸芯组,其中每个更新的裸芯组包括一个或多个裸芯,并且每个更新的裸芯组与耐受性度量的范围相关联。
在一些实施例中,在基于它们相应的更新的耐受性度量将所述多个裸芯重新分类为多个更新的裸芯组之后,储存控制器更新裸芯组映射,其中裸芯组映射包括:包含每个裸芯组的裸芯的逻辑地址的表。
应理解的是,尽管术语“第一”、“第二”等在这里可以被用于描述各种元件,但是这些元件不应由这些术语限制。这些术语仅被用于将一个元件与另一个区分。例如,第一裸芯组可以被称为第二裸芯组,并且类似地,第二裸芯组可以被称为第一裸芯组,这改变说明书的含义,只要“第一裸芯组”的所有出现被一致地重新命名并且“第二裸芯组”的所有出现被一致地重新命名。第一裸芯组和第二裸芯组两者是裸芯组,但是它们不是同一个裸芯组。
这里使用的术语是仅是为了描述特定的实施例,而不是为了限制权利要求。如在对实施例的描述和所附权利要求中所使用的,单数形式“一”、“一个”和“该”意欲也包括复数形式,除非上下文另有清楚的指示。还可以理解的是,这里所使用的术语“和/或”是指并且包含一个或多个相关联的列出的项目的任意和所有可能组合。还可以理解的是,当在本说明书中使用时,术语“包括”和/或“包含”指定所述特征、整数、步骤、操作、元件和/或部件的存在,但是不排除一个或多个其他特征、整数、步骤、操作、元件、部件和/或其组的存在或添加。
如这里所使用的,根据上下文,术语“如果”可以解释为意思是“当所述的先决条件为真时”或“在所述的先决条件为真时”或“响应于确定所述的先决条件为真”或“根据所述的先决条件为真的确定”或“响应于检测到所述的先决条件为真”。类似地,根据上下文,短语“如果确定[所述的先决条件为真]”或“如果[所述的先决条件为真]”或“当[所述的先决条件为真]时”可以解释为意思是“当确定所述的先决条件为真时”或“响应于确定所述的先决条件为真”或“根据所述的先决条件为真的确定”或“在检测到所述的先决条件为真时”或“响应于检测到所述的先决条件为真”。
为了解释的目的,已经参考了特定实施例描述了前述说明。但是,以上示意性的讨论不意欲是穷举性的或者将权利要求限制到公开的精确形式。鉴于以上教导许多修改和变化是可能的。实施例被选中并且描述以便于最好地解释操作的原理和实际应用,从而使能本领域其它技术人员。
Claims (24)
1.一种管理包括储存控制器和非易失性存储器的储存系统的方法,所述非易失性存储器包括多个裸芯,并且每个裸芯包括多个子单元,所述方法包括:
在与所述非易失性存储器耦接的所述储存控制器处:
对于所述多个裸芯的每一个,获得耐受性度量;
基于它们相应的耐受性度量将所述多个裸芯分类为多个裸芯组,其中每个裸芯组包括一个或多个裸芯,并且每个裸芯组与耐受性度量的相应的范围相关联,并且其中所述裸芯组中的一组或多组的每个包括多个裸芯;
在所述储存控制器中储存指示哪些裸芯被分配到所述多个裸芯组的每个裸芯组的裸芯组映射,其中所述储存控制器包括区别于裸芯组映射的逻辑地址到物理地址映射;以及
响应于指明一组写入数据的写入命令,通过并行地将所述组写入数据的有区别的各个子组写入到分配到所述多个裸芯组的单个裸芯组的有区别的各个裸芯而将所述组写入数据写入到所述非易失性存储器。
2.如权利要求1所述的方法,其中获得所述多个裸芯的每一个的耐受性度量包括:在所述多个裸芯的每一个中的代表性子单元上进行校准例程,以产生用于所述多个裸芯的每一个的耐受性度量。
3.如权利要求1所述的方法,其中写入所述组写入数据包括:在逻辑地址到物理地址映射中,根据在所述储存控制器中的指示哪些裸芯被分配到所述多个裸芯组的每个裸芯组的裸芯组映射,将所述写入数据的逻辑地址映射到所述非易失性存储器中的物理地址。
4.如权利要求1-3的任一项所述的方法,还包括:
基于将要进行的操作和分配到所述裸芯组的裸芯的耐受性度量选择裸芯组。
5.如权利要求1-3的任一项所述的方法,还包括:
在预定的条件出现之后:
为所述多个裸芯的每一个获得更新的耐受性度量;以及
基于它们相应的更新的耐受性度量将所述多个裸芯重新分类为多个更新的裸芯组,其中每个更新的裸芯组包括一个或多个裸芯并且每个更新的裸芯组与耐受性度量的相应的范围相关联。
6.如权利要求5所述的方法,还包括:
在将所述多个裸芯重新分类为多个更新的裸芯组之后,更新所述裸芯组映射,所述裸芯组映射包括包含每个裸芯组的裸芯的逻辑地址的表。
7.如权利要求1-3的任一项所述的方法,其中多个信道将所述储存控制器通信地耦接到所述非易失性存储器,其中每个信道通信地与所述多个裸芯的各个子组耦接,所述方法还包括:
对于每个信道,根据所述信道中的各个裸芯的耐受性度量来分级所述信道中的裸芯;以及
其中基于它们相应的耐受性度量将所述多个裸芯分类为多个裸芯组包括:基于在所述信道的每一个中的所述裸芯的分级,向多个裸芯组的每个裸芯组分配来自每个信道的一个或多个裸芯,其中分配到各个裸芯组的所述裸芯具有对应于所述各个裸芯组的分级或者分级的范围,并且每个裸芯组具有有区别的相应的分级或者分级的范围。
8.如权利要求7所述的方法,还包括:
在预定的条件出现之后:
为所述多个裸芯的每一个获得更新的耐受性度量;
对于每个信道,根据所述信道中的各个裸芯的更新的耐受性度量重新分级所述信道中的裸芯;以及
基于在每一个信道中的裸芯的重新分级,向每个裸芯组分配来自每个信道的一个或多个裸芯。
9.如权利要求8所述的方法,还包括:
在基于在每一个信道中的裸芯的重新分级将来自每个信道的一个或多个裸芯分配到每个裸芯组之后,更新所述裸芯组映射,所述裸芯组映射包括包含每个裸芯组的裸芯的逻辑地址的表。
10.一种储存控制器,包括:
一个或多个处理器;
主机接口,被配置为将所述储存控制器耦接到主机;
储存介质接口,被配置为将所述储存控制器耦接到包括多个裸芯的非易失性存储器,每个裸芯包括多个子单元;以及
储存控制器存储器,储存指令,当由所述一个或多个处理器执行所述指令时使得所述储存控制器进行包括如下的操作:
对于所述多个裸芯的每一个,获得耐受性度量;
基于它们相应的耐受性度量将所述多个裸芯分类为多个裸芯组,其中每个裸芯组包括一个或多个裸芯,并且每个裸芯组与耐受性度量的相应的范围相关联,并且其中所述裸芯组中的一组或多组的每个包括多个裸芯;
在所述储存控制器中储存指示哪些裸芯被分配到所述多个裸芯组的每个裸芯组的裸芯组映射,其中所述储存控制器包括区别于裸芯组映射的逻辑地址到物理地址映射;以及
响应于指明一组写入数据的写入命令,通过并行地将所述组写入数据的有区别的各个子组写入到分配到所述多个裸芯组的单个裸芯组的有区别的各个裸芯而将所述组写入数据写入到所述非易失性存储器。
11.如权利要求10所述的储存控制器,其中获得所述多个裸芯的每一个的耐受性度量包括:在所述多个裸芯的每一个中的代表性子单元上进行校准例程,以产生用于所述多个裸芯的每一个的耐受性度量。
12.如权利要求10所述的储存控制器,其中写入所述组写入数据包括:在逻辑地址到物理地址映射中,根据在所述储存控制器中的指示哪些裸芯被分配到所述多个裸芯组的每个裸芯组的裸芯组映射,将所述写入数据的逻辑地址映射到所述非易失性存储器中的物理地址。
13.如权利要求10-12的任一项所述的储存控制器,其中所述指令使得所述储存控制器进行还包括如下的操作:
基于将要进行的操作和分配到所述裸芯组的裸芯的耐受性度量选择裸芯组。
14.如权利要求10-12的任一项所述的储存控制器,其中所述指令使得所述储存控制器进行还包括如下的操作:
在预定的条件出现之后:
为所述多个裸芯的每一个获得更新的耐受性度量;以及
基于它们相应的更新的耐受性度量将所述多个裸芯重新分类为多个更新的裸芯组,其中每个更新的裸芯组包括一个或多个裸芯,并且每个更新的裸芯组与耐受性度量的范围相关联。
15.如权利要求14所述的储存控制器,其中所述指令使得所述储存控制器进行还包括如下的操作:
在将所述多个裸芯重新分类为多个更新的裸芯组之后,更新所述裸芯组映射,所述裸芯组映射包括包含每个裸芯组的裸芯的逻辑地址的表。
16.一种储存控制器,包括:
主机接口,被配置为将所述储存控制器耦接到主机;
储存介质接口,被配置为将所述储存控制器耦接到包括多个裸芯的非易失性存储器,每个裸芯包括多个子单元;
用于为所述多个裸芯的每一个获得耐受性度量的构件;
用于基于它们相应的耐受性度量将所述多个裸芯分类为多个裸芯组的构件,其中每个裸芯组包括一个或多个裸芯,并且每个裸芯组与耐受性度量的相应的范围相关联,并且其中所述裸芯组中的一组或多组的每个包括多个裸芯;
用于在所述储存控制器中储存指示哪些裸芯被分配到所述多个裸芯组的每个裸芯组的裸芯组映射的构件,其中所述储存控制器包括区别于裸芯组映射的逻辑地址到物理地址映射;以及
响应于指明一组写入数据的写入命令,用于通过并行地将所述组写入数据的子组写入到分配到所述多个裸芯组的单个裸芯组的有区别的各个裸芯而将所述组写入数据写入到所述非易失性存储器的构件。
17.如权利要求16所述的储存控制器,包括:
用于在预定的条件出现之后进行以下的构件:
为所述多个裸芯的每一个获得更新的耐受性度量;以及
基于它们相应的更新的耐受性度量将所述多个裸芯重新分类为多个更新的裸芯组,其中每个更新的裸芯组包括一个或多个裸芯并且每个更新的裸芯组与耐受性度量的相应的范围相关联。
18.如权利要求17所述的储存控制器,还包括:
用于在将所述多个裸芯重新分类为多个更新的裸芯组之后更新所述裸芯组映射的构件,所述裸芯组映射包括包含每个裸芯组的裸芯的逻辑地址的表。
19.如权利要求16-18的任一项所述的储存控制器,其中多个信道将所述储存控制器通信地耦接到所述非易失性存储器,其中每个信道通信地与所述多个裸芯的各个子组耦接,所述储存控制器还包括:
用于对于每个信道根据所述信道中的各个裸芯的耐受性度量来分级所述信道中的裸芯的构件;以及
其中用于基于它们相应的耐受性度量将所述多个裸芯分类为多个裸芯组的构件包括:用于基于在所述信道的每一个中的所述裸芯的分级向多个裸芯组的每个裸芯组分配来自每个信道的一个或多个裸芯的构件,其中分配到各个裸芯组的所述裸芯具有对应于所述各个裸芯组的分级或者分级的范围,并且每个裸芯组具有有区别的相应的分级或者分级的范围。
20.如权利要求19所述的储存控制器,还包括:
用于在预定的条件出现之后进行以下的构件:
为所述多个裸芯的每一个获得更新的耐受性度量;
对于每个信道,根据所述信道中的各个裸芯的更新的耐受性度量重新分级所述信道中的裸芯;以及
基于在每一个信道中的裸芯的重新分级,向每个裸芯组分配来自每个信道的一个或多个裸芯。
21.如权利要求20所述的储存控制器,还包括:
用于在基于在每一个信道中的裸芯的重新分级将来自每个信道的一个或多个裸芯分配到每个裸芯组之后更新所述裸芯组映射的构件,所述裸芯组映射包括包含每个裸芯组的裸芯的逻辑地址的表。
22.如权利要求16所述的储存控制器,其中获得用于所述多个裸芯的每一个的耐受性度量包括:在所述多个裸芯的每一个中的代表性子单元上进行校准例程,以产生用于所述多个裸芯的每一个的耐受性度量。
23.如权利要求16所述的储存控制器,其中写入所述组写入数据包括:在逻辑地址到物理地址映射中,根据在所述储存控制器中的指示哪些裸芯被分配到所述多个裸芯组的每个裸芯组的裸芯组映射,将所述写入数据的逻辑地址映射到非易失性存储器中的物理地址。
24.如权利要求16所述的储存控制器,还包括:
用于基于将要进行的操作和分配到所述裸芯组的裸芯的耐受性度量选择裸芯组的构件。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361893104P | 2013-10-18 | 2013-10-18 | |
US61/893,104 | 2013-10-18 | ||
US14/137,511 US9442662B2 (en) | 2013-10-18 | 2013-12-20 | Device and method for managing die groups |
US14/137,511 | 2013-12-20 | ||
PCT/US2014/059748 WO2015057459A1 (en) | 2013-10-18 | 2014-10-08 | Device and method for managing die groups |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105874540A CN105874540A (zh) | 2016-08-17 |
CN105874540B true CN105874540B (zh) | 2019-10-01 |
Family
ID=52827216
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480067426.7A Expired - Fee Related CN105874540B (zh) | 2013-10-18 | 2014-10-08 | 用于管理裸芯组的装置和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9442662B2 (zh) |
CN (1) | CN105874540B (zh) |
DE (1) | DE112014004778B4 (zh) |
WO (1) | WO2015057459A1 (zh) |
Families Citing this family (261)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9244769B2 (en) | 2010-09-28 | 2016-01-26 | Pure Storage, Inc. | Offset protection data in a RAID array |
US8775868B2 (en) | 2010-09-28 | 2014-07-08 | Pure Storage, Inc. | Adaptive RAID for an SSD environment |
US9646039B2 (en) | 2013-01-10 | 2017-05-09 | Pure Storage, Inc. | Snapshots in a storage system |
US9229854B1 (en) | 2013-01-28 | 2016-01-05 | Radian Memory Systems, LLC | Multi-array operation support and related devices, systems and software |
US11249652B1 (en) | 2013-01-28 | 2022-02-15 | Radian Memory Systems, Inc. | Maintenance of nonvolatile memory on host selected namespaces by a common memory controller |
US9652376B2 (en) | 2013-01-28 | 2017-05-16 | Radian Memory Systems, Inc. | Cooperative flash memory control |
US10445229B1 (en) | 2013-01-28 | 2019-10-15 | Radian Memory Systems, Inc. | Memory controller with at least one address segment defined for which data is striped across flash memory dies, with a common address offset being used to obtain physical addresses for the data in each of the dies |
US10642505B1 (en) | 2013-01-28 | 2020-05-05 | Radian Memory Systems, Inc. | Techniques for data migration based on per-data metrics and memory degradation |
US11630585B1 (en) | 2016-08-25 | 2023-04-18 | Pure Storage, Inc. | Processing evacuation events in a storage array that includes a plurality of storage devices |
US10552085B1 (en) | 2014-09-09 | 2020-02-04 | Radian Memory Systems, Inc. | Techniques for directed data migration |
US9542118B1 (en) | 2014-09-09 | 2017-01-10 | Radian Memory Systems, Inc. | Expositive flash memory control |
US9489132B2 (en) | 2014-10-07 | 2016-11-08 | Pure Storage, Inc. | Utilizing unmapped and unknown states in a replicated storage system |
US20160147444A1 (en) * | 2014-11-23 | 2016-05-26 | Apple Inc. | Parallel data storage in groups of memory blocks having similar performance characteristics |
US10404410B2 (en) * | 2015-02-27 | 2019-09-03 | Pure Storage, Inc. | Storage unit (SU) report cards |
US11188665B2 (en) | 2015-02-27 | 2021-11-30 | Pure Storage, Inc. | Using internal sensors to detect adverse interference and take defensive actions |
US9716755B2 (en) | 2015-05-26 | 2017-07-25 | Pure Storage, Inc. | Providing cloud storage array services by a local storage array in a data center |
US11102298B1 (en) | 2015-05-26 | 2021-08-24 | Pure Storage, Inc. | Locally providing cloud storage services for fleet management |
US9594678B1 (en) | 2015-05-27 | 2017-03-14 | Pure Storage, Inc. | Preventing duplicate entries of identical data in a storage device |
US10021170B2 (en) | 2015-05-29 | 2018-07-10 | Pure Storage, Inc. | Managing a storage array using client-side services |
US9300660B1 (en) | 2015-05-29 | 2016-03-29 | Pure Storage, Inc. | Providing authorization and authentication in a cloud for a user of a storage array |
US11503031B1 (en) | 2015-05-29 | 2022-11-15 | Pure Storage, Inc. | Storage array access control from cloud-based user authorization and authentication |
US9444822B1 (en) | 2015-05-29 | 2016-09-13 | Pure Storage, Inc. | Storage array access control from cloud-based user authorization and authentication |
US9588691B2 (en) | 2015-06-10 | 2017-03-07 | Pure Storage, Inc. | Dynamically managing control information in a storage device |
US9594512B1 (en) | 2015-06-19 | 2017-03-14 | Pure Storage, Inc. | Attributing consumed storage capacity among entities storing data in a storage array |
US10310740B2 (en) | 2015-06-23 | 2019-06-04 | Pure Storage, Inc. | Aligning memory access operations to a geometry of a storage device |
US10296236B2 (en) * | 2015-07-01 | 2019-05-21 | Pure Storage, Inc. | Offloading device management responsibilities from a storage device in an array of storage devices |
US10552058B1 (en) | 2015-07-17 | 2020-02-04 | Radian Memory Systems, Inc. | Techniques for delegating data processing to a cooperative memory controller |
US9892071B2 (en) | 2015-08-03 | 2018-02-13 | Pure Storage, Inc. | Emulating a remote direct memory access (‘RDMA’) link between controllers in a storage array |
US9851762B1 (en) | 2015-08-06 | 2017-12-26 | Pure Storage, Inc. | Compliant printed circuit board (‘PCB’) within an enclosure |
US11294588B1 (en) | 2015-08-24 | 2022-04-05 | Pure Storage, Inc. | Placing data within a storage device |
US10198194B2 (en) | 2015-08-24 | 2019-02-05 | Pure Storage, Inc. | Placing data within a storage device of a flash array |
US11625181B1 (en) | 2015-08-24 | 2023-04-11 | Pure Storage, Inc. | Data tiering using snapshots |
KR102401600B1 (ko) | 2015-08-31 | 2022-05-25 | 삼성전자주식회사 | 데이터 양에 기초하여 복수의 데이터 스트림을 관리하도록 구성되는 스토리지 장치 |
US20170068467A1 (en) * | 2015-09-04 | 2017-03-09 | HGST Netherlands B.V. | Wear management for flash memory devices |
US9384082B1 (en) | 2015-10-23 | 2016-07-05 | Pure Storage, Inc. | Proactively providing corrective measures for storage arrays |
US10514978B1 (en) | 2015-10-23 | 2019-12-24 | Pure Storage, Inc. | Automatic deployment of corrective measures for storage arrays |
US11360844B1 (en) | 2015-10-23 | 2022-06-14 | Pure Storage, Inc. | Recovery of a container storage provider |
US10284232B2 (en) | 2015-10-28 | 2019-05-07 | Pure Storage, Inc. | Dynamic error processing in a storage device |
US9740414B2 (en) | 2015-10-29 | 2017-08-22 | Pure Storage, Inc. | Optimizing copy operations |
US10374868B2 (en) | 2015-10-29 | 2019-08-06 | Pure Storage, Inc. | Distributed command processing in a flash storage system |
US10353777B2 (en) | 2015-10-30 | 2019-07-16 | Pure Storage, Inc. | Ensuring crash-safe forward progress of a system configuration update |
US9760479B2 (en) | 2015-12-02 | 2017-09-12 | Pure Storage, Inc. | Writing data in a storage system that includes a first type of storage device and a second type of storage device |
US11762764B1 (en) | 2015-12-02 | 2023-09-19 | Pure Storage, Inc. | Writing data in a storage system that includes a first type of storage device and a second type of storage device |
US11616834B2 (en) | 2015-12-08 | 2023-03-28 | Pure Storage, Inc. | Efficient replication of a dataset to the cloud |
US10326836B2 (en) | 2015-12-08 | 2019-06-18 | Pure Storage, Inc. | Partially replicating a snapshot between storage systems |
US10162835B2 (en) | 2015-12-15 | 2018-12-25 | Pure Storage, Inc. | Proactive management of a plurality of storage arrays in a multi-array system |
US11347697B1 (en) | 2015-12-15 | 2022-05-31 | Pure Storage, Inc. | Proactively optimizing a storage system |
US10346043B2 (en) | 2015-12-28 | 2019-07-09 | Pure Storage, Inc. | Adaptive computing for data compression |
US9817595B2 (en) | 2016-01-28 | 2017-11-14 | Apple Inc. | Management of peak power consumed by multiple memory devices |
US9886314B2 (en) | 2016-01-28 | 2018-02-06 | Pure Storage, Inc. | Placing workloads in a multi-array system |
US10572460B2 (en) | 2016-02-11 | 2020-02-25 | Pure Storage, Inc. | Compressing data in dependence upon characteristics of a storage system |
US9760297B2 (en) | 2016-02-12 | 2017-09-12 | Pure Storage, Inc. | Managing input/output (‘I/O’) queues in a data storage system |
US9959043B2 (en) | 2016-03-16 | 2018-05-01 | Pure Storage, Inc. | Performing a non-disruptive upgrade of data in a storage system |
US11995315B2 (en) | 2016-03-16 | 2024-05-28 | Pure Storage, Inc. | Converting data formats in a storage system |
US10365996B2 (en) * | 2016-03-24 | 2019-07-30 | Advanced Micro Devices, Inc. | Performance-aware and reliability-aware data placement for n-level heterogeneous memory systems |
US11112990B1 (en) | 2016-04-27 | 2021-09-07 | Pure Storage, Inc. | Managing storage device evacuation |
US9841921B2 (en) | 2016-04-27 | 2017-12-12 | Pure Storage, Inc. | Migrating data in a storage array that includes a plurality of storage devices |
US11809727B1 (en) | 2016-04-27 | 2023-11-07 | Pure Storage, Inc. | Predicting failures in a storage system that includes a plurality of storage devices |
US9811264B1 (en) | 2016-04-28 | 2017-11-07 | Pure Storage, Inc. | Deploying client-specific applications in a storage system utilizing redundant system resources |
US10303390B1 (en) | 2016-05-02 | 2019-05-28 | Pure Storage, Inc. | Resolving fingerprint collisions in flash storage system |
US11231858B2 (en) | 2016-05-19 | 2022-01-25 | Pure Storage, Inc. | Dynamically configuring a storage system to facilitate independent scaling of resources |
US9507532B1 (en) | 2016-05-20 | 2016-11-29 | Pure Storage, Inc. | Migrating data in a storage array that includes a plurality of storage devices and a plurality of write buffer devices |
US10691567B2 (en) | 2016-06-03 | 2020-06-23 | Pure Storage, Inc. | Dynamically forming a failure domain in a storage system that includes a plurality of blades |
US10037164B1 (en) | 2016-06-29 | 2018-07-31 | EMC IP Holding Company LLC | Flash interface for processing datasets |
US11029881B2 (en) * | 2016-06-29 | 2021-06-08 | Sony Corporation | Memory controller, memory system, and information processing system |
US10089025B1 (en) | 2016-06-29 | 2018-10-02 | EMC IP Holding Company LLC | Bloom filters in a flash memory |
US10261704B1 (en) | 2016-06-29 | 2019-04-16 | EMC IP Holding Company LLC | Linked lists in flash memory |
US10055351B1 (en) | 2016-06-29 | 2018-08-21 | EMC IP Holding Company LLC | Low-overhead index for a flash cache |
US10331561B1 (en) | 2016-06-29 | 2019-06-25 | Emc Corporation | Systems and methods for rebuilding a cache index |
US10146438B1 (en) | 2016-06-29 | 2018-12-04 | EMC IP Holding Company LLC | Additive library for data structures in a flash memory |
US10452310B1 (en) | 2016-07-13 | 2019-10-22 | Pure Storage, Inc. | Validating cabling for storage component admission to a storage array |
US11706895B2 (en) | 2016-07-19 | 2023-07-18 | Pure Storage, Inc. | Independent scaling of compute resources and storage resources in a storage system |
US10459652B2 (en) | 2016-07-27 | 2019-10-29 | Pure Storage, Inc. | Evacuating blades in a storage array that includes a plurality of blades |
US10474363B1 (en) | 2016-07-29 | 2019-11-12 | Pure Storage, Inc. | Space reporting in a storage system |
US11481261B1 (en) | 2016-09-07 | 2022-10-25 | Pure Storage, Inc. | Preventing extended latency in a storage system |
US11886922B2 (en) | 2016-09-07 | 2024-01-30 | Pure Storage, Inc. | Scheduling input/output operations for a storage system |
US11960348B2 (en) | 2016-09-07 | 2024-04-16 | Pure Storage, Inc. | Cloud-based monitoring of hardware components in a fleet of storage systems |
US10146585B2 (en) | 2016-09-07 | 2018-12-04 | Pure Storage, Inc. | Ensuring the fair utilization of system resources using workload based, time-independent scheduling |
US10331588B2 (en) | 2016-09-07 | 2019-06-25 | Pure Storage, Inc. | Ensuring the appropriate utilization of system resources using weighted workload based, time-independent scheduling |
US10908966B1 (en) | 2016-09-07 | 2021-02-02 | Pure Storage, Inc. | Adapting target service times in a storage system |
US11531577B1 (en) | 2016-09-07 | 2022-12-20 | Pure Storage, Inc. | Temporarily limiting access to a storage device |
US10235229B1 (en) | 2016-09-07 | 2019-03-19 | Pure Storage, Inc. | Rehabilitating storage devices in a storage array that includes a plurality of storage devices |
US10671439B1 (en) | 2016-09-07 | 2020-06-02 | Pure Storage, Inc. | Workload planning with quality-of-service (‘QOS’) integration |
CN107025066A (zh) | 2016-09-14 | 2017-08-08 | 阿里巴巴集团控股有限公司 | 在基于闪存的存储介质中写入存储数据的方法和装置 |
KR102545698B1 (ko) * | 2016-09-27 | 2023-06-19 | 삼성전자주식회사 | 데이터 저장 시스템 |
US10740466B1 (en) | 2016-09-29 | 2020-08-11 | Amazon Technologies, Inc. | Securing interfaces of a compute node |
US11379132B1 (en) | 2016-10-20 | 2022-07-05 | Pure Storage, Inc. | Correlating medical sensor data |
US10007459B2 (en) | 2016-10-20 | 2018-06-26 | Pure Storage, Inc. | Performance tuning in a storage system that includes one or more storage devices |
US11620075B2 (en) | 2016-11-22 | 2023-04-04 | Pure Storage, Inc. | Providing application aware storage |
US10162566B2 (en) | 2016-11-22 | 2018-12-25 | Pure Storage, Inc. | Accumulating application-level statistics in a storage system |
US10049764B2 (en) | 2016-12-13 | 2018-08-14 | Macronix International Co., Ltd. | Control method for memory device and memory controller |
US10198205B1 (en) | 2016-12-19 | 2019-02-05 | Pure Storage, Inc. | Dynamically adjusting a number of storage devices utilized to simultaneously service write operations |
US11461273B1 (en) | 2016-12-20 | 2022-10-04 | Pure Storage, Inc. | Modifying storage distribution in a storage system that includes one or more storage devices |
US10379769B2 (en) | 2016-12-30 | 2019-08-13 | Western Digital Technologies, Inc. | Continuous adaptive calibration for flash memory devices |
US10489307B2 (en) | 2017-01-05 | 2019-11-26 | Pure Storage, Inc. | Periodically re-encrypting user data stored on a storage device |
US11307998B2 (en) | 2017-01-09 | 2022-04-19 | Pure Storage, Inc. | Storage efficiency of encrypted host system data |
US11340800B1 (en) | 2017-01-19 | 2022-05-24 | Pure Storage, Inc. | Content masking in a storage system |
US10503700B1 (en) | 2017-01-19 | 2019-12-10 | Pure Storage, Inc. | On-demand content filtering of snapshots within a storage system |
US11163624B2 (en) | 2017-01-27 | 2021-11-02 | Pure Storage, Inc. | Dynamically adjusting an amount of log data generated for a storage system |
JP6765321B2 (ja) * | 2017-02-28 | 2020-10-07 | キオクシア株式会社 | メモリシステムおよび制御方法 |
US10901627B1 (en) * | 2017-02-28 | 2021-01-26 | Amazon Technologies, Inc. | Tracking persistent memory usage |
US11442825B2 (en) | 2017-03-10 | 2022-09-13 | Pure Storage, Inc. | Establishing a synchronous replication relationship between two or more storage systems |
US10521344B1 (en) | 2017-03-10 | 2019-12-31 | Pure Storage, Inc. | Servicing input/output (‘I/O’) operations directed to a dataset that is synchronized across a plurality of storage systems |
US12056383B2 (en) | 2017-03-10 | 2024-08-06 | Pure Storage, Inc. | Edge management service |
US11803453B1 (en) | 2017-03-10 | 2023-10-31 | Pure Storage, Inc. | Using host connectivity states to avoid queuing I/O requests |
US11941279B2 (en) | 2017-03-10 | 2024-03-26 | Pure Storage, Inc. | Data path virtualization |
US10454810B1 (en) | 2017-03-10 | 2019-10-22 | Pure Storage, Inc. | Managing host definitions across a plurality of storage systems |
US11675520B2 (en) | 2017-03-10 | 2023-06-13 | Pure Storage, Inc. | Application replication among storage systems synchronously replicating a dataset |
US11169727B1 (en) | 2017-03-10 | 2021-11-09 | Pure Storage, Inc. | Synchronous replication between storage systems with virtualized storage |
US10503427B2 (en) | 2017-03-10 | 2019-12-10 | Pure Storage, Inc. | Synchronously replicating datasets and other managed objects to cloud-based storage systems |
US11089105B1 (en) | 2017-12-14 | 2021-08-10 | Pure Storage, Inc. | Synchronously replicating datasets in cloud-based storage systems |
US10552169B2 (en) * | 2017-03-17 | 2020-02-04 | Sandisk Technologies Llc | On-die signal calibration |
US10459664B1 (en) | 2017-04-10 | 2019-10-29 | Pure Storage, Inc. | Virtualized copy-by-reference |
US9910618B1 (en) | 2017-04-10 | 2018-03-06 | Pure Storage, Inc. | Migrating applications executing on a storage system |
US11868629B1 (en) | 2017-05-05 | 2024-01-09 | Pure Storage, Inc. | Storage system sizing service |
US12086650B2 (en) | 2017-06-12 | 2024-09-10 | Pure Storage, Inc. | Workload placement based on carbon emissions |
US10552090B2 (en) | 2017-09-07 | 2020-02-04 | Pure Storage, Inc. | Solid state drives with multiple types of addressable memory |
US11592991B2 (en) | 2017-09-07 | 2023-02-28 | Pure Storage, Inc. | Converting raid data between persistent storage types |
US10613791B2 (en) | 2017-06-12 | 2020-04-07 | Pure Storage, Inc. | Portable snapshot replication between storage systems |
US11989429B1 (en) | 2017-06-12 | 2024-05-21 | Pure Storage, Inc. | Recommending changes to a storage system |
US10976962B2 (en) | 2018-03-15 | 2021-04-13 | Pure Storage, Inc. | Servicing I/O operations in a cloud-based storage system |
US10417092B2 (en) | 2017-09-07 | 2019-09-17 | Pure Storage, Inc. | Incremental RAID stripe update parity calculation |
US10884636B1 (en) | 2017-06-12 | 2021-01-05 | Pure Storage, Inc. | Presenting workload performance in a storage system |
US12061822B1 (en) | 2017-06-12 | 2024-08-13 | Pure Storage, Inc. | Utilizing volume-level policies in a storage system |
EP3612922A1 (en) | 2017-06-12 | 2020-02-26 | Pure Storage, Inc. | Accessible fast durable storage integrated into a bulk storage device |
US11593036B2 (en) | 2017-06-12 | 2023-02-28 | Pure Storage, Inc. | Staging data within a unified storage element |
US11442669B1 (en) | 2018-03-15 | 2022-09-13 | Pure Storage, Inc. | Orchestrating a virtual storage system |
US11016824B1 (en) | 2017-06-12 | 2021-05-25 | Pure Storage, Inc. | Event identification with out-of-order reporting in a cloud-based environment |
US11422731B1 (en) | 2017-06-12 | 2022-08-23 | Pure Storage, Inc. | Metadata-based replication of a dataset |
US10853148B1 (en) | 2017-06-12 | 2020-12-01 | Pure Storage, Inc. | Migrating workloads between a plurality of execution environments |
US11609718B1 (en) | 2017-06-12 | 2023-03-21 | Pure Storage, Inc. | Identifying valid data after a storage system recovery |
US11340939B1 (en) | 2017-06-12 | 2022-05-24 | Pure Storage, Inc. | Application-aware analytics for storage systems |
US12086651B2 (en) | 2017-06-12 | 2024-09-10 | Pure Storage, Inc. | Migrating workloads using active disaster recovery |
US11210133B1 (en) | 2017-06-12 | 2021-12-28 | Pure Storage, Inc. | Workload mobility between disparate execution environments |
US11561714B1 (en) | 2017-07-05 | 2023-01-24 | Pure Storage, Inc. | Storage efficiency driven migration |
US11477280B1 (en) | 2017-07-26 | 2022-10-18 | Pure Storage, Inc. | Integrating cloud storage services |
US10831935B2 (en) | 2017-08-31 | 2020-11-10 | Pure Storage, Inc. | Encryption management with host-side data reduction |
US11861423B1 (en) | 2017-10-19 | 2024-01-02 | Pure Storage, Inc. | Accelerating artificial intelligence (‘AI’) workflows |
US10452444B1 (en) | 2017-10-19 | 2019-10-22 | Pure Storage, Inc. | Storage system with compute resources and shared storage resources |
US10360214B2 (en) | 2017-10-19 | 2019-07-23 | Pure Storage, Inc. | Ensuring reproducibility in an artificial intelligence infrastructure |
US11494692B1 (en) | 2018-03-26 | 2022-11-08 | Pure Storage, Inc. | Hyperscale artificial intelligence and machine learning infrastructure |
US10671435B1 (en) | 2017-10-19 | 2020-06-02 | Pure Storage, Inc. | Data transformation caching in an artificial intelligence infrastructure |
US12067466B2 (en) | 2017-10-19 | 2024-08-20 | Pure Storage, Inc. | Artificial intelligence and machine learning hyperscale infrastructure |
US11455168B1 (en) | 2017-10-19 | 2022-09-27 | Pure Storage, Inc. | Batch building for deep learning training workloads |
US10484174B1 (en) | 2017-11-01 | 2019-11-19 | Pure Storage, Inc. | Protecting an encryption key for data stored in a storage system that includes a plurality of storage devices |
US10671494B1 (en) | 2017-11-01 | 2020-06-02 | Pure Storage, Inc. | Consistent selection of replicated datasets during storage system recovery |
US10509581B1 (en) | 2017-11-01 | 2019-12-17 | Pure Storage, Inc. | Maintaining write consistency in a multi-threaded storage system |
US10467107B1 (en) | 2017-11-01 | 2019-11-05 | Pure Storage, Inc. | Maintaining metadata resiliency among storage device failures |
US10817392B1 (en) | 2017-11-01 | 2020-10-27 | Pure Storage, Inc. | Ensuring resiliency to storage device failures in a storage system that includes a plurality of storage devices |
US10929226B1 (en) | 2017-11-21 | 2021-02-23 | Pure Storage, Inc. | Providing for increased flexibility for large scale parity |
US10936238B2 (en) | 2017-11-28 | 2021-03-02 | Pure Storage, Inc. | Hybrid data tiering |
US10990282B1 (en) | 2017-11-28 | 2021-04-27 | Pure Storage, Inc. | Hybrid data tiering with cloud storage |
US10795598B1 (en) | 2017-12-07 | 2020-10-06 | Pure Storage, Inc. | Volume migration for storage systems synchronously replicating a dataset |
US11036677B1 (en) | 2017-12-14 | 2021-06-15 | Pure Storage, Inc. | Replicated data integrity |
US10929031B2 (en) | 2017-12-21 | 2021-02-23 | Pure Storage, Inc. | Maximizing data reduction in a partially encrypted volume |
US10992533B1 (en) | 2018-01-30 | 2021-04-27 | Pure Storage, Inc. | Policy based path management |
US11150834B1 (en) | 2018-03-05 | 2021-10-19 | Pure Storage, Inc. | Determining storage consumption in a storage system |
US10942650B1 (en) | 2018-03-05 | 2021-03-09 | Pure Storage, Inc. | Reporting capacity utilization in a storage system |
US10521151B1 (en) | 2018-03-05 | 2019-12-31 | Pure Storage, Inc. | Determining effective space utilization in a storage system |
US11972134B2 (en) | 2018-03-05 | 2024-04-30 | Pure Storage, Inc. | Resource utilization using normalized input/output (‘I/O’) operations |
US11861170B2 (en) | 2018-03-05 | 2024-01-02 | Pure Storage, Inc. | Sizing resources for a replication target |
US10296258B1 (en) | 2018-03-09 | 2019-05-21 | Pure Storage, Inc. | Offloading data storage to a decentralized storage network |
US11048590B1 (en) | 2018-03-15 | 2021-06-29 | Pure Storage, Inc. | Data consistency during recovery in a cloud-based storage system |
US10917471B1 (en) | 2018-03-15 | 2021-02-09 | Pure Storage, Inc. | Active membership in a cloud-based storage system |
US11288138B1 (en) | 2018-03-15 | 2022-03-29 | Pure Storage, Inc. | Recovery from a system fault in a cloud-based storage system |
US10924548B1 (en) | 2018-03-15 | 2021-02-16 | Pure Storage, Inc. | Symmetric storage using a cloud-based storage system |
US12066900B2 (en) | 2018-03-15 | 2024-08-20 | Pure Storage, Inc. | Managing disaster recovery to cloud computing environment |
US11210009B1 (en) | 2018-03-15 | 2021-12-28 | Pure Storage, Inc. | Staging data in a cloud-based storage system |
US11171950B1 (en) | 2018-03-21 | 2021-11-09 | Pure Storage, Inc. | Secure cloud-based storage system management |
US11095706B1 (en) | 2018-03-21 | 2021-08-17 | Pure Storage, Inc. | Secure cloud-based storage system management |
US10838833B1 (en) | 2018-03-26 | 2020-11-17 | Pure Storage, Inc. | Providing for high availability in a data analytics pipeline without replicas |
US11392553B1 (en) | 2018-04-24 | 2022-07-19 | Pure Storage, Inc. | Remote data management |
US11436344B1 (en) | 2018-04-24 | 2022-09-06 | Pure Storage, Inc. | Secure encryption in deduplication cluster |
US12086431B1 (en) | 2018-05-21 | 2024-09-10 | Pure Storage, Inc. | Selective communication protocol layering for synchronous replication |
US11675503B1 (en) | 2018-05-21 | 2023-06-13 | Pure Storage, Inc. | Role-based data access |
US11954220B2 (en) | 2018-05-21 | 2024-04-09 | Pure Storage, Inc. | Data protection for container storage |
US11455409B2 (en) | 2018-05-21 | 2022-09-27 | Pure Storage, Inc. | Storage layer data obfuscation |
US10992598B2 (en) | 2018-05-21 | 2021-04-27 | Pure Storage, Inc. | Synchronously replicating when a mediation service becomes unavailable |
US10871922B2 (en) | 2018-05-22 | 2020-12-22 | Pure Storage, Inc. | Integrated storage management between storage systems and container orchestrators |
US11403000B1 (en) | 2018-07-20 | 2022-08-02 | Pure Storage, Inc. | Resiliency in a cloud-based storage system |
US11416298B1 (en) | 2018-07-20 | 2022-08-16 | Pure Storage, Inc. | Providing application-specific storage by a storage system |
US11632360B1 (en) | 2018-07-24 | 2023-04-18 | Pure Storage, Inc. | Remote access to a storage device |
US11146564B1 (en) | 2018-07-24 | 2021-10-12 | Pure Storage, Inc. | Login authentication in a cloud storage platform |
US11954238B1 (en) | 2018-07-24 | 2024-04-09 | Pure Storage, Inc. | Role-based access control for a storage system |
US10824502B2 (en) * | 2018-08-08 | 2020-11-03 | Micron Technology, Inc. | Enhanced codeword for media persistence and diagnostics |
US11860820B1 (en) | 2018-09-11 | 2024-01-02 | Pure Storage, Inc. | Processing data through a storage system in a data pipeline |
US10671302B1 (en) | 2018-10-26 | 2020-06-02 | Pure Storage, Inc. | Applying a rate limit across a plurality of storage systems |
US12026381B2 (en) | 2018-10-26 | 2024-07-02 | Pure Storage, Inc. | Preserving identities and policies across replication |
US10963189B1 (en) | 2018-11-18 | 2021-03-30 | Pure Storage, Inc. | Coalescing write operations in a cloud-based storage system |
US11023179B2 (en) | 2018-11-18 | 2021-06-01 | Pure Storage, Inc. | Cloud-based storage system storage management |
US11526405B1 (en) | 2018-11-18 | 2022-12-13 | Pure Storage, Inc. | Cloud-based disaster recovery |
US12026061B1 (en) | 2018-11-18 | 2024-07-02 | Pure Storage, Inc. | Restoring a cloud-based storage system to a selected state |
US11340837B1 (en) | 2018-11-18 | 2022-05-24 | Pure Storage, Inc. | Storage system management via a remote console |
US12026060B1 (en) | 2018-11-18 | 2024-07-02 | Pure Storage, Inc. | Reverting between codified states in a cloud-based storage system |
US10896123B2 (en) * | 2018-12-13 | 2021-01-19 | Western Digital Technologies, Inc. | Enhancing the effectiveness of read scan performance and reliability for non-volatile memory |
US11650749B1 (en) | 2018-12-17 | 2023-05-16 | Pure Storage, Inc. | Controlling access to sensitive data in a shared dataset |
US11003369B1 (en) | 2019-01-14 | 2021-05-11 | Pure Storage, Inc. | Performing a tune-up procedure on a storage device during a boot process |
US11042452B1 (en) | 2019-03-20 | 2021-06-22 | Pure Storage, Inc. | Storage system data recovery using data recovery as a service |
US11221778B1 (en) | 2019-04-02 | 2022-01-11 | Pure Storage, Inc. | Preparing data for deduplication |
US11068162B1 (en) | 2019-04-09 | 2021-07-20 | Pure Storage, Inc. | Storage management in a cloud data store |
US11126364B2 (en) | 2019-07-18 | 2021-09-21 | Pure Storage, Inc. | Virtual storage system architecture |
US11853266B2 (en) | 2019-05-15 | 2023-12-26 | Pure Storage, Inc. | Providing a file system in a cloud environment |
US11392555B2 (en) | 2019-05-15 | 2022-07-19 | Pure Storage, Inc. | Cloud-based file services |
US11327676B1 (en) | 2019-07-18 | 2022-05-10 | Pure Storage, Inc. | Predictive data streaming in a virtual storage system |
US12001355B1 (en) | 2019-05-24 | 2024-06-04 | Pure Storage, Inc. | Chunked memory efficient storage data transfers |
US11526408B2 (en) | 2019-07-18 | 2022-12-13 | Pure Storage, Inc. | Data recovery in a virtual storage system |
US11422751B2 (en) | 2019-07-18 | 2022-08-23 | Pure Storage, Inc. | Creating a virtual storage system |
US11861221B1 (en) | 2019-07-18 | 2024-01-02 | Pure Storage, Inc. | Providing scalable and reliable container-based storage services |
US11797197B1 (en) | 2019-07-18 | 2023-10-24 | Pure Storage, Inc. | Dynamic scaling of a virtual storage system |
US11487715B1 (en) | 2019-07-18 | 2022-11-01 | Pure Storage, Inc. | Resiliency in a cloud-based storage system |
US11093139B1 (en) | 2019-07-18 | 2021-08-17 | Pure Storage, Inc. | Durably storing data within a virtual storage system |
US11086553B1 (en) | 2019-08-28 | 2021-08-10 | Pure Storage, Inc. | Tiering duplicated objects in a cloud-based object store |
US11693713B1 (en) | 2019-09-04 | 2023-07-04 | Pure Storage, Inc. | Self-tuning clusters for resilient microservices |
US12045252B2 (en) | 2019-09-13 | 2024-07-23 | Pure Storage, Inc. | Providing quality of service (QoS) for replicating datasets |
US11797569B2 (en) | 2019-09-13 | 2023-10-24 | Pure Storage, Inc. | Configurable data replication |
US11360689B1 (en) | 2019-09-13 | 2022-06-14 | Pure Storage, Inc. | Cloning a tracking copy of replica data |
US11573864B1 (en) | 2019-09-16 | 2023-02-07 | Pure Storage, Inc. | Automating database management in a storage system |
US11669386B1 (en) | 2019-10-08 | 2023-06-06 | Pure Storage, Inc. | Managing an application's resource stack |
US11726679B2 (en) | 2019-11-05 | 2023-08-15 | Western Digital Technologies, Inc. | Applying endurance groups to zoned namespaces |
US11943293B1 (en) | 2019-12-06 | 2024-03-26 | Pure Storage, Inc. | Restoring a storage system from a replication target |
US11175984B1 (en) | 2019-12-09 | 2021-11-16 | Radian Memory Systems, Inc. | Erasure coding techniques for flash memory |
US11720497B1 (en) | 2020-01-13 | 2023-08-08 | Pure Storage, Inc. | Inferred nonsequential prefetch based on data access patterns |
US11733901B1 (en) | 2020-01-13 | 2023-08-22 | Pure Storage, Inc. | Providing persistent storage to transient cloud computing services |
US11709636B1 (en) | 2020-01-13 | 2023-07-25 | Pure Storage, Inc. | Non-sequential readahead for deep learning training |
US11275510B2 (en) | 2020-02-07 | 2022-03-15 | Samsung Electronics Co., Ltd. | Systems and methods for storage device block-level failure prediction |
US12014065B2 (en) | 2020-02-11 | 2024-06-18 | Pure Storage, Inc. | Multi-cloud orchestration as-a-service |
US11637896B1 (en) | 2020-02-25 | 2023-04-25 | Pure Storage, Inc. | Migrating applications to a cloud-computing environment |
US11868622B2 (en) | 2020-02-25 | 2024-01-09 | Pure Storage, Inc. | Application recovery across storage systems |
US11321006B1 (en) | 2020-03-25 | 2022-05-03 | Pure Storage, Inc. | Data loss prevention during transitions from a replication source |
US12038881B2 (en) | 2020-03-25 | 2024-07-16 | Pure Storage, Inc. | Replica transitions for file storage |
US11301152B1 (en) | 2020-04-06 | 2022-04-12 | Pure Storage, Inc. | Intelligently moving data between storage systems |
US11630598B1 (en) | 2020-04-06 | 2023-04-18 | Pure Storage, Inc. | Scheduling data replication operations |
US11494267B2 (en) | 2020-04-14 | 2022-11-08 | Pure Storage, Inc. | Continuous value data redundancy |
KR20210128780A (ko) * | 2020-04-17 | 2021-10-27 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러 및 이를 포함하는 저장 장치 |
US11921670B1 (en) | 2020-04-20 | 2024-03-05 | Pure Storage, Inc. | Multivariate data backup retention policies |
US11431488B1 (en) | 2020-06-08 | 2022-08-30 | Pure Storage, Inc. | Protecting local key generation using a remote key management service |
US11569105B2 (en) * | 2020-06-15 | 2023-01-31 | Taiwan Semiconductor Manufacturing Company, Ltd. | Multi-flip semiconductor die sorter tool |
US11734093B2 (en) | 2020-06-23 | 2023-08-22 | Samsung Electronics Co., Ltd. | Storage device block-level failure prediction-based data placement |
US11442652B1 (en) | 2020-07-23 | 2022-09-13 | Pure Storage, Inc. | Replication handling during storage system transportation |
US11349917B2 (en) | 2020-07-23 | 2022-05-31 | Pure Storage, Inc. | Replication handling among distinct networks |
US12079222B1 (en) | 2020-09-04 | 2024-09-03 | Pure Storage, Inc. | Enabling data portability between systems |
US11709621B2 (en) | 2020-10-09 | 2023-07-25 | Western Digital Technologies Inc. | Read threshold management and calibration |
US11893277B2 (en) * | 2020-10-14 | 2024-02-06 | Western Digital Technologies, Inc. | Data storage device managing low endurance semiconductor memory write cache |
US11545227B2 (en) | 2020-10-14 | 2023-01-03 | Micron Technology, Inc. | Threshold voltage offset bin selection based on die family in memory devices |
US11487446B2 (en) | 2020-12-03 | 2022-11-01 | Western Digital Technologies, Inc. | Overhead reduction in data transfer protocol for NAND memory |
US11361837B1 (en) | 2020-12-09 | 2022-06-14 | Micron Technology, Inc. | Memory location age tracking on memory die |
US11397545B1 (en) | 2021-01-20 | 2022-07-26 | Pure Storage, Inc. | Emulating persistent reservations in a cloud-based storage system |
US11853285B1 (en) | 2021-01-22 | 2023-12-26 | Pure Storage, Inc. | Blockchain logging of volume-level events in a storage system |
US11586384B2 (en) | 2021-02-16 | 2023-02-21 | Western Digital Technologies, Inc. | Overhead reduction in data transfer protocol for data storage devices |
US11561713B2 (en) | 2021-03-11 | 2023-01-24 | Western Digital Technologies, Inc. | Simplified high capacity die and block management |
US12086649B2 (en) | 2021-05-12 | 2024-09-10 | Pure Storage, Inc. | Rebalancing in a fleet of storage systems using data science |
US11816129B2 (en) | 2021-06-22 | 2023-11-14 | Pure Storage, Inc. | Generating datasets using approximate baselines |
US11914867B2 (en) | 2021-10-29 | 2024-02-27 | Pure Storage, Inc. | Coordinated snapshots among storage systems implementing a promotion/demotion model |
US11714723B2 (en) | 2021-10-29 | 2023-08-01 | Pure Storage, Inc. | Coordinated snapshots for data stored across distinct storage environments |
US11893263B2 (en) | 2021-10-29 | 2024-02-06 | Pure Storage, Inc. | Coordinated checkpoints among storage systems implementing checkpoint-based replication |
US11922052B2 (en) | 2021-12-15 | 2024-03-05 | Pure Storage, Inc. | Managing links between storage objects |
US11847071B2 (en) | 2021-12-30 | 2023-12-19 | Pure Storage, Inc. | Enabling communication between a single-port device and multiple storage system controllers |
US12001300B2 (en) | 2022-01-04 | 2024-06-04 | Pure Storage, Inc. | Assessing protection for storage resources |
US11860780B2 (en) | 2022-01-28 | 2024-01-02 | Pure Storage, Inc. | Storage cache management |
US11886295B2 (en) | 2022-01-31 | 2024-01-30 | Pure Storage, Inc. | Intra-block error correction |
US12026042B2 (en) * | 2022-06-01 | 2024-07-02 | Micron Technology, Inc. | Adaptive wear leveling for endurance compensation |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1396869A (zh) * | 2000-11-30 | 2003-02-12 | 索尼株式会社 | 非接触式ic卡 |
US7945723B2 (en) * | 2007-05-18 | 2011-05-17 | Samsung Electronics Co., Ltd. | Apparatus and method of managing mapping table of non-volatile memory |
CN103186470A (zh) * | 2011-12-30 | 2013-07-03 | 群联电子股份有限公司 | 存储器储存装置及其存储器控制器与数据写入方法 |
Family Cites Families (468)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4173737A (en) | 1978-05-04 | 1979-11-06 | Zenith Radio Corporation | Limited position, non-volatile memory tuning system |
US4888750A (en) | 1986-03-07 | 1989-12-19 | Kryder Mark H | Method and system for erase before write magneto-optic recording |
US4916652A (en) | 1987-09-30 | 1990-04-10 | International Business Machines Corporation | Dynamic multiple instruction stream multiple data multiple pipeline apparatus for floating-point single instruction stream single data architectures |
US5129089A (en) | 1987-12-18 | 1992-07-07 | Digital Equipment Corporation | Distributed interlock apparatus and distributed interlock management method |
US5270979A (en) | 1991-03-15 | 1993-12-14 | Sundisk Corporation | Method for optimum erasing of EEPROM |
US5657332A (en) | 1992-05-20 | 1997-08-12 | Sandisk Corporation | Soft errors handling in EEPROM devices |
US5381528A (en) | 1992-10-15 | 1995-01-10 | Maxtor Corporation | Demand allocation of read/write buffer partitions favoring sequential read cache |
US5416915A (en) | 1992-12-11 | 1995-05-16 | International Business Machines Corporation | Method and system for minimizing seek affinity and enhancing write sensitivity in a DASD array |
US5404485A (en) | 1993-03-08 | 1995-04-04 | M-Systems Flash Disk Pioneers Ltd. | Flash file system |
US5537555A (en) | 1993-03-22 | 1996-07-16 | Compaq Computer Corporation | Fully pipelined and highly concurrent memory controller |
US5519847A (en) | 1993-06-30 | 1996-05-21 | Intel Corporation | Method of pipelining sequential writes in a flash memory |
US5329491A (en) | 1993-06-30 | 1994-07-12 | Intel Corporation | Nonvolatile memory card with automatic power supply configuration |
US5708849A (en) | 1994-01-26 | 1998-01-13 | Intel Corporation | Implementing scatter/gather operations in a direct memory access device on a personal computer |
US5488702A (en) | 1994-04-26 | 1996-01-30 | Unisys Corporation | Data block check sequence generation and validation in a file cache system |
US5696917A (en) | 1994-06-03 | 1997-12-09 | Intel Corporation | Method and apparatus for performing burst read operations in an asynchronous nonvolatile memory |
GB9419246D0 (en) | 1994-09-23 | 1994-11-09 | Cambridge Consultants | Data processing circuits and interfaces |
US5666114A (en) | 1994-11-22 | 1997-09-09 | International Business Machines Corporation | Method and means for managing linear mapped address spaces storing compressed data at the storage subsystem control unit or device level |
US5530705A (en) | 1995-02-08 | 1996-06-25 | International Business Machines Corporation | Soft error recovery system and method |
US5636342A (en) | 1995-02-17 | 1997-06-03 | Dell Usa, L.P. | Systems and method for assigning unique addresses to agents on a system management bus |
US5606532A (en) | 1995-03-17 | 1997-02-25 | Atmel Corporation | EEPROM array with flash-like core |
JP3807745B2 (ja) | 1995-06-14 | 2006-08-09 | 株式会社ルネサステクノロジ | 半導体メモリ、メモリデバイス及びメモリカード |
US5890193A (en) | 1995-07-28 | 1999-03-30 | Micron Technology, Inc. | Architecture for state machine for controlling internal operations of flash memory |
US6728851B1 (en) | 1995-07-31 | 2004-04-27 | Lexar Media, Inc. | Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices |
US5790459A (en) | 1995-08-04 | 1998-08-04 | Micron Quantum Devices, Inc. | Memory circuit for performing threshold voltage tests on cells of a memory array |
US5815434A (en) | 1995-09-29 | 1998-09-29 | Intel Corporation | Multiple writes per a single erase for a nonvolatile memory |
US6044472A (en) | 1996-06-21 | 2000-03-28 | Archos | Device and method for supplying power to an external data medium reader unit connected to a computer, and external reader unit including this device |
KR100412589B1 (ko) | 1996-07-05 | 2004-04-06 | 마츠시타 덴끼 산교 가부시키가이샤 | 반도체 회로 시스템, 반도체 집적회로의 검사방법 및 그 검사계열의 생성방법 |
US6134148A (en) | 1997-09-30 | 2000-10-17 | Hitachi, Ltd. | Semiconductor integrated circuit and data processing system |
JPH10124381A (ja) | 1996-10-21 | 1998-05-15 | Mitsubishi Electric Corp | 半導体記憶装置 |
US5943692A (en) | 1997-04-30 | 1999-08-24 | International Business Machines Corporation | Mobile client computer system with flash memory management utilizing a virtual address map and variable length data |
US6006345A (en) | 1997-05-09 | 1999-12-21 | International Business Machines Corporation | Pattern generator for memory burn-in and test |
US6000006A (en) | 1997-08-25 | 1999-12-07 | Bit Microsystems, Inc. | Unified re-map and cache-index table with dual write-counters for wear-leveling of non-volatile flash RAM mass storage |
JPH11126497A (ja) | 1997-10-22 | 1999-05-11 | Oki Electric Ind Co Ltd | 不揮発性半導体記憶装置 |
US6018304A (en) | 1997-12-18 | 2000-01-25 | Texas Instruments Incorporated | Method and apparatus for high-rate n/n+1 low-complexity modulation codes with adjustable codeword length and error control capability |
US6070074A (en) | 1998-04-24 | 2000-05-30 | Trw Inc. | Method for enhancing the performance of a regenerative satellite communications system |
US6138261A (en) | 1998-04-29 | 2000-10-24 | Trw Inc. | Concatenated coding system for satellite communications |
US6182264B1 (en) | 1998-05-22 | 2001-01-30 | Vlsi Technology, Inc. | Smart dynamic selection of error correction methods for DECT based data services |
US7111293B1 (en) | 1998-06-03 | 2006-09-19 | Ants Software, Inc. | Method for increased concurrency in a computer system |
US6192092B1 (en) | 1998-06-15 | 2001-02-20 | Intel Corp. | Method and apparatus for clock skew compensation |
US6260120B1 (en) | 1998-06-29 | 2001-07-10 | Emc Corporation | Storage mapping and partitioning among multiple host processors in the presence of login state changes and host controller replacement |
US6505305B1 (en) | 1998-07-16 | 2003-01-07 | Compaq Information Technologies Group, L.P. | Fail-over of multiple memory blocks in multiple memory modules in computer system |
US6295592B1 (en) | 1998-07-31 | 2001-09-25 | Micron Technology, Inc. | Method of processing memory requests in a pipelined memory controller |
US6233625B1 (en) | 1998-11-18 | 2001-05-15 | Compaq Computer Corporation | System and method for applying initialization power to SCSI devices |
US6288860B1 (en) | 1999-01-04 | 2001-09-11 | Maxtor Corporation | Servo area numbering strategy for computer disk drives |
US6438661B1 (en) | 1999-03-03 | 2002-08-20 | International Business Machines Corporation | Method, system, and program for managing meta data in a storage system and rebuilding lost meta data in cache |
US6449625B1 (en) | 1999-04-20 | 2002-09-10 | Lucent Technologies Inc. | Use of a two-way stack approach to optimize flash memory management for embedded database systems |
US6728879B1 (en) | 1999-06-02 | 2004-04-27 | Microsoft Corporation | Transactional log with multi-sector log block validation |
US6564271B2 (en) | 1999-06-09 | 2003-05-13 | Qlogic Corporation | Method and apparatus for automatically transferring I/O blocks between a host system and a host adapter |
US20080282128A1 (en) | 1999-08-04 | 2008-11-13 | Super Talent Electronics, Inc. | Method of Error Correction Code on Solid State Disk to Gain Data Security and Higher Performance |
US7333364B2 (en) | 2000-01-06 | 2008-02-19 | Super Talent Electronics, Inc. | Cell-downgrading and reference-voltage adjustment for a multi-bit-cell flash memory |
US7660941B2 (en) | 2003-09-10 | 2010-02-09 | Super Talent Electronics, Inc. | Two-level RAM lookup table for block and page allocation and wear-leveling in limited-write flash-memories |
US20050114587A1 (en) | 2003-11-22 | 2005-05-26 | Super Talent Electronics Inc. | ExpressCard with On-Card Flash Memory with Shared Flash-Control Bus but Separate Ready Lines |
US7620769B2 (en) | 2000-01-06 | 2009-11-17 | Super Talent Electronics, Inc. | Recycling partially-stale flash blocks using a sliding window for multi-level-cell (MLC) flash memory |
US7318117B2 (en) | 2004-02-26 | 2008-01-08 | Super Talent Electronics, Inc. | Managing flash memory including recycling obsolete sectors |
US6412042B1 (en) | 1999-11-17 | 2002-06-25 | Maxtor Corporation | System and method for improved disk drive performance and reliability |
US6484224B1 (en) | 1999-11-29 | 2002-11-19 | Cisco Technology Inc. | Multi-interface symmetric multiprocessor |
DE19961138C2 (de) | 1999-12-17 | 2001-11-22 | Siemens Ag | Multiport-RAM-Speichervorrichtung |
US8037234B2 (en) | 2003-12-02 | 2011-10-11 | Super Talent Electronics, Inc. | Command queuing smart storage transfer manager for striping data to raw-NAND flash modules |
US7082056B2 (en) | 2004-03-12 | 2006-07-25 | Super Talent Electronics, Inc. | Flash memory device and architecture with multi level cells |
US6339338B1 (en) | 2000-01-18 | 2002-01-15 | Formfactor, Inc. | Apparatus for reducing power supply noise in an integrated circuit |
US20020152305A1 (en) | 2000-03-03 | 2002-10-17 | Jackson Gregory J. | Systems and methods for resource utilization analysis in information management environments |
US6516437B1 (en) | 2000-03-07 | 2003-02-04 | General Electric Company | Turbo decoder control for use with a programmable interleaver, variable block length, and multiple code rates |
JP3555859B2 (ja) | 2000-03-27 | 2004-08-18 | 広島日本電気株式会社 | 半導体生産システム及び半導体装置の生産方法 |
US6629047B1 (en) | 2000-03-30 | 2003-09-30 | Intel Corporation | Method and apparatus for flash voltage detection and lockout |
US6615307B1 (en) | 2000-05-10 | 2003-09-02 | Micron Technology, Inc. | Flash with consistent latency for read operations |
US20030188045A1 (en) | 2000-04-13 | 2003-10-02 | Jacobson Michael B. | System and method for distributing storage controller tasks |
US6647387B1 (en) | 2000-04-27 | 2003-11-11 | International Business Machine Corporation | System, apparatus, and method for enhancing storage management in a storage area network |
US6678788B1 (en) | 2000-05-26 | 2004-01-13 | Emc Corporation | Data type and topological data categorization and ordering for a mass storage system |
US6934755B1 (en) | 2000-06-02 | 2005-08-23 | Sun Microsystems, Inc. | System and method for migrating processes on a network |
US6442076B1 (en) | 2000-06-30 | 2002-08-27 | Micron Technology, Inc. | Flash memory with multiple status reading capability |
US6980985B1 (en) | 2000-08-30 | 2005-12-27 | At&T Corp. | Distributed evalulation of directory queries using a topology cache |
US6941505B2 (en) | 2000-09-12 | 2005-09-06 | Hitachi, Ltd. | Data processing system and data processing method |
US6865650B1 (en) | 2000-09-29 | 2005-03-08 | Emc Corporation | System and method for hierarchical data storage |
US7028165B2 (en) | 2000-12-06 | 2006-04-11 | Intel Corporation | Processor stalling |
US6862651B2 (en) | 2000-12-20 | 2005-03-01 | Microsoft Corporation | Automotive computing devices with emergency power shut down capabilities |
US6738870B2 (en) | 2000-12-22 | 2004-05-18 | International Business Machines Corporation | High speed remote storage controller |
KR100381955B1 (ko) | 2001-01-03 | 2003-04-26 | 삼성전자주식회사 | 기입 드라이버를 이용한 셀 전류 측정 스킴을 갖는 플래시메모리 장치 |
US6763424B2 (en) | 2001-01-19 | 2004-07-13 | Sandisk Corporation | Partial block data programming and reading operations in a non-volatile memory |
US20020174295A1 (en) | 2001-01-29 | 2002-11-21 | Ulrich Thomas R. | Enhanced file system failure tolerance |
WO2002082435A1 (fr) | 2001-03-30 | 2002-10-17 | Fujitsu Limited | Dispositif de stockage |
US7017107B2 (en) | 2001-04-30 | 2006-03-21 | Sun Microsystems, Inc. | Storage array employing scrubbing operations at the disk-controller level |
US6938253B2 (en) | 2001-05-02 | 2005-08-30 | Portalplayer, Inc. | Multiprocessor communication system and method |
US6757768B1 (en) | 2001-05-17 | 2004-06-29 | Cisco Technology, Inc. | Apparatus and technique for maintaining order among requests issued over an external bus of an intermediate network node |
JP4256600B2 (ja) | 2001-06-19 | 2009-04-22 | Tdk株式会社 | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム及びフラッシュメモリの制御方法 |
US7068603B2 (en) | 2001-07-06 | 2006-06-27 | Juniper Networks, Inc. | Cross-bar switch |
US6836815B1 (en) | 2001-07-11 | 2004-12-28 | Pasternak Solutions Llc | Layered crossbar for interconnection of multiple processors and shared memories |
US6928602B2 (en) | 2001-07-18 | 2005-08-09 | Sony Corporation | Encoding method and encoder |
JP4569055B2 (ja) | 2001-08-06 | 2010-10-27 | ソニー株式会社 | 信号処理装置及び信号処理方法 |
TW539946B (en) | 2001-08-07 | 2003-07-01 | Solid State System Company Ltd | Window-based flash memory storage system, and the management method and the access method thereof |
JP4437519B2 (ja) | 2001-08-23 | 2010-03-24 | スパンション エルエルシー | 多値セルメモリ用のメモリコントローラ |
US7028213B2 (en) | 2001-09-28 | 2006-04-11 | Hewlett-Packard Development Company, L.P. | Error indication in a raid memory system |
US7032123B2 (en) | 2001-10-19 | 2006-04-18 | Sun Microsystems, Inc. | Error recovery |
JP3663377B2 (ja) | 2001-10-23 | 2005-06-22 | インターナショナル・ビジネス・マシーンズ・コーポレーション | データ記憶装置、読み出しデータの処理装置および読み出しデータの処理方法 |
US7380085B2 (en) | 2001-11-14 | 2008-05-27 | Intel Corporation | Memory adapted to provide dedicated and or shared memory to multiple processors and method therefor |
US6798696B2 (en) | 2001-12-04 | 2004-09-28 | Renesas Technology Corp. | Method of controlling the operation of non-volatile semiconductor memory chips |
US6871257B2 (en) | 2002-02-22 | 2005-03-22 | Sandisk Corporation | Pipelined parallel programming operation in a non-volatile memory system |
US6836808B2 (en) | 2002-02-25 | 2004-12-28 | International Business Machines Corporation | Pipelined packet processing |
US7533214B2 (en) | 2002-02-27 | 2009-05-12 | Microsoft Corporation | Open architecture flash driver |
KR100476888B1 (ko) | 2002-04-04 | 2005-03-17 | 삼성전자주식회사 | 온도보상기능을 가진 멀티비트 플래쉬메모리 |
JP4079684B2 (ja) | 2002-05-08 | 2008-04-23 | 株式会社日立製作所 | ヒープメモリ管理方法およびそれを用いた計算機システム |
US6966006B2 (en) | 2002-05-09 | 2005-11-15 | International Business Machines Corporation | Adaptive startup policy for accelerating multi-disk array spin-up |
US6895464B2 (en) | 2002-06-03 | 2005-05-17 | Honeywell International Inc. | Flash memory management system and method utilizing multiple block list windows |
US6885530B2 (en) | 2002-06-11 | 2005-04-26 | Stmicroelectronics, Inc. | Power limiting time delay circuit |
KR100484147B1 (ko) | 2002-07-26 | 2005-04-18 | 삼성전자주식회사 | 플래시 메모리 관리 방법 |
US7051155B2 (en) | 2002-08-05 | 2006-05-23 | Sun Microsystems, Inc. | Method and system for striping data to accommodate integrity metadata |
US6978343B1 (en) | 2002-08-05 | 2005-12-20 | Netlogic Microsystems, Inc. | Error-correcting content addressable memory |
JP4177329B2 (ja) | 2002-08-29 | 2008-11-05 | 株式会社ルネサステクノロジ | 半導体処理装置及びicカード |
US7120856B2 (en) | 2002-09-25 | 2006-10-10 | Leanics Corporation | LDPC code and encoder/decoder regarding same |
JP2004178782A (ja) | 2002-10-04 | 2004-06-24 | Sharp Corp | 半導体記憶装置およびその制御方法および携帯電子機器 |
KR100457812B1 (ko) | 2002-11-14 | 2004-11-18 | 삼성전자주식회사 | 플래시 메모리, 그에 따른 플래시 메모리 액세스 장치 및방법 |
US7152942B2 (en) | 2002-12-02 | 2006-12-26 | Silverbrook Research Pty Ltd | Fixative compensation |
US20040114265A1 (en) | 2002-12-16 | 2004-06-17 | Xerox Corporation | User-selectable automatic secure data file erasure of job after job completion |
US7155579B1 (en) | 2002-12-27 | 2006-12-26 | Unisys Corporation | Memory controller having programmable initialization sequence |
US20040153902A1 (en) | 2003-01-21 | 2004-08-05 | Nexflash Technologies, Inc. | Serial flash integrated circuit having error detection and correction |
US7296216B2 (en) | 2003-01-23 | 2007-11-13 | Broadcom Corporation | Stopping and/or reducing oscillations in low density parity check (LDPC) decoding |
US7043505B1 (en) | 2003-01-28 | 2006-05-09 | Unisys Corporation | Method variation for collecting stability data from proprietary systems |
JP4110000B2 (ja) | 2003-01-28 | 2008-07-02 | 株式会社ルネサステクノロジ | 記憶装置 |
JP2004240555A (ja) | 2003-02-04 | 2004-08-26 | Fujitsu Ltd | バッテリ運用制御装置、バッテリ運用制御方法およびバッテリ運用制御プログラム |
US7478096B2 (en) | 2003-02-26 | 2009-01-13 | Burnside Acquisition, Llc | History preservation in a computer storage system |
US7162678B2 (en) | 2003-03-14 | 2007-01-09 | Quantum Corporation | Extended error correction codes |
US7527466B2 (en) | 2003-04-03 | 2009-05-05 | Simmons Robert J | Building-erection structural member transporter |
KR100543447B1 (ko) | 2003-04-03 | 2006-01-23 | 삼성전자주식회사 | 에러정정기능을 가진 플래쉬메모리장치 |
KR100526186B1 (ko) | 2003-04-04 | 2005-11-03 | 삼성전자주식회사 | 플래시 메모리의 오류블록 관리방법 및 장치 |
WO2004099985A1 (ja) | 2003-05-09 | 2004-11-18 | Fujitsu Limited | 実行環境の危険予測/回避方法,システム,プログラムおよびその記録媒体 |
EP2528000B1 (en) | 2003-05-23 | 2017-07-26 | IP Reservoir, LLC | Intelligent data storage and processing using FPGA devices |
US7877647B2 (en) | 2003-05-23 | 2011-01-25 | Hewlett-Packard Development Company, L.P. | Correcting a target address in parallel with determining whether the target address was received in error |
US7685254B2 (en) | 2003-06-10 | 2010-03-23 | Pandya Ashish A | Runtime adaptable search processor |
US7076598B2 (en) | 2003-09-09 | 2006-07-11 | Solid State System Co., Ltd. | Pipeline accessing method to a large block memory |
US7100002B2 (en) | 2003-09-16 | 2006-08-29 | Denali Software, Inc. | Port independent data transaction interface for multi-port devices |
US7054968B2 (en) | 2003-09-16 | 2006-05-30 | Denali Software, Inc. | Method and apparatus for multi-port memory controller |
US7523157B2 (en) | 2003-09-25 | 2009-04-21 | International Business Machines Corporation | Managing a plurality of processors as devices |
US7012835B2 (en) | 2003-10-03 | 2006-03-14 | Sandisk Corporation | Flash memory data correction and scrub techniques |
US7173852B2 (en) | 2003-10-03 | 2007-02-06 | Sandisk Corporation | Corrected data storage and handling methods |
US7881133B2 (en) | 2003-11-11 | 2011-02-01 | Samsung Electronics Co., Ltd. | Method of managing a flash memory and the flash memory |
TW200516821A (en) | 2003-11-14 | 2005-05-16 | Hon Hai Prec Ind Co Ltd | System and method for starting up devices orderly |
US7401174B2 (en) | 2003-12-16 | 2008-07-15 | Matsushita Electric Industrial Co., Ltd. | File system defragmentation and data processing method and apparatus for an information recording medium |
US7376887B2 (en) | 2003-12-22 | 2008-05-20 | International Business Machines Corporation | Method for fast ECC memory testing by software including ECC check byte |
US7197652B2 (en) | 2003-12-22 | 2007-03-27 | International Business Machines Corporation | Method and system for energy management in a simultaneous multi-threaded (SMT) processing system including per-thread device usage monitoring |
US20050251617A1 (en) | 2004-05-07 | 2005-11-10 | Sinclair Alan W | Hybrid non-volatile memory system |
US20050144516A1 (en) | 2003-12-30 | 2005-06-30 | Gonzalez Carlos J. | Adaptive deterministic grouping of blocks into multi-block units |
US8504798B2 (en) | 2003-12-30 | 2013-08-06 | Sandisk Technologies Inc. | Management of non-volatile memory systems having large erase blocks |
US7383375B2 (en) | 2003-12-30 | 2008-06-03 | Sandisk Corporation | Data run programming |
US7631138B2 (en) | 2003-12-30 | 2009-12-08 | Sandisk Corporation | Adaptive mode switching of flash memory address mapping based on host usage characteristics |
US7631148B2 (en) | 2004-01-08 | 2009-12-08 | Netapp, Inc. | Adaptive file readahead based on multiple factors |
JP4357304B2 (ja) | 2004-01-09 | 2009-11-04 | 株式会社バッファロー | 外部記憶装置 |
US7328377B1 (en) | 2004-01-27 | 2008-02-05 | Altera Corporation | Error correction for programmable logic integrated circuits |
JP4477365B2 (ja) | 2004-01-29 | 2010-06-09 | 株式会社日立製作所 | 複数インタフェースを有する記憶装置、および、その記憶装置の制御方法 |
US7389465B2 (en) | 2004-01-30 | 2008-06-17 | Micron Technology, Inc. | Error detection and correction scheme for a memory device |
US7350044B2 (en) | 2004-01-30 | 2008-03-25 | Micron Technology, Inc. | Data move method and apparatus |
US20080147964A1 (en) | 2004-02-26 | 2008-06-19 | Chow David Q | Using various flash memory cells to build usb data flash cards with multiple partitions and autorun function |
JP2005266861A (ja) | 2004-03-16 | 2005-09-29 | Nec Electronics Corp | マイクロコンピュータ及びそのテスト方法 |
US7035159B2 (en) | 2004-04-01 | 2006-04-25 | Micron Technology, Inc. | Techniques for storing accurate operating current values |
US7020017B2 (en) | 2004-04-06 | 2006-03-28 | Sandisk Corporation | Variable programming of non-volatile memory |
EP1870814B1 (en) | 2006-06-19 | 2014-08-13 | Texas Instruments France | Method and apparatus for secure demand paging for processor devices |
US7490283B2 (en) | 2004-05-13 | 2009-02-10 | Sandisk Corporation | Pipelined data relocation and improved chip architectures |
JP2005332471A (ja) | 2004-05-19 | 2005-12-02 | Hitachi Ltd | ディスクアレイ装置 |
US20050273560A1 (en) | 2004-06-03 | 2005-12-08 | Hulbert Jared E | Method and apparatus to avoid incoherency between a cache memory and flash memory |
US7334179B2 (en) | 2004-06-04 | 2008-02-19 | Broadcom Corporation | Method and system for detecting and correcting errors while accessing memory devices in microprocessor systems |
US7159069B2 (en) | 2004-06-23 | 2007-01-02 | Atmel Corporation | Simultaneous external read operation during internal programming in a flash memory device |
US7126873B2 (en) | 2004-06-29 | 2006-10-24 | Super Talent Electronics, Inc. | Method and system for expanding flash storage device capacity |
US7529898B2 (en) | 2004-07-09 | 2009-05-05 | International Business Machines Corporation | Method for backing up and restoring data |
US8190808B2 (en) | 2004-08-17 | 2012-05-29 | Rambus Inc. | Memory device having staggered memory operations |
EP1797645B1 (en) | 2004-08-30 | 2018-08-01 | Google LLC | Systems and methods for providing nonvolatile memory management in wireless phones |
FR2875358B1 (fr) | 2004-09-15 | 2006-12-15 | Eads Telecom Soc Par Actions S | Insertion d'un flux secondaire d'informations binaires dans un flux principal de symboles d'une modulation numerique |
JP2006099665A (ja) | 2004-09-30 | 2006-04-13 | Hitachi Global Storage Technologies Netherlands Bv | データ記憶装置及びそのシリアル・インターフェース部のパワー・セーブ・モードの制御方法 |
US7760880B2 (en) | 2004-10-13 | 2010-07-20 | Viasat, Inc. | Decoder architecture system and method |
JP4956922B2 (ja) | 2004-10-27 | 2012-06-20 | ソニー株式会社 | 記憶装置 |
KR100695891B1 (ko) | 2004-11-17 | 2007-03-19 | 삼성전자주식회사 | 동작 모드에 따라 락 아웃을 선택적으로 수행하는 장치 및방법 |
US7395404B2 (en) | 2004-12-16 | 2008-07-01 | Sandisk Corporation | Cluster auto-alignment for storing addressable data packets in a non-volatile memory array |
US20060136681A1 (en) | 2004-12-21 | 2006-06-22 | Sanjeev Jain | Method and apparatus to support multiple memory banks with a memory block |
EP1829223B1 (en) | 2004-12-22 | 2013-02-13 | LG Electronics Inc. | Parallel, layered decoding for Low-Density Parity-Check (LDPC) codes |
US20060156177A1 (en) | 2004-12-29 | 2006-07-13 | Sailesh Kottapalli | Method and apparatus for recovering from soft errors in register files |
US7212440B2 (en) | 2004-12-30 | 2007-05-01 | Sandisk Corporation | On-chip data grouping and alignment |
US7657696B2 (en) | 2005-02-25 | 2010-02-02 | Lsi Corporation | Method to detect NAND-flash parameters by hardware automatically |
US7822912B2 (en) | 2005-03-14 | 2010-10-26 | Phision Electronics Corp. | Flash storage chip and flash array storage system |
JP2006277395A (ja) | 2005-03-29 | 2006-10-12 | Matsushita Electric Ind Co Ltd | 情報処理装置及び情報処理方法 |
US7707232B2 (en) | 2005-05-13 | 2010-04-27 | Microsoft Corporation | Implementation for collecting unmanaged memory |
US7765454B2 (en) | 2005-05-24 | 2010-07-27 | Sgi International, Inc. | Fault tolerant memory system |
US7283395B2 (en) | 2005-06-24 | 2007-10-16 | Infineon Technologies Flash Gmbh & Co. Kg | Memory device and method for operating the memory device |
JP2008544721A (ja) | 2005-06-27 | 2008-12-04 | トムソン ライセンシング | 反復デコーダの電力削減のための方法及び装置 |
US7669003B2 (en) | 2005-08-03 | 2010-02-23 | Sandisk Corporation | Reprogrammable non-volatile memory systems with indexing of directly stored data files |
US7934049B2 (en) | 2005-09-14 | 2011-04-26 | Sandisk Corporation | Methods used in a secure yet flexible system architecture for secure devices with flash mass storage memory |
KR100705220B1 (ko) | 2005-09-15 | 2007-04-06 | 주식회사 하이닉스반도체 | 프로그램 속도를 증가시키기 위한 플래시 메모리 장치의소거 및 프로그램 방법 |
US20080256415A1 (en) | 2005-09-27 | 2008-10-16 | Nxp B.V. | Error Detection/Correction Circuit as Well as Corresponding Method |
US7652922B2 (en) | 2005-09-30 | 2010-01-26 | Mosaid Technologies Incorporated | Multiple independent serial link memory |
KR100715147B1 (ko) | 2005-10-06 | 2007-05-10 | 삼성전자주식회사 | 전류소모를 감소시키는 내부전원전압 발생회로를 가지는멀티칩 반도체 메모리 장치 |
US20070083697A1 (en) | 2005-10-07 | 2007-04-12 | Microsoft Corporation | Flash memory management |
US8223553B2 (en) | 2005-10-12 | 2012-07-17 | Macronix International Co., Ltd. | Systems and methods for programming a memory device |
US7743363B2 (en) | 2005-10-13 | 2010-06-22 | Microsoft Corporation | Extensible meta-data |
US7954037B2 (en) | 2005-10-25 | 2011-05-31 | Sandisk Il Ltd | Method for recovering from errors in flash memory |
KR101021465B1 (ko) | 2005-10-26 | 2011-03-15 | 삼성전자주식회사 | 저밀도 패리티 검사 코드를 사용하는 통신 시스템에서 신호수신 장치 및 방법 |
US7631162B2 (en) | 2005-10-27 | 2009-12-08 | Sandisck Corporation | Non-volatile memory with adaptive handling of data writes |
KR100966043B1 (ko) | 2005-10-31 | 2010-06-25 | 삼성전자주식회사 | 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 신호 송수신 장치 및 방법 |
US7606812B2 (en) | 2005-11-04 | 2009-10-20 | Sun Microsystems, Inc. | Dynamic intent log |
US7500062B2 (en) | 2005-11-17 | 2009-03-03 | International Business Machines Corporation | Fast path memory read request processing in a multi-level memory architecture |
WO2007058617A1 (en) | 2005-11-17 | 2007-05-24 | Chee Keng Chang | A controller for non-volatile memories, and methods of operating the memory controller |
US8813052B2 (en) | 2005-12-07 | 2014-08-19 | Microsoft Corporation | Cache metadata for implementing bounded transactional memory |
US7546515B2 (en) | 2005-12-27 | 2009-06-09 | Sandisk Corporation | Method of storing downloadable firmware on bulk media |
US7562283B2 (en) | 2005-12-27 | 2009-07-14 | D.S.P. Group Ltd. | Systems and methods for error correction using binary coded hexidecimal or hamming decoding |
US7349264B2 (en) | 2005-12-28 | 2008-03-25 | Sandisk Corporation | Alternate sensing techniques for non-volatile memories |
US7716180B2 (en) | 2005-12-29 | 2010-05-11 | Amazon Technologies, Inc. | Distributed storage system with web services client interface |
WO2007080586A2 (en) | 2006-01-10 | 2007-07-19 | Saifun Semiconductors Ltd. | Rd algorithm improvement for nrom technology |
US8020060B2 (en) | 2006-01-18 | 2011-09-13 | Sandisk Il Ltd | Method of arranging data in a multi-level cell memory device |
KR100725410B1 (ko) | 2006-01-20 | 2007-06-07 | 삼성전자주식회사 | 전원 상태에 따라 비휘발성 메모리의 블록 회수를 수행하는장치 및 그 방법 |
US20070234143A1 (en) | 2006-01-25 | 2007-10-04 | Samsung Electronics Co., Ltd. | Semiconductor memory devices and methods of testing for failed bits of semiconductor memory devices |
JP4859471B2 (ja) | 2006-02-02 | 2012-01-25 | 株式会社日立製作所 | ストレージシステム及びストレージコントローラ |
US7546478B2 (en) | 2006-02-10 | 2009-06-09 | International Business Machines Corporation | Apparatus and method to provide power to a plurality of data storage devices disposed in a data storage system |
US7870326B2 (en) | 2006-07-28 | 2011-01-11 | Samsung Electronics Co., Ltd. | Multiprocessor system and method thereof |
US7590473B2 (en) | 2006-02-16 | 2009-09-15 | Intel Corporation | Thermal management using an on-die thermal sensor |
JP4863749B2 (ja) | 2006-03-29 | 2012-01-25 | 株式会社日立製作所 | フラッシュメモリを用いた記憶装置、その消去回数平準化方法、及び消去回数平準化プログラム |
US7681106B2 (en) | 2006-03-29 | 2010-03-16 | Freescale Semiconductor, Inc. | Error correction device and methods thereof |
US20070245061A1 (en) | 2006-04-13 | 2007-10-18 | Intel Corporation | Multiplexing a parallel bus interface and a flash memory interface |
US7685494B1 (en) | 2006-05-08 | 2010-03-23 | Marvell International, Ltd. | Error correction coding for varying signal-to-noise ratio channels |
US8000134B2 (en) | 2006-05-15 | 2011-08-16 | Apple Inc. | Off-die charge pump that supplies multiple flash devices |
US7707481B2 (en) | 2006-05-16 | 2010-04-27 | Pitney Bowes Inc. | System and method for efficient uncorrectable error detection in flash memory |
US7701764B2 (en) | 2006-05-17 | 2010-04-20 | Micron Technology, Inc. | Apparatus and method for reduced peak power consumption during common operation of multi-NAND flash memory devices |
US20070300130A1 (en) | 2006-05-17 | 2007-12-27 | Sandisk Corporation | Method of Error Correction Coding for Multiple-Sector Pages in Flash Memory Devices |
US7606084B2 (en) | 2006-06-19 | 2009-10-20 | Sandisk Corporation | Programming differently sized margins and sensing with compensations at select states for improved read operations in non-volatile memory |
JP4842719B2 (ja) | 2006-06-28 | 2011-12-21 | 株式会社日立製作所 | ストレージシステム及びそのデータ保護方法 |
US8006160B2 (en) | 2006-06-29 | 2011-08-23 | Digital Fountain, Inc. | Efficient encoding and decoding methods for representing schedules and processing forward error correction codes |
US7774684B2 (en) | 2006-06-30 | 2010-08-10 | Intel Corporation | Reliability, availability, and serviceability in a memory device |
US7403438B2 (en) | 2006-07-12 | 2008-07-22 | Infineon Technologies Flash Gmbh & Co. Kg | Memory array architecture and method for high-speed distribution measurements |
JP2008047273A (ja) | 2006-07-20 | 2008-02-28 | Toshiba Corp | 半導体記憶装置およびその制御方法 |
US7831895B2 (en) | 2006-07-25 | 2010-11-09 | Communications Coding Corporation | Universal error control coding system for digital communication and data storage systems |
TW200813724A (en) | 2006-07-28 | 2008-03-16 | Samsung Electronics Co Ltd | Multipath accessible semiconductor memory device with host interface between processors |
US20080052446A1 (en) | 2006-08-28 | 2008-02-28 | Sandisk Il Ltd. | Logical super block mapping for NAND flash memory |
US7450425B2 (en) | 2006-08-30 | 2008-11-11 | Micron Technology, Inc. | Non-volatile memory cell read failure reduction |
JP2008059315A (ja) | 2006-08-31 | 2008-03-13 | Hitachi Ltd | 負荷分散方法及び計算機システム |
US7566987B2 (en) | 2006-09-14 | 2009-07-28 | Lutron Electronics Co., Inc. | Method of powering up a plurality of loads in sequence |
KR100843133B1 (ko) | 2006-09-20 | 2008-07-02 | 삼성전자주식회사 | 플래시 메모리에서 매핑 정보 재구성을 위한 장치 및 방법 |
TW200816651A (en) | 2006-09-25 | 2008-04-01 | Sunplus Technology Co Ltd | Decoding method and system of real-time wireless channel estimation |
US7886204B2 (en) | 2006-09-27 | 2011-02-08 | Sandisk Corporation | Methods of cell population distribution assisted read margining |
US8171380B2 (en) | 2006-10-10 | 2012-05-01 | Marvell World Trade Ltd. | Adaptive systems and methods for storing and retrieving data to and from memory cells |
CN100596029C (zh) | 2006-10-20 | 2010-03-24 | 北京泰美世纪科技有限公司 | Ldpc码校验矩阵构造方法及利用该方法的编码解码装置 |
JP2008117195A (ja) | 2006-11-06 | 2008-05-22 | Hitachi Ltd | 半導体記憶装置 |
TWI307100B (en) | 2006-11-07 | 2009-03-01 | Macronix Int Co Ltd | Memory and method for reading error checking thereof |
US7508703B2 (en) | 2006-11-13 | 2009-03-24 | Sandisk Corporation | Non-volatile memory with boost structures |
US20080140724A1 (en) | 2006-12-06 | 2008-06-12 | David Flynn | Apparatus, system, and method for servicing object requests within a storage controller |
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 |
KR100808664B1 (ko) | 2006-12-08 | 2008-03-07 | 한국전자통신연구원 | 패리티 검사행렬 저장 방법 및 이를 이용한 블록 저밀도패리티 검사 부호화 방법 및 장치 |
WO2008075292A2 (en) | 2006-12-18 | 2008-06-26 | Nxp B.V. | Power-on temperature sensor/spd detect |
KR100881669B1 (ko) | 2006-12-18 | 2009-02-06 | 삼성전자주식회사 | 비휘발성 데이터 저장장치의 정적 데이터 영역 검출 방법,마모도 평준화 방법 및 데이터 유닛 병합 방법과 그 장치 |
US7620781B2 (en) | 2006-12-19 | 2009-11-17 | Intel Corporation | Efficient Bloom filter |
KR100842680B1 (ko) | 2007-01-08 | 2008-07-01 | 삼성전자주식회사 | 플래시 메모리 장치의 오류 정정 컨트롤러 및 그것을포함하는 메모리 시스템 |
US7603490B2 (en) | 2007-01-10 | 2009-10-13 | International Business Machines Corporation | Barrier and interrupt mechanism for high latency and out of order DMA device |
KR100855587B1 (ko) | 2007-01-17 | 2008-09-01 | 삼성전자주식회사 | 메일박스 영역을 가지는 멀티 패스 액세스블 반도체 메모리장치 및 그에 따른 메일박스 액세스 제어방법 |
US7596643B2 (en) | 2007-02-07 | 2009-09-29 | Siliconsystems, Inc. | Storage subsystem with configurable buffer |
US7913022B1 (en) | 2007-02-14 | 2011-03-22 | Xilinx, Inc. | Port interface modules (PIMs) in a multi-port memory controller (MPMC) |
KR100918707B1 (ko) | 2007-03-12 | 2009-09-23 | 삼성전자주식회사 | 플래시 메모리를 기반으로 한 메모리 시스템 |
WO2008111058A2 (en) | 2007-03-12 | 2008-09-18 | Anobit Technologies Ltd. | Adaptive estimation of memory cell read thresholds |
JP4897524B2 (ja) | 2007-03-15 | 2012-03-14 | 株式会社日立製作所 | ストレージシステム及びストレージシステムのライト性能低下防止方法 |
KR100907218B1 (ko) | 2007-03-28 | 2009-07-10 | 삼성전자주식회사 | 읽기 레벨 제어 장치 및 그 방법 |
WO2008121553A1 (en) | 2007-03-29 | 2008-10-09 | Sandisk Corporation | Non-volatile storage with decoding of data using reliability metrics based on multiple reads |
WO2008121577A1 (en) | 2007-03-31 | 2008-10-09 | Sandisk Corporation | Soft bit data transmission for error correction control in non-volatile memory |
US8032724B1 (en) | 2007-04-04 | 2011-10-04 | Marvell International Ltd. | Demand-driven opportunistic garbage collection in memory components |
US7996642B1 (en) | 2007-04-25 | 2011-08-09 | Marvell International Ltd. | Digital locked loop on channel tagged memory requests for memory optimization |
EP1988474A1 (en) | 2007-05-04 | 2008-11-05 | Axalto SA | System and method of managing indexation of flash memory |
US8151171B2 (en) | 2007-05-07 | 2012-04-03 | Broadcom Corporation | Operational parameter adaptable LDPC (low density parity check) decoder |
US8073648B2 (en) | 2007-05-14 | 2011-12-06 | Sandisk Il Ltd. | Measuring threshold voltage distribution in memory using an aggregate characteristic |
US7930547B2 (en) | 2007-06-15 | 2011-04-19 | Alcatel-Lucent Usa Inc. | High accuracy bloom filter using partitioned hashing |
KR100891005B1 (ko) | 2007-06-28 | 2009-03-31 | 삼성전자주식회사 | 고온 스트레스로 인한 읽기 마진의 감소를 보상하기 위한플래시 메모리 장치 및 그것의 읽기 전압 조정 방법 |
US7778070B2 (en) | 2007-06-29 | 2010-08-17 | Qimonda Ag | Memory with dynamic redundancy configuration |
JP2009020986A (ja) | 2007-07-15 | 2009-01-29 | Hitachi Global Storage Technologies Netherlands Bv | ディスク・ドライブ装置及びディスク・ドライブ装置において不揮発性半導体メモリ領域上のデータを管理するテーブルを保存する方法 |
US8024525B2 (en) | 2007-07-25 | 2011-09-20 | Digi-Data Corporation | Storage control unit with memory cache protection via recorded log |
US8724789B2 (en) | 2007-08-06 | 2014-05-13 | Yellow Pages | Systems and methods to connect people for real time communications via directory assistance |
JP4564520B2 (ja) | 2007-08-31 | 2010-10-20 | 株式会社東芝 | 半導体記憶装置およびその制御方法 |
US8095851B2 (en) | 2007-09-06 | 2012-01-10 | Siliconsystems, Inc. | Storage subsystem capable of adjusting ECC settings based on monitored conditions |
JP4404125B2 (ja) | 2007-09-12 | 2010-01-27 | 株式会社デンソー | 電子制御装置及び信号監視回路 |
US8139412B2 (en) | 2007-10-31 | 2012-03-20 | Agere Systems Inc. | Systematic error correction for multi-level flash memory |
US7894264B2 (en) | 2007-11-07 | 2011-02-22 | Micron Technology, Inc. | Controlling a memory device responsive to degradation |
US7945825B2 (en) | 2007-11-25 | 2011-05-17 | Spansion Isreal, Ltd | Recovery while programming non-volatile memory (NVM) |
US8429492B2 (en) | 2007-11-30 | 2013-04-23 | Marvell World Trade Ltd. | Error correcting code predication system and method |
US8453022B2 (en) | 2007-12-05 | 2013-05-28 | Densbits Technologies Ltd. | Apparatus and methods for generating row-specific reading thresholds in flash memory |
US8621138B2 (en) | 2007-12-27 | 2013-12-31 | Sandisk Enterprise Ip Llc | Flash storage controller execute loop |
EP2225643B1 (en) | 2007-12-28 | 2020-05-06 | Toshiba Memory Corporation | Semiconductor storage device |
US20090172335A1 (en) | 2007-12-31 | 2009-07-02 | Anand Krishnamurthi Kulkarni | Flash devices with raid |
US8159874B2 (en) | 2008-01-22 | 2012-04-17 | Micron Technology, Inc. | Cell operation monitoring |
US8271515B2 (en) | 2008-01-29 | 2012-09-18 | Cadence Design Systems, Inc. | System and method for providing copyback data integrity in a non-volatile memory system |
JP4617405B2 (ja) | 2008-02-05 | 2011-01-26 | 富士通株式会社 | 不良メモリを検出する電子機器、不良メモリ検出方法およびそのためのプログラム |
US20090204823A1 (en) | 2008-02-07 | 2009-08-13 | Analog Devices, Inc. | Method and apparatus for controlling system access during protected modes of operation |
JP4672743B2 (ja) | 2008-03-01 | 2011-04-20 | 株式会社東芝 | 誤り訂正装置および誤り訂正方法 |
JP2009211233A (ja) | 2008-03-01 | 2009-09-17 | Toshiba Corp | メモリシステム |
US8230300B2 (en) | 2008-03-07 | 2012-07-24 | Apple Inc. | Efficient readout from analog memory cells using data compression |
JP2009266349A (ja) | 2008-04-28 | 2009-11-12 | Toshiba Corp | 不揮発性半導体記憶装置 |
US8185706B2 (en) | 2008-04-30 | 2012-05-22 | Apple Inc. | Copyback optimization for memory system |
KR101518199B1 (ko) | 2008-05-23 | 2015-05-06 | 삼성전자주식회사 | 오류 정정 장치, 그 방법 및 상기 장치를 포함하는 메모리장치 |
KR101412974B1 (ko) | 2008-05-28 | 2014-06-30 | 삼성전자주식회사 | 메모리 장치 및 메모리 프로그래밍 방법 |
KR101412690B1 (ko) | 2008-05-28 | 2014-06-27 | 삼성전자주식회사 | 메모리 장치 및 메모리 프로그래밍 방법 |
JP5072723B2 (ja) | 2008-06-11 | 2012-11-14 | 株式会社東芝 | 不揮発性半導体記憶装置 |
US8959280B2 (en) | 2008-06-18 | 2015-02-17 | Super Talent Technology, Corp. | Super-endurance solid-state drive with endurance translation layer (ETL) and diversion of temp files for reduced flash wear |
US8627169B2 (en) | 2008-06-20 | 2014-01-07 | Cadence Design Systems, Inc. | Method and apparatus for dynamically configurable multi level error correction |
KR101413137B1 (ko) | 2008-07-04 | 2014-07-01 | 삼성전자주식회사 | 메모리 장치 및 메모리 프로그래밍 방법 |
US8037380B2 (en) | 2008-07-08 | 2011-10-11 | International Business Machines Corporation | Verifying data integrity of a non-volatile memory system during data caching process |
WO2010005878A1 (en) * | 2008-07-09 | 2010-01-14 | Sandisk Corporation | Dielectric cap above floating gate |
US8325554B2 (en) | 2008-07-10 | 2012-12-04 | Sanmina-Sci Corporation | Battery-less cache memory module with integrated backup |
KR101436506B1 (ko) | 2008-07-23 | 2014-09-02 | 삼성전자주식회사 | 메모리 장치 및 메모리 데이터 프로그래밍 방법 |
US8130552B2 (en) | 2008-09-11 | 2012-03-06 | Sandisk Technologies Inc. | Multi-pass programming for memory with reduced data storage requirement |
US8429514B1 (en) | 2008-09-24 | 2013-04-23 | Network Appliance, Inc. | Dynamic load balancing of distributed parity in a RAID array |
KR101484556B1 (ko) | 2008-10-28 | 2015-01-20 | 삼성전자주식회사 | 독출 보상 회로 |
US8023334B2 (en) | 2008-10-31 | 2011-09-20 | Micron Technology, Inc. | Program window adjust for memory cell signal line delay |
US8214599B2 (en) | 2008-11-04 | 2012-07-03 | Gridiron Systems, Inc. | Storage device prefetch system using directed graph clusters |
US9063874B2 (en) * | 2008-11-10 | 2015-06-23 | SanDisk Technologies, Inc. | Apparatus, system, and method for wear management |
KR101516577B1 (ko) | 2008-11-10 | 2015-05-06 | 삼성전자주식회사 | 비휘발성 반도체 메모리 장치, 그를 포함하는 메모리 카드와 메모리 시스템 및 그의 리드 전압 추정 방법 |
KR20100058166A (ko) | 2008-11-24 | 2010-06-03 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것을 포함하는 메모리 시스템 |
KR101555022B1 (ko) | 2008-12-02 | 2015-09-23 | 삼성전자주식회사 | 메모리 장치, 그것을 포함한 메모리 시스템 및 그것의 맵핑정보 복원 방법 |
US8209466B2 (en) | 2008-12-16 | 2012-06-26 | Intel Corporation | Methods and systems to allocate addresses in a high-endurance/low-endurance hybrid flash memory |
US9128699B2 (en) | 2008-12-22 | 2015-09-08 | Intel Corporation | Method and system for queuing transfers of multiple non-contiguous address ranges with a single command |
KR101535225B1 (ko) | 2009-01-06 | 2015-07-09 | 삼성전자주식회사 | 디코딩 방법 및 그 방법을 이용하는 메모리 시스템 장치 |
CN101799783A (zh) | 2009-01-19 | 2010-08-11 | 中国人民大学 | 一种数据存储处理方法、查找方法及其装置 |
KR100996009B1 (ko) | 2009-02-02 | 2010-11-22 | 주식회사 하이닉스반도체 | 불휘발성 메모리 소자 및 그 동작 방법 |
US8645749B2 (en) | 2009-02-04 | 2014-02-04 | Micron Technology, Inc. | Systems and methods for storing and recovering controller data in non-volatile memory devices |
KR20100090439A (ko) | 2009-02-06 | 2010-08-16 | 주식회사 하이닉스반도체 | 불휘발성 메모리 장치의 독출 방법 및 이를 구현하는 불휘발성 메모리 장치 |
US7830732B2 (en) | 2009-02-11 | 2010-11-09 | Stec, Inc. | Staged-backup flash backed dram module |
KR20100093885A (ko) | 2009-02-17 | 2010-08-26 | 삼성전자주식회사 | 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템 |
US8259506B1 (en) | 2009-03-25 | 2012-09-04 | Apple Inc. | Database of memory read thresholds |
US8230239B2 (en) | 2009-04-02 | 2012-07-24 | Qualcomm Incorporated | Multiple power mode system and method for memory |
US8042011B2 (en) | 2009-04-28 | 2011-10-18 | Synopsys, Inc. | Runtime programmable BIST for testing a multi-port memory device |
KR101575248B1 (ko) | 2009-04-30 | 2015-12-07 | 삼성전자주식회사 | 메모리 컨트롤러 및 그것을 포함하는 메모리 시스템 |
US20100281207A1 (en) | 2009-04-30 | 2010-11-04 | Miller Steven C | Flash-based data archive storage system |
US8166258B2 (en) | 2009-07-24 | 2012-04-24 | Lsi Corporation | Skip operations for solid state disks |
US8463820B2 (en) | 2009-05-26 | 2013-06-11 | Intel Corporation | System and method for memory bandwidth friendly sorting on multi-core architectures |
US8180763B2 (en) | 2009-05-29 | 2012-05-15 | Microsoft Corporation | Cache-friendly B-tree accelerator |
US8885434B2 (en) | 2009-06-17 | 2014-11-11 | Stmicroelectronics International N.V. | Retention of data during stand-by mode |
US8627117B2 (en) | 2009-06-26 | 2014-01-07 | Seagate Technology Llc | Device with power control feature involving backup power reservoir circuit |
US8479032B2 (en) | 2009-06-26 | 2013-07-02 | Seagate Technology Llc | Systems, methods and devices for regulation or isolation of backup power in memory devices |
US8412985B1 (en) | 2009-06-30 | 2013-04-02 | Micron Technology, Inc. | Hardwired remapped memory |
US8880835B2 (en) | 2009-07-07 | 2014-11-04 | International Business Machines Corporation | Adjusting location of tiered storage residence based on usage patterns |
US8516219B2 (en) | 2009-07-24 | 2013-08-20 | Apple Inc. | Index cache tree |
US7941696B2 (en) | 2009-08-11 | 2011-05-10 | Texas Memory Systems, Inc. | Flash-based memory system with static or variable length page stripes including data protection information and auxiliary protection stripes |
US7818525B1 (en) | 2009-08-12 | 2010-10-19 | Texas Memory Systems, Inc. | Efficient reduction of read disturb errors in NAND FLASH memory |
JP5752686B2 (ja) | 2009-08-20 | 2015-07-22 | ラムバス・インコーポレーテッド | 原子メモリ装置 |
US8464106B2 (en) | 2009-08-24 | 2013-06-11 | Ocz Technology Group, Inc. | Computer system with backup function and method therefor |
WO2011024015A1 (en) | 2009-08-25 | 2011-03-03 | Sandisk Il Ltd. | Restoring data into a flash storage device |
US8077515B2 (en) | 2009-08-25 | 2011-12-13 | Micron Technology, Inc. | Methods, devices, and systems for dealing with threshold voltage change in memory devices |
US8429436B2 (en) | 2009-09-09 | 2013-04-23 | Fusion-Io, Inc. | Apparatus, system, and method for power reduction in a storage device |
US8478725B2 (en) | 2009-09-14 | 2013-07-02 | Vmware, Inc. | Method and system for performing live migration of persistent data of a virtual machine |
CN102640227B (zh) * | 2009-09-23 | 2016-06-01 | 纳姆迪兰斯有限公司 | 一种快闪存储器件及控制方法 |
US8479061B2 (en) | 2009-09-24 | 2013-07-02 | AGIGA Tech | Solid state memory cartridge with wear indication |
US8171257B2 (en) | 2009-09-25 | 2012-05-01 | International Business Machines Corporation | Determining an end of valid log in a log of write records using a next pointer and a far ahead pointer |
EP2482194B1 (en) | 2009-09-25 | 2013-12-25 | Fujitsu Limited | Memory system and memory system control method |
JP5197544B2 (ja) | 2009-10-05 | 2013-05-15 | 株式会社東芝 | メモリシステム |
US8312349B2 (en) | 2009-10-27 | 2012-11-13 | Micron Technology, Inc. | Error detection/correction based memory management |
US8423866B2 (en) | 2009-10-28 | 2013-04-16 | SanDisk Technologies, Inc. | Non-volatile memory and method with post-write read and adaptive re-write to manage errors |
CN101699406B (zh) | 2009-11-12 | 2011-12-14 | 威盛电子股份有限公司 | 数据储存系统与方法 |
US8335123B2 (en) | 2009-11-20 | 2012-12-18 | Sandisk Technologies Inc. | Power management of memory systems |
US8130553B2 (en) | 2009-12-02 | 2012-03-06 | Seagate Technology Llc | Systems and methods for low wear operation of solid state memory |
FR2953666B1 (fr) | 2009-12-09 | 2012-07-13 | Commissariat Energie Atomique | Procede de codage ldpc a redondance incrementale |
US8250380B2 (en) | 2009-12-17 | 2012-08-21 | Hitachi Global Storage Technologies Netherlands B.V. | Implementing secure erase for solid state drives |
TWI399645B (zh) | 2010-01-15 | 2013-06-21 | Silicon Motion Inc | 管理記憶體讀出資料之方法以及記憶裝置 |
US8380915B2 (en) | 2010-01-27 | 2013-02-19 | Fusion-Io, Inc. | Apparatus, system, and method for managing solid-state storage media |
US8661184B2 (en) | 2010-01-27 | 2014-02-25 | Fusion-Io, Inc. | Managing non-volatile media |
JP5788183B2 (ja) | 2010-02-17 | 2015-09-30 | 三星電子株式会社Samsung Electronics Co.,Ltd. | 不揮発性メモリ装置、それの動作方法、そしてそれを含むメモリシステム |
US8213255B2 (en) | 2010-02-19 | 2012-07-03 | Sandisk Technologies Inc. | Non-volatile storage with temperature compensation based on neighbor state information |
US8355280B2 (en) | 2010-03-09 | 2013-01-15 | Samsung Electronics Co., Ltd. | Data storage system having multi-bit memory device and operating method thereof |
US8458417B2 (en) | 2010-03-10 | 2013-06-04 | Seagate Technology Llc | Garbage collection in a storage device |
US8365041B2 (en) | 2010-03-17 | 2013-01-29 | Sandisk Enterprise Ip Llc | MLC self-raid flash data protection scheme |
US8164967B2 (en) | 2010-03-24 | 2012-04-24 | Apple Inc. | Systems and methods for refreshing non-volatile memory |
US9183134B2 (en) | 2010-04-22 | 2015-11-10 | Seagate Technology Llc | Data segregation in a storage device |
JP2011233114A (ja) | 2010-04-30 | 2011-11-17 | Toshiba Corp | メモリシステム |
US8321481B2 (en) | 2010-05-13 | 2012-11-27 | Assa Abloy Ab | Method for incremental anti-tear garbage collection |
US20110283119A1 (en) | 2010-05-13 | 2011-11-17 | GCCA Inc. | System and Method for Providing Energy Efficient Cloud Computing |
TW201223064A (en) | 2010-06-01 | 2012-06-01 | Koninkl Philips Electronics Nv | System and method for sequential application of power to electrical loads |
EP2577470A4 (en) | 2010-06-04 | 2013-12-25 | Sandisk Entpr Ip Llc | CACHE ADMINISTRATION AND ACCELERATION IN STORAGE MEDIA |
WO2012001917A1 (ja) | 2010-06-29 | 2012-01-05 | パナソニック株式会社 | 不揮発性記憶システム、メモリシステム用の電源回路、フラッシュメモリ、フラッシュメモリコントローラ、および不揮発性半導体記憶装置 |
US20120011393A1 (en) | 2010-07-06 | 2012-01-12 | Roberts Richard B | Bios recovery |
US8737141B2 (en) | 2010-07-07 | 2014-05-27 | Stec, Inc. | Apparatus and method for determining an operating condition of a memory cell based on cycle information |
US8737136B2 (en) | 2010-07-09 | 2014-05-27 | Stec, Inc. | Apparatus and method for determining a read level of a memory cell based on cycle information |
KR101131560B1 (ko) * | 2010-07-15 | 2012-04-04 | 주식회사 하이닉스반도체 | 웨어 레벨링을 수행하는 비휘발성 메모리 장치 및 그의 제어 방법 |
US20120023144A1 (en) | 2010-07-21 | 2012-01-26 | Seagate Technology Llc | Managing Wear in Flash Memory |
US8503238B1 (en) | 2010-07-21 | 2013-08-06 | Sk Hynix Memory Solutions Inc. | Error recovery for flash memory |
US8832384B1 (en) | 2010-07-29 | 2014-09-09 | Violin Memory, Inc. | Reassembling abstracted memory accesses for prefetching |
US8694854B1 (en) | 2010-08-17 | 2014-04-08 | Apple Inc. | Read threshold setting based on soft readout statistics |
CN102385902A (zh) | 2010-09-01 | 2012-03-21 | 建兴电子科技股份有限公司 | 固态储存装置及其数据控制方法 |
JP2012058860A (ja) | 2010-09-06 | 2012-03-22 | Toshiba Corp | メモリシステム |
US8417878B2 (en) | 2010-09-20 | 2013-04-09 | Seagate Technology Llc | Selection of units for garbage collection in flash memory |
US8738846B2 (en) | 2010-10-15 | 2014-05-27 | Arkologic Limited | File system-aware solid-state storage management system |
US20120275466A1 (en) | 2010-10-21 | 2012-11-01 | Texas Instruments Incorporated | System and method for classifying packets |
KR101606718B1 (ko) | 2010-10-27 | 2016-03-28 | 엘에스아이 코포레이션 | 플래시 메모리 기반 데이터 저장을 위한 적응적 ecc 기술들 |
US9063878B2 (en) | 2010-11-03 | 2015-06-23 | Densbits Technologies Ltd. | Method, system and computer readable medium for copy back |
US8909957B2 (en) | 2010-11-04 | 2014-12-09 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Dynamic voltage adjustment to computer system memory |
US8806106B2 (en) | 2010-11-12 | 2014-08-12 | Seagate Technology Llc | Estimating wear of non-volatile, solid state memory |
US8484433B2 (en) | 2010-11-19 | 2013-07-09 | Netapp, Inc. | Dynamic detection and reduction of unaligned I/O operations |
KR101774496B1 (ko) | 2010-12-08 | 2017-09-05 | 삼성전자주식회사 | 비휘발성 메모리 장치, 이를 포함하는 장치들, 및 이의 동작 방법 |
KR20120064462A (ko) | 2010-12-09 | 2012-06-19 | 삼성전자주식회사 | 메모리 컨트롤러, 이의 오류정정 방법, 및 이를 포함하는 메모리 시스템 |
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 |
US9038066B2 (en) | 2010-12-22 | 2015-05-19 | Vmware, Inc. | In-place snapshots of a virtual disk configured with sparse extent |
TWI446345B (zh) | 2010-12-31 | 2014-07-21 | Silicon Motion Inc | 用來進行區塊管理之方法以及記憶裝置及控制器 |
JP2012151676A (ja) | 2011-01-19 | 2012-08-09 | Jvc Kenwood Corp | 復号装置および復号方法 |
US8364888B2 (en) | 2011-02-03 | 2013-01-29 | Stec, Inc. | Erase-suspend system and method |
WO2012109679A2 (en) | 2011-02-11 | 2012-08-16 | Fusion-Io, Inc. | Apparatus, system, and method for application direct virtual memory management |
US8966319B2 (en) | 2011-02-22 | 2015-02-24 | Apple Inc. | Obtaining debug information from a flash memory device |
US8909894B1 (en) | 2011-03-16 | 2014-12-09 | Tintri Inc. | Automatically aligning virtual blocks to physical blocks |
US9047955B2 (en) | 2011-03-30 | 2015-06-02 | Stec, Inc. | Adjusting operating parameters for memory cells based on wordline address and cycle information |
US8874515B2 (en) | 2011-04-11 | 2014-10-28 | Sandisk Enterprise Ip Llc | Low level object version tracking using non-volatile memory write generations |
US8909888B2 (en) | 2011-04-29 | 2014-12-09 | Seagate Technology Llc | Secure erasure of data from a non-volatile memory |
US8713380B2 (en) | 2011-05-03 | 2014-04-29 | SanDisk Technologies, Inc. | Non-volatile memory and method having efficient on-chip block-copying with controlled error rate |
US8745318B2 (en) | 2011-06-28 | 2014-06-03 | Seagate Technology Llc | Parameter tracking for memory devices |
US8898373B1 (en) | 2011-06-29 | 2014-11-25 | Western Digital Technologies, Inc. | System and method for improving wear-leveling performance in solid-state memory |
US9378138B2 (en) | 2011-06-29 | 2016-06-28 | International Business Machines Corporation | Conservative garbage collection and access protection |
US8645773B2 (en) | 2011-06-30 | 2014-02-04 | Seagate Technology Llc | Estimating temporal degradation of non-volatile solid-state memory |
US20130024735A1 (en) | 2011-07-19 | 2013-01-24 | Ocz Technology Group Inc. | Solid-state memory-based storage method and device with low error rate |
US8566667B2 (en) | 2011-07-29 | 2013-10-22 | Stec, Inc. | Low density parity check code decoding system and method |
US8692561B2 (en) * | 2011-08-11 | 2014-04-08 | International Business Machines Corporation | Implementing chip to chip calibration within a TSV stack |
US20130047045A1 (en) | 2011-08-19 | 2013-02-21 | Stec, Inc. | Error indicator from ecc decoder |
US9047210B2 (en) | 2011-09-15 | 2015-06-02 | Sandisk Technologies Inc. | Data storage device and method to correct bit values using multiple read voltages |
KR20130031046A (ko) | 2011-09-20 | 2013-03-28 | 삼성전자주식회사 | 플래시 메모리 장치 및 플래시 메모리 장치의 데이터 관리 방법 |
US8553468B2 (en) | 2011-09-21 | 2013-10-08 | Densbits Technologies Ltd. | System and method for managing erase operations in a non-volatile memory |
EP2761465B1 (en) | 2011-09-30 | 2022-02-09 | Intel Corporation | Autonomous initialization of non-volatile random access memory in a computer system |
US8825721B2 (en) | 2011-10-03 | 2014-09-02 | Oracle International Corporation | Time-based object aging for generational garbage collectors |
US8516019B2 (en) | 2011-10-03 | 2013-08-20 | Oracle America, Inc. | Time-based object aging for generational garbage collectors |
EP2764516A4 (en) | 2011-10-05 | 2015-07-08 | Lsi Corp | SELF-HISTORIZATION AND HIERARCHICAL CONSISTENCY FOR NON-VOLATILE STORES |
US8711619B2 (en) | 2011-10-18 | 2014-04-29 | Seagate Technology Llc | Categorizing bit errors of solid-state, non-volatile memory |
US10359949B2 (en) | 2011-10-31 | 2019-07-23 | Apple Inc. | Systems and methods for obtaining and using nonvolatile memory health information |
US8683297B2 (en) | 2011-11-02 | 2014-03-25 | Sandisk Technologies Inc. | Systems and methods of generating a replacement default read threshold |
JP5943395B2 (ja) | 2011-11-02 | 2016-07-05 | 国立大学法人 東京大学 | メモリコントローラおよびデータ記憶装置 |
US9053809B2 (en) | 2011-11-09 | 2015-06-09 | Apple Inc. | Data protection from write failures in nonvolatile memory |
US8456919B1 (en) | 2011-11-10 | 2013-06-04 | Sandisk Technologies Inc. | Method and apparatus to provide data including hard bit data and soft bit data to a rank modulation decoder |
US8687421B2 (en) | 2011-11-21 | 2014-04-01 | Sandisk Technologies Inc. | Scrub techniques for use with dynamic read |
US8830746B2 (en) | 2011-12-28 | 2014-09-09 | Apple Inc. | Optimized threshold search in analog memory cells using separator pages of the same type as read pages |
JP2013142947A (ja) | 2012-01-10 | 2013-07-22 | Sony Corp | 記憶制御装置、記憶装置および記憶制御装置の制御方法 |
US9767032B2 (en) | 2012-01-12 | 2017-09-19 | Sandisk Technologies Llc | Systems and methods for cache endurance |
WO2013112332A1 (en) | 2012-01-24 | 2013-08-01 | Apple Inc. | Enhanced programming and erasure schemes for analog memory cells |
US9251086B2 (en) | 2012-01-24 | 2016-02-02 | SanDisk Technologies, Inc. | Apparatus, system, and method for managing a cache |
US8964482B2 (en) | 2012-01-30 | 2015-02-24 | Freescale Semiconductor, Inc. | Dynamic healing of non-volatile memory cells |
US9208871B2 (en) | 2012-01-30 | 2015-12-08 | HGST Netherlands B.V. | Implementing enhanced data read for multi-level cell (MLC) memory using threshold voltage-drift or resistance drift tolerant moving baseline memory data encoding |
US9679664B2 (en) | 2012-02-11 | 2017-06-13 | Samsung Electronics Co., Ltd. | Method and system for providing a smart memory architecture |
US8832050B2 (en) | 2012-03-09 | 2014-09-09 | Hewlett-Packard Development Company, L.P. | Validation of distributed balanced trees |
US8817569B2 (en) | 2012-03-19 | 2014-08-26 | Sandisk Technologies Inc. | Immunity against temporary and short power drops in non-volatile memory |
US20130290611A1 (en) | 2012-03-23 | 2013-10-31 | Violin Memory Inc. | Power management in a flash memory |
JP5853899B2 (ja) | 2012-03-23 | 2016-02-09 | ソニー株式会社 | 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法 |
US9311501B2 (en) | 2012-03-26 | 2016-04-12 | International Business Machines Corporation | Using different secure erase algorithms to erase chunks from a file associated with different security levels |
US8923066B1 (en) | 2012-04-09 | 2014-12-30 | Sk Hynix Memory Solutions Inc. | Storage of read thresholds for NAND flash storage using linear approximation |
US8990477B2 (en) | 2012-04-19 | 2015-03-24 | Sandisk Technologies Inc. | System and method for limiting fragmentation |
US20130297613A1 (en) | 2012-05-04 | 2013-11-07 | Monmouth University | Indexing based on key ranges |
US20130343131A1 (en) | 2012-06-26 | 2013-12-26 | Lsi Corporation | Fast tracking for flash channels |
US8634267B2 (en) | 2012-05-14 | 2014-01-21 | Sandisk Technologies Inc. | Flash memory chip power management for data reliability and methods thereof |
US20130346672A1 (en) | 2012-06-22 | 2013-12-26 | Microsoft Corporation | Multi-Tiered Cache with Storage Medium Awareness |
US9529724B2 (en) | 2012-07-06 | 2016-12-27 | Seagate Technology Llc | Layered architecture for hybrid controller |
CN102789427B (zh) | 2012-07-17 | 2015-11-25 | 威盛电子股份有限公司 | 数据储存装置与其操作方法 |
KR101997079B1 (ko) | 2012-07-26 | 2019-07-08 | 삼성전자주식회사 | 가변 저항 메모리를 포함하는 저장 장치 및 그것의 동작 방법 |
US9002791B2 (en) | 2012-08-28 | 2015-04-07 | Hewlett-Packard Development Company, L. P. | Logging modifications to a variable in persistent memory |
KR20140028481A (ko) | 2012-08-29 | 2014-03-10 | 에스케이하이닉스 주식회사 | 쓰기 전류를 측정할 수 있는 반도체 메모리 장치 및 쓰기 전류 측정 방법 |
US9329986B2 (en) | 2012-09-10 | 2016-05-03 | Sandisk Technologies Inc. | Peak current management in multi-die non-volatile memory devices |
US8938656B2 (en) | 2012-09-14 | 2015-01-20 | Sandisk Technologies Inc. | Data storage device with intermediate ECC stage |
US8886882B2 (en) | 2012-09-14 | 2014-11-11 | Hitachi, Ltd. | Method and apparatus of storage tier and cache management |
US9128690B2 (en) | 2012-09-24 | 2015-09-08 | Texas Instruments Incorporated | Bus pin reduction and power management |
US10489295B2 (en) | 2012-10-08 | 2019-11-26 | Sandisk Technologies Llc | Systems and methods for managing cache pre-fetch |
US9268709B2 (en) | 2012-10-18 | 2016-02-23 | Marvell International Ltd. | Storage controllers and storage control methods |
US9104328B2 (en) | 2012-10-31 | 2015-08-11 | Hitachi, Ltd. | Storage apparatus and method for controlling storage apparatus |
US8817541B2 (en) | 2012-11-09 | 2014-08-26 | Sandisk Technologies Inc. | Data search using bloom filters and NAND based content addressable memory |
US8634248B1 (en) | 2012-11-09 | 2014-01-21 | Sandisk Technologies Inc. | On-device data analytics using NAND flash based intelligent memory |
US8930778B2 (en) | 2012-11-15 | 2015-01-06 | Seagate Technology Llc | Read disturb effect determination |
US8949544B2 (en) | 2012-11-19 | 2015-02-03 | Advanced Micro Devices, Inc. | Bypassing a cache when handling memory requests |
US9135185B2 (en) | 2012-12-23 | 2015-09-15 | Advanced Micro Devices, Inc. | Die-stacked memory device providing data translation |
US8869008B2 (en) | 2013-01-17 | 2014-10-21 | Apple Inc. | Adaptation of analog memory cell read thresholds using partial ECC syndromes |
KR20140100330A (ko) | 2013-02-06 | 2014-08-14 | 삼성전자주식회사 | 메모리 시스템 및 그것의 동작 방법 |
DE102013101863A1 (de) | 2013-02-26 | 2014-08-28 | Fujitsu Technology Solutions Intellectual Property Gmbh | Hochverfügbares Hauptspeicher-Datenbanksystem, Arbeitsverfahren und deren Verwendungen |
US9383795B2 (en) | 2013-03-10 | 2016-07-05 | Seagate Technololgy Llc | Storage device power failure infrastructure |
US9042181B2 (en) | 2013-03-15 | 2015-05-26 | SanDisk Technologies, Inc. | Periodic erase operation for a non-volatile medium |
US10546648B2 (en) | 2013-04-12 | 2020-01-28 | Sandisk Technologies Llc | Storage control system with data management mechanism and method of operation thereof |
US9378830B2 (en) | 2013-07-16 | 2016-06-28 | Seagate Technology Llc | Partial reprogramming of solid-state non-volatile memory cells |
US9043517B1 (en) | 2013-07-25 | 2015-05-26 | Sandisk Enterprise Ip Llc | Multipass programming in buffers implemented in non-volatile data storage systems |
US9531038B2 (en) | 2013-07-31 | 2016-12-27 | Dell Products, Lp | System and method of cell block voltage analytics to improve balancing effectiveness and identify self-discharge rate |
US9329789B1 (en) | 2013-10-14 | 2016-05-03 | Marvell International Ltd. | Methods and apparatus for efficiently operating on a storage device |
US9250676B2 (en) | 2013-11-29 | 2016-02-02 | Sandisk Enterprise Ip Llc | Power failure architecture and verification |
US9235245B2 (en) | 2013-12-04 | 2016-01-12 | Sandisk Enterprise Ip Llc | Startup performance and power isolation |
US9471497B2 (en) | 2014-01-24 | 2016-10-18 | Netapp, Inc. | Methods for combining access history and sequentiality for intelligent prefetching and devices thereof |
TWI533308B (zh) | 2014-03-21 | 2016-05-11 | 群聯電子股份有限公司 | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 |
-
2013
- 2013-12-20 US US14/137,511 patent/US9442662B2/en active Active
-
2014
- 2014-10-08 WO PCT/US2014/059748 patent/WO2015057459A1/en active Application Filing
- 2014-10-08 CN CN201480067426.7A patent/CN105874540B/zh not_active Expired - Fee Related
- 2014-10-08 DE DE112014004778.3T patent/DE112014004778B4/de not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1396869A (zh) * | 2000-11-30 | 2003-02-12 | 索尼株式会社 | 非接触式ic卡 |
US7945723B2 (en) * | 2007-05-18 | 2011-05-17 | Samsung Electronics Co., Ltd. | Apparatus and method of managing mapping table of non-volatile memory |
CN103186470A (zh) * | 2011-12-30 | 2013-07-03 | 群联电子股份有限公司 | 存储器储存装置及其存储器控制器与数据写入方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105874540A (zh) | 2016-08-17 |
US9442662B2 (en) | 2016-09-13 |
US20150113203A1 (en) | 2015-04-23 |
DE112014004778B4 (de) | 2021-03-04 |
DE112014004778T5 (de) | 2016-09-15 |
WO2015057459A1 (en) | 2015-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105874540B (zh) | 用于管理裸芯组的装置和方法 | |
CN105934748B (zh) | 用于储存系统中的损耗均衡的偏置 | |
CN105683927B (zh) | 用于重新平衡贮存在闪速存储器装置中的数据的方法和系统 | |
CN105637490B (zh) | 用于在闪速存储器装置之间迁移数据的方法和系统 | |
CN111684527B (zh) | Nand装置及相关方法和机器可读介质 | |
US10672452B2 (en) | Temperature informed memory refresh | |
US11132044B2 (en) | Dynamic P2L asynchronous power loss mitigation | |
Margaglia et al. | The Devil Is in the Details: Implementing Flash Page Reuse with {WOM} Codes | |
US11775181B2 (en) | Read error recovery | |
KR20210057193A (ko) | 소계 기입 카운터에 기초한 하이브리드 웨어 레벨링 동작 수행 | |
US11972294B2 (en) | Allocation schema for a scalable memory area | |
CN110058797A (zh) | 存储器系统及其操作方法 | |
US11443830B1 (en) | Error avoidance based on voltage distribution parameters of block families | |
US20220319589A1 (en) | Error avoidance based on voltage distribution parameters of blocks | |
US11869607B2 (en) | Memory location age tracking on memory die | |
US11705193B2 (en) | Error avoidance based on voltage distribution parameters | |
CN109407968A (zh) | 存储器系统及其操作方法 | |
CN115437555A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20191001 |