SSD: Difference between revisions

From Leo's Notes
This page was last edited on 15 January 2018, at 06:59.
initial content
 
No edit summary
Line 15: Line 15:


A floating-gate transistor is similar to a standard MOSFET, but with the addition of a floating gate. The floating gate is electrically isolated but will affect how current flows through the gate depending on whether it is charged or not by partially canceling out the electric field from the control gate. By applying an intermediate voltage to the control gate and sensing the current through the gate, it is possible to determine the value (or values) stored in the cell.
A floating-gate transistor is similar to a standard MOSFET, but with the addition of a floating gate. The floating gate is electrically isolated but will affect how current flows through the gate depending on whether it is charged or not by partially canceling out the electric field from the control gate. By applying an intermediate voltage to the control gate and sensing the current through the gate, it is possible to determine the value (or values) stored in the cell.
Cells are erased using Fowler-Nordheim Tunneling. This is done by applying a high enough voltage between the source/drain/substrate and the control gate. Electrons in the floating gate will 'tunnel' through the oxide layer thereby erasing its value back to 1 (no electrons represents 1).


Two common flash memories are: NOR and NAND.
Two common flash memories are: NOR and NAND.
Line 20: Line 22:
NOR flash cells are connected in parallel and acts like a NOR gate. Reading a particular cell requires all other cells in the arrangement to be turned off so that no current flows except through the cell that is being read.
NOR flash cells are connected in parallel and acts like a NOR gate. Reading a particular cell requires all other cells in the arrangement to be turned off so that no current flows except through the cell that is being read.


NAND flash cells are connected in series and acts like a NAND gate. Reading a particular cell requires all other cells in the arrangement to be turned on so that they allow current to flow freely except for the cell that is being read.
NAND flash bit cells are connected in series and acts like a NAND gate. Reading a particular bit cell requires all other bit cells in the arrangement to be turned on so that they allow current to flow freely except for the cell that is being read.  


NAND flash memory is cheaper because cells can be chained in series rather than NOR where cells are in parallel. There is also less wiring required for NAND cells which increases data density. Higher densities can be achieved by stacking these NAND memory arrays on top of each other (3D-NAND)
NAND flash memory is cheaper because cells can be chained in series rather than NOR where cells are in parallel. There is also less wiring required for NAND cells which increases data density. Higher densities can be achieved by stacking these NAND memory arrays on top of each other (3D-NAND)

Revision as of 06:59, 15 January 2018

A SSD (short for solid-state drive) uses integrated circuits to store data persistently. Unlike traditional spinning hard disks, a solid-state disk has no moving parts.

Components

Controller

The SSD controller provides an interface to the NAND flash memory and has a significant impact on the SSD performance. Other taks that are dealt with by the controller are:

  • Bad block mapping
  • Read/write cache
  • Encryption
  • Error detection / correction
  • Garbage collection
  • Wear leveling

Memory

SSDs use flash memory to retain data. Flash memory stores information in an array of memory cells constructed from floating-gate transistors. These memory cells can be constructed to store a single bit (Single-Level Cell), or multiple bits (Multiple-level cell, triple-level cell, etc) by using different charge states to represent different values.

A floating-gate transistor is similar to a standard MOSFET, but with the addition of a floating gate. The floating gate is electrically isolated but will affect how current flows through the gate depending on whether it is charged or not by partially canceling out the electric field from the control gate. By applying an intermediate voltage to the control gate and sensing the current through the gate, it is possible to determine the value (or values) stored in the cell.

Cells are erased using Fowler-Nordheim Tunneling. This is done by applying a high enough voltage between the source/drain/substrate and the control gate. Electrons in the floating gate will 'tunnel' through the oxide layer thereby erasing its value back to 1 (no electrons represents 1).

Two common flash memories are: NOR and NAND.

NOR flash cells are connected in parallel and acts like a NOR gate. Reading a particular cell requires all other cells in the arrangement to be turned off so that no current flows except through the cell that is being read.

NAND flash bit cells are connected in series and acts like a NAND gate. Reading a particular bit cell requires all other bit cells in the arrangement to be turned on so that they allow current to flow freely except for the cell that is being read.

NAND flash memory is cheaper because cells can be chained in series rather than NOR where cells are in parallel. There is also less wiring required for NAND cells which increases data density. Higher densities can be achieved by stacking these NAND memory arrays on top of each other (3D-NAND)

In either types of flash memory, each cell can be used either as a single cell, or a multi-level cell:

  1. SLC - 1 bit per cell
  2. MLC - 2 bits per cell
  3. TLC - 3 bits per cell
  4. QLC - 4 bits per cell

Where SLC uses one charge state to represent a bit, MLC uses multiple charge states to represent multiple bits. By using multiple charge states, there is less tolerance between charge states which leads to higher chances for errors, at the expense of allowing for higher data density. It is important for the SSD controller to handle possible errors due to MLC flash memory with error correcting codes.


Host Interfaces

  • Serial attached SCSI (SAS, 12.0 Gbit/s) – generally found on servers[73]
  • Serial ATA (SATA, 6.0 Gbit/s)[74]
  • PCI Express (PCIe, 31.5 Gbit/s)[75]
  • Fibre Channel (128 Gbit/s) – almost exclusively found on servers
  • USB (10 Gbit/s)[76]
  • Parallel ATA (UMDA, 1064 Mbit/s) – mostly replaced by SATA[77][78]
  • (Parallel) SCSI (> 40 Mbit/s) – generally found on servers, mostly replaced by SAS; last SCSI-based SSD was introduced in 2004[79]


Reliability =

SSDs store data in electrical charges. This will slowly leak over time without power. Old drives may start losing data after 1-2 years in storage, depending on temperature.