Научная литература
booksshare.net -> Добавить материал -> Физика -> Александров Е.К. -> "Микропроцессорные системы" -> 44

Микропроцессорные системы - Александров Е.К.

Александров Е.К., Грушвицкий Р.И., Купрянов М.С., Мартынов О.Е. Микропроцессорные системы — Спб.: Политехника, 2002. — 935 c.
ISBN 5-7325-0516-4
Скачать (прямая ссылка): mikroprocessorniesistemi2002.djvu
Предыдущая << 1 .. 38 39 40 41 42 43 < 44 > 45 46 47 48 49 50 .. 528 >> Следующая

памяти; допускается спекулятивная выборка при чтении и буферизация данных
при записи;
WP (Write Protected, код 5) - кэшируемая зона для чтения, некэшируемая
зона для записи; при чтении реализуется обычная процедура обращения к
кэшу; при записи выполняется цикл обращения к системной шине без
изменения содержимого кэша, причем во всех процессорах системы строка
кэша, адресованная при записи (если таковая имеется), устанавливается в
I-состояние (освобождается); допускается спекулятивная выборка при
чтении, буферизация данных при записи не выполняется.
В процессорах Р6 выделены 88 адресных зон фиксированного размера (4,16
или 64 Кбайт) и 8 зон произвольного размера:
8 зон по 64 Кбайт, занимающих диапазон адресов 0-7FFFFh (512 Кбайт);
16 зон по 16 Кбайт, занимающих диапазон адресов 80000H-8FFFFH (256
Кбайт);
64 зоны по 4 Кбайт, занимающих диапазон адресов C0000H-FFFFFH (256
Кбайт);
R 7
ПРОЦЕССОРЫ ОБЩЕГО НАЗНАЧЕНИЯ И СИСТЕМЫ НА ИХ ОСНОВЕ
8 зон размером от 4 Кбайт до максимального размера физической памяти,
которые могут размещаться в любой позиции адресного пространства.
В зависимости от назначения и реализации разделов памяти, расположенных в
соответствующей адресной зоне, пользователь может задать для них тот или
иной режим кэширования, записав в соответствующий регистр MTRR код
требуемого режима: 0,1,4,5 или 6 (коды 2,3 и 7-255 резервированы для
последующих моделей).
Регистр MTRRcap содержит информацию о структуре адресных зон, реализуемых
процессором Р6 (число зон переменного размера, наличие зон фиксированного
размера, реализация режима WC), которая считывается операционной системой
в процессе конфигурации системы. Для процессоров Р6 содержимое этого
регистра имеет значение 508Н. При попытке записи в регистр MTRRcap
реализуется исключение #GP (нарушение защиты).
Содержимое регистра MTRRdefType (рис. 2.9) разрешает или запрещает
использование адресных зон, устанавливает режим кэширования для
остального адресного пространства, не включенного в разрешенные зоны.
Отдельные биты этого регистра имеют следующее назначение:
Е- разрешает при установке значения Е = 1 использование адресных зон для
определения режима кэширования, при значении Е = 0 вся физическая память
работает в некэши-руемом режиме UC;
ЕЕ - разрешает при установке значения FE = 1 установку режима кэширования
для зон с фиксированными размерами; при FE = 0 разрешается установка
режима только для зон с произвольными размерами, если значение Е = 1; при
Е = 0 значение бита FE не влияет на работу процессора;
Туре - данное поле должно содержать код режима (0,1,4,5 или 6) для
адресного пространства, не включенного в зоны фиксированного или
произвольного размера; при записи в это других значений кода реализуется
исключение типа #GP (нарушение защиты).
Остальные биты в регистре MTRRdefType зарезервированы, и процессор
реализует исключение типа #GP при попытке записи в них ненулевых
значений.
Обращение к зонам с фиксированным размером производится под управлением
группы 64-разрядных регистров, в которую входят:
MTRRfix64K_00000 - регистр, задающий режим для 8 зон по 64 Кбайт;
MTRRfixl 6K_80000, MTRRfix64K_A0000- два регистра, задающие режим для 16
зон по 16 Кбайт;
MTRRfix4K_C0000, ..._С8000, ..._D0000, ..._D8000, ..._Е0000, ..._Е8000,
..._F0000;
MTRRfix4K_F8000 - восемь регистров, задающих режим для 64 зон по 4 Кбайт.
Имена этих регистров содержат шестнадцатиричные цифры, указывающие
начальный адрес зон, режим кэширования которых данный регистр задает.
Каждый байт этих регистров содержит код режима (0,1,4,5 или 6),
устанавливаемого для определенной зоны (младшему байту соответствует зона
с меньшими адресами).
Обращение к зонам с произвольным размером выполняется под управлением
группы из 16 регистров, каждая пара которых MTRRphysBasen, MTRRphysMaskn
задает размещение и размер одной из восьми зон, определяет режим ее
кэширования (суффикс л = 0-7 указывает номер зоны). Эти регистры содержат
поля и биты (рис. 2.10), имеющие следующее назначение:
Туре - поле, задающее режим кэширования данной зоны (код 0,1,4,5 или 6);
63 _________________12 11_______Ю 9________8 7_______________0
Резервировано(0)
FE
0 0
Туре
Рис. 2.9. Формат содержимого регистра MTRRdefTуре
СТРУКТУРА И ФУНКЦИОНИРОВАНИЯ ПРОЦЕССОРОВ INTEL Р6
63 36 35 12 11 8 7 О
Резервировано Phys Base Резервировано Type
63 36 35 12 11 10 0
Резервировано Phys Mask V Резервировано
Рис. 2.10. Формат содержимого пары регистров MTRRphysBasen, MTRRphys-
Maskn, определяющих режим кэширования для адресной зоны произвольного
размера
PhysBase - поле, содержащее 24 старших разряда базового адреса зоны (для
12 младших разрядов принимаются нулевые значения);
PhysMask-поле, содержащее 24 разряда маски, с помощью которой задается
размер зоны; V-бит, разрешающий при значении V = 1 задание режима
кэширования для адресной зоны с помощью данной пары регистров; при
значении V = 0 режим этой зоны определяется содержимым регистра
Предыдущая << 1 .. 38 39 40 41 42 43 < 44 > 45 46 47 48 49 50 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed