Memory device with data scrubbing capability and methods
US-2024393961-A1 · Nov 28, 2024 · US
US9389805B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9389805-B2 |
| Application number | US-201214237331-A |
| Country | US |
| Kind code | B2 |
| Filing date | Aug 8, 2012 |
| Priority date | Aug 9, 2011 |
| Publication date | Jul 12, 2016 |
| Grant date | Jul 12, 2016 |
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.
An I/O device is coupled to a computing host. In some embodiments, the device is enabled to utilize memory of the computing host not directly coupled to the device to store information such as a shadow copy of a map of the device and/or state of the device. Storage of the shadow copy of the map enables one or both of the device and the computing host to utilize the shadow copy of the map, such as to decrease read latency. Storage of the state enables the device to save volatile state that would otherwise be lost when the device enters a low-power state. In some embodiments, the device implements one or more non-standard modifiers of standard commands. The non-standard modifiers modify the execution of the standard commands, providing features not present in a host protocol having only the standard commands.
Opening claim text (preview).
What is claimed is: 1. A method comprising: at a storage device and from a computing host, receiving a command comprising a specification, the specification comprising at least one of a plurality of non-standard specifications, the non-standard specifications comprising one or more non-standard command modifiers; and in response to the specification comprising a particular one of the non-standard command modifiers, executing the command according to the particular non-standard command modifier, and storing an indication of the particular non-standard command modifier in an entry of a map associated with a logical block address (LBA) of the command, wherein at least one of the non-standard specifications identifies a particular one of a plurality of data destinations, the data destinations comprising a plurality of data bands, wherein the data bands are dynamically changeable in number, arrangement, size and type and correspond to one or more of a database journal data band, a hot data band, and a cold data band, wherein the database journal data band is reserved for database journal type data, wherein in response to the computing host writing a relatively long sequential stream, the hot data band grows in size, and wherein a shadow copy of the map is stored in a memory of the computing host. 2. The method according to claim 1 , wherein the database journal data band is reserved for database journal type data. 3. The method according to claim 2 , wherein oldest data in the database journal data band is optionally and/or selectively automatically deleted. 4. The method according to claim 1 , wherein the cold data band is used at least for data from a recycler. 5. The method of claim 1 , further comprising: associating the LBA of the command with one of a plurality of entries of the map, each of the entries of the map including a location in a non-volatile memory (NVM) of the storage device and an indication whether data associated with the LBA is present in the NVM. 6. The method of claim 1 , wherein the storage device is coupled to an external memory, the external memory being utilized to: store a map of the storage device; store one or more levels of a multi-level map of the storage device; buffer write data sent to the storage device; and store internal state of the storage device. 7. The method of claim 1 , wherein the shadow copy of the map comprises at least one of all entries of the map, some entries of the map, entries that include a subset of corresponding entries of the map, entries corresponding to entries of a second level of a two-level map, entries corresponding to entries of a lowest level of a multi-level map, a page structure corresponding to a page structure of the map, and a structure that is logically consistent with the map. 8. A method comprising: at a storage device and from a computing host, receiving a command comprising a specification, the specification comprising at least one of a plurality of non-standard specifications, the non-standard specifications comprising one or more non-standard command modifiers; in response to the specification comprising a particular one of the non-standard command modifiers, executing the command according to the particular non-standard command modifier, the executing of the command according to the particular non-standard command modifier comprising storing an indication of the non-standard command modifier with data of the command in an entry of a map associated with a logical block address (LBA) of the command; and subsequent to the executing the command and without having received a trim command, accessing the indication to determine to trim, rather than to recycle, all or any portions of the data, wherein at least one of the non-standard specifications identifies a particular one of a plurality of data destinations, the data destinations comprising a plurality of data bands, wherein the data bands are dynamically changeable in number, arrangement, size and type and correspond to one or more of a database journal data band, a hot data band, and a cold data band, wherein the hot data band is used at least for data originating from the computing host, wherein in response to the computing host writing a relatively long sequential stream, the hot data band grows in size, and wherein a shadow copy of the map is stored in a memory of the computing host. 9. The method according to claim 8 , wherein receiving a mode-setting command comprising a mode-setting specification to enable a specific non-standard modifier results in a standard command received after the mode-setting command being optionally and/or selectively processed according to the specific non-standard modifier. 10. The method according to claim 8 , wherein at least one of the non-standard specifications specifies one or more of a type of data; a data access type; data sequencing; data relationship; and a command relationship. 11. The method according to claim 8 , wherein the command comprises location information obtained at least in part by the computing host from a memory device of an I/O card coupled to the computing host. 12. A storage device comprising: an external interface configured to receive a command from a computing host, the command comprising a specification, the specification comprising at least one of a plurality of non-standard specifications, the non-standard specifications comprising one or more non-standard command modifiers; and a storage controller configured to execute, in response to the specification comprising a particular one of the non-standard command modifiers, the command according to the particular non-standard command modifier, and to store an indication of the particular non-standard command modifier in an entry of a map associated with a logical block address (LBA) of the command, wherein at least one of the non-standard specifications identifies a particular one of a plurality of data destinations, the data destinations comprising a plurality of data bands, wherein the data bands are dynamically changeable in number, arrangement, size and type and correspond to one or more of a database journal data band, a hot data band, and a cold data band, wherein the hot data band is used at least for data originating from the computing host, wherein in response to the computing host writing a relatively long sequential stream, the hot data band grows in size, and wherein a shadow copy of the map is stored in a memory of the computing host. 13. The storage device of claim 12 , wherein the database journal data band is reserved for database journal type data. 14. The storage device of claim 13 , wherein oldest data in the database journal data band is optionally and/or selectively automatically deleted. 15. The storage device of claim 12 , wherein the cold data band is used at least for data from a recycler. 16. The storage device of claim 12 , wherein the storage controller is further configured to associate the LBA of the command with one of a plurality of entries of the map, each of the entries of the map including a location in a non-volatile memory (NVM) of the storage device and an indication whether data associated with the LBA is present in the NVM. 17. The storage device of claim 12 , wherein the storage device is coupled to an external memory, the external memory being utilized to: store a map of the storage device; store one or more levels of a multi-level map of the storage device; buffer write data sent to the storage device; and store internal state of the storage device.
Accessing, addressing or allocating within memory systems or architectures (digital input from, or digital output to record carriers, e.g. to disk storage units, G06F3/06) · CPC title
by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device · CPC title
in relation to response time · CPC title
Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title
using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.