CN108984336A - 处理存储设备的热关机 - Google Patents

处理存储设备的热关机 Download PDF

Info

Publication number
CN108984336A
CN108984336A CN201810224581.5A CN201810224581A CN108984336A CN 108984336 A CN108984336 A CN 108984336A CN 201810224581 A CN201810224581 A CN 201810224581A CN 108984336 A CN108984336 A CN 108984336A
Authority
CN
China
Prior art keywords
metadata
volatile memory
storage equipment
temperature
memory device
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.)
Pending
Application number
CN201810224581.5A
Other languages
English (en)
Inventor
N.N.杨
V.卡米拉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Western Digital Technologies Inc
Original Assignee
Western Digital Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Western Digital Technologies Inc filed Critical Western Digital Technologies Inc
Publication of CN108984336A publication Critical patent/CN108984336A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3225Monitoring of peripheral devices of memory devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/04Arrangements for writing information into, or reading information out from, a digital store with means for avoiding disturbances due to temperature effects
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/22Safety or protection circuits preventing unauthorised or accidental access to memory cells
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本公开公开了一种存储设备,其包括用于处理所述存储设备的热关机的控制器。控制系统以第一频率从一个或多个温度检测器获取存储设备中的多个非易失性存储元件的温度。在确定所述多个非易失性存储元件中的一个的温度高于阈值时,所述控制器激活所述多个非易失性存储元件的热节流,并且将元数据从所述存储设备中的易失性存储元件清除到多个非易失性存储元件,以用于将来恢复存储设备。

Description

处理存储设备的热关机
技术领域
本公开的实施例总体上涉及处理诸如固态驱动器(SSD)之类的存储设备的热关机。
背景技术
与传统硬盘驱动器(HDD)相比,闪存SSD具有的优点在于,SDD具有更高的吞吐量、更低的读/写延迟和更低的功耗。与其他非易失性存储器(NVM)相比,NAND闪存尤其具有低的价格和大的容量。
SSD系统中使用的NAND闪存体验温度加热效应。当SSD系统的温度超过阈值时,SSD系统执行热关机以保护SSD系统中的NAND闪存和/或其他电路部件。由于高温引起的SSD系统的热关机是唐突的关机(UGSD),即突然关机。UGSD可能导致数据丢失,因为SSD系统未准备好突然关机。另外,在UGSD之后,SSD系统回复较慢,因为SSD系统需要重新生成由于UGSD丢失的元数据。
因此,需要处理存储设备的UGSD以减少数据丢失并允许更快的恢复。
发明内容
本公开的一个实施例公开了一种存储设备。存储设备包括:多个NVM元件,其被配置为处理多个读/写操作;易失性存储元件,其被配置为存储所述存储设备的元数据;一个或多个温度检测器,其被配置为测量所述多个NVM元件的温度;和一个控制器。控制器被配置为:以第一频率从所述一个或多个温度检测器获取所述多个NVM元件的温度;并且在确定所述多个NVM元件中的第一NVM元件的温度高于第一阈值时:激活所述多个NVM元件的热节流;并将元数据从易失性存储元件清除到所述多个NVM元件。
本公开的另一个实施例公开了一种控制器。该控制器包括处理器和包含有程序的存储器,当该程序在处理器上执行时执行操作。所述操作包括:以第一频率从一个或多个温度检测器获取存储设备中的多个NVM元件的温度;并且在确定所述多个NVM元件中的第一NVM元件的温度高于第一阈值时:激活所述多个NVM元件的热节流;并将存储设备的元数据从存储设备中的易失性存储元件清除到所述多个NVM元件。
本公开的另一实施例公开了一种存储设备。该存储设备包括:多个处理器件,其被配置为处理多个读/写操作;存储器件,其被配置为存储所述存储设备的元数据;一个或多个测量器件,其被配置为测量所述多个处理器件的温度;和控制器件。所述控制器件被配置为:以第一频率从所述一个或多个测量器件获取所述多个处理器件的温度;并且在确定所述多个处理器件中的第一处理器件的温度高于第一阈值时:激活所述多个处理器件的热节流;并将元数据从存储器件清除到所述多个处理器件。
本公开的另一个实施例公开了一种方法。该方法包括:以第一频率从一个或多个温度检测器获取存储设备中的多个NVM元件的温度;并且在确定所述多个NVM元件中的第一NVM元件的温度高于第一阈值时:激活所述多个NVM元件的热节流;以及将存储设备的元数据从存储设备中的易失性存储器元件清除到所述多个NVM元件。
附图说明
为了能够详细理解本公开的上述特征,可以通过参考实施例来获得上面简要总结的本公开的更具体的说明,其中一些实施例在附图中示出。然而,要注意的是,附图仅示出了本公开的典型实施例,并且因此不被认为是对其范围的限制,因为本公开可以允许其他等效实施例。
图1示出了根据本文的一个实施例的SSD系统。
图2示出了流程图。该流程图示出了根据本文的一个实施例的用于处理SSD系统的UGSD的方法。
图3示出了根据本文的一个实施例的用于处理SSD系统的UGSD的清除元数据数据。
图4是示出根据本文的一个实施例的用于恢复SSD系统的方法的流程图。
为了便于理解,在可行的情况下使用相同的附图标记来表示附图中共有的相同元件。预期在一个实施例中公开的元件可以有利地用于其他实施例而无需特定的叙述。
具体实施方式
在下文中,参考本公开的实施例。然而,应该理解,本公开不限于具体描述的实施例。相反,无论是否涉及不同实施例,以下特征和元件的任何组合都被考虑以实施和实践本公开。此外,尽管本公开的实施例可以实现优于其他可行的解决方案和/或现有技术的优点,但是给定实施例是否实现特定优点并不是对本公开的限制。因此,以下方面、特征、实施例和优点仅仅是说明性的,并且不被认为是所附权利要求的要素或限制,除非在权利要求中明确记载。同样地,对“本公开”的引用不应被解释为本文公开的任何发明主题的概括,并且不应被认为是所附权利要求的要素或限制,除非在权利要求中明确记载。
图1示出了根据本文的一个实施例的SSD系统100。如图1所示,SSD系统100包括控制器专用集成电路(ASIC)101。在一个实施例中,控制器ASIC101控制SSD系统100的操作。例如,控制器ASIC 101控制SSD系统100中的存储元件的I/O操作以及SSD系统100的不同部件之间的通信。在一个实施例中,控制器ASIC 101被安装在印刷电路板(PCB)(图1中未示出)上。在一个实施例中,控制器ASIC 101包括固件。例如,控制器ASIC 101可以包括处理器和包含由处理器执行的程序的存储器。
SSD系统100还包括电源管理集成电路(PMIC)102。在一个实施例中,PMIC 102监视并测量SSD系统100的功耗。在一个实施例中,当SSD系统100的温度超过阈值时,控制器ASIC101指示PMIC 102关闭SSD系统100。
而且,SSD系统100包括动态随机存取存储器(DRAM)103。在一个实施例中,DRAM103存储SSD系统100的元数据。例如,当SSD系统100被初始化和/或操作时,控制器ASIC 101可以生成元数据并将元数据数据写入DRAM 103。在一个实施例中,元数据包括SSD系统100的控制数据和/或控制信息。例如,元数据可以包括但不限于:闪存转换层(FTL)逻辑块地址(LBA)表;单元电压分布(CVD)跟踪表;CVD缓存;XOR奇偶校验箱;启动块更新;文件系统块更新;和块管理表。在一个实施例中,元数据的大小从几百千字节(KB)到大约10兆字节(MB)。
SSD系统100还包括多个存储元件。如图1所示,SSD系统100包括多个NAND封装,例如NAND封装111-112。每个NAND封装包括一个或多个存储元件,例如NAND管芯(dies)。例如,如图1所示,NAND封装111包括NAND管芯120-123,NAND封装112包括NAND管芯124-127。
每个NAND管芯包括附接到NAND管芯并测量NAND管芯的温度的温度传感器或温度检测器130。在一个实施例中,控制器ASIC 101从温度传感器130获取NAND管芯的温度。例如,控制器ASIC 101可以将请求发送到附接到NAND封装111中的NAND管芯120-123的每个温度传感器130。作为响应,附接到NAND管芯120-123的每个温度传感器130可以将对应的NAND管芯的测得温度发送到控制器ASIC101。控制器ASIC 101与附接到NAND管芯120-123的温度传感器130之间的通信由双向箭头140指示。类似地,控制器ASIC 101可以将请求发送到附接到NAND封装112中的NAND管芯124-127的每个温度传感器130。作为响应,附接到NAND管芯124-127的每个温度传感器130可以将对应的NAND管芯的测得温度发送到控制器ASIC101。控制器ASIC 101与附接到NAND管芯124-127的温度传感器130之间的通信由双向箭头141指示。
在一个实施例中,在确定NAND管芯的最大温度高于预定阈值时,控制器ASIC 01激活NAND管芯的热节流。在一个实施例中,在热节流期间,控制器ASIC 01将存储在DRAM 03中的元数据清除到NAND管芯,这将在下面详细描述。
图1仅示出一个实施例。在其他实施例中,SSD系统100还包括其他部件,例如系统总线和I/O接口,正如本领域所理解的那样。在其他实施例中,一个NAND封装中的多个NAND管芯可共享一个温度传感器130。
图2示出一流程图,该流程图示出根据本文的一个实施例的用于处理SSD系统100的UGSD的方法200。在框201处,控制器ASIC 101以一频率获取NAND管芯的温度。在一个实施例中,频率由SSD系统100的要求确定或定义。在一个实施例中,控制器ASIC101每1秒获取NAND管芯的温度,即以1Hz的频率。例如,控制器ASIC 101可以每1秒向温度传感器130发送请求以请求NAND管芯120-127的温度。在其他实施例中,如本领域普通技术人员所理解的,控制器ASIC 101可以以不同频率获取NAND管芯的温度。
在框202处,控制器ASIC 101确定NAND管芯的最大温度。在一个实施例中,控制器ASIC101在采样周期中比较NAND管芯的所有获取的温度并确定最大温度。在一个实施例中,采样周期是采集频率的倒数,例如,当采集频率是1Hz时采样周期是1秒。例如,控制器ASIC101从温度传感器130获取NAND管芯120-127的温度,并确定在当前采样周期中,NAND管芯121具有最高温度或最大温度。在一个实施例中,在确定NAND管芯的最大温度之后,控制器ASIC 101基于最大温度对NAND管芯执行热节流,如方法200的以下框中所述。
在框203处,控制器ASIC 101确定NAND管芯的最大温度是否低于关机阈值。在一个示例中,关机阈值可以是95摄氏度。如果框203处的答案是“否”,则方法200进行至框204。在框204处,控制器ASIC 101指示PMIC 102关闭SSD系统100,以保护SSD系统100中的NAND管芯和/或其他电路部件。在框204处SSD系统100被关机之后,在框205处,控制ASIC 101在由主机设备(例如,使用SSD系统100的计算机)发起的下一个电力循环中重新起动SSD系统100。
另一方面,如果框203处的答案是“是”,则方法200进行至框206。在框206处,控制器ASIC 101确定是否激活NAND管芯的热节流。在一个实施例中,如果NAND管芯的最大温度高于激活阈值,则控制器ASIC 101将激活NAND管芯的热节流。在一个示例中,激活阈值可以是83摄氏度。
如果框206处的回答是“否”,即,如果控制器ASIC 101不激活NAND管芯的热节流(例如,NAND管芯的最大温度低于83摄氏度),则方法200继续到框207。在框207处,控制器ASIC 101确定SSD系统100是否以100%容量操作。例如,在框207处,控制器ASIC 101可确定SSD系统100中的NAND管芯(例如,NAND管芯120-127)是否正在使用100%功率进行操作和/或SSD系统100中的NAND管芯是否以最高接口DDR速度(例如500MHz)进行操作。如果框207处的回答为“是”,则方法200回到框201以继续以该频率获取NAND管芯的温度。如果框207处的答案是“否”,则方法200进行至框209。在框209处,控制器ASIC 101尽可能多地继续处理NAND操作。例如,如果SSD系统100中的NAND管芯正在使用85%功率进行操作,则控制器ASIC101继续控制SSD系统100中的NAND管芯以使用85%功率进行操作。在另一个示例中,如果SSD系统100中的NAND管芯以400MHz的接口DDR速度操作,则控制器ASIC101继续控制SSD系统100中的NAND管芯以400MHz的接口DDR速度操作。在框209之后,方法200回到框201,以继续以该频率获取NAND管芯的温度。
另一方面,如果框206处的回答为“是”,即,如果控制器ASIC 01激活NAND管芯的热节流(例如,NAND管芯的最大温度高于83摄氏度),则方法200进行到框208。在框208处,控制器ASIC 101确定是否激活极端热节流。在一个实施例中,在框206处激活NAND管芯的热节流之后,由于热节流,NAND管芯的最大温度降低。例如,在框206处激活的热节流中,控制器ASIC 101减少分配给NAND管芯的功率(例如,向NAND管芯分配70%功率),和/或控制NAND管芯以更低接口DDR速度(例如300MHz)操作。因此,通过热节流,NAND管芯消耗更少的功率并产生更少的热量,从而可以降低NAND管芯的温度。在一个实施例中,在框206处激活热节流之后,控制器ASIC 101继续以该频率(例如,每1秒)获取NAND管芯的温度。如果由于热节流而导致NAND管芯的最大温度降低,则控制器ASIC 101在框208处不激活极端热节流,并且方法200如上所述进行至框209。
然而,在一个实施例中,在框206处激活NAND管芯的热节流之后,NAND管芯的最大温度不会下降,而是会持续增加。也就是说,在框206处激活的热节流不能降低NAND管芯的温度。失败的一个原因可能是由于高温导致一个或多个NAND管芯已经损坏或发生故障。损坏或故障的NAND管芯可能导致热散逸,其继续增加NAND管芯的温度。另一个可能的原因是环境因素,诸如来自周围热源的传导性加热。在一个实施例中,在框206处激活热节流之后,控制器ASIC 101继续以该频率(例如,每1秒)获取NAND管芯的温度。如果NAND管芯的最大温度没有降低,则控制器ASIC 01在框208处激活极端热节流。在一个实施例中,如果NAND管芯的最大温度持续增加至高于第二阈值(例如,85摄氏度),则控制器ASIC 101在框208处激活极端热节流。在一个示例中,在框208处激活的热节流中,控制器ASIC 101进一步减少分配给NAND管芯的功率(例如,向NAND管芯分配5%功率),和/或控制NAND管芯以进一步更低接口DDR速度(例如200MHz)操作。
在框208处激活极端热节流之后,方法200进行至框210。在框210处,控制器ASIC01将SSD系统100的元数据从DRAM 103清除到NAND管芯并设置热关机恢复标记。在一个实施例中,控制器ASIC 101将来自DRAM 103的元数据清除到NAND管芯120-127中的单级单元(SLC)控制块。即,控制器ASIC 101将存储在DRAM 103中的元数据写入或复制到NAND管芯120-127中的SLC控制块。而且,控制器ASIC 101在NAND管芯120-127的SLC启动块中设置热关机恢复标记。下面将详细描述在框210处的操作。如上所述,元数据可以包括但不限于:闪存转换层(FTL)逻辑块地址(LBA)表;CVD跟踪表;CVD缓存;XOR奇偶校验箱;启动块更新;文件系统块更新;和用于NAND管芯120-127中的每一个的块管理表。
在一个实施例中,通过执行短SLC写入操作,将元数据从DRAM103清除到NAND管芯需要短的写入周期,例如200微秒。在一个实施例中,采样周期比短写入周期长。因此,在采样周期中,例如1秒,控制器ASIC 101可以完成清除。
在一个实施例中,在框208处激活热节流之后,控制器ASIC 101继续以该频率(例如,每1秒)获取NAND管芯的温度。在每个采样周期中,如果控制器ASIC 101确定与前一采样周期中的最大温度相比,采样周期中的NAND管芯的最大温度增加,则控制器ASIC 101将SSD系统100的元数据从DRAM 103清除到NAND管芯并设置热关机恢复标记。也就是说,在一个实施例中,在框208处激活极端热节流之后,控制器ASIC 101在多个采样周期中多次清除元数据并设置热关机恢复标记。然而,控制器ASIC 101可以不在每个采样周期中清除元数据并且设置热关机恢复标记。
在一个示例中,如果控制器ASIC 101检测到当前秒中的NAND管芯的最大温度高于先前秒中的最大温度,则控制器ASIC101将SSD系统100的元数据从DRAM 103清除到NAND一次并在当前秒中设置对应的热关机恢复标记。在另一个示例中,如果控制器ASIC 101检测到NAND管芯的最大温度在多个连续的秒中持续地增加,则在所述多个连续的秒中的每一秒中控制器ASIC 101将SSD系统100的元数据从DRAM 103清除到NAND管芯并设置热关机恢复标记。在另一示例中,如果控制器ASIC 101检测到当前秒中的NAND管芯的最大温度由于极端热节流而低于前一秒中的最大温度,则在当前秒中控制器ASIC 101不将SSD系统100的元数据从DRAM 103清除到NAND管芯,并且不设置热关机恢复标记。
在一个实施例中,在框208处激活极端热节流之后,控制器ASIC 101持续地控制NAND管芯以在预关机时间段内操作。在一个实施例中,预关机时间段是当NAND管芯的最大温度高于关机阈值(例如,95摄氏度)时从激活极端热节流到关闭SSD系统100的时间段。
在预关机时间段期间,如上所述,控制器ASIC 101基于最大温度的改变而一次或多次地将SSD系统100的元数据从DRAM 103清除到NAND。由于如上所述的热散逸,NAND管芯的最大温度在预关机时间段期间持续增加。在确定NAND管芯的最大温度增加到高于关机阈值(例如,95摄氏度)时,控制器ASIC 101指示PMIC 102关闭SSD系统100以保护NAND管芯和/或SSD系统100中的其他电路部件。这种热关机是UGSD。UGSD可能导致存储在DRAM 103(易失性存储元件)中的元数据丢失。然而,在UGSD发生之前,元数据已经通过执行如框210处所述的清除而被存储在NAND管芯(非易失性存储元件)中。因此,当重新启动或恢复SSD系统100时,控制器ASIC 101可以利用NAND管芯中存储的元数据,而不是重新生成用于重新启动SSD系统100的新的元数据。以这种方式,可以减少SSD系统100的恢复时间。
图3示出了根据本文的一个实施例的用于处理SSD系统100的UGSD的清除元数据数据。如上所述,在采样周期中,控制器ASIC 101将存储在DRAM 103中的元数据清除到NAND管芯120-127中的SLC控制块,并在NAND管芯120-127中设置对应的热关机恢复标记。图3示出了NAND管芯中的两个SLC控制块301和302以及启动块303。为了说明的目的,假定SLC控制块301和302以及引启动块303是NAND管芯121中的存储块。在一个实施例中,启动块303在NAND管芯121中具有固定位置。例如,启动块303可以是NAND管芯121中的第一存储块。如本领域中所理解的,每个NAND管芯,即NAND管芯120-127中的每一个至少包括启动块和多个SLC控制块。
控制块301和302中的每一个包括用于存储数据的多个页面,例如N个页面。在一个实施例中,在采样周期中,控制器ASIC 101将存储在DRAM 103中的元数据清除到SLC控制块301或302中的一个页面。例如,在预关机时间段期间的第一采样周期(例如,第一秒)中,控制器ASIC 101将存储在DRAM 103中的元数据清除到控制块301中的页面310,如箭头304所示。而且,在第一采样周期期间,控制器ASIC 101在启动块303中设置热关机恢复标记F_0。在一个实施例中,清除元数据并设置热关机恢复标记由控制器ASIC 101同时执行。在另一个实施例中,控制器ASIC 101首先执行状态检查以确保元数据被成功清除,然后设置热关机恢复标记。例如,在检查到元数据被成功清除到页面310之后,控制器ASIC 101在NAND管芯121的启动块303中设置热关机恢复标记F0。在一个实施例中,热关机恢复标记可以是由控制器ASIC 101写入启动块303的一个或几个字节。
在一个实施例中,热关机恢复标记包括指向对应的元数据的指针。例如,热关机恢复标记F0包括指针320,该指正320指向存储在第一采样周期中清除的元数据的页面310中的地址。
类似地,在预关机时间段期间的第二采样时段中,控制器ASIC 101将存储在DRAM103中的元数据清除到控制块301中的页面311,并在启动块303中设置热关机恢复标记F1。热关机恢复标记F1包括指针321,该指正321指向存储在第二采样周期中清除的元数据的页面311中的地址。
类似地,在接下来的采样周期中,如果控制器ASIC101确定与前一采样周期中的最大温度相比,采样周期中的NAND管芯的最大温度增加,则控制器ASIC 101将元数据清除并设置对应的热关机恢复标记。也就是说,在UGSD发生之前,控制器ASIC 101将元数据的多个版本清除到控制块301和302。如图3所示,在UGSD发生之前,控制器ASIC 101总共清除N+1个版本的元数据,并设置从F0到FN的N+1个对应的热关机恢复标记。例如,在UGSD发生之前的倒数第二个采样周期中,控制器ASIC 101将倒数第二个版本的元数据清除到控制块301中的页面312。类似地,在UGSD发生之前的最后一个采样周期(例如,最后一秒)中,控制器ASIC101将最新版本的元数据清除到控制块302中的页面313。
而且,控制器ASIC 101在启动块303中设置相应的热关机恢复标记F(N-1)和FN。热关机恢复标记F(N-1)包括指针322,该指针322指向存储在倒数第二个采样周期中清除的元数据的页面312中的地址,并且热关机恢复标记F_N包括指针323,该指针323指向存储在UGSD发生之前的最后采样周期中清除的元数据的页面313中的地址。
在一个实施例中,控制器ASIC 101将元数据清除到第一控制块,例如控制块301。在第一控制块不再具有用于存储元数据的空间之后,例如控制块301中的N个页面充满了元数据之后,控制器ASIC 101将元数据清除到第二控制块,例如控制块302。在一个实施例中,不同版本的元数据可以包括不同的元数据。例如,存储在页面310中的元数据可以不同于存储在页面313中的元数据。例如,存储在页面310中的CVD缓存可以不同于存储在页面313中的CVD缓存。在一个实施例中,不同版本的元数据可以包括相同的元数据。例如,存储在页面310中的元数据可以与存储在页面311中的元数据相同。在另一个示例中,部分元数据(例如块管理表)在N+1元数据版本中的一些或全部中可以是相同的。
在一个实施例中,在发生UGSD之后,当重新起动或恢复SSD系统100时,控制器ASIC101可以利用存储在NAND管芯的控制块中的最新版本的元数据。例如,当重新起动或恢复SSD系统100时,控制器ASIC 101可以利用存储在控制块302的页面313中的元数据。控制器ASIC 101可以检查热关机恢复标记FN并且使用热关机恢复标记FN中的指针323来访问存储在页面313中的元数据。在另一实施例中,在UGSD发生之后,由于UGSD,最新版本的元数据(例如,存储在页面313中的元数据)可能丢失。在这种情况下,控制器ASIC 101可以利用倒数第二个版本的元数据(例如,存储在页面312中的元数据)来恢复SSD系统100。因为在UGSD发生之前在NAND管芯中存储了多个版本的元数据,所以控制器ASIC 101不需要重新生成用于恢复SSD系统100的新元数据。相反,控制器ASIC 101可以使用存储在NAND管芯中的最新可用版本的元数据来恢复SSD系统100。使用元数据的最新可用版本来恢复SSD系统100可以减少由于UGSD导致的数据丢失。
图3仅示出一个实施例。在其他实施例中,元数据被存储在SLC控制块中的页面的一个或多个单元或子页面中。在其他实施例中,在一个采样周期中清除的元数据可以存储在多个页面中。例如,在第一采样周期中清除的元数据的部分可以存储在页面310中,并且在第一采样周期中清除的元数据的另一部分可以存储在页面311中。
图4是示出根据本文的一个实施例的用于在关机之后恢复SSD系统100的方法400的流程图。在框401处,在关机发生之后,SSD系统100被通电。例如,在关机发生之后,SSD系统100在由主机设备(例如,使用SSD系统100的计算机)发起的下一个电力循环中通电。在框402处,控制器ASIC 101初始化SSD系统100的模块。例如,控制器ASIC 101初始化NAND管芯120-127和DRAM 103。在框403处,控制器ASIC 101访问NAND管芯120-127中的每一个的启动块303,以检查是否为启动块303中的UGSD设置热关机恢复标记。在框404处,控制器ASIC101扫描查找最新良好页面(FLGP:Find Last Good Page)日志块以查找用于主机设备或读取或写入的最新良好页面。在一个实施例中,控制器ASIC 101中的固件扫描FLGP日志块。
在框405处,控制器ASIC 101确定是否对于正常关机(GSD)设置了标记。在一个实施例中,GSD不是由NAND管芯的高温导致的。例如,GSD可能由完成NAND管芯读取和/或写入操作导致。在一个实施例中,在GSD发生之前,控制器ASIC 101还在NAND管芯120-127中的每一个的启动块303中对于GSD设置标记。如果框405处的回答为“是”,则表示在SSD系统100通电之前发生的关机是GSD。也就是说,发生的关机不是由NAND管芯的高温导致的UGSD。方法400进行至框406。在框406处,如本领域所理解的,控制器ASIC 101在GSD之后执行安装以生成用于DRAM 103的元数据。然后方法400进行至框410。在框410处,控制器ASIC 101执行其他安装子过程以配置DRAM 103。在框411处,控制器ASIC 101启用主机写入,使得主机设备可写入到SSD系统100。在框412处,SSD系统100的通电完成。即,SSD系统100从关机恢复。
另一方面,如果框405处的答案是“否”,则表示发生的关机不是GSD。也就是说,发生的关机是UGSD。方法400进行至框407。在框407处,控制器ASIC 101确定是否为UGSD设置热关机恢复标记。例如,控制器ASIC 101检查NAND管芯的启动块303。如果控制器ASIC 101能够在NAND管芯的引导块303中找到一个或多个热关机恢复标记,例如F0至FN中的一个或多个,则表示对于NAND管芯中的每一个设置了至少一个热关机恢复标记。如果框407处的答案是“是”,则方法400进行至框408。
在框408处,控制器ASIC 101可以使用存储在NAND管芯中的元数据来恢复SSD系统100。在一个实施例中,如上所述,控制器ASIC 101可检查热关机恢复标记并使用热关机恢复标记中的指针访问存储在SLC控制块中的元数据。例如,控制器ASIC 101可以使用存储在NAND管芯中的最新可用版本的元数据来重建元数据,诸如DRAM 103中的XOR奇偶校验箱、CVD跟踪表和FTL LBA表。在使用NAND管芯中存储的元数据重建DRAM 103中的元数据之后,如上所述,方法400进行至框410。
如果框407处的回答为“否”,即,控制器ASIC 101检查NAND管芯的启动块303但是不能查找到任何热关机恢复标记,则方法400进行至框409。在框409处,控制器ASIC 101必须在DRAM 103中重新生成新的元数据以恢复SSD系统100。因为元数据未存储在NAND管芯中,所以在框409处,控制器ASIC 101必须扫描SSD系统100并重新生成新的元数据,诸如CVD追踪表、主机块和FTL LBA表。而且,如果需要,控制器ASIC 101必须重新定位主机块。在重新生成新的元数据之后,如上所述,方法400进行到框410。
在本公开的实施例中,在UGSD发生之前将元数据存储在NAND管芯中。因此,可以基于NAND管芯中存储的元数据执行SSD系统100的恢复。也就是说,控制器ASIC 101不需要重新生成用于恢复的新的元数据。因此,减少了SSD系统100的恢复时间。
虽然前述内容针对本公开的实施例,但是可以在不脱离本公开的基本范围的情况下设想本公开的其他和进一步的实施例,并且其范围由随后的权利要求确定。

Claims (21)

1.一种存储设备,包括:
多个非易失性存储元件,其被配置为处理多个读/写操作;
易失性存储元件,其被配置为存储所述存储设备的元数据;
一个或多个温度检测器,其被配置为测量所述多个非易失性存储元件的温度;和
控制器,其被配置为:
以第一频率从所述一个或多个温度检测器获取所述多个非易失性存储元件的温度;和
在确定所述多个非易失性存储元件中的第一个的温度高于第一阈值时:
激活所述多个非易失性存储元件的热节流;和
将元数据从所述易失性存储元件清除到所述多个非易失性存储元件。
2.根据权利要求1所述的存储设备,其中,所述元数据包括以下中的一个或多个:
闪存转换层(FTL)逻辑块地址(LBA)表;
单元电压分布(CVD)跟踪表;
CVD缓存;
XOR奇偶校验箱;
启动块更新;
文件系统块更新;和
块管理表。
3.根据权利要求1所述的存储设备,其中,所述控制器被配置为将所述元数据从所述易失性存储元件清除到所述多个非易失性存储元件中的多个控制块。
4.根据权利要求3所述的存储设备,其中,所述多个控制块包括单级单元(SLC)控制块。
5.根据权利要求3所述的存储设备,其中,所述控制器被配置为通过以第一频率将所述元数据写入所述多个控制块中的一个或多个页面来清除所述元数据。
6.一种控制器,包括:
处理器;
包含有程序的存储器,当所述程序在处理器上执行时执行操作,所述操作包括:
以第一频率从一个或多个温度检测器获取存储设备中的多个非易失性存储元件的温度;和
在确定所述多个非易失性存储元件中的第一个的温度高于第一阈值时:
激活所述多个非易失性存储元件的热节流;和
将存储设备的元数据从所述存储设备中的易失性存储元件清除到所述多个非易失性存储元件。
7.根据权利要求6所述的控制器,其中,清除所述存储设备的元数据包括将元数据从易失性存储元件清除到所述多个非易失性存储元件中的多个控制块。
8.根据权利要求6所述的控制器,所述操作还包括在所述多个控制块中设置指示所述元数据的标记。
9.根据权利要求8所述的控制器,还包括在所述多个非易失性存储元件中的引导块中设置所述标记。
10.根据权利要求8所述的控制器,还包括在成功地清除所述元数据之后设置所述标记。
11.一种存储设备,包括:
多个处理器件,其被配置为处理多个读/写操作;
存储器件,其被配置为存储所述存储设备的元数据;
一个或多个测量器件,其被配置为测量所述多个处理器件的温度;和
控制器件,其被配置为:
以第一频率从所述一个或多个测量器件获取所述多个处理器件的温度;和
在确定所述多个处理器件中的第一个的温度高于第一阈值时:
激活所述多个处理器件的热节流;和
将元数据从所述存储器件清除到所述多个处理器件。
12.根据权利要求11所述的存储设备,其中,所述存储设备包括固态驱动器(SSD)。
13.根据权利要求11所述的存储设备,其中,所述多个处理器件中的每一个包括NAND管芯。
14.根据权利要求11所述的存储设备,其中,存储器件包括随机存取存储器(RAM)。
15.根据权利要求11所述的存储设备,其中,所述一个或多个测量器件包括附接到所述多个处理器件的一个或多个温度检测器。
16.根据权利要求11所述的存储设备,其中,所述控制器件包括NAND控制器。
17.一种方法,包括:
以第一频率从一个或多个温度检测器获取存储设备中的多个非易失性存储元件的温度;和
在确定所述多个非易失性存储元件中的第一个的温度高于第一阈值时:
激活所述多个非易失性存储元件的热节流;和
将存储设备的元数据从所述存储设备中的易失性存储元件清除到所述多个非易失性存储元件。
18.根据权利要求17所述的方法,其中,所述第一频率由所述存储设备确定。
19.根据权利要求17所述的控制方法,还包括:
在确定所述多个非易失性存储元件中的第二个的温度高于第二阈值时:
关闭所述存储设备;和
基于所述多个非易失性存储器元件中的元数据,在由主机设备发起的未来电力循环中恢复所述存储设备。
20.根据权利要求19所述的方法,其中,所述第二阈值高于所述第一阈值。
21.根据权利要求17所述的方法,其中,清除所述存储设备的元数据包括:在激活热节流之后,在确定第一非易失性存储元件的温度没有降低时清除所述元数据。
CN201810224581.5A 2017-06-02 2018-03-19 处理存储设备的热关机 Pending CN108984336A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/611,958 2017-06-02
US15/611,958 US10013194B1 (en) 2017-06-02 2017-06-02 Handling thermal shutdown for memory devices

Publications (1)

Publication Number Publication Date
CN108984336A true CN108984336A (zh) 2018-12-11

Family

ID=62684274

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810224581.5A Pending CN108984336A (zh) 2017-06-02 2018-03-19 处理存储设备的热关机

Country Status (3)

Country Link
US (2) US10013194B1 (zh)
CN (1) CN108984336A (zh)
DE (1) DE102018105773A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111443866A (zh) * 2019-01-16 2020-07-24 西部数据技术公司 能从非正常关机迅速恢复的非易失性存储系统

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10013194B1 (en) * 2017-06-02 2018-07-03 Western Digital Technologies, Inc. Handling thermal shutdown for memory devices
US11182100B2 (en) * 2018-11-07 2021-11-23 Intel Corporation SSD temperature control technique
KR20200073592A (ko) * 2018-12-14 2020-06-24 에스케이하이닉스 주식회사 메모리 컨트롤러 및 이를 포함하는 메모리 시스템
CN113748465A (zh) * 2019-05-27 2021-12-03 英特尔公司 非易失性存储器的温度计采样和保持设计
US11081191B2 (en) 2019-06-18 2021-08-03 Western Digital Technologies, Inc. Dynamic switching for improved power utilization
KR20210036593A (ko) * 2019-09-26 2021-04-05 삼성전자주식회사 스토리지 장치
US11416058B2 (en) * 2020-10-28 2022-08-16 Western Digital Technologies, Inc. Efficient data storage usage associated with ungraceful shutdown
US11508416B2 (en) 2021-03-16 2022-11-22 Western Digital Technologies, Inc. Management of thermal throttling in data storage devices
US11935796B2 (en) 2021-03-23 2024-03-19 Cisco Technology, Inc. Temperature control for multiple die types in a common package
KR20220144725A (ko) 2021-04-20 2022-10-27 삼성전자주식회사 스토리지 장치, 스토리지 장치를 동작하는 방법 및 복수의 성능 테이블들의 제공 방법
US11762771B2 (en) * 2021-04-27 2023-09-19 Micron Technology, Inc. Advanced power off notification for managed memory
US11567668B1 (en) 2021-09-08 2023-01-31 International Business Machines Corporation Data flow management in a heterogeneous memory device using a thermal profile
US20230315313A1 (en) * 2022-04-01 2023-10-05 Western Digital Technologies, Inc. Management of thermal shutdown in data storage devices

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1849593A (zh) * 2003-09-11 2006-10-18 英特尔公司 用于温度敏感存储器的自适应高速缓冲算法
CN101719377A (zh) * 2009-11-24 2010-06-02 成都市华为赛门铁克科技有限公司 功耗控制方法及装置
CN102568609A (zh) * 2010-12-08 2012-07-11 阿沃森特公司 用于自主nand刷新的系统和方法
CN102682841A (zh) * 2011-03-02 2012-09-19 苹果公司 具有存储设备的温度传感器的使用
CN103035282A (zh) * 2011-09-30 2013-04-10 群联电子股份有限公司 存储器储存装置、存储器控制器与温度管理方法
CN103098034A (zh) * 2010-07-28 2013-05-08 Fusion-Io股份有限公司 用于条件和原子存储操作的装置、系统和方法
CN103262054A (zh) * 2010-12-13 2013-08-21 弗森-艾奥公司 用于自动提交存储器的装置、系统和方法
US20140185389A1 (en) * 2013-01-03 2014-07-03 Samsung Electronics Co., Ltd. Memory systems including an input/output buffer circuit
CN105047216A (zh) * 2014-04-17 2015-11-11 三星电子株式会社 存储系统和操作其的方法
CN105895161A (zh) * 2015-02-17 2016-08-24 三星电子株式会社 存储装置、存储器系统及它们的操作方法
US20160342346A1 (en) * 2015-05-22 2016-11-24 Samsung Electronics Co., Ltd. Methods of controlling temperature of non-volatile storage device

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7765825B2 (en) * 2005-12-16 2010-08-03 Intel Corporation Apparatus and method for thermal management of a memory device
US8661184B2 (en) * 2010-01-27 2014-02-25 Fusion-Io, Inc. Managing non-volatile media
WO2013190444A2 (en) 2012-06-18 2013-12-27 Indian Institute Of Technology Kanpur Systems and methods for dry processing fabrication of binary masks with arbitrary shapes for ultra-violet laser micromachining
US8925098B2 (en) * 2012-11-15 2014-12-30 Elwha Llc Data security and access tracking in memory
KR20160094767A (ko) * 2015-02-02 2016-08-10 삼성전자주식회사 아이들 구간에서 정보 전달 기능을 수행하는 메모리 장치 및 방법
US9837146B2 (en) * 2016-01-08 2017-12-05 Sandisk Technologies Llc Memory system temperature management
US10013194B1 (en) * 2017-06-02 2018-07-03 Western Digital Technologies, Inc. Handling thermal shutdown for memory devices

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1849593A (zh) * 2003-09-11 2006-10-18 英特尔公司 用于温度敏感存储器的自适应高速缓冲算法
CN101719377A (zh) * 2009-11-24 2010-06-02 成都市华为赛门铁克科技有限公司 功耗控制方法及装置
CN103098034A (zh) * 2010-07-28 2013-05-08 Fusion-Io股份有限公司 用于条件和原子存储操作的装置、系统和方法
CN102568609A (zh) * 2010-12-08 2012-07-11 阿沃森特公司 用于自主nand刷新的系统和方法
CN103262054A (zh) * 2010-12-13 2013-08-21 弗森-艾奥公司 用于自动提交存储器的装置、系统和方法
CN102682841A (zh) * 2011-03-02 2012-09-19 苹果公司 具有存储设备的温度传感器的使用
CN103035282A (zh) * 2011-09-30 2013-04-10 群联电子股份有限公司 存储器储存装置、存储器控制器与温度管理方法
US20140185389A1 (en) * 2013-01-03 2014-07-03 Samsung Electronics Co., Ltd. Memory systems including an input/output buffer circuit
CN105047216A (zh) * 2014-04-17 2015-11-11 三星电子株式会社 存储系统和操作其的方法
CN105895161A (zh) * 2015-02-17 2016-08-24 三星电子株式会社 存储装置、存储器系统及它们的操作方法
US20160342346A1 (en) * 2015-05-22 2016-11-24 Samsung Electronics Co., Ltd. Methods of controlling temperature of non-volatile storage device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111443866A (zh) * 2019-01-16 2020-07-24 西部数据技术公司 能从非正常关机迅速恢复的非易失性存储系统
CN111443866B (zh) * 2019-01-16 2023-06-27 西部数据技术公司 能从非正常关机迅速恢复的非易失性存储系统及其方法

Also Published As

Publication number Publication date
US10013194B1 (en) 2018-07-03
US20180349046A1 (en) 2018-12-06
DE102018105773A1 (de) 2018-12-06
US10289323B2 (en) 2019-05-14

Similar Documents

Publication Publication Date Title
CN108984336A (zh) 处理存储设备的热关机
US11048589B2 (en) Preserving data upon a power shutdown
CN107632939B (zh) 用于存储装置的映射表
CN106445724B (zh) 与受保护数据分开存储奇偶校验数据
JP6224253B2 (ja) フラッシュメモリ内に記憶されたデータの推測的プリフェッチ
CN106354615B (zh) 固态硬盘日志生成方法及其装置
CN111752487B (zh) 一种数据恢复方法、装置及固态硬盘
US10824344B2 (en) Solid-state drive with non-volatile random access memory
JP5585919B2 (ja) 電源遮断管理
US20160266965A1 (en) Updating exclusive-or parity data
US8411526B2 (en) Storage device, electronic device, and storage device control method
US10459803B2 (en) Method for management tables recovery
US9824777B2 (en) Storage system managing run-time bad cells
US10445252B2 (en) Storage device and operating method performed by the same
WO2009149059A1 (en) Ssd with a controller accelerator
US20220138096A1 (en) Memory system
US20220043713A1 (en) Meta Data Protection against Unexpected Power Loss in a Memory System
US20210210157A1 (en) Apparatus and method for handling temperature dependent failures in a memory device
JP2013235530A5 (zh)
US20220171706A1 (en) Memory system and operating method thereof
US11966582B2 (en) Data storage device that detects and releases bottlenecks
EP4246330A1 (en) Storage device and operating method thereof
US20230289226A1 (en) Instant Submission Queue Release
US20240053890A1 (en) Data Storage Device That Detects And Releases Bottlenecks
US20240103723A1 (en) Unaligned deallocated logical blocks datapath support

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination