Volume 2, Part 1: Addressing and Protection
2:53
The VHPT walker's inserts into the TC follow purge-before-insert rules similar to those
for software inserts. VHPT walker inserts into the DTC behave similar to
itc.d
; VHPT
walker inserts into the ITC behave similar to
itc.i
. If an instruction reference results in
a VHPT walk that misses in the data TLB, the DTC insert for the translation for the VHPT
acts similar to an
itc.d
.
As described in
Section 4.1, “Virtual Addressing” on page 2:45
, processors may
optionally use VRN bits when searching for a matching translation for a memory
reference (references other than inserts and purges). In processors which do use VRN
bits for such searches, VHPT inserts optionally may also use VRN bits in searching for
overlapping entries. Thus, if a VHPT insertion overlaps a translation in the TC, but the
VRN of the address being inserted does not match the VRN of the existing TC
translation, the purge of the existing TC entry is optional. If a VHPT insertion overlaps a
translation in a TR, but the VRN of the address being inserted does not match the VRN
of the TR translation, the VHPT insertion is allowed, and a machine check is optional. In
processors which do not use VRN bits when searching for a matching translation for a
memory reference, the behavior of VHPT inserts is identical to that of software inserts
(see
Table 4-1, “Purge Behavior of TLB Inserts and Purges” on page 2:52
If a VHPT insert overlaps with an existing TR entry and the VRN of the insertion
matches the VRN of the existing TR entry (for example, if the translation being inserted
is for a large page which overlaps with a small page translation in the TR), the VHPT
insertion can be done, but a machine check must be raised. Software must not create
overlapping translations in the VHPT that are larger than a currently existing TR
translation. The behavior of VHPT inserts is summarized in
4.1.1.5
Translation Insertion Format
shows the register interface to insert entries into the TLB. TLB insertions are
performed by issuing the Insert Translation Cache (
itc.d
,
itc.i
) and Insert
Translation Registers (
itr.d
,
itr.i
) instructions. The first 64-bit field containing the
physical address, attributes and permissions is supplied by a general purpose register
operand. Additional protection key and page size information is supplied by the
Interruption TLB Insertion Register (ITIR). The Interruption Faulting Address register
(IFA) specifies the virtual address for instruction and data TLB inserts. ITIR and IFA are
defined in
“Control Registers” on page 2:29
. The upper 3 bits of IFA (VRN bits{63:61})
select a virtual region register that supplies the RID field for the TLB entry. The RID of
the selected region is tagged to the translation as it is inserted into the TLB.
Reserved fields or encodings are checked as follows:
Table 4-2.
Purge behavior of VHPT Inserts
Case
VRN bits used for TLB searching on VHPT insert
VRN bits not used for TLB
searching on VHPT insert
VRN Match
No VRN Match
Insert? Purge?
Machine
Check?
Insert?
Purge?
Machine
Check?
Insert? Purge?
Machine
Check?
[ID]VHPT overlaps [ID]TC
Must
Must
Must not
Must
May
Must not
Must
Must
Must not
[ID]VHPT overlaps [DI]TC
Must
Must not
Must
May
Must not
Must
May
Must not
[ID]VHPT overlaps [ID]TR
May
Must
May
Must not
May
May
Must
not
Must
[ID]VHPT overlaps [DI]TR
Must
Must
not
Must not
Must
Must not
Must not
Must
Must
not
Must not
Содержание 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 ...