Merged TLB Structure For Multiple Sequential Address Translations
First Claim
Patent Images
1. A circuit comprising:
- a cache configured to store translations between address domains, the cache addressable as a first logical portion and a second logical portion, the first logical portion configured to store translations between a first address domain and a second address domain, the second logical portion configured to store translations between the second address domain and a third address domain;
a processor configured to match an address request against the cache and output a corresponding address result; and
a register configured to define a boundary between the first and second logical portions.
6 Assignments
0 Petitions
Accused Products
Abstract
A computer system that supports virtualization may maintain multiple address spaces. Each guest operating system employs guest virtual addresses (GVAs), which are translated to guest physical addresses (GPAs). A hypervisor, which manages one or more guest operating systems, translates GPAs to root physical addresses (RPAs). A merged translation lookaside buffer (MTLB) caches translations between the multiple addressing domains, enabling faster address translation and memory access. The MTLB can be logically addressable as multiple different caches, and can be reconfigured to allot different spaces to each logical cache.
39 Citations
45 Claims
-
1. A circuit comprising:
-
a cache configured to store translations between address domains, the cache addressable as a first logical portion and a second logical portion, the first logical portion configured to store translations between a first address domain and a second address domain, the second logical portion configured to store translations between the second address domain and a third address domain; a processor configured to match an address request against the cache and output a corresponding address result; and a register configured to define a boundary between the first and second logical portions. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A method of caching address translations in a memory architecture, comprising:
-
storing translations between a first address domain and a second address domain to a first logical portion of a cache; storing translations between the second addressing domain and a third address domain to a second logical portion of the cache; defining a boundary between the first and second logical portions via a register value; and matching an address request against the cache and outputting a corresponding address result. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44)
-
-
45. A circuit comprising:
-
a translation lookaside buffer (TLB) configured to store translations between address domains, the TLB addressable as a guest TLB and a root TLB, the guest TLB configured to store translations between a guest virtual address (GVA) domain and a guest physical address (GPA) domain, the root TLB configured to store translations between the GPA domain and a root physical address (RPA) domain, each entry in the cache including a bit indicating whether the entry is a member of the guest TLB or the root TLB; a processor configured to match an address request against the cache and output a corresponding address result; and a register configured to define a boundary between the guest TLB and the root TLB.
-
Specification