MPY

MPY

Signed Fractional Multiply (DALU)

Operation

Assembler Syntax

Da.H * Db.H → Dn

MPY Da,Db,Dn

MPY

Description

MPY Da,Db,Dn

Performs signed fractional multiplication of the high portions of two data registers (Da, Db) and stores the product in a destination data register (Dn).

Status and Conditions that Affect Instruction

Register Address

Bit Name

Description

SR[2]

SM

If set, selects 32-bit arithmetic saturation mode.

SR[5:4]

S[1:0]

Scaling bits determine which bits in the result are used in the Ln bit

 

 

calculation.

Status and Conditions Changed by Instruction

Register Address

Bit Name

Description

Ln

L

If not in arithmetic saturation mode (SR [SM] = 0), calculates and

 

 

updates the Ln bit in the destination register. If in arithmetic saturation

 

 

mode (SR [SM] = 1), clears the Ln bit in the destination register.

EMR[2]

DOVF

Set if the result cannot be represented in 40 bits, or if the result

 

 

saturates to 32 bits in saturation mode.

Example 1

mpy d4,d5,d6

Register/Memory Address

SR

D4

D5

L6:D6

EMR

Before

$00E0 0000

$FF C000 0000

$00 2000 0000

After

$0:$FF F000 0000

$0000 0000

SC140 DSP Core Reference Manual

A-319

Page 633
Image 633
Freescale Semiconductor SC140 specifications Mpy d4,d5,d6, Da.H * Db.H → Dn, MPY Da,Db,Dn