Quick comparison
| Characteristic | NOR flash | NAND flash |
|---|---|---|
| Typical strength | Random reads and code access | High-density bulk storage |
| Read pattern | Byte/address-oriented access (device dependent) | Page-oriented access |
| Erase | Sector/block erase | Block erase |
| Common uses | Boot firmware, configuration, XIP | Mass storage, filesystems, large data |
Why NOR is often used for boot firmware
NOR flash commonly supports random reads that make it suitable for storing executable code. On supported processors and board designs, code may be executed directly from a memory-mapped NOR device; this is called execute in place (XIP). XIP depends on the flash interface, CPU address mapping, and platform configuration—it is not automatic on every system.
Why NAND is used for larger storage
NAND flash offers high storage density and cost-effective capacity. It is typically accessed in pages and erased in larger blocks. Raw NAND systems usually need error-correction and bad-block management, often provided by a controller, the flash translation layer, or software stack.
Choose based on the job
- Boot code and memory-mapped firmware: NOR is often a good fit.
- Large files, logs, and bulk data: NAND is often a good fit.
- Always check endurance, retention, erase granularity, bus bandwidth, controller support, and power-failure behavior.
This is a high-level comparison. Real device characteristics vary by part, generation, interface, and controller.