MPC563XM Reference Manual, Rev. 1
Freescale Semiconductor
887
Preliminary—Subject to Change Without Notice
Indirect addressing mode can have post-increment or pre-decrement on DIOB, allowing stack operations.
See
Section 23.4.9.1.6, “DIOB Stack Operation
” for more information.
Engine Relative Addressing Mode
In Engine Relative Addressing mode the physical address is the concatenation of the ETPUECR field
ERBA (see
Section 23.3.2.5, “ETPUECR - eTPU Engine Configuration Register
) with the 7-bit AID
instruction field. This allows the same function microcode, when running on distinct engines, to access
different address spaces, global to the engine only.
23.4.9.1.2
SPRAM Source/Destination Registers
When performing an SPRAM operation, only DIOB or P can be used as data source or destination. P is
32-bit wide, and DIOB is 24-bit wide. Microinstruction field P/D (1 bit) is used to choose between P and
DIOB as data the source or destination. When the P/D field is not available in microinstructions that
support SPRAM access, the source/destination is P.
23.4.9.1.3
SPRAM Operation Size
When using DIOB register to perform SPRAM data transfers, the operation size is always 24-bit wide
(lower 24 bits of SPRAM). When using P register, the operation size can be 8-, 24- or 32-bit wide, which
is controlled by microcode RSIZ field (2 bits). RSIZ meaning is shown in
RSIZ is not available in all microinstructions that support SPRAM access. In microinstructions where
RSIZ field is not available, SPRAM access will be 24 bits by default.
When performing a Zero SPRAM write operation (see
Section 23.4.9.1.5, “Zero SPRAM Operation
”),
RSIZ defines the size of operation regardless of the P/D field (
”).
Table 23-53. SPRAM source/destination Register Selection
P/D
meaning
0
P access
1
DIOB access
Table 23-54. SPRAM P access Size
RSIZ
P access
DIOB access
00
full 32-bit access (i.e. P[31:0]=SPRAM[addr] [31:0])
RESERVED
01
only upper 8 bits are transferred (i.e. P[31:24] = SPRAM[addr] [31:24])
RESERVED
10
only lower 24 bits are transferred (i.e.
.
P[23:0] = SPRAM[addr] [23:0])
DIOB =
SPRAM[addr] [23:0
11
RESERVED
RESERVED