Tech

How SSDs Work: Flash Storage Explained

SSDs have no moving parts, yet they're far more complex than spinning drives. Here's how NAND flash traps electrons to store your data — and why they eventually wear out.

6 min read

The 90-second version

  • SSDs store data using NAND flash memory — tiny transistors with a floating gate that traps electrons
  • Trapped electrons = a 1; no electrons = a 0 (or the reverse, depending on cell type)
  • Unlike RAM, the data persists without power because the electrons are physically trapped in an insulating layer
  • SSDs have no moving parts — reads and writes happen electronically in microseconds
  • Each cell can only be erased and rewritten a limited number of times (~1,000 for TLC, ~100,000 for SLC)
  • A controller chip manages wear-levelling, garbage collection, and bad-block mapping to extend drive life

The floating-gate transistor: the heart of flash storage

Every NAND flash cell is built around a floating-gate MOSFET — a transistor with an extra, electrically isolated (“floating”) gate embedded between the control gate and the silicon channel.

To write data:

  1. The controller applies a high voltage (~20V) between the control gate and the channel
  2. Electrons quantum-tunnel through the thin oxide layer and become trapped in the floating gate
  3. The trapped electrons shift the transistor’s threshold voltage — a measurable difference the controller uses to read the stored value

To erase data:

  1. A high voltage is applied in reverse
  2. The trapped electrons tunnel back out through the oxide
  3. The cell returns to a blank state ready for rewriting

This quantum tunneling of electrons through a 10nm-thick silicon oxide layer is genuinely remarkable physics happening at room temperature, billions of times, inside your laptop.

SLC, MLC, TLC, QLC: how many bits per cell?

The more voltage levels a cell can hold, the more bits it stores — but the less reliable and enduring it becomes:

TypeBits/cellWrite cyclesSpeedCost
SLC (Single)1~100,000FastestHighest
MLC (Multi)2~10,000FastHigh
TLC (Triple)3~1,000GoodMid
QLC (Quad)4~100–300SlowerCheapest

Most consumer SSDs use TLC (3 bits per cell). QLC drives (common in large cheap SSDs) have lower write endurance but are fine for read-heavy workloads.

Why SSDs can’t overwrite data in place

Hard drives can overwrite any sector directly. SSDs fundamentally cannot — and this limitation shapes everything about how they work.

NAND flash must be erased before it can be written. But here’s the constraint: you can write individual pages (4–16 KB each), but you can only erase entire blocks (thousands of pages together). This is the NAND flash erase paradox.

The consequence: to update even a single byte, the controller must:

  1. Read the entire block into RAM
  2. Modify the target page
  3. Erase the whole block
  4. Write all the pages back

This is called write amplification — the actual bytes written to flash are often 3–10× the data you intended to write.

The controller: an SSD’s brain

The SSD controller is a dedicated chip (often from Phison, Silicon Motion, or Samsung’s own Elo/Elpis) running complex firmware. It handles:

Wear levelling: The controller tracks how many times each block has been erased and deliberately spreads writes across the drive so no one block wears out prematurely. This is why SSDs behave well even when nearly full — the controller is constantly shuffling data.

Garbage collection: As you delete files and write new ones, “stale” blocks pile up — blocks with a mix of valid and invalid pages. The controller periodically consolidates valid pages from multiple blocks, erasing the now-empty blocks to create free space. This happens in the background.

Bad block management: When a block fails its erase-verify cycle, the controller marks it as bad and redirects writes to a reserve pool. New SSDs ship with 7–28% spare area specifically for this.

DRAM cache: Higher-end SSDs include a small DRAM chip (usually 256 MB to 2 GB) to cache the Flash Translation Layer (FTL) — the map of logical addresses to physical NAND locations. Without this, every read requires multiple NAND lookups to find the data.

NVMe vs SATA: the interface matters

Two drives with identical NAND can have very different speeds depending on the interface:

SATA III:

  • Maximum: 600 MB/s sequential read
  • Uses the same interface as old hard drives
  • Cheaper, broadly compatible

NVMe (PCIe):

  • PCIe 3.0 × 4: ~3,500 MB/s sequential read
  • PCIe 4.0 × 4: ~7,000 MB/s sequential read
  • PCIe 5.0 × 4: ~14,000 MB/s sequential read
  • Connects directly to the CPU — dramatically lower latency

For most everyday tasks (browsing, documents, even gaming), the difference is imperceptible — your bottleneck is usually the game engine or OS, not the drive. For large file transfers, video editing, and AI workloads, NVMe is genuinely much faster.

The mental model: an SSD is like a whiteboard that can only be erased by section

Imagine a whiteboard divided into sections. You can write on individual lines within a section, but to erase, you must erase the entire section at once. If you want to edit a line in the middle, you copy the whole section to a spare board, change that line, erase the original section, and copy everything back. That overhead is what wear levelling and garbage collection are managing constantly.

Common misconceptions

“SSDs never fail.” They absolutely do. NAND cells wear out (see TBW ratings), controllers can fail, and power-loss events during writes can corrupt data. Always back up.

“Filling an SSD to capacity is fine.” It degrades performance and longevity significantly. The controller needs free blocks for garbage collection. Keeping an SSD under 80% full is good practice.

“Defragmenting an SSD helps.” The opposite — it adds unnecessary write cycles and reduces lifespan. SSDs don’t have mechanical heads to position, so file fragmentation has no meaningful performance impact. Windows should automatically disable defrag for SSDs.

“QLC drives are always bad.” For a drive used primarily for reading (archival, cold storage, game libraries), QLC is excellent and great value. The low write endurance only matters if you’re writing hundreds of GB per day.