background image

 TN-29-16: Boot-from-NAND with the TI OMAP2420 Processor

Overview

PDF: 09005aef81fd5f2d / Source: 09005aef81fd5ecd

Micron Technology, Inc., reserves the right to change products or specifications without notice.

tn2916_boot_from_nand_omap2420.fm - Rev. D  6/07 EN

1

©2006 Micron Technology, Inc. All rights reserved.

Products and specifications discussed herein are for evaluation and reference purposes only and are subject to change by 
Micron without notice. Products are only warranted by Micron to meet Micron’s production data sheet specifications. All 

information discussed herein is provided on an “as is” basis, without warranties of any kind. 

Technical Note

Boot-from-NAND Using Micron

®

 MT29F1G08ABB NAND Flash 

with the Texas Instruments™ (TI) OMAP2420 Processor

Overview

NAND Flash memory devices are designed for applications requiring nonvolatile, high-
density, solid-state storage media. Historically, NAND Flash has been used extensively in 
applications such as mass storage cards and digital cameras. With its low cost and high 
performance, NAND Flash is beginning to make its way into more complex embedded 
systems where NOR Flash has dominated in the past—for example, in mobile phones.

In complex embedded systems, one of the challenges associated with a change from 
NOR Flash to NAND Flash has been the boot process. NOR Flash has been a popular 
choice for these systems because it contains a traditional memory interface (including 
both address and data buses), making it capable of execute-in-place (XIP) operation. XIP 
memory enables the system CPU to execute code directly from the memory device 
because the boot code is stored on and executed from a single device.

NAND Flash is a page-oriented memory device that does not inherently support XIP, at 
least not in the same manner as a typical XIP memory device. Operating system and 
boot code can be stored in NAND Flash memory, but the code must be copied (or shad-
owed) to DRAM before it can be executed. This requires system designers to modify the 
boot process for their systems when using NAND Flash. The payoff for this modification 
is that the system benefits from the lower cost of NAND Flash as the storage solution and 
the higher performance of DRAM as the XIP memory.

Summary of Contents for MT29F1G08ABB

Page 1: ...t and high performance NAND Flash is beginning to make its way into more complex embedded systems where NOR Flash has dominated in the past for example in mobile phones In complex embedded systems one...

Page 2: ...r daughter card Menelaus ES 2 0 S N 750 0006 Rev C The boot from NAND concepts discussed are OS independent however the Linux OS is used as an example in some explanations Note that secure booting via...

Page 3: ...or ROM can be used for the boot process see Table 2 on page 4 Stage 2 Bootstrap X Loader is an example of stage 2 bootstrap code The X Loader code is stored in the NAND Flash and the ROM code copies i...

Page 4: ...n tative to determine if additional ROM code is available that will support the Micron NAND Flash device After a power on reset is initiated the ROM code reads the SYS BOOT register to deter mine the...

Page 5: ...he ROM code expects the X Loader to be in block 0 1 2 or 3 of the NAND Flash device and can use any of these blocks in the boot process After the NAND Flash device config uration has been determined t...

Page 6: ...em jumps to the SRAM address where the first byte of the X Loader is stored Figure 4 Shadowing X Loader Code from NAND Flash to SRAM Error Correction Code The ROM code contains error correction code a...

Page 7: ...the system designer Figure 6 on page 8 illustrates how the Boot_image bin code is laid out in the NAND Flash 1 Compile the X Loader source code into an executable format The example in Figure 5 on pag...

Page 8: ...BB NAND Flash See Writing Binary Images to NAND Flash with Limited OST Tools Support on page 12 for instructions regard ing alternatives Figure 6 X Loader Layout Develop code to format image for 2KB p...

Page 9: ...o DRAM see Figure 8 Then the system jumps to the address in DRAM where the first byte of the U Boot code resides Figure 8 Shadowing U Boot Code from NAND Flash to DRAM Byte 2 111 Bad Block Marking Byt...

Page 10: ...map must be configured to support boot from NAND U Boot must contain NAND Flash support such that it can read and write to the NAND Flash device U Boot environment data should be written such that it...

Page 11: ...em The final stage of the boot process involves the initial execution of the OS The operating system kernel is stored in NAND Flash and shadowed to DRAM for execution as described in the stage 3 boot...

Page 12: ...Flash devices In these cases it is necessary to develop an alternative method for loading the boot code into the NAND Flash device A workstation similar to the one shown in Figure 11 is required In a...

Page 13: ...with the TI OMAP2420 Processor Writing Binary Images to NAND Flash with Limited OST Tools Run the U Boot Program 1 Use JTAG to load the U Boot program into the Micron DRAM see Figure 12 The U Boot pro...

Page 14: ...nal window 2 Place the X Loader image in the TFTP server 3 Write a copy of the X Loader file to the DRAM using the U Boot program 4 Erase the area in the NAND Flash where the X Loader will reside 5 Co...

Page 15: ...e NAND Flash 1 Place the U Boot file in the TFTP server 2 Write a copy of the U Boot file to the DRAM using the U Boot program 3 Erase the area in the NAND Flash where U Boot will reside 4 Copy the U...

Page 16: ...the TFTP server 2 Write a copy of the OS kernel file to the DRAM using the U Boot program 3 Erase the area in the NAND Flash where the OS kernel will reside 4 Use the U Boot program to copy the OS ke...

Page 17: ...file system file in the TFTP server 2 Write the root file system file to the DRAM using the U Boot program 3 Erase the area in the NAND Flash where the file system will reside 4 Copy the file system f...

Page 18: ...single program opera tion Verify that the X Loader U Boot OS kernel and root file system were programmed correctly by performing a read verify to compare the NAND Flash contents against the original b...

Page 19: ...Revised description Code Shadowing to the OMAP Processor SRAM on page 6 Changed SDRAM to SRAM Rev C 7 06 Figure 1 on page 3 Updated content Boot Stages on page 3 and Stage 1 Processor ROM Code on page...

Reviews: