English
Language : 

SH7055S Datasheet, PDF (128/1002 Pages) Renesas Technology Corp – Renesas 32-Bit RISC Microcomputer SuperH RISC engine Family/SH7000 Series
6.5.3 Illegal Slot Instructions
An instruction placed immediately after a delayed branch instruction is said to be placed in a delay
slot. When the instruction placed in the delay slot is undefined code, illegal slot exception
processing starts up when that undefined code is decoded. Illegal slot exception processing also
starts up when an instruction that rewrites the program counter (PC) is placed in a delay slot. The
processing starts when the instruction is decoded. The CPU handles an illegal slot instruction as
follows:
1. The status register (SR) is saved to the stack.
2. The program counter (PC) is saved to the stack. The PC value saved is the jump address of the
delayed branch instruction immediately before the undefined code or the instruction that
rewrites the PC.
3. The exception service routine start address is fetched from the exception processing vector
table that corresponds to the exception that occurred. That address is jumped to and the
program starts executing. The jump that occurs is not a delayed branch.
6.5.4 General Illegal Instructions
When undefined code placed anywhere other than immediately after a delayed branch instruction
(i.e., in a delay slot) is decoded, general illegal instruction exception processing starts up. The
CPU handles general illegal instructions in the same way as illegal slot instructions. Unlike
processing of illegal slot instructions, however, the program counter value stored is the start
address of the undefined code.
When the FPU has been stopped by means of the module stop bit, floating-point instructions and
FPU-related CPU instructions are treated as illegal instructions.
6.5.5 Floating-Point Instructions
When the V or Z bit is set in the enable field of the FPSCR register, an FPU exception occurs.
This indicates that a floating-point instruction has caused an invalid operation exception defined in
the IEEE754 standard or a division-by-zero exception. Floating-point instructions which can cause
an exception are as follows:
FADD, FSUB, FMUL, FDIV, FMAC, FCMP/EQ, FCMP/GT, FNEG,
FABS, FTRC
An FPU exception occurs only if the corresponding enable bit is set. When the FPU detects an
exception source, FPU operation is suspended and the occurrence of the exception is reported to
the CPU. When exception processing is started, the CPU saves the SR and PC contents to the
stack (the PC value saved is the start address of the instruction following the last instruction
executed), and branches to VBR + H'00000034.
Rev.2.0, 07/03, page 90 of 960