Внутренняя структура
Структурная схема МП i8086 представлена на Рис. 4.7. МП включает в себя три основных устройства :
· УОД - устройство обработки данных;
· УСМ - устройство связи с магистралью;
· УУС - устройство управления и синхронизации.
УОД предназначено для выполнения команд и включает в себя 16-разрядное АЛУ, системные регистры и другие вспомогательные схемы; блок регистров (РОН, базовые и индексные) и блок микропрограммного управления.
УСМ обеспечивает формирование 20-разрядного физического адреса памяти и 16-разрядного адреса ВУ, выбор команд из памяти, обмен данными с ЗУ, ВУ, другими процессорами по магистрали. УСМ включает в себя сумматор адреса, блок регистров очереди команд и блок сегментных регистров.
УУС обеспечивает синхронизацию работы устройств МП, выработку управляющих сигналов и сигналов состояния для обмена с другими устройствами, анализ и соответствующую реакцию на сигналы других устройств МПС.
МП может работать в одном из двух режимов - "минимальном" (min) и "максимальном" (max). Минимальный режим предназначен для реализации однопроцессорной конфигурации МПС с организацией, подобной МПС на базе i8080, но с увеличенным адресным пространством, более высоким быстродействием и значительно расширенной системой команд. Максимальная конфигурация предполагает наличие в системе нескольких МП и специального блока арбитра магистрали (используется интерфейс Multibus).
На внешних выводах МП i8086 широко используется принцип мультиплексирования сигналов - передача разных сигналов по общим линиям с разделением во времени. Кроме того, одни и те же выводы могут использоваться для передачи разных сигналов в зависимости от режима (min - max).
Ниже приводится описание внешних выводов МП i8086. При описании выводов косой чертой разделены сигналы, появляющиеся на выводе в разные моменты машинного цикла. В круглых скобках указаны сигналы, характерные только для максимального режима. Символ \ после имени сигнала - знак его инверсии.
Рис. 4.7. Внутренняя структура процессора i8086
A/D[15:0] - младшие [15:0] разряды адреса / данные;
A[19:16]/ST[6:3] - старшие [19:16] разряды адреса / сигналы состояния;
BHE\/ST[7] - разрешение передачи старшего байта данных / сигнал состояния;
STB(QS0) - строб адреса (состояние очереди команд);
R\ - чтение;
W\/(LOCK\) - запись (блокировка канала);
M-IO\(ST2\) - память - внешнее устройство (состояние цикла);
OP-IP\(ST1\) - выдача-прием (состояние цикла);
DE\(ST0\) - разрешение передачи данных (сост. цикла);
TEST\ - проверка;
RDY - готовность;
CLR - сброс;
CLC - тактовый сигнал;
INT - запрос внешнего прерывания;
INTA\(QS1) - подтверждение прерывания (состояние очереди команд);
NMI - запрос немаскируемого прерывания;
HLD(RQ\/E0) - запрос ПДП (запрос / подтверждение доступа к магистрали);
NLDA(RQ\/E1) - подтверждение ПДП (запрос / подтверждение доступа к магистрали);
MIN/MAX\ - потенциал задания режима (1-min, 0-max).
Сигналы состояния ("статуса") используются для отображения внутреннего состояния МП. Некоторые группы статусных сигналов используются только в максимальном режиме.
Сигналы ST[2:0]\ определяют тип текущего машинного цикла (аналогично PSW для i8080), и формируются только в максимальном режиме:
Табл. 4.1
ST2 | ST1 | ST0 | Тип машинного цикла |
Обслуживание прерывания | |||
Чтение ВУ | |||
Запись ВУ | |||
Останов | |||
Извлечение кода команды | |||
Чтение ЗУ | |||
Запись ЗУ | |||
Пассивное состояние |
Разряды статуса 3..4 определяют сегментный регистр, используемый для вычисления физического адреса:
Табл. 4.2
ST4 | ST3 | Сегментный регистр |
ES | ||
CS | ||
SS | ||
DS |
ST[5] отражает состояние флага разрешения прерывания IF, ST[6] всегда установлен в 0, когда МП обменивается информацией по магистрали, состояние ST[7] не определено (зарезервировано).
Сигналы QS[1:0] формируются только в максимальном режиме и отражают состояние очереди команд:
Табл. 4.3
QS1 | QS0 | Состояние очереди команд |
Нет операции | ||
Очередь очищается | ||
Извлекается первый байт | ||
Извлекается очередной байт |
Практически все команды МП i8086 могут работать как со словами (2 байта) так и с байтами. При работе со словами сигнал BHE\ разрешает передачу старшего байта слова.
Сигнал STB отмечает наличие на линиях A/D и A/S адреса.
R и W\ стробируют данные на шине A/D соответственно при чтении и записи.
M-IO\ и OP-IP\ определяют соответственно устройство, с которым производится обмен (память - ВУ) и направление передачи информации (вывод - ввод) относительно процессора.
DE\ стробирует внешний буфер A/D при передаче данных.
Вход TEST\ предназначен для синхронизации программы с внешними процессами. Команда WAIT (ожидание) переводит процессор в режим ожидания, в котором он будет находиться до тех пор, пока на входе TEST\ удерживается высокий уровень сигнала (лог. "1"). При этом все магистрали МП переводятся в высокоимпедансное состояние.
RDY - (готовность) аналогично соответствующему входу МП i8080 обеспечивает возможность асинхронного машинного цикла.
CLR - (сброс) устанавливает все регистры МП в 0, кроме CS, который устанавливается в FFFF и осуществляет запуск командного цикла. Таким образом, стартовый адрес i8086 - всегда FFFF0.
CLC - тактовый сигнал.
INT, INTA\ - соответственно запрос и подтверждение вешнего прерывания (подробнее см. раздел 7).
NMI - запрос внешнего немаскируемого прерывания по фиксированному вектору 2.
HLD, HLDA - соответственно требование и предоставление прямого доступа в память (работает аналогично подсистеме ПДП i8080). В максимальном режиме вместо сигналов HLD, HLDA используются две двунаправленные линии RQ\/Ei\ - запрос шины/разрешение доступа, на которые работает специальная микросхема - арбитр шины.
Дата добавления: 2019-02-07; просмотров: 416;