How do solid state drives (SSD) store and retrieve data?

698 views

How do solid state drives (SSD) store and retrieve data?

In: Technology

10 Answers

Anonymous 0 Comments

Little teeny tiny gates that store a 0 or a 1 called NAND latches will store each individual bit. Now for reading and writing, each instruction comes in as a string of “coded” binary and it says “Hi! Here’s my start index, my length, and bit offset. Write me!” And the controller writes where it thinks is best through a series of checks.

Anonymous 0 Comments

There’s one really fascinating thing that the other very good explanation didn’t mention. If the data is stored as charge, why doesn’t it just leak out as soon as there’s no power to the computer to hold the charge in the cells (like what happens in RAM)? SSDs hold the charge in an impenetrable box from which there is no exit. But here’s the rub–if the box is going to be impenetrable and require no power to hold it closed, then it cannot have a “lid” or “door” which could come open when the power is off. As a result, there is no entrance to the box either. The only way the charge can get into the box is to kind of “teleport” through the wall of the box using a process known as Quantum Tunneling. Although the box is impenetrable with no openings, the charge is able to pass through the solid barrier and suddenly find itself on the other side, trapped inside the box.

Anonymous 0 Comments

On a very basic level, an SSD is like a large plastic sheet covered with a grid of those bumps that you see on soda-cup lids. To write a file to the disk, you pop and unpop the bumps to represent the file in terms of 1s and 0s. To read from the disk, you run your finger across them and feel the pattern of popped and unpopped bumps.

These bumps are called flash memory cells, and there can be billions or trillions of them packed in several tens of layers on a silicon chip. They consist of microscopic transistors and capacitors, and they’re ‘popped’ and ‘unpopped’ by applying a positive or negative voltage across them, which either stores a tiny amount of electric charge or releases it. To check the state of one of these cells, you can measure the voltage across it to see whether there is charge stored in that cell. A controller chip on the SSD receives read and write commands from the host computer and applies the necessary voltages to the right rows and columns of cells to write and read blocks of several thousand cells, called ‘pages’. The exact format of the data on the disk is entirely up to the controller and may not be consistent across different models of SSD’s — so long as the controller implements a common protocol (SATA or NVMe, for example), the computer doesn’t care.

These cells aren’t perfect, and repeatedly writing and erasing a cell causes it to wear out and lose its ability to store charge. When this happens, the controller can no longer read from those cells, causing data loss. To combat flash memory wear, an SSD controller is smart enough to spread out the reads and writes across the many billions of cells at its disposal. This process is known as ‘wear-leveling’. Even with this algorithm in action, a disk has a limited amount of read-write cycles before the probability of a data loss incident becomes more than negligible. This quantity is usually expressed in write cycles, where one write cycle consists of using every cell on the disk once. Because of this, larger-capacity SSD’s take longer to fail on average.

Anonymous 0 Comments

What great timing to see this. I rarely ever use reddit, if ever, but I’m a long time console player about to switch to pc and I’m also curious about the difference between SSD’s and HDD’s (if I’m typing those correctly). But I’m still confused as to what parts of a computer help load times and why do load times differ from a game you’re playing and a software you’re opening? What part does what and how? My huge pc nerd brother did NOT explain it like I’m 5… he explained it like I take the short bus to school (jokingly).

Anonymous 0 Comments

[deleted]

Anonymous 0 Comments

Solid State Memory is just a bunch of batteries that are charged or not. Every battery is a one (charged) or a 0 (not charged). A computer stores data in these batteries by setting the charge or draining the charge in each battery. Later, it can measure the charge in each battery to see what is stored there.

Anonymous 0 Comments

Write: They inject electrical charges in the form of trapped electrons into “cells”.

Read: They check the voltage of said cells.

Simplest form (SLC) would have the cell at 0v for a 0 and then a positive voltage for a 1.

Anonymous 0 Comments

Can we get an ELI5 on the quantum tunneling that some of the comments and sub comments have mentioned?

Anonymous 0 Comments

A bit on an SSD is like a light switch. You can flip the switch to change the state of the light (Write) or just look at the light switch to know if the light is on. (Read)

Anonymous 0 Comments

The basic element inside a solid state storage device like an SSD is called a floating gate transistor. More on that in a moment. Each of these devices used to store a single yes or no called a bit: 1 or 0. Now each of these devices stores a few yes or nos. Typically 3: 000, 001, 010, 011, 100, 101, 110, or 111. This increase in questions that can be asked to a single device is why you can have really big SD cards and SSD drives.

That and scaling. The size of one of these devices is on the order of 40 nm. Your hair is about 200 um or 200,000 nm across.

How do these devices work?

If you have ever rubbed your hair on a balloon and attracted your hair to it, you have seen something called static electricity. On that surface you have trapped some electrons. That is possible because the rubber is an insulator. On your hair of you have left the absence of electrons. This allows there to be a force between the absence and the extra electrons. It is this force that makes you hair stick up opposing gravity. The force is described by an electric field.

Floating gates on transistors trap charge on them too just like the balloon, only it stays a lot longer because the layer of insulator the charge is trapped in is very isolated.

This charge can attract mobile charges into a region of the transistor called the “channel”. The channel is physically directly under the gate. Think of the charges as a liquid, say water. If the channel is full of water then it conducts, if it is empty of water is does not. It conducts better if there is more water. So depending on how much charge you store on the floating gate you will get more or less conduction.

If we measure how well it conducts we can measure some levels and assign those levels values: 000, to 111.

How do we get the charge on the floating gate? Do we have little hairs we rub on the gate? No. What we do is we use another gate. This one is attached to a chunk of metal which allows us to flood it with electrons. If we put enough electrons on it, it will create such a strong electric field to the channel that some of the very crowded metal will jump to the floating gate, this is called “tunneling” it is governed by a branch of physics called quantum mechanics. We make the other gate crowded by putting a high voltage on the metal gate.

The reason flash memory or SSDs wear out is that sometimes the electrons jumping to the floating gate hit things instead of jumping between the atoms they smack into them and break chemical bonds. When they do this they change the properties of the insulator that lets the floating gate store charge for a long time so some of the electrons escape just like they normally do from the balloon into the air (due to humidity). This makes the floating gate transistor “forget” the information that was stored on it over time as the high level of 111 becomes 110 which is the wrong answer, not what you stored. If the memory is not reliable to remember then its bad/dead.

Typical flash memory can only be written a few 1000 times now before it starts to forget too quickly because everything is so small and fragile.