How SSDs Work

The building block of NAND flash is the N-channel MOSFET:

Each "cell" is made up of one of these transistors. In a single-level cell (SLC) flash device, one of these transistors can hold 1-bit of data. You write data to the cell by electron tunneling; apply a high enough voltage to the gate, create a powerful enough electric field, and electrons will tunnel through the oxide and into the floating gate. Remove the voltage and the electrons will remain in the floating gate. Apply the voltage across the channel instead of the gate, reverse the bias and the electrons will go in the other direction. Simply put, that's how flash works - you've got two states, 0 and 1, and the state is preserved even if the cell has no power, making it ideal for a storage device.

Programming flash is an iterative process. The controller will apply voltage to the gate (or the channel), allow some electrons to tunnel and check the threshold voltage of the cell. When the threshold voltage has reached some predetermined value, it’s now programmed and your data is stored.

MLC vs. SLC

There are two forms of NAND flash used in SSDs today: Single-Level Cell (SLC) and Multi-Level Cell (MLC). The difference between the two is the amount of data stored per cell, with SLC it's 1-bit per cell and with MLC it's 2-bits per cell. The key here is that both SLC and MLC take up the same amount of die area, so MLC effectively doubles your capacity at the same price.

Intel actually uses the same transistors for its SLC and MLC flash, the difference is how you read/write the two. With SLC there are only two voltages to worry about, since there are two states (0 or 1). With MLC, there are four states (00, 01, 10, 11) and thus it takes longer to access since you don't want to accidentally write the wrong bit of data; you've got the same min and max voltage, you simply have more graduations in between the two now:


SLC (left) vs. MLC (right)

Below is a table of some basic stats on SLC vs. MLC performance:

  SLC NAND flash MLC NAND flash
Random Read 25 µs 50 µs
Erase 2ms per block 2ms per block
Programming 250 µs 900 µs

 

Erasing performance is the same between the two, read performance takes twice as long on MLC flash and write performance can take almost four times as long. If you've ever heard people complain about MLC write speed before, this partly why. Do keep in mind though, the numbers we're talking about here are ridiculously low - even 900 µs to write to MLC flash is much faster than writing to a mechanical hard disk.

The biggest advantage of SLC ends up not being performance, but lifespan. To understand how flash wears, we first need to look at how it's organized in a storage device.

Index The Flash Hierarchy & Data Loss
Comments Locked

96 Comments

View All Comments

  • aeternitas - Thursday, September 11, 2008 - link

    Converting all your DVDs to divx is a silly idea. Why would you want to lose dynamic range and overall quality (no matter the settings) for a smaller movie size when 1TB costs 130$?

    SSD = Preformance (when done right)
    HHD = Storage.
  • johncl - Tuesday, September 9, 2008 - link

    Noise isnt a big problem on a 3.5" in a media pc as the other poster states. But heat can be a problem, especially if you plan on passively cool everything else in the computer. An SSD will solve both problems, but only if the SSD is the only disk in the system. From what I understand you want to have both in yours which makes sense since movies/music occupy a lot of space. In that case you will not experience any improved performance since the media would have to be read off the mechanical drive anyway.

    Your best bet would be to build yourself a small media server and put all noisy hot mechanical disks in that and use small SSDs on your media pc (and indeed any other pc). That way you get the best of both worlds, fast response on application startup/OS boot, silent and no heat - as well as a library of media. You would probably have to use a media frontend that caches information about all media on your server though so it doesnt have to wait on server harddisk spinup etc for every time you browse your media. Perhaps Vista Media Center already does this?
  • mindless1 - Thursday, September 11, 2008 - link

    An SSD will not "solve" a heat problem. The hard drive adds only a small % of heat to a system and being lower heat density it has one of the less difficult requirements for cooling.


    Speed of the HTPC shouldn't be an issue, unlike a highly mixed use desktop scenario all one needs is to use stable apps without memory leaks then they can hibernate to get rid of the most significant boot-time waiting. Running the HTPC itself the OS performance difference would be trivial and the bitrate for the videos is easily exceeding by either storage type or an uncongested LAN.
  • piroroadkill - Tuesday, September 9, 2008 - link

    To be honest most decent HDDs don't make significant noise anyway, even further quelled by grommets or suspending the drive.

    Also, the reads will occur on the drive you're reading the movie from - so if you plan to use an external HDD as the source, this will make no difference whatsoever.
  • dickeywang - Tuesday, September 9, 2008 - link

    Imaging you have a 80GB SSD, with 75GB been already occupied by some existing data (OS, installed software, etc), so you only have 10GB space left, now lets say you write and then erase 100GB/day on this SSD, shouldn't the 100GB/day data all be written on the 5GB space? So each cell would be written 100GB/5GB=20cycle/day, so you will reach the 10000cycle/cell limit within less than 18months.
    Can someone tell me if the analysis above is correct? I guess when they say "100GB/day for 5 years", they should really take into account how much storage space that is un-occupied on the SSD, right?
  • johncl - Tuesday, September 9, 2008 - link

    A good wear leveling algorithm can move about "static" blocks so that their cells are also available for wear. I do not know if the current implementations use this though. Anyone know this?
  • Lux88 - Tuesday, September 9, 2008 - link

    I remember reading a number of SSD reviews, but it's first time I read about the pauses. Indeed, quick search revealed 5 articles, starting from May 2007, but the conclusions only mentioned a high price and a small capacity as drawbacks. Nothing about freezing nor pauses. Some of these 5 probably were SCL-drives, some MLC.

    It's funny how a simple multitasking test can reveal an Achille's heel of large group of products, just when a product appears that doesn't suffer from this particular drawback.

    Overall good article and good info. So good that all the previous articles on the matter of SSDs on this site seem bad in comparison. Thanks for the info anyway, better late than never ;).
  • eva2000 - Tuesday, September 9, 2008 - link

    If the OCZ Core controller does indeed have 16KB on chip cache for read/writes maybe that's the problem as OCZ Core pdf states for their SSD

    "each page contains 4 Kbytes of data, however, because of the parallelism at the back end of the controller, every access includes simultaneous opening of 16 pages for a total accessible data contingent of 64 Kbytes"

    ????
  • araczynski - Tuesday, September 9, 2008 - link

    looks quite promising. maybe within about 2 years they'll get the bugs worked out, a more realistic price, and an extended life span, and i'll replace my regular drives.
  • yyrkoon - Tuesday, September 9, 2008 - link

    "No one really paid much attention to Intel getting into the SSD (Solid State Disk) business. We all heard the announcements, we heard the claims of amazing performance, but I didn't really believe it. After all, it was just a matter of hooking up a bunch of flash chips to a controller and putting them in a drive enclosure, right? "

    You mean you did not pay attention? I know I did, because Intel has always been serious with things of this nature. That and they are partnered with Crucial(Micron) right ?. . . Now if this was some attempt at sarcasm, or a joke . . .

    Seriously, and I mean VERY seriously, I was excited when Anandtech 'reported' that Intel/Micron were going to get into the SSD market. After all affordable SSDs are very desirable, never mind affordable/very good performing SSDs. That, and I knew if Intel got into the market, that we would not have these half-fast implementations that we're seeing now from these so called 'SSD manufactures'. Well, even Intel is not impervious to screw ups, but they usually learn by their mistakes quickly, and correct them. Micron (most notably Crucial) from my experience does not like to be anything but the best in what they do, so to me this seemed like a perfect team, in a perfect market. Does this mean I think Micron is the best ? Not necessarily. Lets me just say that after years of dealing with Crucial, I have a very high opinion of Crucial/Micron.

    "What can we conclude here? SSDs can be good for gaming, but they aren't guaranteed to offer more performance than a good HDD; and Intel's X25-M continues to dominate the charts."

    Are we reading the same charts ? These words coming from the mouth of someone who sometimes mentions even the most minuscule performance difference as being a 'clear winner' ? Regardless, I think it *is* clear to anyone willing to pay attention to the charts that the Intel SSD "dominates". Now whether the cost of admission is worth this performance gain is another story altogether. I was slightly surprised to see a performance gain in FPS just by changing HDDS, and to be honest I will remain skeptical. I suppose that some data that *could* effect FPS performance could be pulled down while the main game loop is running.

    Either way, this is a good article, and there was more than enough information here for me(a technology junky). Now lets hope that Intel lowers the cost of these drives to a more reasonable price(sooner rather than later). The current price arrangement kind of reminds me of CD burner prices years ago.

Log in

Don't have an account? Sign up now