Rainbow Electronics MAXQ3120 User Manual
Page 11

MAXQ3120
High-Precision ADC
Mixed-Signal Microcontroller
____________________________________________________________________
11
Refer to the user’s guide supplement for this device for
more details.
In all cases, whichever memory segment is currently
being executed from cannot be accessed in data space.
To allow the use of lookup tables and similar constructs
in the flash memory, the utility ROM contains a set of
lookup and block copy routines (refer to the user’s guide
supplement for this device for more details).
The incorporation of flash memory allows the device to
be reprogrammed, eliminating the expense of throwing
away one-time programmable devices during develop-
ment and field upgrades. Flash memory can be pass-
word protected with a 16-word key, denying access to
program memory by unauthorized individuals.
Stack Memory
A 16-bit-wide internal stack provides storage for pro-
gram return addresses and general-purpose use. The
stack is used automatically by the processor when the
CALL, RET, and RETI instructions are executed and
interrupts serviced. The stack can also be used explic-
itly to store and retrieve data by using the PUSH, POP,
and POPI instructions.
On reset, the stack pointer, SP, initializes to the top of
the stack (0Fh). The CALL, PUSH, and interrupt-vector-
ing operations increment SP, then store a value at the
stack location pointed to by SP. The RET, RETI, POP,
and POPI operations retrieve the value at the stack
location pointed to by SP, and then decrement SP.
Utility ROM
The utility ROM is a 2kWord block of internal ROM
memory that defaults to a starting address of 8000h.
The utility ROM consists of subroutines that can be
called from application software. These include:
• In-system programming (bootloader) over the JTAG
interface
• In-circuit debug routines
• Test routines (internal memory tests, memory loader,
etc.)
• User-callable routines for in-application flash pro-
gramming and code space table lookup
Figure 1. Memory Map
DATA SPACE
(WORD MODE)
87FFh
8000h
00FFh
0000h
A0FFh
A000h
DATA SPACE
(BYTE MODE)
8FFFh
8000h
01FFh
0000h
87FFh
3FFFh
8000h
0000h
SYSTEM
REGISTERS
PROGRAM
SPACE
256 x 16
DATA SRAM
2k x 16
UTILITY ROM
4k x 8
UTILITY ROM
512 x 8
DATA SRAM
256 x 16
DATA SRAM
2k x 16
UTILITY ROM
16 x 16
STACK
M0
x0h
x1Fh
M1
M2
M3
0xh
1xh
2xh
3xh
AP
x0h
xFh
A
PFX
IP
8xh
9xh
Bxh
SP
DPC
DP
Dxh
Exh
Fxh
Cxh
PERIPHERAL
REGISTERS
16k x 16
PROGRAM
FLASH
OR MASKED
ROM