
RCPU
REFERENCE MANUAL
OPERAND CONVENTIONS
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
3-25
tion) of the product take part in the add operation. If the exponents of the two inputs
to the adder are not equal, the significand of the operand with the smaller exponent
is aligned (shifted) to the right by an amount added to that exponent to make it
equal to the other input’s exponent. Zeros are shifted into the left of the significand
as it is aligned and bits shifted out of bit 105 of the significand are ORed into the X'
bit. The add operation also produces a result conforming to the above model with
the X' bit taking part in the add operation.
The result of the add is then normalized, with all bits of the add result, except the
X' bit, participating in the shift. The normalized result provides an intermediate re-
sult as input to the rounder that conforms to the model described in
3.4.1 Execu-
tion Model for IEEE Operations
, where:
The guard bit is bit 53 of the intermediate result.
The round bit is bit 54 of the intermediate result.
The sticky bit is the OR of all remaining bits to the right of bit 55, inclusive.
If the instruction is floating negative multiply-add or floating negative multiply-sub-
tract, the final result is negated.
Status bits are set to reflect the result of the entire operation: for example, no status
is recorded for the result of the multiplication part of the operation.
3.4.3 Non-IEEE Operation
The RCPU depends on a software envelope to fully implement the IEEE-754 float-
ing-point specification. Even when all exceptions are disabled (i.e., when exception
enable bits in the FPSCR are cleared), tiny results and denormalized operands
cause FPU exceptions that invoke a software routine to deliver (with hardware as-
sistance) the correct IEEE result.
To accelerate time-critical operations and make them more deterministic, the
RCPU provides a non-IEEE mode of operation. In this mode, whenever a tiny result
is detected and floating-point underflow exception is disabled (FPSCR[UE] = 0),
assist exception handler.
Non-IEEE mode is entered by setting the NI (non-IEEE enable) bit in the FPSCR.
Denormalized numbers are never generated in non-IEEE mode. Therefore, when
denormalized operands are detected, they are treated exactly as they are in IEEE
mode. Refer to
6.11.10 Floating-Point Assist Exception (0x00E00)
for more in-
formation.
The hardware never asserts the FPSCRXX (inexact) bit on an underflow condition;
it is done as a part of the floating-point assist interrupt handler. Therefore, in non-
IEEE mode, FPSCRXX cannot be depended upon to be a complete accumulation
of all inexact conditions.
F
Freescale Semiconductor, Inc.
n
.