Presentation is loading. Please wait.

Presentation is loading. Please wait.

AT91SAM Boot Strategies Application Deployment

Similar presentations


Presentation on theme: "AT91SAM Boot Strategies Application Deployment"— Presentation transcript:

1 AT91SAM Boot Strategies Application Deployment
Many customers face problems when they want to deploy final application on their boards because they are lost in the different necessary steps they need to go through. This technical presentation will highlight the different boot solutions available in the AT91SAM microcontrollers, their interests and specifities. Frederic BOYER Support & Training Group Engineer AT91 Training Coordinator ARM MCU & MPU

2 Outline Introduction Boot Solutions Application Deployment
NVM Programming Solutions After a brief introduction, we will take a look at different boot solutions we embed in our boot ROM, then how to simply deploy the custom application. Lastly, different free programming solutions which are provided on the atmel.com website will be fully reviewed.

3 1. Introduction We will begin with the introduction and overview of NAND versus NOR Flash memories.

4 NAND vs. NOR Flash 1. Introduction Advantage of NAND Advantage of NOR
High Speed Program/Erase Low Cost-per-bit High Capacity Advantage of NOR High Speed Random Access Byte Programming Code execution Disadvantage of NAND Slow Random Access Time Difficulty of Byte Programming Disadvantage of NOR Slow Program Speed Slow Erase Speed NOR flash memory has traditionally been used to store relatively small amounts of executable code for embedded computing devices such as PDAs and cell phones. NOR is well suited to use for code storage because of its reliability, fast read operations, and random access capabilities. Because code can be directly executed in place, NOR is ideal for storing firmware, boot code, operating systems and other data that changes infrequently. NAND flash memory has become the preferred format for storing larger amounts of data on devices such as USB Flash drives, digital cameras and MP3 players. Higher density, lower cost, and faster write and erase times, and a longer re-write life expectancy make NAND especially well suited for consumer media applications in which large files of sequential data need to be loaded into memory quickly and replaced with new files repeatedly. Applications Suitable for Data Memory Program/Data Mass Storage Applications Suitable for Code Memory eXecute In Place (XIP)

5 NOR vs. NAND Boot Considerations
1. Introduction NOR vs. NAND Boot Considerations NOR Flash Used as an eXecute In Place (XIP) memory: no need to copy the program into RAM Used to replace ROM NAND Flash Programs stored cannot be executed directly Code Shadowing must be performed: memory contents must be first copied into memory-mapped RAM and executed there Used to replace Hard Disk Drive Reading out of a NOR flash is similar to reading out of a random-access memory, provided the address and data bus are mapped correctly. Because of this, most microprocessors can use NOR flash memory as execute-in-place memory, meaning that programs stored in NOR flash can be executed directly without the need to copy them into RAM. That is not the case for a NAND Flash memory in which programs cannot be executed directly; instead, code shadowing must be performed. But, we will see that thanks to our Atmel’s boot ROM, it is possible to boot from one of these NAND Flash based memories which do not require an external NOR flash.

6 AT91SAM Boot Strategies Introduction
To ensure maximum boot possibilities, memory layout can be changed with different parameters. On our AT91SAM, either GPNVM bit or BMS pin is responsible for the boot memory selection: GPNVM bit for embedded flash µC: SAM7, SAM9XE. BMS pin for the others: SAM926x, SAM9G20, SAM9R(L)… GPNVM bit (Embedded Flash based µC) BMS pin (Flashless µC) OR Regarding Atmel’s AT91SAM products, there are different parameters that are responsible for the boot memory selection: A general purpose non volatile memory bit (GPNVM bit) for microcontrollers that embed an internal Flash: this is applicable for all AT91SAM7 products and the AT91SAM9XE. A Boot Mode Select pin (BMS pin) is available for the AT91SAM9 products; one exception is the AT91SAM9XE as earlier mentioned. Power Up Boot Memory Selection

7 AT91SAM Boot Strategies Introduction (cont.)
Regarding GPNVM bit or BMS pin state, the µC will either: Boot from ROM Or Boot from the XIP memory (internal or external Flash) Boot Memory Selection Regarding GPNVM bit or BMS state, the AT91SAM will either boot from the ebedded ROM or from an eXecute In Place (XIP) flash memory. Boot From ROM Boot From (Int. or Ext.) Flash OR

8 Boot Memory Selection for Flash based µC (SAM7 and SAM9XE)
1. Introduction Boot Memory Selection for Flash based µC (SAM7 and SAM9XE) GPNVM bit is sampled when VDDCORE is powered. GPNVM can be: Set thanks to the EFC Controller Cleared thanks to the EFC Controller or by asserting the ERASE pin. Power Up GPNVM bit = 1 No Yes First case to consider is the AT91SAM microcontrollers which embed an on-chip flash. Regarding the GPNVM bit state, the microcontroller will either boot from the embedded ROM (GPNVM = 0) or from the embedded flash (GPNVM =1). It is possible to set/clear this bit using the EFC Interface User Registers. It is also possible to clear the GPVNM bit by asserting the ERASE pin of the Microcontroller. Boot From ROM Boot From Embedded Flash

9 Boot Memory Selection for Flashless µC (SAM926x, SAM9R(L), SAM9G20)
1. Introduction Boot Memory Selection for Flashless µC (SAM926x, SAM9R(L), SAM9G20) BMS pin is sampled when VDDCORE is powered. Power Up BMS pin = 1 Yes No Let’s talk now about the Flashless AT91SAM microcontrollers. Regarding the BMS pin state, the microcontroller will either boot from the embedded ROM (BMS = 1) or from an external 16-bit NOR Flash connected on the External Bus Interface Chip Select 0 (BMS = 0). Boot From ROM Boot From External 16-bit Flash

10 2. Boot Solutions Let’s have a look now at the different boot solutions we embed in our boot rom.

11 Booting From an eXecute In Place Memory
2. Boot Solutions Booting From an eXecute In Place Memory XIP Memories used for booting purpose are: Embedded Flash (SAM7, SAM9XE) External 16-bit Flash (SAM926x, SAM9R(L), SAM9G20…) No boot program is executed, no initialization performed Whole microcontroller configuration must be made in the application, such as: Clocks configuration: Main Oscillator, PLL Embedded Flash Controller configuration (Wait States…) External Bus Interface configuration (Setup, Hold…) Different XIP memories can be used for booting purpose: either the embedded flash or an 16-bit NOR Flash. At power up, the System Clock is the Slow Clock (32kHz). The first instruction executed is at the address 0x0. So at this step, no boot program has been executed so no device initializations have been performed. That means the user application running out of this memory must performed different important initializations: clocks setup, flash timings configuration, etc.

12 Booting from ROM 2. Boot Solutions AT91SAM Boot ROM supports numerous
applications AT91SAM BootROM NVM Memory Bootloader SAM-BA Boot FFPI IAP Function It is also possible to boot from the embedded ROM. Our AT91SAM Boot ROM provides numerous applications depending on the AT91SAM product! (?) It may embed: A 1st Level Bootloader called NVM Memory Bootloader that will call a 2nd one depending on the customer application. An In System Programming (ISP) Firmware Solution called SAM-BA Boot A paralell Fast Flash Programming Interface for the Gang Programming Vendors An In Application Programming (IAP) feature to upgraade customer firmware easily in the field. 2nd Level Bootloader ISP Gang Programmer Interface IAP

13 BootROM Applications 2. Boot Solutions Flash AT91 µC NVM Bootloader
SAM-BA Boot FFPI IAP Function SAM7S - X SAM7X/XC SAM7SE SAM7L SAM9XE FlashLess AT91 µC SAM9260 X - SAM9261(S) SAM9263 SAM9R(L)64 SAM9G10 SAM9G20 SAM9G45 These different applications may or not be embedded in our products. They are referenced in this table. SAM-BA Boot is always implemented in all of our AT91SAM7 and AT91SAM9 families.

14 NVM Memory Bootloader Application
2. Boot Solutions NVM Memory Bootloader Application 1st Level Bootloader Contrary to XIP memories, it is not possible to boot directly from a DataFlash, serial Flash, NAND Flash, SDCard or EEPROM NVM Memory content must be first copied into memory-mapped RAM and executed there NMV Memory Bootloader called “NVM-Boot” is responsible for this copy NVM-Boot No need for external NOR Flash memory ! Yes Valid Code ? Contrary to XIP memories, it is not possible to boot directly from a DataFlash, serial Flash, NandFlash, SDCard or EEPROM: the NVM Memory content must be first copied into memory-mapped RAM and executed there. The NMV Memory Boot Loader called “NVM-Boot” embedded in our BOOT ROM is responsible for this copy. This application once executed will look for a valid code in the concerned NVM memory. If a valid code is found, the application programmed in that memory will be copied from and into the internal SRAM of the product. Then, all the peripherals will be reset, so that the microcontroller will be in the same state than as before a reset. Finally, the boot code will branch directly on the copied application so that it is executed. This will allow the application not to use an external NOR Flash memory for booting purpose, reducing its BOM. What is a valid code will be explained later. Copy code from NVM memory into SRAM No Reset Peripherals, remap and execute code out of SRAM Next NVM-Boot

15 Supported NVM Memories
2. Boot Solutions Supported NVM Memories One NVM memory for a whole application !!! Serial DataFlash: ATMEL AT45D and AT45DCB Serial Flash: Industry’s most advanced 25xxx compatible serial Flash (ATMEL AT25/26, SST, ST, Winbond…) SLC NandFlash: 8- and 16-bit, small and large blocks SDCard: any FAT12/16/32 formatted SD Cards which are not High Capacity SDHC EEPROM: any I²C Memory EEPROM Here we list different types of Nonvolatile Memories that are supported by Atmel’s ARM products. We have native support for: Serial ATMEL DataFlash Serial 25xxx series Flash SLC NAND Flash (8-, 16-bit, small/large blocks) Standard SDCards (Not High Capacity SDCards SDHC) Any I2C EEPROM

16 What is a valid code? 2. Boot Solutions SD Card Example:
boot.bin file in the root directory of any FAT12/16/32 formatted SD Cards Code size < AT91SAM internal SRAM size* What’s a valid code? Two cases depending on the memory: SD Card example Other memories example that will be covered on the next slide For SDCards, there are two requirements that must be followed: 1) A boot.bin file must be written in the root directory of a FAT formatted SDCard 2) The code size of this boot.bin must be at least smaller than the AT91SAM internal SRAM size. Once again, this is product dependant and must be checked in the Boot Program section of the product datasheet. * Max code size value must be checked in the Boot Program section of each product datasheet

17 What is a valid code (cont’d)?
2. Boot Solutions What is a valid code (cont’d)? DataFlash, NAND Flash, Serial Flash & EEPROM example: The ARM exception vectors must have valid ARM instructions (B or LDR), excluding the 6th vector The 6th vector (reserved 0x14), must correspond to the size of the image to be copied in internal SRAM. Code size < AT91SAM internal SRAM size* Vector 1 Vector 2 Vector 3 Vector 4 Vector 5 Vector 6 Vector 7 Vector 8 00 e59ff074 04 e59ff014 08 e59ff014 0c e59ff014 10 e59ff014 18 e59ff060 1C e59ff00C Reset Undefined Instruction Software Interrupt Prefect Abort Data abort Reserved: SIZE OF THE IMAGE Normal interrupt Fast interrupt At address 0, for all ARM programs, there are 8 ARM exception vectors which are equivalent to 8 words. ARM exception Vectors are: 1. Reset 2. Undefined Instruction 3. Software Interrupt 4. Prefect Abort 5. Data Abort 6. Reserved / used as code size if boot code 7. Normal Interrupt 8. Fast Interrupt Valid code conditions: Check if the first data correspond to either a Branch instruction B (0xE5) or load register instruction LDR (0xEA). The 6th vector contains the size of the image to download. The code size must be at least smaller than the AT91SAM internal SRAM size. Once again, this is product dependant and must be checked in the Boot Program section of the product datasheet. Notes : Samba GUI application writes automatically this vector with the code size thanks to the “Send boot” command ROMCode uses data in SRAM (at the end). So MAX_SIZE < SRAM_SIZE. ‘e59’  LDR opcode ARM exception vectors * Max code size value must be checked in the Boot Program section of each product datasheet

18 NVM Memory Bootloader Support
2. Boot Solutions NVM Memory Bootloader Support AT NVM DataFlash (SPI) Serial Flash SLC NandFlash (EBI) Standard SDCard (MCI) EEPROM (TWI) SAM9260 rev A SAM9260 rev B X - SAM9261(S) rev A SAM9261 rev B SAM9263 rev A SAM9263 rev B SAM9R(L)64 rev A SAM9G10 rev A SAM9G20 rev A SAM9G20 rev B SAM9G45 rev A Different memories supported by AT91SAM9 products (by revision) are referenced in this table. H/W (driven pins, clocks) & S/W (max downloadable code size) constraints can be found in the Boot Program section of the product.

19 If no valid code is found, what is the next step?
2. Boot Solutions No Valid Code Found As soon as valid code is found in a bootable memory, the boot ROM sequence is completed. When a valid code has been found in one of the supported memories, the boot branches on this code and so the Boot ROM sequence is completed. If no valid code has been found in the different supported memories, what will happen? If no valid code is found, what is the next step?

20 AT91SAM9R(L)64 Boot ROM Sequence
2. Boot Solutions AT91SAM9R(L)64 Boot ROM Sequence SD Card Boot on MCI NandFlash-Boot on EBI Chip Select 3 DataFlash-Boot on SPI Chip Select 0 Here is the AT91SAM9RL64 Boot ROM sequence as an example. SD Card boot is firstly executed, secondly NAND flash Boot on the EBI Chip Select 3, then DataFlash Boot on the SPI0 Chip Select 0. Finally, if no valid code has been found in one of these memories, the Boot ROM starts SAM-BA Boot execution. SAM-BA Boot

21 SAM-BA Boot Application
2. Boot Solutions SAM-BA Boot Application SAM-BA Boot is a little monitor that provides In-System Programming Solutions through different communication channels: DBGU Serial port interface USB Device port Used to interface ISP Software such as SAM-BA GUI. Check Boot Program section of the product datasheet for H/W and S/W constraints such as crystals/clocks support. Free AT91 ISP Programming Solutions SAM-BA Boot is a little monitor that provides In-System Programming Solutions through different communication channels: DBGU Serial port interface and USB Device port. In-System Programming (ISP) is the ability of some programmable logic devices, microcontrollers and other programmable electronic chips to be programmed while installed in a complete system, rather than requiring the chip to be programmed prior to installing it into the system. This monitor offers several basic read/write commands (WORD, HALF WORD, BYTE) for direct access to the memory mapped and the peripheral registers. The SAM-BA monitor checks in an infinite loop the two possible interfaces (USB/DBGU) until a communication is detected on one of them. 1) Check if USB Device enumeration has occurred, 2) Check if any characters have been received on the DBGU, 3) Once the communication interface is identified (USB or DBGU), the application runs in an infinite loop waiting for different commands.

22 AT91SAM7L & AT91SAM9XE IAP Function
2. Boot Solutions AT91SAM7L & AT91SAM9XE IAP Function IAP: In Application Programming IAP feature is a function located in ROM, that can be called by any software application When called, this function sends the desired FLASH command to the EFC and waits for the FLASH to be ready Executed from ROM, allows FLASH programming by code running out of FLASH This function takes one argument in parameter: the command to be sent to the EFC When called, the In Application Programming (IAP) function sends the desired FLASH command to the EFC and waits for the FLASH to be ready (looping while the FRDY bit is not set in EFC_FSR register). Since this function is executing from ROM, this allows FLASH programming (like page programming) to be done by code running out of FLASH and no more out of SRAM which eases the software engineer IAP development. The IAP function entry point is retrieved by reading the SWI vector in ROM (see product datasheet to get SWI vector address in ROM). Ease IAP Development

23 FFPI – Fast Flash Programming Interface Application
2. Boot Solutions FFPI – Fast Flash Programming Interface Application H/W Programming Solution For Gang Prog. Provides programming solutions for high volume programming, with two interface options Serial: JTAG interface Parallel: 8-bit (AT91SAM7S16/32) or 16-bit (other AT91SAM) The Fast Flash Programming Interface allows programming the device through either a serial JTAG interface or through a multiplexed fully-handshaked parallel port. It allows gang-programming with market-standard industrial programmers. The FFPI supports read, page program, page erase, full erase, lock, unlock and protect commands. The Fast Flash Programming Interface is enabled and the Fast Programming Mode is entered when the TST pin and the PA0 and PA1 pins are all tied high and PA2 tied to low. Security Bit Must Be Cleared TST=1 Serial (JTAG) Parallel (8- or 16-bit)

24 3. AT91SAM Application Deployment
In this third section, we will now describe how to simply deploy a custom application by utilizing different embedded boot solutions.

25 Standard Application Deployment (NVM Memory Bootloader)
1st Level Bootloader (NVM Memory Bootloader) AT91 Bootstrap 2nd Level Bootloader U-boot E-boot FLASH Media(s) (Optional) 3rd Level Bootloader Linux WinCE Standalone App Here is a standard application deployment on an AT91SAM9 product. After power up, the Boot ROM is executed. A NVM memory bootloader may be used as a first level bootloader to copy in the internal SRAM a second level bootloader. In this example, the second level bootloader is the AT91 Bootstrap. This application is a bootstrap for AT91SAM9 microcontrollers. It can be uploaded and launched by the ROM Boot Program and can be used to configure the system and to download a larger application. Then, the 2nd level bootloader may (or may not) be used to download a 3rd bootloarder such as the famous u-boot (Linux) or e-boot (Windows CE) which have many more features available for the OS development. Finally, this third level bootloader will call the final application: maybe Linux, WinCE or a stand alone application. Main Application

26 AT91 Bootstrap 3. Application Deployment Free
Free 2nd Level Bootloader for AT91SAM9 AT91Bootstrap integrates several sets of algorithms: Device initialization such as clock speed configuration, PIO settings, SDRAM initialization Physical media algorithms such as DataFlash, NAND Flash, etc. Loaded thanks to NVM Memory Bootloader located in ROM Current Version is 1.11 and is integrated in our software packages NVM Memory Bootloader Support GNU IAR Keil NAND Flash AT45 DataFlash 25xxx Serial Flash SD Card CFI NOR Flash I2C EEPROM In Dev The AT91 Bootstrap application is a free bootstrap for our AT91SAM9 microcontrollers. It integrates several sets of algorithms to configure the clocks, program the on-board customer memories (SDRAM, PSRAM…) The latest version (1.11) has been directly integrated in the different software packages for each development kit we provide on the website It supports NAND, DataFlash, serial Flash, SD Card and CFI NOR flash on many different AT91SAM9 products.

27 DATAFLASH Boot Example Current running Application in Red
3. Application Deployment DATAFLASH Boot Example Application Getting Started Application SAMBA Boot 0x8400 DataFlash Boot DataFlash Boot NVM Boot AT91Bootstrap AT91Bootstrap AT91Bootstrap 0x0000 ROM DATA FLASH A PowerPoint animation which describes different steps will be shown here. It describes a DataFlash Boot sequence which is used to load a stand alone application on an external SDRAM. AT91Bootstrap AT91Bootstrap Application 0x300000 0x SRAM SDRAM Current running Application in Red

28 Current running Application in Red
3. Application Deployment NAND FLASH Boot Example Linux Kernel Linux Kernel 0x60000 SAMBA Boot U-Boot U-Boot 0x20000 NandFlash-Boot NandFlash-Boot NVM Boot AT91Bootstrap AT91Bootstrap 0x0000 ROM NAND FLASH Linux Kernel A PowerPoint animation which describes the different steps will be shown on this slide. It describes a NAND Flash Boot sequence which is used to load the Linux OS with its Root FileSystem. 0x AT91Bootstrap U-Boot 0x300000 0x SRAM SDRAM Current running Application in Red

29 AT91SAM NVM Programming Solutions
This last section will outline the different free programming solutions Atmel provides.

30 NVM Programming Solutions
Development Tools such as IAR, Keil integrate their own flash loaders utility to flash the application during debug phase SAM-BA GUI: Atmel’s Free programming solution for on-chip and on-board memories Serial port, USB and JTAG SAM-ICE support Graphical or command line interface Easy customization to create a custom board, add new memories, etc. AT91Boot_DLL.dll: Atmel’s Free solution for customers to create their own GUI Interfaces Gang Programmers: support for all AT91SAM flash-based microcontrollers thanks to FFPI Free Today, development tools integrate their own flash loaders utility to program the application during debug phase. That is the simplest way to debug the application. For the boards that do not embed any JTAG interfaces or for demo purposes, SAM-BA GUI is the SOLUTION. The SAM Boot Assistant (SAM-BA™) software provides a means of easily programming various Atmel AT91 ARM Thumb-based devices. It runs under Windows 2000 and XP and allows communication with the target device through an RS232 serial port, USB or a JTAG/ICE interface. SAM-BA UI is based on a central DLL called AT91Boot_DLL.dll. This DLL can be used for the customer that wants to create his own GUI interface. Finally, we embed the FFPI for gang programming. Free

31 Modify Memory Algorithms
4. NVM Programming Solutions SAM-BA GUI (AT91 ISP) Customizing SAM-BA is possible by adding or modifying TCL scripts files Create your own board Add memory modules Modify Memory Algorithms Some of the key features of the SAM-BA UI software are: Performs in-system programming through JTAG, RS232 or USB interfaces May be used via a Graphical User Interface or started from a DOS window Possibility to easily customize it to create your own board, add your memories, etc. Runs on Windows 2000 and XP Memory and peripheral display content Target device memory control: read, write, erase, configure, verify, etc. User scripts available User scripts executable from SAM-BA Graphical User Interface or a shell Enable the NAND Flash, then Use the Sendboot file script Command Line Mode: allows memory programming without any GUI interaction

32 Appendix AT91SAM Boot Program Algorithm Flow Diagrams
This appendix contains the Boot Program Flow Charts for the different AT91SAM Microcontrollers (and their revisions). Please browse through to find information for a specific device you are intersted in.

33 AT91SAM7X/XC/SE Boot Sequence
Power Up Security Bit Must Be Cleared TST = 1 Yes No GPNVM2 = 1 No Yes PA0=PA1=1 PA2 = 0 Yes Boot From ROM SAM-BA Boot Boot From Flash User Application FFPI

34 AT91SAM7S Boot Sequence Security Bit Must Be Cleared TST = 1
Power Up Security Bit Must Be Cleared Yes No TST = 1 Boot From Flash User Application PA0=PA1=1 Yes PA2 = 1 No Yes Boot From ROM SAM-BA Boot Recovery ≈ 10 seconds Boot From Flash SAM-BA Boot FFPI Power Up with TST=0

35 SAM-BA Boot Recovery Application (SAM7S only)
Security Bit Must Be Cleared AT91SAM7S ROM is not mapped by default SAM-BA Boot Recovery Application is responsible for copying SAM-BA Boot into Flash 10 seconds necessary for the copy Needs a power up sequence to run SAM-BA Boot (TST=0) TST=1 Unlock Sectors 0 & 1 Copy SAM-BA Boot from ROM to FLASH while(1); Power Up

36 AT91SAM7L Boot Sequence IAP Function Security Bit Must Be Cleared
Power Up IAP Function Security Bit Must Be Cleared TST = 1 Yes No GPNVM1 = 1 No Yes PC0=PC1=1 Yes Boot From ROM SAM-BA Boot Boot From Flash User Application FFPI

37 AT91SAM9XE Boot Sequence IAP Function Security Bit Must Be Cleared
Power Up IAP Function Security Bit Must Be Cleared TST = 1 Yes No GPNVM3 = 1 No Yes PA0=PA1=1 PA2 = 0 Yes Boot From ROM SAM-BA Boot Boot From Flash User Application FFPI

38 AT91SAM9260 Boot Sequence Boot From ROM Boot From
Power Up Boot From ROM Boot From External 16-bit Flash Yes No BMS = 1 DataFlash-Boot on SPI0 Chip Select 0 Boot From External Memory on EBI Chip Select 0 User Application DataFlash-Boot on SPI0 Chip Select 1 NandFlash-Boot on EBI Chip Select 3 SAM-BA Boot Not Supported On revision A Optional

39 AT91SAM9261(S) Boot Sequence
Power Up Boot From ROM Boot From External 16-bit Flash Yes No BMS = 1 SerialFlash-Boot on SPI0 Chip Select 0 Boot From External Memory on EBI Chip Select 0 User Application DataFlash-Boot on SPI0 Chip Select 0 NandFlash-Boot on EBI Chip Select 3 SDCard-Boot on MCI EEPROM-Boot on TWI Not Supported On revision A SAM-BA Boot Optional

40 AT91SAM9263 Boot Sequence Boot From ROM Boot From
Power Up Boot From ROM Boot From External 16-bit Flash Yes No BMS = 1 SD Card Boot on MCI1 Boot From External Memory on EBI0 Chip Select 0 User Application NandFlash-Boot on EBI0 Chip Select 3 DataFlash-Boot on SPI0 Chip Select 0 SAM-BA Boot Not Supported On revision A Optional

41 AT91SAM9R(L)64 Boot Sequence
Power Up Boot From ROM Boot From External 16-bit Flash Yes No BMS = 1 SD Card Boot on MCI EBI Chip Select 0 User Application NandFlash-Boot on EBI Chip Select 3 DataFlash-Boot on SPI Chip Select 0 SAM-BA Boot Optional

42 AT91SAM9G20 Boot Sequence Boot From ROM Boot From
Power Up Boot From ROM Boot From External 16-bit Flash Yes No BMS = 1 SerialFlash-Boot then DataFlash-Boot on SPI0 Chip Select 0 Boot From External Memory on EBI Chip Select 0 User Application SerialFlash-Boot then DataFlash-Boot on SPI0 Chip Select 1 NandFlash-Boot on EBI Chip Select 3 SDCard-Boot on MCI EEPROM-Boot on TWI SAM-BA Boot Optional


Download ppt "AT91SAM Boot Strategies Application Deployment"

Similar presentations


Ads by Google