Мегаобучалка Главная | О нас | Обратная связь


Принципы организации системы прерываний процессора



2020-02-03 186 Обсуждений (0)
Принципы организации системы прерываний процессора 0.00 из 5.00 0 оценок




 

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

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

 

 

Запросы прер-ий могут инициал-ся ситуациями, возникающими внутри ЭВМ: аппаратные сбои (аппар прерыв-я), вычислительные ситуации (деление на 0, переполнение и др), требования в/в перефер-ых устройств.

Запросы прер-я из внешней среды могут возникать от других ЭВМ, с к-ми данная связана в сеть, от аварийных датчиков, если ЭВМ работает АСУТП и др.

ЭВМ имеет набор аппар-ых и прогр-ых средств для обработки прер-ий, к-ый получил назв-е системы прер-ий процессора. Осн назначение сист-ы прер-ий сост из 2-х ф-ций:

– Запомнить состояние прерванной прогр-ы и перейти к вып-ю прерыв-щей прогр-ы

– Восстановить состояние прерв-ой прогр-ы и вернуться к ее вып-ю.

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

По запросу прер-я процессор сохраняет ССП прерванной прогр-ы в стеке или в спец-ой ячейки ОП, после чего из ОП извлекается ССП прерыв-щей прогр-ы (прогр-ы обработки прер-ий) и оно загружается в соотв-щие рег-ры. После этого начинается вып-е прерыв-щей прогр-ы. Для возврата от прер-щей прогр-ы к прер-ой в системе команд проц-ра есть спец команда IRET, по к-ой осуществ-ся возврат к прерв-ой прогр-е. Эта команда инициирует следующ действия: из стека или ячейки ОП извлекается ССП прерв-ой прогр-ы и загружаится в соотв-щие рег-ры. Бит прер-ий IF рег-ра флажков сбрасывается в 0 и осущ-ся прогр-ое восстановление содержимого других рег-ов, после чего происх продолжение вып-я прерв-ой прогр-ы с того места, где она была приостановлена.

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

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

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

 


Контроллер прерываний

 

КП – устройство, предназначенное для разрешения конфликтов между запросами прерываний и формирования вектора прерываний. При формировании запросов прер-ий используется код прер-ий, к-ый в общем случае имеет вид: P=P1P2…P3, где Pi – сигнал, к-ый поступает по i-ой шине прерываний Pi={0,1}. Если имеет место прер-е с номером I, соотв-щее номеру разряда кода прер-я, то Pi=1. Для управления запросами прер-ий (ЗП) исп код маски, к-ая имеет ту же разрядность, что и код прер-ия. Она позвол маскировать прер-я, устанавливая в каком-либо бите 0. сигнал запросов прер-ия явл входным для КП. M=M1M2…Mn. Сигнал запроса прер-ий, явл-щийся выходным для КП, формируется как конъюнкция кода прер-ия и маски. Если в соотв-щем бите кода маски установить 0, то это запрещает обработку прер-ия с номером, соотв-щем номеру бита в коде маски, в к-ом 0.

Структ схема КП показ на рис.

 

 

РгЗП – рег запросов прер-ий, исп для хранения кода ЗП. Строится на Д-триггерах, имеющих возможность блокировки.

СВЛ – схема выделения левой единицы. Преобразует код запроса прер-ий в унитарный код путем оставления крайней левой единицы в коде ЗП.

ШП – шифратор приоритетов. Преобразует унитарный код с выхода СВЛ в двоичный код вектора прер-ий, к-ый исп-ся процессором для нахождения адреса ячейки памяти дескрипторной таблицы, по к-ому в ОП хранится ССП прерыв-щей прогр-ы.

СР – схема сравнения. Сравнение кода вектора прер-ий и кода, поступ-щего из РТС.

РТС – регистр технического состояния, к-ый хранит код текущего состояния (КТС).

ТЗП – триггер запросов прер-ий. Реализован как Д-триггер с прямым динамическим управлением и с конъюнктивной записью по информ-му входу Д.

ТБП – триггер блокировки прер-я. Реализован как DRS-тг, запись инф-ии в к-ый может осуществляться сигналом низкого уровня на входе S, либо синхронно при наличии на входе С перепада из 1 в 0

 



2020-02-03 186 Обсуждений (0)
Принципы организации системы прерываний процессора 0.00 из 5.00 0 оценок









Обсуждение в статье: Принципы организации системы прерываний процессора

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Почему человек чувствует себя несчастным?: Для начала определим, что такое несчастье. Несчастьем мы будем считать психологическое состояние...
Модели организации как закрытой, открытой, частично открытой системы: Закрытая система имеет жесткие фиксированные границы, ее действия относительно независимы...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (186)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.006 сек.)