Address translation cache that supports simultaneous invalidation of common context entries
First Claim
1. A translation-lookaside buffer (TLB), comprising:
- a plurality of entries, wherein each entry of the plurality of entries is configured to hold an address translation and a valid bit vector, wherein each bit of the valid bit vector indicates, for a respective address translation context, the address translation is valid if set and invalid if clear; and
an invalidation bit vector having bits corresponding to the bits of the valid bit vector of the plurality of entries, wherein a set bit of the invalidation bit vector indicates to simultaneously clear the corresponding bit of the valid bit vector of each entry of the plurality of entries.
1 Assignment
0 Petitions
Accused Products
Abstract
A processor includes a mapping module that maps architectural virtual processor identifiers to non-architectural global identifiers and maps architectural process context identifiers to non-architectural local identifiers. The processor also includes a translation-lookaside buffer (TLB) having a plurality of address translations. For each address translation of the plurality of address translations: when the address translation is a global address translation, the address translation is tagged with a representation of one of the non-architectural global identifiers to which the mapping module has mapped one of the virtual processor identifiers; and when the address translation is a local address translation, the address translation is tagged with a representation of one of the non-architectural local identifiers to which the mapping module has mapped one of the process context identifiers.
-
Citations
20 Claims
-
1. A translation-lookaside buffer (TLB), comprising:
-
a plurality of entries, wherein each entry of the plurality of entries is configured to hold an address translation and a valid bit vector, wherein each bit of the valid bit vector indicates, for a respective address translation context, the address translation is valid if set and invalid if clear; and an invalidation bit vector having bits corresponding to the bits of the valid bit vector of the plurality of entries, wherein a set bit of the invalidation bit vector indicates to simultaneously clear the corresponding bit of the valid bit vector of each entry of the plurality of entries. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method for operating a translation-lookaside buffer (TLB) comprising a plurality of entries, wherein each entry of the plurality of entries is configured to hold an address translation and a valid bit vector, wherein each bit of the valid bit vector indicates, for a respective address translation context, the address translation is valid if set and invalid if clear, the method comprising:
-
receiving an invalidation bit vector having bits corresponding to the bits of the valid bit vector of the plurality of entries; and simultaneously clearing the bit of the valid bit vector of each entry of the plurality of entries corresponding to a set bit of the invalidation bit vector. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A processor, comprising:
-
translation-lookaside buffer (TLB), comprising; a plurality of entries, wherein each entry of the plurality of entries is configured to hold an address translation and a valid bit vector, wherein each bit of the valid bit vector indicates, for a respective address translation context, the address translation is valid if set and invalid if clear; and an invalidation bit vector having bits corresponding to the bits of the valid bit vector of the plurality of entries, wherein a set bit of the invalidation bit vector indicates to simultaneously clear the corresponding bit of the valid bit vector of each entry of the plurality of entries; and a mapping module, configured to generate the invalidation bit vector. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification