- •Утверждено редакционно-издательским советом Тюменского государственного нефтегазового университета
- •Введение
- •Микропроцессоры
- •Микропроцессор и его основные технические характеристики
- •1.2. Состав микропроцессорного комплекта кр580
- •Микропроцессор intel 8080 (kp580bm80a)
- •Понятие машинного такта, цикла команды и машинного такта
- •1.3.2. Извлечение микропроцессором кода команды (данных) из памяти
- •Основные состояния микропроцессора
- •Система команд микропроцессора
- •Достоинства и недостатки микропроцессора
- •Intel 8080
- •Некоторые практические примеры
- •Двунаправленный шинный формирователь и буферный регистр
- •Двунаправленный шинный формирователь кр580ва86(87)
- •Буферный регистр кр580ир82(83)
- •Сходства и различия буферного регистра и
- •Программируемый параллельный интерфейс кр580вв55
- •Выбор порта или регистра управляющего слова
- •Направление передачи данных в ppi
- •Режимы работы программируемого параллельного интерфейса
- •Программирование ppi
- •Программируемый контроллер прерываний кр580вн59
- •Режимы работы контроллера прерываний
- •Характеристика управляющих слов для настройки контроллера прерываний
- •Особенности обслуживания при каскадировании контроллера прерываний
- •Характеристика и формат управляющих слов
- •Анализ приоритетов обслуживания при введении аппаратной избыточности
- •Программируемый таймер кр580ви53
- •Программирование таймера
- •6.1.1. Считывание показаний счетчика
- •Характеристика режимов работы таймера
- •5.Четвертый режим.
Анализ приоритетов обслуживания при введении аппаратной избыточности
Рис. 19
Используется метод схемного последовательного опроса (см. рис. 19.). По данному методу предполагается, что имеется ряд внешних устройств, инициирующих запрос на прерывание. По каждому запросу предполагается своя подпрограмма обслуживания прерываний. Используемый микропроцессор имеет всего один вход INT (например, КР580ВМ80А). Схема работает следующим образом:
В исходном состоянии триггер Т сброшен, запросов от внешних устройств нет; счетчик СТ через дешифратор DС последовательно опрашивает запросные линии внешних устройств.
Поочередно формируется сигнал на логических элементах & сборки «И»-«ИЛИ». Сборка логических элементов И* закрыта, т.к. разрешающий сигнал «1» с системной шины данных отсутствует.
При появлении одного или нескольких запросов на прерывание от внешних устройств по первому из них срабатывает соответствующий элемент &, на выходе сборки «И»-«ИЛИ» появляется сигнал, поступающий на синхровход триггера. Триггер устанавливается в «1» и формирует запрос на прерывание микропроцессору. Этим же сигналом запрещается работа счетчика. На выходе счетчика фиксируется m-разрядный двоичный код, который соответствует номеру внешнего устройства, выставившего запрос на прерывание. Микропроцессор переходит на подпрограмму обработки прерываний. В этой подпрограмме обработки прерываний формируется сигнал разрешения («1») для сборки И*. Логические элементы & этой сборки открываются, код со счетчика поступает на системную шину данных, считывается микропроцессором, и является адресом перехода на подпрограмму обслуживания прерываний для данного внешнего устройства.
Схема, реализующая передачу вектора прерываний в МП, не обладающий способностью реакции на векторное прерывание
Простые микропроцессоры (INTEL 8080) не обладают способностью реагировать на векторное прерывание. Они имеют один вход INT и фиксированный адрес перехода на обслуживающую программу. Появление сигнала на входе INT вызывает передачу управления в фиксированную ячейку памяти с последующим сохранением служебной информации в стеке для возврата к прерванной программе. Предлагаемая схема (см. рис. 20.) позволяет повысить функциональные возможности микропроцессора до уровня, когда он способен различать запросы от внешних устройств и соответствующим образом реагировать на них.
Рис. 20
Х |
Код операции |
Х+1 |
А' |
А' – адрес перехода.
Таким образом, при получении хотя бы одного запроса от внешнего устройства, который поступает на вход приоритетного дешифратора DC1, на его выходе формируется сигнал запроса на прерывание для микропроцессора, который вызывает переход микропроцессора к фиксированной прерывающей подпрограмме.
В начале этой подпрограммы в ячейках Х и Х+1 записана двухбайтная команда передачи управления по адресу А'. При попытке выбора микропроцессором адреса А' из ячейки Х+1 происходит следующее: дешифратор DC2, обнаружив, что адрес на шине = Х+1, формирует на выходе сигнал, запрещающий работу основной памяти, и отключает ее от системной шины данных. Одновременно по этому же сигналу разрешается работа дополнительной памяти ПЗУ*, и происходит ее подключение к системной шине данных.
Поскольку дешифратор DC1 выбрал один из запросов от внешнего устройства, с его выхода на вход дополнительной памяти поступит соответствующий этому запросу код, который используется для формирования дополнительным ПЗУ адреса передачи управления.
Таким образом, микропроцессор, не подозревая о подлоге, отрабатывает процедуру перехода к программе, считав начальный адрес по шине данных, и ведет себя, по существу, также, как и при отработке векторных прерываний.