dsp56800 Freescale Semiconductor, Inc, dsp56800 Datasheet - Page 68

no-image

dsp56800

Manufacturer Part Number
dsp56800
Description
16-bit Digital Signal Controllers
Manufacturer
Freescale Semiconductor, Inc
Datasheet
Data Arithmetic Logic Unit
The use of these instructions in multi-precision multiplication is demonstrated in Figure 3-13, with
corresponding examples shown in Example 3-14, Example 3-15 on page 3-24, and Example 3-16 on
page 3-25.
3-24
(5 Icyc, 5 Instruction Words)
(7 Icyc, 7 Instruction Words)
Example 3-14. Fractional Single-Precision Times Double-Precision Value — Both Signed
Example 3-15. Integer Single-Precision Times Double-Precision Value — Both Signed
MACSU — multiply-accumulate with one signed and one unsigned operand
MPYSU X0,Y0,A
MOVE
MOVE
MOVE
MAC
MPYSU X0,Y0,A
MOVE
MOVE
MOVE
MAC
ASR
ROR
Figure 3-13. Single-Precision Times Double-Precision Signed Multiplication
A0,B
A1,A0
A2,A1
X0,Y1,A
A0,B
A1,A0
A2,A1
X0,Y1,A
A
B
Sign Ext.
x
+
A2
; Single Precision times Lower Portion
; 16-bit Arithmetic Right Shift
; (note that A2 contains only sign extension)
; Single Precision times Upper Portion
; and added to Previous
; Single Precision times Lower Portion
; 16-bit Arithmetic Right Shift
; (note that A2 contains only sign
; extension)
; Single Precision x Upper Portion and add to Previous
; Convert result to integer, A2 contains sign extension
; (52-bit shift of A2:A1:A0:B1)
A1
Signed x Signed
DSP56800 Family Manual
X0 x Y1
48 Bits
Signed x Unsigned
Y1
A0
X0 x Y0
32 Bits
16 Bits
X0
Y0
B1
Freescale Semiconductor
AA0046

Related parts for dsp56800