logo search
КС-ZAO / Лекции ЦЭВМруский вариант11

§18.Микросхема 80286

Процессор 80286 является усовершенствованным вариантом микропро­цессора 8086, содержащим схемы управления памятью и ее защиты. Как и микросхема 80186, он оформлен в корпусе с 68 контактами, расположенны­ми в четыре ряда. Выпускаются модели процессоров с частотой синхрониза­ции 8 и 10 МГц. Все внутренние регистры процессора 80286 показаны на рис. 18.1. Помимо регистров микропроцессора 8086 введены следующие регистры:

Слово состояния машины (MSW). Для хранения дополнительных бит со­стояния, связанных с расширенными возможностями процессора 80286. Бит разрешения защиты (бит 0) в этом регистре определяет работу процессора в режиме реального адреса или в режиме защищенного виртуального адреса. После сброса процессора этот бит содержит 1, что соответствует работе в ре­жиме реального адреса. Для перехода в режим с защитой этот бит необходи­мо сбросить. После операции сброса вновь перевести его в состояние 1 может только сброс процессора.

Расширения сегментных регистров. Для хранения текущих сегментных дескрипторов.

Регистр задачи (TR). Адресует системный дескриптор сегмента, который определяет базовый адрес, права доступа и размер сегмента состояния теку­щей задачи.

Рис.18.1. Внутренние регистры процессора 80286

Регистры дескрипторной таблицы (LDTR, GDTR и IDTR). Адресуют дескрипторные таблицы, которые содержат дескрипторы различных сегментов.

В режиме реального адреса процессор 80286 функционирует так же, как микропроцессор 8086, и дополнительные регистры не используются. В режи­ме с защитой, если при обращении к памяти используемый сегментный ре­гистр не изменялся, адрес формируется сложением эффективного адреса и 24-битного базового адреса из расширения. Если же сегментный регистр изменялся, старшие 13 бит сегментного регистра используются как индекс, который прибавляется к содержимому соответствующего регистра дескрипторной таблицы для получения местоположения дескриптора, загру­жаемого в расширение сегментного регистра. После загрузки нового расши­рения эффективный адрес (как и раньше) прибавляется к базовому адресу для получения физического адреса операнда в памяти.

Регистр задачи используется при переключении задач. При переключении все состояние машины запоминается в области, определяемой системным дескриптором сегмента, на который указывает регистр задачи. Затем в ре­гистр задачи загружается адрес области запоминания новой задачи, а из этой области загружается новое состояние машины.

Система команд процессора 80286 включает в себя все команды микро­процессора 8086, дополнительные команды, приведенные выше для процес­сора 80186, и 16 команд для работы со средствами управления памятью. Эти 16 команд показаны на рис. 18.2.

Разводка контактов корпуса процессора 80286 приведена на рис. 18.3. Отметим, что в отличие от микропроцессоров 8086/8088 линии данных и ад­ресов не мультиплексируются: имеется 24 линии адреса А0 и 16 линий данных D15-Do. (В режиме реального адреса, когда процессор 80286 форми­рует 20-битный адрес, линии А20 не используются.) Имеются четыре линии состояния: COD/INTA, М/IО, S1 и S0 (см. табл. 18.1). Сигналы ВНЕ, LOCK, CLK, INTR, NMI, RESET и READY выполняют те же функции, что и в микропроцессоре 8086, работающем в максимальном режиме (но сигнал готовности инвертирован). Сигналы HOLD и HLDA аналогичны соответству­ющим сигналам микропроцессора 8086 в минимальном режиме.

Сигналы:

LGDT — Загрузить регистр глобальной дескрипторной таблицы

LIDT — Загрузить регистр дескрипторной таблицы прерываний

LLDT — Загрузить регистр локальной дс ;крипторной таблицы

LMSW — Загрузить регистр слова состояния машины

LTR — Загрузить регистр задачи

SGDT — Запомнить регистр глобальной дескрипторной таблицы

SIDT — Запомнить регистр дескрипторной таблицы прерываний

SLDT — Запомнить регистр локальной дескрипторной таблицы

SMSW — Запомнить регистр слова состояния машины

STR — Запомнить регистр задачи

ARPL — Скорректировать запрошенный уровень привилегий

CTS — Сбросить флажок переключения задачи

LAR — Загрузить права доступа

ISL — Загрузить предел сегмента