beautypg.com

Motorola DSP96002 User Manual

Page 81

background image

MOTOROLA

DSP96002 USER’S MANUAL

6 - 5

6.2.5 Loop Instructions

The loop instructions control hardware looping by initiating a program loop and setting up looping parame-

ters, or by "cleaning" up the system stack when terminating a loop. Initialization includes saving registers

used by a program loop (LA and LC) on the system stack so that program loops can be nested. The ad-

dress of the first instruction in a program loop is also saved to allow no-overhead looping. See Figure 6-

5 for a list of the four loop instructions.

Figure 6-5. Loop Instructions

6.2.6 Move Instructions

The move instructions perform data movement over the X and Y Data Buses, over the Global Data Bus

and over the Program Data Bus. Address Generation Unit instructions are also included among the follow-

ing move instructions. See Figure 6-6 for a list of the nine move instructions.

Figure 6-6. Move Instructions

6.2.7 Program Control Instructions

The program control instructions include jumps, conditional jumps, branches, conditional branches and oth-

er instructions which affect the PC and system stack. Branch instructions allow PC relative displacements

needed for position independent code. See Figure 6-7 for a list of the thirty five program control instruc-

tions.

DO

Start Hardware Loop

DOR

Start PC Relative Hardware Loop

ENDDO

Exit from Hardware Loop

REP

Repeat Next Instruction

LEA

Load Effective Address

LRA

Load PC Relative Address

MOVE

Move Data Register(s)

MOVETA

Move Data Register(s) and Test Address

MOVEC

Move Control Register

MOVEI

Move Immediate

MOVEM

Move Program Memory

MOVEP

Move Peripheral Data

MOVES

Move Absolute Short