Speed. Toughness. Efficiency. Silence. That's why we want solid-state drives in our computers. But we worry about the zoom-zoom performance degrading over time, and the fact that SSDs might eventually wear out. Here's what you need to know about 'em.
Why Solid-State Drives Are Awesome (Or At Least, Better Than Hard Drives) To understand what's great about SSDs, let's start with HDDs (you know, old-fashioned hard drives). On a basic level, a hard disk drive works thusly: Inside is a magnetised recording surface called a platter that spins around really fast, with a head that zooms across disk to read and write data - think kinda like a record player, except the head never touches the surface, 'cause that would be very, very bad. So, you can see the problem with hard drives: They're fragile (don't drop your computer) and they're slow to access stuff because the head has to physically move to where the data is.
With an SSD, on the other hand, we're talking straight silicon. What's inside is a bunch of flash memory chips and a controller running the show. There are no moving parts, so an SSD doesn't need to start spinning, doesn't need to physically hunt data scattered across the drive and doesn't make a whirrrrr. The result is that it's crazy faster than a regular hard drive in nearly every way, so you have insanely quick boot times (an old video, but it stands), application launches, random writes and almost every other measure of drive performance (writing large files excepted). For a frame of reference, General Manager of SanDisk's SSD group, Doron Myersdorf, says an equivalent hard drive would have to spin at almost 40,000rpm to match an SSD. And, you can drop it - at least, a little.
Secrets of the SSD Typically, what you've inside an SSD is a bunch of NAND flash memory chips for storage - the same stuff found in memory cards and USB thumb drives - along with a small cache of DRAM, like you'd find on most current hard drives. The DRAM is also flash memory, but the difference between the two is that the storage memory is non-volatile, meaning the data it holds won't go poof when it loses power, while the faster DRAM is volatile memory, so "poof" is exactly what happens to DRAM data when the power goes out. That's fine because it's just for caching things, holding them temporarily to make the whole system work faster.
So, let's talk a bit about flash memory itself. I'll try to keep it straightforward and not lose you, because it's key to the benefits and problems with solid-state storage.
Flash memory is made up of a bunch of memory cells, which are made up of transistors. There are two basic kinds of memory: With single-level cell (SLC) memory, one bit of data is stored per cell. (Bits, the basic building block of information, if you recall, have two states, 0 or 1.) The SLC type is fast as hell and lasts a long time, but it is too expensive for storing the dense amounts of data you'd want in a personal computer. SLC memory is really only used for enterprise stuff, like servers.
The solution for normal humans is multi-level cell memory. Currently, up to 4 bits can be stored per cell. "Multi-level" refers to the multiple levels of voltage in the cell used to get those extra bits in. MLC SSD drives are much cheaper than SLC but are, as I mentioned, slower, and can wear out faster than their pricier counterpart. Still, for now and going forward into the foreseeable future, all of the SSDs you could come close to owning are of the MLC variety.
The Bad Stuff Structurally, flash memory is divided into blocks, which are broken down further into pages. And now, we get into one of the major problems with flash. While data can be read and written at the individual page level, it can only be erased at the larger block level. In other words, suppose you have a 256k block and a 4k page, and you want to erase just one page worth of data, you have to erase the whole block, and then write all the rest of the data back to the block.
This is a huge problem, for one, because MLC flash memory wears out after 10,000 cycles. Two, as the drive fills up, performance significantly degrades. (Anandtech has a pretty great illustration showing this.) That's because without free blocks to write to, you've gotta go through that intensive erase and rewrite cycle, which, as you'd imagine, entails a lot of overhead. Problem numero three is that, according to SanDisk CEO Eli Harari, there's "a brick wall" in the near future, when storage at the chip level will stop increasing in the not-too-distant future.
Mitigating the Bad Stuff The thing is, you actually probably still want an SSD in your next computer, to make it run awesomer. Because where there are problems, there are sorta solutions. Remember how I mentioned up above the other major component in an SSD, besides the flash memory, is the controller? They're a big part of what differentiates one company's SSD from another. The controller is the secret sauce, as SanDisk's Myersdorf told me. Because the game, for now, is all about managing flash better, both physically and logically. It's about algorithms.
The first standard technique for long flash-memory life is wear levelling, which is simply not writing to the same area of the drive over and over again. Instead, the goal is to fill up the entire drive with stuff before you have to start erasing blocks, knowing that erasing will use up precious cycles. The problem of "Write amplification" - say you have a 1MB document that ends up causing 4MB worth of writes to the drive because of the whole block and pages problem described above, where you wind up reading, erasing and re-writing a bunch of extra blocks and pages - that is being lowered, says Myersdorf, because drive management is shifting from being block-based to page-based. More granular algorithms with caching and prediction means there's less unnecessary erasing and writing.
The biggest thing is what's called TRIM. As you probably know, when you delete something from your computer, it isn't instantly vaporised. Your OS basically just marks the data as "Hey it's cool to pave over this with new stuff." Your hard drive has no real idea you deleted anything. With the TRIM function, when you delete something, the OS actually tells the SSD, "Hey you can scrub this crap." The SSD dumps the block to a cache, wipes the pages with the stuff you want gone, and copies the stuff you want to keep back to a new block, leaving you with clean pages for the next time you want to write something to the disk. This means better performance when you're saving new stuff, since it handles the read-erase-rewrite dance ahead of time. Windows 7 supports TRIM, and Myersdorf says Windows 8 will be even better for solid-state storage.
As for busting through the brick wall of limited storage, Toshiba, who invented NAND flash, is currently the chip capacity king. The company just announced a new 64GB NAND flash module that combines 16 4GB NAND chips. This would seem to be closing in on that wall, which we don't want them to do, because we want the dollar-to-MB ratio to keep dropping. Myersdorf is optimistic (despite his boss's gloomy pronouncement), "There have been several walls in history of the [flash]industry - there was transition to MLC, then three bits per cell, then four - every time there is some physical wall, that physics doesn't allow you to pass, there is always a new shift of paradigm as to how we make the next step on the performance curve."
OK, the big question then: When are SSDs gonna get seriously affordable? A 160GB version of one of the one of the most acclaimed SSDs, Intel's X25, retails for $US470. OCZ's Colossus is a verifiable brick of solid-state storage, and the 1TB model has an MSRP of $US2200, though it's going for much more. By contrast, a 1TB WD old-fashioned hard drive is like a hundred bucks on a bad day. Myersdorf says it's hard to say when the SSD's dollar-to-byte ratio is going to go down absolutely, mostly because of supply and demand, but he did predict that a lot of "mainstream" laptops are gonna have 256GB SSDs in the next 18 months. Oh good, I'll be due for a new laptop right around then.
Thanks to SanDisk for helping us out!