beautypg.com

The x, y and z registers, Arithmetic logic unit (alu), In-system self- programmable flash program memory – Rainbow Electronics AT86RF401 User Manual

Page 20

background image

20

AT86RF401

1424D–RKE–09/02

The X, Y and Z Registers

The registers R26...R31 have some added functions to their general-purpose usage.
These registers are address pointers for indirect addressing of the data space. The
three indirect address registers X, Y and Z are defined as shown in Figure 9.

Figure 9. The X, Y and Z Registers

In the different addressing modes, these address registers have functions as fixed dis-
placement, automatic increment and decrement (see the descriptions for the different
instructions).

Arithmetic Logic Unit
(ALU)

The high-performance AVR ALU operates in direct connection with all the 32 general-
purpose working registers. Within a single clock cycle, ALU operations between regis-
ters in the register file are executed. The ALU operations are divided into three main
categories: arithmetic, logical and bit-functions. The multiplier is not present in this ver-
sion of the core. Therefore, the MUL instruction is not supported.

In-system Self-
programmable Flash
Program Memory

The AT86RF401 contains 2 Kbytes of on-chip Flash memory for program storage. Since
all instructions are 16- or 32-bit words, the Flash is organized as 1K x 16.

The Flash memory has an endurance of at least 1000 write/erase cycles. The PC is 10
bits wide, thus addressing the 1024 program memory locations. See the Memory Pro-
gramming section (page 13) for a detailed description on Flash data serial downloading.

Constant tables can be allocated within the entire program memory address space (see
Table 10, Instruction Set, page 44).

15

XH

XL

0

X Register

70

0

7

0

R27 ($1B)

R26 ($1A)

15

YH

YL

0

Y Register

70

0

7

0

R29 ($1D)

R28 ($1C)

15

ZH

ZL

0

Z Register

70

0

7

0

R30 ($1F)

R31 ($1E)