the proper value has been programmed
into the cell. The big drawback with
this technique is that a cell needs to be
erased before it can be reprogrammed.
Also, the more levels that a flash cell
supports, the smaller and more precise
the high-voltage pulses must be. Making these pulses more precise slows the
programming of the flash and reduces
the write performance.
Disk drives use symmetrical access—the minimum read and write
accesses are the same size. NAND flash
memory, on the other hand, like most
nonvolatile memory, uses asymmetrical access—the size of the minimum
read and write to the media is dissimilar. This asymmetrical attribute is a result of the architecture of the memory
array. Like most memory, NAND consists of a two-dimensional array with a
bit line as one dimension of access and
a word line as the other dimension of
access. The difference in NAND is that
multiple cells share the bit line. This
NAND string consists of 32–64 cells.
The smallest size of read is typically
an 8KB page, based on the word-line
length. A write to the array requires linearly programming all the pages along
the NAND string, making the smallest
write size 32–64 pages. This is called a
A die is a silicon wafer that consists of one-to-four memory arrays of
approximately 4,000 blocks and the
elements necessary to make the array
usable. These non-storage elements
consist of: controller logic for managing operations on the memory array;
high-voltage generators necessary for
Storage media is the key factor behind
the performance and cost advantages
of SSDs. Most SSDs are built around
widely available NAND flash memory,
developed in the late 1980s as an electron-based trapped-charge storage media. The NAND cell stores electrons on
a capacitor indefinitely in a no-power
state. The charge is then sensed by circuitry on the NAND chip.
Writing to NAND flash is accomplished by either adding electrons
(programming) or removing electrons
(erasing) to the memory cell using high-voltage pulses. NAND flash is read by using a simple analog-to-digital converter
as a bias voltage is applied to the cell.
Different types of flash use different numbers of thresholds to determine the value in a cell. Single-level
cell (SLC) stores a single bit of data
and has two threshold values. Multi-level cell (MLC) stores two bits of data
and has four threshold values. Newer
flash memories, called Three-level cell
(TLC), are able to store three bits of value with eight or more threshold values.
In general the value of an “n” bit A/D
convertor can be described as: “n” =
A write-verify operation is used to
program or erase the NAND flash. A
pulse of high voltage is applied to the
cell and this process is repeated until
addressable unit. Each block device
consists of three major parts: storage
media, a controller for managing the
media, and a host interface for accessing the media.
programming and reading from the
array; sense detectors for reading the
threshold values from the cell; cache
buffers for temporarily storing the data
bits to and from the memory array; and
a high-speed interface for reading and
writing data out of the die.
A single die is capable of reading
up to 400MB/sec but can write at only
2MB–10MB/sec due to the complexity of programming. Latency is a major
benefit of NAND flash. Typical latencies are 20–200 microseconds for reads
and 1–10 milliseconds for writes. This
performance compares favorably with
HDDs, where reads and writes are typically measured in tens of milliseconds.
NAND flash dies have a relatively
small capacity, holding up to 16GB
per die. An SSD contains 8–256 dies to
meet storage requirements for computing. Because multiple dies will be
active at the same time, larger-capacity
SSDs tend to yield better performance.
Multiple active dies can cause potential thermal problems however, as the
high-voltage generators in each die
are inefficient. During heavy program
and erase operations an SSD limits the
number of active dies to avoid overheating or excessive peak current draws.
Electron-based storage has many
limitations, as is true of all storage media. The biggest limitations are found
in the program and erase operations.
The high-voltage pulses will burn out
the oxide layer, reducing the cells’ ability to isolate the electrons. Electrons will
also become trapped in the oxide layer,
adding resistance to the threshold measurement and causing a misread of the
threshold value from the cell.
Burnout is the most misunderstood attribute of NAND flash. Manufacturers often specify the number
of recommended program and erase
cycles per cell for warranty purposes
but do not specify the amount of time
that a cell will retain data. Even without excessive use, stored electrons
will eventually dissipate from the cell,
and the data will be lost. The number
of program and erase cycles simply
accelerates the time before the data
fades. Data can be retained for years
in lightly cycled cells, while heavily
cycled cells may retain data for only
a few months. Long exposure to high
temperatures also accelerates the decay of data. Numerous reads of the