What are TLC, MLC, and SLC NAND Flash Anyway?
I mentioned this on the most recent Bite Size Tech, explaining how the 16GB iPhone uses TLC and the 64 and 128GB iPhones use MLC. As stated in the episode, MLC1 is a little more expensive, but why? I'm not an expert on storage, but I thought this was interesting and wanted to share2.
SLC, MLC, and TLC
The big thing to know about these three types of storage is that they refer to how much data (or "levels") is stored in each "cell".
- SLC = Single Level Cell = 1 levels
- MLC = Multi Level Cell = 2 levels
- TLC = Triple Level Cell = 3 levels
Now that doesn't sound like much, but the big thing to know right away is that SLC is the most reliable, fastest, and most expensive of the three formats. They get less reliable and slower as you move down the list, but they also get cheaper. As such, SLC is usually found in enterprise-level environments like servers, while MLC and TLC tend to be found in consumer electronic devices like your phone and computer.
The wonders of modern programming languages means that we never have to think about the base level of computer programming, which is just a whole bunch of 1's and 0's. Yup, you may love how a vacation photo looks on your computer screen, but you computer has no idea what that looks like, it's just millions and millions of 1's and 0's to it.
With that in mind, consider what computer storage is: a way to store 1's and 0's. Those are all stored in tiny cells all bunched up next to each other. With Single Level (SLC) there is one level of data. Essentially, the cell has a value of 1 or 0. With Multi Level (MLC) you have 2 levels, so the cell could have the value of 00, 01, 11, or 10. Triple Level (TLC) has 3 levels, so the cell could be 000, 001, 010, 011, 100, 101, 110, or 111.
That's hard to put in words, so let's see that in an image
The key takeaway here is that each cell is the same physical size, which is relevant in the next section.
TLC looks the best, why is it the cheapest?
TLC is indeed the most dense format, allowing you to essentially hold 3x the information in the same amount of physical space as SLC. This is desirable in many cases such as the higher capacity iPhones, which use TLC storage despite the much smaller 16GB model using MLC.
The trouble comes when you once again break down what's literally happening in the cells. Electricity runs through the storage device, through every cell on the board, and charges the electrons so they move to the portion of the cell that represents one of the possible values of the cell. Depending on how it runs though each cell, it will shift the electrons to determine what "value" that cell will have.
For example, in the Single Level Cell, the charge can move electrons to the left side or right side of that cell. So if the value needs to be 1, then it's target is the right 50% of the cell. The same principal applies to the Milti Level and Triple Level cells as well. In MLC, the charge has a target of 25% of the cell, and in TLC, the target is down to 12.5%. The difference in size wouldn't be that big of a deal if these cells were as big as a desk, but when they're a couple microns wide, accuracy gets a little trickier. If those electrons shift out of place, they can corrupt your data.
Now there are safety measures in place to keep these shifty electronics where they belong, but that's a little more than I'm going to get into today3. At the end of the day, all of these storage methods are good enough most of the time, but when it really, really matters that you don't lose anything, SLC is the best way to go.
Ultimately, this was a very surface-level look at some of the most common storage technology out there today. This probably won't be a great conversation starter in the future (God, please don't talk about this to normal people!), but sometimes it's good to know a little bit more about the tech that we use to run our lives.