Multiply Unsigned 16 MSB x Signed 16 LSB

MPYHULS

 

 

Multiply Unsigned 16 MSB y Signed 16 LSB

 

 

 

 

 

 

 

 

MPYHULS

 

 

 

 

 

 

 

 

 

Syntax

 

 

 

 

MPYHULS (.unit) src1, src2, dst

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.unit = .M1 or .M2

 

 

 

 

 

 

 

 

 

 

 

 

 

Compatibility

 

 

C62x, C64x, C67x, and C67x+ CPU

 

 

 

 

 

 

 

 

 

 

 

Opcode

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

31

29

28

27

23

22

18

17

13

12

11

7

6

5

4

3

2

1

0

creg

z

dst

src2

src1

x

0 1 1 0 1 0

0 0 0 0 s p

3 155511 1

Opcode map field used...

For operand type...

Unit

 

 

 

src1

umsb16

.M1, .M2

src2

xslsb16

 

dst

sint

 

 

 

 

Description

Execution

Pipeline

The unsigned operand src1 is multiplied by the signed operand src2. The result is placed in dst. The S is needed in the mnemonic to specify a signed operand when both signed and unsigned operands are used.

if (cond)

msb16(src1) lsb16(src2) dst

else nop

 

Pipeline

StageE1 E2

Read

src1, src2

Writtendst

Unit in use

.M

 

 

Instruction Type

Multiply (16 16)

Delay Slots

1

See Also

MPYHL, MPYHLU, MPYHSLU

SPRU733

Instruction Set

3-155

Page 215
Image 215
Texas Instruments TMS320C67X/C67X+ DSP manual Multiply Unsigned 16 MSB y Signed 16 LSB, Mpyhuls, MPYHL, MPYHLU, Mpyhslu