|leading the way to the new
by Zsolt Kerekes,
editor - StorageSearch.com|
|Little words can have with big meanings
world of SSDs.|
This article collects together short descriptions of
many commonly used SSD terms (but not all). You may also find it useful to put
the words you're having trouble with into the site search box below - to get an
idea of the context.
|SSD Endurance - Is a
term used in the context of
flash memory or
flash SSDs and is
more verbosely called "Write Endurance." |
explanation... The number of write cycles which can be performed by any block
of flash is limited due to physics and technology imperfections which
eventually make the data storage process unreliable.
varies according to the type of flash (MLC is usually 10x worse than SLC) and
according to the memory generation and also whether it has been designed (or
selected) for high endurance.
Typical quoted values in the market today
(2009) range from as low as 100,000 to over 2 million cycles.
leveling and write attenuation are architectural techniques which can be
used in SSD controllers
to mitigate the effects of endurance - and extend usable life of a memory array
by many orders of magnitude compared to the intrinsic life of a dumb flash array
without such a controller.
SSD Myths and
Legends - "write endurance"
flash wars in the
enterprise SSD market- which so called "enterprise MLC" tastes
the sweetest? How come there are so many different and contradictory
|SSD Garbage Collection
is an important background process in
flash SSD controllers.
Some editors and software vendors (who don't understand flash
technology) mistakenly attribute a long term slow down in some SSDs to fragmentation
- when really the issue is the ratio of resources allocated to Garbage
In well designed products which have reserved enough CPU
power, internal R/W bandwidth and over-provisioning this "performance
degradation" does not occur - or is minimal. For example systems from
term Garbage Collection was 1st used in 2002 - in an article we published
about flash SSD
reliability. Here's the definition below from that article.
Collection Process" eliminates the need to perform erasure of the whole
block prior to every write. The "Garbage Collection process"
accumulates data marked for erase as "Garbage" and perform whole block
erase as space reclamation in order to reuse the block.
|MLC (Multi Level Cell)
is a term used in the context of
flash memory and
flash SSDs to
describe how the storage charge in a single floating gate transistor cell is
interpreted by the logic system. |
In traditional digital systems, the
change in state (of a voltage, current or charge) is interpreted as being either
1 of 2 distinct levels - "0" or "1" - which is where we
get the term binary logic from. Such flash cells are called SLC
(Single Level Cell).
In an MLC memory chip the stored charge is
interpreted as a range of values (0 to 3), (0 to 7) etc - which depends on
the ability of the discrimator circuits surrounding the memory array to
reliably tell the difference between levels.
The logical memory
capacity of a such a cell is 2 bits, or 3 bits etc - where the bits are binary.
Discriminating multiple levels is difficult to achieve technically -
because it involves an analog to digital conversion process - and due to
manufacturing tolerances the same charge may not represent the identical value
in another part of the chip.
There are also various factors which make
the process unrepeatable - by dumping charge into the cell when adjacent parts
of the chip are being written to, by leakage from the cell into the substrate
over time, and by damage in the transistor material due to successive writes
MLC designers overcome these problems (which become
harder in each shrink generation) by wrapping blocks of memory in protective
error correction and
Because the charge in an MLC cell is interpreted
as 2x, 4x etc more data than in the same geometry level SLC chip - MLC is much
more sensitive to age and wear-out factors than SLC. That's why oems typically
quote an endurance figure which is 10x lower.
Why go to all this
trouble? - MLC memory provides capacity which is 2x, 4x etc lower cost than
SLC. That competitive advantage is a compelling argument in many applications.
is similar for SLC and MLC SSDs. Although the extra R/W complexity in MLC is
intrinsically slower than SLC - the data nibble going in or out of the cell is
worth more informational bits than in SLC - which compensates.
refinement of MLC is x3 aka TLC (triple level cell) nand flash - which offers 8
distinct states in a single cell - equivalent to 3 binary bits of storage.
- editor mentions,
Are MLC SSDs Ever
Safe in Enterprise Apps?
- is a term used to describe uncorrected data errors in a flash SSD which arise
from an incompletely understood, inappropriate or poorly designed data
Many new products are vulnerable to these
errors. For more details see the article:-
Challenges in flash SSD Design
is a technique used in the design of some flash SSDs. By providing extra memory
capacity (which the user can't access) the SSD controller can more easily create
pre-erased blocks - ready to be used in the virtual pool. |
effects of Over-Provisioning are:-
The latter case - is because another use of the extra capacity is to replace
blocks - which occur at both ends of the bathtub curve.
- faster overall write IOPS, and
wide variations in the percentage of flash over provisioning in different SSD
designs. This is discussed in more detail in the article -
capacity - the iceberg syndrome.
|SSD Wear Leveling is a
technique used inside flash SSDs to prolong the life of a flash memory array.
Countering the phenomenom called endurance - Wear Leveling processes
in the SSD controller keep track of how many erase cycles have been performed on
each flash block - and dynamically remap logical to physical blocks using
algorithms which spread out the wear over the whole population in the array.
Working hand in hand with over-provisioning - bad cells (which wear-out earlier
than the median life) can be replaced - considerable extending SSD life.
are 3 levels of wear leveling used in the best server grade SSDs - static,
dynamic and active.
Rugged & Reliable Data
Storage: Solid-State Flash Disks overview
Increasing Flash Solid
State Disk Reliability
SSD Myths and
Legends - "write endurance"
is eMLC the true
successor to SLC in enterprise flash SSD?
|SSD Write Amplification
- is a term popularized by
in various flash SSD related articles and press releases.|
Gary Drossel, a VP
at SiliconSystems defines it as follows. "Write Amplification - is a
measure of the efficiency of the SSD controller. Write amplification defines the
number of writes the controller makes to the NAND for every write from the host
system. Long, continuous writes map over this mismatch, but most embedded/
enterprise applications do not
stream data. Instead, they transfer data in a series of shorter, more random
It's the difference in ratio between the number of
theoretical writes you think that your application does to a
flash SSD -
compared to what actually happens - due to OS or other software - which is often
outside your control. Write Amplification can be a serious problem - because it
can invalidate calculations related to
SiliconSystems says - the best thing to do is measure it - rather than estimate
it. Their SSDs can be used as tools to do this - because they perform real-time
internal logs of write cycles.
|SSD Write Attenuation -
is a term coined by the editor of STORAGEsearch.com. |
It is the
opposite effect of Write Amplification - and reduces the amount of writes done
to the SSD compared to what you expect. This kind of out-of-sequence
recognition, and reordering of packets before writes usually requires a non
volatile RAM or similar memory inside the SSD controller.
side effects of Write Attenuation are:-
- lower wear-out of the flash SSD, and
also:- Z's Laws -
Predicting Future Flash SSD Performance
- (often) faster random IOPS - because the nv cache doesn't have to be
flushed out as inefficiently - as in the case of unprotected RAM caches.
|Skinny, Regular and Fat
These are new terms (July 2009) proposed in an article
called - RAM
Architectures in flash SSDs to describe RAM/flash ratios in flash SSDs.
|ASAPs (Auto-tuning SSD
Accelerated Pools of storage )|
This is a new term (November 2009)
coined by StorageSearch.com to
describe a product category which includes products like the following:-
aimed at different markets, and having different interfaces, what they all have
in common is their ability to self-tune.
In effect - "ASAPs
eliminate waits for
the SSD Hot-Shot / Hot-Spot Engineer ..."
|11 key symmetries in
SSD design - defines 11 new SSD jargon terms and provides a unified
overview of SSD architecture.|
|Legacy SSD and New
Dynasty SSD - are ways of classifying enterprise acceleration SSDs by the
architecture of the storage environment they were designed to go into. |
nomenclature - was introduced in in September 2010 in this article -
A new way of looking
at the Enterprise SSD market.
|Flash Memory Basics - for
enterprise SSD buyers|
|Editor:- February 3, 2010 - a new article -
Memory Basics - posted today by blogger Brad Diggs looks like it
could be part of an educational series laying the groundwork for Sun Microsystem's
PCIe SSD product
|New Improved SSD Formula!
|news flash:- XLC Disk has launched
a new fast-enough
SSD ASAP on a
PCIe form factor with
symmetric) R/W IOPS. High
and data integrity
are achieved by using
flash management with 3 levels of
despite light over-provisioning. The new SSD has industry leading write
attenuation and fast garbage collection, has UBER better than 1 sector in 1019
eliminating the risk of silent errors. The
no SPOF SSD
has internal FT features such as
RAID, plane failure
management and chipkill - and can fail-over the entire flash array to an
alternate PCIe host without loss of data. Designed for mission critical server
apps - the SSD has strong protection against
loss which doesn't rely on supercaps....|
|do you understand all the
ingredients in the solid state
drive news headlines?|
What are the factors holding back
been a constantly recurring topic in my discussions with SSD designers and oems
in the past 10 years.
Now, if you're a manufacturer of
hard disk drives you
may think that the SSD market is racing along fast enough
already - and
doesn't need any more help from me.
But User Education has
always come up as the most important SSD market accelerant.
1998 when we published the 1st real-time updated directory of
SSD oems - the most
important part of the education mix seemed to be - What were the benefits of
application speedup - if you could
when I published my definition -
What's a Solid
State Disk? - in 2000 - I didn't think there was much more I could say on
But in the decade which followed - I told users
- they could use some flash SSDs in server apps (if they were SLC and had
and good wear-leveling), and then we said
- they should be extremely cautious when choosing
server apps for
MLC SSDs. Then some types of MLC were better than others. Or exactly the
same MLC - when used with different controllers was more or less reliable.
Along the way users have had to learn the differences between
RAM SSDs, MLC and SLC flash SSDs - and also hybrids.
In some ways this
resembles consumer education about what foods to eat (or not to eat) to maintain
a healthy lifestyle. But in the case of SSDs - the foods have been evolving fast
and are now forming a bigger part of everyone's diet.
So you need to
know more about the ingredients listed on the carton.
Even if you
already know all you need to know about endurance, MLC, SLC and wear-leveling -
here are 3 new concepts I think you'd benefit from following up in your future
I never thought users would need
to know so much stuff about SSDs. But you do.
- SSD - Write Amplification and Attenuation
You can't rely on your
SSD vendors to tell you. Just as you wouldn't base a healthy diet on things
chosen randomly from a supermarket shelf - or buy a car just because it's
got the right number of wheels. You have to choose your own risk / reward
comfort zones in the SSD market too.
I've included an explanation of
7 important SSD terms in the table on the left.
|DWPD - in the SSD
context is a way of rating endurance and matching application slots to the SSD.
DWPD stands for Diskful Writes Per Day and the associated assumption
is that this daily usage figure is good for an operating period of 5 years.
See also:- what's
the state of DWPD? - which gives examples of DWPD for various different
types of enterprise SSDs from leading vendors.
|HMS SSD - Host Managed
First used in
OCZ - in the context of a
new range of array oriented SATA SSDs - HMS enables host software to have better
visibility and granular control of data movements and house-keeping activity
inside the SSD controller.
The name is new - but the concept of this
kind of multi-level storage intelligence has appeared under different names in
the past (although not as memorable names as HMS.)
Details of scope
and implementation vary considerably but the concept's ancestor owes much to
design of the worlds' first PCIe SSDs from
Fusion-io. And with
different details an HMS concept (3rd generation controller) was implemented
in earlier SSDs by Baidu,
was called "adaptive intelligence flow symmetry" in my 2012 article -
11 Key Symmetries in
SSD design .
|ull SSDs - ultra low
latency SSDs. |
In the circa 2013 period the context usually is related
The idea is to implement ultra low latency flash
SSDs - similar to but faster than PCIe SSDs - in modules which plug into DRAM
|SSD CPU Equivalency|
term was invented by the editor in
succintly describe a concept he discovered and used in systems designs in the
1980s and which underpinned his
earliest published SSD
market adoption model in 2003.
It's related to SSD speedup /
acceleration in servers.
For a wide range of applications (in a well
designed system) if you take a black box approach and analyze the overall
application performance of a computer system - you would not know from external
tests whether that system had more CPUs with hard disks or less CPUs with more
SSDs. That's SSD CPU Equivalency.
Translation Layer - is the standard term for lumping together the software and
hardware IP which interecepts R/W requests for logical flash memory addresses
made to the SSD from the apps processor and converts these into actions which
do real R/W to the physical memory.
In the simpler days of SLC when
flash was intrinsically more reliable - the FTL was a much simpler IP package
than it is now.
The FTL - which can operate at many different levels -
hides things like
management, wear leveling,
etc so that the external software can think it's talking to clean reliable
|µSSD, SATAe and SATA
These are next step variants of the
Serial ATA (SATA)
interface standard roadmap.
The new terms came into being in 2011.
- µSSD - or more correctly "SATA µSSD" - defines
the standard pins in an SSD chip (BGA form factor) which support the SATA
interface - and which (in theory) makes it easier for systems designers to
interchange SSDs from different suppliers.
SSDs on a chip
- SATAe and SATA Express - define the pins for the successor standard for
SATA 3 - for a 2.5"
form factor. The speedup in the SATAe generation - comes from 2 lanes of
PCIe instead of doubling of the 6Gbps speed of SATA 3.
2.5" PCIe SSDs
|SSDserver rank is a
latency based configuration metric - proposed as a new standard by StorageSearch.com - which can
tersely classify any enterprise server - as seen from an SSD software
perspective - by a single lean number rating from 0 to 7. ...read the article|