NORMAL PROCESSING STATE
7 - 8
PROCESSING STATES
MOTOROLA
The DO instruction is another instruction that begins execution during the decode cycle
of the pipeline. As a result, there are a number of restrictions concerning access conten-
tion with the program controller registers accessed by the DO instruction. The ENDDO
instruction has similar restrictions. APPENDIX A - INSTRUCTION SET DETAILS con-
tains additional information on the DO and ENDDO instruction restrictions.
Case 5:
A resource contention problem can occur when one instruction is using a register
during its decode while the instruction executing is accessing the same resource. One ex-
ample of this is as follows:
MOVEC
X:$100,SSH
DO
#$10,END
The problem occurs because the MOVEC instruction loads the contents of X:$100 into
the system stack high (SSH) during its execution cycle. The DO instruction that follows
pushes the stack (LA
→
SSH, LC
→
SSL) during its decode cycle. Therefore, the two
instructions try writing to the SSH simultaneously and conflict.
7.2.2 Summary of Pipeline-Related Restrictions
The following paragraphs give a summary of the instruction sequences that cause pipe-
line effects. Additional information about the individual instructions can be found in
APPENDIX A - INSTRUCTION SET DETAILS.
DO instruction restrictions:
The DO instruction must not be immediately preceded by any of the following instruc-
tions:
BCHG/BCLR/BSET
LA, LC, SSH, SSL, or SP
MOVEC/MOVEM to LA, LC, SSH, SSL, or SP
MOVEC/MOVEM from SSH
The DO instruction cannot specify SSH as a source register, as in the following example:
DO SSH,xxxx
Restrictions near the end of DO loops:
Proper DO loop operation is guaranteed if no instruction starting at address LA-2, LA-1,
or LA specifies the program controller registers SR, SP, SSL, LA, LC, or (implicitly) PC
as a destination register, or specifies SSH as a source or a destination register.
Summary of Contents for DSP56K
Page 12: ...xii LIST of TABLES MOTOROLA List of Tables Continued Table Page Number Title Number ...
Page 13: ...MOTOROLA DSP56K FAMILY INTRODUCTION 1 1 SECTION 1 DSP56K FAMILY INTRODUCTION ...
Page 31: ...MOTOROLA DATA ARITHMETIC LOGIC UNIT 3 1 SECTION 3 DATA ARITHMETIC LOGIC UNIT ...
Page 50: ...DATA ALU SUMMARY 3 20 DATA ARITHMETIC LOGIC UNIT MOTOROLA ...
Page 51: ...MOTOROLA ADDRESS GENERATION UNIT 4 1 SECTION 4 ADDRESS GENERATION UNIT ...
Page 77: ...MOTOROLA PROGRAM CONTROL UNIT 5 1 SECTION 5 PROGRAM CONTROL UNIT ...
Page 124: ...INSTRUCTION GROUPS 6 30 INSTRUCTION SET INTRODUCTION MOTOROLA ...
Page 125: ...MOTOROLA PROCESSING STATES 7 1 SECTION 7 PROCESSING STATES STOP WAIT EXCEPTION NORMAL RESET ...
Page 167: ...STOP PROCESSING STATE MOTOROLA PROCESSING STATES 7 43 ...
Page 168: ...STOP PROCESSING STATE 7 44 PROCESSING STATES MOTOROLA ...
Page 169: ...MOTOROLA PORT A 8 1 SECTION 8 PORT A ...
Page 176: ...PORT A INTERFACE 8 8 PORT A MOTOROLA ...
Page 177: ...MOTOROLA PLL CLOCK OSCILLATOR 9 1 SECTION 9 PLL CLOCK OSCILLATOR x x d Φ VCO ...
Page 191: ...10 2 ON CHIP EMULATION OnCE MOTOROLA SECTION 10 ON CHIP EMULATION OnCE ...
Page 218: ...USING THE OnCE MOTOROLA ON CHIP EMULATION OnCE 10 29 ...
Page 604: ...INSTRUCTION ENCODING A 338 INSTRUCTION SET DETAILS MOTOROLA ...
Page 605: ...MOTOROLA BENCHMARK PROGRAMS B 1 APPENDIX B BENCHMARK PROGRAMS T T T T T P1 P3 P2 P4 T T T ...
Page 609: ...BENCHMARK PROGRAMS MOTOROLA BENCHMARK PROGRAMS B 5 ...
Page 611: ...BENCHMARK PROGRAMS MOTOROLA BENCHMARK PROGRAMS B 7 ...
Page 613: ...BENCHMARK PROGRAMS MOTOROLA BENCHMARK PROGRAMS B 9 ...
Page 615: ...BENCHMARK PROGRAMS MOTOROLA BENCHMARK PROGRAMS B 11 ...