IMACUS

 

 

 

 

IMACUS

Integer Multiply Accumulate

IMACUS

 

 

Unsigned By Signed (DALU)

 

Operation

Assembler Syntax

 

Dn + (Da.L * Db.H) → Dn

IMACUS Da,Db,Dn

 

Description

 

 

IMACUS Da,Db,Dn

 

 

Performs a signed integer multiplication of the unsigned 16-bit LP of one source data register (Da) with the signed 16-bit HP of another source data register (Db). It then adds the sign-extended 32-bit product to a destination data register (Dn). This instruction is optimized for multi-precision-multiplication support.

Status and Conditions that Affect Instruction

None.

Status and Conditions Changed by Instruction

Register Address

Bit Name

Description

Ln

L

Clears the Ln bit in the destination register.

EMR[2]

DOVF

Set if the result cannot be represented in 40 bits.

Example

imacus d3,d4,d0

Register/Memory Address

D3

D4

L0:D0

EMR

Before

$00 7CE8 0002

$FF FFC0 F0D0

$0:$00 0000 0000

After

$0:$FF FFFF FF80

$0000 0000

SC140 DSP Core Reference Manual

A-185

Page 499
Image 499
Freescale Semiconductor SC140 Imacus, Integer Multiply Accumulate, Unsigned By Signed Dalu Operation Assembler Syntax