CPU16
REFERENCE MANUAL
SYSTEM RESOURCES
MOTOROLA
3-5
PK[3:0] — Program Counter Address Extension Field
This field is concatenated with the program counter to form a 20-bit address.
3.2.6 Address Extension Register and Address Extension Fields
There are six 4-bit address extension fields. EK, XK, YK, and ZK are contained by the
address extension register, PK is part of the CCR, and SK stands alone.
Extension fields are the bank portions of 20-bit concatenated bank : byte addresses
used in the CPU16 pseudolinear memory management scheme.
All extension fields except EK correspond directly to a register. XK, YK, and ZK extend
registers IX, IY, and IZ; PK extends the PC; and SK extends the SP. EK holds the four
MSB of the 20-bit address used by extended addressing mode.
The function of extension fields is discussed in
3.3 Memory Management
.
3.2.7 Multiply and Accumulate Registers
The multiply and accumulate (MAC) registers are part of a CPU submodule that per-
forms repetitive signed fractional multiplication and stores the cumulative result. These
operations are part of control-oriented digital signal processing.
There are four MAC registers. Register H contains the 16-bit signed fractional multipli-
er. Register I contains the 16-bit signed fractional multiplicand. Accumulator M is a
specialized 36-bit product accumulation register. XMSK and YMSK contain 8-bit mask
values used in modulo addressing.
The CPU16 has a special subset of signal processing instructions that manipulate the
MAC registers and perform signal processing calculation. See
SECTION 5 INSTRUC-
TION SET
and
SECTION 11 DIGITAL SIGNAL PROCESSING
for more information.
3.3 Memory Management
The CPU16 uses bank switching to provide a 1 Megabyte address space. There are
16 banks within the address space. Each bank is made up of 64 Kbytes addressed
from $0000 to $FFFF. Banks are selected by means of address extension fields asso-
ciated with individual CPU16 registers.
In addition, address space can be split into discrete 1 Megabyte program and data
spaces by externally decoding the outputs described in
3.5.1.1 Function Codes
.
When this technique is used, instruction fetches and RESET vector fetches access
program space, while exception vector fetches (other than RESET), data accesses,
and stack accesses are made in data space.
3.3.1 Address Extension
All CPU16 resources that are used to generate addresses are effectively 20 bits wide.
These resources include extended index registers, program counter, and stack point-
er. All addressing modes use 20-bit addresses.
F
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
n
.