Exception Processing
8-4
M68060 USER’S MANUAL
MOTOROLA
The MC68060 supports a 1024-byte vector table containing 256 exception vectors (see
Table 8-1). Motorola defines the first 64 vectors and reserves the other 192 vectors for user-
defined interrupt vectors. External devices can use vectors reserved for internal purposes
at the discretion of the system designer. External devices can also supply vector numbers
for some exceptions. External devices that cannot supply vector numbers use the autovec-
tor capability, which allows the MC68060 to automatically generate a vector number.
8.2 INTEGER UNIT EXCEPTIONS
The following paragraphs describe the external interrupt exceptions and the different types
of exceptions generated internally by the MC68060 integer unit. The following exceptions
are discussed:
Access Error
Address Error
*
For the Access Fault exception, refer to
“fault” refers to the PC of the instruction that caused the exception.
“next” refers to the PC of the next instruction that follows the instruction that caused the fault.
Refer to
Section 6 Floating-Point Unit
.
8.4.4.1 Program Counter (PC)
.
Table 8-1. Exception Vector Assignments
Vector
Number(s)
Vector
Offset (Hex)
Stack Frame
Format
Stacked
Program
Counter
—
—
—
fault
fault
next
next
next
fault
next
fault
fault
next
next
next
—
fault
next
—
next
next
next
next
next
next
next
next
next
—
—
—
—
—
fault
fault
—
next
*
Assignment
0
1
2
3
4
5
6
7
8
9
10
11
11
11
12
13
14
15
000
004
008
00C
010
014
018
01C
020
024
028
02C
02C
02C
030
034
038
03C
—
—
4
2
0
2
2
2
0
2
0
0
2
4
Reset Initial SSP
Reset Initial PC
Access Fault
Address Error
Illegal Instruction
Integer Divide-by-Zero
CHK, CHK2 Instructions
TRAPcc, TRAPV Instructions
Privilege Violation
Trace
Line 1010 Emulator (Unimplemented A-Line Opcode)
Line 1111 Emulator (Unimplemented F-Line Opcode)
Floating-Point Unimplemented Instruction
Floating-Point Disabled
Emulator Interrupt
Defined for MC68020 and MC68030, not used by MC68060
Format Error
Uninitialized Interrupt
(Unassigned, Reserved)
Spurious Interrupt
Level 1 Interrupt Autovector
Level 2 Interrupt Autovector
Level 3 Interrupt Autovector
Level 4 Interrupt Autovector
Level 5 Interrupt Autovector
Level 6 Interrupt Autovector
Level 7 Interrupt Autovector
TRAP #0–15 Instruction Vectors
0
0
0
16–23
24
25
26
27
28
29
30
31
32–47
48–55
56
57
58
59
60
61
62–63
64–255
040–05C
060
064
068
06C
070
074
078
07C
080–0BC
0C0–0DC
0E0
0E4
0E8
0EC
0F0
0F4
0F8–0FC
100–3FC
—
0
0
0
0
0
0
0
0
0
—
—
—
—
—
0
0
—
0
Floating-Point Exceptions
Defined for MC68030 and MC68851, not used by MC68060
Defined for MC68851, not used by MC68060
Defined for MC68851, not used by MC68060
(Unassigned, Reserved)
Unimplemented Effective Address
Unimplemented Integer Instruction
(Unassigned, Reserved)
User Defined Vectors (192)