Branches - Analog Devices ADSP-BF53x Blackfin Reference

Table of Contents

Advertisement

Branches

Branches
One type of nonsequential program flow that the sequencer supports is
branching. A branch occurs when a
tion at a new location other than the next sequential address. For
descriptions of how to use the
"Program Flow Control."
• A
JUMP
memory location. The difference between a
a
automatically loads the return address into the
CALL
The return address is the next sequential address after the
instruction. This push makes the address available for the
instruction's matching return instruction, allowing easy return
from the subroutine.
• A return instruction causes the sequencer to fetch the instruction at
the return address, which is stored in the
tine returns). The types of return instructions include: return from
subroutine (
tion (
RTX
nonmaskable interrupt (
for holding the return address.
• A
JUMP
the
bit of the
CC
and may not be delayed. The program sequencer can evaluate the
status bit to decide whether to execute a branch. If no condition
CC
is specified, the branch is always taken.
• Conditional
reduce the branch latency caused by the length of the pipeline.
4-10
ADSP-BF53x/BF56x Blackfin Processor Programming Reference
JUMP
Briefly:
or a
instruction transfers program flow to another
CALL
), return from interrupt (
RTS
), return from emulation (
RTN
instruction can be conditional, depending on the status of
register. These instructions are immediate
ASTAT
instructions use static branch prediction to
JUMP
or
instruction begins execu-
JUMP
CALL
and
instructions, see
CALL
JUMP
RETS
), return from excep-
RTI
), and return from
RTE
). Each return type has its own register
Chapter 7,
and a
is that
CALL
register.
RETS
CALL
CALL
register (for subrou-

Advertisement

Table of Contents
loading

This manual is also suitable for:

Adsp-bf56x blackfin

Table of Contents