Operations With A Delay Slot - Fujitsu FR60 Hardware Manual

Hide thumbs Also See for FR60:
Table of Contents

Advertisement

CHAPTER 3 CPU AND CONTROL UNITS
3.6.1

Operations with a Delay Slot

This section describes operation when operations with a delay slot are specified for a
branch instruction.
■ Branch Instructions with Delay Slot
Instructions written as follows perform a branch operation with a delay slot:
JMP:D
BRA:D
BC:D
BV:D
BLE:D
■ Operation with Delay Slot
In an operation with a delay slot, the instruction immediately following the branch instruction (this is called
the delay slot) is executed, then the instruction at the branch destination is executed.
Since an instruction in the delay slot is executed before the branch operation, the apparent execution speed
is one cycle. However, a NOP instruction must be placed in the delay slot if there is no valid instruction put
there.
[Example]
;
LABEL :
If a conditional branch instruction is used, an instruction placed in the delay slot is executed whether or not
the condition for branching is met.
If a delay branch instruction is used, the order of execution for some instructions seems to be reversed.
However, this occurs only for updating the PC and the instructions are executed in the specified order for
other operations (register update and reference, etc.)
The following is a concrete example.
1) Ri referred by the JMP:D @Ri / CALL:D @Ri instruction is not affected even though Ri is updated by
the instruction in the delay slot.
68
@Ri
CALL:D
label12
label9
BNO:D
label9
label9
BNC:D
label9
label9
BNV:D
label9
label9
BGT:D
label9
List of instructions
ADD
R1,
BRA:D
LABEL
MOV
R2,
...
ST
R3,
CALL:D
@Ri
BEQ:D
label9
BN:D
label9
BLT:D
label9
BLS:D
label9
R2,
;
;
Branch instruction
R3,
;
Delay slot ... Executed before branch
@R4
;
Branch destination
RET:D
BNE:D
label9
BP:D
label9
BGE:D
label9
BHI:D
label9

Advertisement

Table of Contents
loading

This manual is also suitable for:

Mb91350a series

Table of Contents