Cache management in data storage systems

US10180792B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-10180792-B1
Application numberUS-201514701447-A
CountryUS
Kind codeB1
Filing dateApr 30, 2015
Priority dateApr 30, 2015
Publication dateJan 15, 2019
Grant dateJan 15, 2019

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.

Data storage devices may store selected data received from a data source to a buffer memory. The selected data may be copied from the buffer to a non-volatile memory configured for sequential storage. The selected data may then be copied from the buffer to a solid state memory, such as dynamic random access memory. The selected data may be copied from the solid state memory to a main store, such as a magnetic disc memory. If the selected data cannot be found in the solid state memory, the selected data in the non-volatile memory can be copied to the main store.

First claim

Opening claim text (preview).

What is claimed is: 1. A system comprising: a memory; a solid state memory (“SSM”); a first non-volatile memory (“NVM”) configured to store selected data in a sequential manner; a second NVM; a circuit configured to: mirror the selected data to the first NVM and the SSM from the memory by both: storing the selected data from the memory to the first NVM; and storing the same selected data from the memory to the SSM as stored from the memory to the first NVM; and store, from the SSM to the second NVM, the selected data mirrored from the memory to the SSM. 2. The system of claim 1 further comprising: the first NVM is a media cache and the SSM is configured as a media cache mirror (“MCM”) where the SSM also includes a portion configured to store data for input/output commands. 3. The system of claim 1 further comprising: the SSM is NAND flash. 4. The system of claim 2 further comprising: at least one of the first NVM and the second NVM is a magnetic disc memory. 5. The system of claim 4 further comprising: the memory includes a management table; and the management table includes a mapping of sequential ranges of logical block addresses corresponding to sequential data where the sequential data is located in at least one of the first NVM and the SSM. 6. The system of claim 2 further comprising: the memory includes a power loss protection portion, where data stored in the power loss protection portion can be stored to a non-volatile memory when power is lost. 7. The system of claim 4 further comprising: the second NVM is a magnetic disc memory and the first NVM is a reserved portion of the second NVM. 8. A method comprising: receiving selected data from a data source; storing the selected data to a memory; mirroring the selected data to the first NVM and the SSM from the memory by both: storing the selected data from the memory to a first non-volatile memory (“NVM”), where the first NVM is configured for sequential storage; and storing the same selected data from the memory to a solid state memory (“SSM”) as stored from the memory to the first NVM; and storing, from the SSM to a second NVM, the selected data mirrored from the memory to the SSM. 9. The method of claim 8 further comprising: determining if a write command corresponding to the selected data is write cache enabled; and when the write command is write cache enabled, storing the selected data from the memory to one of the SSM and the second NVM, without storing the selected data from the memory to the first NVM. 10. The method of claim 9 further comprising: when the write command is not write cache enable, storing the selected data to a power protected portion of the memory and send a notice of completion to the data source. 11. The method of claim 10 further comprising: determining if storing the selected data in the first NVM is an optimal storage solution; and storing the selected data to the second NVM when storing the selected data in the first NVM is not the optimal storage solution. 12. The method of claim 11 further comprising: storing the selected data from the memory to the first NVM; and storing the selected data from the memory to the SSM. 13. The method of claim 12 further comprising: determining if a level of saturation of the SSM exceeds a threshold; and storing the selected data from the SSM to the second NVM when the level of saturation of the SSM exceeds the threshold. 14. The method of claim 13 further comprising: determining if some of the selected data is in the SSM and some of the selected data is in the first NVM. 15. The method of claim 14 further comprising: merging the selected data in the SSM and the selected data in the first NVM to produce merged data when some of the selected data is in the SSM and some of the selected data is in the first NVM; and storing the merged data to the second NVM. 16. The method of claim 15 further comprising: storing the selected data from the first NVM to the second NVM. 17. The method of claim 8 further comprising: aggregating logical block addresses (LBAs) corresponding to one or more selected data in the memory to produce aggregated LBAs; and storing the aggregated LBAs in a management table. 18. The method of claim 17 further comprising: storing the one or more selected data corresponding to the aggregated LBAs to the first NVM; and storing the one or more selected data corresponding to the aggregated LBAs to the SSM. 19. A system comprising: a memory; a solid state memory (“SSM”); a first non-volatile memory (“NVM”) configured to store selected data in a sequential manner; a second NVM; and a circuit configured to: read the selected data from at least one of the memory, the SSM, the first NVM, and the second NVM based on a location of the selected data and performance characteristics of the memory, the SSM, the first NVM, and the second NVM, where the first NVM is a media cache and the SSM is configured as a media cache mirror (“MCM”) mirroring at least a portion of the data stored in the first NVM; and mirror the portion of the data to the first NVM and the SSM from the memory by both: storing the selected data from the memory to the first NVM; and storing the same selected data from the memory to the SSM as stored from the memory to the first NVM. 20. The system of claim 19 further comprising: the first NVM is a media cache and the second SSM is configured as a media cache mirror and the SSM also includes a portion configured to store data for input/output commands; and at least one of the first NVM and the second NVM is a magnetic disc memory. 21. The system of claim 20 further comprising: the performance characteristics include at least one of a data access time and a data transfer rate.

Assignees

Inventors

Classifications

  • Data buffering arrangements · CPC title

  • Resetting or repowering · CPC title

  • Redundant power supplies (power supply failure G06F1/30) · CPC title

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

  • G06F3/061Primary

    Improving I/O performance · 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 US10180792B1 cover?
Data storage devices may store selected data received from a data source to a buffer memory. The selected data may be copied from the buffer to a non-volatile memory configured for sequential storage. The selected data may then be copied from the buffer to a solid state memory, such as dynamic random access memory. The selected data may be copied from the solid state memory to a main store, suc…
Who is the assignee on this patent?
Seagate Technology Llc
What technology area does this patent fall under?
Primary CPC classification G06F3/061. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 15 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). 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).