Почему мой новый обработчик прерываний PowerPC аварийно завершает работу только при включенном кэше - PullRequest
0 голосов
/ 02 октября 2009

Я использую PowerPC 750 и только начал экспериментировать с внешним прерыванием.

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

Это удивляет меня, потому что:

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

  • Периферийное устройство находится в пространстве, обозначенном как без кэширования в DBAT

Есть ли что-то, что вы должны делать с кешем / адресацией после внешнего исключения, которое я пропустил?

1 Ответ

0 голосов
/ 13 октября 2009

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

...