CN105745714B - 基于温度的闪速存储器系统维持 - Google Patents
基于温度的闪速存储器系统维持 Download PDFInfo
- Publication number
- CN105745714B CN105745714B CN201480063785.5A CN201480063785A CN105745714B CN 105745714 B CN105745714 B CN 105745714B CN 201480063785 A CN201480063785 A CN 201480063785A CN 105745714 B CN105745714 B CN 105745714B
- Authority
- CN
- China
- Prior art keywords
- priority
- temperature
- memory
- controller
- flash memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
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
- 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/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- 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
-
- 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/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/349—Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/04—Arrangements for writing information into, or reading information out from, a digital store with means for avoiding disturbances due to temperature effects
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
存储器系统或闪速卡可以包括改善存储器的耐受性的存储器维持调度。某些参数——诸如温度——被测量并且被用于调度维持。例如,可以取决于卡的周围温度进行或推迟存储器维持。存储器维持操作可以被排名或者分类(例如基于优先级在存储器维持队列中)以与参数的阈值的值对应以用于存储器维持的更加有效的调度。例如,在低温度阈值处,仅进行高优先级维持操作,而在更高的温度阈值处,进行任何优先级维持操作。
Description
技术领域
本申请一般地涉及存储器装置。更具体地,本申请涉及后台操作的管理和调度以改善非易失性半导体闪速存储器的耐受性和寿命。
背景技术
非易失性存储器系统——诸如闪速存储器——已经被广泛地用于消费产品中。闪速存储器可以以不同的形式出现,例如以在主机装置之间运载的便携式存储器卡的形式或者作为嵌入在主机装置中的固态盘(SSD)。
随着非易失性存储器单元缩小到具有每单位面积更高的容量的更小的尺寸,由于编程和擦除循环的单元耐受性,以及干扰(例如由于读取或编程)可能变得更为显著。由于单元尺寸缩小以及工艺复杂度的提高,在硅工艺期间的瑕疵水平可能变得更高。相应地,满足高耐受性要求的存储器可能更加困难,这可能进一步提高用于技术缩放的研究和开发成本。
存储器由于主机写入和非主机写入两者经历写入/擦除周期。非主机写入可以包括存储器维持(maintenance)和/或由存储器卡进行的背景操作/在存储器卡上进行的背景操作。由于该存储器维持的存储器回收可以显著地减少卡的寿命。每当有闲置时间以及试图减少由于存储器维持的写入/擦除周期的次数的某些解决方案时,可以进行存储器维持。
发明内容
可以期望的是,通过监控某些参数并且基于那些参数的值调度维持的优化的存储器维持系统改善存储器的耐受性。例如,温度可以是监控的示例性参数。取决于卡的周围温度,可以进行或者延迟存储器维持。存储器维持操作和后台操作可以被排名或者分类(例如基于优先级在存储器维持队列中)以与参数的阈值的值对应以用于存储器维持的更加有效的调度。例如,在低温度阈值处,仅进行高优先级维持操作,而在更高的温度阈值处,进行任何优先级维持操作。
附图说明
图1是与具有非易失性存储器的存储器系统连接的主机的框图。
图2是用在图1的系统中的示例性闪速存储器装置控制器的框图。
图3是可替换的存储器通信系统的框图。
图4是图1的系统的示例物理存储器组织。
图5是图4的物理存储器的一部分的扩大的视图。
图6是示出在操作为在存储器单元中贮存两位的数据的多级单元存储器中的电荷水平的示意图。
图7示出了在存储器单元隧道氧化层中在高温度("HT")处捕获的电荷的脱离。
图8是与主机一起的温度传感器的一个实施例。
图9是与存储器系统一起的温度传感器的一个实施例。
图10是示出简化的存储器维持调度的流程图。
图11示出了示例性分类和用于每个分类的各个优先级。
图12示出了示例性优先级决定1202因素。
图13示出了维持操作的调度的一个实施例。
具体实施方式
适用于实现本发明的方面的闪速存储器系统在图1-6中示出。图1的主机系统100将数据贮存到存储器系统102并从闪速存储器102取回数据。闪速存储器可以是嵌入在主机中的闪速存储器——诸如以安装在个人计算机中的固态盘(SSD)驱动的形式。可替换地,存储器102可以是以通过如图1中所示的机械的和电的连接器的配件104和106可拆卸地连接到主机的闪速存储器卡的形式。被配置为用作内部或嵌入的SSD驱动的闪速存储器看上去可以与图1的示意图相似,其中一个区别在于存储器系统102的位置在主机的内部。SSD驱动可以以作为用于旋转磁盘驱动的插入式替换的分立的模块的形式。如所述,闪速存储器可指使用贮存电子电荷的无效的AND(NAND)单元。
商业上可用的可拆卸闪速存储器卡的示例包括,压缩闪存(CF)、多媒体卡(MMC)、安全数字(SD)、miniSD、存储器棒、智能介质(SmartMedia)、快闪存储卡(TransFlash)和微型SD卡。尽管这些卡的每一个根据其标准化规格具有独特的机械和/或电气接口,但是在每一个中包含的闪速存储器系统可以是类似的。这些卡都可以从SanDisk公司获得,SanDisk公司为本申请的受让人。SanDisk还提供在其Cruzer商标下的闪速驱动产品线,该闪速驱动是以小的封装的手持式存储器系统,其具有用于通过插入到主机的USB插座而与主机连接的通用串行总线(USB)插头。这些存储器卡和闪速驱动的每一个包括与主机接口以及在它们中控制闪速存储器的操作的控制器。
可能使用SSD、存储器卡和闪速驱动的主机系统是多种多样的。它们包括个人计算机(PC),诸如桌上型或膝上型以及其它便携式计算机、平板计算机、蜂窝电话、智能电话、个人数字助理(PDA)、数码照相机、数码摄像机以及便携式媒体播放器。对于便携式存储器卡应用,主机可以包括用于一个或多个类型的存储器卡或闪速驱动的嵌入式插座,或者主机可能需要存储器卡插入到其中的适配器。存储器系统可以包括其自己的存储器控制器以及驱动器,但是也可能存在一些相反通过由存储器连接到其的主机执行的软件控制的只有存储器的系统。在包含控制器的一些存储器系统中,特别是嵌入在主机中的那些,存储器、控制器和驱动器通常形成在单个集成的电路芯片上。主机可以使用任何通信协议与存储器卡通信,该通信协议——诸如但不限于安全数字(SD)协议、存储器棒(MS)协议以及通用串行总线(USB)协议。
图1的主机系统100可以被视作具有两个主要部件,在考虑存储器装置102的情况中,由电路和软件的组合构成。应用部分108可以通过文件系统模块114和驱动110与存储器装置102接口。在PC中,例如,应用部分108可以包括用于运行文字处理、图形、控制或其它流行的应用软件的处理器112。在相机、主要致力于进行单个集合的功能的蜂窝电话中,应用部分108可以实现为用于运行操作相机以拍取并贮存图片、操作蜂窝电话以接打电话等的软件的硬件。
图1的存储器系统102可以包括非易失性存储器——诸如闪速存储器116——以及与主机100接口并且控制存储器116的系统控制器118,所述主机100连接到存储器系统102以来回传递数据。装置控制器118可以在数据编程和读取期间在主机100所使用的数据的逻辑地址以及闪速存储器116的物理地址之间转换。功能上,装置控制器118可以包括,与主机系统控制器逻辑110接口的主机接口模块(HIM)122、以及用于与主机接口模块122协调的控制器固件模块124、以及闪速接口模块128。闪速管理逻辑126可以是控制器固件214的一部分,该控制器固件214用于诸如垃圾收集的内部存储器管理操作。一个或多个闪速接口模块(FIM)128可以提供控制器与闪速存储器116之间的通信接口。
闪速转换层("FTL")或介质管理层("MML")可以集成在闪速管理126中并且可以处理闪速误差并且与主机接口。特别地,闪速管理126是控制器固件124的一部分并且MML可以是闪速管理中的模块。MML可能对NAND管理的内部负责。特别地,MML可以包括存储器装置固件中的算法,该算法将来自主机100的写入转化为到闪速存储器116的写入。可能需要MML因为:1)闪速存储器可能具有有限的耐受性;2)闪速存储器116可能仅在多个页中被写入;和/或3)闪速存储器116可能不被写入直到其被作为块擦除。MML理解主机100可能不能看到的闪速存储器116的这些潜在限制。相应地,MML试图将来自主机100的写入转化为到闪速存储器116中的写入。如下所述,存储器维持调度算法可以从MML操作。闪速存储器116或其它存储器可以是多级单元(MLC)或单级单元(SLC)存储器。在下面进一步描述MLC和SLC存储器。SLC或MLC可以作为装置控制器118的一部分而不是作为闪速存储器116的一部分被包含。如在图8-9中所示,可以存在作为主机系统100的一部分或者存储器系统102的一部分的温度传感器。
装置控制器118可以实现在单个集成电路芯片上——诸如在图2所示的专用集成电路(ASIC)。装置控制器118的处理器206可以被配置为能够经由具有用于在闪速存储器116中的每个存储器条(bank)的I/O端口的存储器接口204通信的多线程处理器。装置控制器118可以包括内部时钟218。处理器206经由内部数据总线202与误差校正码(ECC)模块214、RAM缓冲器212、主机接口216和启动代码ROM 210通信。
主机接口216可以提供与主机的数据连接。存储器接口204可以是来自图1的一个或多个FIM 128。存储器接口204允许装置控制器118与闪速存储器116通信。RAM 212可以是静态随机存取存储器(SRAM)。ROM 210可以被用于初始化存储器系统102,诸如闪速存储器装置。被初始化的存储器系统102可以被称为卡。图2中的ROM 210可以是只读存储器的区域,其目的在于将启动代码提供到RAM以用于处理程序,诸如存储器系统102的初始化和启动。ROM可以出现在ASIC而不是闪速存储器芯片中。
图3是可替换的存储器通信系统的框图。如关于图1所讨论的,主机系统100与存储器系统102通信。存储器系统102包括前端302和与闪速存储器116耦接的后端306。在一个实施例中,前端302和后端306可以被称为存储器控制器并且可以是装置控制器118的一部分。前端302可以逻辑地包括主机接口模块(HIM)122和HIM控制器304。后端306可以逻辑地包括闪速接口模块(FIM)128和FIM控制器308。相应地,控制器301可以逻辑地被分为两个模块,HIM控制器304和FIM控制器308。HIM 122提供用于主机装置100的接口功能,并且FIM 128提供用于闪速存储器116的接口功能。控制器301可以与温度传感器310耦接。如图8-9中所示,温度传感器310可以是主机系统100的一部分或者存储器系统102的一部分。温度传感器可以位于控制器301中或者是单机的。在任意实施例中,温度感测的准确度在其越靠近闪速存储器116时可以被改善。温度传感器310与控制器301通信测量的/监控的温度。FIM控制器308可以包括实现如下关于图7-10所述的学习阶段和实现阶段的算法。
在操作中,在存储器系统102上由HIM控制器304在主机装置100的写入操作期间从HIM 122接收数据。HIM控制器304可以将对接收的数据的控制传递到FIM控制器308,这可以包括上述FTL。FIM控制器308可以确定如何将接收的数据最优地写入到闪速存储器116上。接收的数据可以由FIM控制器308提供到FIM 128以用于基于由FIM控制器308作出的决定将数据写入到闪速存储器116上。特别地,取决于数据的归类,其可以被不同地写入(例如到MLC或保留在更新块中)。
图4概念性地示出了作为单元阵列的闪速存储器116(图1)的组织。闪速存储器116可以包括多个存储器单元阵列,该多个存储器单元阵列的每一个由单个或多个存储器控制器118单独地控制。存储器单元的四个平面或子阵列402、404、406和408可以在单个集成的存储器单元芯片上、在两个芯片上(每个芯片上的平面的两个)或者在四个单独的芯片上。特定布置对于下面的讨论来说不重要。当然,其它数量的平面——诸如1、2、8、16或更多可能存在于系统中。平面被独立地分为形成擦除的最小单元的存储器单元的组,在下文中被称为块。存储器的块单元在图4中由长方形示出——诸如块410、412、414和416,位于各个平面402、404、406和408中。在每个平面中可以有任何数量的块。
存储器单元的块是擦除的单位,并且是可以一起物理地擦除的最小数量的存储器单元。但是为了增加的并行性,所述块可以以更大的元块单元操作。来自每个平面的一个块逻辑地链接在一起以形成元块。四个块410、412、414和416被示出为形成一个元块418。在元块中的所有的单元通常被一起擦除。被用于形成元块的块不需要被限制到在其各自平面中相同的相对位置,如由块422、424、426和428构成的第二元块420所示。尽管通常优选的是将元块延伸穿过所有的平面,但是对于高系统性能,存储器系统可以以由在不同的平面中的一个、两个或三个块中的任何或者所有动态地形成元块的能力操作。这允许元块的尺寸可以更加紧密地匹配可用在一个编程操作中贮存的数据的量。
如图5中所示,单个的块相反为了操作性目的被划分为存储器单元的页。块410、412、414和416的每一个的存储器单元,例如每一个被分为八页P0-P7。可替换地,在每个块中可以有16、32或者更多的存储器单元的页。页是在块中数据编程和读取的单位,包含一次编程或读取的最小数量的数据。但是,为了增加存储器系统的操作性并行性,在两个或多个块中的这样的页可以逻辑地链接为元页。元页502在图4中示出,由来自四个块410、412、414和416的每一个的一个物理页形成。元页502,例如,包括在四个块的每一个中的页P2,但是元页的页不一定需要具有在每个块中的相同的相对位置。元页可以是编程的最大单位。
存储器单元可以被操作为贮存两个水平的电荷,使得单个位的数据被贮存在每个单元中。这通常被称为二进制或单级单元(SLC)存储器。SLC存储器可以贮存两个状态:0或1。可替换地,存储器单元可以被操作为在每个电荷贮存器元件或区域中贮存多于两个可检测水平的电荷,从而在每个中贮存多于一位的数据。该后者配置被称为多级单元(MLC)存储器。例如,MLC存储器可以贮存四个状态并且可以保留两位的数据:00或01以及10或11。两种类型的存储器单元可以用在存储器中,例如二进制SLC闪速存储器可以被用于缓存数据并且MLC存储器可以被用于长期贮存。存储器单元的电荷贮存器元件最通常地是导电浮置栅极,但是可以可替换地是非导电电介质电荷捕获材料。如下所述,SLC和MLC可以具有不同的耐受性要求,因此取决于那些耐受性要求,减少损耗和减少写入放大("WA")的维持操作的调度可能更加重要。
在被操作为在每个存储器单元中贮存两位的数据的MLC存储器的实现方式中,每个存储器单元被配置为贮存对应于“11”、“01”、“00”和“10”的值的四个水平的电荷。数据的两位的每一位可以表示下部的页的页位或上部的页(upper page)的页位,其中下部的页(lower page)和上部的页跨过共享共同字线的一系列存储器单元。通常,数据的两位的低有效位表示下部的页的页位并且数据的两位的高有效位表示上部的页的页位。
图6示出了被用于表示在存储器单元中的数据的两位的四个电荷水平的一个实现方式。图6被标记为LM模式,其可以被称为在中部的模式处的下部并且将关于在中部的或下部的-中部的中间状态处的下部进一步描述。LM中间状态也可以被称为下部的页编程的阶段。“11”的值对应于存储器单元的未编程的状态。当编程脉冲被施加到存储器单元以编程下部的页的页位时,电荷的水平被升高以表示对应于下部的页的页位的编程的状态的“10”的值。下部的页可以被认为是表示在多级单元(MLC)上的位置的逻辑概念。如果MLC是每单元两位,逻辑页可以包括被组合在一起的字线上的单元的所有的最低有效位。换句话说,下部的页是最低有效位。对于上部的页的页位,当编程下部的页的页位时(“10”的值),编程脉冲被施加到用于上部的页的页位的存储器单元以取决于上部的页的页位的期望的值将电荷的水平升高到对应于“00”或“10”的值。但是,如果没有编程下部的页的页位使得存储器单元在未编程的状态中(“11”的值),将编程脉冲施加到存储器单元以编程上部的页的页位升高电荷的水平以表示对应于上部的页的页位的编程的状态的“01”的值。
由于在其应用的正常寿命中的主机写入和存储器维持操作两者,存储器系统经历写入/擦除操作。内部存储器维持(即,非主机写入操作或后台操作)可能引入用于MLC和SLC两者的高写入放大因素("WAF")。WAF可以是闪速控制器需要相对于主机控制器希望写入的数据的量而写入(由于数据从一个块到另一个块的任何内部复制)的数据的量。换句话说,WAF是非主机写入操作与从主机写入相比的比率。在一个示例中,达半数的MLC写入/擦除操作可以是由于这些内部存储器操作。这对卡的寿命可能有显著的影响。相应地,减少由于系统的内部写入/擦除操作的耐受性影响可能是重要的。在更高的温度处,相比较低的温度,由于诸如编程和擦除的高电压操作在存储器单元中的瑕疵产生被放缓。写入放大可能不一定是较低的,但是产生的瑕疵被减少。在高温度处,如上关于图7所讨论的,电子具有较低概率在瑕疵中被捕获以创建产生更多陷阱的连锁反应。隧道氧化层从而能够在更高的温度处更好地维持其完整性。减少的误差可以最终增加在下面表1中提到的装置的平均耐受性。
仅在最佳时间处可以进行存储器维持(其可互换地被称为非主机写入和/或后台操作)。例如,存储器维持取决于温度可能受限制。存储器维持的一个示例包括垃圾收集,需要该垃圾收集以将废弃的数据一起聚集在将被擦除的块中。垃圾收集可以将有效的数据组合在一起并且组合废弃的数据。当块仅包括废弃的数据时,其可以被擦除使得新的数据可以被写入到所述块。垃圾收集被用于通过最小化部分使用的块的数量而最大化块中的贮存。换句话说,垃圾收集可以是来自具有有效的数据和废弃的数据的混合的块的有效的数据的整合和聚集,垃圾收集导致更多的自由的块,因为存在更少的块具有有效的和废弃的数据两者的混合。
至少部分基于WAF以及用于特定卡的估测的使用率,可以存在对于SLC和MLC两者的某些耐受性要求。例如,通过在某些时间段(例如三年)之上比较对于32千兆字节(GB)SD卡的多个智能电话的使用率的估测,可以确定超过最大仿真的使用率模式的耐受性要求以防止卡故障。下列示例性表1示出了基于用于产品对于3年的时期运作而没有故障的表1中的示例性仿真的存储器上的耐受性要求。基于表1,对于4GB和8GB容量的SLC耐受性要求相比16GB容量的显著地更高。
SLC耐受性要求 | MLC耐受性要求 | |
4GB | 50k | 3k |
8GB | 30k | 3k |
16GB | 20k | 3k |
>=32GB | 10k | 3k |
表1存储器上的耐受性要求
表1中示出的耐受性要求仅是示例性的并且可以随时间改变。特别地,示出的耐受性要求仅是用于解释耐受性要求的示例并且那些值对于不同的装置可以不同。随着技术尺寸持续地降低,耐受性也可能降低。基于增加的使用率以及潜在降低的耐受性,如下所述的动态监控和后台操作的更新应该是减少整体损耗、减少故障并且改善存储器的寿命的方法。最终,基于下述的参数(例如温度)的动态调度也可以减少功率消耗、生产成本以及上市时间。
图7示出了在存储器单元隧道氧化层中在高温度("HT")处的捕获的电荷的脱离。图7示出了在高温度("HT")处在存储器单元的电介质中的电荷的脱离过程的能带示意图,该电介质诸如氧化物。如所示,IPD是多晶硅层间电介质,其可以包括氧化硅、氮化硅和氧化硅三层。浮置栅极(“FG”)是贮存电子的导电层。多晶硅可以是NAND单元的控制栅极或字线,并且硅是在其上建造NAND单元的整个阵列的衬底。多晶硅可以是在制造单元期间形成的层,并且硅是现有晶片,在该晶片上制作NAND芯片。由于热电子发射,在隧道氧化层("TOX")中捕获的电子可能逃逸并且从而相比否则对于在较低的温度("LT")处的情况,在氧化物中创建更少的陷阱(瑕疵)。
相应地,图7示出了更高的温度为何可能导致更少的瑕疵。在更高的温度处,电子具有更多的能量以迁移。在更高的温度处的编程减少在NAND的使用期间的误差的概率。如下所述,监控的温度可以然后被用作对确定何时进行存储器维持的触发。例如,低温度可能意味着,存储器维持应被限制。在更高的温度处的写入/擦除操作可能引入更少量的电荷陷在存储器单元中,导致更少的瑕疵。相应地,算法可以基于对于基于温度的特定参数的阈值控制存储器维持以改善存储器耐受性和卡寿命。目标可以是在更高的温度处最大化内部存储器维持。
图8是与主机802一起的温度传感器806的一个实施例。主机802和存储器系统804可以是在图1-3的任一个中示出的主机或存储器系统,但是在图8中为了简洁而被示出为不具有额外的组件。图8示出了作为主机802的一部分的温度传感器806。例如,如果主机是容纳存储器卡(例如SD卡)的智能电话,智能电话可以包括用于监控温度的温度传感器。主机802可以然后与存储器系统804通信测量的温度使得存储器系统804可以相应地调度维持。
图9是与存储器系统904一起的温度传感器906的一个实施例。主机902和存储器系统904可以是在图1-3的任一个中示出的主机或存储器系统,但是在图9中为了简洁而被示出为不具有额外的组件。图9示出了作为存储器系统904的一部分的温度传感器906。特别地,温度传感器可以是存储器系统的内部组件。在一个实施例中,温度传感器906靠近存储器910以准确地测量存储器温度。温度传感器906越靠近存储器910,该测量将越准确。该测量的温度被通信到控制器908。控制器908可以然后取决于温度调度维持操作。
在一个实施例中,可能需要模拟到数字转换器("ADC")以用于温度传感器测量和通信温度信息。温度传感器可以被连接到命令控制器,该命令控制器可以与存储器控制器分开或者是存储器控制器的一部分。
测量的温度信息然后被用于跟踪和调度存储器维持活动。算法可以试图在更高的温度期间最大化存储器维持活动,但是在较低的温度期间减少存储器维持活动。
图10是示出用于控制存储器维持的算法的示意图。在块1002中,维持队列基于用于每个维持操作的优先级维持。如上所讨论的,维持操作可以从MML起始或者运行。维持操作的一个示例是垃圾收集。将被认为是维持操作的额外的MML请求包括:1)二进制缓冲压缩、2)二进制缓冲收回、3)MLC压缩、4)控制块压缩、5)损耗水平和/或6)集群折叠。
维持队列可以被动态地重新排序或更新。在块1004中,排序的队列可以被分类为区域并且操作可以基于用于各个区域的触发而调度。可以基于其优先级而将每个维持操作分类(即,分配区域)。一般概念是对于低优先级维持操作仅在闲置时间期间并且在更高的温度处运行。更高的优先级维持操作可能需要不管温度而运行。
图11示出了示例性分类和用于每个分类的各个优先级。分类归类也可以被称为区域。特别地,在图11中示出的分类是用于每个维持操作的分类。最高优先级维持操作是前台1102,其是在前台(即,不需要等待闲置时间)中运行的维持操作。这些最高优先级维持操作可以通过节制主机而进行。具有下一最高优先级的第二区域是闲置时间1104。这些维持操作在闲置时间期间运行。具有较低优先级的第三区域是闲置时间和高温度1106两者。较低优先级的维持操作仅将在闲置时间期间并且在更高的温度处运行。换句话说,在闲置时间期间不运行较低优先级维持操作,但是可以等待在闲置时间处的更高的温度。这可以通过在更高的温度处运行更多的维持操作而减少误差。第四区域可以是可选的并且指示可以考虑可替换的参数。温度仅是用于排序维持操作的所考虑的参数的一个示例并且可以存在额外的示例。例如,电源的出现可以是考虑的另一参数。换句话说,最低的优先级维持操作可以仅在更高的温度处的闲置时间期间,并且当有电源连接时运行。其它示例性参数可以包括:1)卡的充满度;2)被称为热计数的块的损耗水平因素;3)时钟的频率;和/或4)VCC电源的水平。
分类系统被设计为使得维持操作(其可以被称为事件)应当在适当的分类期间进行。区域1事件不应该去往区域2,并且区域2事件不应该去往区域3。特别地,针对区域的事件应该在该区域中可用的时间期间完成。但是,区域之间的迁移不是硬性限制并且一些事件可能不在它们分配的区域中完成。例如,如果其几天不去往区域1108中,则低优先级事件随时间可能变为更高的优先级并且被推到区域1106或1104或1102。跟踪为每个区域产生的维持活动的量以及在每个区域中找到的空闲时间的量的历史。这些两个元件可以被用于确定区域的边界。这样,我们可以随着时间预测特定事件是否可以在其分配的区域中被处理并且从而在定义区域边界中变得更加准确。
参考回图10,在块1006中,操作活动和可用的空闲时间的历史可以被维持并且被用于未来的调度决定。操作活动的历史可以包括在图12中示出的用于优先级决定的因素。图12示出了示例性优先级决定1202因素。自第一请求1204起的时间是当特定请求被加入到队列中时开始的计时器。这表示特定维持操作已经在队列中待了多长时间。请求计数1206是用于一个特定维持操作或事件的请求的数量的计数。自基于优先级处理了MML的请求起,MML可以基于甚至在第一个被处理之前的用户活动发送用于特定操作的更多请求。优先级系数1208是可以基于历史控制优先级的值。不同的垃圾收集事件可以具有不同的优先级改变率。例如,一些事件可以是低优先级一个月而一些事件可以仅是低优先级几分钟。具有更快的改变率的事件更加倾向于使系统变为更加紧急并且从而节制主机在前台中进行垃圾收集。为了保持对这些类型的事件的跟踪,可以有用于每种类型的事件的优先级系数变量。每次事件被强迫在前台中执行时,其优先级可以增加一。这帮助系统相应地平衡所有事件。完成1210所需要的时间可能是为优先级所考虑的进一步的因素。
优先级决定1202可以基于图12中示出的因素的任何一个或多个而作出。在一个实施例中,优先级可以通过以下公式计算:
优先级=(自第一请求起的时间)*(请求计数)*(优先级系数)。
该公式可以在将其加入到维持队列之前用于每个维持操作。队列基于用于队列中的操作的优先级值动态地更新。基于用于队列中的操作的分配的优先级可以进一步被分配到图11中示出的区域/分类,其确定何时调度那些操作。调度进一步在图13中示出。
图13示出了维持操作的调度的一个实施例。在块1302中,存储器装置(即,卡)在正常状态中并且温度传感器是激活的。在块1304中,作出关于卡是否闲置或者积极地处理主机命令的决定。如果卡不是闲置的,则如在块1306中可以仅执行区域1维持操作。换句话说,当存储器不是闲置时,仅执行最高优先级维持操作。当如在块1304中卡为闲置时,在块1310中作出关于温度的决定。在一个实施例中,可以存在确定的阈值温度值。如下面进一步讨论的,可以存在多个阈值,该多个阈值具有基于那些阈值的多个优先级值;但是,图13示出了用于单个温度阈值的实施例。当温度低于阈值温度值时,则如在块1312中在区域1-2中执行维持操作。由于温度低,不执行较低优先级维持操作(在区域3+中的那些)。当块1310中温度高于阈值时,在块1314中作出关于电源是否出现的决定。电源的出现是可以被用于调度维持操作的另外的示例性参数。当不出现电源时,则来自区域1-3的事件如在块1316中执行。块1316示出了闲置时间和高温度。在可替换的实施例中,仅存在三个区域并且唯一分析的参数是温度。当块1314中出现电源时,则所有的事件可以在块1318中执行。块1318是闲置时间,具有高温度,并且具有电源。
在可替换的实施例中,温度测量可以被用于优先级测量。如上所讨论的,温度被分类为高或低(例如,在阈值以上或以下的二进制状态)。但是,可以存在多个阈值。例如,可能存在低、中和高温度状态(两个阈值温度)的决定。将进行的维持操作可以然后被归类为考虑不同的温度值的额外的区域。例如,可以在图11中存在是闲置的并且中温度的另外的分类或区域。分类试图在更高的温度处进行大多数维持操作并且在较低的温度处限制维持操作。在较低的温度期间可以仅运行更高的优先级维持操作。在可替换的实施例中,可以存在用于分类维持操作并且确定那些操作可以何时被调度的任何数量的温度阈值的值。图11-13中的示例用于单个温度阈值,但其仅是示例性的。
“计算机-可读介质”、“机器可读介质”、“传播的-信号”介质和/或“信号-承载介质”可以包括任何装置,该装置包括、贮存、通信、传播或者运输软件以用于由指令可执行的系统、设备或装置使用或者与指令可执行的系统、设备或装置连接。机器-可读介质可以选择性地是,但不限于,电子的、磁的、光学的、电磁的、红外的或半导体系统、设备、装置或传播介质。机器-可读介质的示例的非穷举性列表将包括:具有一个或多个导线的电连接“电子”、便携式磁的或光盘、易失性存储器——诸如随机存取存储器“RAM”、只读存储器“ROM”、可擦除可编程只读存储器(EPROM或闪速存储器)或光纤。机器-可读介质还可以包括在其上印刷软件的有形介质,而软件可以是电子地贮存为图像或者另外的形式(例如,通过光学扫描),然后编译和/或转译或其它处理。处理的介质可以然后贮存在计算机和/或机器存储器中。
在可替换的实施例中,专用的硬件实现方式——诸如专用集成电路,可编程逻辑阵列和其它硬件装置——可以被构造以实现这里所述的方法的一个或多个。可以包括各种实施例的设备和系统的应用可以广泛地包括多种电子和计算机系统。这里所述的一个或多个实施例可以使用两个或多个特定互联的硬件模块或具有可以在模块之间或者通过模块通信的有关控制或数据信号的装置实现功能,或者作为专用集成的电路的部分。相应地,本系统包含软件、固件和硬件实现方式。
这里所述的实施例的说明意欲提供对各种实施例的结构的一般理解。说明不意欲作为对于使用这里所述的结构或方法的设备和系统的所有元件的完整描述。当浏览本公开之后,对于本领域技术人员来说许多其它实施例可以是显而易见的。其它实施例可以使用本公开或者从本公开中得到,使得可以不脱离本公开的范围而作出结构的以及逻辑的替换和改变。此外,说明仅是代表性的并且可能未按比例绘制。在该说明中的某些比例可能被放大,而其它比例可能被缩小。相应地,本公开和附图被认为是示意性的而不是限制性的。
Claims (14)
1.一种闪速存储器装置,包括:
非易失性贮存器,具有贮存数据的存储器块的阵列;
温度传感器,邻近所述非易失性贮存器;以及
控制器,与所述非易失性贮存器和所述温度传感器通信,所述控制器被配置为:
从所述温度传感器接收温度值;
产生用于将用所述非易失性贮存器进行的存储器维持操作的存储器维持队列,其中所述操作基于优先级而被组织在所述队列中,其中所述操作的优先级至少包括高优先级存储器维持操作和低优先级存储器维持操作;并且
当所述温度值在温度阈值以上时并且在所述闪速存储器装置的闲置时间期间进行所述低优先级存储器维持操作,
其中用于所述操作的每一个的优先级基于自所述操作被接收起的时间、完成所述操作需要的时间、提交所述操作的次数或者优先级系数的至少一个而确定,并且所述优先级系数反映维持操作的历史数据。
2.如权利要求1所述的装置,其中所述控制器被配置为不管所述温度值而进行高优先级存储器维持操作。
3.如权利要求1所述的装置,其中通过自所述操作被接收起的所述时间、所述操作提交的次数、以及优先级系数的相乘来计算所述优先级。
4.如权利要求1所述的装置,其中所述历史数据包括产生的存储器维持活动的量。
5.一种用于在闪速存储器装置中调度存储器维持操作的方法,包括:
在具有控制器和存储器的块的非易失性贮存器装置中,所述控制器:
从温度传感器接收温度值,所述温度值是所述闪速存储器装置的周围温度;
产生用于将在所述存储器的块上进行的操作的存储器维持队列,其中,所述操作基于优先级而被组织在所述队列中,所述优先级至少包括较高优先级和较低优先级;并且
当所述温度值在温度阈值以上时并且在所述闪速存储器装置的闲置时间期间进行较低优先级存储器维持操作,
其中用于所述操作的每一个的优先级基于自所述操作被接收起的时间、完成所述操作需要的时间、提交所述操作的次数或者优先级系数的至少一个而确定,并且所述优先级系数反映维持操作的历史数据。
6.如权利要求5所述的方法,其中所述温度传感器位于主机处。
7.如权利要求5所述的方法,其中所述温度传感器位于所述非易失性贮存器装置中并且与所述控制器通信。
8.如权利要求5所述的方法,其中所述控制器被配置为不管所述温度值而进行高优先级存储器维持操作。
9.如权利要求5所述的方法,其中通过自所述操作被接收起的所述时间、所述操作提交的次数、以及优先级系数的相乘来计算所述优先级。
10.一种闪速存储器装置,包括:
非易失性贮存器,具有贮存数据的存储器块的阵列;
温度传感器,邻近所述非易失性贮存器;以及
控制器,与所述非易失性贮存器和所述温度传感器通信,所述控制器被配置为:
监控所述闪速存储器装置的闲置时间;
监控来自所述温度传感器的闪速存储器装置的温度;并且
在所述闲置时间期间并且当监控的温度在温度阈值以上时执行较低优先级存储器维持操作,
其中基于反映维持操作的历史数据的优先级系数确定较低优先级或较高优先级的分类。
11.如权利要求10所述的闪速存储器装置,其中所述温度的监控包括从温度传感器接收温度。
12.如权利要求11所述的闪速存储器装置,其中所述闪速存储器装置还包括所述温度传感器,所述温度传感器与所述控制器耦接并且被配置为监控所述温度以及将所述温度通信到所述控制器。
13.如权利要求10所述的闪速存储器装置,其中所述控制器还被配置为:
不管所述温度而执行较高优先级存储器维持操作。
14.如权利要求10所述的闪速存储器装置,其中所述控制器还被配置为:
接收电源是否出现的指示;并且
在所述闲置时间期间并且当监控的温度在温度阈值以上时并且当电源出现时,执行较低优先级存储器维持操作。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/086,355 | 2013-11-21 | ||
US14/086,355 US9535614B2 (en) | 2013-11-21 | 2013-11-21 | Temperature based flash memory system maintenance |
PCT/US2014/060469 WO2015076950A1 (en) | 2013-11-21 | 2014-10-14 | Temperature based flash memory system maintenance |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105745714A CN105745714A (zh) | 2016-07-06 |
CN105745714B true CN105745714B (zh) | 2019-02-01 |
Family
ID=51842884
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480063785.5A Active CN105745714B (zh) | 2013-11-21 | 2014-10-14 | 基于温度的闪速存储器系统维持 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9535614B2 (zh) |
KR (1) | KR101923284B1 (zh) |
CN (1) | CN105745714B (zh) |
DE (1) | DE112014005346B4 (zh) |
WO (1) | WO2015076950A1 (zh) |
Families Citing this family (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10459892B2 (en) | 2014-04-23 | 2019-10-29 | Qumulo, Inc. | Filesystem hierarchical aggregate metrics |
KR102445662B1 (ko) * | 2015-07-01 | 2022-09-22 | 삼성전자주식회사 | 스토리지 장치 |
US10452596B2 (en) * | 2015-10-29 | 2019-10-22 | Micron Technology, Inc. | Memory cells configured in multiple configuration modes |
KR102507769B1 (ko) | 2015-11-04 | 2023-03-09 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
US10198216B2 (en) | 2016-05-28 | 2019-02-05 | Advanced Micro Devices, Inc. | Low power memory throttling |
KR102621467B1 (ko) * | 2016-09-05 | 2024-01-05 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 온도 조절 방법 |
US9811267B1 (en) * | 2016-10-14 | 2017-11-07 | Sandisk Technologies Llc | Non-volatile memory with intelligent temperature sensing and local throttling |
CN106569748B (zh) * | 2016-10-27 | 2019-04-09 | 南方电网科学研究院有限责任公司 | Flash文件系统的数据处理方法和装置 |
KR102482516B1 (ko) | 2016-11-29 | 2022-12-29 | 에이알엠 리미티드 | 메모리 어드레스 변환 |
TWI640867B (zh) * | 2017-05-02 | 2018-11-11 | 慧榮科技股份有限公司 | 資料儲存裝置及其操作方法 |
KR20190026231A (ko) | 2017-09-04 | 2019-03-13 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
US10831673B2 (en) | 2017-11-22 | 2020-11-10 | Arm Limited | Memory address translation |
US10929308B2 (en) * | 2017-11-22 | 2021-02-23 | Arm Limited | Performing maintenance operations |
US10866904B2 (en) | 2017-11-22 | 2020-12-15 | Arm Limited | Data storage for multiple data types |
JP2019149219A (ja) * | 2018-02-28 | 2019-09-05 | 東芝メモリ株式会社 | メモリシステム |
US11360936B2 (en) | 2018-06-08 | 2022-06-14 | Qumulo, Inc. | Managing per object snapshot coverage in filesystems |
DE102019118631A1 (de) | 2018-08-03 | 2020-02-06 | Samsung Electronics Co., Ltd. | Speichervorrichtung, welche eine Wartungsarbeit unabhängig ohne Befehl des Host initiiert, und elektronisches System mit derselben |
KR102546255B1 (ko) * | 2018-08-03 | 2023-06-21 | 삼성전자주식회사 | 호스트의 지시 없이 능동적으로 유지보수 동작을 개시하는 스토리지 장치 및 그것을 포함하는 전자 시스템 |
KR102660399B1 (ko) | 2018-09-20 | 2024-04-25 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작방법 |
US11650642B2 (en) * | 2018-12-03 | 2023-05-16 | Micron Technology, Inc. | Estimating the temperature of a memory sub-system |
US10534758B1 (en) * | 2018-12-20 | 2020-01-14 | Qumulo, Inc. | File system cache tiers |
US11150844B2 (en) | 2019-02-21 | 2021-10-19 | Micron Technology, Inc. | Reflow endurance improvements in triple-level cell NAND flash |
KR20200126533A (ko) | 2019-04-30 | 2020-11-09 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그의 온도 조절 방법 |
US11507641B2 (en) * | 2019-05-31 | 2022-11-22 | Advanced Micro Devices, Inc. | Temperature-based adjustments for in-memory matrix multiplication |
KR20200143107A (ko) | 2019-06-14 | 2020-12-23 | 삼성전자주식회사 | 스토리지 장치의 구동 방법 및 이를 수행하는 스토리지 장치 |
US11397460B2 (en) * | 2019-06-20 | 2022-07-26 | Western Digital Technologies, Inc. | Intelligent power saving mode for solid state drive (ssd) systems |
KR102052622B1 (ko) * | 2019-07-09 | 2019-12-05 | (주)지란지교소프트 | 컴퓨터 스토리지를 위한 잠금 장치 및 시스템 |
JP2021039581A (ja) * | 2019-09-04 | 2021-03-11 | Tdk株式会社 | メモリコントローラ及びこれを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 |
KR20210055376A (ko) * | 2019-11-07 | 2021-05-17 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러, 이를 포함하는 메모리 시스템 및 이의 동작 방법 |
US10860372B1 (en) | 2020-01-24 | 2020-12-08 | Qumulo, Inc. | Managing throughput fairness and quality of service in file systems |
US10795796B1 (en) | 2020-01-24 | 2020-10-06 | Qumulo, Inc. | Predictive performance analysis for file systems |
US11151001B2 (en) | 2020-01-28 | 2021-10-19 | Qumulo, Inc. | Recovery checkpoints for distributed file systems |
US11243711B2 (en) * | 2020-02-05 | 2022-02-08 | Micron Technology, Inc. | Controlling firmware storage density based on temperature detection |
US11144452B2 (en) | 2020-02-05 | 2021-10-12 | Micron Technology, Inc. | Temperature-based data storage processing |
US11360533B2 (en) | 2020-04-15 | 2022-06-14 | Micron Technology, Inc. | Device maintenance of a data storage device including wear levelling, garbage collection, or combination thereof |
US11977772B2 (en) * | 2020-09-28 | 2024-05-07 | Micron Technology, Inc. | Temperature monitoring for memory devices |
US11775481B2 (en) | 2020-09-30 | 2023-10-03 | Qumulo, Inc. | User interfaces for managing distributed file systems |
US11157458B1 (en) | 2021-01-28 | 2021-10-26 | Qumulo, Inc. | Replicating files in distributed file systems using object-based data storage |
US11461241B2 (en) | 2021-03-03 | 2022-10-04 | Qumulo, Inc. | Storage tier management for file systems |
US11567660B2 (en) | 2021-03-16 | 2023-01-31 | Qumulo, Inc. | Managing cloud storage for distributed file systems |
US11132126B1 (en) | 2021-03-16 | 2021-09-28 | Qumulo, Inc. | Backup services for distributed file systems in cloud computing environments |
US11797228B2 (en) * | 2021-06-24 | 2023-10-24 | Western Digital Technologies, Inc. | Efficient handling of background operations for improving sustained performance of host reads and writes |
US11669255B2 (en) | 2021-06-30 | 2023-06-06 | Qumulo, Inc. | Distributed resource caching by reallocation of storage caching using tokens and agents with non-depleted cache allocations |
US11294604B1 (en) | 2021-10-22 | 2022-04-05 | Qumulo, Inc. | Serverless disk drives based on cloud storage |
US11354273B1 (en) | 2021-11-18 | 2022-06-07 | Qumulo, Inc. | Managing usable storage space in distributed file systems |
US11797190B2 (en) | 2021-12-03 | 2023-10-24 | Western Digital Technologies, Inc. | Data storage device and method for providing a temperature-driven variable storage capacity point |
US11599508B1 (en) | 2022-01-31 | 2023-03-07 | Qumulo, Inc. | Integrating distributed file systems with object stores |
US11722150B1 (en) | 2022-09-28 | 2023-08-08 | Qumulo, Inc. | Error resistant write-ahead log |
US11729269B1 (en) | 2022-10-26 | 2023-08-15 | Qumulo, Inc. | Bandwidth management in distributed file systems |
US11966592B1 (en) | 2022-11-29 | 2024-04-23 | Qumulo, Inc. | In-place erasure code transcoding for distributed file systems |
US11934660B1 (en) | 2023-11-07 | 2024-03-19 | Qumulo, Inc. | Tiered data storage with ephemeral and persistent tiers |
US11921677B1 (en) | 2023-11-07 | 2024-03-05 | Qumulo, Inc. | Sharing namespaces across file system clusters |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102682841A (zh) * | 2011-03-02 | 2012-09-19 | 苹果公司 | 具有存储设备的温度传感器的使用 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003091424A (ja) * | 2001-09-18 | 2003-03-28 | Matsushita Electric Ind Co Ltd | 分散処理システムおよびジョブ分散処理方法 |
US6801454B2 (en) | 2002-10-01 | 2004-10-05 | Sandisk Corporation | Voltage generation circuitry having temperature compensation |
US8185899B2 (en) * | 2007-03-07 | 2012-05-22 | International Business Machines Corporation | Prediction based priority scheduling |
US7987332B2 (en) * | 2007-03-21 | 2011-07-26 | Sandisk Technologies Inc. | Methods for storing memory operations in a queue |
US8595449B2 (en) * | 2008-09-02 | 2013-11-26 | Qimonda Ag | Memory scheduler for managing maintenance operations in a resistive memory in response to a trigger condition |
WO2010054670A1 (en) * | 2008-11-11 | 2010-05-20 | Nokia Corporation | Method and device for temperature-based data refresh in non-volatile memories |
US20120297121A1 (en) * | 2011-05-17 | 2012-11-22 | Sergey Anatolievich Gorobets | Non-Volatile Memory and Method with Small Logical Groups Distributed Among Active SLC and MLC Memory Partitions |
US9037779B2 (en) | 2011-12-19 | 2015-05-19 | Sandisk Technologies Inc. | Systems and methods for performing variable flash wear leveling |
-
2013
- 2013-11-21 US US14/086,355 patent/US9535614B2/en active Active
-
2014
- 2014-10-14 KR KR1020167013455A patent/KR101923284B1/ko active IP Right Grant
- 2014-10-14 DE DE112014005346.5T patent/DE112014005346B4/de active Active
- 2014-10-14 WO PCT/US2014/060469 patent/WO2015076950A1/en active Application Filing
- 2014-10-14 CN CN201480063785.5A patent/CN105745714B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102682841A (zh) * | 2011-03-02 | 2012-09-19 | 苹果公司 | 具有存储设备的温度传感器的使用 |
Also Published As
Publication number | Publication date |
---|---|
DE112014005346T5 (de) | 2016-07-28 |
KR20160113580A (ko) | 2016-09-30 |
CN105745714A (zh) | 2016-07-06 |
US20150143026A1 (en) | 2015-05-21 |
US9535614B2 (en) | 2017-01-03 |
DE112014005346B4 (de) | 2024-06-27 |
KR101923284B1 (ko) | 2018-11-28 |
WO2015076950A1 (en) | 2015-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105745714B (zh) | 基于温度的闪速存储器系统维持 | |
USRE50067E1 (en) | Storage device including flash memory and capable of predicting storage device performance based on performance parameters | |
US11243878B2 (en) | Simultaneous garbage collection of multiple source blocks | |
CN103635968B (zh) | 包含存储器系统控制器的设备和相关方法 | |
KR101861170B1 (ko) | 마이그레이션 관리자를 포함하는 메모리 시스템 | |
CN102754088B (zh) | 用于在非易失性存储器阵列中的同时后台和前台操作的方法和系统 | |
US9053808B2 (en) | Flash memory with targeted read scrub algorithm | |
CN107767915A (zh) | 自适应温度和存储器参数抑制 | |
CN107967121A (zh) | 数据写入方法和存储设备 | |
CN109074310A (zh) | 包含动态超级块的存储器装置及相关方法以及电子系统 | |
CN109542675A (zh) | 存储器系统及其操作方法 | |
US20130173874A1 (en) | System and Method for Pre-interleaving Sequential Data | |
CN110032396A (zh) | 存储器系统及其操作方法 | |
CN104866246A (zh) | 一种混合固态硬盘 | |
CN111414131B (zh) | 数据存储装置、其操作方法和包括其的存储系统 | |
CN106126437A (zh) | 存储系统 | |
CN103218300B (zh) | 数据处理方法、存储器控制器与存储器储存装置 | |
CN110174995A (zh) | 存储器控制器及其操作方法 | |
CN104731710B (zh) | 存储器管理方法、存储器控制电路单元与存储器储存装置 | |
CN101609712B (zh) | 具有多非易失性存储器的存储系统及其控制器与存取方法 | |
CN111831586A (zh) | 数据存储设备及其操作方法、使用数据存储设备的控制器 | |
CN100437458C (zh) | 存储器件和主机装置 | |
CN108959109A (zh) | 数据读取方法、存储器控制电路单元与存储器存储装置 | |
CN106326142A (zh) | 缓冲存储器存取方法、存储器控制器与存储器存储装置 | |
CN113490919B (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 | ||
CB02 | Change of applicant information |
Address after: texas Applicant after: DELPHI INT OPERATIONS LUX SRL Address before: texas Applicant before: Sandisk Corp. |
|
COR | Change of bibliographic data | ||
GR01 | Patent grant | ||
GR01 | Patent grant |