Method and apparatus to use DRAM as a cache for slow byte-addressible memory for efficient cloud applications
US-12174739-B2 · Dec 24, 2024 · US
US9317429B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9317429-B2 |
| Application number | US-201113994729-A |
| Country | US |
| Kind code | B2 |
| Filing date | Sep 30, 2011 |
| Priority date | Sep 30, 2011 |
| Publication date | Apr 19, 2016 |
| Grant date | Apr 19, 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.
A system and method are described for integrating a memory and storage hierarchy including a non-volatile memory tier within a computer system. In one embodiment, PCMS memory devices are used as one tier in the hierarchy, sometimes referred to as “far memory.” Higher performance memory devices such as DRAM placed in front of the far memory and are used to mask some of the performance limitations of the far memory. These higher performance memory devices are referred to as “near memory.”
Opening claim text (preview).
We claim: 1. A computer system comprising: a) a processor comprising a plurality of cores to execute instructions and process data and one or more processor caches to cache instructions and data according to a first cache management policy; b) a first memory channel comprising a first set of address and data lines coupled to the processor; c) a second memory channel comprising a second set of address and data lines coupled to the processor; d) a first first-level memory and a second first-level memory each comprising a first set of characteristics associated therewith, the first set of characteristics including a first read access speed and a first write access speed, the first first-level memory coupled to the first memory channel and the second first-level memory coupled to the second memory channel; and e) a first second-level memory communicatively coupled to the first memory channel, and a second second-level memory communicatively coupled to the second memory channel, the first and second second-level memories including a second set of characteristics associated therewith, the second set of characteristics including: i) second read and write access speeds wherein at least one of the second read and write access speeds is relatively lower than either the first read access speed or first write access speed, respectively, ii) non-volatility such that the first and second second-level memories are to maintain content if power to the first and second-level memories is removed, wherein at least a portion of the first first-level memory is configured as a first cache for instructions and/or data stored in the first second-level memory and at least a portion of the second first-level memory is configured as a second cache for instructions and/or data stored in the second second-level memory; f) first-level memory controller circuitry to implement said at least a portion of the first first-level memory and said at least a portion of the second first-level memory as the first and second caches; g) second-level memory interface circuitry to generate memory channel addresses to access the first second-level memory and the second second-level memory. 2. The system as in claim 1 wherein one of the first set of characteristics comprises a first power consumption level and the second set of characteristics comprises a second power consumption level which is relatively lower than the first power consumption level. 3. The system as in claim 1 wherein one of the first set of characteristics comprises a first density and the second set of characteristics comprises a second density which is relatively higher than the first density. 4. The system as in claim 1 wherein one of the second set of characteristics comprise the first and second second-level memories being directly writable so as to not require erasing of existing data prior to writing. 5. The system as in claim 1 wherein the first and second first-level memories comprise dynamic random access memories (DRAMs) and wherein the one or more processor caches comprise static random access memories (SRAMs). 6. The system as in claim 1 wherein the first and second second-level memories comprise any of: phase change memories (PCMs); resistive memories; ferroelectric memories; ferromagnetic memories; dielectric memories. 7. The system as in claim 1 wherein the first and second second-level memories comprise vertically stacked storage cells. 8. The system as in claim 1 further comprising: a mass storage device for persistently storing instructions and data, the mass storage device communicatively coupled to the first and second first-level memories and the first and second second-level memories through an interface. 9. The system as in claim 1 wherein the first and second first-level memories are logically subdivided into a first portion and a second portion, the first portion being allocated as system memory and the second portion being allocated as a cache for instructions and data stored in the first and second second-level memories, respectively, according to a second cache management policy. 10. The system as in claim 1 wherein the first write access speed is relatively higher than the second write access speed but the first read access speed approximates the second read access speed. 11. The system as in claim 10 wherein the first write access speed is at least an order of magnitude higher than the second write access speed. 12. The system as in claim 1 wherein the first set of characteristics includes a first read access latency and a first write access latency and the second set of characteristics includes a second read access latency and a second write access latency at least one of which is relatively higher than either the first read access latency or first write access latency, respectively. 13. The system as in claim 1 wherein the first and second second-level memories are cheaper to manufacture per unit size than the first and second first-level memories. 14. The system as in claim 9 wherein the first cache management policy operates independently from the second cache management policy. 15. The system as in claim 1 wherein the first and second memory channels comprise double data rate (DDR) memory channels. 16. The system as in claim 15 wherein the first and second first-level memories comprise first and second dual in-line memory modules (DIMMs) and the first and second second-level memories comprise third and fourth DIMMs, the first and third DIMMs coupled to individual slots on the first memory channel and the second and fourth DIMMs coupled to individual slots on the second memory channel. 17. A computer system comprising: a) a processor comprising a plurality of cores to execute instructions and process data and one or more processor caches to cache instructions and data according to a first cache management policy; b) a first memory channel comprising a set of address and data lines coupled to the processor; c) a first level memory comprising a first set of characteristics associated therewith, the first set of characteristics including a first read access speed and a first write access speed, the first level memory communicatively coupled to the first memory channel; and d) a second level memory communicatively coupled to the first memory channel, the second level memory comprising a second set of characteristics associated therewith, the second set of characteristics including: i) second read and write access speeds wherein at least one of the second read and write access speeds is relatively lower than either the first read access speed or first write access speed, respectively, ii) non-volatility such that the second level memory is to maintain its content if power to the second level memory is removed, iii) random access and byte addressability such that instructions and/or data stored therein may be randomly accessed at a granularity equivalent to that used by a memory subsystem of the system; e) first-level memory controller circuitry to implement at least a portion of the first first-level memory as a cache for the second level memory; f) second-level memory interface circuitry to communicate with second-level memory controller circuitry. 18. The system as in claim 17 wherein the second-level memory controller circuitry is located on a same card with the first-level memory and the second-level memory. 19. The system as in claim 18 wherein the card is one of: a DIMM card; a riser card. 20. The system as in cl
for peripheral storage systems, e.g. disk cache · CPC title
with two or more cache hierarchy levels (with multilevel cache hierarchies G06F12/0811) · CPC title
with multilevel cache hierarchies · CPC title
Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory · CPC title
Partitioned cache, e.g. separate instruction and operand caches · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.