Motorola DSP96002 User Manual

Page 737

Advertising
background image

C-14

DSP96002 USER’S MANUAL

MOTOROLA

C.1.5.1.1.2

SP Move Of A SP Denormalized Number

This section describes what happens when a 32-bit denormalized, single precision number is written by a sin-

gle precision floating-point move, into a Data ALU floating-point register D0-D9. Following the above opera-

tion, the Data ALU register will be read first by a single precision and then by a double precision floating-point

move.

- 32-bit data from source is $00200000 (= +2**(-128))
- exp = $00 (8 bit bias)
- mantissa = $200000 (the hidden bit is zero)

- data stored in the register
- e = 380 (incorrect representation with 11-bit bias; the
correct representation would be 37F)
- I = 0 (the number is unnormalized)
- U-TAG = 1 (set; the number cannot be used in computations
without adding extra cycles for normalization,
since it is unnormalized)
- fraction = 40000000
- mantissa = 0.010...00

In this last case, the U-TAG tells us that an operation using this operand will first add extra cycles to normalize

it. However, an SP move will render the correct result since the format conversion presented in Section 5.5

chooses the correct bits. One should notice that a double precision floating-point move that reads the register

will yield the wrong data in this case.



0 01111111 0000 ..... 00





inv


0 0 0 Zero 01111111111 1 0000 ............................. 00


SP read of the register


0 0 0 Zero 01111111111 1 0000 ............................. 00








0 01111111 0000 ..... 00 Data read correctly
(read as 1.0)


DP read of the register


0 0 0 Zero 01111111111 1 0000 ............................. 00

\ /




/ \

0 01111111111 0000 ...... 00 Data read correctly
(read as 1.0)

SP move into the register

Figure C-11. Single Precision (SP) Move Of A SP Normalized Number

Advertising