Datasheet
100
32059L–AVR32–01/2012
AT32UC3B
Figure 12-1. Timer/Counter clock connections on RevB
7. Spurious interrupt may corrupt core SR mode to exception
If the rules listed in the chapter `Masking interrupt requests in peripheral modules' of the
AVR32UC Technical Reference Manual are not followed, a spurious interrupt may occur. An
interrupt context will be pushed onto the stack while the core SR mode will indicate an
exception. A RETE instruction would then corrupt the stack.
Fix/Workaround
Follow the rules of the AVR32UC Technical Reference Manual. To increase software
robustness, if an exception mode is detected at the beginning of an interrupt handler,
change the stack interrupt context to an exception context and issue a RETE instruction.
8. CPU cannot operate on a divided slow clock (internal RC oscillator)
CPU cannot operate on a divided slow clock (internal RC oscillator).
Fix/Workaround
Do not run the CPU on a divided slow clock.
9. LDM instruction with PC in the register list and without ++ increments Rp
For LDM with PC in the register list:
the instruction behaves as if the ++ field is always set,
i.e. the pointer is always updated. This happens even if the ++ field is cleared. Specifically,
the increment of the pointer is done in parallel with the testing of R12.
Fix/Workaround
None.
10. RETE instruction does not clear SREG[L] from interrupts
The RETE instruction clears SREG[L] as expected from exceptions.
Fix/Workaround
When using the STCOND instruction, clear SREG[L] in the stacked value of SR before
returning from interrupts with RETE.
11. Exceptions when system stack is protected by MPU
RETS behaves incorrectly when MPU is enabled and MPU is configured so that system
stack is not readable in unprivileged mode.
Fix/Workaround
Workaround 1: Make system stack readable in unprivileged mode,
or
Workaround 2: Return from supervisor mode using rete instead of rets. This requires: 1.
Changing the mode bits from 001b to 110b before issuing the instruction.
Updating the mode bits to the desired value must be done using a single mtsr instruction so
Source Name Connection
Internal TIMER_CLOCK1 32KHz Oscillator
TIMER_CLOCK2 PBA Clock / 4
TIMER_CLOCK3 PBA Clock / 8
TIMER_CLOCK4 PBA Clock / 16
TIMER_CLOCK5 PBA Clock / 32
External XC0
XC1
XC2