Rate Limit On The Transitions Of Streams To Open
US-2021373804-A1 · Dec 2, 2021 · US
US12079504B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12079504-B2 |
| Application number | US-202318093734-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 5, 2023 |
| Priority date | May 26, 2020 |
| Publication date | Sep 3, 2024 |
| Grant date | Sep 3, 2024 |
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.
The present disclosure generally relates to methods of operating storage devices. The storage device comprises a controller comprising first random access memory (RAM1), second random access memory (RAM2), and a storage unit divided into a plurality of streams. When a write command is received to write data to a stream, change log data is generated and stored in the RAM1, the previous delta data for the stream is copied from the RAM2 to the RAM1 to be updated with the change log data, and the updated delta data is copied to the RAM2. The delta data stored in the RAM2 is copied to the storage unit periodically. The controller tracks which delta data has been copied to the RAM2 and to the storage unit. During a power failure, the delta data and the change log data are copied from the RAM1 or the RAM2 to the storage unit.
Opening claim text (preview).
What is claimed is: 1. A storage device, comprising: a non-volatile storage unit, wherein a capacity of the non-volatile storage unit is divided into a plurality of streams, and wherein the non-volatile storage unit comprises a plurality of dies, each of the plurality of dies comprising a plurality of erase blocks; a first volatile memory unit comprising a plurality of ranks, wherein the plurality of ranks is divided into one or more sections; and one or more components coupled to the non-volatile storage unit and the first volatile memory unit, the one or more components comprising a second volatile memory unit, wherein the one or more components is configured, individually or in combination, to: receive one or more write commands to write data to one or more streams of the plurality of streams; update delta data associated with at least one stream of the one or more streams for each of the one or more write commands received in the second volatile memory unit, wherein delta data is updated for a particular stream each time a command is received to write data to the particular stream; copy the delta data associated with the at least one stream from the second volatile memory unit to the plurality of ranks of the first volatile memory unit; determine that a majority of the ranks within each section of the one or more sections have been updated or written to; and copy at least one section of the one or more sections to the non-volatile storage unit responsive to the determination that the majority of the ranks within the at least one section have been updated or written to. 2. The storage device of claim 1 , wherein each of the one or more sections is configured to store data for 1 stream to 5 streams. 3. The storage device of claim 1 , further comprising one or more energy storage devices configured, individually or in combination, to provide power to the one or more components, wherein the one or more components is further configured, individually or in combination, to use the power provided by the one or more energy storage devices to copy all data stored in the first volatile memory unit to the non-volatile storage unit responsive to experiencing a power failure event. 4. The storage device of claim 1 , wherein each of the one or more sections comprises 1 rank to 10 ranks. 5. The storage device of claim 1 , wherein: the second volatile memory unit is static random-access memory (SRAM); the first volatile memory unit is dynamic random-access memory (DRAM); and the non-volatile storage unit is NAND memory. 6. The storage device of claim 1 , wherein the first volatile memory unit is magnetoresistive random-access memory (MRAM). 7. The storage device of claim 1 , wherein the one or more components is further configured, individually or in combination, to determine whether a power failure has been experienced by the storage device. 8. The storage device of claim 7 , wherein the one or more components is further configured, individually or in combination, to copy change log data to the non- volatile storage unit responsive to determining that delta data has not yet been updated with the change log data. 9. The storage device of claim 7 , wherein the one or more components is further configured, individually or in combination, to generate change log data associated with a first stream of the plurality of streams. 10. The storage device of claim 7 , wherein the one or more components is further configured, individually or in combination, to track that delta data has been updated with change log data. 11. A storage device, comprising: non-volatile storage means, wherein a capacity of the non-volatile storage means is divided into a plurality of streams; a first volatile memory means comprising a plurality of ranks, wherein the plurality of ranks is divided into one or more sections; and one or more components coupled to the non-volatile storage means and the first volatile memory means, the one or more components comprising a second volatile memory means, wherein the one or more components is configured, individually or in combination, to: receive one or more write commands to write data to one or more streams of the plurality of streams; update delta data associated with at least one stream of the one or more streams for each of the one or more write commands received in the second volatile memory means, wherein delta data is updated for a particular stream each time a command is received to write data to the particular stream; copy the delta data associated with the at least one stream from the second volatile memory means to the plurality of ranks of the first volatile memory means; determine that a majority of the ranks within each section of the one or more sections have been updated or written to; and copy at least one section of the one or more sections to the non-volatile storage means responsive to the determination that the majority of the ranks within the at least one section have been updated or written to. 12. The storage device of claim 11 , wherein the non-volatile storage means comprises a dedicated parking location for power fail protection of data stored in the first volatile memory means. 13. The storage device of claim 12 , wherein the dedicated parking location is one or more erase blocks determined at a beginning of life of the non-volatile storage means. 14. A method, comprising: receiving one or more write commands to write data to one or more streams of a non-volatile storage unit; updating delta data associated with at least one stream of the one or more streams for each write command received in a first volatile memory unit, wherein delta data is updated for a particular stream each time a command is received to write data to the particular stream; copying the delta data associated with the at least one stream from the first volatile memory unit to a second volatile memory unit; determining that a majority of ranks within each section of one or more sections have been updated or written to; and copying at least one section of the one or more sections to the non-volatile storage unit responsive to the determination that the majority of the ranks within the at least one section have been updated or written to. 15. The method of claim 14 , further comprising generating change log data associated with at least one of the one or more streams for each of the one or more write commands received. 16. The method of claim 15 , further comprising updating a previous delta data with the change log data. 17. The method of claim 16 , further comprising determining that a power failure event has been experienced. 18. The method of claim 17 , further comprising providing power to copy all data stored in the first volatile memory unit to the non-volatile storage unit responsive to experiencing the power failure event. 19. The method of claim 14 , further comprising tracking which sections of the one or more sections have been copied to the non-volatile storage unit. 20. The method of claim 14 , wherein the copying the at least one section occurs after a predetermined period of time.
Hybrid storage device · CPC title
Reliability improvement, data loss prevention, degraded operation etc · CPC title
Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations (for resetting only G06F1/24) · CPC title
Address translation · CPC title
Virtual address space management · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.