
73
32000D–04/2011
AVR32
8.3.1.11
INT0 Exception
The INT0 exception is generated when the INT0 input line to the core is asserted. The INT0
exception can be masked by the SR[GM] bit, and the SR[I0M] bit. Hardware automatically sets
the SR[I0M] bit when accepting an INT0 exception, inhibiting new INT0 requests when process-
ing an INT0 request.
The INT0 Exception handler address is calculated by adding EVBA to an interrupt vector offset
specified by an interrupt controller outside the core. The interrupt controller is responsible for
providing the correct offset.
Since the INT0 exception is unrelated to the instruction stream, the instructions in the pipeline
are allowed to complete. After finishing the INT0 exception routine, execution should continue at
the instruction following the last completed instruction in the instruction stream.
*(--SP
SYS)
= R8;
*(--SP
SYS)
= R9;
*(--SP
SYS)
= R10;
*(--SP
SYS)
= R11;
*(--SP
SYS)
= R12;
*(--SP
SYS)
= LR;
*(--SP
SYS)
= PC of first noncompleted instruction;
*(--SP
SYS)
= SR;
SR[R] = 0;
SR[J] = 0;
SR[M2:M0] = B’010;
SR[I0M] = 1;
PC = EVBA + INTERRUPT_VECTOR_OFFSET;
8.3.1.12
Instruction Address Exception
The Instruction Address Error exception is generated if the generated instruction memory
address has an illegal alignment.
*(--SP
SYS)
= PC;
*(--SP
SYS)
= SR;
TLBEAR = FAILING_VIRTUAL_ADDRESS;
TLBEHI[VPN] = FAILING_PAGE_NUMBER;
SR[R] = 0;
SR[J] = 0;
SR[M2:M0] = B’110;
SR[EM] = 1;
SR[GM] = 1;
PC = EVBA + 0x14;