Mass storage cache in non volatile level of multi-level system memory

US2018095884A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2018095884-A1
Application numberUS-201615282478-A
CountryUS
Kind codeA1
Filing dateSep 30, 2016
Priority dateSep 30, 2016
Publication dateApr 5, 2018
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.

An apparatus is described. The apparatus includes a memory controller comprising logic circuitry to implement a mass storage cache in a non volatile region of a system memory. The non volatile region of the system memory is to support execution of program code directly out of the non volatile region system memory.

First claim

Opening claim text (preview).

1 . An apparatus, comprising: a memory controller comprising logic circuitry to implement a mass storage cache in a non volatile region of a system memory, the non volatile region of the system memory to support execution of program code directly out of the non volatile region system memory. 2 . The apparatus of claim 1 wherein the logic circuitry comprises address indirection table circuitry comprised of embedded memory circuitry within the memory controller. 3 . The apparatus of claim 1 wherein the memory controller is to service a read call to mass storage with a buffer desired by the read call if the buffer is resident in the mass storage cache. 4 . The apparatus of claim 1 wherein the logic circuitry is to cause a null response to a request to free system memory space in the mass storage cache. 5 . The apparatus of claim 1 wherein the logic circuitry is to allocate a buffer in the non-volatile region of the system memory if the buffer is expected to be a target of a write call. 6 . The apparatus of claim 1 wherein the memory controller is to treat a buffer that is resident in the mass storage cache as being within system memory in response to an attempt to write to the buffer's physical address if no previous attempt has been made to write to the buffer's data while the buffer was within the mass storage cache. 7 . The apparatus of claim 1 wherein the memory controller is a far memory controller. 8 . A machine readable storage medium containing program code that when processed by a computing system causes the system to perform a method, the method comprising: performing a write call on a buffer within a system memory having a non volatile region and a mass storage cache within the non volatile region, the performing of the write call comprising: executing a cache line flush instruction to direct any cache lines of the buffer within a processor level cache to a memory controller; executing a fence instruction to indicate that program execution shall not continue until the cache lines have been written to system memory; executing a commit instruction to commit the buffer's contents to the mass storage cache. 9 . The machine readable storage medium of claim 8 wherein the method further comprises executing respective cache line flush, fence and commit instructions to commit meta data of the mass storage cache to the mass storage cache. 10 . The machine readable storage medium of claim 8 wherein the method further comprises marking the buffer as read only as part of its commitment to the mass storage cache. 11 . The machine readable storage medium of claim 8 wherein the method further comprises updating meta data of the mass storage cache to reflect the buffer's presence in the mass storage cache. 12 . The machine readable storage medium of claim 8 wherein the method further comprises marking the buffer as read only in the mass storage cache and handling a fault in response to an attempt to write to the buffer as follows: if the buffer's content is not dirty, changing a status of the buffer's content from being in the mass storage cache to being in system memory; if the buffer's content is dirty, request space in system memory for the buffer's content, if the request is successful copy the buffer's content into the space in system memory, if the request is not successful then cleaning the buffer's content. 13 . The machine readable storage medium of claim 8 wherein the method further comprises writing a second buffer in the system memory that is a target of the write call into mass storage because an attempt to allocate space for the buffer in the non volatile region failed. 14 . The machine readable storage medium of claim 8 further comprising allocating a buffer that is expected to be a target of a write call into the non volatile region. 15 . The machine readable medium of claim 8 further comprising changing a status of a buffer from being read only in the mass storage cache to being writeable in system memory. 16 . A computing system, comprising: one or more processing cores; a networking interface; a multi-level system memory; a memory controller comprising logic circuitry to implement a mass storage cache in a non volatile region of the multi-level system memory, the multi-level system memory to support execution of program code by way of cache line granularity accesses to the multi-level system memory. 17 . The computing system of claim 16 wherein the logic circuitry comprises address indirection table circuitry comprised of embedded memory circuitry within the memory controller. 18 . The computing system of claim 16 wherein the memory controller is to service a read call to mass storage with a buffer desired by the read call if the buffer is resident in the mass storage cache. 19 . The computing system of claim 16 wherein the logic circuitry is to cause a null response to a desire to free memory space in the mass storage cache. 20 . The computing system of claim 16 wherein the logic circuitry is to allocate a buffer in the non-volatile region of the multi-level system memory if the buffer is expected to be a target of a write call. 21 . The computing system of claim 16 wherein the memory controller is to treat a buffer that is resident in the mass storage cache as being within system memory in response to an attempt to write to the buffer's physical address if no previous attempt has been made to write to the buffer's data while the buffer was within the mass storage cache. 22 . The computing system of claim 16 wherein the memory controller is a far memory controller.

Assignees

Inventors

Classifications

  • Mapping of cache memory to specific storage devices or parts thereof · CPC title

  • Hybrid storage device · CPC title

  • with main memory updating (G06F12/0806 takes precedence) · CPC title

  • Non-uniform cache access [NUCA] architecture · CPC title

  • In storage device · 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 US2018095884A1 cover?
An apparatus is described. The apparatus includes a memory controller comprising logic circuitry to implement a mass storage cache in a non volatile region of a system memory. The non volatile region of the system memory is to support execution of program code directly out of the non volatile region system memory.
Who is the assignee on this patent?
Intel Corp
What technology area does this patent fall under?
Primary CPC classification G06F12/0873. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Apr 05 2018 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 7 related publications on this page (citations in our corpus or others sharing the same primary CPC).