70
32000D–04/2011
AVR32
8.3.1.5
Bus Error Exception on Data Access
The Bus Error on Data Access exception is generated when the data bus detects an error condi-
tion. This exception is caused by events unrelated to the instruction stream, or by data written to
the cache write-buffers many cycles ago. Therefore, execution can not be resumed in a safe
way after this exception. The value placed in RAR_EX is unrelated to the operation that caused
the exception. The exception handler is responsible for performing the appropriate action.
*(--SP
SYS)
= PC of first non-issued instruction;
*(--SP
SYS)
= SR;
SR[R] = 0;
SR[J] = 0;
SR[M2:M0] = B’110;
SR[EM] = 1;
SR[GM] = 1;
PC = EVBA + 0x08;
8.3.1.6
Bus Error Exception on Instruction Fetch
The Bus Error on Instruction Fetch exception is generated when the data bus detects an error
condition. This exception is caused by events related to the instruction stream. Therefore, exe-
cution can be restarted in a safe way after this exception, assuming that the condition that
caused the bus error is dealt with.
*(--SP
SYS)
= PC of first non-issued instruction;
*(--SP
SYS)
= SR;
SR[R] = 0;
SR[J] = 0;
SR[M2:M0] = B’110;
SR[EM] = 1;
SR[GM] = 1;
PC = EVBA + 0x0C;
8.3.1.7
NMI Exception
The NMI exception is generated when the NMI input line to the core is asserted. The NMI excep-
tion can not be masked by the SR[GM] bit. However, the core ignores the NMI input line when
processing an NMI Exception (the SR[M2:M0] bits are B’111). This guarantees serial execution
of NMI Exceptions, and simplifies the NMI hardware and software mechanisms.
Since the NMI exception is unrelated to the instruction stream, the instructions in the pipeline are
allowed to complete. After finishing the NMI exception routine, execution should continue at the
instruction following the last completed instruction in the instruction stream.
*(--SP
SYS)
= PC of first noncompleted instruction;
*(--SP
SYS)
= SR;
SR[R] = 0;
SR[J] = 0;
SR[M2:M0] = B’111;
SR[EM] = 1;
SR[GM] = 1;
PC = EVBA + 0x10;