Скачиваний:
89
Добавлен:
16.04.2013
Размер:
276 Кб
Скачать

Типы памяти, определяемые регистром pat и регистрами mttr

Мнемоника типа памяти

Код

Кэширова­ние

Спекул. чтение

Порядок операций

UC (UnCacheable)

0

Нет

Нет

Строгий

WC

(Write Combining)

1

Нет

Да

Слабо упорядоченный (Weak Ordering)

Зарезервировано

2,3

WT (Write Through)

4

Да

Да

Спекулятивный (Speculative Processor Ordering)

WP

(Write Protected)

5

Чтение-да, Запись-нет

Да

WB (Write Back)

6

Да

Да

UC- (UnCacheable)

7

Нет

Нет

Строгий

Зарезервировано

8-255

Регистры MTRR позволяют управлять статически определенными зонами физической памяти. Эта задача ложится, как правило, на BIOS компьютера. В процессорах Pentium III введен новый способ управления свойствами памяти на уровне страниц, который позволяет операционной системе и приложениям динамически выбирать оптимальные свойства каждой страницы памяти с точки зрения повышения производительности. Этот способ основан на таблице атрибутов страниц PAT (Page Attribute Table). Прежде на уровне страниц свойства памяти задавались битами PCD и PWT. Теперь в элементах, описывающих страницы, определен бит PATi (PAT index), прежде зарезервированный (бит 12 в PDE 2/4-МB и бит 7 в РТЕ 4КB, рис. 6.5). В процессор введен новый регистр MSR с именем IA32_CR_PAT, представляющий собой таблицу атрибутов страниц (рис. $.8).

63

59

58

56

55

51

50

48

49

43

42

40

39

35

34

32

Резерв

РА7

Резерв

РА6

Резерв

РА5

Резерв

РА4

Резерв

РА3

Резерв

РА2

Резерв

РА1

Резерв

РА0

31

27

26

24

23

19

18

16

15

11

10

8

7

3

2

0

Рис. $.8. Формат регистра IA32_CR_PAT

С помощью комбинации трех битов PATi, PCD, PWT для конкретной страницы выбирается соответствующий элемент РА0 ... РА7 см. таб. $.5.

Таблица $.5.

Выбор элемента в pat, а также тип памяти, определяемый по аппаратному сбросу

PATi

PCD

PWT

Элемент PAT

Тип после RESET

0

0

0

PAT0

6(WB)

0

0

1

PAT1

4(WT)

0

1

0

PAT2

7(UC-)

0

1

1

PAT3

0(UC)

1

0

0

PAT4

6(WB)

1

0

1

PAT5

4(WT)

1

1

0

PAT6

7(UC-)

1

1

1

PAT7

0(UC)

В этом элементе хранится код типа памяти, назначенный этой комбинации данных бит. Типы памяти уже упоминались в табл. $.4. Результирующий тип памяти определяется таблицами $.6 и $.7. Для тех страниц, с которыми не связаны биты PATi, используются только первые четыре элемента PAT.

Таблица $.6

Результирующий тип памяти страницы, если бит PATi=0 или не используется

Тип памяти из MTTR

Значения (PCD,PWT)

00

01

10

11

UC

UC

UC

UC

UC

WC

WC

WC

WC

UC

WT

WT

WT

UC

UC

WP

WP

WP

WC

UC

WB

WB

WT

UC

UC

Таблица $.7