UM10429
All information provided in this document is subject to legal disclaimers.
© NXP B.V. 2010. All rights reserved.
User manual
Rev. 1 — 20 October 2010
168 of 258
NXP Semiconductors
UM10429
Chapter 17: LPC1102 Flash memory programming firmware
17.7.2 Serial Wire Debug (SWD) flash programming interface
Debug tools can write parts of the flash image to RAM and then execute the IAP call
"Copy RAM to flash" repeatedly with proper offset.
17.8 Flash memory access
Depending on the system clock frequency, access to the flash memory can be configured
with various access times by writing to the FLASHCFG register at address 0x4003 C010.
Remark:
Improper setting of this register may result in incorrect operation of the LPC1102
flash memory.
17.9 Flash signature generation
The flash module contains a built-in signature generator. This generator can produce a
128-bit signature from a range of flash memory. A typical usage is to verify the flashed
contents against a calculated signature (e.g. during programming).
The address range for generating a signature must be aligned on flash-word boundaries,
i.e. 128-bit boundaries. Once started, signature generation completes independently.
While signature generation is in progress, the flash memory cannot be accessed for other
purposes, and an attempted read will cause a wait state to be asserted until signature
generation is complete. Code outside of the flash (e.g. internal RAM) can be executed
during signature generation. This can include interrupt services, if the interrupt vector
table is re-mapped to memory other than the flash memory. The code that initiates
signature generation should also be placed outside of the flash memory.
Table 179. Memory mapping in debug mode
Memory mapping mode
Memory start address visible at 0x0000 0004
Bootloader mode
0x1FFF 0000
User flash mode
0x0000 0000
User SRAM mode
0x1000 0000
Table 180. Flash configuration register (FLASHCFG, address 0x4003 C010) bit description
Bit
Symbol
Value Description
Reset
value
1:0
FLASHTIM
Flash memory access time. FL1 is equal to the
number of system clocks used for flash access.
10
00
1 system clock flash access time (for system clock
frequencies of up to 20 MHz).
01
2 system clocks flash access time (for system clock
frequencies of up to 40 MHz).
10
3 system clocks flash access time (for system clock
frequencies of up to 50 MHz).
11
Reserved.
31:2 -
-
Reserved.
User software must not change the value of
these bits. Bits 31:2 must be written back exactly as read
.
<tbd>