mini2440 start-up mechanism---from the Linux community

Source: Internet
Author: User
Tags time 0

ARM Core: Key components for executing assembler

Rom: factory-cured code for execution after arm power-up, copy the front code (bootloader code) of the NAND flash in the size of SRAM into SRAM, and the CPU jumps to the SRAM's 0x0 position

SRAM (on-chip, 4k): In the implementation of NAND flash in the first small segment code (4KB or so), initialize the sdram/ddr, and the remaining bootloader code in NAND flash into the SDRAM, and finally jump into the SDRAM continue to execute

sdram:mini2440 memory, when entering SDRAM from SRAM, start executing the rest of bootloader code, load the kernel into memory (kernel exists in memory), and then enter the kernel to continue to run normally after loading.

Nor Flash: With a common SRAM interface, can directly access the memory, boot time 0 address point to Norflash, suitable for code storage and EIP

NAND flash: Often used to store large data

When the mini2440 starts, it starts from 0x00 and is divided into NAND flash and NOR flash.

when arm starts, the internal structure is roughly the following :

1.Nor Flash has its own address lines and data lines, can be similar to the memory of random access, nor flash can be directly run the program, so nor flash can be used directly to boot, nor Flash will be launched when the address mapped to 0x00. MINI2440 is directly to the directly burn the Vivi on NOR Flash.

2.Nand Flash is an IO device, data, address, control lines are common, need to control the software zone reading timing, so can not be like nor flash, memory-like random access, can not be EIP (on-chip running), and therefore can not be directly as boot.

Mini2440 bootloader burning to NAND flash, because in mini2440 there is a built-in SRAM, called Stepping stone (stepping stone), when the system starts to power up, the NAND The original 4KB copy of the content on the flash is executed in the SRAM, which enables booting from NAND flash. If the bootloader is less than 4KB (like Vboot), in the SRAM can boot, greater than 4KB words (u-boot,vivi), in the SRAM to do some basic initialization, and then the remainder of the bootloader copy into the SDRAM (> 0x30000000).

We use mini2440, often through nor flash launch, into the Vivi menu (mini2440 nor Flash has been burned to the Vivi), after the USB download function via Vivi, put the other bootloader under the NAND In Flash, after the download is complete, start with NAND flash and test our bootloader.

mini2440 start-up mechanism---from the Linux community

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.