A Quick Flash Refresher

DRAM is very fast. Writes happen in nanoseconds as do CPU clock cycles, those two get along very well. The problem with DRAM is that it's volatile storage; if the charge stored in each DRAM cell isn't refreshed, it's lost. Pull the plug and whatever you stored in DRAM will eventually disappear (and unlike most other changes, eventually happens in fractions of a second).

Magnetic storage, on the other hand, is not very fast. It's faster than writing trillions of numbers down on paper, but compared to DRAM it plain sucks. For starters, magnetic disk storage is mechanical - things have to physically move to read and write. Now it's impressive how fast these things can move and how accurate and relatively reliable they are given their complexity, but to a CPU, they are slow.

The fastest consumer hard drives take 7 milliseconds to read data off of a platter. The fastest consumer CPUs can do something with that data in one hundred thousandth that time.

The only reason we put up with mechanical storage (HDDs) is because they are cheap, store tons of data and are non-volatile: the data is still there even when you turn em off.

NAND flash gives us the best of both worlds. They are effectively non-volatile (flash cells can lose their charge but after about a decade) and relatively fast (data accesses take microseconds, not milliseconds). Through electron tunneling a charge is inserted into an N-channel MOSFET. Once the charge is in there, it's there for good - no refreshing necessary.


N-Channel MOSFET. One per bit in a NAND flash chip.

One MOSFET is good for one bit. Group billions of these MOSFETs together, in silicon, and you've got a multi-gigabyte NAND flash chip.

The MOSFETs are organized into lines, and the lines into groups called pages. These days a page is usually 4KB in size. NAND flash can't be written to one bit at a time, it's written at the page level - so 4KB at a time. Once you write the data though, it's there for good. Erasing is a bit more complicated.

To coax the charge out of the MOSFETs requires a bit more effort and the way NAND flash works is that you can't discharge a single MOSFET, you have to erase in larger groups called blocks. NAND blocks are commonly 128 pages, that means if you want to re-write a page in flash you have to first erase it and all 127 adjacent pages first. And allow me to repeat myself: if you want to overwrite 4KB of data from a full block, you need to erase and re-write 512KB of data.

To make matters worse, every time you write to a flash page you reduce its lifespan. The JEDEC spec for MLC (multi-level cell) flash is 10,000 writes before the flash can start to fail.

Dealing with all of these issues requires that controllers get very crafty with how they manage writes. A good controller must split writes up among as many flash channels as possible, while avoiding writing to the same pages over and over again. It must also deal with the fact that some data is going to get frequently updated while others will remain stagnant for days, weeks, months or even years. It has to detect all of this and organize the drive in real time without knowing anything about how it is you're using your computer.

It's a tough job.

But not impossible.

Index Live Long and Prosper: The Logical Page
Comments Locked

295 Comments

View All Comments

  • CList - Tuesday, September 1, 2009 - link

    Don't be disgusted at Newegg, be disgusted at the people who are willing to pay the premium price! Newegg is simply playing a reactionary role in the course of natural free-market economics and cannot be blamed. The consumers, on the other hand, are willing participants and are choosing to pay those prices. When no one is left who is willing to pay those prices, Newegg will quickly lower them.

    Cheers,
    CList
  • gfody - Tuesday, September 1, 2009 - link

    I don't understand how consumers have any control over what Newegg is charging for the 160gb that's not even in stock yet.

    If Newegg wants to get the absolute most anyone is willing to pay for every piece of merchandise they may as well just move to an auction format.
  • DrLudvig - Tuesday, September 1, 2009 - link

    Yeah, if you look at intel's website, http://www.intel.com/cd/channel/reseller/asmo-na/e...">http://www.intel.com/cd/channel/reselle...na/eng/p..., you will se that the R5 includes "3.5" desktop drive bay adapter to 2.5" SSD adapter bracket, screws, installation guide, and warranty documentation.
    Why on earth Newegg is charging that much more for it i really don't know, here in denmark the R5 retails for about 15 bucks more than the C1.. Which really isn't that bad..
  • Mr Perfect - Tuesday, September 1, 2009 - link

    Whoa. That's it? An adapter kit? With that kind of price difference, I expected it to be the D0 stepping of SSDs or something.

    Thanks for clearing that up.
  • NA1NSXR - Monday, August 31, 2009 - link

    The reason not being that performance or longevity is not good enough, but because improvements are still coming too quickly, and prices falling fast still. Once the frequency of significant improvements and price drops slow down, I will more seriously consider an SSD. I suppose it depends on how much waiting on the I/O you do though. For me, it is not so much that a Velociraptor is intolerable.
  • bji - Tuesday, September 1, 2009 - link

    Perhaps this is what you meant, but you should really clarify. It's still not time for YOU to buy an SSD. SSDs represent an incredible performance improvement that is well worth the money for many people.
  • DragonReborn - Monday, August 31, 2009 - link

    say i wanted to go crazy (it happens)...should i get two 80gb intel g2's or the 160gb intel g2? same space...is the RAID 0 performance worth it?

    i have all my important data backed on a big 2tb drive so the two ssd's (or 1 160gb) will just hold my OS/progs/etc.

    thoughts?
  • kensiko - Monday, August 31, 2009 - link

    I would say that in real world usage, you won't notice a huge difference between RAID and not RAID, SSD are already fast enough for the rest of the system. Also, TRIM may not work for now in RAID configuration.

    Just look at Windows Start up, no difference between Gen2 SSD!
  • Gc - Monday, August 31, 2009 - link

    This is a nice article, but the numbers leave an open question.
    What is Samsung doing right? Multiprocess/multithread performance?

    The article finds Samsung drives performance is low on 2MB reads,

    (new 2MB sequential reads not given, assume same as 'used')
    used 2MB sequential reads (low rank, 79% of top)

    good on 2MB writes:

    new 2MB sequential writes (middle rank, 89% of top)
    used 2MB sequential writes (2nd place, 91% of top)

    and horrible on 4KB random files:

    (new 4KB random reads not given, assume same as 'used')
    used 4KB random read (bottom ssd ranked, only 36% of top)
    new 4KB random write (low rank, only 9% of top)
    used 4KB random write (bottom ssd ranked, only 3% of top, < HD)

    Yet somehow in the multitasking Productivity test and Gaming test, it was surprisingly competitive:

    multitasking productivity (mid-high rank, 88% of top)
    gaming (mid-high rank, 95% of top)

    The productivity test is described as "four tasks going on at once, searching through Windows contacts, searching through Windows Mail, browsing multiple webpages in IE7 and loading applications". In other words, nearly all READS (except maybe for occasionally writing to disk new items for the browser history or cache).

    The gaming test is described as "reading textures and loading level data", again nearly all READS.

    Q. Given that the Samsung controller's 2MB read performance and
    4KB read performance are both at the bottom of the pack, how
    did it come out so high in the read-mostly productivity test
    and gaming test?

    Does this indicate the Samsung controllers might be better than Indilinx for multiprocess/multithreaded loads?

    (The Futuremark pdf indicates Productivity 2 is the only test with 4 simultaneous tasks, and doesn't say whether the browser tabs load concurrently. The Gaming 2 test is multithreaded with up to 16 threads. [The Samsung controller also ranks well on the communications test, but that may be explained: Communications 1 includes encryption and decompression tasks where Samsung's good sequential write performance might shine.])

    Since many notebooks/laptops are used primarily for multitasking productivity (students, "office"-work), maybe the Samsung was a reasonable choice for notebook/laptop OEMs. Also, in these uses the cpu and drive are idle much of the time, so the Samsung best rank on idle power looks good. (But inability to upgrade firmware is bad.)

    (The article doesn't explain what the load was in the load drive test, though it says the power drops by half if the test is switched to random writes; maybe it was sequential writes for peak power consumption. It would have been helpful to see the power consumption rankings for read-mostly loads.)

    Thanks!
  • rcocchiararo - Monday, August 31, 2009 - link

    Your prices are way off, newegg is charging ludicrous ammounts right now :(

    also, the 128 agility was 269 last week, i was super exited, then it went back to 329, and its now 309.

Log in

Don't have an account? Sign up now