Конспект лекций Часть 2 Челябинск 2015
Download 1.59 Mb. Pdf ko'rish
|
ftd
- Bu sahifa navigatsiya:
- Организация перехода к вызывающей программе
прерываний (рис. 24). Системы с большим значением глубины прерываний
обеспечивают более быструю реакцию на срочные запросы. 42 t t t Запрос прерываний Глубина преры- вания = 1 Глубина преры- вания ≠ 1 1 2 3 1 2 3 1 2 3 2 1 Рис. 24. Упрощенная диаграмма процесса прерывания в системах с различной глубиной Если запрос окажется не обслуженным к моменту прихода нового запроса от того же источника (т.е. того же приоритета), то возникает насыщение системы прерываний. При этом часть запросов прерывания будет утрачена, что для нормальной работы ВМ недопустимо, поэтому быстродействие ВМ, характеристики системы прерывания и частоты возникающих запросов должны быть строго согласованы, чтобы насыщение было невозможно. Характеристиками системы прерывания являются: • общее количество запросов прерывания – количество источников запросов прерывания; • тип представления прерывания – как правило, запрос прерывания представлен логическим уровнем сигнала; • приоритет прерывания – определяет очередь обработки каждого запроса прерывания, чем выше приоритет, тем меньше задержка в исполнении прерывающей программы для него; • время реакции – временной интервал между появлением запроса прерывания и началом выполнения прерывающей программы; • задержка прерывания – определяется суммарным временем на запоминание и восстановление программы; • глубина, обычно совпадает с числом уровней приоритетов в системе прерывания; • насыщение системы прерывания; • допустимые моменты прерывания программ. Организация перехода к вызывающей программе Процедура перехода к обработчику прерываний включает в себя: • передачу текущего вектора состояния прерываемой программы на хранение в стек; • выявление запроса прерывания с максимальным приоритетом; • загрузку в регистры процессора вектора прерывания (чаще всего – начального адреса). 43 Векторы прерывания хранятся в фиксированных ячейках оперативной памяти, и процессор должен предварительно получить адрес соответствующего вектора прерывания. Существуют две основные базовые структуры системы прерываний – радиальная и цепочечная. Характерной особенностью радиальной структуры (рис. 25) является то, что каждый источник запроса прерывания подключен через линию запроса прерываний к отдельному входу контроллера прерываний. Число подключаемых источников запроса прерываний определяется числом входов в систему прерывания. Представление запроса потенциалом предпочтительнее, поскольку система прерывания становится более устойчивой к помехам и сбоям аппаратуры. Это существенно снижает вероятность пропуска запроса от источника запроса прерывания. Основным преимуществом такой структуры является упрощение аппаратных средств источников запроса прерываний, относящихся к обслуживанию процесса прерывания, поскольку в их функции входит только формирование сигнала запроса прерывания. Все запросы прерываний фиксируются в регистре запроса прерываний записью логической 1 в соответствующие разряды. При поступлении любого запроса формируется общий сигнал прерывания, который транслируется в процессор, и инициирует процедуру поиска запроса с максимальным приоритетом, результатом выполнения которой является формирование кода адреса соответствующего вектора прерывания. Эта процедура может выполняться как программно, так и аппаратно. Затем процессор заканчивает выполнение текущей команды и посылает в контроллер сигнал подтверждения прерывания. В ответ на этот сигнал контроллер выставляет на ШД код адреса вектора прерывания. Процессор считывает код адреса вектора прерывания, сохраняет в стеке вектор текущего состояния прерываемой программы и осуществляет переход к прерывающей программе. Если вектор текущего состояния прерываемой программы автоматически сохраняется только частично, то операции по сохранению его остальных элементов возлагаются на пролог обработчика прерывания. 44 ИЗП – источник запросов прерывания; ЗП – сигнал запроса прерывания; ПП – сигнал подтверждения прерывания; ОСП – общий сигнал прерывания; ЛЗП – линия запросов прерывания; ЛПП – линия подтверждения прерывания; РгЗП – регистр запросов прерывания ЗП k Адрес вектора прерывания Шина данных (ШД) Процес- сор Контрол- лер пре- рываний ИЗП 1 ОСП ЛПП ПП ИЗП k ЛЗП i ЛЗП 1 ЛЗП k РгЗП Рис. 25. Радиальная структура системы прерывания В цепочечной структуре (рис. 26) к одной линии запроса прерываний может подключаться множество источников запроса прерываний. Каждая линия соответствует одному входу в систему прерывания и обладает собственным уровнем приоритета. Запросы от источников запроса прерываний всегда представлены уровнем потенциала. Запросы прерывания, поступающие с разных линий и имеющие различный приоритет, могут фиксироваться в соответствующих разрядах регистра запроса прерываний. Основным преимуществом такой структуры является практически неограниченное количество источников запроса прерываний, подключаемых к одному входу системы прерывания без снижения быстродействия. Однако сложность и объем аппаратуры поддержки системы прерывания в каждом источнике запроса прерывания существенно увеличиваются, что увеличивает стоимость системы прерывания вычислительной машины. Сигнал с линии запроса прерываний распространяется по цепочке источников запроса прерываний, подключенных к данной линии. Распространение этого сигнала блокируется ИЗП j , выставившим запрос. Получив сигнал подтверждения прерывания, ИЗП j выставляет на ШД код адреса вектора прерывания. Приоритет подключенных к одной линии устройств определяется положением источника запроса прерывания в цепочке распространения сигнала подтверждения прерывания. Это исключает необходимость выполнения процедуры поиска запроса с максимальным приоритетом. 45 2 Адрес вектора прерывания ЛПП k ЛПП ПП Шина данных (ШД) Процес- сор ОСП ИЗП j ИЗП 1 ИЗП m ЛЗП 1 ЛЗП i ЗП j ЛЗП k ИЗП – источник запросов прерывания; ЗП – сигнал запроса прерывания; ПП – сигнал подтверждения прерывания; ОСП – общий сигнал прерывания; ЛЗП – линия запросов прерывания; ЛПП – линия подтверждения прерывания ПП k ЛПП i ЛПП 1 Контрол- лер пре- рываний РгЗП 3 4 5 6 1 Рис. 26. Цепочечная структура системы прерывания (цифрами обозначена последовательность прохождения сигналов) Если линий запроса прерываний несколько, в контроллере прерывания выполняется процедура поиска возбужденной линии запроса прерывания с максимальным приоритетом. Такие системы прерывания являются наиболее динамичными даже при достаточно большом количестве источников запроса прерывания. После передачи управления соответствующему обработчику прерываний инициируется процедура поиска источника прерывания, которая состоит из последовательности условных операторов, анализирующих разряды регистра запроса прерывания, начиная с младшего, называемая программным полингом. При обнаружении единичного бита управление передается части обработчика, соответствующей найденному источнику прерываний. При этом общий сигнал прерывания сбрасывается. Для уменьшения времени поиска запроса прерывания с максимальным приоритетом может использоваться аппаратная реализация алгоритма, представленная на рис. 27 и называемая аппаратным полингом. |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling