
- •Этапы развития микропроцессорной техники.
- •Классификация микропроцессоров.
- •Виды обменов в микроЭвм.
- •Обмен по прямому доступу в память.
- •Обмен по прерыванию.
- •Микропроцессор 580вм80.
- •Intr – вход запроса прерывания.
- •Inta – сигнал подтверждения обработки прерывания. Он говорит о том, что микропроцессор начал обрабатывать прерывание. Обработки прерывания начинается на границе между двумя командами.
- •Синхронизация работы микропроцессора. Микросхема 580гф24.
- •Типы машинных циклов микропроцессора 580вм80. Микросхема 58вк28/38.
- •Построение разрядно-модульных микропроцессоров.
- •Микропроцессорная секция 1804вс1.
- •Микропроцессорный комплект бис 1815 для конвейерных систем цос.
- •Универсальный процессорный элемент 1815вф1.
- •Сумматор последовательных числе 1815им1.
- •Бис ортогональной регистровой памяти 1815ир1.
- •Цифровая фильтрация на микропроцессорном комплекте 1815.
- •Микропроцессор 1815 вф3.
- •Особенности реализации систем цос на бис 1815вф3.
- •Микропроцессор 1810вм86/88.
- •Inta – сигнал подтверждения прерывания.
- •Модель процессора 1810вм86 для программистов.
- •Программный счётчик и регистр флагов. Флаги, входящие в младший байт повторяют флаги 580-ого процессора.
- •Сопроцессор 1810вм87.
- •Системный контроллер 1810вг88.
- •Включение процессора 1810вм86 в максимальном режиме.
- •Арбитр шин 1810вб89.
- •Организация приоритетного арбитража.
- •2.На системной магистрали располагается память, на резидентной магистрали только увв.
- •Программируемый контроллер прерываний 1810вн59.
- •Контроллер пдп 1810вт37.
- •Процессоры 2, 3 и 4 – ого поколения.
- •Процессор 80386.
Обмен по прерыванию.
Процесс прерывания работы микропроцессора сигналами от ВУ устраняет необходимость частой и неэффективной проверки готовности ВУ к обмену. Момент возникновения прерывания не связан с работой процессора в основной программе. Следовательно микропроцессор должен прервать выполнение основной программы, запомнить все данные необходимые ему для продолжения выполнения основной программы и выйти на программу обработки прерываний. Процессор прерывается закончив выполнение очередной команды. Это связано с тем, что в этот момент количество информации, которую нужно запомнить минимально. Возможна ситуация, когда после выхода на программу обработки прерывания возникнет ещё один сигнал прерывания от другого устройства, т.е. возможно вложение прерываний. В этом случае говорят об уровне прерывания. Уровень прерывания показывает сколько раз микропроцессор выходит на обработку прерываний без возврата к предыдущей программе. Современные микропроцессоры теоретически могут обеспечить бесконечное число уровней прерывания. Практически это ограничено памятью. Информация, которую микропроцессор должен запомнить при выходе в прерывание, копирует в стек. Стек – это память магазинного типа. Он состоит из некоторой последовательности ячеек, организованных таким образом, что чтение информации из них происходит в обратном порядке по сравнению с записью. Доступ к стеку в каждый момент времени возможен только к одной ячейке, называемой вершиной стека. Чтобы не создавать новый вид память в составе ЭВМ в качестве стековой памяти используется основная память системы. В состав микропроцессора вводится специальный регистр, называемый указателем стека (SP). В нём записан адрес вершины стека. При записи в стек содержимое указателя стека уменьшается, а при чтении увеличивается. При таком алгоритме работы указателя стека, стек необходимо располагать в районе старших адресов доступной памяти.
Прерывания бывают внешние, внутренние и программные.
Внешние прерывания вызываются внешними сигналами (по отношению к микропроцессору).
Внутренние прерывания возникают автоматически при некоторых ситуациях, когда нормальное выполнение программы невозможно (например деление на 0).
В отличии от внешних и внутренних прерываний, которые являются аппаратными, программные прерывания представляют собой команды на которые процессор реагирует также как и на прерывания (отсюда их название).
Внешние прерывания подразделяются на маскируемые и немаскируемые. Реакция процессора на маскируемые прерывания может быть программно запрещена, что делает систему более гибкой.
При одновременном возникновении нескольких прерываний необходимо определить последовательность их обработки. В этом случае говорят о приоритетах прерываний. Иногда приоритеты жёстко зашиты в аппаратной части, иногда они могут быть изменены программно.
Приход сигнала запроса прерывания требует, чтобы микропроцессор начал выполнять определённую программу обработки прерывания. Скорее всего для каждого прерывания это своя программа. Т.е. микропроцессор должен определить устройство, которое вызвало прерывание и ответить этому устройству, что его прерывание начало обрабатываться. Этот процесс может быть организован несколькими способами и отвечает за него устройство, называемое арбитром прерываний:
Некоторые микропроцессоры имеют несколько входов запроса прерываний и к каждому их этих входов подключено одно устройство (например 1821ВМ85А).
Микропроцессор имеет 1 вход запроса прерывания к которому подключается выход арбитра прерываний. Он имеет несколько входов запроса прерываний, а логика его работы программируется.
Используется «ныряющий провод. Сигнал от микропроцессора проходит последовательно через все устройства. Внутренняя схема каждого устройства перехватывает этот сигнал если данное устройство выработало запрос прерывания или пропускает дальше, если устройства не вызывало прерывания. Это так называемый распределённый арбитр прерываний. Устройства расположенные ближе к микропроцессору имеют более высокий приоритет. Если к одному проводу запроса прерывания подключено несколько устройств, то в состав каждого их этих устройств вводится специальный программно доступный регистр, называемый регистром состояния. Одновременно с запросом прерывания устройство взводит определённый разряд в этом регистре. Процессор последовательно опрашивает регистры состояний и находит устройства, вызывавшее прерывание. Такой подход позволяет разделить несколько запросов пришедших одновременно.
При обработке прерываний в стек прежде всего записывается адрес команды, которая будет выполняться при выходе из подпрограммы обработки прерываний. В большинстве процессоров данная операция выполняется автоматически. При необходимости в стек записываются содержимое внутренних регистров микропроцессора, а также состояние флагов. Местонахождение программы обработки прерывания может быть также определено по разному:
Микропроцессор с несколькими входами запроса прерываний. Чаще всего начинает искать подпрограмму обработки прерывания в строго определённом месте в зависимости от того, по какому входу пришло прерывание (например в микропроцессоре 1821).
В системе с контроллером прерываний местоположение программы обработки прерываний задаётся программно для каждого входа прерываний.
Некоторые системы построены таким образом, что в ответ на сигнал микропроцессора о начале обработки прерывания, то устройство, которое вызвало прерывание выдаёт по шине данных так называемый вектор прерываний. Процессор по специальной таблице, хранящейся в памяти определяет местоположение подпрограммы обработки прерывания по входу вектора прерывания. В частном случае вместо вектора прерывания может выдаваться непосредственно адрес подпрограммы обработки прерывания.