Signed integer double-precision multiplication -29 – Freescale Semiconductor StarCore SC140 User Manual
Page 61

DALU
SC140 DSP Core Reference Manual
2-29
Figure 2-10 illustrates the use of these instructions in the case of a signed integer double-precision
multiplication of 32-bit by 32-bit signed operands. In this example, only a 32-bit result is generated. The
most significant 32 bits are shifted out.The “Unsigned x Unsigned” operation is used to multiply or
multiply-accumulate the unsigned low portion of one double-precision number with the unsigned low
portion of the other double-precision number. The “Signed x Unsigned” and “Unsigned x Signed”
operations are used to multiply or multiply-accumulate the signed high portion of one double-precision
number with the unsigned low portion of the other double-precision number. This example generates only
a 32-bit integer.
Figure 2-10. Signed Integer Double-Precision Multiplication
32 bits
32 bits
D3.l
D3.h
D0.l
D0.h
D1.h
D1.l
×
=
+
D1.l
×
D0.l
D0.h
×
D1.l
D1.h
×
D0.l
Signed
× Unsigned
Unsigned
× Unsigned
AA0551
D0,D1,D2
D0,D1,D3
D0,D1,D3
D3
impyuu
impysu
imacus
aslw
D3.l
0
add D2,D3
+
Unsigned
× Signed