Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Б М.docx
Скачиваний:
148
Добавлен:
09.06.2015
Размер:
2.63 Mб
Скачать

Эффективный, адрес £л (смещение)

15 О

| Эффективный, адрес ~|

'\\

_ rr-

19 »

j Сегментный адрес | J

Блок сег­ментных регистров

ih

II

CS

^ Сумматор j

>

US

19

Исполнительный (физический) адрес

S5

,ш=

111!

ES

Рис. 10.10. Формирование исполни­тельного (физического) адреса

лями в четырех младших разрядах. Другими словами, началь­ные адреса сегментов кратны 16 (рис. 10.9).

Физический адрес операнда или команды формируется, как это показано на рис. 10.10, суммированием начального адреса соответствующего сегмента (содержимого сегментного регистра, сдвинутого на четыре разряда влево и дополненного нулями в четырех младших разрядах) и так называемого эффективного адреса (смещения) ЕАУ формируемого командой на основе со­держащейся в ней информации о способе формирования адреса.

Сегментные регистры позволяют осуществлять динамическое распределение памяти, необходимое для реализации мультип­рограммного (многозадачного) режима работы МП (см. гл. 13). Перемещение программ и данных в памяти производится про­стым изменением сегментных адресов в сегментных регистрах.

Порты ввода-вывода адресуются подобно ячейкам памяти, но без использования сегментных регистров. Доступ к первым 256 портам возможен путем прямой адресации, остальные порты адресуются косвенно по регистру, указываемому командой.

Обработка прерываний. Микропроцессор обрабатывает внешние и внутренние (аппаратурные и программные) прерыва­ния. Переход к прерывающей программе производится по при­своенным запросам прерывания номерам векторов прерывания, расположенным в таблице векторов в ОП. При использовании

Рис. 10.11. Форматы команд #Ш К1810:

а— двухоперандная команда;б— команда с непосредственно адресуемым операндом;в— однооперандная команда;г, д— однобайтные команды

Первый байт команды Второй ffaSm команды (постбайт адресации)

КОп

J- ,1 I i I I I

]

[

disp Н

l-J—L-I-1 .1 I

Г disp L ~I Г

»—1—*--»—^ I I L В)

Мп |w| imdl КОп \ г/т

Li I I I I I III ■ I ■ ■ I | ■

data L

"1 Г data И -J Lj-lj.a.1,1.

В)

ГГ71

[

Л7In I г/т

-I—L, I I I

5|И mod I КОп

Кдп

11111

disp Н

disp L I I -L-L-LJ.J_J.jJ LL

а)

одной БИС контроллера преры­ваний возможна обработка до 256 прерываний разных типов: внешние маскируемые (запросы поступают на входы контролле­ра прерываний); внешние немас­кируемые (пропадание напря­жения питания, ошибка в ОП и т. п.— запросы поступают на вход незамаскированного^ пре­рывания МП); внутренние аппа­ратурные, вызываемые ошибка­ми при делении (переполнение, _

попытка деления на нуль), а так- | t*Pnt , |ге£ |

же «пошаговое прерывание», 111

сопровождающее пошаговую работу МП; программное, зада­ваемое специальными команда­ми, включаемыми в программу (прерывания по переполнению, точкам разрыва и др.).

Способы адресации. В командах МП К1810 используются следующие способы адресации: непосредственная, прямая, ре­гистровая прямая и косвенная, относительная (базирование), комбинация базирования и индексации (без смещения и со смещением). При всех способах адресации (кроме непосред­ственной и регистровой прямой) формируется эффективный ад­рес ЕА, который, как уже указывалось, для получения физиче­ского адреса складывается с соответствующим начальным сег­ментным адресом (рис. 10.10).

Форматы команд. На рис. 10.11 представлены примеры фор­матов команд [25J. Команды имеют длину от 1 до 6 байт. В пер­вом байте команды или в первых двух байтах содержатся код операции и сведения о способе адресации. Команды могут иметь Дополнительные (необязательные) байты (показаны на Рис. Ю.П штриховыми линиями), задающие: одно (disp L)- Или двухбайтное (disp Я, disp L) смещение (рис. 10.11, а); °Дно (data L)- или двухбайтный (data //, data L) непосред­ственный операнд; одно- или двухбайтное смещение, за кото­рым следует одно- или двухбайтный непосредственный операнд

reg (г/т)

§

II

о

w= 1

reg (г/т)

w = 0

w = 1

000

AL

АХ

1 00

АН

SP

00 1

CL

СХ

1 0 1

СН

ВР

0 1 0

DL

DX

1 1 0

DH

SI

0 1 1

В

ВХ

1 1 1

ВН

DI

Таблица 10.2

mod

Режим

Пояснения

00

disp = 0

Смещения нет

0 1

disp = L

8-битное смещение

1 0

disp = disp Я, disp L

16-битное смещение

1 1

Регистровая адресация в

соответствии с табл. 10.1

Таблица 10.3

г/т

Эффективный адрес (смещение) (£>4)

000

EA=(BX) + (SI)+disp

00 1

EA=(BX) + (DI) + disp

0 1 0

EA = (BP) + (SI)+disp

0 1 1

ЕА = (BP) -j- (SI) -j- disp

100

EA= (SJ)-\-disp

1 0 1

EA= (DI)-\-disp

1 1 0

EA=(BP) -j-disp

111

EA=(BX) -\-disp

Таблица 10.4

s, w

Формат операнда

Пояснения

00

data L

1 байт данных

0 1

data Я, data L

2 байта данных

1 1

data L*

1 байт данных с расширением

знака до 16 бит

(рис. 10.11, б); двухбайтное смещение и двухбайтный сегмент­ный адрес; двухбайтный эффективный адрес (при прямой адре­сации) .

В двухоперандных командах (рис. 10.11, а) разряд w в пер­вом байте команды указывает, выполняется операция над байта­ми (ад = 0) или над словами (ад=1). Первый операнд находится в памяти или в регистре, а второй — всегда в регистре, номер которого указан в поле reg второго байта команды. Присвоен-

цые регистрам номера приведены в табл. 10.1/Адрес операнда йожно трактовать как адрес источника или приемника. Резуль­тат операции записывается, как правило, по адресу приемника, разряд d в первом байте команды определяет, является ли рргистр, указываемый в поле regy источником (d = 0) или при- ем ником (d = 1).

Способ адресации первого операнда определяется полями mod и r второго байта команды. Если mod= 11, то первый операнд находится в регистре с номером, указанным в поле г/т команды. При moduli первый операнд находится в памяти, причем поле mod задает смещение согласно табл. 10.2, а поле rjm — способ формирования эффективного адреса ЕА в соот­ветствии с табл. 10.3. Имеется лишь одно исключение для случая f mod = 00 и г/т=110, при котором формируется прямой физиче­ский адрес EA = disp //, disp L.

Таблицы 10.2 и 10.3 в совокупности показывают, насколько разнообразны используемые в МП К1810 способы адресации.

На рис. 10.11,6 представлен формат команды с непосред­ственно адресуемым операндом, содержащимся в одном или двух дополнительных байтах команды (data L или data Н, da­ta L). Первый операнд адресуется в соответствии с полями mod и г/m, т. е. как и в предыдущей команде. Результат операции записывается на место первого операнда. Использование непо­средственно адресуемого операнда позволило исключить из ко­манды поля d и regy расширить поле КОп и ввести новое поле 5. Таблица 10.4 поясняет влияние полей s и w на формат непо­средственно адресуемого операнда.

Формат однооперандной команды (рис. 10.11, в) с учетом сказанного выше в. специальных пояснениях не нуждается.

На рис. 10.11, г и д представлены форматы однобайтных команд соответственно с использованием регистровой адресации и с подразумеваемой адресацией одного или двух операндов.

Особенности структуры микропроцессора Intel 8088. Струк­тура МП 8088, используемого в ряде моделей персональных компьютеров, представляет собой несколько упрощенный вари­ант структуры МП 8086 и К1810. Упрощение достигнуто, в пер­вую очередь, за счет уменьшения ширины шины данных до 1 бай­та (8 линий) вместо 2 байт (16 линий) и некоторых других свя- Занных с более узкой шиной изменений (4-байтный буфер команд вместо 6-байтного, инициирование выборки команды, когда в буфере остался один байт — вместо двух в МП 086 и К1810 и др.), но при этом сохранены полная программная с°вместимость этих МП, 20-разрядный адрес, выполнение опера­ми с 16-разрядными операндами, сегментные регистры, средства ^ержки мультипрограммного и многопроцессорного режимов.

  1. Новые модели однокристальных 16- и 32-разрядных микропроцессоров (80286, 80386)

Микропроцессорная техника, быстро развивается — помимо огромного количественного роста промышленного выпуска микропроцессорных средств наблюдается интенсивное расшире­ние их логических возможностей. Это расширение идет, с одной стороны, путем создания и пополнения наборов микропроцессор­ных схем, с другой стороны, путем развития архитектуры самих микропроцессоров.

Крупным расширением архитектурных возможностей микро­процессорных средств явилось создание БИС сопроцессоров, т. е. таких БИС, которые, работая параллельно и совместно с БИС центрального микропроцессора, разгружают его от вы­полнения ряда функций, которые он может выполнять лишь с помощью подпрограмм. Эти функции выполняются сопроцессо­рами с высокой скоростью параллельно с работой центрального микропроцессора. Такая комбинация микропроцессорных БИС существенно повышает производительность и точность вычисле­ний микропроцессорной системы.

С однокристальным 16-разрядным микропроцессором могут работать:

арифметический 80-разрядный сопроцессор, на два порядка повышающий скорость выполнения высокоточных операций с плавающей точкой, а также выполняющий тригонометриче­ские, экспоненциальные и логарифмические команды;

сопроцессор ввода-вывода, осуществляющий функции кон­троллера с двумя каналами прямого доступа к памяти, что позволяет выполнять операции ввода-вывода параллельно с вы­полнением вычислений центральным микропроцессором;

сопроцессоры ядра операционной системы, содержащие на кристалле в ПЗУ ядро ОС, а также ряд таймеров, блоки управле­ния и прерывания и позволяющие достигнуть значительного ускорения работы операционной системы.

Некоторые из схем, входящих в набор микропроцессорных БИС, по своей сложности не уступают, а в ряде случаев могут превосходить БИС самих микропроцессоров.

Новые микропроцессорные средства с более развитой архи­тектурой и более высокой произродительностью создаются на основе совершенствования технологии БИС и СБИС, в том числе путем уменьшения размеров схемных компонентов, использова­ния технологии комплементарных МОП-транзисторов, позволя­ющих снизить на порядок потребляемую мощность, расширить диапазон рабочих температур аппаратуры.

В качестве примеров МП следующих (по сравнению с М** £1810) поколений рассмотрим микропроцессоры $0286 и 80386 фирмы Intel, широко используемые в современных персональных компьютерах. В этих МП реализованы многие логические свойства, которые еще недавно считались принад­лежностью лишь крупных ЭВМ (защита памяти, кэш-память, сегментированная виртуальная память и др.). Для лучшего по­нимания содержания данного параграфа полезно ознакомиться с материалами гл. 13 и 14.

Однокристальный 16-разрядный МП 80286 является су­щественным развитием МП 8086. Кристалл МП 80286 содержит 130 тыс. транзисторов, заключен в квадратный корпус с 68 кон­тактами, расположенными по четырем сторонам корпуса. Ис­пользуется один уровень питающего напряжения +5 В.

Микропроцессор 80286 содержит схемы управления и за­щиты памяти. Тактовая частота 8 или 10 МГц. Производитель­ность этого МП в 2—3 раза выше, чем у МП 8086.

В МП реализуется конвейерная обработка команд и данных, многозадачный (мультипрограммный) и многопользовательский режимы работы. Емкость виртуальной памяти достигает 230, или I Гбайт, а физической 224, или 16 Мбайт.

При подключении к МП 80286 80-разрядного арифметиче­ского сопроцессора 80287 достигается значительное увеличение точности и скорости вычислений с числами с плавающей точкой, определения значений элементарных функций.

Программистская модель МП 80286 представлена на рис. 10.12 [35J. Она содержит наряду с регистрами, присутству­ющими в МП 8086, несколько дополнительных регистров, под­держивающих мультипрограммные и многопользовательские ре­жимы.

Расширение средств отображения состояния МП достигнуто добавлением к обычному для структуры МП регистра флажков F регистра слова состояния машины — MSW. В частности, раз­ряд разрешения запрета в этом регистре определяет альтерна­тивные режимы работы МП: режим реального адреса или режим защищенного виртуального адреса.

Введены сегментные дескрипторы (см. гл. 9), описывающие размеры сегментов, права доступа, их базовые адреса. Имеется Лескрипторная таблица. Регистры дескрипторной таблицы — сегментные селекторы (LDTR, GDTR, IDTR) указывают ад­реса дескрипторных таблиц.

Регистр задачи TR обслуживает переключение задач. Этот Регистр содержит адрес системного дескриптора сегмента, за­дающего область запоминания состояния машины (задачи) момент перехода задачи из активного состояния в состояние

Дания. Переход к обработке новой задачи осуществляется

Общие регистры данных

АХ

Признаки (флажки) Укйзатвль (счет­чик) команд Слово состоя­ния машины

IКоманды умно- ( женил\ деления г _ I и ввода-вывода ч Счетчик цик- \ла,сдвига, MSW > повторения

I Базовые г регистры

15 О

Регистры управления и состояния

Права доступа 7 О 23

Базовый адрес сегмента

Размер сегмента О 15 О

АН

AL

ВН

BL

СИ

CL

ВН

BL