Adaptive host memory buffer (hmb) caching using unassisted hinting

US2016246726A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016246726-A1
Application numberUS-201615050364-A
CountryUS
Kind codeA1
Filing dateFeb 22, 2016
Priority dateAug 20, 2014
Publication dateAug 25, 2016
Grant date

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.

A storage device includes a nonvolatile memory. The storage device further includes a hint derivation module for automatically deriving, from host accesses to the storage device, hints regarding expected future host accesses to a table that maps logical memory addresses to physical memory addresses in the nonvolatile memory. The storage device further includes an adaptive host memory buffer (HMB) caching module for using the hints to identify portions of the table to cache in the HMB and for caching the identified portions in the HMB, which is external to the storage device and accessible by the storage device via a bus.

First claim

Opening claim text (preview).

What is claimed is: 1 . A storage device comprising: nonvolatile memory; and a hint derivation module for automatically deriving, from host accesses to the storage device, hints regarding expected future host accesses to a table that maps logical memory addresses to physical memory addresses in the nonvolatile memory; and an adaptive host memory buffer (HMB) caching module for using the hints to identify portions of the table to cache in the HMB and for caching the identified portions in the HMB, which is external to the storage device and accessible by the storage device via a bus. 2 . The storage device of claim 1 wherein the nonvolatile memory comprises flash memory. 3 . The storage device of claim 2 wherein the flash memory comprises NAND flash memory or NOR flash memory having a two-dimensional or three-dimensional configuration. 4 . The storage device of claim 1 wherein the nonvolatile memory includes solid state memory and at least one disk storage device. 5 . The storage device of claim 1 wherein the hint derivation module is configured to identify a file affected by the host accesses to the storage device and the adaptive HMB caching module is configured to cache entries in the table associated with the file in the HMB. 6 . The storage device of claim 1 wherein the table comprises a flash translation layer (FTL) table and wherein the adaptive HMB caching module is configured to maintain a primary FTL cache in static random access memory associated with the storage device and a secondary FTL cache in the HMB. 7 . The storage device of claim 6 wherein the adaptive HMB caching module is configured to store entries from the FTL table that are expected to be accessed next by a read command in the primary FTL cache and to store FTL table entries expected to be accessed later in the secondary FTL cache. 8 . The storage device of claim 7 wherein the hint derivation module is configured to identify one of the host system accesses to the nonvolatile memory as a read command for a video file and wherein the adaptive HMB caching module is configured to cache FTL table entries associated with a next few frames of the video file in the primary FTL cache and to cache FTL table entries associated with a remainder of the video file in the secondary FTL cache. 9 . The storage device of claim 1 wherein the hint derivation module is configured to derive the hints in-line or asynchronously with the host accesses to the storage device. 10 . A method comprising: in a storage device including nonvolatile memory: automatically deriving, from host accesses to the storage device, hints regarding expected future host accesses to a table that maps logical memory addresses to physical memory addresses in the nonvolatile memory; and using the hints to identify portions of the table to cache in the HMB; and caching the identified portions in the HMB, which is external to and accessible by the storage device via a bus. 11 . The method of claim 10 wherein the nonvolatile memory comprises flash memory. 12 . The method of claim 11 wherein the flash memory comprises NAND flash memory or NOR flash memory having a two-dimensional or three-dimensional configuration. 13 . The method of claim 10 wherein the nonvolatile memory includes solid state memory and at least one disk storage device. 14 . The method of claim 10 wherein automatically deriving the hints includes identifying a file affected by the host accesses to the storage device and wherein using the hints includes caching entries in the table associated with the file in the HMB. 15 . The method of claim 10 wherein the table comprises a flash translation layer (FTL) table and wherein the method further comprises maintaining a primary FTL cache in static random access memory associated with the storage device and a secondary FTL cache in the HMB. 16 . The method of claim 15 comprising storing entries from the FTL table that are expected to be accessed next by a read command in the primary FTL cache and storing FTL table entries expected to be accessed later in the secondary FTL cache. 17 . The method of claim 16 wherein automatically deriving the hints includes identifying one of the accesses to the nonvolatile memory as a read command for a video file and wherein using the hints comprises FTL table entries associated with a next few frames of the video file in the primary FTL cache and to cache FTL table entries associated with a remainder of the video file in the secondary FTL cache. 18 . The method of claim 10 wherein automatically deriving the hints includes deriving the hints in-line or asynchronously with the accesses to the nonvolatile memory. 19 . A nontransitory computer readable media having stored thereon executable instructions that when executed by the processor of a computer control the computer to perform steps comprising: in a storage device including nonvolatile memory: automatically deriving, from host accesses to the storage device, hints regarding expected future host accesses to a table that maps logical memory addresses to physical memory addresses in the nonvolatile memory; using the hints to identify portions of the table to cache in the HMB; and caching the identified portions in the HMB, which is external to and accessible to the storage device via a bus.

Assignees

Inventors

Classifications

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 US2016246726A1 cover?
A storage device includes a nonvolatile memory. The storage device further includes a hint derivation module for automatically deriving, from host accesses to the storage device, hints regarding expected future host accesses to a table that maps logical memory addresses to physical memory addresses in the nonvolatile memory. The storage device further includes an adaptive host memory buffer (HM…
Who is the assignee on this patent?
Sandisk Technologies Inc
What technology area does this patent fall under?
Primary CPC classification G06F12/0862. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Aug 25 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). 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).