4.1.11 · D3Memory Technologies

Worked examples — Wear leveling and flash controllers

2,452 words11 min readBack to topic

This page is the exercise machine for the parent topic. The parent gave you the two engines that drive every number here:

Recall The two formulas you will use on this page

The write amplification factor measures how much extra writing garbage collection forces: where is the average fraction of still-valid pages in the blocks the controller erases. The lifetime of a drive is total endurance divided by daily physical wear:

Every symbol above was earned in the parent note. If any feels unfamiliar, re-read it before continuing — this page assumes nothing new except arithmetic.


The scenario matrix

The whole topic, viewed as "what can the exam throw at me," lives inside a small grid. Each cell is a regime of the input (the valid fraction) or a different quantity being solved for. We will hit every cell.

Cell What makes it special Covered by
A. (mostly stale) Best case, Ex 1
B. mid (typical drive) Normal working point Ex 2
C. (mostly valid) Danger zone, Ex 3
D. degenerate Formula divides by zero — what does it mean? Ex 4
E. solve backwards Given WAF, find Ex 5
F. lifetime word problem Combine WAF + endurance + daily load Ex 6
G. over-provisioning effect How free space lowers and buys years Ex 7
H. dynamic-only trap Uneven wear across hot/cold split, no formula plug Ex 8
I. exam twist: WAF < 1 Compression breaks the "amplification only adds" instinct Ex 9
Figure — Wear leveling and flash controllers

Cells A, B, C — the three regimes of


Cell D — the degenerate input


Cell E — solving backwards (given WAF, find )


Cell F — the full lifetime word problem


Cell G — the payoff of over-provisioning


Cell H — the dynamic-only trap (no single plug-in)


Cell I — the exam twist: WAF below 1


Recall Self-check questions

WAF when victim blocks are 80% valid ::: Physical meaning of giving ::: GC copies every page and frees none — a forbidden, useless erase Given , what is ? ::: Why does dynamic-only leveling let hot blocks die 5× early in Ex 8? ::: writes rotate over only 20 of 100 blocks; static leveling would share all 100 How can end-to-end WAF be 0.8 despite GC? ::: transparent compression shrinks data before GC, lowering physical bytes below host bytes