Rev. 2.00, 09/03, page 115 of 690
To enable acceptance of multiple exceptions, the contents of SPC and SSR must be saved while
the BL bit is set to 1 after an exception has been accepted, and then the BL bit must be cleared to
0. Before restoring the SPC and SSR, the BL bit must be set to 1.
5.2.5
Exception Source Acceptance Timing and Priority
Exception Request of Instruction Synchronous Type and Instruction Asynchronous Type:
Resets and interrupts are requested asynchronously regardless of the program flow. In general
exceptions, a DMA address error and a user break under the specific condition are also requested
asynchronously. The user cannot expect on which instruction an exception is requested. For
general exceptions other than a DMA address error and a user break under a specific condition,
each general exception corresponds to a specific instruction.
Re-Execution Type and Processing-Completion Type Exceptions: All exceptions are classified
into two types: a re-execution type and a processing-completion type. If a re-execution type
exception is accepted, the current instruction executed when the exception is accepted is
terminated and the instruction address is saved to the SPC. After returning from the exception
processing, program execution resumes from the instruction where the exception was accepted. In
a processing-completion type exception, the current instruction executed when the exception is
accepted is completed, the next instruction address is saved to the SPC, and then the exception
processing is executed.
During a delayed branch instruction and delay slot, the following operations are executed. A re-
execution type exception detected in a delay slot is accepted before executing the delayed branch
instruction. A processing-completion type exception detected in a delayed branch instruction or a
delay slot is accepted when the delayed branch instruction has been executed. In this case, the
acceptance of delayed branch instruction or a delay slot precedes the execution of the branch
destination instruction. In the above description, a delay slot indicates an instruction following an
unconditional delayed branch instruction or an instruction following a conditional delayed branch
instruction whose branch condition is satisfied. If a branch does not occur in a conditional delayed
branch, the normal processing is executed.
Acceptance Priority and Test Priority: Acceptance priorities are determined for all exception
requests. The priority of resets, general exceptions, and interrupts are determined in this order: a
reset is always accepted regardless of the CPU status. Interrupts are accepted only when resets or
general exceptions are not requested.
If multiple general exceptions occur simultaneously in the same instruction, the priority is
determined as follows.
1.
A processing-completion type exception generated at the previous instruction*
2.
A user break before instruction execution (re-execution type)
3.
An exception related to an instruction fetch (CPU address error and MMU related exceptions:
re-execution type)
Summary of Contents for SH7705
Page 2: ......
Page 70: ...Rev 2 00 09 03 page 24 of 690 ...
Page 194: ...Rev 2 00 09 03 page 148 of 690 ...
Page 284: ...Rev 2 00 09 03 page 238 of 690 ...
Page 338: ...Rev 2 00 09 03 page 292 of 690 ...
Page 354: ...Rev 2 00 09 03 page 308 of 690 ...
Page 374: ...Rev 2 00 09 03 page 328 of 690 ...
Page 420: ...Rev 2 00 09 03 page 374 of 690 ...
Page 476: ...Rev 2 00 09 03 page 430 of 690 ...
Page 482: ...Rev 2 00 09 03 page 436 of 690 ...
Page 552: ...Rev 2 00 09 03 page 506 of 690 ...
Page 630: ...Rev 2 00 09 03 page 584 of 690 ...
Page 739: ...SH7705 Group Hardware Manual REJ09B0082 0200O ...