INSTRUCTION DESCRIPTIONS

MACR

Signed Multiply-Accumulate and Round MACR

Explanation of Example 1: Prior to execution, the 24-bit X0 register contains the value $123456 (0.142222166), the 24-bit Y0 register contains the value $123456 (0.142222166), and the 56-bit B accumulator contains the value $00:100000:000000 (0.125). The execution of the MACR X0,Y0,B instruction multiples the 24-bit signed value in the X0 register by the 24-bit signed value in the Y0 register, adds the resulting product to the 56-bit B accumulator, rounds the result into the B1 portion of the accumu- lator, and then zeros the B0 portion of the accumulator (X0Y0+B=0.145227144519197 approximately =$00:1296CD:9619C8, which is rounded to the value $00:1296CE:000000=0.145227193832397=B).

Condition Codes:

15

14

 

13

12

11

10

9

8

7

6

 

5

4

3

2

1

0

LF

DM

T

**

 

S1

S0

 

I1

I0

S

L

E

U

N

Z

 

V

C

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MR

 

 

 

 

 

 

 

 

 

 

CCR

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

S — Computed according to the definition in A.5 CONDITION CODE COMPUTATION L — Set if limiting (parallel move) or overflow has occurred in result

E — Set if the signed integer portion of A or B result is in use

U — Set if A or B result is unnormalized

N — Set if bit 55 of A or B result is set

Z— Set if A or B result equals zero

V — Set if overflow has occurred in A or B result

Note: The definitions of the E and U bits vary according to the scaling mode being used. Refer to Section A.5 for complete details.

Instruction Format 1:

 

 

 

 

 

MACR

(±)S1,S2,D

 

 

 

 

 

MACR

(±)S2,S1,D

 

 

 

 

 

Opcode 1:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

23

8

7

4

3

0

 

 

 

 

 

 

 

 

 

 

 

 

 

DATA BUS MOVE FIELD

1 Q Q

Q

d k

1 1

 

 

 

 

 

 

 

 

 

 

 

 

 

OPTIONAL EFFECTIVE ADDRESS EXTENSION

 

 

 

 

 

 

 

 

 

 

 

 

 

MOTOROLA

INSTRUCTION SET DETAILS

A - 155

Page 424
Image 424
Motorola DSP56000, 24-Bit Digital Signal Processor manual Signed Multiply-Accumulate and Round Macr, Condition Codes