CN113168363A - 延迟写入失败记录 - Google Patents
延迟写入失败记录 Download PDFInfo
- 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
Links
- 230000003111 delayed effect Effects 0.000 title claims description 10
- 239000003990 capacitor Substances 0.000 claims description 27
- 238000001514 detection method Methods 0.000 claims description 3
- 238000000034 method Methods 0.000 abstract description 22
- 238000010586 diagram Methods 0.000 description 10
- 238000010606 normalization Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0804—Addressing 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1471—Saving, restoring, recovering or retrying involving logging of persistent data for recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0751—Error or fault detection not based on redundancy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0766—Error or fault reporting or storing
- G06F11/0778—Dumping, i.e. gathering error/state information after a fault for later diagnosis
-
- 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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing 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/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/82—Solving problems relating to consistency
-
- 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/10—Providing a specific technical effect
- G06F2212/1028—Power efficiency
-
- 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/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
-
- 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/7201—Logical to physical mapping or translation of blocks or pages
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy 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范围写入所述日志页面之前从电容器接收电力。
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)
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)
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)
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 |
-
2019
- 2019-06-25 US US16/452,128 patent/US11294807B2/en active Active
- 2019-12-17 CN CN201980079155.XA patent/CN113168363A/zh active Pending
- 2019-12-17 DE DE112019005361.2T patent/DE112019005361T5/de active Pending
- 2019-12-17 WO PCT/US2019/066877 patent/WO2020263321A1/en active Application Filing
Patent Citations (6)
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 |