Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие.docx
Скачиваний:
84
Добавлен:
08.05.2015
Размер:
722.01 Кб
Скачать

1.5.2. Возможные структуры систем прерывания.

Конкретные технические реализации систем прерывания имеют множество вариантов и зависят от типа используемого процессора, структуры системного интерфейса, целевого назначения ЭВМ. В то же время все они являются сложными комбинациями небольшого количества базовых структур систем прерывания. Ниже рассматриваются две основные базовые структуры – радиальная и цепочечная.

Радиальная структура

Характерной особенностью радиальной структуры является то, что каждый ИЗП (в частном случае ПУ) подключен через ЛЗП к отдельному входу контроллера прерываний. В этом случае число подключаемых ИЗП определяется числом входов в систему прерывания. Поступающие запросы, как правило, фиксируются в разрядах РгЗП. Запросы от ИЗП могут быть представлены как уровнем потенциала, так и его перепадом, поскольку поступают в контроллер по отдельным линиям. Однако представление запроса потенциалом более предпочтительно, поскольку система прерывания становится более устойчивой как к помехам, так и к сбоям аппаратуры. Это существенно снижает вероятность пропуска запроса от ИЗП.

Основным преимуществом такой структуры является упрощение аппаратных средств ИЗП, относящихся к обслуживанию процесса прерывания, поскольку в их функции входит только формирование сигнала запроса прерывания, т.е. необходим только запросчик.

Цепочечная структура

Характерной особенностью цепочечной структуры является то, что к одной ЛЗП может подключаться множество ИЗП. Каждая ЛЗП соответствует одному входу в систему прерывания и обладает собственным уровнем приоритета. В отличие от радиальной структуры запросы от ИЗП всегда представлены уровнем потенциала. Поэтому выходные каскады аппаратных средств формирования запросов в каждом ИЗП представляют собой ключи с открытым коллектором, объединенные по схеме монтажного "или". Это позволяет исключить потерю запросов, одновременно выставленных разными источниками на одну ЛЗП. Запросы прерывания, поступающие с разных ЛЗП и имеющие различный приоритет, могут фиксироваться (как и в предыдущем случае) в разрядах РгЗП.

Основным преимуществом такой структуры является практически неограниченное количество ИЗП, подключаемых к одному входу системы прерывания (одной ЛЗП) без снижения быстродействия. Однако сложность и объем аппаратуры поддержки системы прерывания в каждом ИЗП существенно увеличиваются, что увеличивает стоимость системы прерывания и ЭВМ в целом. Помимо запросчика каждый ИЗП должен содержать также аппаратуру формирования кода адреса вектора прерывания. Да и аппаратура самого запросчика также усложняется. Кроме того, необходимо принять меры для того, чтобы при отсутствии любого ИЗП цепь распространения сигнала ПП не размыкалась. Это обеспечивается либо специальной конструкцией контактов слота, либо перемычками на системной плате.

Несмотря на усложнение и удорожание подобных систем прерывания по сравнению с радиальными, они очень широко используются в вычислительных системах самой разной архитектуры и назначения.

1.5.3. Характеристики систем прерывания.

Эффективность систем прерывания ЭВМ может оцениваться по весьма многочисленным характеристикам, которые отражают особенности их технической реализации. Однако для изучения общих принципов построения систем прерывания достаточно рассмотреть только самые обобщенные. К их числу относятся следующие характеристики.

Общее количество запросов прерывания.

Количество запросов прерывания (источников запросов прерывания – ИЗП) существенно различается у ЭВМ различных типов и может достигать десятков. В системах прерывания радиальной структуры это понятие может совпадать с понятием количества входов в систему прерывания. При цепочечной организации системы прерывания эти понятия не совпадают.

Время реакции.

Время реакции определяется как временной интервал между появлением запроса прерывания и началом выполнения прерывающей программы.

Задержка прерывания (издержка прерывания).

Задержка прерывания (tзад) определяется суммарным временем на запоминание (tз) и восстановление (tв) программы:

.

Глубина прерывания.

Глубина прерывания определяет максимальное число программ, которые могут прерывать друг друга. Если после перехода от основной программы к прерывающей обслуживание остальных запросов запрещено, то считается, что система имеет глубину прерывания, равную 1. Глубина равна n, если допускается последовательное прерывание до n программ. Глубина прерывания обычно совпадает с числом уровней приоритетов в системе прерывания. Если глубина прерывания не равна 1, то упрощенно это можно изобразить диаграммой. Здесь имеется в виду, что приоритет прерываний возрастает у каждого следующего запроса. Системы с большим значением глубины прерывания обеспечивают более быструю реакцию на срочные запросы.

Насыщение системы прерывания.

Если запрос окажется не обслуженным к моменту прихода нового запроса от того же источника (т.е. того же приоритета), то возникает явление, называемое насыщением системы прерывания. В этом случае часть запросов прерывания будет утрачена, что для нормальной работы ЭВМ недопустимо. Поэтому быстродействие ЭВМ, характеристики системы прерывания и частоты возникающих запросов должны быть строго согласованы, чтобы насыщение было невозможно.

Допустимые моменты прерывания программ.

В большинстве случаев прерывания допускаются после выполнения любой текущей команды, когда время реакции на прерывание определяется, в основном, длительностью выполнения одной команды.

При работе ЭВМ с быстрыми технологическими процессами в реальном масштабе времени (т.е. в контурах управления реальных физических процессов) это время может оказаться недопустимо большим. Кроме того, существуют задачи, при выполнении которых требуется немедленная реакция на ошибку, обнаруженную, например, аппаратурой контроля, чтобы не допустить выполнения ошибочно сформированного кода команды. Такие ситуации характерны для управляющих ЭВМ военного назначения.

В этом случае в системе прерывания реализуется возможность прерывания после любого такта выполнения команды программы. Однако это требует запоминания, а потом восстановления гораздо большего объема информации, чем в случае прерывания после окончания команды, поэтому такая организация прерываний возможна только в ЭВМ с быстродействующей сверхоперативной памятью достаточного объема.

Число уровней прерываний.

Уже отмечалось, что в ЭВМ число различных источников запросов (причин) прерывания может достигать десятков и даже сотен. Однако в ряде случаев многие запросы поступают от групп однотипных устройств, для обслуживания которых требуется одна и та же прерывающая программа (обработчик). Запросы от однотипных устройств целесообразно объединить в группы, каждой из которых будет соответствовать свой сигнал запроса прерывания.

Уровнем или классом прерывания называется совокупность запросов, инициирующих одну и ту же прерывающую программу (обработчик).

Информация о действительной причине прерывания (конкретном источнике запроса), породившей запрос данного класса, содержится в коде прерывания, который отражает состояние разрядов РгЗП, относящихся к данному классу прерываний. В процессе обработки прерывания эти разряды (содержащийся в них код) подвергаются анализу. Такое объединение прерываний в классы уменьшает объем аппаратуры, но замедляет работу системы прерывания. После передачи управления прерывающей программе соответствующий триггер РгЗП сбрасывается.