English
Language : 

SAM7X128_14 Datasheet, PDF (128/662 Pages) ATMEL Corporation – ARM-based Flash MCU
21. AT91SAM Boot Program
21.1 Overview
The Boot Program integrates different programs permitting download and/or upload into the different memories of the
product.
First, it initializes the Debug Unit serial port (DBGU) and the USB Device Port.
SAM-BA Boot is then executed. It waits for transactions either on the USB device, or on the DBGU serial port.
21.2 Flow Diagram
The Boot Program implements the algorithm in Figure 21-1.
Figure 21-1. Boot Program Algorithm Flow Diagram
No
Device
Setup
USB Enumeration
Successful ?
Yes
Run SAM-BA Boot
No
AutoBaudrate
Sequence Successful ?
Yes
Run SAM-BA Boot
21.3
Device Initialization
Initialization follows the steps described below:
1. FIQ initialization
1. Stack setup for ARM supervisor mode
2. Setup the Embedded Flash Controller
3. External Clock detection
4. Main oscillator frequency detection if no external clock detected
5. Switch Master Clock on Main Oscillator
6. Copy code into SRAM
7. C variable initialization
8. PLL setup: PLL is initialized to generate a 48 MHz clock necessary to use the USB Device
9. Disable of the Watchdog and enable of the user reset
10. Initialization of the USB Device Port
11. Jump to SAM-BA Boot sequence (see “SAM-BA Boot” on page 129)
SAM7X Series [DATASHEET]
6120K–ATARM–11-Feb-14
128