 |
|
|
|
| leading the way to the new
storage frontier |
...... | |
|
|
aspects of SSD design processors used in SSD controllers and systems
real examples from the market - (preview)by
Zsolt Kerekes,
editor - StorageSearch.com
- October 12, 2015
This is a heads up about an imminent
future series of article on StorageSearch.com which will comment on the many
different approaches which designers have used in the SSD market to choose the
type and number of processors which are integrated in SSD controllers, and in
solid state storage drives and systems ranging from SSDs on a chip upto
rackmount arrays. The new series will include stories around subjects like:-
- how many processors are used in a real SSD? (If the answer was that
obvious - I wouln't have planned a whole article to deal with this single
question.)
- which processor architectures are in use?
- standard?
- stretch?
- roll your own?
- how have real SSD designers chosen the processors for their controller
designs?
(the almost boring realities - not the gilded fairy
tales)
- when multiple processors have been used in the same design - how have
real designs varied with respect to these parameters:-
- clones (more cores the same),
- aliens (entirely different processors which somehow beamed their way into
the design) and
- drones (dumber than processors but smarter than slaves).
- roadmap constraints which come from the markets and applications in which
the SSDs will be deployed
- physical space
- budget
- power
- workload characteristics
- life-cycle
- politics
- architecture and patent tricks inside processors
- Things you expect like - power management, data integrity.
- Sneaky stuff like nvm inside the controller, security features etc.
The
first article in this series will appear in November 2015.
Now you may
ask - who will be interested in such articles? And where will the content come
from?
As to who may be interested?...
That's hard to
predict. Who would have thought at the outset of these SSD articles that so
many people would become so interested in a directory of companies which
design SSDs?, or the impact of flash endurance on SSD design complexity?,
or the nitty gritty details of classic wear leveling in SSDs?, or a list of
SSD controllers?, or a guide to adaptive R/W and DSP ECC? Yet each of these
subjects grew to become highly read - partly as a result of the SSD market
growing - but also because enough of their readers played a part in helping
the SSD market to grow.
So I've stopped being surprised by the fact
that topics which once seemed arcane and only of interest to a small number of
specialists - mushrooms years later into the mainstream.
As the
possibilities for deploying SSDs with application specific power,
performance, and storage/server/app optimimized role becomes better
understood - it has now become inevitable that thousands of systems design
groups are not only looking at designing their own SSDs (which has been
happening for years already) but also a heck of a lot of these designers are
also looking at deeply customizing the SSD in their life - with
customization which aims far beyond adding a few firmware tweaks to a COTS SSD
controller and choosing the flash to populate someone else's reference design.
This
is partly because as tools get cheaper people aspire to do more stuff.
Competitive forces kick in. Ecosystems get started.
Ask yourself
this - how many people in the world in 1974 could write programs for
microprocessors?
Yet somehow we got from needing to know assembly
language and what the connected chips did to a world where if you can type the
right stuff you're streaming a movie about social networks.
Would the
quality of software be better if we could move back to a pre Microsoft era?
While it's unfortunate how much time in the world gets wasted by that X per
cent of bad code - the other (100 minus X) per cent is big enough to mean
you can get a lot of useful things done in between updates.
It's a
tough life designing new SSDs and not as glamorous as civilians might think.
You spend a lot of time waiting for stuff to be ready and in meetings and
email. And looking at some more web pages about processors in SSDs isn't going
to make your working day shorter.
Here's my sales pitch to get
you interested....
In a way - everything in electronics design is
obvious - once you know it's already been done (and how) - so you might
find these articles useful for a varierty of reasons because you'll think to
yourself.
- I can do better than that, or
- I've already done better things than that, or
- is that all there really is to it?
Which will make you feel good.
As to where will the commentary will come from?
About
half the content will come from datamining conversations which I've already had
with designers of new SSDs, controllers and systems. At the time those original
stories were written - the story was - the SSD. Who cared about the internal
processor? or how it got there? But we often discussed the processor angle too
and how that impinged on the SSD design architecture and roadmap. I've still got
notes and recollection from those many part conversations. And I'll also be
reaching out to people I know who have interesting insights which they can bring
to these future articles. And if there's not enough from those sources I'll see
what I can find in other sites for you to look at. And if all else fails I'll
just make stuff up.
The level of the articles?
Here's
my apology in advance. Due to various form factor and packaging issues I can't
change my brain too much right now. Unfortunately it's the same one I've had
for as long as I can remember. Better than new in some ways - but not as good
in others. Some bits have worn off and some of the upgrades which I patched
in may not have been attached in the right places. Meaning that the style
of the new articles will be similar to many past articles here on the mouse
site.
I assume that you're an expert and probably know a lot more
than me about what you do every day. So I'm not going to tell you low level
idiot stuff - like what's the best way to set up your design tools to get
insights from your system simulations.
That's up to you and how you
share design responsibility between what goes on in your head and what goes on
in software (and how you borrow resources from other projects).
What I
hope to bring to these articles is this. I talk to a lot of people about the
changing weather in SSD land. We still can't predict the weather accurately. And
until it rains we still can't be sure if it was a good idea to plan that
picnic. But we've got the food and drinks in anyway and the tables are ready
and until the storm bursts over our heads and washes us all away we're going to
try and enjoy what we're doing now - even while we puzzle out what all those
strange colors in the SSD sky might mean.
So I hope to see you soon
with some thought provoking processor design examples stories from the
SSD history
archive.
If you'd like to contribute your own anecdotes or insights
to any of these future articles - the easiest way is to contact me by email.
| |
| ... |
SSD news SSD Controllers and IP
Surviving
SSD sudden power loss optimizing
CPUs for use with SSDs how fast can your SSD
run backwards? Why size matters in
SSD design architecture RAM in the post modernist SSD and
Memoryfication Era latency reasons
for fading out DRAM in the virtual memory mix |
| ... |
|
|

| |
.... |
 |
the IPs are 100%
compatible | |
| . |
|
|
. |
| see later
|
. |
If you could go back in
time and take with you - in the custom DeLorean pickup - a factory full of
modern memory chips and SSDs (along with backwards compatible adapters) what
real impact would that have?
Now - how about if you could come back
to 2018 from the future?
This thought experiment and analysis
explains why we're seeing daringly different new memory accelerators which
don't even look like memories. |
are we ready for
infinitely faster RAM?
(and what would it be worth) | | |
. |
|
|
. |
How many processor cores in
the SSD controller?
2013
- 3rd generation SandForce SSD controller family - the
SF3700
- had 14 cores
2015 -
Mangstor's PCIe SSD -
MX6300 - has 100 cores | | |
. |
 |
.
. |
| With thousands of projects
now designing new SSDs - and so many
untapped
application roles there just won't be enough standard SSD controller
types around to do what needs to be done. | | |
. |
| "To further increase
performance, controllers can take advantage of interleaving. Each NAND flash
chip can have multiple dies in it, this is particularly so for high density
parts. 2/4/8 die packs are common." |
| Nand
channels and banks - an SSD controller primer | | |
. |
| BiTMICRO and ARC 700
family of configurable cores |
In April 2006 -
BiTMICRO
announced it was using the ARC range of configurable processors in its E-Disk
range of SSDs.
A later design bulletin from Synopsys (which acquired
the ARC product line) -
Configurable
& Extensible 32-bit RISC Processors for Next-Generation SSDs - includes
among other things - this observation...
"The ability to add
user-defined instructions is especially useful in applications in which wide
data paths are required, where a single instruction can operate on multiple data
elements simultaneously to gain significant performance benefits and where the
program flow needs to change rapidly based on external stimuli." | | | |