NAND Lesson: Why Die Capacity Matters

SSDs are basically just huge RAID arrays of NAND. A single NAND die isn't very fast but when you put a dozen or more of them in parallel, the performance adds up. Modern SSDs usually have between 8 and 64 NAND dies depending on the capacity and the rule of "the more, the better" applies here, at least to a certain degree. (Controllers are usually designed for a certain amount of NAND die, so too many dies can negatively impact performance because the controller has more pages/blocks to track and process.) But die parallelism is just a part of the big picture—it all starts inside the die.

Meet the inside version of our Mr. NAND die. Each die is usually divided into two planes, which are further divided into blocks that are then divided into pages. In the early NAND days there were no planes, just blocks and pages, but as the die capacities increased the manufacturers had to find a way to get more performance out of a single die. The solution was to divide the die into two planes, which can be read from or written to (nearly) simultaneously. Without planes you could only read or program one page per die at a time but two-plane reading/programming allows two pages to be read or programmed at the same time.

The reason I said "nearly" is because programming the NAND involves more than just the programming time. There is latency from all the command, address and data inputs, which are marginal compared to the program time but with two-plane programming they take twice the time (you'll still have to send all the necessary commands and addresses separately for both soon-to-be-programmed pages).

I did some rough calculations based on the data I have (though to be honest, it's probably not enough to make my calculations bulletproof) and it seems that the two-plane programming latency is about 2% compared to two individual dies (i.e. it takes 2% longer to program two pages with two-plane programming than with two individual dies). In other words, we can conclude that two-plane programming gives us roughly twice the throughput compared to one-plane programming.

"Okay," you're thinking, "that's fine and all, but what's the point of this? This isn't a new technology and has nothing to do with the M550!" Hold on, it'll make sense as you read further.

Case: M500

  M550 128GB M500 120GB
NAND Die Capacity 64Gbit (8GB) 128Gbit (16GB)
NAND Page Size 16KB 16KB
Sequential Write 350MB/s 130MB/s
4KB Random Write 75K IOPS 35K IOPS

The Crucial M500 was the first client SSD to utilize 128Gbit per die NAND. That allowed Crucial to go higher than 512GB without sacrificing performance but also meant a hit in performance at the smaller capacities. As mentioned many times before, the key to SSD performance is parallelism and when the die capacity doubles, the parallelism is cut in half. For the 120/128GB model this meant that instead of having sixteen dies like in the case of 64Gbit NAND, it only had eight 128Gbit dies.

It takes 1600µs to write 16KB (one page) to Micron's 128Gbit NAND. Convert that to throughput and you get 10MB/s. Well, that's the simple version and not exactly accurate. With eight dies, the total write throughput would be only 80MB/s but the 120GB M500 is rated 130MB/s. The big picture is more than just the program time as in reality you have to take into account the interface latency as well as the gains from two-plane programming and cache-mode (the command, address and data latches are cached so there is no need to wait for them between programmings).

Example of cache programming

Like I described above, two-plane programming gives us roughly twice the throughput compared to one-plane programming. As a result, instead of writing one 16KB page in 1600µs, we are able to write two pages with 32KB of data in total. That doubles our throughput from 80MB/s to 160MB/s. There is some overhead from the commands like the picture above shows but thankfully today's interfaces are so fast that it's only in the magnitude of a few percents and in real world the usable throughput should be around 155MB/s. The 120GB M500 manages around 140MB/s in sequential write, so 155MB/s of NAND write throughput sounds reasonable since there is always some additional latency from channel and die switching. Program times are also averages and vary slightly from die to die and it's possible that the set program times may actually be slightly over 1600µs to make sure all dies meet the criteria. 

Case: M550

While the M500 used solely 128Gbit NAND, Crucial is bringing back the 64Gbit die for the 128GB and 256GB M550s. The switch means twice the amount of die and as we've now learned, that means twice the performance. This is actually Micron's second generation 64Gbit 20nm NAND with 16KB page size similar to their 128Gbit NAND. The increase in page size is required for write throughput (about 60% increase over 8KB page) but it adds complexity to garbage collection and can increase write amplification if not implemented efficiently (and hence lower endurance). 

Micron wouldn't disclose the program time for this part but I'm thinking there is some improvement over the original 128Gbit part. As process nodes mature, you're usually able to squeeze out a little more performance (and endurance) out of the same chip and I'm thinking that is what's happening here. To get ~370MB/s out of the 128GB M550, the program time would have to be 1300-1400µs to be inline with the performance. It's certainly possible that there's something else going on (better channel switching management for instance) but it's clear that Crucial/Micron has been able to better optimize the NAND in the M550.

The point here was to give an idea of where the NAND performance comes from and why there is such dramatical difference between the M550 and M500. Ultimately all the NAND performance characteristics are something the manufacturers won't disclose and hence the figures here may not be accurate but should at least give a rough idea of what is happening at the low level.

Introduction, The Drive & The Test Performance Consistency & TRIM Validation
Comments Locked

100 Comments

View All Comments

  • Hrel - Wednesday, April 2, 2014 - link

    no response? Cause I'd really like this explained. Consistency in these charts stays WAY over 100.
  • shatteredx - Thursday, May 8, 2014 - link

    Yeah I'm also confused by the conclusions in this article. The M550 consistency numbers look pretty... consistent!
  • Wolfpup - Monday, March 31, 2014 - link

    I can't remember if the M500 has capacitors to deal with power loss or not...suppose I should reread the review. Anyway I choose my 960GB M500 because at the time Intel was using Sandforce controllers, and there's no way I'd use a different brand when Crucial/Micron and Intel are making drives.

    While there are probably theoretically faster drives than my M500, it's not going to be anything obvious. I can't even really tell that my M500 is any faster than my M4 even though it is on paper.

    960GB on a relatively affordable SSD is awesome! Its literally at the point where I'd have had to go with a smaller drive to get a 7200RPM mechanical drive LOL
  • DKN - Wednesday, April 9, 2014 - link

    Latecomer to the discussion. I'm currently running a 240GB M500 drive in an old Lenovo T61p (Core2 Duo T8100). Changing from a 7200RPM HD to the SSD made all the difference in the world as far as day to day use of the laptop.

    Some things, like logging on are about 5x faster than with the HD. Other things are 10x or more faster, making this old laptop work better than some i7 machines with HDs in the office.

    Note that the T61p originally supported SATA 1 and with a BIOS upgrade, it's now SATA 2, so the transfer rates are in line with the capability of the SSD hardware. Purchasing a drive that can support SATA 3 transfer rates wouldn't do anything for the performance of this computer.

    The bottom line? While the enthusiast market is lusting for the latest i7 and graphics processor, there is a large market that just needs something better to make their computers work faster.

    I'm considering upgrading my two laptops at home with M500 drives. The slower machine with a 240GB and the faster (i7, 2nd Gen) with a 480GB.

    Crucial's decision to continue to market the M500 series makes perfect sense for 90% of the users, even if it isn't as fast as the M550.
  • stevo5800 - Thursday, April 17, 2014 - link

    Theres a 60% increase from an M500 and M550 random write but you guys say there is no increase in performance? LOL The average user probably just uses Windows and a few games, so all these drives would perform around the same in the end. Crucial's biggest issue was the lack of higher write speeds. On M500 and earlier write speeds where really low compared to other drives. Plus Crucial also beats some of the other drives in some of the tests here. Almost every SSD manufacturer makes at least 1 decent SSD now a days. Let's not also forget the M550 is brand new and there is still the chance of improvement in some speeds with a new firmware update, we've seen this before. Heck I still find my M4 speedy and it's got way lower specs then the M550. Personally I'm buying a M550 256GB, I'm going for write speeds.
  • AhDah - Thursday, May 15, 2014 - link

    Hello all,
    I want to buy my first SSD
    I'm deciding between Crucial M550 1TB and Samsung 840 Evo 1TB

    On the Samsung 840 Evo, the TRIM validation graph shows a tremendous performance drop after a few gigs of writes, even after TRIM pass, the write speed is only 150MBps.
    Does this mean once the drive is 75%-85% filled up, the write speed will always be slow?

    Crucial M550 on the other hand, has a consistent write speed according to the TRIM validation graph.

    Should I get the Crucial M550 because of this?
    thanks!
  • critter13 - Thursday, May 15, 2014 - link

    I have a 2007 MBP which is obviously SATA II. Is it worth getting a m550 or 840 EVO or will I not see the extra speed? should I save a little money and just go with the m500?
  • SyndromeOCZ - Friday, May 30, 2014 - link

    Seriously why do you make the title of the article a link? Ok if it was a link that actually went anywhere but a link that goes directly to the page I'm viewing. Doing this makes it about 1000 times harder to copy paste parts out of the title, forcing me to have to go through the article to find the part I want to copy. Which in turn forces me to want to never come back to Anandtech again. Just my $0.02
  • ayejay_nz - Sunday, February 15, 2015 - link

    Any word on whether the MU02 firmware update, released 01/8/2015, for this drive boosted performance?

    The release notes can be found here - http://www.crucial.com/wcsstore/CrucialSAS/firmwar...

    I'm not sure if the items they've listed as improving would increase performance?
  • pokazene_maslo - Tuesday, October 3, 2017 - link

    In changelog they mentioned improved power efficiency. Could anyone test power consumption in idle after FW upgrade?

Log in

Don't have an account? Sign up now