Understanding TLC NANDby Kristian Vättö on February 23, 2012 1:14 PM EST
- Posted in
- Indilinx Everest
Weaknesses of TLC: One Degree Worse than MLC
In a perfect world, increasing the number of bits per cell sounds like a very easy way to increase capacities while keeping the prices down. So, why not put a thousand bits inside every cell? Unfortunately, there's a downside to storing more bits per cell.
Fundamentally, TLC shares the same problems as MLC when compared to SLC, but takes things one step further. Now that there are eight voltage levels to check, random reads will take more time: 100µs for TLC. That's four times longer than what it takes SLC to random read one bit, and twice as long as what it takes for MLC to complete the same task. Programming will also take longer, but unfortunately we don't have any figures for TLC yet.
|Bits per Cell||1||2||3|
|Random Read||25 µs||50 µs||100 µs|
|Erase||2ms per block||2ms per block||?|
|Programming||250 µs||900 µs||?|
On top of the decrease in performance, TLC also has worse endurance than MLC and SLC. Precise P/E cycle figures are not yet known, but we are most likely looking at around 1000 cycles. Hynix has a brief product sheet for their 48nm TLC flash, which has 2500 P/E cycles. At least in MLC flash, the move to 3Xnm halved the P/E cycles so we would be looking at 1250 cycles. 2Xnm brought even fewer cycles, roughly 3,000, and with same math we get 750 cycles for 2Xnm TLC. X-bit labs reported 1,000 cycles for TLC, which sounds fair. It's also good to keep in mind that endurance can vary depending on the manufacturer and maturity of the process. For example the first 25nm NANDs were good for only ~1,000 cycles, whereas today's chips should last for over 3,000 cycles.
But why does NAND with more bits degrade quicker? The reason lies in the physics of silicon. To understand this, we need to take a look at our beloved Mr. N-channel MOSFET again.
When you program a cell, you are placing a voltage on the control gate, while source and drain regions are held at 0V. The voltage forms an electric field, which allows electrons to tunnel through the silicon oxide barrier from the N-channel to the floating gate. This process is called tunneling. The silicon oxide acts as an insulator and will not allow electrons to enter or escape the floating gate unless an electrical field is formed. To erase a cell, you apply voltage on the silicon substrate (P-well in the picture) and keep control gate voltage at zero. An electric field will be formed which allows the electrons to get through the silicon oxide barrier. This is why NAND flash needs to be erased before it can be re-programmed: you need to get rid of the old electrons (i.e. old data) before you can apply new electrons (i.e. new data).
But what does this have to do with SLC, MLC and TLC? The actual MOSFET is exactly the same in all three cases, but take a look at the table below.
SLC only has two program states, "0" and "1". Hence either a high or low voltage is required. When the amount of bits goes up, you need more voltage stages. With MLC, there are four states, and eight states with TLC. The problem is that the silicon oxide layer is only about 10nm thick and it's not immortal; it wears out every time it's used in the tunneling process. When the silicon oxide layer wears out, the atomic bonds break and during the tunneling process, some electrons may get trapped inside the silicon oxide. This builds up negative charge in the silicon oxide, which negates some of the the control gate voltage.
At first, erasing becomes slower because higher voltages need to be applied (and for a longer time) before the right voltage is found. Higher voltage causes more stress on the oxide, wearing it out even more. Eventually, erasing will take so long that the block has to be retired to maintain the performance. There is a side effect, though. Programming will be faster because there is already some voltage in the cell due to the electron trapping. However, the time won because of that is much smaller than the time it takes to erase the cell when more voltage pulses are required to erase the cell. That's why the block has to be retired when the wear level reaches a certain point.
Here comes the differerence between SLC, MLC and TLC. The fewer bits you have per cell, the more voltage room you have. In other words, SLC can tolerate more changes in the voltage states because it has only two states. In TLC, there are eight, so the margin for errors is a lot smaller.
Lets assume that we have an SLC NAND that takes voltage between 0V and 14V. To program the cell to "1", a voltage between 4V and 5V needs to be applied. Likewise, you need a voltage from 9V to 10V to program the cell to "0". In this scenario, there is 4V of "spare" voltage between the states. If we apply this example to MLC NAND, the spare voltage will be cut to half, 2V. With TLC, that spare value is only 0.67V if we use the same 1V per voltage state ideaology.
However, when the oxide wears out and a higher voltage is needed, the programming voltages go up. To use the SLC example above, you would now need a voltage between 4V and 6V to program the cell to "0". That means a 1V loss in the spare voltage. And here comes the difference. Since SLC has more spare voltage between the states, it can tolerate a higher voltage change until the erase will be so slow that the block needs to be retired. This is why SLC has a substantially higher P/E cycle count; you can erase and reprogram the cell more times. Likewise, TLC tolerates the least change in voltage states, so it has the lowest amount of P/E cycles.
Post Your CommentPlease log in or sign up to comment.
View All Comments
BPB - Thursday, February 23, 2012 - linkI just ordered the OCZ Synapse to use as a caching drive. The reviews all rave about speed increases. I am putting it in my main system. Would be nice if you could tell us where they fit in.
Also, anybody got recommendations on an SSD to get an older system to feel faster for surfing and the like?
Kristian Vättö - Thursday, February 23, 2012 - linkIt's hard for me to say anything about caching SSDs because we haven't reviewed any other than Intel 311 Series (yet). IIRC Synapse comes with its own caching software which is different from Intel's SRT.
Fortunately, we have some more staff working on SSD stuff now. As you may have noticed, so far Anand has done all the SSD reviews. To reduce Anand's workload, I'll be doing some of the SSD reviews in the future, which should allow us to review more SSDs. In fact, I have Plextor M3 SSD on its way here :-)
As for the SSD for an older system, is it a desktop or laptop? I think the best option would be a SSD+HD combo because that is cheap and still lets you have a decent amount of storage. You can try to find older SATA 3Gb/s SSDs (e.g. Intel X25-M G2 or Samsung 470 Series, they are very reliable). You can even hunt for a used drive, some people are already switching for faster SATA 6Gb/s SSDs so you may find a bargain.
ckryan - Thursday, February 23, 2012 - linkSynapse comes with NVELO's dataplex caching software, and there should be more consumer target caching solutions out soon.
macuser2134 - Friday, February 24, 2012 - linkAn upcoming Plextor M3 review - this is exciting! It will certainly be interesting to find out how a Plextor drive compares to other manufacturers.
As a side note the "Pro" version of the Plextor M3 just started selling on Newegg only 2 days ago. Models PX-128M3P, PX-256M3P etc.
seanleeforever - Monday, February 27, 2012 - linkthere is something else the articles did not address. the life time of a certain SSD device is a combination of its cell reliability and how often it get re-written to.
take a look at the second page, it may look like at 3x nm, the SLC can last 20 times more than MLC. However, from a device point of view, a 120 GB SLC can well last 40 or more time than a 120 GB MLC because as you write and delete file over and over.
for example, in order to re-write the entire 120 GB of information, each cell of the SLC only get erase-write once while a 120GB MLC will most likely been erased-write twice (say to change 11 to 10 to and to 00 , a SLC will need to erase and write once on each of two cells where MLC will need to erase and write at least 3 times on a single cell), or try to imagine a super MLC cell that has all the voltage level needed for 120GB storage in one cell, then every-time something is changed that cell get re-written.
this just get a lot worse in TLC design, as you reduce the number of cells to realize more storage space, you are reducing the error margin as well as increasing the cycles. the old saying still applies "there is no displacement for replacement". there is no free lunch.
BPB - Friday, February 24, 2012 - linkThanks for the reply. I'll look into your suggestions, though given what I understand to be the limited life of SSDs I think I'll go new. Thanks again.
Shadowmaster625 - Friday, February 24, 2012 - linkPlease keep an eye out for caching solutions such as NVELO's dataplex caching software. I am looking for one that works with XP. It doesnt make much sense to have to upgrade the OS if all you're looking for is a cheap upgrade to a 5 year old pc. $69 for a caching drive is one thing. $220 for a drive and an OS is quite another...
JNo - Friday, February 24, 2012 - linkAgree. I mentioned the NVELO caching software on these boards weeks (maybe months) ago after storagereview looked at them. It would be really good if you got some of their drives or even just software in to review. It is exciting that there is a competitor to Intel's caching in this space. Who knows? They may even be faster, cheaper and better....
xrror - Monday, February 27, 2012 - linkI'd also like to see some analysis on NVELO "solutions." I was looking pretty seriously at buying Corsair's version of this with their Accelerator series drives as an "impulse purchase" but lack of availability of their 60Gb package and a good read of NVELO's software "licensing" put a quick halt on that.
NVELO looks like a killer app assuming it works. Sadly I expect that it does live up to it's claims, but their DRM is pretty harsh. It's locked to your hardware, so if you say change your video card you must "re-activate."
I know that for most people that's no worse than windows itself, but I change hardware a lot, and/or I'd like to be able to move the SSD cache to other machines in my house w/o worrying that I'll get DRM lockout.
Roland00Address - Thursday, February 23, 2012 - link57 months ago (4.75 years) you could get a 16gb supertalent for 600 dollars
41 months ago (3.41 years) you could get a 80gb intel (1st gen) ssd for 600 dollars.
Small deviations make a big difference when you are calculating exponential growth (and decrease)