at91rm3400 ATMEL Corporation, at91rm3400 Datasheet - Page 45

no-image

at91rm3400

Manufacturer Part Number
at91rm3400
Description
Atmel Advanced At91 Arm Microcontroller
Manufacturer
ATMEL Corporation
Datasheet

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
at91rm3400-AU-002
Manufacturer:
Atmel
Quantity:
10 000
Bootloader
1790A–ATARM–11/03
The Boot Program is started from address 0x0000_0000 (ARM reset vector) when the on-chip
boot mode is selected (BMS high during the reset, only on devices with EBI integrated). The
first operation is the search for a valid program in the off-chip non-volatile memories. If a valid
application is found, this application is loaded into internal SRAM and executed by branching
at address 0x0000_0000 after remap. This application may be the application code or a sec-
ond-level Bootloader.
To optimize the downloaded application code size, the Boot Program embeds several func-
tions that can be reused by the application. The Boot Program is linked at address
0x0010_0000 but the internal ROM is mapped at both 0x0000_0000 and 0x0010_0000 after
reset. All the call to functions is PC relative and does not use absolute addresses. The ARM
vectors are present at both addresses, 0x0000_0000 and 0x0010_0000.
To access the functions in ROM, a structure containing chip descriptor and function entry
points is defined at a fixed address in ROM.
If no valid application is detected, the debug serial port or the USB device port must be con-
nected to allow the upload. A specific application provided by Atmel (DFU uploader) loads the
application into internal SRAM through the USB. To load the application through the debug
serial port, a terminal application (HyperTerminal) running the Xmodem protocol is required.
Figure 10. Remap Action after Download Completion
After reset, the code in internal ROM is mapped at both addresses 0x0000_0000 and
0x0010_0000:
100000
100004
100008
10000c
100010
100014
100018
10001c
ea00000b
e59ff014
e59ff014
e59ff014
e59ff014
00001234
e51fff20
e51fff20
0x0020_0000
0x0000_0000
B
LDR
LDR
LDR
LDR
LDR
LDR
LDR
Internal
Internal
SRAM
ROM
0x2c
PC,[PC,20]
PC,[PC,20]
PC,[PC,20]
PC,[PC,20]
PC,[PC,20]
PC,[PC,-0xf20]
PC,[PC,-0xf20]
REMAP
00
04
08
0c
10
14
18
1c
ea00000b
e59ff014
e59ff014
e59ff014
e59ff014
00001234
e51fff20
e51fff20
Internal
Internal
SRAM
ROM
AT91RM3400
B
LDR
LDR
LDR
LDR
LDR
LDR
LDR
0x0010_0000
0x0000_0000
0x2c
PC,[PC,20]
PC,[PC,20]
PC,[PC,20]
PC,[PC,20]
PC,[PC,20]
PC,[PC,-0xf20]
PC,[PC,-0xf20]
45

Related parts for at91rm3400