IP Library › Granted Patent US 10,956,327
Granted Patent B2
US 10,956,327 · App. 16/457,972 · Granted Mar 23, 2021

Systems and methods for mitigating dram cache conflicts through hardware assisted redirection of pages (HARP)

Inventors: Adithya Nallan Chakravarthi (Atlanta, GA); Anant Vithal Nori (Bangalore, IN); Jayesh Gaur (Bangalore, IN); Sreenivas Subramoney (Bangalore, IN)
Assignee: Intel Corporation
G06F12/0815G06F12/1009G06F2212/1032G06F2212/657
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,956,327
App. No.
16/457,972
Granted
Mar 23, 2021
Kind
B2
Abstract

Disclosed embodiments relate to systems and methods structured to mitigate cache conflicts through hardware assisted redirection of pages. In one example, a processor includes a translation cache to store a physical to slice mapping in response to a cache conflict mitigation request corresponding to a page; and a cache controller to determine whether the translation cache comprises the physical to slice mapping; determine whether one of a plurality of slices in a translation table comprises the physical to slice mapping if the translation cache does not comprise the physical to slice mapping, the translation table communicably coupled to a non-volatile memory; and if the translation table does not comprise the physical to slice mapping, redirect the cache conflict mitigation request to the non-volatile memory; and allocate a new physical to slice mapping for the page to one of the plurality of slices in the translation table.

Claims (25)

1. A processor comprising:

a translation cache to store a physical to slice mapping in response to a cache conflict mitigation request corresponding to a page; and

a cache controller to:

determine whether the translation cache comprises the physical to slice mapping;

determine whether one of a plurality of slices in a translation table comprises the physical to slice mapping if the translation cache does not comprise the physical to slice mapping, the translation table communicably coupled to a non-volatile memory;

when the translation table does not comprise the physical to slice mapping, redirect the cache conflict mitigation request to the non-volatile memory; and

allocate a new physical to slice mapping for the page to one of the plurality of slices in the translation table.

2. The processor of claim 1 , wherein the cache conflict mitigation request is generated in response to a cache miss.

3. The processor of claim 1 , wherein a first cache comprises the translation cache and a second cache comprises the translation table.

4. The processor of claim 1 , wherein the page comprises a physical address.

5. The processor of claim 1 , wherein the cache controller is further structured to redirect the cache conflict mitigation request a slice in the translation table that is associated with the physical to slice mapping when the translation table comprises the physical to slice mapping.

6. The processor of claim 1 , wherein the cache controller is further structured to fetch the physical to slice mapping from the translation table if the translation table comprises the physical to slice mapping.

7. The processor of claim 5 , wherein the cache controller is further structured to store the physical to slice mapping located in the translation table in the translation cache.

8. The processor of claim 1 , wherein the cache conflict mitigation request is redirected to non-volatile memory when the translation table does not comprise the physical to slice mapping.

9. A method comprising:

determining a translation cache comprises a physical to slice mapping;

determining one of a plurality of slices in a translation table comprises the physical to slice mapping if the translation cache does not comprise the physical to slice mapping;

when the translation table does not comprises the physical to slice mapping, redirecting a cache conflict mitigation request to a non-volatile memory; and

allocating a physical to slice mapping to one of the plurality of slices in the translation table.

10. The method of claim 9 , wherein a first cache comprises the translation cache and a second cache comprises the translation table and wherein the first cache comprises Static Read Only Memory (SRAM) and the second cache comprises Dynamic Random Access Memory (DRAM).

11. The method of claim 9 , wherein the cache conflict mitigation request comprises a request to resolve a cache conflict in response to a cache miss.

12. The method of claim 9 , wherein the allocation of the physical to slice mapping to one of the plurality of slices in the translation table is in response to a translation table miss.

13. The method of claim 12 , further comprising storing the physical to slice mapping in the translation table in the translation cache.

14. The method of claim 9 , wherein the cache conflict mitigation request is redirected to non-volatile memory if the translation table does not comprise the physical to slice mapping.

15. The method of claim 14 , further comprising calling a round-robin algorithm structured to allocate a new physical to slice mapping to a page and to one of the plurality of slices in the translation table.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2020
From: NALLAN CHAKRAVARTHI, ADITHYA; GAUR, JAYESH; SUBRAMONEY, SREENIVAS; NORI, ANANT VITHAL
To: INTEL CORPORATION
Reel/Frame 053093/0304 →
Continuity (1)
Related Publication 20200409849A1 · Dec 31, 2020