Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие 3000544.doc
Скачиваний:
41
Добавлен:
30.04.2022
Размер:
14.75 Mб
Скачать

После изучения главы необходимо знать

  • Основные регистры процессора,

  • механизм определения физического адреса,

  • механизм страничной трансляции адресов,

  • механизм кэширования.

Процессор Intel386 имеет 32-разрядные раздельные шины адреса и данных и внутреннюю очередь команд размером 16 байт для организации конвейерной обработки данных. Предел физически адресуемой памяти отодвинулся до 4 Гбайт. В этих процессорах снято ограничение на длину сегмента памяти в 64 Кбайта. В защищенном режиме оно равно 4Гбайт - предела физически адресуемой памяти. Процессоры имеют поддержку виртуальной памяти до 64Тбайт. Встроенный блок управления памятью обеспечивает работу механизмов сегментации памяти и страничной трансляции адресов. Применено кэширование памяти. Стало возможным использование математического сопроцессора Intel387. Процессор может работать в одном из двух режимов: режиме реальной адресации (до 1Мбайта физической памяти) и в защищенном режиме, позволяющим адресовать до 4 Гбайт физической памяти. Для процессора стало возможным переключение режимов работы с реального на защищённый режим и обратно. Защищенный режим стал использоваться полностью. Процессоры обеспечивают четырехуровневую защиту пространства памяти и ввода-вывода и переключение задач. Расширена система команд. Процессоры могут оперировать с 8, 16 и 32-битными операндами, строками байт, слов и двойных слов, с битами, битовыми полями, со строками бит.

Процессоры 486 обладают всеми свойствами 386-х процессоров, обеспечивая совместимость сверху вниз. В процессор введен внутренний кэш (внутренняя промежуточная память) размером 8Кбайт для данных и инструкций. Повышена производительность локальной шины путем введения пакетных циклов, позволяющих передавать очередное слово данных в каждом такте шины. Введены буферы отложенной записи, в которые производится временная запись данных с случае занятой шины и из которой данные выгружаются в оперативную память или устройства ввода-вывода по мере освобождения шины. В архитектуре применено RISC ядро, позволяющее выполнять часто встречаемые инструкции за один такт. В состав процессора введен высокопроизводительный сопроцессор. Введены дополнительные регистры, добавлены новые инструкции и введена защита страниц памяти от записи на уровне супервизора.

11.1. Архитектура 32-разрядных процессоров

11.1.1. Регистры процессора

Р егистры общего назначения включают соответствующие регистры процессоров 8086 и 80286 (Рис. 11.1.). Регистры имеют разрядность 32 бита. К прежнему обозначению регистров прибавилась приставка Е (Extended). Указатель инструкции содержит смещение следующей исполняемой инструкции относительно базы сегмента кода. Регистр флагов расширен до 32 бит и в него добавлен ряд флагов. Регистры сегментов содержат 16-битные указатели (в реальном режиме) или селекторы дескрипторов соответствующих сегментов. Введены дополнительные сегменты данных. С каждым из 6 сегментных регистров связаны программно недоступные скрытые регистры дескрипторов, автоматически загружаемые при загрузке соответствующих сегментных регистров. Каждый регистр дескрипторов содержит 32-битный базовый адрес, 32-битный лимит и 15-битные атрибуты сегмента (Рис. 11.2.). В реальном режиме лимит фиксирован (64Кбайта), атрибуты не используются, а в качестве базового адреса заносится значение сегментного регистра, сдвинутое влево на 4 бита. В защищенном режиме регистры дескрипторов загружаются из таблицы дескрипторов. По содержимому регистров дескрипторов при каждом обращении к памяти производится вычисление линейного адреса и проверка защиты.

С истемные адресные регистры (рис.11.2.) предназначены для ссылок на сегменты и таблицы в защищенном режиме. Регистр глобальной дескрипторной таблицы GDTR (Global Descriptor Table Register) и регистр дескрипторной таблицы прерываний IDTR (Interrupt Descriptor Table Register) программно загружаются и содержат 32-битные линейные базовые адреса и 16-битные лимиты таблиц дескрипторов. В регистр задачи TR (Task Register) и

Регистр селектора локальной таблицы дескрипторов LDTR загружаются соответственно 16-битные селекторы сегмента состояния задачи и селектора локальной таблицы дескрипторов.

Управляющие регистры (Control Registers) CR0, CR1, CR2,CR3 хранят признаки состояния процессора, общие для всех задач: режим, управление кэшем и переключением задач, управление расширением размера страницы и т. д.

Регистры отладки DR0… DR7 (Dedug Register) предназначены для задания и управления отладочными точками останова. Регистры DR0… DR3 хранят 32-битные адреса точек останова. Регистр DR6 отражает состояние контрольной точки, а DR7 – управляет установкой контрольных точек.

В состав процессора входят регистры тестирования, которые предназначены для тестирования процессора и варьируются в зависимости от типа процессора.