DALU

Figure 2-8 illustrates the use of these instructions in the case of a double-precision multiplication of

32-bit x 32-bit operands. 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. The “Signed x Signed” operation is used to multiply or multiply-accumulate the two signed high portions of two signed double-precision numbers. The TFRx instructions in parentheses are optional instructions that are used only in case all 64 bits of the result are needed. Otherwise, the result is truncated to a 32-bit fraction.

32 bits

D0.h

D0.l

D1.h

D1.l

 

 

 

 

 

 

 

 

=

 

mpyuu

D0,D1,D2

 

 

 

 

Unsigned Unsigned

 

 

 

 

D1.l D0.l

 

(tfr

D2,D3)

Signed

 

 

 

 

 

 

 

 

 

 

 

Unsigned

+

dmacsu

D0,D1,D2

 

 

 

D0.h D1.l

 

 

 

 

 

+

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Unsigned Signed

 

 

 

 

 

 

macus

D0,D1,D2

 

 

 

 

 

 

 

 

D1.h

D0.l

 

 

(tfr

D2,D4)

 

+

 

 

 

 

 

Signed Signed

dmacss D0,D1,D2

S Ext

D1.h D0.h

D2.e

D2.h

D2.l

D4.l

D3.l

64 bits

Figure 2-8. Fractional Double-Precision Multiplication

SC140 DSP Core Reference Manual

2-27

Page 59
Image 59
Freescale Semiconductor SC140 specifications Fractional Double-Precision Multiplication