During reset, the S3C2440 Nand Flash controller obtains information through the status of the pins connected to the NAND Flash (NCON, GPG13, GPG14, GPG15). After power-on or system reset, the NAND Flash controller automatically downloads the 4K boot loader code, and after the downloaded boot loader code begins execution in the setupstone.
The boot code of S3C2440 can be executed in the external nand flash memory. In order to support the boot of nand flash, S3C2440 has an internal SDRAM cache called "Steppingstone". When booting, the first 4kbyte of Nand Flash will be imported into Steppingstone and start to execute. (****This stepstone can be understood in this way, because nand flash cannot be run directly, so it can only automatically copy the code to RAM first, and then execute it. This bootload is like this, mapped to GCS0 address, and can run into RAM after running)
Generally speaking, this bootcode will copy the Nand Flash content to SDRAM, and use the hardware ECC checksum to verify whether the Nand FLash data is legal. Once the copy is completed, the main program can execute the program in SDRAM. (Here you can check the relocate reentry code in Start.S. First, compare the instruction address, whether it is in flash=0x00000000, or sdram=TXET_BASE, then copy, relocate, and start executing from SDRAM. It doesn’t matter if you don’t understand it - if you can find the comments of Start.S on the Internet, there are a lot of content about this part, so learn more)
Previous article:S3C2440 jumps to SDRAM to execute the program
Next article:Some understanding on Nand flash program burning and running on S3C2440 development board
- Popular Resources
- Popular amplifiers
- Learn ARM development(16)
- Learn ARM development(17)
- Learn ARM development(18)
- Embedded system debugging simulation tool
- A small question that has been bothering me recently has finally been solved~~
- Learn ARM development (1)
- Learn ARM development (2)
- Learn ARM development (4)
- Learn ARM development (6)
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- LED chemical incompatibility test to see which chemicals LEDs can be used with
- Application of ARM9 hardware coprocessor on WinCE embedded motherboard
- What are the key points for selecting rotor flowmeter?
- LM317 high power charger circuit
- A brief analysis of Embest's application and development of embedded medical devices
- Single-phase RC protection circuit
- stm32 PVD programmable voltage monitor
- Introduction and measurement of edge trigger and level trigger of 51 single chip microcomputer
- Improved design of Linux system software shell protection technology
- What to do if the ABB robot protection device stops
- What are the functions of the Internet of Vehicles? What are the uses and benefits of the Internet of Vehicles?
- Power Inverter - A critical safety system for electric vehicles
- Analysis of the information security mechanism of AUTOSAR, the automotive embedded software framework
- Brief Analysis of Automotive Ethernet Test Content and Test Methods
- How haptic technology can enhance driving safety
- Let’s talk about the “Three Musketeers” of radar in autonomous driving
- Why software-defined vehicles transform cars from tools into living spaces
- How Lucid is overtaking Tesla with smaller motors
- Wi-Fi 8 specification is on the way: 2.4/5/6GHz triple-band operation
- Wi-Fi 8 specification is on the way: 2.4/5/6GHz triple-band operation
- RT Thread IPC Summary
- Offline voice control solution
- What is the working principle of pneumatic solenoid valve? What are the classifications of pneumatic solenoid valves?
- [SC8905 EVM Evaluation] + I2C communication between MCU and SC8905
- Application of Mir MYC-YA15XC-T core board in LoRa smart gateway
- Spectrum Analysis Series: 1dB Gain Compression Point Overview and Testing
- FPGA Tutorial Series
- [RVB2601 Creative Application Development] 2 Familiar with basic peripherals GPIO
- [2022 Digi-Key Innovation Design Competition] Deploy blockchain smart contracts
- Is there any brother who is familiar with the xinlix system and software after reverse recompiling?