SSD’s have been transformative to the entire storage market. The use of solid state memory instead of spinning physical platters in older hard drives and floppies changed how thin, light, rugged, and power efficient modern laptops are.
Understanding these devices has not been easy. There has been an explosion of different drives types – but most guides I found do a terrible job explaining them. They often interchange or incorrectly refer to their properties in confusing, and very often incorrect ways.
Let’s start our journey by understanding the 3 basic properties of storage devices. Form factors, interfaces and storage technology.
Form factor: The form factor is the standardized physical dimensions for the drive. The form factor tells you the physical length, width, and height dimensions. They tell you nothing about whether the drive will actually plug in or work in your system. So, you cannot rely just on the form factor to ensure a new storage device will work in your PC; but you do need to make sure your PC has a physical slot that fits the form factor of your new storage device.
It is possible to find two drives that have the same form factor, but be based on very different physical or interface technologies. For example: it’s possible to find a 2.5″ hard drive that uses traditional physical platters or solid state memory. It’s also possible to find 2.5″ drives that use the SATA interface or IDE (or many others too).
Interface: The interface of a drive tells you how the drive transmits data with the computer. The interface is often (but not always) revealed by the type of power/data plugs that the drive has. Many PC’s have support for more than one type; laptops often only have one specific interface. So you might have to break out your motherboard book or laptop manual.
A common laptop mistake is to buy a drive with the right interface, but find out it won’t physically fit in the system (wrong form factor). It is also important to know that, just like USB ports, some interfaces have the same physical plugs, but support many different speeds of data transfer. It’s also possible for some M.2 slots to have keying that lets it work with SATA or NVMe drives, but the performance difference is sometimes orders of magnitude different. Just like putting a USB 3.x drive into a USB 1.x port (or vice versa), it might plug in and work, but it’s nowhere near as fast as the device or interface allows. So it’s important to see what interfaces your system supports and then buy the right form factor and interface.
Storage medium/technology: The third property is how the data is physically stored. In the 50’s and 60’s, the most common non-volatile storage medium was punch cards. They were simple card stock with holes punched in them. We then moved to tape drives that utilized large spools of magnetic tape. We then moved to hard drives and floppy disks that utilize circular platters coated with magnetic material. Drive heads move over the surface as the drive spun, and read the 1’s and 0’s. The next major advance was the use of solid state memory for storage. USB sticks used flash memory. More recently, we have seen the introduction of solid state drives that utilize much faster NAND flash memory.
Each technology has also had enhancements over time. NAND technology now uses different methods on how the data is stored in the memory cells (SLC, MCL, TLC, QLC). Hard Drives now have shingled (SMR) vs conventional (CMR) recording technology. Some of these technologies are incompatible with certain interfaces, others might be used on multiple interfaces.
Most of these storage technologies are completely transparent to the user but do have performance or failure rate impacts. QLC/TLC on NAND devices tends to slow once the device becomes even half full while SLC devices don’t slow until much more full. SMR hard drives are inherently slower than CMR drives but cheaper if all you’re using it for is infrequent storage purposes.
So now that we know there are these 3 major vectors for our storage devices, lets dig into some of them.
The ‘Standard’/Legacy Form Factors
Form factor has to do with the physical sizes/dimensions of the storage device. This idea came from older computer days when devices were physically larger/smaller. The front of a mid-90’s computer case often showed different drive sizes
These drives look very much like the old drives of days gone by. They came in a standardized 5.25″, 3.5″, 2.5″ and 1.8″ drive sizes. This size refers to their width to fit into physical drive bays located in your computer case. You can buy both SSD, floppy, or older platter sized drives in these form factors. It’s also often possible to buy display units and USB or flash drive readers in this form factor.
These form factors are legacy from older floppy, platter hard drive, and CDROM drive dimensions; but kept because it made mounting and replacing drives easier for PC manufacturers. Desktop systems often have several 5.25″ drive bays for CDROM/Blu-ray or other optical disk formats (though back in the day, there were even 5.25″ hard drives and 5.25″ floppy drives). 3.5″ and 2.5″ drive bays can be found in desktops and laptops. As laptops shrunk, hard drive sizes did too. 1.8″ drive sizes were the smallest things got before we moved to even smaller formats that didn’t need 4 point physical mountings.
As things miniaturized, the need for even tinier form factors became paramount. Here are some of those.
PCI Express Mini/Mini-PCIe/mSATA/MO-300 (full or half size) Form Factor
- Physical size: 50.8mm x 29.85mm
- Connector type: 52-pin card edge connector (split into 16-pin & 36-pin sections)
This form factor isn’t very common for storage and is something of a halfway step between platter drive form factors and M.2. You’re likely to encounter it in early laptops. This form factor comes in two varieties: full size and half size.
Great care must be taken with this form factor. Both mSATA and mini PCIe cards have the exact same form factor AND connector type – but your laptop may or may not support both interface types.
Half slimSATA/SlimSATA (MO-297) Form Factor
- Physical size: 39.8mm x 54mm
- Connector type: 22-pin standard 2.5” SATA SSD connector
This is a rarer format these days. This form factor comes in half and full sized versions. It can be identified by the fact it uses the standard 22 pin SATA connector.
M.2 Form Factor – Keys and slots
M.2 is the latest, most modern form factor for devices. That is right – M.2 refers only to the physical size/dimensions of the drive. MANY review sites incorrectly call M.2 drives SSD’s, NVME’s, etc. This is wrong because they are now confusing the interfaces with form factor. You can find not only storage in M.2 form factor, but also WiFi, bluetooth, GPS, and other devices. This form factor comes with three important form factor parameters: length, width, and keying. M.2 was introduce as the Next Generation Form Factor, but I have only seen it referred to as M.2.
The vast majority of M.2 devices typically come in the three sizes above, which may be deduced from the card names —2242, 2260, and 2280. The first two digits (22) represents the width in millimeters (mm), while the next two digits represent the length, also in mm. It is possible to have a wide variety of widths and lengths – but the above sizes are the most common for storage and user devices.
Next up is their “key” type. Believe it or not, there are 12 different kinds of M.2 keying, but the most common for storage are B, M, and B+M.
In this case, you can often determine the interface type by the physical key-ing. B+M (which can fit in socks for B-keyed and M-keyed modules) are usually SATA interfaced. M.2 devices that use the NVMe interface are often only M keyed.
So, now that we’ve discussed if a drive will physically fit in your system, lets talk about how the data flows between your computer and the device. To avoid confusion, almost every interface has its own, unique type of physical data connector.
Wow – these are some old interface types. MFM/RLL are some of the first hard drive interfaces used in the late 80’s and early 90’s. By the 90’s, IDE (sometimes called parallel ATA) had taken over. No modern systems have used these interfaces in almost 20 years.
SATA is probably the most common interface on the market today. You can find it on everything from older platter drives, SSD drives of many form factors, Blu-ray drives, CDROM drives and burners. It was a great replacement for the older IDE interfaces of the 90’s.
SATA has gone through numerous upgrades over the years as speeds have increased. Most modern drives today use the latest iteration – SATA III – which delivers 600MB/s peak performance. SATA maintains very good backwards compatibility with older versions of SATA. Due to performance of the underlying storage media, most SATA III SSD drives can only actually get to 500-550MB/s. SATA III drives that use physical spinning platters can usually only get to 100MB/s due to their physical speed limitations (limitations of the read heads/platters). So just moving from a platter SATA III drive to a SSD SATA III drive can often yield you around a 5x speedup.
The important point about this interface is to know that if your device uses the SATA III interface, you won’t be getting faster than 600MB/s. This can be confusing because some M.2 storage media has both NVMe and SATA III interface support. But if your motherboard only supports SATA III M.2 devices, you’re only going to get the slower SATA III speeds. So be sure you check your motherboard specs and ensure you are using the right ports on your motherboard or you could be wasting a lot of money on performance you won’t be getting.
Additionally, you might think you are upgrading when you get rid of your 2.5″ form factor SSD drive that has the classic SATA III connectors for your fancy new M.2 form factor drive. But if that new M.2 drive uses the SATA III interface internally, you will be getting pretty much the same performance. So if you want NVMe speeds, make sure both the storage device AND your motherboard support NVMe. Otherwise, you’re probably getting SATA III speeds.
NVMe stands for the Non-Volatile Memory express interface. The Non-Volatile Memory Host Controller Interface Specification (NVMHCIS) is an open logical device specification for accessing non-volatile storage media attached via the PCI Express (PCIe) bus.
Data exchange interfaces that were designed during the era of physical platter drives (IDE/SATA/etc) have very different latency profiles and very linear/serial input and output characteristics. These interfaces weren’t designed to exploit the unique massively parallel performance characteristics of non-volatile memory storage. The NVMe interface was designed to capitalize on the low latency and massive internal parallelism of solid-state storage devices by having a deep queue system.
By its design, NVMe allows host hardware and software to fully exploit the levels of read and write parallelism possible in modern SSDs. As a result, NVMe reduces I/O overhead and implements performance improvements like multiple long command queues, and reduced latency.
How fast is NVMe? Well, some drives advertise throughput rates up to 3500MB/s (Samsung 970 Evo Pro) – which is almost 6 times the speed of SATA 3 SSD’s. This makes them around 35 times faster than platter-based hard drives.
PCIe drives are the kings of performance right now because they’re using the main interface bus of the system as opposed to through a storage protocol like IDE/SATA/NVMe. These devices are usually expensive because they carry additional development costs and use much faster memory. They must also write their own software/hardware layers to convert PCIe protocol read/writes to solid state memory access.
While PCIe devices have theoretical maximums that are far in excess of other drive interfaces, most typically interface via PCIe 1.x or PCIe 2.x specifications – meaning they have maximum 250-500MB/s rates. But devices like Optane memory can get up into the 1000’s of MB/s range. Early Intel Optane memory drives used PCIe because that interface was the only one that could get the to the 2800MB/s range before NVMe.
Putting it all together
So, now we can put these things all together to help us understand how the different combinations work; and why people often confuse performance when they are not clear about both interface and form factor
|3.5″/2.5″/1.8″ platter-based hard drive||IDE||5MB/s to 133MB/s (ATA100/133)|
|3.5″/2.5″/1.8″ platter-based hard drive||SATA3||100MB/s typical|
|3.5″/2.5″/1.8″ SSD hard drive||SATA1/2/3||150/300/600 MB/s max|
|M.2 SSD||SATA1/2/3||150/300/600 MB/s max|
|M.2 SSD||NVMe||Up to 3500+ MB/s|
|PCIe||PCIe 1.x, 2.x, 3.x, etc||250MB/s, 500MB/s, 1GB/s, etc|
Now it’s more clear why one needs to pay attention to the form factor AND interface. The form factor can give us hints as to what interface is used, but is not a sure-fired way to know the performance characteristics.
You could have a 3.5″ drive that is IDE, or a platter-based SATA III, or even a SATA III based SSD. While each one is almost identical in physical size – each has almost an order of magnitude performance difference between the previous. A PCIe device might use PCIe 1.x and get 100MB/s or be as fast as an NVMe based M.2 drive if it’s PCIe 3.x. A mSATA/mini PCIe device might give you 150/300/600MB/s if it’s SATA1/2/3, or 250MB/s, 500MB/s, or 1GB/s if it’s using the PCIe interface.
One of the more common current difficult ones is reading advertisements that tout M.2 drives. Many do not clearly advertise the internal interface. If they do not say it is NVMe, then you should assume it is SATA III. As we have seen, a M.2 drive that has an internal NVMe interface might make it up to 6x faster than the same one with a SATA III interface internally.
Now that we understand form factors and interfaces, one can move on to understanding the memory storage technologies behind SSD drives. There are many different kinds of memory that affect performance just as greatly as interface. Most SSD’s are designed with MLC, TLC, or QLC memory configurations. Even newer is XPoint memory used in Intel’s Optane drives.
Each of these memory technologies has performance characteristics on top of the limitations of their interfaces. Some of technologies lead their drives to become slow once the drive is mostly full, some start slowing when the drive is even half full. Some have longer MTBF reliability while others statistically fail much earlier. In some cases, different controller hardware can do much better or worse jobs with these inherent limitations.
But that might be a talk for another article…
- SATA interface: https://en.wikipedia.org/wiki/Serial_ATA
- NVMe interface: https://en.wikipedia.org/wiki/NVM_Express
- IDE/Parallel ATA: https://en.wikipedia.org/wiki/Parallel_ATA
- SSD form factors and NAND technologies: https://www.atpinc.com/blog/ssd-form-factors-interface-protocol-pcie-sata-scsi-sas
- mini PCI vs mini PCIe: https://www.bvm.co.uk/blogs/mini-pcie-verses-mini-pci/
- M.2 keys and sockets: https://www.atpinc.com/blog/what-is-m.2-M-B-BM-key-socket-3
- M.2/PCIe: https://www.pugetsystems.com/labs/articles/Overview-of-M-2-SSDs-586/
- SlimSATA: https://www.vikingtechnology.com/products/storage-overview/slimsata/
- SlimSATA specs: file:///C:/Users/matt/Downloads/SlimSATA_ProductBrief.pdf
- Form factor dimensions and info: https://www.cactus-tech.com/resources/blog/details/solid-state-sata-modules-and-form-factors/