Rapid restart protection for a non-volatile memory system

US11094381B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11094381-B2
Application numberUS-201916429021-A
CountryUS
Kind codeB2
Filing dateJun 2, 2019
Priority dateJun 2, 2019
Publication dateAug 17, 2021
Grant dateAug 17, 2021

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Systems and methods for managing non-volatile memory devices are provided. Embodiments discussed herein provide rapid restart protection for journaling system. The rapid restart protection prevents the NVM from experiencing memory saturation when the NVM system is being forced to handle multiple successive restarts.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for protecting a non-volatile memory (NVM) of a computing device during a rapid restart scenario, the method comprising, at the computing device: determining that a current journal of the NVM includes a rapid restart key, wherein the rapid restart key indicates that a prior version of indirection data stored on the NVM has not been updated to a current version of indirection data; deleting at least one band that includes at least the current journal and the rapid restart key; establishing, within at least one new band of the NVM, the current journal and the rapid restart key; attempting to establish, within the at least one new band, the current version of the indirection data based on a prior journal of the NVM and the prior version of indirection data; and in response to determining that the current version of the indirection data is established within the at least one new band: deleting one or more bands of the NVM that include the prior version of indirection data and the prior journal. 2. The method of claim 1 , wherein the at least one band further includes an incomplete copy of the current version of indirection data. 3. The method of claim 1 , wherein the at least one band and the at least one new band are: distinct from one another, or the same as one another. 4. The method of claim 1 , further comprising: prior to determining that the current journal of the NVM includes the rapid restart key: disabling host write transactions; and subsequent to deleting the one or more bands of the NVM: enabling host write transactions. 5. The method of claim 1 , further comprising, in response to determining that the current version of the indirection data is established within the at least one new band: writing a flag into current journal to indicate that the prior version of the indirection data has successfully been updated to the current version of the indirection data. 6. The method of claim 1 , wherein the indirection data comprises a logical-to-physical mapping of data stored on the NVM. 7. The method of claim 1 , wherein the rapid restart scenario is caused by a sudden power failure. 8. The method of claim 1 , wherein the prior and current versions of indirection data are separated into a first plurality of silos and a second plurality of silos, respectively. 9. A computing device configured to protect a non-volatile memory (NVM) during a rapid restart scenario, the computing device comprising: at least one processor; and at least one memory storing instructions that, when executed by the at least one processor, cause the computing device to carry out steps that include: determining that a current journal of the NVM includes a rapid restart key, wherein the rapid restart key indicates that a prior version of indirection data stored on the NVM has not been updated to a current version of indirection data; deleting at least one band that includes at least the current journal and the rapid restart key; establishing, within at least one new band of the NVM, the current journal and the rapid restart key; attempting to establish, within the at least one new band, the current version of the indirection data based on a prior journal of the NVM and the prior version of indirection data; and in response to determining that the current version of the indirection data is established within the at least one new band: deleting one or more bands of the NVM the include the prior version of indirection data and the prior journal. 10. The computing device of claim 9 , wherein the at least one band further includes an incomplete copy of the current version of indirection data. 11. The computing device of claim 9 , wherein the at least one band and the at least one new band are: distinct from one another, or the same as one another. 12. The computing device of claim 9 , wherein the steps further include: prior to determining that the current journal of the NVM includes the rapid restart key: disabling host write transactions; and subsequent to deleting the one or more bands of the NVM: enabling host write transactions. 13. The computing device of claim 9 , wherein the steps further include, in response to determining that the current version of the indirection data is established within the at least one new band: writing a flag into current journal to indicate that the prior version of the indirection data has successfully been updated to the current version of the indirection data. 14. The computing device of claim 9 , wherein the indirection data comprises a logical-to-physical mapping of data stored on the NVM. 15. The computing device of claim 9 , wherein the rapid restart scenario is caused by a sudden power failure. 16. The computing device of claim 9 , wherein the prior and current versions of indirection data are separated into a first plurality of silos and a second plurality of silos, respectively. 17. A method for protecting a non-volatile memory (NVM) of a computing device during a rapid restart scenario, the method comprising, at the computing device: resetting a rapid restart counter; and in response to a restart event: incrementing the rapid restart counter, commencing a failure protocol when the rapid restart counter satisfies a first threshold, starting a rapid restart protection process when the rapid restart counter satisfies neither the first threshold nor a second threshold, and the rapid restart protection protocol process prevents bricking of the NVM, and delaying the rapid restart protection process for a fixed period of time when the rapid restart counter does not satisfy the first threshold but satisfies the second threshold, wherein the failure protocol prevents operation of the rapid restart protection process. 18. The method of claim 17 , wherein the rapid restart protection process erases all NVM bands written to during an immediately preceding restart process if the immediately preceding restart process was unsuccessful. 19. The method of claim 17 , wherein the rapid restart counter is reset in response to a successful restart. 20. The method claim 19 , wherein: the fixed period of time enables a cause of a sudden power failure to resolve, the sudden power failure is responsible for the restart, and the first threshold is greater than the second threshold.

Assignees

Inventors

Classifications

  • G11C16/22Primary

    Safety or protection circuits preventing unauthorised or accidental access to memory cells · CPC title

  • Control signal input circuits · CPC title

  • Supervision thereof, e.g. detecting power-supply failure by out of limits supervision · CPC title

  • G06F1/30Primary

    Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations (for resetting only G06F1/24) · CPC title

  • for erasing blocks, e.g. arrays, words, groups · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11094381B2 cover?
Systems and methods for managing non-volatile memory devices are provided. Embodiments discussed herein provide rapid restart protection for journaling system. The rapid restart protection prevents the NVM from experiencing memory saturation when the NVM system is being forced to handle multiple successive restarts.
Who is the assignee on this patent?
Apple Inc
What technology area does this patent fall under?
Primary CPC classification G11C16/22. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 17 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).