CN113168363A - 延迟写入失败记录 - Google Patents

延迟写入失败记录 Download PDF

Info

Publication number
CN113168363A
CN113168363A CN201980079155.XA CN201980079155A CN113168363A CN 113168363 A CN113168363 A CN 113168363A CN 201980079155 A CN201980079155 A CN 201980079155A CN 113168363 A CN113168363 A CN 113168363A
Authority
CN
China
Prior art keywords
storage device
log
controller
data
lba
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
CN201980079155.XA
Other languages
English (en)
Inventor
R·纳加比拉瓦
A·H·霍兹
J·G·哈恩
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 CN113168363A publication Critical patent/CN113168363A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
    • 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/1471Saving, restoring, recovering or retrying involving logging of persistent data for recovery
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0778Dumping, i.e. gathering error/state information after a fault for later diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0868Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/82Solving problems relating to consistency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1028Power efficiency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本公开整体涉及用于减少用于在功率损失事件之后将存储设备内的数据恢复到一致状态的能量的量的方法和设备。一旦主机设备失去电力,并且在完全关闭之前,就在存储设备的非易失性存储器(NVM)内创建日志。日志包含对应于经历写入失败的数据的逻辑块地址(LBA)。在下一个通电事件中,检查日志以查看是否存在任何LBA。如果LBA存在于日志中,则经历写入失败的数据可被适当地写入存储设备。

Description

延迟写入失败记录
相关申请的交叉引用
本专利申请要求2019年6月25日提交的美国专利申请第16/452128号的优先权,所述美国专利申请转让给本文的受让人,并且全文以引用方式并入本文。
背景技术
技术领域
本公开的实施方案整体涉及用于减少用于在功率损失事件之后将存储设备内的数据恢复到一致状态的能量的量的方法和设备。
相关领域的描述
为了针对成本和特征缩放优化存储环境,超大规模存储用户在服务器环境中越来越多地采用客户端级固态设备(SSD)。超大规模存储用户对电源故障保护具有约束。企业级设备通常包括一组电容器,以便在突然功率损失期间保持数据一致性。不具有电容器的客户端级设备在突然功率损失期间不能保证飞行中的数据。相反,客户端级设备恢复控制数据,并且在下一次加电之后重建一致状态。
企业级设备使用电容器中的电力以便向NAND提交任何飞行中数据,但是因为客户端级设备不具有此类特征,所以客户端级设备中的飞行中数据丢失。飞行中数据被丢弃,并且NAND可以包括部分提交的数据。目前不存在允许客户端级设备在意外功率损失期间保持一致的数据集的特征。相反,主机设备有责任回退未提交事务。
更多电容器自然地看起来是客户端级设备的合理解决方案。然而,电容器显著增加了存储设备的成本。另外,电容器降低了客户端级设备在数据中心环境中的吸引力。
所需要的是一种减少在功率损失事件之后将存储设备内的数据恢复到一致状态所需的能量的量的方式,使得可以在数据中心使用客户端级设备。
发明内容
本公开整体涉及用于减少用于在功率损失事件之后将存储设备内的数据恢复到一致状态的能量的量的方法和设备。一旦主机设备失去电力,并且在完全关闭之前,就在存储设备的非易失性存储器(NVM)内创建日志。日志包含对应于经历写入失败的数据的逻辑块地址(LBA)。在下一个通电事件中,检查日志以查看是否存在任何LBA。如果LBA存在于日志中,则经历写入失败的数据可被适当地写入存储设备。
在一个实施方案中,存储设备包括:非易失性存储器;以及控制器,该控制器被配置为在检测到功率损失事件时,将LBA范围写入存储在非易失性存储器中的日志并将LBA范围提供给主机设备。
在另一个实施方案中,一种存储设备包括:存储器装置;用于在检测到功率损失事件时将LBA范围写入所述存储器装置中的日志存储装置的装置;以及用于将LBA范围提供给主机设备的装置。
在另一个实施方案中,存储设备包括:至少一个存储器设备,该至少一个存储器设备包含延迟写入失败日志页面;和控制器,所述控制器耦接到所述至少一个存储器设备,所述控制器被配置为:检测功率损失事件;枚举其中数据未被提交到所述存储器设备的所有完成的写入命令;将一个或多个LBA范围写入所述日志页面,其中所述一个或多个LBA范围对应于未提交到所述存储器设备的数据;并且将一个或多个LBA范围递送到主机设备。
附图说明
因此,通过参考实施方案,可以获得详细理解本公开的上述特征的方式、本公开的更具体描述、上述简要概述,所述实施方案中的一些在附图中示出。然而,应当注意的是,附图仅示出了本公开的典型实施方案并且因此不应视为限制其范围,因为本公开可以允许其他同等有效的实施方案。
图1是根据一个实施方案的耦接到主机设备的存储设备的示意图。
图2是根据一个实施方案的存储设备的示意图。
图3是示出根据一个实施方案的延迟写入失败过程的方法的流程图。
图4是示出根据另一个实施方案的延迟写入失败过程的方法的流程图。
图5是示出根据另一个实施方案的延迟写入失败过程的方法的流程图。
为了有助于理解,在可能的情况下,使用相同的参考标号来表示附图中共有的相同元件。可以设想是,在一个实施方案中公开的元件可以有利地用于其他实施方案而无需具体叙述。
具体实施方式
在下文中,参考本公开的实施方案。然而,应当理解的是,本公开不限于具体描述的实施方案。相反,思考以下特征和元件的任何组合(无论是否与不同实施方案相关)以实现和实践本公开。此外,尽管本公开的实施方案可以实现优于其他可能解决方案和/或优于现有技术的优点,但是否通过给定实施方案来实现特定优点不是对本公开的限制。因此,以下方面、特征、实施方案和优点仅是说明性的,并且不被认为是所附权利要求书的要素或限制,除非在权利要求书中明确地叙述。同样地,对“本公开”的引用不应当被解释为本文公开的任何发明主题的概括,并且不应当被认为是所附权利要求书的要素或限制,除非在权利要求书中明确地叙述。
本公开整体涉及用于减少用于在功率损失事件之后将存储设备内的数据恢复到一致状态的能量的量的方法和设备。一旦主机设备失去电力,并且在完全关闭之前,就在存储设备的非易失性存储器(NVM)内创建日志。日志包含对应于经历写入失败的数据的逻辑块地址(LBA)。在下一个通电事件中,检查日志以查看是否存在任何LBA。如果LBA存在于日志中,则经历写入失败的数据可被适当地写入存储设备。
如上所述,企业级SSD使用本地电容器在发生功率损失的情况下提供能量。当电力丢失时,SSD将会将所有飞行中数据刷新到存储器设备(即,NAND)。电容器显著增加了企业级SSD的成本。降低成本的一种策略是在主机端使用电容器,该电容器可向设备供电以便完成提交数据。主机端电容器降低了单个设备成本,但增加了主机端成本和复杂性,因为不同的存储设备具有不同的时序和功率要求。由于客户端级设备未针对功率损失保护进行优化,因此持续时间和相关联的成本可显著增加。
本文所讨论的解决方案通过减少需要提交给仅单个页面的数据量而重新定义规则来解决该问题。该解决方案考虑到主机设备不需要所有飞行中数据,仅仅是保持一致状态的可靠方式。在数据中心环境中,在不同的存储层中通常存在数据的多个副本,并且只要存在识别需要从其他位置恢复哪些LBA范围的方式,就可以恢复数据。
在本文中,术语“延迟写入失败”用于指这样的情况,其中从主机的角度来看写入命令已完成,但写入命令的有效载荷未完全提交到存储设备存储器(即,NAND),并且在突然功率损失之后不能从存储设备存储器恢复。延迟写入失败包括在传输缓冲器中的数据,该数据被聚结成未被完全写入的块或在功率损失事件期间遭受未恢复的编程失败。
如本文所讨论的,受延迟写入失败影响的LBA范围被记录在被提供回主机设备的日志页面中。LBA范围也可被标记为坏,以便触发主机上的异常,从而允许主机从其他存储层恢复数据。电容器将存在于设备端或主机端上以提交日志本身。然而,写入单个4K日志页面所需的时间量显著小于所有飞行中数据所需的时间量,所有飞行中数据取决于DRAM容量和传输缓冲器大小而可以是许多MB。
延迟写入失败日志页面是在上电之后主机可用的日志页面。除了日志页面之外,如果主机尝试从这些范围读取数据,则设备可任选地将受影响的LBA范围标记为坏,并返回标准化或代码。
图1为根据一个实施方案的包括耦接到主机设备104的存储设备102的存储系统100的示意图。存储设备102包括接口106、控制器108和一个或多个存储器设备110A-110N。在操作中,主机设备104通过接口106向存储设备102发送读取和/或写入命令。控制器108从一个或多个存储器设备110A-110N读取数据和/或向一个或多个存储器设备110A-110N写入数据。在一个实施方案中,一个或多个存储器设备110A-110N是非易失性存储设备诸如NAND。应当理解,存储设备102和主机设备104各自具有未示出的附加部件。
图2是根据一个实施方案的包括多个存储器设备204和206的存储设备102的示意图。存储设备102包括至少一个电容器202,该至少一个电容器用于在功率损失事件期间提供足够的电力以将LBA范围写入存储器设备204的日志页面208。换句话讲,当发生延迟写入失败事件时,至少一个电容器202提供足够的电力以使控制器108能够将LBA范围写入存在于存储器设备204中的日志页面208。如图2所示,至少一个电容器202耦接到控制器108以向控制器108提供足够的电力。至少一个电容器202还耦接到接口106,使得至少一个电容器202可在正常操作期间从主机设备104接收电力。
来自主机设备104的电力对至少一个电容器202充电,直到至少一个电容器202达到全容量。所述至少一个电容器202一旦充满电就保持在向存储设备102连续放电同时利用来自主机设备104的电力进行连续再充电的平衡状态。在功率损失事件时,至少一个电容器202没有接收到额外的电力,因此,至少一个电容器在不进行再充电的情况下耗电。在发生功率损失事件的时刻,接口106是存储设备102意识到存在功率损失事件的第一个部分,并且因此向控制器108提供已发生功率损失事件的通知,这触发控制器108开始延迟写入失败日志页面写入。因此,存储设备102所需的电容的量是足以提供足够的功率来写入单个日志页面的量。
图3是示出根据一个实施方案的延迟写入失败过程的方法的流程图300。当存在功率损失事件从而中断来自主机设备的电力时,该方法在302处开始。在首次意识到功率损失的时间点,在304中枚举其中数据未被提交到存储设备中的存储器的所有完成的写入命令。完成但未提交到存储设备中的存储器的写入命令是延迟写入失败命令。从主机的角度来看写入命令已完成,但存储设备尚未将数据写入存储器设备。
因为存在延迟写入失败,所以在306中将受影响的LBA范围写入存储器设备中的日志页面,然后在308处关闭存储设备。最终,主机设备需要存储设备,并且因此在310处使存储设备通电,并且因此开始对电容器充电。此时,在312中,控制器检查存储设备的日志页面以检查是否存在任何条目。如果日志页面中没有条目,则没有延迟写入失败,并且在314处存储设备继续上电。然而,如果日志页面包含条目,则在314处将LBA范围标记为坏。一旦LBA范围被识别为坏,就可将LBA范围提供给主机设备,使得主机设备意识到已发生延迟写入失败。主机设备然后可以是从另一存储层的另一来源获得数据的过程。
图4是示出根据另一个实施方案的延迟写入失败过程的方法的流程图400。图4所示的方法类似于图3所示的方法,然而,在402中控制器向主机提供对日志表的访问,而不是简单地像在314中那样将受影响的LBA范围标记为坏。一旦访问日志页面208,主机设备就可以知道延迟写入失败和受影响的特定LBA范围。主机设备然后可以继续从另一个存储层的另一源获得数据。
图5是示出根据另一个实施方案的延迟写入失败过程的方法的流程图500。图5所示的方法类似于图3和图4所示的方法,然而,控制器向主机设备提供来自日志页面208的特定LBA范围,而不是简单地像在314中那样将受影响的LBA范围标记为坏或在402中那样为主机提供对日志表的访问。一旦能够访问来自日志页面208的LBA范围,主机设备就可以知道延迟写入失败和受影响的特定LBA范围。主机设备然后可以继续从另一个存储层的另一源获得数据。
应当理解,对于延迟写入失败问题,存储设备可将受影响的LBA范围标记为坏,可向主机提供对日志页面的访问,可向主机提供特定的受影响的LBA范围,或它们的任何组合。本公开不限于标记、提供访问或提供LBA范围。
通过利用本地电源,即存储设备本身上的至少一个电容器,即使在功率损失事件中,恢复存储设备内的数据所需的能量的量也处于一致状态。由于所需能量的量减少至简单地将约4K值的数据写入一个专用日志页面所需的容量,因此客户端级SSD不仅是可行的,而且是数据中心所期望的。
在一个实施方案中,存储设备包括:非易失性存储器;以及控制器,该控制器被配置为在检测到功率损失事件时,将LBA范围写入存储在非易失性存储器中的日志并将LBA范围提供给主机设备。存储设备还包括耦接到控制器的电容器。控制器被配置为将LBA范围标记为坏。控制器被配置为检测功率损失事件。所述控制器被配置为枚举其中数据未被提交到所述非易失性存储器的所有完成的写入命令。日志为单个页面。非易失性存储器是NAND。存储设备是客户端级SSD。控制器被配置为:从日志读取LBA范围,并且其中日志是列出延迟写入失败的页面;并且将LBA范围提供给主机设备。
在另一个实施方案中,一种存储设备包括:存储器装置;用于在检测到功率损失事件时将LBA范围写入所述存储器装置中的低存储装置的装置;以及用于将LBA范围提供给主机设备的装置。存储设备还包括在检测到功率损失事件之后向存储设备输送电力的装置。存储设备还包括用于接收功率损失信号的装置。
在另一个实施方案中,存储设备包括:至少一个存储器设备,该至少一个存储器设备包含延迟写入失败日志页面;和控制器,所述控制器耦接到所述至少一个存储器设备,所述控制器被配置为:检测功率损失事件;枚举其中数据未被提交到所述存储器设备的所有完成的写入命令;将一个或多个LBA范围写入所述日志页面,其中所述一个或多个LBA范围对应于未提交到所述存储器设备的数据;并且将一个或多个LBA范围递送到主机设备。控制器被进一步配置为:对存储设备供电;以及针对一个或多个LBA范围检查日志页面。该控制器被进一步配置为使日志页面对主机设备可用。所述控制器被进一步配置为从除主机设备之外的位置接收未提交到所述存储器设备的所述数据,其中所述接收在使所述存储设备上电之后发生。控制器被进一步配置为在日志页面中将一个或多个LBA范围标记为坏。控制器被进一步配置为向主机设备传达一个或多个LBA范围为坏。存储器设备是NAND。所述控制器被进一步配置为在检测到所述功率损失事件之后并且在将所述LBA范围写入所述日志页面之前从电容器接收电力。
虽然前述内容针对本公开的实施方案,但是可以在不脱离本公开的基本范围的情况下设想本公开的其他和另外的实施方案,并且本公开的范围由所附权利要求书确定。

Claims (20)

1.一种存储设备,所述存储设备包括:
非易失性存储器;和
控制器,所述控制器被配置为在检测到功率损失事件时,将LBA范围写入存储在所述非易失性存储器中的日志并将所述日志提供给主机设备。
2.根据权利要求1所述的存储设备,所述存储设备还包括耦接到所述控制器的电容器。
3.根据权利要求1所述的存储设备,其中所述控制器被配置为将所述LBA范围标记为坏。
4.根据权利要求1所述的存储设备,其中所述控制器被配置为检测所述功率损失事件。
5.根据权利要求1所述的存储设备,其中所述控制器被配置为枚举其中数据未被提交到所述非易失性存储器的所有完成的写入命令。
6.根据权利要求1所述的存储设备,其中所述日志为单个页面。
7.根据权利要求1所述的存储设备,其中所述非易失性存储器是NAND。
8.根据权利要求1所述的存储设备,其中所述存储设备是客户端级SSD。
9.根据权利要求1所述的存储设备,其中所述控制器被配置为:
从所述日志读取LBA范围,并且其中所述日志是列出延迟写入失败的页面;以及
将所述LBA范围提供给主机设备。
10.一种存储设备,所述存储设备包括:
存储器装置;
用于在检测到功率损失事件时将LBA范围写入所述存储器装置中的日志存储装置的装置;和
用于将所述LBA范围提供给主机设备的装置。
11.根据权利要求10所述的存储设备,所述存储设备还包括用于在检测到所述功率损失事件之后向所述存储设备输送电力的装置。
12.根据权利要求10所述的存储设备,所述存储设备还包括用于接收功率损失信号的装置。
13.一种存储设备,所述存储设备包括:
至少一个存储器设备,所述至少一个存储器设备包含延迟写入失败日志页面;和
控制器,所述控制器耦接到所述至少一个存储器设备,其中所述控制器被配置为:
检测功率损失事件;
枚举其中数据未被提交到所述存储器设备的所有完成的写入命令;
将一个或多个LBA范围写入所述日志页面,其中所述一个或多个LBA范围对应于未提交到所述存储器设备的所述数据;以及
将所述一个或多个LBA范围递送到主机设备。
14.根据权利要求13所述的存储设备,其中所述控制器被进一步配置为:
对所述存储设备供电;以及
针对一个或多个LBA范围检查所述日志页面。
15.根据权利要求14所述的存储设备,其中所述控制器被进一步配置为使所述日志页面对所述主机设备可用。
16.根据权利要求14所述的存储设备,其中所述控制器被进一步配置为从除主机设备之外的位置接收未提交到所述存储器设备的所述数据,其中所述接收在使所述存储设备上电之后发生。
17.根据权利要求13所述的存储设备,其中所述控制器被进一步配置为在所述日志页面中将所述一个或多个LBA范围标记为坏。
18.根据权利要求17所述的存储设备,其中所述控制器被进一步配置为向所述主机设备传达所述一个或多个LBA范围为坏。
19.根据权利要求13所述的存储设备,其中所述存储器设备为NAND。
20.根据权利要求13所述的存储设备,其中所述控制器被进一步配置为在检测到所述功率损失事件之后并且在将所述LBA范围写入所述日志页面之前从电容器接收电力。
CN201980079155.XA 2019-06-25 2019-12-17 延迟写入失败记录 Pending CN113168363A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/452,128 US11294807B2 (en) 2019-06-25 2019-06-25 Delayed write failure logging
US16/452,128 2019-06-25
PCT/US2019/066877 WO2020263321A1 (en) 2019-06-25 2019-12-17 Delayed write failure logging

Publications (1)

Publication Number Publication Date
CN113168363A true CN113168363A (zh) 2021-07-23

Family

ID=74044543

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980079155.XA Pending CN113168363A (zh) 2019-06-25 2019-12-17 延迟写入失败记录

Country Status (4)

Country Link
US (1) US11294807B2 (zh)
CN (1) CN113168363A (zh)
DE (1) DE112019005361T5 (zh)
WO (1) WO2020263321A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11379141B2 (en) 2020-07-31 2022-07-05 Kioxia Corporation SSD supporting read-only mode after PLP backup failure

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070271422A1 (en) * 2006-05-19 2007-11-22 Nobuyuki Osaki Method and apparatus for data recovery
US20090249010A1 (en) * 2008-03-27 2009-10-01 Fujitsu Limited Apparatus and method for controlling copying
US20120144152A1 (en) * 2010-12-03 2012-06-07 Micron Technology, Inc. Transaction log recovery
US20160350003A1 (en) * 2015-05-29 2016-12-01 Kabushiki Kaisha Toshiba Memory system
US20160378621A1 (en) * 2015-06-24 2016-12-29 Xitore, Inc. Apparatus, system, and method of storage and retrieval of local volatile memory content of non-volatile storage memory
US20170185335A1 (en) * 2015-12-23 2017-06-29 Ocz Storage Solutions, Inc. Power loss protection for solid state drives

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8452912B2 (en) * 2007-10-11 2013-05-28 Super Talent Electronics, Inc. Flash-memory system with enhanced smart-storage switch and packed meta-data cache for mitigating write amplification by delaying and merging writes until a host read
US7093101B2 (en) 2002-11-21 2006-08-15 Microsoft Corporation Dynamic data structures for tracking file system free space in a flash memory device
US8516172B1 (en) 2007-08-30 2013-08-20 Virident Systems, Inc. Methods for early write termination and power failure with non-volatile memory
US8713252B1 (en) * 2009-05-06 2014-04-29 Violin Memory, Inc. Transactional consistency scheme
US8108737B2 (en) 2009-10-05 2012-01-31 Sandforce, Inc. System, method, and computer program product for sending failure information from a serial ATA (SATA) solid state drive (SSD) to a host device
US8792273B2 (en) 2011-06-13 2014-07-29 SMART Storage Systems, Inc. Data storage system with power cycle management and method of operation thereof
CN103514095B (zh) 2012-06-18 2016-08-03 记忆科技(深圳)有限公司 一种数据库写入ssd 的方法和系统
US10474618B2 (en) 2014-09-04 2019-11-12 Western Digital Technologies, Inc. Debug data saving in host memory on PCIE solid state drive
KR20160033519A (ko) 2014-09-18 2016-03-28 삼성전자주식회사 라이트 명령들에 대한 로그를 생성할 수 있는 데이터 저장 장치의 작동 방법과 이를 포함하는 raid 시스템의 작동 방법
US10009438B2 (en) 2015-05-20 2018-06-26 Sandisk Technologies Llc Transaction log acceleration
US20170024140A1 (en) 2015-07-20 2017-01-26 Samsung Electronics Co., Ltd. Storage system and method for metadata management in non-volatile memory
US9921916B2 (en) 2015-12-18 2018-03-20 Intel Corporation Management of power loss in a memory device
US10061655B2 (en) * 2016-05-11 2018-08-28 Seagate Technology Llc Volatile cache reconstruction after power failure
US9921956B2 (en) * 2016-07-20 2018-03-20 Sandisk Technologies Llc System and method for tracking block level mapping overhead in a non-volatile memory
US10909030B2 (en) * 2018-09-11 2021-02-02 Toshiba Memory Corporation Enhanced trim command support for solid state drives
US11144454B2 (en) * 2019-11-22 2021-10-12 Dell Products L.P. Enhanced vault save with compression

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070271422A1 (en) * 2006-05-19 2007-11-22 Nobuyuki Osaki Method and apparatus for data recovery
US20090249010A1 (en) * 2008-03-27 2009-10-01 Fujitsu Limited Apparatus and method for controlling copying
US20120144152A1 (en) * 2010-12-03 2012-06-07 Micron Technology, Inc. Transaction log recovery
US20160350003A1 (en) * 2015-05-29 2016-12-01 Kabushiki Kaisha Toshiba Memory system
US20160378621A1 (en) * 2015-06-24 2016-12-29 Xitore, Inc. Apparatus, system, and method of storage and retrieval of local volatile memory content of non-volatile storage memory
US20170185335A1 (en) * 2015-12-23 2017-06-29 Ocz Storage Solutions, Inc. Power loss protection for solid state drives

Also Published As

Publication number Publication date
WO2020263321A1 (en) 2020-12-30
US20200409843A1 (en) 2020-12-31
US11294807B2 (en) 2022-04-05
DE112019005361T5 (de) 2021-08-19

Similar Documents

Publication Publication Date Title
US20210173567A1 (en) Non-volatile memory storage for multi-channel memory system
US9558839B2 (en) Power fail saving modes in solid state drive with MLC memory
US10438669B2 (en) Flash storage device with data integrity protection
US8200885B2 (en) Hybrid memory system with backup power source and multiple backup an restore methodology
US9164848B2 (en) Variable partitioning in a hybrid memory subsystem
US20150331624A1 (en) Host-controlled flash translation layer snapshot
US10824344B2 (en) Solid-state drive with non-volatile random access memory
US10459837B2 (en) Data storage device with production state awareness and non-volatile memory operating method with production state awareness
US20190324859A1 (en) Method and Apparatus for Restoring Data after Power Failure for An Open-Channel Solid State Drive
WO2009015309A1 (en) Power interrupt recovery in a hybrid memory subsystem
US20140337589A1 (en) Preventing a hybrid memory module from being mapped
CN110781029A (zh) 断电保护方法及系统
US20210318739A1 (en) Systems and methods for managing reduced power failure energy requirements on a solid state drive
CN113168363A (zh) 延迟写入失败记录
CN115691584A (zh) 包括用于次电源的保护电路的存储设备以及控制次电源的方法
US11056211B1 (en) Apparatus and method for handling temperature dependent failures in a memory device
US11854648B2 (en) Method of resetting storage device, storage device performing the same and data center including the same
US20100037004A1 (en) Storage system for backup data of flash memory and method for the same
US20220171706A1 (en) Memory system and operating method thereof
US9274709B2 (en) Indicators for storage cells

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