section 7 - Index of
section 7 - Index of section 7 - Index of
7.3.3.3 Other Interrupt SourcesOther interrupt sources include the stack error interrupt and trace interrupt (DSP56000156001) which are IPL3 interrupts.An overflow or underflow of the system stack (SS) causes a stack error interrupt which isvectored to P:$0002 (see SECTION 5 - PROGRAM CONTROL UNIT for additional informationon the stack error flag). Since the stack error is nonrecoverable, a long interruptshould be used to service it. The service routine should not end in an RTI because executingan RTI instruction "pops" the stack, which has been corrupted.The DSP56000/56001 includes a facility for instruction-by-instruction tracing as a programdevelopment aid. This trace mode generates a trace exception after each instructionexecuted (see Figure 7-7), which can be used by a debugger program to monitor theexecution of a program. (With members of the DSP56K family other than DSP56000156001, use the OnCE trace mode described in 10.5.)The trace bit in the SR defines the trace mode. In the trace mode, the processor will generatea trace exception after it executes each instruction. When the processor is servicingthe trace exception, it expects to encounter a JSR in the trace vector locations,thereby forming a long interrupt routine. The JSR stacks the SR and clears the trace bitto prevent tracing while executing the trace exception service routine. This service routineshould end with an RTI instruction, which restores the SR (with the trace bit set) fromthe SS, and causes the next instruction to be traced. The pipeline must be flushed toallow each sequential instruction to be traced. The tracing facility appends three instructioncycles to the end of each instruction traced (see the three NOP instructions shown inFigure 7-7) to flush the pipeline and allow the next trace interrupt to follow the nextsequential interrupt.During tracing, the processor considers the REP instruction and the instruction beingrepeated as a single two-word instruction. That is, only after executing the REP instructionand all of the repeats of the next instruction will the trace exception be generated.Fast interrupts can not be traced because they are uninterruptable. Long interrupts willnot be traced unless the processor enters the trace mode in the subroutine because theSR is pushed on the stack and the trace bit is cleared. Tracing is resumed upon returningfrom a long interrupt because the trace bit is restored when the SR is restored. Interruptsare not likely to occur during tracing because only an interrupt with a higher IPL can interruptduring a trace operation. While executing the program being traced, the trace interruptwill always be pending and will win the interrupt arbitration. During the traceinterrupt, the interrupt mask is set to reject interrupts below IPL3.
MAINPROGRAMFETCHESTRACE INSTRUCTION n1\-------:---\ J~SFt~~~~I~NS INSERTEDf---------i BY TRACE MODETRACE BITSETINSRn1n2r---.,..-L,::----, FAST INTERRUPT\---___: ___ -=--\ ~A~~~~~t TRACEDEBUGGERPROGRAMNEXT TRACEOPERATIONRTISET TRACE BIT IN SSL(a) Instruction Fetches from Memory,.-- INTERRUPT SYNCHRONIZED AND ,.-- INTERRUPT SYNCHRONIZED ANDRECOGNIZED AS PENDINGRECOGNIZED AS PENDINGINTERRUPT CONTROL CYCLE 1 i IIINTERRUPT CONTROL CYCLE 2 i IIFETCH nl NOP NOP NOP JSR - TRACE PROGRAM RTI - n2 NOP NOP NOPDECODE nl NOP NOP NOP JSR NOP TRACE PROGRAM RTI NOP n2 NOP NOP NOPEXECUTE nl NOP NOP NOP JSR NOpJ TRACE PROGRAM Rli NOP n2 NOP NOPINSTRUCTION CYCLE COUNT 1 2 3 4 5 6 7 89 I 10 11 12 13 14 15 16 17=INTERRUPTii INTERRUPT INSTRUCTION WORDII = ILLEGAL INSTRUCTIONn = NORMAL INSTRUCTION WORD(b) Program Controller PipelineFigure 7-7 Trace ExceptionNOP18
- Page 98 and 99: -DATA ARITHMETIC LOGIC UNITINPUT RE
- Page 101 and 102: 6.1 INSTRUCTION SET INTRODUCTIONThe
- Page 103 and 104: shown in Figure 6-2. Most instructi
- Page 105 and 106: 23 87 0L...-I ___-'-I_---'I BUS~ LS
- Page 107 and 108: The MR and CCR may be accessed indi
- Page 109 and 110: 6.3.4 Operand ReferencesThe DSP sep
- Page 111 and 112: Some address register indirect mode
- Page 113 and 114: EXAMPLE A: IMMEDIATE INTO 24-BIT RE
- Page 115 and 116: EXAMPLE A: IMMEDIATE SHORT INTO AO,
- Page 117 and 118: EXAMPLE A: MOVE P: $3200,XOBEFORE E
- Page 119 and 120: Table 6-1 Addressing Modes SummaryA
- Page 121 and 122: 6.4.2 LogicallnstructlonsThe logica
- Page 123 and 124: START OF LOOP1)SP+ 1 • SP; LA. SS
- Page 125 and 126: OPCODE/OPERANDSPARALLEL MOVE EXAMPL
- Page 127: SECTION 7PROCESSING STATES-
- Page 130 and 131: Each instruction requires a minimum
- Page 132 and 133: second instruction of the downloade
- Page 134 and 135: The DO instruction is another instr
- Page 136 and 137: SP and SSH/SSL register manipulatio
- Page 138 and 139: 7.3.1 Interrupt TypesThe DSP56K rel
- Page 140 and 141: Table 7-2 Status Register Interrupt
- Page 142 and 143: 7.3.3 Interrupt SourcesInterrupts c
- Page 144 and 145: interrupts makes it very useful for
- Page 146 and 147: MAINPROGRAMFETCHESLONG INTERRUPTSER
- Page 150 and 151: 7.3.4 Interrupt ArbitrationInterrup
- Page 152 and 153: 7.3.7 Interrupt Instruction Executi
- Page 154 and 155: MAINPROGRAMMEMORYINTERRUPT SYNCHRON
- Page 156 and 157: MAINPROGRAMFETCHESINTERRUPTSYNCHRON
- Page 158 and 159: MAINPROGRAMFAST INTERRUPTVECTORLONG
- Page 160 and 161: MAINPROGRAMFETCHESNTERRUPTSYN8HRCNZ
- Page 162 and 163: 7.5 WAIT PROCESSING STATEThe WAIT i
- Page 164 and 165: The stop processing state halts all
- Page 166 and 167: the first instruction fetch). If th
- Page 168: RESET -----------------------------
- Page 172 and 173: 16 - BIT INTERNALADDRESS BUSESX ADD
- Page 174 and 175: 8.2.2.1 Address (AO-A15)These three
- Page 177: SECTION 9PLL CLOCK OSCILLATOR-
- Page 180 and 181: X MEMORYRAM/ROMEXPANSION24-Bit56KMo
- Page 182 and 183: 23 22 21 20 19 18 17 16 15 14 13 12
- Page 184 and 185: cleared. To enable rapid recovery w
- Page 186 and 187: -CLVCCVCC for the CKOUT output. The
- Page 188 and 189: 4. For all input frequencies which
- Page 190 and 191: While the PLL is regaining lock, th
- Page 193 and 194: 10.1 ON-CHIP EMULATION INTRODUCTION
- Page 195 and 196: 10.2.2 Debug Serial Clock/Chip Stat
- Page 197 and 198: 76543210I R/W I GO I EX I RS41 RS31
7.3.3.3 Other Interrupt SourcesOther interrupt sources include the stack error interrupt and trace interrupt (DSP56000156001) which are IPL3 interrupts.An overflow or underflow <strong>of</strong> the system stack (SS) causes a stack error interrupt which isvectored to P:$0002 (see SECTION 5 - PROGRAM CONTROL UNIT for additional informationon the stack error flag). Since the stack error is nonrecoverable, a long interruptshould be used to service it. The service routine should not end in an RTI because executingan RTI instruction "pops" the stack, which has been corrupted.The DSP56000/56001 includes a facility for instruction-by-instruction tracing as a programdevelopment aid. This trace mode generates a trace exception after each instructionexecuted (see Figure 7-7), which can be used by a debugger program to monitor theexecution <strong>of</strong> a program. (With members <strong>of</strong> the DSP56K family other than DSP56000156001, use the OnCE trace mode described in 10.5.)The trace bit in the SR defines the trace mode. In the trace mode, the processor will generatea trace exception after it executes each instruction. When the processor is servicingthe trace exception, it expects to encounter a JSR in the trace vector locations,thereby forming a long interrupt routine. The JSR stacks the SR and clears the trace bitto prevent tracing while executing the trace exception service routine. This service routineshould end with an RTI instruction, which restores the SR (with the trace bit set) fromthe SS, and causes the next instruction to be traced. The pipeline must be flushed toallow each sequential instruction to be traced. The tracing facility appends three instructioncycles to the end <strong>of</strong> each instruction traced (see the three NOP instructions shown inFigure 7-7) to flush the pipeline and allow the next trace interrupt to follow the nextsequential interrupt.During tracing, the processor considers the REP instruction and the instruction beingrepeated as a single two-word instruction. That is, only after executing the REP instructionand all <strong>of</strong> the repeats <strong>of</strong> the next instruction will the trace exception be generated.Fast interrupts can not be traced because they are uninterruptable. Long interrupts willnot be traced unless the processor enters the trace mode in the subroutine because theSR is pushed on the stack and the trace bit is cleared. Tracing is resumed upon returningfrom a long interrupt because the trace bit is restored when the SR is restored. Interruptsare not likely to occur during tracing because only an interrupt with a higher IPL can interruptduring a trace operation. While executing the program being traced, the trace interruptwill always be pending and will win the interrupt arbitration. During the traceinterrupt, the interrupt mask is set to reject interrupts below IPL3.