Programming Model; Address Output Multiplexers; Section 4.3 Programming Model - Motorola DSP56000 Manual

24-bit digital signal processor
Hide thumbs Also See for DSP56000:
Table of Contents

Advertisement

PROGRAMMING MODEL

selected address register. A second full adder (called a modulo adder) adds the summed
result of the first full adder to a modulo value, M or minus M, where M-1 is stored in the
respective modifier register. A third full adder (called a reverse-carry adder) can add 1)
plus one, 2) minus one, 3) the offset N (stored in the respective offset register), or 4) minus
N to the selected address register with the carry propagating in the reverse direction —
i.e., from the most significant bit (MSB) to the least significant bit (LSB). The offset adder
and the reverse-carry adder are in parallel and share common inputs. The only difference
between them is that the carry propagates in opposite directions. Test logic determines
which of the three summed results of the full adders is output.
Each address ALU can update one address register, Rn, from its respective address reg-
ister file during one instruction cycle and can perform linear, reverse-carry, and modulo
arithmetic. The contents of the selected modifier register specify the type of arithmetic to
be used in an address register update calculation. The modifier value is decoded in the
address ALU.
±
±
The output of the offset adder gives the result of linear arithmetic (e.g., Rn
1; Rn
N)
and is selected as the modulo arithmetic unit output for linear arithmetic addressing mod-
ifiers. The reverse-carry adder performs the required operation for reverse-carry
arithmetic and its result is selected as the address ALU output for reverse-carry address-
k
ing modifiers. Reverse-carry arithmetic is useful for 2
-point fast Fourier transform (FFT)
addressing. For modulo arithmetic, the modulo arithmetic unit will perform the function
±
(Rn
N) modulo M, where N can be one, minus one, or the contents of the offset register
Nn. If the modulo operation requires wraparound for modulo arithmetic, the summed out-
put of the modulo adder gives the correct updated address register value; if wraparound
is not necessary, the output of the offset adder gives the correct result.

4.2.5 Address Output Multiplexers

The address output multiplexers (see Figure 4-2) select the source for the XAB, YAB, and
PAB. These multiplexers allow the XAB, YAB, or PAB outputs to originate from R0 - R3
or R4 - R7.
4.3
PROGRAMMING MODEL
The programmer's view of the AGU is eight sets of three registers (see Figure 4-3). These
registers can act as temporary data registers and indirect memory pointers. Automatic up-
dating is available when using address register indirect addressing. The Mn registers can
be programmed for linear addressing, modulo addressing, and bit-reverse addressing.
4 - 6
ADDRESS GENERATION UNIT
MOTOROLA

Advertisement

Table of Contents
loading

This manual is also suitable for:

Dsp56k

Table of Contents