SSD managed host write atomicity with arbitrary transfer length

US12019910B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12019910-B2
Application numberUS-202016987165-A
CountryUS
Kind codeB2
Filing dateAug 6, 2020
Priority dateAug 6, 2020
Publication dateJun 25, 2024
Grant dateJun 25, 2024

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.

An embodiment of an electronic apparatus may include one or more substrates, and logic coupled to the one or more substrates, the logic to control access to a primary persistent storage with a first type of media and a nonvolatile memory buffer with a second type of media that is different from the first type of media, store metadata for incoming write data in the nonvolatile memory buffer, store other data for the incoming write data in the primary persistent storage, and provide both runtime and power-fail write atomicity for the incoming write data. Other embodiments are disclosed and claimed.

First claim

Opening claim text (preview).

What is claimed is: 1. An electronic apparatus, comprising: one or more substrates; and a controller coupled to the one or more substrates, the controller configured to at least: control access to a primary persistent storage with a first type of media and a nonvolatile memory buffer with a second type of media that is different from the first type of media, store metadata for incoming write data in the nonvolatile memory buffer, store other data for the incoming write data in the primary persistent storage, provide both runtime and power-fail write atomicity for the incoming write data, store the metadata for the incoming write data in a first pool of the nonvolatile memory buffer, and store primary persistent storage addresses for the incoming write data in a second pool of the nonvolatile memory buffer. 2. The apparatus of claim 1 , wherein the controller is further configured to: maintain two or more queues for each of the first and second pools of the nonvolatile memory buffer; and build a linked list of primary persistent storage address items for the incoming write data in the second pool of the nonvolatile memory buffer. 3. The apparatus of claim 2 , wherein the controller is further configured to: atomically update multiple entries in a logical-to-physical indirection table after full write information for the incoming write is available based on the metadata stored in the first pool and the linked list of primary persistent storage address items. 4. The apparatus of claim 3 , wherein the controller is further configured to: sequence updates of the logical-to-physical indirection table for the incoming write data separately from other incoming write data. 5. The apparatus of claim 3 , wherein the controller is further configured to: discard the metadata in the nonvolatile memory buffer and the other data in the primary persistent storage without an update of the logical-to-physical indirection table based on an indicator in the NVM buffer in the event of a recovery from a power failure. 6. The apparatus of claim 1 , wherein the primary persistent storage and the nonvolatile memory buffer are part of a solid state drive. 7. An electronic storage system, comprising: a primary persistent storage with a first type of media; a nonvolatile memory buffer with a second type of media that is different from the first type of media; and a controller communicatively coupled to the primary persistent storage and the nonvolatile memory buffer, the controller being configured to at least: store metadata for incoming write data in the nonvolatile memory buffer, store other data for the incoming write data in the primary persistent storage, provide both runtime and power-fail write atomicity for the incoming write data, store the metadata for the incoming write data in a first pool of the nonvolatile memory buffer, and store primary persistent storage addresses for the incoming write data in a second pool of the nonvolatile memory buffer. 8. The system of claim 7 , wherein the controller is further configured to: maintain two or more queues for each of the first and second pools of the nonvolatile memory buffer; and build a linked list of primary persistent storage address items for the incoming write data in the second pool of the nonvolatile memory buffer. 9. The system of claim 8 , wherein the controller is further configured to: atomically update multiple entries in a logical-to-physical indirection table after full write information for the incoming write is available based on the metadata stored in the first pool and the linked list of primary persistent storage address items. 10. The system of claim 9 , wherein the controller is further configured to: sequence updates of the logical-to-physical indirection table for the incoming write data separately from other incoming write data. 11. The system of claim 9 , wherein the controller is further configured to: discard the metadata in the nonvolatile memory buffer and the other data in the primary persistent storage without an update of the logical-to-physical indirection table based on an indicator in the NVM buffer in the event of a recovery from a power failure. 12. The system of claim 7 , wherein the primary persistent storage and the nonvolatile memory buffer are part of a solid state drive. 13. A method of controlling storage, comprising: controlling, using a controller, access to a primary persistent storage with a first type of media and a nonvolatile memory buffer with a second type of media that is different from the first type of media; storing metadata for incoming write data in the nonvolatile memory buffer; storing other data for the incoming write data in the primary persistent storage; providing both runtime and power-fail write atomicity for the incoming write data storing the metadata for the incoming write data in a first pool of the nonvolatile memory buffer, and storing primary persistent storage addresses for the incoming write data in a second pool of the nonvolatile memory buffer. 14. The method of claim 13 , further comprising: maintaining two or more queues for each of the first and second pools of the nonvolatile memory buffer; and building a linked list of primary persistent storage address items for the incoming write data in the second pool of the nonvolatile memory buffer. 15. The method of claim 14 , further comprising: atomically updating multiple entries in a logical-to-physical indirection table after full write information for the incoming write is available based on the metadata stored in the first pool and the linked list of primary persistent storage address items. 16. The method of claim 15 , further comprising: sequencing updates of the logical-to-physical indirection table for the incoming write data separately from other incoming write data. 17. The method of claim 15 , further comprising: discarding the metadata in the nonvolatile memory buffer and the other data in the primary persistent storage without an update of the logical-to-physical indirection table based on an indicator in the NVM buffer in the event of a recovery from a power failure.

Assignees

Inventors

Classifications

  • Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP] · CPC title

  • using page tables, e.g. page table structures · CPC title

  • Data buffering arrangements · CPC title

  • Virtual address space management · CPC title

  • in relation to data integrity, e.g. data losses, bit errors · 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 US12019910B2 cover?
An embodiment of an electronic apparatus may include one or more substrates, and logic coupled to the one or more substrates, the logic to control access to a primary persistent storage with a first type of media and a nonvolatile memory buffer with a second type of media that is different from the first type of media, store metadata for incoming write data in the nonvolatile memory buffer, sto…
Who is the assignee on this patent?
Sk Hynix Nand Product Solutions Corp
What technology area does this patent fall under?
Primary CPC classification G06F3/0659. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jun 25 2024 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 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).