Data Types and Sizes
Motorola
About g56k
4-5
4.4.2.2 Comparison with IEEE STD 754-1985 Standard
Since the IEEE floating-point arithmetic standard is well publicized, it is useful to
compare these two floating-point formats. The DSP56KCC floating-point format differs
from the IEEE standard primarily in its handling of floating-point exceptions. Other
differences are noted in Table 4-6. Conversion between the IEEE standard format and
DSP56KCC format is straightforward.
As shown in Table 4-6, the DSP56KCC mantissa precision is one bit less than the IEEE
single precision format. This is the result of using two’s complement arithmetic in the
DSP56000/DSP56001. The DSP56KCC exponent width is three bits more than the IEEE
double precision format. This provides an extremely large (approximately 100,000 dB)
dynamic range which eliminates exponent overflow for most applications. If exponent
overflow occurs, the result is limited to the maximum representable floating-point number
of the correct sign. If exponent underflow occurs, the result is limited to the minimum
representable floating-point number, which is zero. Although the DSP56KCC format does
not provide the arithmetic safety offered by the IEEE standard, it avoids extensive error
checking and exceptions in favor of real-time execution speed and efficient
implementation on the DSP56000/DSP56001. All exception conditions are handled
in-line
(i.e., an exception routine is not invoked) according to predefined rules. The reason
for this is the fact that real-time systems must continue to process data non-stop. It is not
possible to stop execution until the application program determines a solution to the
problem and corrects it and so there is no choice but to provide an output with some
amount of error should an exception occur.
Table 4-5. Floating-point Format Description
IEEE Format Characteristic
DSP56KCC Value
Decimal Value
m * 2
(e - ebias)
Mantissa
24-bit two’s complement, normalized fractional mantissa. This gives a
precision of approximately 7 decimal digits. A hidden leading 1 is not
implemented in this format (see Figure 4-1).
Largest Positive Mantissa
$7FFFFF
Smallest Positive Mantissa
$400000
Floating-point Zero Mantissa
$000000
Smallest Negative Mantissa
$BFFFFF
Largest Negative Mantissa
$800000
Reserved Mantissas
$000001 through $3FFFFF and $C00000 through $FFFFFF
F
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
n
.