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

  • Donkey2008 - Monday, September 8, 2008 - link


    Starting sentences with a conjunction is acceptable, but it is considered bad prose. You are giving everyone a headache. Go take your ritalin.
  • ggordonliddy - Monday, September 8, 2008 - link

    As you stated, my English usage was correct.

    And I'm not the one writing the article; the burden is much greater on the people who are being PAID to write, as it should be. They are setting the example for others.
  • mindless1 - Thursday, September 11, 2008 - link

    As a paying customer I urge you to ask for a refund.
  • Jingato - Monday, September 8, 2008 - link

    What kind of loser gives a f*** about improper use of commas? This aint a novel, it's a friggin tech site.

    lol get a life.
  • ggordonliddy - Monday, September 8, 2008 - link

    You are just making it clear that you do not have a firm grasp of English. You are afraid of those who criticize poor grammar, because you know that you yourself will be exposed for the fraudulent pustule that lies beneath your slimy veneer.

    I have a life. I'm just sick of illiterate authors. Just because it is a tech site is no excuse for extremely poor writing skills. I'm talking about skills that should be completely mastered before being allowed to graduate from elementary school.
  • Jingato - Tuesday, September 9, 2008 - link

    No, I just don't give a f***.....there's a difference.

    I think you're being way too over critical. Maybe it's you OCD kicking in. If those incorrect commas really bothered you THAT much, then you should seek professional help. Seriously, that's not normal.
  • aeternitas - Thursday, September 11, 2008 - link

    If you dont give a ****, then shut the hell up.
  • Gannon - Tuesday, September 9, 2008 - link

    Anand's editors should get this:

    http://www.whitesmoke.com/landing_flash/free_hotfo...">http://www.whitesmoke.com/landing_flash...otforwor...

    I've used it, it is not currently on this machine but what you do is you press "F2" and it checks your grammar and makes suggestings and points out errors, etc.
  • DerekWilson - Tuesday, September 9, 2008 - link

    From your comment:

    "You are afraid of those who criticize poor grammar, because you know that you yourself will be exposed for the fraudulent pustule that lies beneath your slimy veneer."

    "... that you yourself will be exposed ..." should, in fact, be properly punctuated with commas like so: "... that you, yourself, will be exposed ..."

    I agree that grammar is important. But you have to admit that screwing up on comma usage while pointing out someone screwing up on comma usage is funny.

    ...

    Also, while it isn't an excuse, the last two days of work on this article were sleepless ... Anand wanted to get it up much sooner, and sometimes we have to make the decision to get the article out quickly rather than to send it through our managing editor.

    We do always appreciate people pointing out spelling and grammar errors in our articles. We never want to over shadow the content with other issues.
  • ggordonliddy - Tuesday, September 9, 2008 - link

    > "... that you yourself will be exposed ..." should,
    > in fact, be properly punctuated with commas like so:
    > "... that you, yourself, will be exposed ..."
    >
    > I agree that grammar is important. But you have to admit
    > that screwing up on comma usage while pointing out someone
    > screwing up on comma usage is funny.


    Wrong. A comma is not required between "you yourself." See http://www.selfknowledge.com/109331.htm">http://www.selfknowledge.com/109331.htm and other examples.

    I am a bit sorry for being so abrasive in my original post though. Run-on sentences just drive me nuts.

Log in

Don't have an account? Sign up now