The non-easy slipped speed memory flash has the characteristics of high speed, low cost and large density.
Flash memory mainly has nor flash and NAND flash two types, in general, nor type is more suitable for storing program code, NAND type can be used for large-capacity data storage.
1, NOR type Flash memory
NOR Flash Technology was first developed by Intel Corporation in 1988, and its appearance revolutionized the original eminence of Eprom and EEPROM.
NOR is characterized by in-chip execution (Xip,execute in place) so that the application can run directly in Flash flash memory without having to read the code into the system's RAM. NOR is highly efficient, but the write speed and erase speed are very low. Nor Flash is an SRAM that will not lose data after power-down.
2. NAND Type Flash Memory
NAND Flash is the most important non-volatile high-capacity flash memory on the market today. In 1989, Toshiba published the NAND flash structure, emphasizing lower cost per bit, higher performance, and the ability to easily upgrade via interfaces like a disk.
The NAND fabric provides extremely high storage density and fast write and erase speeds. NAND Flash is characterized by non-volatile, electro-erasable, repeatable programming, and high density, low power consumption.
3, NOR Flash and NAND flash comparison
NOR Flash |
NAND Flash |
Interface timing with SRAM, easy to use |
Address/Data line multiplexing with narrower data bits |
Fast Read speed |
Slow Read speed |
Erase speed is slow, in 64~128kb block units |
Fast erase speed, in 8~32KB block units |
Slow write speed (because it is usually erased first) |
Fast write speed |
Faster random access, supports XIP, and is suitable for code storage. In the embedded system, it is often used to store the bootloader \ Root file system, etc. |
Fast sequential read speed, slow random access, suitable for data storage. In embedded systems, it is often used to store file systems, etc. |
Small single-chip capacity, 1~32MB |
Larger single-chip capacity 8~128MB increases cell density |
Maximum Erase count 100,000 times |
Maximum erase count 10.01 billion times |
|
|
Driver support is required if you need to run code on the NAND device. Under Linux is also the memory technology driver MTD
4. TQ2440 nor Flash and NAND flash startup
Development Board in the case of bare metal is equivalent to direct operation of single-chip microcomputer, no operating system, into the operating system needs to be burned into: Boot program bootloader, kernel kernel, file system.
Bootloader is where the CPU starts to run, and its start-up process is divided into two stages.
NOR Flash Startup process
The code runs from 0x0000 0000, and the0x0000 0000 This address is mapped on nor flash when booting from nor flash, so the CPU can start running directly from nor flash. General Bootloader This piece of code is stored on nor Flash.
NAND Flash Startup process
The NAND flash controller automatically loads the 4K of NAND flash memory to stepping stone (internal SRAM buffer) and sets the 0x0000 0000 to the start address of the SRAM, the CPU from the internal SRAM of 0x0 000 0000 Start, this process does not require program interference.
Nandflash Controller
The Nandflash controller automatically loads the front 4K of the Nandflash memory into the steppingstone (internal SRAM buffer) and sets the 0x00000000s to the starting address of the internal SRAM, The CPU starts from the internal SRAM of 0x00000000, and this process does not require a program intervention. What programmers need to do is put the most core code in the first 4K of NAND Flash. 4K code to complete the core configuration of the s3c2440 and copy the remainder of the startup code into the SRAM.
Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.
TQ2440 Learning notes--7, NOR Flash and NAND Flash