Freescale Semiconductor SC140 specifications Mpyr d4,d5,d6, RndDa.H * Db.H → Dn, Mpyr Da,Db,Dn

Models: SC140

1 760
Download 760 pages 48.94 Kb
Page 636
Image 636

MPYR

MPYR

Signed Fractional Multiply

 

and Round (DALU)

Operation

Assembler Syntax

Rnd((Da.H * Db.H)) → Dn

MPYR Da,Db,Dn

Description

 

MPYR Da,Db,Dn

 

MPYR

Performs signed fractional multiplication of the high portions of a data register pair (Da, Db), rounds the product, and stores the result in a destination data register (Dn). Rounding adjusts the LSB of the high part of the destination register according to the value of the low part of the register and then zeros the low part. The two modes of the round function, Rnd(), are described on page A-359.

Status and Conditions that Affect Instruction

Register Address

Bit Name

Description

SR[2]

SM

If set, selects 32-bit arithmetic saturation mode.

SR[3]

RM

Rounding mode

SR[5:4]

S[1:0]

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

 

 

calculation and which bits are used in rounding.

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

mpyr d4,d5,d6

Register/Memory Address

SR

D4

D5

BeforeAfter

$00E0 0000

$00 4001 0000

$00 4002 0000

A-322

SC140 DSP Core Reference Manual

Page 636
Image 636
Freescale Semiconductor SC140 specifications Mpyr d4,d5,d6, RndDa.H * Db.H → Dn, Mpyr Da,Db,Dn