Dynamic look-aside table for multiple size pages
First Claim
1. An address translation mechanism for a virtual storage system in a data processing system which supports a plurality of page sizes, comprising:
- means for storing virtual addresses to be translated to real addresses, each of said virtual addresses being composed of segment index bits, page index bits and displacement index bits, each of said virtual addresses having a plurality of subsets of bits;
a single dynamic look-aside table for simultaneously storing, for all said plurality of page sizes, translations of said virtual addresses to real addresses, said plurality of page sizes having indices associated therewith;
steering table means for storing said indices of said plurality of page sizes of translations and selecting a correct index for a virtual address to be translated when said steering table means is addressed by segment index bits of said virtual address to be translated; and
means responsive to the correct index selected for selecting out of said plurality of subsets of bits of said virtual address to be translated one subset which corresponds to a page size of said virtual address to be translated for addressing said dynamic look-aside table.
0 Assignments
0 Petitions
Accused Products
Abstract
A dynamic address translation (DAT) mechanism which supports virtual memory pages of different sizes with minimal hardware and design impact. The dynamic look-aside table (DLAT) is modified to allow the addition of a second page size to system architecture. In one approach, the DLAT is divided into two sections, one for small (4KB) pages and one for large (1MB) pages. A steering table indicates whether the segment last contained 4KB pages or a 1MB page. As each segment is translated by the DAT mechanism, the page size (1MB or 4KB) contained in the segment is known, and this information is used to select the address bus used for indexing the DLAT. In an alternative approach, the DLAT is not divided into sections; rather, it can interchangeably hold/test/select either of the two different formats in any entry. The steering table dynamically changes the way in which the DLAT is addressed and selects the bits of the entry to be used in the translation.
-
Citations
5 Claims
-
1. An address translation mechanism for a virtual storage system in a data processing system which supports a plurality of page sizes, comprising:
-
means for storing virtual addresses to be translated to real addresses, each of said virtual addresses being composed of segment index bits, page index bits and displacement index bits, each of said virtual addresses having a plurality of subsets of bits; a single dynamic look-aside table for simultaneously storing, for all said plurality of page sizes, translations of said virtual addresses to real addresses, said plurality of page sizes having indices associated therewith; steering table means for storing said indices of said plurality of page sizes of translations and selecting a correct index for a virtual address to be translated when said steering table means is addressed by segment index bits of said virtual address to be translated; and means responsive to the correct index selected for selecting out of said plurality of subsets of bits of said virtual address to be translated one subset which corresponds to a page size of said virtual address to be translated for addressing said dynamic look-aside table. - View Dependent Claims (2, 3, 4, 5)
-
Specification