beautypg.com

Compute and move or modify instructions, Program flow control instructions – Analog Devices ADSP-21020 User Manual

Page 7

background image

ADSP-21020

REV. C

–7–

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, )

|

= dreg ;

|

PM(Ic, )

|

4b.

IF condition

compute,

|

DM(, Ia)

|

= dreg ;

|

PM(, Ic)

|

4c.

IF condition

compute,

dreg =

|

DM(Ia, )

|

;

|

PM(Ic, )

|

4d.

IF condition

compute,

dreg =

|

DM(, Ia)

|

;

|

PM(, 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)

|

;

7.

IF condition

compute,

MODIFY

|

(Ic, Md)

|

PROGRAM FLOW CONTROL INSTRUCTIONS

8.

IF condition

|

JUMP

|

|

|

(

|

DB

|

) ;

|

CALL

|

|

(PC, )

|

(

|

LA

,

|

|

CALL

|

|

(PC, )

|

(

|

DB, LA

|

9.

IF condition

|

JUMP

|

|

(Md, Ic)

|

(

|

DB

|

) , compute

;

|

CALL

|

|

(PC, )

|

(

|

LA

,

|

|

CALL

|

|

(PC, )

|

(

|

DB, LA

|

11.

IF condition

|

RTS

|

(

|

DB

,

|

) , compute

;

|

RTI

|

(

|

LA

,

|

|

RTI |

(

|

DB, LA

|

12.

LCNTR =

|

|

, DO

|

|

UNTIL LCE ;

12.

LCNTR =

|

ureg

|

, DO

|

()

(

|

UNTIL LCE ;

13.

LCNTR =

|

|

,

DO

|

|

UNTIL termination ;

12.

LCNTR =

|

ureg

|

, DO

|

(

|

(PC, )

|

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