
Volume 2, Part 1: Addressing and Protection
2:67
the tag (ti bit) is zero for all valid tags. The hash index and tag together must uniquely
identify a translation. The processor must ensure that the indices into the hashed table,
the region’s preferred page size, and the tag specified in an indexed entry can be used
in a reverse hash function to uniquely regenerate the region identifier and virtual
address used to generate the index and tag. This must be possible for all supported
page sizes, implemented virtual addresses and legal values of region identifiers. A hash
function is reversible if using the hash result and all but one input produces the missing
input as the result of the reverse hash function. The easiest hash function and reverse
hash function is a simple XOR of bits. To ensure uniqueness, software must follow these
rules:
1. Software must use only one preferred page size for each unique region identifier
at any given time; otherwise, processor operation is undefined.
2. All tags for translations within a given region must be created with the preferred
page size assigned to the region; otherwise, processor operation is undefined.
3. Software is not allowed to have pages in the VHPT that are smaller than the
preferred page size for the region; otherwise, processor operation is undefined.
Software can specify a page with a page size larger than the preferred page size
in the VHPT, but tag values for the entries representing that page size must be
generated using the preferred page size assigned to that region.
4. To reuse a region identifier with a different preferred page size, software must
first ensure that the VHPT contains no insertable translations for that rid, purge
all translations for that rid from all processors that may have used it, and then
update the region register with the new preferred page size.
4.1.7
VHPT Environment
The processor’s VHPT walker can optionally be configured to search the VHPT for a
translation after a failed instruction or data TLB search. The VHPT walker is enabled for
different types of references under the following conditions:
• Data and non-access references (including IA-32): PTA.ve=1, and
RR[VA{63:61}].ve=1, and PSR.dt=1.
• Instruction fetches (including IA-32): PTA.ve=1, and RR[VA{63:61}].ve=1, and
PSR.dt=1, and PSR.it=1, and PSR.ic=1.
• RSE references: PTA.ve=1, and RR[VA{63:61}].ve=1, and PSR.dt=1, and
PSR.rt=1.
If the walker is not enabled, and an attempt is made to reference the VHPT, an
Alternate Instruction/Data TLB Miss fault is raised. The remainder of this section
assumes that the VHPT is enabled.
Region registers must support all implemented page sizes so software can use IHA,
thash
and
ttag
to manage the VHPT.
thash
and
ttag
are defined to operate on all
page sizes supported by the translation cache, regardless of the VHPT walker’s
supported page sizes. The PTA register must be implemented on processor models that
do not implement a VHPT walker. Software must ensure PTA is initialized and serialized
before issuing
ttag
,
thash
, before enabling the VHPT walker or issuing a reference that
may cause a VHPT walk. The minimum VHPT size is 32KBytes (PTA.size=15), and
Содержание ITANIUM ARCHITECTURE - SOFTWARE DEVELOPERS VOLUME 3 REV 2.3
Страница 1: ......
Страница 11: ...x Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Страница 12: ...1 1 Intel Itanium Architecture Software Developer s Manual Rev 2 3 Part I Application Architecture Guide ...
Страница 13: ...1 2 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Страница 33: ...1 22 Volume 1 Part 1 Introduction to the Intel Itanium Architecture ...
Страница 57: ...1 46 Volume 1 Part 1 Execution Environment ...
Страница 147: ...1 136 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Страница 149: ...1 138 Volume 1 Part 2 About the Optimization Guide ...
Страница 191: ...1 180 Volume 1 Part 2 Predication Control Flow and Instruction Stream ...
Страница 230: ......
Страница 248: ...236 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Страница 249: ...2 1 Intel Itanium Architecture Software Developer s Manual Rev 2 3 Part I System Architecture Guide ...
Страница 250: ...2 2 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Страница 264: ...2 16 Volume 2 Part 1 Intel Itanium System Environment ...
Страница 380: ...2 132 Volume 2 Part 1 Interruptions ...
Страница 398: ...2 150 Volume 2 Part 1 Register Stack Engine ...
Страница 486: ...2 238 Volume 2 Part 1 IA 32 Interruption Vector Descriptions ...
Страница 749: ...2 501 Intel Itanium Architecture Software Developer s Manual Rev 2 3 Part II System Programmer s Guide ...
Страница 750: ...2 502 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Страница 754: ...2 506 Volume 2 Part 2 About the System Programmer s Guide ...
Страница 796: ...2 548 Volume 2 Part 2 Interruptions and Serialization ...
Страница 808: ...2 560 Volume 2 Part 2 Context Management ...
Страница 842: ...2 594 Volume 2 Part 2 Floating point System Software ...
Страница 850: ...2 602 Volume 2 Part 2 IA 32 Application Support ...
Страница 862: ...2 614 Volume 2 Part 2 External Interrupt Architecture ...
Страница 870: ...2 622 Volume 2 Part 2 Performance Monitoring Support ...
Страница 891: ......
Страница 941: ...3 42 Volume 3 Instruction Reference cmp illegal_operation_fault PR p1 0 PR p2 0 Interruptions Illegal Operation fault ...
Страница 1099: ...3 200 Volume 3 Instruction Reference padd Interruptions Illegal Operation fault ...
Страница 1191: ...3 292 Volume 3 Pseudo Code Functions Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Страница 1295: ...3 396 Volume 3 Resource and Dependency Semantics ...
Страница 1296: ......
Страница 1302: ...402 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Страница 1494: ...4 192 Volume 4 Base IA 32 Instruction Reference FWAIT Wait See entry for WAIT ...
Страница 1564: ...4 262 Volume 4 Base IA 32 Instruction Reference LES Load Full Pointer See entry for LDS LES LFS LGS LSS ...
Страница 1565: ...Volume 4 Base IA 32 Instruction Reference 4 263 LFS Load Full Pointer See entry for LDS LES LFS LGS LSS ...
Страница 1568: ...4 266 Volume 4 Base IA 32 Instruction Reference LGS Load Full Pointer See entry for LDS LES LFS LGS LSS ...
Страница 1583: ...Volume 4 Base IA 32 Instruction Reference 4 281 LSS Load Full Pointer See entry for LDS LES LFS LGS LSS ...
Страница 1647: ...Volume 4 Base IA 32 Instruction Reference 4 345 ROL ROR Rotate See entry for RCL RCR ROL ROR ...
Страница 1663: ...Volume 4 Base IA 32 Instruction Reference 4 361 SHL SHR Shift Instructions See entry for SAL SAR SHL SHR ...
Страница 1668: ...4 366 Volume 4 Base IA 32 Instruction Reference SIDT Store Interrupt Descriptor Table Register See entry for SGDT SIDT ...
Страница 1884: ...4 582 Volume 4 IA 32 SSE Instruction Reference ...
Страница 1885: ...Index Intel Itanium Architecture Software Developer s Manual Rev 2 3 Index ...
Страница 1886: ...Index Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Страница 1898: ...INDEX Index 12 Index for Volumes 1 2 3 and 4 ...