- •А. В. Поздняков, б. Я. Цилькер микропроцессоры и микропроцессорные системы
 - •Часть 1
 - •(Учебное пособие)
 - •Содержание
 - •1. Микропроцессорные системы
 - •1.1. Историческая справка
 - •1.2. Архитектура мпс с магистрально-модульной организацией
 - •1.3. Режимы работы мпс
 - •2. Микропроцессорный модуль
 - •2.1. Центральный процессор
 - •2.1.1. Классификация микропроцессоров
 - •2.1.2. Структура центрального процессора
 - •2.1.2.1. Краткая характеристика микропроцессора Intel 8086
 - •2.1.2.2. Архитектура микропроцессора Intel 8086
 - •2.1.2.3. Программная модель микропроцессора Intel 8086
 - •2.1.2.4. Представление информации в мп Intel 8086
 - •2.1.2.5. Способы адресации операндов в мп Intel 8086
 - •2.1.2.6. Система команд мп Intel 8086
 - •2.1.2.7. Содержание цикла команды, типовые машинные циклы мп Intel 8086
 - •2.1.2.8. Входные и выходные сигналы мп Intel 8086
 - •2.2. Сопроцессор
 - •2.3. Генератор тактовых импульсов
 - •2.4. Системный контроллер
 - •2.5. Согласующие элементы микропроцессорных систем
 - •2.5.1. Шинные формирователи
 - •2.5.2. Буферные регистры
 - •2.6. Контроллер прерываний
 - •2.7. Контроллер прямого доступа к памяти
 - •2.8. Программируемый таймер
 - •3. Модуль памяти
 - •3.1. Организация модуля памяти
 - •3.2. Распределение адресного пространства зу
 - •3.3. Декодирование старших разрядов адреса.
 - •3.3.1. Декодирование адресов методом линейной выборки
 - •3.3.2. Декодирование адресов с помощью логических компараторов
 - •3.3.3. Декодирование адресов с применением комбинационных логических схем
 - •3.4. Выбор типа зу
 - •3.5. Функциональная схема модуля памяти
 - •3.6. Обеспечение необходимой емкости зу
 - •3.6.1. Увеличение разрядности зу
 - •3.6.2. Увеличение адресного пространства зу
 - •4. Модуль ввода-вывода
 - •4.1. Интерфейс ввода-вывода
 - •4.2. Параллельные порты
 - •4.2.1. Параллельный порт вывода
 - •4.2.2. Параллельный порт ввода
 - •4.2.3. Параллельные порты ввода-вывода
 - •4.3. Последовательные порты
 - •4.3.1. Последовательный асинхронный порт вывода
 - •4.3.2. Последовательный асинхронный порт ввода
 - •4.3.3. Программируемый последовательный интерфейс
 - •4.4. Организация обращения к портам ввода/вывода
 - •4.4.1. Обращение к портам ввода/вывода с помощью специальных команд
 - •4.4.2. Обращение к портам ввода/вывода с помощью команд пересылок
 - •4.5. Способы организации ввода/ вывода информации в мпс
 - •4.5.1. Организация ввода/вывода информации под управлением основной программы
 - •4.5.2. Организация ввода/вывода в режиме прерывания программы
 - •4.5.3. Организация ввода/вывода в режиме прямого доступа к памяти
 - •Система команд микропроцессора Intel 8086 Команды пересылки данных
 - •Арифметические команды
 - •Логические команды
 - •Команды передачи управления
 - •Команды управления процессором
 - •Команды обработки строк
 - •Литература
 
1.3. Режимы работы мпс
В большинстве МПС можно выделить четыре состояния или режима работы:
основной режим;
ожидания;
прерывания;
захвата.
Основной режим – режим работы по программе при вычислениях или управлении процессами. В этом режиме МП производит выборку команд из ЗУ по порядку, определяемому программой, и выполняет их.
Режим ожидания используется для управления асинхронной передачей данных, а также с целью увеличения времени обращения к медленным УВВ или памяти. Для этого МП периодически проверяет состояние входного сигнала READY и пока он равен лог.0 выполняет пустые такты ожидания, сопровождая их выходным сигналом подтверждения WAIT. Часто сигнал READY вырабатывается ждущим мультивибратором (цифровым или аналоговым), запускаемым в момент обращения к медленному устройству.
Режим прерывания предназначен для обеспечения работы по программе с более высоким приоритетом. Прерывание может быть вызвано:
внешними сигналами;
аномальной ситуацией, сложившейся при выполнении конкретной команды, и препятствующей нормальному продолжению программы;
командой прерывания, находящейся в программе.
Первая из причин относится к аппаратным прерываниям, две другие – к программным прерываниям.
Аппаратные прерывания непредсказуемы и могут возникать в произвольные моменты времени. Аппаратные прерывания делятся на маскируемые и немаскируемые прерывания. Запрос маскируемого прерывания поступает на вход INT (Interrupt) микропроцессора. Если прерывание основной программы разрешено, микропроцессор заканчивает выполнение текущей команды, сохраняет в стеке минимальный контекст текущей программы (в частности адрес следующей команды основной программы) и переходит на соответствующую программу обработки прерывания. По завершении программы обработки (обслуживания) прерывания МП возвращается к выполнению основной программы. Если прерывание основной программы запрещено, то запрос прерывания микропроцессором не воспринимается, и он продолжает работу по основной программе. Микропроцессор информирует внешние устройства о разрешении прерывания путем выдачи сигнала разрешения прерывания INTE (Interrupt Enable).
Запрос немаскируемого прерывания поступает на вход NMI (Non-Maskable Interrupt) микропроцессора. Немаскируемое прерывание служит для прерывания работы процессора при возникновении критических ситуаций, таких как падение напряжения питания, обнаружение ошибок памяти и др. Обработка немаскируемого прерывания не зависит, разрешено или нет прерывание основной программы.
Программные прерывания обычно называются особыми случаями (exception). Особые случаи возникают, например, при выходе за границы массива, делении на нуль и т. п. Общая реакция микропроцессора на особый случай аналогична реакции на аппаратное прерывание.
Режим захвата предназначен для передачи управления и пользования памятью и УВВ (следовательно, и внешними устройствами) второму процессору или другому управляющему устройству. В этом режиме МП при наличии входного сигнала запроса захвата HOLD прерывает выполнение текущей команды, переводит внешние шины адреса, данных и управления в Z-состояние (т. е. отключается от них) и подтверждает это состояние выходным сигналом подтверждения захвата HLDA. Этот режим называется также режимом прямого доступа к памяти.
Режимы работы МПС определяются теми задачами, для решения которых используется данная МПС. В общем случае, МПС может работать во всех перечисленных режимах, в частном случае – функционировать только в основном режиме. Для обеспечения режимов работы МПС на вход микропроцессорного модуля могут поступать внешние управляющие сигналы:
сброс RESET – для системного сброса и последующей выборки команды из ячейки памяти с начальным адресом;
готовность READY – для согласования работы быстрого процессора с медленными устройствами памяти и ввода-вывода;
запрос или запросы прерывания INT1...INTn – для перехода на подпрограммы с более высоким приоритетом;
запрос или запросы захвата HOLD1...HOLDn – для передачи доступа к шинам, памяти и портам другим внешним устройствам или другому микропроцессору,
и выдаваться на выход МП модуля:
сигнал или сигналы разрешения прерывания INTE1...INTEn;
сигнал или сигналы подтверждения захвата HOLD1...HOLDn.
