Вы должны маскировать каждый бит, чтобы проверить, откуда пришло прерывание. Процедура обработчика исключений показана здесь: ExcHandler http://i47.tinypic.com/5yt47c.png
Вы можете увидеть руководство для вашего оборудования, в котором говорится, откуда пришло прерывание, и часто есть коды ошибок, которые вы можете загрузить в регистр и сравнить с регистром EPIE, чтобы увидеть, было ли исключение ловушкой или прерыванием, не забудьте сбросить EPIE регистр состояния ошибки) перед возвратом из ошибки и включением битов прерываний в регистре управления процессорами, чтобы аппаратные средства могли выполнять прерывания.
Это схема, которую я использовал при кодировании обработчика исключений для Nios II, процедура должна быть аналогичной для MIPS32.
Язык ассемблера MIPS , MIPS: прерывания и исключения, стр. 22 * 1010 *