6 underflow (unfl), 7 divide-by-zero (dz), Underflow (unfl) -22 – Freescale Semiconductor MCF5480 User Manual

Page 212: Divide-by-zero (dz) -22, Table 6-17

Advertising
background image

MCF548x Reference Manual, Rev. 3

6-22

Freescale Semiconductor

6.6.1.6

Underflow (UNFL)

An underflow exception occurs when the intermediate result of an arithmetic instruction is too small to be

represented as a normalized number in a floating-point register or memory using the selected rounding

precision; that is, when the intermediate result exponent is less than or equal to the minimum exponent

value of the selected rounding precision. Underflow can only occur when the destination format is single

or double precision. When the destination is byte, word, or longword, the conversion underflows to zero

without causing an underflow or an operand error. At the end of any operation that could underflow, the

intermediate result is checked for underflow, rounded, and checked for overflow before it is stored in the

destination. FPSR[UNFL] is set if underflow occurs. If the underflow exception is disabled, FPSR[INEX]

is also set.
Even if the intermediate result is large enough to be represented as a double-precision number, an

underflow can occur if the magnitude of the intermediate result is too small to be represented in the

selected rounding precision.

Table 6-18

shows results when the exception is enabled or disabled.

6.6.1.7

Divide-by-Zero (DZ)

Attempting to use a zero divisor for a divide instruction causes a divide-by-zero exception. When a

divide-by-zero is detected, FPSR[DZ] is set.

Table 6-19

shows results when the exception is enabled or

disabled.

Table 6-17. OVFL Exception Enabled/Disabled Results

Condition

OVFL

Description

Exception

disabled

0

The values stored in the destination based on the rounding mode defined in FPCR[MODE].
RN

Infinity, with the sign of the intermediate result.

RZ

Largest magnitude number, with the sign of the intermediate result.

RM For positive overflow, largest positive normalized number

For negative overflow, -

∞.

RP

For positive overflow, +

For negative overflow, largest negative normalized number.

Exception

enabled

1

The result written to the destination is the same as for the exception disabled case unless
the exception occurred on a FMOVE OUT, in which case the destination is unaffected. If
desired, the user OVFL handler can overwrite the default result.

Table 6-18. UNFL Exception Enabled/Disabled Results

Condition

UNFL

Description

Exception

disabled

0

The stored result is defined below. The UNFL exception also sets FPSR[INEX] if the UNFL
exception is disabled.
RN

Zero, with the sign of the intermediate result.

RZ

Zero, with the sign of the intermediate result.

RM For positive underflow, + 0

For negative underflow, smallest negative normalized number.

RP

For positive underflow, smallest positive normalized number
For negative underflow, - 0

Exception

enabled

1

The result written to the destination is the same as for the exception disabled case unless
the exception occurs on a FMOVE OUT, in which case the destination is unaffected. If
desired, the user UNFL handler can overwrite the default result. The UNFL exception does
not set FPSR[INEX] if the UNFL exception is enabled so the exception handler can set
FPSR[INEX] based on results it generates.

Advertising
This manual is related to the following products: