AMD Athlon™ Processor x86 Code Optimization

22007E/0 — November 1999

63

36

35

12

11

10

0

Physical Mask

V

Reserved

Symbol

Description

Bits

Physical Mask

24-Bit Mask

35–12

VVariable Range Register Pair Enabled 11 (V = 0 at reset)

Figure 17. MTRRphysMaskn Register Format

Note: A software attempt to write to reserved bits will generate a general protection exception.

Physical

Specifies a 24-bit mask to determine the range of

Mask

the region defined in the register pair.

V

Enables the register pair when set (V = 0 at reset).

Mask values can represent discontinuous ranges (when the mask defines a lower significant bit as zero and a higher significant bit as one). In a discontinuous range, the memory area not mapped by the mask value is set to the default type. Discontinuous ranges should not be used.

The range that is mapped by the variable-range MTRR register pair must meet the following range size and alignment rule:

Each defined memory range must have a size equal to 2n (11 < n < 36).

The base address for the address pair must be aligned to a similar 2n boundary.

An example of a variable MTRR pair is as follows:

To map the address range from 8 Mbytes (0080_0000h) to 16 Mbytes (00FF_FFFFh) as writeback memory, the base register should be loaded with 80_0006h, and the mask should be loaded with FFF8_00800h.

184

Page Attribute Table (PAT)

Page 200
Image 200
AMD x86 manual MTRRphysMaskn Register Format