Lpc2119/2129/2292/2294 Memory Re-Mapping And Boot Block - Philips LPC2119 User Manual

Arm-based microcontroller
Hide thumbs Also See for LPC2119:
Table of Contents

Advertisement

Philips Semiconductors
ARM-based Microcontroller

LPC2119/2129/2292/2294 MEMORY RE-MAPPING AND BOOT BLOCK

Memory Map Concepts and Operating Modes
The basic concept on the LPC2119/2129/2292/2294 is that each memory area has a "natural" location in the memory map. This
is the address range for which code residing in that area is written. The bulk of each memory space remains permanently fixed
in the same location, eliminating the need to have portions of the code designed to run in different address ranges.
Because of the location of the interrupt vectors on the ARM7 processor (at addresses 0x0000 0000 through 0x0000 001C, as
shown in Table 3 below), a small portion of the Boot Block and SRAM spaces need to be re-mapped in order to allow alternative
uses of interrupts in the different operating modes described in Table 4. Re-mapping of the interrupts is accomplished via the
Memory Mapping Control feature described in the System Control Block section.
Table 3: ARM Exception Vector Locations
Address
Exception
0x0000 0000
Reset
0x0000 0004
Undefined Instruction
0x0000 0008
Software Interrupt
0x0000 000C
Prefetch Abort (instruction fetch memory fault)
0x0000 0010
Data Abort (data access memory fault)
0x0000 0014
Reserved *
0x0000 0018
IRQ
0x0000 001C
FIQ
*: Identified as reserved in ARM documentation, this location is used by the Boot Loader as the Valid User Program key. This is
descibed in detail in Flash Memory System and Programming on page 228.
Table 4: LPC2119/2129/2292/2294 Memory Mapping Modes
Mode
Activation
Boot Loader
Hardware activation
mode
by any Reset
User Flash
Software activation
mode
by Boot code
User RAM
Software activation
mode
by User program
Activated by
User External
BOOT1:0 pins not
mode
11 at Reset
LPC2119/2129/2292/2294 Memory Addressing
The Boot Loader always executes after any reset. The Boot Block interrupt vectors are
mapped to the bottom of memory to allow handling exceptions and using interrupts
during the Boot Loading process.
Activated by Boot Loader when a valid User Program Signature is recognized in memory
and Boot Loader operation is not forced. Interrupt vectors are not re-mapped and are
found in the bottom of the Flash memory.
Activated by a User Program as desired. Interrupt vectors are re-mapped to the bottom
of the Static RAM.
Activated by the Boot Loader when either or both BOOT pins are low at the end of
RESET low. Interrupt vectors are re-mapped from the bottom of the external memory
map.
Note: This mode is available in LPC2292/2294 only!
36
LPC2119/2129/2292/2294
Usage
Preliminary User Manual
January 08, 2004

Hide quick links:

Advertisement

Table of Contents
loading

This manual is also suitable for:

Lpc2129Lpc2292Lpc2294

Table of Contents