nvme ssd Introduction to SSD Principles
disco duro solidoSSD OEMnvme ssd SSD is Solid State Drivenvme ssd+8618750919058, that is, the abbreviation for SSD. At present, the mainstream SSD is a storage device that uses semiconductor flash memory (Flash) as a mediumnvme ssd+8618750919058, SSD is different from HDD (Hard Disk Drive) mechanical hard disk.
SSD was born in the 1970s, the earliest SSD used RAM, RAM power-down data will be lost, the price is particularly expensive. Later, flash-based SSDs appeared, and after flash memory power-downs, data was not lost, and flash SSDs slowly replaced RAM SSDs. At this time, HDD disks have occupied most of the storage market. By the beginning of this century, due to the continuous advancement of the process, SSDs have won great development, capacity and performance continue to increase, and prices continue to decline. HDD in the process and technology has been difficult to have a breakthrough, SSD in performance and capacity is still breaking through, relative to the shrinking HDD market, whether it is the rapid popularization of SSD in the enterprise market or the consumer market, SSD market share has been expanding. It is believed that in the near future, SSDs will replace HDDs as mainstream storage devices in the field of online storage and become the mainstream devices of software-defined storage.
in the mode of operation, HDD uses disks, that is, magnetic media as the data storage medium, in the data reading and writing, using the magnetic head + motor for mechanical addressing. Because the mechanical hard disk relies on the limitation of mechanical drive reading and writing data, the performance improvement of the mechanical hard disk has encountered a bottleneck. In particular, the random read and write ability of HDD disks, limited by their mechanical characteristics, is a huge bottleneck. SSD uses Flash as the storage medium, data read and write through the SSD controller addressed, no mechanical operation, has excellent random access capabilities.
the following figures are the composition of HDD and SSD, respectively. HDD uses mechanical SSDs consisting of master control, flash memory, DRAM (optional), PCB (power chip, resistor, capacitor, etc.), interface (SATA, SAS, PCIe, etc.).
SSD is divided into front-end, intermediate- and back-end. The front end is the interface and related protocol modules (STAT/SAS/PCIe, etc.), the middle is the FTL (Flash Transhlation Layer) module, and the back end is the flash memory communication module (flash memory follows the ONFI or Toggle protocol).
Flash is the floating gate transistor.
the above figure is the structure of the floating-gate transistor, and the bottom is the substrate, source and drain. Above the substrate, there is a tunnel oxide layer, a Floating Gate, an oxide layer, and a control gate. The Fluid Gate in the middle is surrounded by an insulating layer, and the electrons are easy to enter and difficult to get out, and the transistors are written and erased by charging and discharging electrons through the Fluttering Gate.
form a floating gate for storing electrons on a semiconductor with unidirectional current conduction between source and drain, and the floating gate is surrounded by an insulating layer up and down, and the electrons stored inside will not disappear due to power failure, so flash memory is non-volatile memory.
the following figure is the principle of writing and erasing floating-gate transistors.
write operation as shown on the left, is the control gate above plus a positive voltage Vpp, so that electrons through the insulating layer into the floating gate. The erasure operation is just the opposite, as shown on the right, is to add a positive voltage Vpp to the substrate to suck the electrons out of the floating grid. The process of writing is the process of the charger, if the written page has been written before, before writing, the flash must be erased 0, clearing the electrons in the floating gate.
data is saved in binary 0 and 1, according to whether there are electrons in the floating gate, you can represent 0 and 1 of the data, so that data can be stored. Generally, the state with electrons is recorded as 0, and the state without electrons is recorded as 1.
according to the production process, flash memory can be divided into NOR type and NAND type.
NOR type is designed to replace EEPROM, can be accessed bitwise or byte, NOR flash memory chip has the advantages of high reliability, random read speed, but erase and programming speed is slower, small capacity, mainly used to store executable Chengdu code.
NAND flash memory has a large capacity, read and write by page, and has a large capacity, which is suitable for data storage. The introduction of this article is based on NAND flash.
the internal organizational structure of flash memory as shown in the following figure:
The traditional Flash is composed in a two-dimensional way, mainly composed of word line (WL) and bit line (BL), as shown in the following figure. A word line represents a page, and when reading and writing, the bit line controls each bit on the word line. Such a word line and bit line intersect to form a block. Block tiles make up the flash.
With the development of flash memory technology manufacturing process, the size of two-dimensional flash memory continues to shrink, and the interference between cells continues to grow with the shrinking size. The emergence of 3D Nand Flash technology effectively solves the problem of unit interference.
the following image is a stereogram of 3D flash memory in which flash is stacked. If 2D Nand Flash is likened to a bungalow, then 3D Nand Flash can be thought of as a building, and 3D Nand Flash can pile more transistors per unit area by increasing the number of layers of flash. 3D Nand Flash has the advantage of stacking more storage units per unit area and reducing the cost per bit.
read fast; When writing data, the speed is slightly slower because the memory unit needs to be electronically filled by pressurization; The erase speed is the slowest, and the time to erase blocks is in the ms level. When using an SSD, it is necessary to consider the unbalanced read and write characteristics of the SSD.
Nand Flash is written in page and erased in blocks. Before a page page can be written, the block in which the page page resides must be erased. This is determined by how Nand Flash works.
a Wordline corresponds to one or more Pages, depending on WHETHER it is SLC, MLC, or TLC. For SLC, a Word line corresponds to a Page; MLC corresponds to 2 Pages, which are pairs (Lower Page and Upper Page); TLC corresponds to 3 Pages (Lower Page, Upper Page and Extra Page, different flash memory manufacturers call it differently). How big a Page is, then there are as many storage units as wordline, and as many Bitlines as there are. Writes are in page units.
all of these storage units in a Block share a single substrate. When a reinforcing voltage is applied to the substrate, all the floating gate electrons above will be sucked out. So erasure is in blocks.
Each NAND Block has a limit on the number of erases, beyond which the Block may not work: the floating gate cannot charge the electron (write failure), or the electrons of the floating gate can easily run out (bit flipping, 0->1), or the electrons inside the floating gate cannot run out (erase failure). This maximum number of erases is decreased by SLC, MLC, TLC in turn: the number of erases and writes of SLC can reach 100,000 times, MLC is generally thousands to tens of thousands, and TLC is reduced to hundreds to thousands.
according to how many bits of data a memory cell can store, flash memory cells can be divided into SLC (Single Level Cell), MLC (Multiple Level Cell), TLC (Triple Level Cell).
the above figure is the threshold voltage distribution function of the memory cells in the flash memory chip, the horizontal value is the threshold voltage, and the vertical axis is the number of storage units.
the more electronically divided a memory unit, the finer the number of electrons controlling the entry into the floating gate when writing, so the longer it takes to write; Similarly, when reading, you need to try to read with different reference voltages, which lengthens the reading time to a certain extent. In terms of performance, TLC is not as good as MLC, MLC is not as good as SLC. In terms of life, SLC > MLC > TLC. In terms of price SLC > MLC > TLC. The following table is a comparison of some parameters of SLC, MLC, and TLC, the data is older, but the comparison trend is unchanged. There is also a QLC where a flash memory unit can store 4 bits of data.
flash type SLCMLCTLC bits per cell 123 Status represented per cell 248 Erase times (k) 10031 Read time (us) 305075 Write time (us) 3006001000 Erase time (us) 150030004500
FTL is an abbreviation for Flash Translation Layer, an important part of SSDs, implementing the following functions:
In the next article”, “Take you to understand SSD(2)-FTL”, the functions of FTL will be introduced in detail.
notes
Author: NetEase Storage Team Siege Lion Chen Wei
If there are omissions or errors in understanding and description, welcome to communicate together; References have been indicated in the references, but there may still be omissions, any infringement or ambiguity, welcome to point out, must be corrected or deleted in a timely manner; The article is for learning and exchange, reprinted with a source
[1] SSDFans.SSD
.written on the front / disco duro solidoSSD OEMnvme ssd