- •Последовательность адресов в пакетном цикле Pentium
- •Характеристики элементов кэша для процессоров Pentium
- •Доступность методов кэширования в процессорах
- •Типы памяти, определяемые регистром paTи регистрамиMttr
- •Выбор элемента в pat, а также тип памяти, определяемый по аппаратному сбросу
- •Тип памяти страницы для процессоров использующих бит paTi
- •Вопросы для самопроверки.
Типы памяти, определяемые регистром paTи регистрамиMttr
Мнемоника типа памяти |
Код |
Кэширование |
Спекул. чтение |
Порядок операций |
UC (UnCacheable) |
0 |
Нет |
Нет |
Строгий |
WC (Write Combining) |
1 |
Нет |
Да |
Слабо упорядоченный (WeakOrdering) |
Зарезервировано |
2,3 |
|
|
|
WT (Write Through) |
4 |
Да |
Да |
Спекулятивный (Speculative Processor Ordering) |
WP (Write Protected) |
5 |
Чтение-да, Запись-нет |
Да | |
WB (Write Back) |
6 |
Да |
Да | |
UC- (UnCacheable) |
7 |
Нет |
Нет |
Строгий |
Зарезервировано |
8-255 |
|
|
|
Регистры MTRR позволяют управлять статически определенными зонами физической памяти. Эта задача ложится, как правило, на BIOSкомпьютера. В процессорахPentiumIIIвведен новый способ управления свойствами памяти на уровне страниц, который позволяет операционной системе и приложениям динамически выбирать оптимальные свойства каждой страницы памяти с точки зрения повышения производительности. Этот способ основан на таблице атрибутов страницPAT(PageAttributeTable). Прежде на уровне страниц свойства памяти задавались битамиPCDиPWT. Теперь в элементах, описывающих страницы, определен битPATi(PATindex), прежде зарезервированный (бит 12 вPDE2/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