MPYHU Multiply Unsigned 16 MSB x Unsigned 16 MSB

MPYHU

 

 

Multiply Unsigned 16 MSB y Unsigned 16 MSB

 

 

 

 

 

 

 

 

Syntax

 

 

 

 

MPYHU (.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

0

1

1

1

0

 

 

 

 

 

 

0 0 0 0 s p

3

1

5

5

5

1

1

1

 

 

 

 

 

 

 

 

 

 

Opcode map field used...

For operand type...

Unit

 

 

 

 

 

 

 

 

 

 

 

 

src1

umsb16

 

.M1, .M2

 

 

 

 

src2

xumsb16

 

 

 

 

 

 

dst

uint

 

 

 

 

 

 

 

 

 

 

 

Description

Execution

Pipeline

The src1 operand is multiplied by the src2 operand. The result is placed in dst. The source operands are unsigned by default.

if (cond)

msb16(src1) msb16(src2) dst

else nop

 

 

 

 

 

 

 

Pipeline

E1

E2

Stage

 

 

 

 

Read

src1, src2

 

 

Written

 

dst

Unit in use

.M

 

 

 

 

 

 

Instruction Type

Multiply (16 16)

 

 

Delay Slots

1

 

 

 

See Also

MPYH, MPYHSU, MPYHUS

 

Example

MPYHU .M1 A1,A2,A3

 

 

 

Before instruction

 

 

A1

 

35

 

 

0023 0000h

A1

 

 

 

65447

 

 

A2

FFA7 1234h

A2

 

 

 

 

 

 

A3

xxxx xxxxh

 

A3

 

 

 

 

 

Unsigned 16-MSB integer § Unsigned 32-bit integer

2 cycles after instruction

0023 0000h

FFA7 1234h

0022 F3D5h 2290645§

3-154

Instruction Set

SPRU733

Page 214
Image 214
Texas Instruments TMS320C67X/C67X+ DSP manual Multiply Unsigned 16 MSB y Unsigned 16 MSB, MPYH, MPYHSU, Mpyhus