Dynamic garbage collection P/E policies for redundant storage blocks and distributed software stacks

US10649681B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10649681-B2
Application numberUS-201615133205-A
CountryUS
Kind codeB2
Filing dateApr 19, 2016
Priority dateJan 25, 2016
Publication dateMay 12, 2020
Grant dateMay 12, 2020

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.

A Solid State Drive (SSD) (110) is disclosed. The SSD (110) may include storage (218) for data, and reception circuitry (203) to receive various instructions and data. The reception circuitry (203) may receive an instruction (257) from a host machine (105) to perform garbage collection, along with a selected P/E strategy (260). The SSD (110) may include garbage collection logic (209) to perform garbage collection, possibly with a delayed Program operation if an adaptive P/E strategy (1110) is selected. The SSD (110) may also include a mapping table (221) that may identify which pages were not Programmed before victim blocks (233, 236) were erased, and therefore require replication during a delayed Program operation.

First claim

Opening claim text (preview).

What is claimed is: 1. A Solid State Drive (SSD), comprising: storage for data; reception circuitry to receive an instruction from a host machine to perform garbage collection, the instruction including a Program/Erase (P/E) strategy to be used by the SSD, the P/E strategy to be used by the SSD being one of at least a default P/E strategy and an adaptive P/E strategy; garbage collection logic to perform garbage collection responsive to the reception circuitry receiving the instruction to perform garbage collection, the garbage collection logic including a Program logic to perform a Program operation during garbage collection according to the P/E strategy, the garbage collection logic implementing at least the default P/E strategy and the adaptive P/E strategy; and a mapping table to identify at least one page in a victim block for later fetching from a replicated copy on a second storage device; wherein based at least in part on the instruction including the adaptive P/E strategy, the Program logic is operative to mark, in the mapping table, the at least one page in a victim block on the SSD for fetching from a replicated copy from the second storage device without copying the at least one page to a second block on the SSD before erasing the victim block. 2. An SSD according to claim 1 , wherein responsive to the reception circuitry receiving a write request from a client machine, the Program logic is operative to cache the replicated copy of the at least one page from the second storage device to a memory on the SSD, to modify the cached copy of the at least one page in the memory responsive to the write request, and to write the modified copy of the at least one page to the second block on the SSD. 3. An SSD according to claim 1 , wherein based at least in part on the adaptive P/E strategy being used, the Program logic is operative to copy the replicated copy of the at least one page from the second storage device to the second block on the SSD when an 1/0 load on the host machine is below a load threshold. 4. An SSD according to claim 1 , wherein based at least in part on the adaptive P/E strategy being used, the Program logic is operative to copy the replicated copy of the at least one page from the second storage device to the second block on the SSD after a time threshold has passed. 5. An SSD according to claim 1 , wherein based at least in part on no replicated copy of the at least one page exists on the second storage device, the Program logic is operative to copy the at least one page from the victim block to the second block on the SSD before erasing the victim block despite the P/E strategy being the adaptive P/E strategy. 6. A Solid State Drive (SSD), comprising: storage for data; reception circuitry to receive an instruction from a host machine to perform garbage collection, the instruction including a Program/Erase (P/E) strategy to be used by the SSD, the P/E strategy to be used by the SSD being one of at least a default P/E strategy and an adaptive P/E strategy; garbage collection logic to perform garbage collection responsive to the reception circuitry receiving the instruction to perform garbage collection, the garbage collection logic including a Program logic to perform a Program operation during garbage collection according to the P/E strategy, the garbage collection logic implementing at least the default P/E strategy and the adaptive P/E strategy; Dynamic Random Access Memory (RAM) to cache a copy of the at least one page in the victim block on the SSD; and a SSD controller operative that, based at least in part on the instruction including the adaptive P/E strategy-being-used, is operative to copy the at least one page from the victim block to a cached copy in the Dynamic RAM before erasing the victim block and to copy the cached copy to the second block after erasing the victim block without copying the at least one page to a second block on the SSD before erasing the victim block. 7. An SSD according to claim 6 , wherein based at least in part on the adaptive P/E strategy being used, the Program logic is operative to copy the cached copy of the at least one page from the Dynamic RAM to the second block on the SSD when an 1/0 load on the host machine is below a load threshold. 8. An SSD according to claim 6 , wherein based at least in part on the adaptive P/E strategy being used, the Program logic is operative to copy the cached copy of the at least one page from the Dynamic RAM to the second block on the SSD after a time threshold has passed. 9. An SSD according to claim 6 , wherein based at least in part on no replicated copy of the at least one page exists on a second storage device, the Program logic is operative to copy the at least one page from the victim block to the second block on the SSD before erasing the victim block despite the P/E strategy being the adaptive P/E strategy.

Assignees

Inventors

Classifications

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

  • G06F3/0652Primary

    Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket · CPC title

  • Saving storage space on storage systems · CPC title

  • for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title

  • G06F3/0611Primary

    in relation to response time · 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 US10649681B2 cover?
A Solid State Drive (SSD) (110) is disclosed. The SSD (110) may include storage (218) for data, and reception circuitry (203) to receive various instructions and data. The reception circuitry (203) may receive an instruction (257) from a host machine (105) to perform garbage collection, along with a selected P/E strategy (260). The SSD (110) may include garbage collection logic (209) to perform…
Who is the assignee on this patent?
Samsung Electronics Co Ltd
What technology area does this patent fall under?
Primary CPC classification G06F3/0652. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 12 2020 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 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).