Cтраница 2
Это позволяет подпрограмме обслуживания прерывания изменять приоритет прерываний, разрешаемых во время ее выполнения. Как показано в верхней части рис. 5.12, программируемая маска реализуется введением в логику управления приоритетными векторными прерываниями регистра маски и компаратора. Регистр маски считается портом ВВ, и поэтому записать в него 3-битную маску можно с помощью команды вывода. Вектор прерываний от шифратора приоритетов подается в компаратор по линиям А, а маска подается в компаратор по линиям В. Если приоритет прерывания выше маски, триггер прерывания устанавливается; в противном случае запрос игнорируется. Если этот бит установлен в 1, он перевешивает выход компаратора. [16]
Хотя в МП 68020 предусмотрено только семь уровней приоритетов прерываний, вследствие наличия двух режимов может быть обеспечена приоритетная обработка прерываний от 14 источников. Для этого каждому уровню приоритета ставятся в соответствие два источника прерываний. Обработка прерывания от одного из них производится в режиме перехода по вектору прерывания, от второго - в режиме автоматической генерации вектора прерывания. [17]
Маска прерывания отражает текущий уровень приоритета ядра DSP и показывает уровень приоритета прерывания, необходимый для прерывания процессора. Уровень приоритета может меняться программно. [18]
Устанавливая маску, запрещающую прерывания ввода-вывода, программа получает возможность управлять приоритетом прерываний ввода-вывода выборочно от каналов. Приоритет устройств, подключенных к каналу, является фиксированным и не может контролироваться программой. Команда ПРОВЕРИТЬ ВВОД-ВЫВОД позволяет программе сбрасывать сигналы прерывании выборочно от ВУ. [19]
За исключением условий, связанных с завершением передачи данных, текущее распределение приоритетов прерываний среди устройств данного канала может быть аннулировано при выдаче в канал команд НАЧАТЬ ВВОД-ВЫВОД, НАЧАТЬ ВВОД-ВЫВОД С БЫСТРЫМ ОТКЛЮЧЕНИЕМ, ПРОВЕРИТЬ ВВОД-ВЫВОД, ОСВОБОДИТЬ ВВОД-ВЫВОД, ОСТАНОВИТЬ ВВОД-ВЫВОД или ОСТАНОВИТЬ УСТРОЙСТВО. После завершения действий, вызванных командой, если распределение приоритетов было аннулировано, канал возобновляет просмотр условий прерывания и заново устанавливает приоритеты. [20]
Существует оптимальная последовательность подключения модулей к шине UNIBUS, которая влияет на назначение модулям приоритетов прерываний и на скорость передачи информации по шине. Желательно размещать модули таким образом, чтобы их конфигурация как можно меньше отличалась от оптимальной. [21]
В процессе работы машины могут возникнуть одновременные запросы на прерывания различных классов, поэтому введены приоритеты прерываний по классам. Самый высокий приоритет имеет прерывание по сбою машины. После него в порядке общей приоритетности следуют вводно-выводные, внешние и программные прерывания, включая прерывания для обращения к супервизору. Программные прерывания и прерывания для обращения к супервизору взаимно исключают друг друга, так как запросы на них не могут формироваться одновременно. Поэтому прерывания этих классов имеют одинаковый приоритет. [22]
К данному классу относятся БИС, ориентированные на реализацию специфических функций, таких как обработка приоритетов прерываний, управление прямым доступом к памяти системы, подсчет числа событий или таймирование. Использование системных контроллеров резко снижает аппаратные затраты и облегчает проектирование микропроцессорных систем, делая их блочными, опирающимися на набор стандартных решений. [23]
Каскадная цепь ( daisy chain) - каскадное подключение к ЦП периферийных устройств, при котором позиция в цепи определяет приоритет прерывания. [24]
В DSP56002 регистр уровней приоритета прерываний расширен: добавлены биты 16 - TIL1 и 17 - TIL0, которые задают уровень приоритета прерываний от таймера. Источники прерываний и их уровни приоритета указаны в табл. 2.9. Каждый источник прерываний имеет свой вектор для вызова процедуры обработки прерывания, расположенной в младших 64 словах памяти программ. При переходе к обработке исключений текущая инструкция выполняется, если только выбранное слово не является первым словом двухсловной инструкции, иначе выполнение инструкции прерывается. [25]
![]() |
Определение приоритетности прерываний с помощью дейзи-це-почки. [26] |
Проблема очередности обслуживания запросов на прерывание, поступивших одновременно от нескольких устройств, может быть решена, если определить для каждого устройства приоритет прерывания. Из устройств, запросивших прерывание, центральный процессор в первую очередь будет обслуживать устройство с наивысшим приоритетом. Приоритет устройству может быть либо задан программно, либо реализован аппаратно. При аппаратной реализации приоритет определяется внешними устройствами, и центральный процессор программно опрашивает устройства одно за другим, от высшего приоритета к низшему. Один из аппаратных методов заключается в использовании блока управления приоритетами прерываний. Этот блок не только управляет приоритетами прерываний, но может также выполнять функции блока управления прерываниями. Микро-ЭВМ обычно включает в себя этот блок, если разрешается прерывание центрального процессора несколькими устройствами. [27]
Если для обнаружения устройства, требующего обслуживания, используется способ опроса, то какое из указанных ниже действий должно выполнять устройство ввода-вывода: а) осуществить прерывание работы микропроцессора; б) устанавливать приоритет прерывания; в) ждать запуска программы опроса; г) работать со скоростью, не превышающей 110 бод. [28]
![]() |
Структура блока прерываний. [29] |
РЗП - регистр запросов на прерывания, СЗЗ - схема РССП записи запросов, СП - сбой [ 36 - 3Sl процессора, ЗПП - запросы на программные прерывания, ЗОС - запрос на обращение к супервизору, ЗВП - запросы на внешние прерывания, ЗВВП - запросы на вводо-вы-водные прерывания, СПП - схема приоритетов прерываний, РПП - регистр приоритетов прерываний, РАС - регистр адреса ССП, ШПП - шифратор программных прерываний, СПВВП - схема приоритетов БВОДО-ВЫВОДНЫХ прерываний, РУК - регистр управления каналами, ШНК - шифратор номера канала, РССП - регистр слова состояния программы. [30]