NOR

/nɔːr/

n. “The flash memory that’s built for speed and direct access.”

NOR is a type of non-volatile flash memory distinguished by its ability to provide fast random access to individual memory locations. The name comes from the “NOT OR” logic gate that forms its underlying architecture. NOR flash is commonly used in embedded systems, firmware storage, and applications where code must be executed directly from memory, known as XIP (eXecute In Place).

Key characteristics of NOR include:

  • Random Access: Individual bytes can be read and executed directly without copying to RAM.
  • Non-Volatile: Retains data even when power is removed.
  • Slower Writes, Faster Reads: Writing and erasing is slower compared to NAND, but read access is fast and predictable.
  • Durability: High endurance for read-heavy applications, but typically lower density and higher cost than NAND.
  • Firmware Storage: Ideal for storing BIOS, bootloaders, and embedded program code.

A conceptual example of NOR usage:

# Bootloader stored in NOR flash (conceptual)
Device powers on → CPU fetches boot code directly from NOR memory
# No need to copy code to RAM before execution (XIP)

Conceptually, NOR is like a bookshelf where every book can be instantly grabbed and read without opening a central archive — perfect for frequently accessed instructions.

In essence, NOR flash provides fast, random-access, non-volatile memory ideal for code execution in embedded systems and firmware, complementing NAND’s high-density storage capabilities.

NAND

/nænd/

n. “The flash memory building block that stores bits without power.”

NAND is a type of non-volatile flash memory commonly used in SSD drives, USB drives, memory cards, and embedded storage. The term comes from the logic gate “NOT AND,” which forms the basis of its internal architecture. NAND memory retains data even when the power is turned off, making it ideal for persistent storage in modern electronics.

Key characteristics of NAND include:

  • Non-Volatile: Stores data without requiring power.
  • Block-Based Storage: Data is written and erased in blocks rather than individual bits, which affects performance and endurance.
  • High Density: Allows storing large amounts of data in a small physical space.
  • Endurance: NAND cells wear out after a certain number of program/erase cycles, requiring wear-leveling algorithms in SSDs.
  • Cost-Effective: Less expensive per bit compared to other non-volatile memory types like NOR flash.

A simplified conceptual example of NAND usage in an SSD:

# Writing data to an SSD (Linux example)
dd if=/dev/zero of=/mnt/ssd/testfile bs=1M count=100
# Data is stored in NAND flash cells internally
# SSD controller manages block writing, wear-leveling, and error correction

Conceptually, NAND is like a library of tiny lockers: each block can hold many bits of data, and the library keeps track of which lockers are available, which need maintenance, and which are in use.

In essence, NAND flash is the fundamental technology behind modern persistent storage devices, enabling fast, compact, and power-efficient memory for everything from smartphones to enterprise SSDs.