ADSP-21020

COMPUTE AND MOVE OR MODIFY INSTRUCTIONS

 

1.

 

compute,

DM(Ia, Mb) = dreg1,

PM(Ic, Md) = dreg2;

 

 

 

dreg1 = DM(Ia, Mb)

dreg2 = PM(Ic, Md)

2.

IF condition

compute;

 

 

 

3a.

IF condition

compute,

DM(Ia, Mb)

= ureg ;

 

 

 

 

PM(Ic, Md)

 

 

3b.

IF condition

compute,

DM(Mb, Ia)

= ureg ;

 

 

 

 

PM(Md, Ic)

 

 

3c.

IF condition

compute,

ureg = DM(Ia, Mb);

 

 

 

PM(Ic, Md)

3d.

IF condition

compute,

ureg = DM(Mb, Ia);

 

 

 

PM(Md, Ic)

4a.

IF condition

compute,

DM(Ia, <data6>)

= dreg ;

 

 

 

PM(Ic, <data6>)

 

4b.

IF condition

compute,

DM(<data6>, Ia)

= dreg ;

 

 

 

PM(<data6>, Ic)

 

4c.

IF condition

compute,

dreg = DM(Ia, <data6>);

 

 

 

PM(Ic, <data6>)

4d.

IF condition

compute,

dreg = DM(<data6>, Ia);

 

 

 

PM(<data6>, Ic)

5.

IF condition

compute,

ureg1 = ureg2 ;

 

6a.

IF condition

shiftimm,

DM(Ia, Mb)= dreg ;

 

 

 

PM(Ic, Md)

 

6b.

IF condition

shiftimm,

dreg = DM(Ia, Mb);

 

 

 

PM(Ic, Md)

 

7.

IF condition

compute,

MODIFY (Ia, Mb) ;

 

 

 

(Ic, Md)

PROGRAM FLOW CONTROL INSTRUCTIONS

8.IF condition

9.IF condition

JUMP

<addr24>

CALL

(PC, <reladdr6>)

JUMP

(Md, Ic)

CALL

(PC, <reladdr6>)

(DB

) ;

LA

DB, LA

(DB

) , compute ;

LA

DB, LA

11.IF condition

RTS

(DB

) , compute ;

RTI

(LA

 

 

DB, LA

12.

LCNTR =

<data16>

, DO

<addr24>

 

 

ureg

(<PC, <reladdr24>)

13.

 

 

DO

<addr24>

 

 

 

 

(PC, <reladdr24>)

(DB) Delayed branch

(LA) Loop abort (pop loop PC stacks on branch)

UNTIL LCE ;

UNTIL termination ;

REV. C

–7–

Page 7
Image 7
Analog Devices ADSP-21020 manual If condition Compute, DMIa, Mb = dreg, PMIc, Md If condition, Dreg = DMIa, Mb