Automatic Circular Addressing - Analog Devices ADSP-BF53x Blackfin Reference

Table of Contents

Advertisement

Automatic Circular Addressing

The Blackfin processor provides an optional circular (or "modulo")
addressing feature that increments an Index Register (
defined address range, then automatically resets the
range. This feature improves input/output loop performance by eliminat-
ing the need to manually reinitialize the address index pointer each time.
Circular addressing is useful, for instance, when repetitively loading or
storing a string of fixed-sized data blocks.
The circular buffer contents must meet the following conditions:
• The maximum length of a circular buffer (that is, the value held in
any L register) must be an unsigned number with magnitude less
31
than 2
• The magnitude of the modifier should be less than the length of
the circular buffer.
• The initial location of the pointer I should be within the circular
buffer defined by the base B and length L.
If any of these conditions is not satisfied, then processor behavior is not
specified.
There are two elements of automatic circular addressing:
• Indexed address instructions
• Four sets of circular addressing buffer registers composed of one
each
Ireg
I3/B3/L3
To qualify for circular addressing, the indexed address instruction must
explicitly modify an Index Register. Some indexed address instructions use
a Modify Register (
can be used to increment any
Mreg
specifies which of the four circular buffer sets to use.
ADSP-BF53x/BF56x Blackfin Processor Programming Reference
.
,
, and
(i.e.,
Breg
Lreg
)
) to increment the
Mreg
Ireg
,
I0/B0/L0
I1/B1/L1
value. In that case, any
Ireg
. The
used in the instruction
Ireg
Ireg
Introduction
) through a pre-
Ireg
to repeat that
,
, and
I2/B2/L2
1-21

Advertisement

Table of Contents
loading

This manual is also suitable for:

Adsp-bf56x blackfin

Table of Contents