Обработка прерываний. Вызов прерывания происходит либо при запросе внешним устройством по одному из входов прерывания (IRQ3-0)

Вызов прерывания происходит либо при запросе внешним устройством по одному из входов прерывания (IRQ3-0), либо при возникновении какого-либо внутреннего события, например переполнения стека, прерывания таймера, пользовательского прерывания. Прерывание приводит к передаче управления на заранее определенный адрес – подпрограмму обработки прерывания. Процессор семейства ADSP-21000 назначает уникальный адрес для обработчика каждого распознаваемого прерывания. На один обработчик отводится восемь инструкций; более длинные обслуживающие программы могут быть приспособлены для перехода в другую область памяти. При вызове прерывания в стек ПС помещается адрес возврата. Если произошло внешнее прерывание или прерывание от таймера, то дополнительно к этому в стек состояния помещаются текущие значения регистров ASTAT и MODE1. Возвращение из прерывания осуществляется командой RTI, при выполнении которой из стека выталкивается адрес возврата (если выполнялась обработка внешнего прерывания или прерывания от таймера – то выталкиваются и значения регистров ASTAT и MODE1 из стека состояния).


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: