Intel architecture ia-32 Manuel D’Utilisation
![Intel](https://files.manualsbrain.com/attachments/5a71b1e7f60391972dadeef20435931cbf4621a5/common/fit/150/50/86c99b5f14aeb2708e9a9e1b5305af4ccf882c1af0155dad25413c2ed84e/brand_logo.png)
Vol. 3A 10-29
MEMORY CACHE CONTROL
For the P6 family processors, the prefix for the fixed range MTRRs is MTRRfix.
10.11.2.3
Variable Range MTRRs
The Pentium 4, Intel Xeon, and P6 family processors permit software to specify the memory
type for eight variable-size address ranges, using a pair of MTRRs for each range. The first entry
in each pair (IA32_MTRR_PHYSBASEn) defines the base address and memory type for the
range; the second entry (IA32_MTRR_PHYSMASKn) contains a mask used to determine the
address range. The “n” suffix indicates register pairs 0 through 7.
type for eight variable-size address ranges, using a pair of MTRRs for each range. The first entry
in each pair (IA32_MTRR_PHYSBASEn) defines the base address and memory type for the
range; the second entry (IA32_MTRR_PHYSMASKn) contains a mask used to determine the
address range. The “n” suffix indicates register pairs 0 through 7.
For P6 family processors, the prefixes for these variable range MTRRs are MTRRphysBase and
MTRRphysMask.
MTRRphysMask.
Figure 10-6 shows flags and fields in these registers. The functions of these flags and fields are:
•
Type field, bits 0 through 7 — Specifies the memory type for the range (see Table 10-8
for the encoding of this field).
for the encoding of this field).
Table 10-9. Address Mapping for Fixed-Range MTRRs
Address Range (hexadecimal)
MTRR
63 56
55 48
47 40
39 32
31 24
23 16
15 8
7 0
70000-
7FFFF
7FFFF
60000-
6FFFF
6FFFF
50000-
5FFFF
5FFFF
40000-
4FFFF
4FFFF
30000-
3FFFF
3FFFF
20000-
2FFFF
2FFFF
10000-
1FFFF
1FFFF
00000-
0FFFF
0FFFF
IA32_MTRR_
FIX64K_00000
FIX64K_00000
9C000
9FFFF
9FFFF
98000-
98FFF
98FFF
94000-
97FFF
97FFF
90000-
93FFF
93FFF
8C000-
8FFFF
8FFFF
88000-
8BFFF
8BFFF
84000-
87FFF
87FFF
80000-
83FFF
83FFF
IA32_MTRR_
FIX16K_80000
FIX16K_80000
BC000
BFFFF
BFFFF
B8000-
BBFFF
BBFFF
B4000-
B7FFF
B7FFF
B0000-
B3FFF
B3FFF
AC000-
AFFFF
AFFFF
A8000-
ABFFF
ABFFF
A4000-
A7FFF
A7FFF
A0000-
A3FFF
A3FFF
IA32_MTRR_
FIX16K_A0000
FIX16K_A0000
C7000
C7FFF
C7FFF
C6000-
C6FFF
C6FFF
C5000-
C5FFF
C5FFF
C4000-
C4FFF
C4FFF
C3000-
C3FFF
C3FFF
C2000-
C2FFF
C2FFF
C1000-
C1FFF
C1FFF
C0000-
C0FFF
C0FFF
IA32_MTRR_
FIX4K_C0000
FIX4K_C0000
CF000
CFFFF
CFFFF
CE000-
CEFFF
CEFFF
CD000-
CDFFF
CDFFF
CC000-
CCFFF
CCFFF
CB000-
CBFFF
CBFFF
CA000-
CAFFF
CAFFF
C9000-
C9FFF
C9FFF
C8000-
C8FFF
C8FFF
IA32_MTRR_
FIX4K_C8000
FIX4K_C8000
D7000
D7FFF
D7FFF
D6000-
D6FFF
D6FFF
D5000-
D5FFF
D5FFF
D4000-
D4FFF
D4FFF
D3000-
D3FFF
D3FFF
D2000-
D2FFF
D2FFF
D1000-
D1FFF
D1FFF
D0000-
D0FFF
D0FFF
IA32_MTRR_
FIX4K_D0000
FIX4K_D0000
DF000
DFFFF
DFFFF
DE000-
DEFFF
DEFFF
DD000-
DDFFF
DDFFF
DC000-
DCFFF
DCFFF
DB000-
DBFFF
DBFFF
DA000-
DAFFF
DAFFF
D9000-
D9FFF
D9FFF
D8000-
D8FFF
D8FFF
IA32_MTRR_
FIX4K_D8000
FIX4K_D8000
E7000
E7FFF
E7FFF
E6000-
E6FFF
E6FFF
E5000-
E5FFF
E5FFF
E4000-
E4FFF
E4FFF
E3000-
E3FFF
E3FFF
E2000-
E2FFF
E2FFF
E1000-
E1FFF
E1FFF
E0000-
E0FFF
E0FFF
IA32_MTRR_
FIX4K_E0000
FIX4K_E0000
EF000
EFFFF
EFFFF
EE000-
EEFFF
EEFFF
ED000-
EDFFF
EDFFF
EC000-
ECFFF
ECFFF
EB000-
EBFFF
EBFFF
EA000-
EAFFF
EAFFF
E9000-
E9FFF
E9FFF
E8000-
E8FFF
E8FFF
IA32_MTRR_
FIX4K_E8000
FIX4K_E8000
F7000
F7FFF
F7FFF
F6000-
F6FFF
F6FFF
F5000-
F5FFF
F5FFF
F4000-
F4FFF
F4FFF
F3000-
F3FFF
F3FFF
F2000-
F2FFF
F2FFF
F1000-
F1FFF
F1FFF
F0000-
F0FFF
F0FFF
IA32_MTRR_
FIX4K_F0000
FIX4K_F0000
FF000
FFFFF
FFFFF
FE000-
FEFFF
FEFFF
FD000-
FDFFF
FDFFF
FC000-
FCFFF
FCFFF
FB000-
FBFFF
FBFFF
FA000-
FAFFF
FAFFF
F9000-
F9FFF
F9FFF
F8000-
F8FFF
F8FFF
IA32_MTRR_
FIX4K_F8000
FIX4K_F8000