Sideway from Sideway
Draft for Information Only


Solid-State Drive
 Form Factors
  Standard HDD form factors
  Standard card form factors
  Disk-on-a-module form factors
  Box form factors
  Bare-board form factors
  Ball grid array form factors
 Storage Interface
  Flash memory
  3D XPoint
 Host interface
  Common Host Interfaces
 Communications interface
  Differences between AHCI and NVMe
 Sources and References

Solid-State Drive

A solid-state drive, SSD, solid-state device, solid-state disk, is a solid-state storage device that uses integrated circuit assemblies to store data persistently, typically using flash memory, and functioning as secondary storage in the hierarchy of computer storage.

Form Factors

Standard HDD form factors

Standard card form factors

Disk-on-a-module form factors

Box form factors

Bare-board form factors

Ball grid array form factors

Storage Interface

Flash memory


3D XPoint

Host interface

The host interface is physically a connector with the signalling managed by the SSD's controller. It is most often one of the interfaces found in HDDs. They include:
  • Serial attached SCSI (SAS-3, 12.0 Gbit/s)
  • Serial ATA and mSATA variant (SATA 3.0, 6.0 Gbit/s)
  • PCI Express (PCIe 3.0 ×4, 31.5 Gbit/s)
  • M.2 (6.0 Gbit/s for SATA 3.0 logical device interface, 31.5 Gbit/s for PCIe 3.0 ×4)
  • U.2 (PCIe 3.0 ×4)
  • Fibre Channel (128 Gbit/s)
  • USB (10 Gbit/s)
  • Parallel ATA (UDMA, 1064 Mbit/s) – mostly replaced by SATA
  • (Parallel) SCSI ( 40 Mbit/s- 2560 Mbit/s) – generally found on servers, mostly replaced by SAS; last SCSI-based SSD was introduced in 2004
SSDs support various logical device interfaces, such as Advanced Host Controller Interface (AHCI) and NVMe. Logical device interfaces define the command sets used by operating systems to communicate with SSDs and host bus adapters (HBAs).

Common Host Interfaces

Host InterfaceSATAmSATAPCIeM.2M.2U.2SATA Express Transfer InterfaceSATASATAPCIeSATAPCIe SATA 3.0 Transfer Rate6Gb/s6Gb/sN/A6Gb/sN/A PCIe 3x2 Transfer RateN/AN/A1.969GB/sN/A1.969GB/s PCIe 3x4 Transfer RateN/AN/A3.938GB/sN/A3.938GB/s PCIe 3x8 Transfer RateN/AN/A7.877GB/sN/A7.877GB/s PCIe 4x4 Transfer RateN/AN/A7.877GB/sN/A7.877GB/s

Communications interface

Since SATA hard drive is the most common data storage before the introduction of solid state drive, the communications interface, AHCI (Advanced Host Controller Interface) protocol, used by SATA hard drive is also adopted by SSD in order to hosted by a SATA host interface. As ACHI protocol was designed for high latency rotating media, a new NVMe (Non-Volatile Memory Express or NVM Express) protocol was designed as the communications interface for PCIe-based SSDs.

Differences between AHCI and NVMe

The advantages of NVMe protocol are
  • Parallelism: With multi-core drives multi-thread drives more operations in flight
  • Throughput: With More work done, per unit time
  • Latency: Governed by Hz, not RPMs, imply improved from milliseconds to microseconds to...
ProtocolNVMeACHI TechnologyDesigned for SSDs with flash technologyDesigned for Hard Drives with spinning disk technology Latency2.8µs6.0µs Uncacheable Register Reads
(Each consumes 2000 CPU cycles)
0 per command (Two per command)4 per command 8000 cycles, ~ 2.5 μs (Six per non-queue command; nine per queued command)
Multicore SupportYesLimited MSI - X and Interrupt Steering
(Ensures one core not IOPs bottleneck)
Yes, 2048 MSI-X interruptsA single interrup; no steering
Parallelism & Multiple Threads
(Ensures one core not IOPs bottleneck)
No locking, doorbell register per QueueRequires synchronization lock to issue command
Maximum Queue Depth
(Ensures one core not IOPs bottleneck)
Up to 65535 queues; 65536 commands per queueUp to One command queue; 32 commands per queue
Efficiency for 4KB Commands
(4KB critical in Client and Enterprise)
Command parameters in one 64B fetchCommand parameters require two serialized host DRAM fetches
Command cycleCommands utilize low CPU cyclesCommands utilize high CPU cycles Controller CycleCommunicates directly with the system CPUMust communicate with the SATA controller Input/Output Operations Per Secondover 1,000K IOPsup to 100K IOPS

Sources and References



ID: 220100010 Last Updated: 1/10/2021 Revision: 0

Latest Updated LinksValid XHTML 1.0 Transitional Valid CSS!Nu Html Checker Firefox53 Chromena IExplorerna

Home 5






Hobbies 8


Chinese 1097

English 339

Reference 79


Hardware 249


Application 213

Digitization 32

Latex 52

Manim 205

KB 1

Numeric 19


Web 289

Unicode 504


CSS 65

SVG 46


OS 429

DeskTop 7

Python 72



Formulas 8

Algebra 84

Number Theory 206

Trigonometry 31

Geometry 34

Coordinate Geometry 2

Calculus 67

Complex Analysis 21


Tables 8


Mechanics 1

Rigid Bodies

Statics 92

Dynamics 37

Fluid 5

Fluid Kinematics 5


Process Control 1

Acoustics 19

FiniteElement 2

Natural Sciences

Matter 1

Electric 27

Biology 1

Geography 1

Copyright © 2000-2024 Sideway . All rights reserved Disclaimers last modified on 06 September 2019