GR740-UM-DS, Nov 2017, Version 1.7 54 www.cobham.com/gaisler
GR740
The prioritization follows the SPARC V8 standard.
The fp_exception trap is deferred. The data_store_error is delivered as a deferred exception but is
non-resumable and therefore classed as interrupting in above table.
For data_store_error, see also the AMBA ERROR propagation description in section 5.10.
6.2.14 Single vector trapping (SVT)
Single-vector trapping (SVT) is an SPARC V8e [V8E] option to reduce code size for embedded appli-
cations. When enabled, any taken trap will always jump to the reset trap handler (%tbr.tba + 0). The
trap type will be indicated in %tbr.tt, and must be decoded by the shared trap handler. SVT is enabled
by setting bit 13 in %asr17.
Table 37. Trap allocation and priority
Trap TT Pri Description Class
reset 0x00 1 Power-on reset Interrupting
data_store_error 0x2b 2 write buffer error during data store Interrupting
instruction_access_exception 0x01 3 Error or MMU page fault during instruction fetch Precise
privileged_instruction 0x03 4 Execution of privileged instruction in user mode Precise
illegal_instruction 0x02 5 UNIMP or other un-implemented instruction Precise
fp_disabled 0x04 6 FP instruction while FPU disabled Precise
cp_disabled 0x24 6 CP instruction while Co-processor disabled Precise
watchpoint_detected 0x0B 7 Hardware breakpoint match Precise
window_overflow 0x05 8 SAVE into invalid window Precise
window_underflow 0x06 8 RESTORE into invalid window Precise
mem_address_not_aligned 0x07 10 Memory access to un-aligned address Precise
fp_exception 0x08 11 FPU exception Deferred
cp_exception 0x28 11 Co-processor exception Deferred
data_access_exception 0x09 13 Access error during data load, MMU page fault Precise
tag_overflow 0x0A 14 Tagged arithmetic overflow Precise
division_by_zero 0x2A 15 Divide by zero Precise
trap_instruction 0x80 - 0xFF 16 Software trap instruction (TA) Precise
interrupt_level_15 0x1F 17 Asynchronous interrupt 15 Interrupting
interrupt_level_14 0x1E 18 Asynchronous interrupt 14 Interrupting
interrupt_level_13 0x1D 19 Asynchronous interrupt 13 Interrupting
interrupt_level_12 0x1C 20 Asynchronous interrupt 12 Interrupting
interrupt_level_11 0x1B 21 Asynchronous interrupt 11 Interrupting
interrupt_level_10 0x1A 22 Asynchronous interrupt 10 Interrupting
interrupt_level_9 0x19 23 Asynchronous interrupt 9 Interrupting
interrupt_level_8 0x18 24 Asynchronous interrupt 8 Interrupting
interrupt_level_7 0x17 25 Asynchronous interrupt 7 Interrupting
interrupt_level_6 0x16 26 Asynchronous interrupt 6 Interrupting
interrupt_level_5 0x15 27 Asynchronous interrupt 5 Interrupting
interrupt_level_4 0x14 28 Asynchronous interrupt 4 Interrupting
interrupt_level_3 0x13 29 Asynchronous interrupt 3 Interrupting
interrupt_level_2 0x12 30 Asynchronous interrupt 2 Interrupting
interrupt_level_1 0x11 31 Asynchronous interrupt 1 Interrupting