Memory system and information processing system
US-2016266792-A1 · Sep 15, 2016 · US
US9804787B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9804787-B2 |
| Application number | US-201615001217-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 19, 2016 |
| Priority date | Nov 3, 2015 |
| Publication date | Oct 31, 2017 |
| Grant date | Oct 31, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A system and method for managing garbage collection in Solid State Drives (SSDs) ( 120 - 1, 120 - 2, 120 - 3, 120 - 4, 120 - 5 ) in a Redundant Array of Independent Disks (RAID) configuration, using a RAID controller ( 115 ) is described. A control logic ( 505 ) can control read and write requests ( 805, 810 ) for the SSDs ( 120 - 1, 120 - 2, 120 - 3, 120 - 4, 120 - 5 ) in the RAID configuration. A selection logic ( 515 ) can select an SSD for garbage collection. Setup logic ( 520 ) can instruct the selected SSD to enter a garbage collection setup phase ( 920 ). An execute logic ( 525 ) can instruct the selected SSD to enter and exit the garbage collection execute phase ( 925 ).
Opening claim text (preview).
What is claimed is: 1. A Redundant Array of Independent Disks (RAID) controller, comprising: control logic to control read and write requests for a plurality of Solid State Drives (SSDs) in a RAID configuration; selection logic to select an SSD from the plurality of SSDs for garbage collection based on a plurality of free sector sizes for the plurality of SSDs; setup logic to instruct the selected SSD to enter a garbage collection setup phase, the garbage collection setup phase operative to copy valid data from a block scheduled for an erase operation during the garbage collection execute phase to another block; and execute logic to instruct the selected SSD to enter the garbage collection execute phase, the garbage collection execute phase operative to perform the erase operation on the block, wherein any number of plurality of SSDs may perform the garbage collection setup phase at one time, but no more than a RAID failure number of the plurality of SSDs may perform the garbage collection execute phase at one time. 2. A RAID controller according to claim 1 , wherein at most one SSD of the plurality of the SSDs in the RAID configuration is in the garbage collection execute phase at any one time. 3. A RAID controller according to claim 1 , wherein the setup logic is operative to instruct a subset of the plurality of SSDs to enter the garbage collection setup phase. 4. A RAID controller according to claim 1 , further comprising configuration logic to configure each of the SSDs to only perform the garbage collection execute phase upon instruction from the RAID controller. 5. A RAID controller according to claim 1 , wherein the execute logic is operative to instruct the selected SSD to end the garbage collection execute phase. 6. A RAID controller according to claim 5 , wherein the RAID controller includes a buffer to store write requests directed to the selected SSD until after the execute logic has instructed the selected SSD to end the garbage collection execute phase. 7. A RAID controller according to claim 1 , wherein the RAID controller is operative to send read requests to a subset of all other SSDs in the RAID configuration when the selected SSD is in the garbage collection execute phase. 8. A RAID controller according to claim 1 , wherein the selection logic includes receive logic to receive the plurality of free sector sizes from the plurality of SSDs. 9. A RAID controller according to claim 8 , wherein the selection logic further includes query logic to query the plurality of SSDs for the plurality of free sector sizes. 10. A method, comprising: selecting a Solid State Drive (SSD) for garbage collection based on a plurality of free sector sizes for a plurality of SSDs in a Redundant Array of Independent Disks (RAID) configuration; instructing the selected SSD to enter a garbage collection setup phase, the garbage collection setup phase operative to copy valid data from a block scheduled for erase operations during the garbage collection to another block; instructing the selected SSD to execute garbage collection execute phase, the garbage collection execute phase operative to perform the erase operations on the block; waiting for a first interval of time; and instructing the selected SSD to stop the garbage collection execute phase, wherein any number of plurality of SSDs may perform the garbage collection setup phase at one time, but no more than a RAID failure number of the plurality of SSDs may perform the garbage collection execute phase at one time. 11. A method according to claim 10 , wherein: instructing the selected SSD to execute garbage collection includes directing read requests to another SSD in the RAID configuration; and the method further comprises: waiting for a second interval of time; and scheduling the selected SSD for read requests. 12. A method according to claim 10 , wherein: selecting an SSD for garbage collection includes selecting a plurality of SSDs for garbage collection based on the plurality of free sector sizes; instructing the selected SSD to enter a garbage collection setup phase includes instructing the selected plurality of SSDs to enter a garbage collection setup phase; and instructing the selected SSD to execute garbage collection includes selecting a first of the selected plurality of SSDs for a garbage collection execution phase. 13. A method according to claim 12 , further comprising: selecting a second of the selected plurality of SSDs for a garbage collection execution phase after the selected first of the plurality of SSDs completed the garbage collection execution phase; and instructing the selected second of the plurality of SSD to execute garbage collection. 14. A method according to claim 10 , further comprising configuring each of the plurality of SSDs in the RAID configuration so that the SSDs in the RAID configuration perform garbage collection only upon instruction from a RAID controller. 15. A method according to claim 10 , wherein selecting an SSD for garbage collection includes selecting the SSD requiring static wear leveling. 16. A method according to claim 10 , wherein: waiting for a first interval of time includes buffering write requests while the selected SSD is executing garbage collection; and the method further comprises delivering the buffered write requests to the selected SSD after instructing the selected SSD to end the garbage collection execute phase. 17. A method according to claim 10 , wherein selecting a Solid State Drive (SSD) for garbage collection includes receiving the plurality of free sector sizes from the plurality of SSDs. 18. A method according to claim 10 , wherein selecting a Solid State Drive (SSD) for garbage collection based on a plurality of free sector sizes for a plurality of SSDs includes selecting up to a RAID failure number of SSDs for garbage collection based on a plurality of free sector sizes for a plurality of SSDs. 19. An article, comprising a tangible storage medium, the tangible storage medium having stored thereon non-transitory instructions that, when executed by a machine, result in: selecting a Solid State Drive (SSD) for garbage collection based on a plurality of free sector sizes for a plurality of SSDs in a Redundant Array of Independent Disks (RAID) configuration; instructing the selected SSD to enter a garbage collection setup phase, the garbage collection setup phase operative to copy valid data from a block scheduled for erase operations during the garbage collection to another block; instructing the selected SSD to execute garbage collection execute phase, the garbage collection execute phase operative to perform the erase operations on the block; waiting for a first interval of time; and instructing the selected SSD to stop the garbage collection execute phase, wherein any number of plurality of SSDs may perform the garbage collection setup phase at one time, but no more than a RAID failure number of the plurality of SSDs may perform the garbage collection execute phase at one time. 20. An article according to claim 19 , wherein up to a RAID failure number of SSDs of the plurality of SSDs in the RAID configuration are executing garbage collection at any time.
Non-volatile semiconductor memory arrays · CPC title
Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket · CPC title
Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title
in relation to response time · CPC title
configured as RAID · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.