9- 20
M68040 USER’S MANUAL
MOTOROLA
9.6 FLOATING-POINT EXCEPTIONS
There are two classes of floating-point-related exceptions: nonarithmetic floating-point
exceptions and arithmetic floating-point exceptions. The latter relates to the handling of
arithmetic exceptions caused by floating-point activity, and the former includes
unimplemented floating-point instructions and unsupported data types not related to the
handling of arithmetic exceptions. Format error and FTRAPcc exceptions may seem to be
floating-point related, but are considered IU exceptions (see Section 8 Exception
Processing). The following sections detail floating-point exceptions and how the
MC68040 and M68040FPSP handle them. Table 9-9 lists the vector numbers related to
floating-point exceptions.
Table 9-9. Floating-Point Exception Vectors
Vector
Number
Vector Offset
(Hex)
Assignment
11
48
49
50
51
02C
0C0
0C4
0C8
0CC
Floating-Point Unimplemented Instruction
(also used for F-line instruction)
Floating-Point Branch or Set on Unordered Condition
Floating-Point Inexact Result
Floating-Point Divide by Zero
Floating-Point Underflow
52
53
54
55
0D0
0D4
0D8
0DC
Floating-Point Operand Error
Floating-Point Overflow
Floating-Point SNAN
Floating-Point Unimplemented Data Type
The following paragraphs detail nonarithmetic floating-point exceptions.
9.6.1 Unimplemented Floating-Point Instructions
F-line instructions are instruction word patterns with bits 15–12 that have an $F encoding,
causing F-line exceptions. These instructions are termed unimplemented floating-point
instructions and cause an unimplemented floating-point exception. The MC68040
recognizes some F-line instructions, such as the FMUL and CPUSH, which do not cause
F-line exceptions. There are some F-line instructions that the MC68040 recognizes as
valid MC68881/MC68882 floating-point instruction patterns, but as floating-point
instructions that the processor cannot complete in hardware. Table 9-10 lists the floating-
point instructions that are unimplemented and therefore cause an unimplemented
instruction exception.
If the processor encounters an F-line instruction and the instruction patterns do not match
either of the above two cases, the processor takes an F-line illegal exception. F-line illegal
exceptions are discussed further in Section 8 Exception Processing. The processor
generates an exception with vector number 11 and pushes a four-word stack frame format
$0 on the system stack. An illegal instruction exception is also reported when a breakpoint
acknowledge bus cycle is run and terminated with either a transfer acknowledge (TA) or
transfer error acknowledge (TEA) signal. Since the unimplemented floating-point
F
re
e
sc
a
le
S
e
m
ic
o
n
d
u
c
to
r,
I
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
n
c
..
.