NOR Flash

NOR flash is one of the two major architectures of flash memory, organized so that individual memory locations can be read randomly and quickly, which makes it well suited to storing program code that a processor executes directly. It is contrasted with NAND flash, which is denser and organized for block access to bulk data; the two architectures, both tracing to Fujio Masuoka's work at Toshiba, divide the flash world between code storage and mass data storage. NOR flash matters because many systems need to store firmware that the processor can read and execute directly, and its random-access readability serves that need in a way the denser NAND architecture does not.

The defining feature of NOR flash is fast random read access, meaning the processor can read any location directly, which supports executing code straight from the memory. The way NOR flash connects its memory cells allows the contents of any individual address to be read quickly and independently, much like reading from a conventional memory. This random readability is what lets a processor fetch and execute instructions directly from NOR flash, a capability known as execute-in-place, which is valuable for storing boot code and firmware that must be read reliably and accessed in arbitrary order rather than streamed in blocks.

The two flash architectures
NOR flash
fast random read; execute code in place; lower density
NAND flash
block access; very dense; mass data storage
What NOR's random access enables
Execute-in-place
processor runs code directly from the flash
Firmware / boot code storage
reliable random reads of program memory
The trade
NOR favors readability for code; NAND favors density for data

NOR flash trades density for its random-access readability, which is why it occupies the code-storage niche rather than the bulk-storage niche. The cell organization that gives NOR its fast random reads makes it less dense than NAND, so it stores fewer bits in a given area and costs more per bit. This makes NOR the wrong choice for storing large amounts of data cheaply but the right choice where a modest amount of directly-executable code must be reliably readable. The architecture thus deliberately sacrifices the density that NAND achieves in order to provide the readability that code storage requires.

The division between NOR and NAND flash is a clean example of how one underlying technology splits into architectures optimized for different jobs. Both are flash, both store charge on floating gates, and both erase in blocks, yet their internal organization is tuned toward opposite priorities: NOR toward random readability for code, NAND toward density for data. Rather than one architecture trying to serve all purposes, the flash world settled into two complementary forms, each excelling at what the other sacrifices. NOR flash is the code-oriented half of this split, defined by the readability that suits executable firmware.

NOR flash remains important wherever systems need reliable, directly-executable storage for firmware and boot code, a role distinct from mass storage. Many devices contain a block of code that the processor must read and run, often at startup, and NOR flash's random access and reliability make it well suited to holding this code. Even as NAND dominates bulk storage in phones and drives, NOR retains its niche in embedded and firmware storage, illustrating that the two architectures are not competitors for the same job but partners covering different needs within the broader category of flash memory.

Read NOR flash as the code-storage half of flash: organized for fast random reads so a processor can execute firmware directly in place, trading NAND's density for the readability that boot code and firmware demand, one of the two complementary architectures into which flash memory divides.

Take NOR flash further

Ask the copilot about this term, or have our engineers assess it against your process.