Introduction to Flash-based SSDs

This lesson presents an introduction to a new kind of persistent storage device, the flash-based SSD.

We'll cover the following

Solid-state storage

After decades of hard-disk drive dominance, a new form of the persistent storage device has recently gained significance in the world. Generically referred to as solid-state storage, such devices have no mechanical or moving parts like hard drives; rather, they are simply built out of transistors, much like memory and processors. However, unlike typical random-access memory (e.g., DRAM), such a solid-state storage device (a.k.a., an SSD) retains information despite power loss and thus is an ideal candidate for use in persistent storage of data.

Flash

The technology we’ll focus on is known as flash (more specifically, NAND-based flash), which was created by Fujio Masuoka in the 1980s“A Survey of Address Translation Technologies for Flash Memories” by Dongzhe Ma, Jianhua Feng, Guoliang Li. ACM Computing Surveys, Volume 46, Number 3, January 2014. Probably the best recent survey of flash and related technologies.. Flash, as we’ll see, has some unique properties. For example, to write to a given chunk of it (i.e., a flash page), you first have to erase a bigger chunk (i.e., a flash block), which can be quite expensive. In addition, writing too often to a page will cause it to wear out. These two properties make the construction of a flash-based SSD an interesting challenge:

CRUX: HOW TO BUILD A FLASH-BASED SSD

How can we build a flash-based SSD? How can we handle the expensive nature of erasing? How can we build a device that lasts a long time, given that repeated overwrite will wear the device out? Will the march of progress in technology ever cease? Or cease to amaze?

Get hands-on with 1400+ tech skills courses.