1 / 8

NAND boot over I2C example A simple Hello World example demonstrating NAND boot over I2C.

NAND boot over I2C example A simple Hello World example demonstrating NAND boot over I2C. Steps to build the example: Import the i2cnandboot CCS project from tools boot_loader examplesi2c nand evmc66xxl directory. (in CCSv5, Project->Import Existing CCS/CCE Eclipse Projects)

arch
Télécharger la présentation

NAND boot over I2C example A simple Hello World example demonstrating NAND boot over I2C.

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. NAND boot over I2C example A simple Hello World example demonstrating NAND boot over I2C. Steps to build the example: Import the i2cnandboot CCS project from tools\boot_loader\examples\i2c\nand\evmc66xxl directory. (in CCSv5, Project->Import Existing CCS/CCE Eclipse Projects) 2. Clean the i2cnandboot project and re-build the project, after build is completed, i2cnandboot_evm66xxl.out and i2cnandboot_evm66xxl.map will be generated under tools\boot_loader\examples\i2c\nand\evmc66xxl\bin directory.

  2. Steps to run i2cnandboot in CCSv5: Be sure to set the boot mode dip switch to no boot/EMIF16 boot mode on the EVM. Load the program tools\boot_loader\examples\i2c\nand\evmc66xxl\bin\i2cnandboot_evm66xxl.out to CCS. Connect the 3-pin RS-232 cable from the EVM to the serial port of the PC, and start Hyper Terminal. 4. Create a new connection with the Baud rate set to 115200 bps, Data bits 8, Parity none, Stop bits 1 and Flow control none. Be sure the COM port # is set correctly. 5. Run the program in CCS, i2cnandboot will send the hello world booting info to both the CCS console and the Hyper Terminal

  3. Steps to program i2cnandboot to NAND: • Be sure IBL is programmed to I2C EEPROM bus address 0x51, if IBL is not programmed, refer to tools\boot_loader\ibl\doc\README.txt on how to program the IBL to EEPROM. • 2. By default, IBL will boot a BBLOB image (Linux kernel) from NAND, to run this example, we need to change the NAND boot image format to ELF: • In setConfig_c66xx_main() of tools\boot_loader\ibl\src\make\bin\i2cConfig.gel, replace ibl.bootModes[1].u.nandBoot.bootFormat = ibl_BOOT_FORMAT_BBLOB; with ibl.bootModes[1].u.nandBoot.bootFormat = ibl_BOOT_FORMAT_ELF; • Re-program the boot configuration table, refer to tools\boot_loader\ibl\doc\README.txt on how to program the boot configuration table to EEPROM.

  4. 3. Copy tools\boot_loader\examples\i2c\nand\evmc66xxl\bin\i2cnandboot_evm66xxl.out to tools\writer\nand\evmc66xxl\bin, rename it to app.bin and refer to tools\writer\nand\docs\README.txt on how to program the app.bin to NAND flash. 4. Once the programming is completed successfully, set the boot dip switches to I2C master mode, bus address 0x51 and boot parameter index to be 2. 5. After POR, IBL will boot the hello world image from NAND.

  5. NOR NAND NOR or NAND addressing ‘Word’ = control gate; ‘bit’ = drain less contacts → more compact

  6. NAND versus NOR 10x better endurance Fast read (~100 ns) Slow write (~10 μs) Used for Code Smaller cell size Slow read (~1 μs) Faster write (~1 μs) Used for Data

  7. NAND versus NOR 10x better endurance Fast read (~100 ns) Slow write (~10 μs) Used for Code Smaller cell size Slow read (~1 μs) Faster write (~1 μs) Used for Data

More Related