Разработка схемы приоритетов прерываний

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

В зависимости от условий возникновения сигналы прерывания подразделяют на пять классов:

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

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

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

. Прерывание от устройств ввода-вывода позволяет процессору получать информацию о состоянии каналов и периферийных устройств и отвечать на эти сигналы. Это прерывание от устройств ввода-вывода формируется, когда канал и ПфУ не могут выполнить заданную операцию; при возникновении особой ситуации в процессе выполнения операции ввода-вывода (ошибка в информации, обрыв перфоленты и бумаги, замятие перфокарты и др.); в момент окончания операции ввода-вывода.

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

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

Первый уровень присваивается прерываниям от устройств ввода-вывода, второй уровень - внешним прерываниям, третий уровень - программным прерываниям и прерываниям при обращении к управляющей программе-диспетчеру. Эти два класса прерываний исключают взаимно друг друга, а поэтому имеют одинаковый приоритет.

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

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

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

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

Различают два метода обработки прерываний: с опросом и по вектору.

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

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

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

Назначение

Прекращение выполнения текущей программы и её управления при возникновении определенных условий

Условия работы

В условиях эксплуатации отсутствует вибрация и радиация.

Работоспособность должна сохраняться при следующих условиях:

Температура: t=20 С ± 10%

Влажность: 70%

Давление: 1Па

Основные параметры

На вход блока прерывания поступают 5 сигналов прерывания (Р1,Р2,Р3,Р4,Р5) и 5 сигналов маски защиты прерывания (z1,z2,z3,z4,z5). На выходе получаются 5 сигналов прерывания.

Технологические требования

Печатная плата изготовлена в условиях серийного производства по типовому технологическому процессу.

Конструктивные требования

Конструктивное изделие должно быть выполнено на одной печатной плате, имеющей габариты согласно ГОСТу.

Требования по быстродействию

Частота срабатывания схемы не более 100 Мгц.

Потребляемая мощность

Мощность потребления схемой не должна превышать 2160 мВт , ток потребления 454,7 мА.

Другие стьтьи в тему

Разработка системы управления акустической системы 5.1 на микроконтроллере AVR
Микропроцессоры и производные от них - микроконтроллеры - являются широко распространенным и при этом незаметным элементом инфраструктуры современного общества, основанного на электронике и коммуникациях. Исследования, проведенные в 2008 году, показали, что в каждом доме незаметно дл ...

Разработка структурной схемы местоопределения
1. Метод определения местоположения - угломерно-разностно-дальномерный. . Координаты приемных позиций по оси X :a , км=-25в , км=25 . Координаты приемных позиций по оси Y : Ya , км=0 . Пеленг из точки А на источник излучения : Θao=45 . ...

Разделы

Радиоэлектроника и телекоммуникации © 2018 : www.techelements.ru