Flash memory controller and associated control method
US-2024377989-A1 · Nov 14, 2024 · US
US2016283115A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2016283115-A1 |
| Application number | US-201615177022-A |
| Country | US |
| Kind code | A1 |
| Filing date | Jun 8, 2016 |
| Priority date | Mar 15, 2013 |
| Publication date | Sep 29, 2016 |
| Grant date | — |
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 data storage system includes data storage and random access memory. A sorting module is communicatively coupled to the random access memory and sorts data blocks of write data received in the random access memory of the data storage. A storage controller is communicatively coupled to the random access memory and the data storage and being configured to write the sorted data blocks into one or more individually-sorted granules in a granule storage area of the data storage, wherein each granule is dynamically constrained to a subset of logical block addresses. A method and processor-implemented process provide for sorting data blocks of write data received in random access memory of data storage. The method and processor-implemented process write the sorted data blocks into one or more individually-sorted granules in a granule storage area of the data storage, wherein each granule is dynamically constrained to a subset of logical block addresses.
Opening claim text (preview).
What is claimed is: 1 . A method comprising: writing data blocks grouped as subsets of logical block addresses to multiple individual granules in a granule storage area of data storage, wherein the multiple individual granules are recorded in a single shingled magnetic recording band; sorting together data blocks of at least two of the multiple individual granules to form a compacted granule; and writing the compacted granule to a destination storage area. 2 . The method of claim 1 , wherein each of the multiple individual granules is dynamically constrained to hold data of at least one of the subsets of logical block addresses. 3 . The method of claim 1 , wherein data blocks in the multiple individual granules are not arranged according to a logical block address order. 4 . The method of claim 1 further comprising: sorting the data blocks according to subsets of logical block addresses prior to writing the data blocks to the multiple individual granules. 5 . The method of claim 1 further comprising: receiving into random access memory data blocks from the multiple individual granules recorded in the granule storage area of the data storage; and re-sorting the data blocks from the multiple individual granules received in the random access memory. 6 . The method of claim 1 further comprising: receiving into random access memory data blocks from the multiple individual granules recorded in the granule storage area of the data storage; and writing the data blocks of the multiple individual granules from the random access memory to a host device. 7 . The method of claim 1 , wherein at least two of the multiple individual granules are constrained to store data of overlapping subsets of logical block addresses. 8 . The method of claim 1 , wherein the destination storage area is a statically mapped region. 9 . A data storage system comprising: data storage; random access memory; and a storage controller communicatively coupled to the random access memory and the data storage and being configured to: write data blocks into multiple individual granules in a granule storage area of data storage, wherein the multiple individual granules are recorded in a single shingled magnetic recording band and are each constrained to store data of a subset of logical block addresses; sort together data blocks of at least two of the multiple individual granules to form a compacted granule; and write the compacted granule to a destination storage area. 10 . The data storage system of claim 9 wherein the destination storage area is a statically mapped region. 11 . The data storage system of claim 9 wherein at least two of the multiple individual granules are constrained to stored data of overlapping subsets of logical block addresses. 12 . The data storage system of claim 9 wherein data blocks in the multiple individual granules are not arranged according to a perfect logical block address order. 13 . The data storage system of claim 9 wherein the storage controller is further configured to read into random access memory data blocks from multiple individual granules recorded in the granule storage area and write the data blocks to a statically-mapped region of the destination storage area. 14 . One or more processor-readable storage media storing processor-readable instructions for performing a system-implemented process in a data storage system, wherein the processor-readable storage media is not a carrier wave or propagating signal and the process further comprises: writing data blocks into multiple individual granules in a granule storage area of data storage, wherein the multiple individual granules are recorded in a single shingled magnetic recording band and are each constrained to store data of a subset of logical block addresses; sorting together, in memory, data blocks of at least two of the multiple individual granules to form a compacted granule; and writing the compacted granule to a destination storage area. 15 . The one or more processor-readable storage media of claim 14 wherein the process further comprises: dynamically mapping logical block addresses of the written data blocks to new physical block addresses in the granule storage area of the data storage. 16 . The one or more processor-readable storage media of claim 14 wherein the sorting operation comprises: sorting the data blocks according to a subset of logical block addresses. 17 . The one or more processor-readable storage media of claim 14 wherein the destination storage area is a statically mapped region. 18 . The one or more processor-readable storage media of claim 14 wherein at least two of the multiple individual granules are constrained to store data of overlapping subsets of logical block addresses. 19 . The one or more processor-readable storage media of claim 14 wherein data blocks in the multiple individual granules are not arranged according to a perfect logical block address order. 20 . The one or more processor-readable storage media of claim 14 , wherein the process comprises: sorting the data blocks according to subsets of logical block addresses prior to writing the data blocks to the multiple individual granules.
in relation to throughput · CPC title
Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title
Magnetic disk device · CPC title
Data reordering during input/output, e.g. crossbars, layers of multiplexers, shifting or rotating · CPC title
at area level, e.g. provisioning of virtual or logical volumes · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.