SSD Drives Part I: Connectors, Interfaces & ProtocolsHARDWARE
When you go to buy an SSD, there are more factors to consider than you might think. Today I’m going to provide you with a general overview of SSDs and some issues you should be aware of. Some of them probably seem trivial at first glance, but if you dig deeper…
The physical connection of the drive.
The standard Serial ATA (SATA) connector has been the standard for years.
It has 3 generations – SATA I, SATA II and SATA III, each compatible with the others (so you can plug a SATA III disk into a SATA I port in the motherboard). They differ only in terms of their bandwidth – 1,5 Gb/s, 3 Gb/s and 6 Gb/s, respectively. Please note that Gb/s is Gigabit per second, not Gigabyte per second.
mSATA is a standard that doesn’t use cables: rather, disks are put directly into the slot. At first look mSATA is quite similar to M.2, but it is an entirely different, physically incompatible slot. M.2 is narrower and has the mounting screw in the middle, whereas it’s in the corners of the mSATA drive.
If you are thinking about upgrading your laptop or PC and have detected the mSATA slot on the motherboard, you better check the manual twice to determine which slot it is. The mini PCI Express (mPCIE) slot looks the same as the mSATA and the drive will fit just fine. The only problem is, it won’t work.
The mSATA standard is obsolete, though you will come across it in some older computers.
The M.2 (NGFF) connector can be a source of confusion, because it accommodates so many different types of drives.
As with mSATA, you put the drive directly into this slot. The drive is held in place by a single screw and the drive itself comes in a variety of lengths (form factor).
The first two digits indicate the width (in mm) while the last two or three indicate length. The most common consumer form factor is 2280, which means it is 22 mm wide and 80 mm long. As a size, 22110 is somewhat rare, so not all motherboards support it. It is good to know that some notebooks can support a maximum length of 42 mm or 60 mm. Check it before you move to upgrade, so you don’t end up with a drive that’s too long to fit your machine.
Sometimes to save space on the motherboard, the M.2 slot is oriented perpendicular to the PCB, though disks are usually mounted parallel.
SATA Express is for the most part dead. Once intended to be a new generation connector for fast drives, SSD vendors abandoned it, leaving only limited accessories, like USB-C panels, to utilize it.
Two standard SATA Drives can be plugged into the SATA Express port – the plugs are the same and it will work.
The U.2 (SFF-8639) standard is pretty unique. The connector for disks is totally different than the connector for motherboards, and only a handful of disks for this interface exist. Its purpose is the same as SATA Express – to provide sufficient bandwidth for fast SSDs. Its advantage over SATA Express is that it is more compact in size and offers higher transfer speeds. My hunch is that this port will never become popular in consumer products, though only time will tell.
PCI Express drives are usually performance models. Most are M.2 drives mounted in PCI Express adapters, though some are dedicated PCIE cards.
Depending on the model, SSDs can use different length PCI Express connectors. Bear in mind that if you connect a drive that utilizes an x8 connector to a x4 electrical PCIE slot, it will work but fall short of its full potential.
A limited number of PCI Express lines can be a problem on platforms like Skylake, Kaby Lake-X, Ryzen (3, 5 & 7) or lower-tier Skylake-X CPUs. However, platforms with high PCI Express line counts like high-tier Skylake-X CPUs or Ryzen Threadripper aren’t limited.
If you wish to create a RAID made of PCIE drives, be sure that they are all hooked up to the same PCIE controller on the motherboard. Here’s an example array that could well leave you disappointed in the performance: if the first drive of RAID 0 array is in PCIE slot connected directly to the CPU, and the second drive is in a PCIE slot connected to the chipset. I have even tried to create a RAID 0 of 4 drives and ended up running an integrated graphics card, because I had no free slot for the external GPU.
If you wish to make a RAID 0 array of M.2 / PCIE SSDs bootable, here is some advice on how to do it:
It is also possible to create a RAID 0 with one drive in the M.2 slot on the motherboard and a second M.2 drive in the PCI Express adapter. But you must pay attention to where the M.2 slot and PCI Express slot are hooked up to achieve your desired performance.
Sometimes you’ll come across PCI Express drives made of several disks working in RAID 0, but the RAID is transparent for PCs. G. Skill Phoenix Blade is a prime example of such a construction, which has four disks sitting inside, but they are recognized as one.
Below is a list of connectors and the specific interfaces they use.
- mSATA (max throughput 600 MB/s)
- SATA (max throughput for SATA 3 is 600 MB/s)
- some M.2 models (max throughput of 600 MB/s)
Single SATA slots in the SATA Express connector also use SATA bus.
PCIE (PCI Express):
- SATA Express (as a whole connector it utilizes PCI Express x2 – max throughput 2 GB/s)
- U.2 (utilizes PCI Express x4 – max throughput 4 GB/s),
- some M.2 models (up to PCI Express x4 – max throughput 4 GB/s)
- PCIE (it can go up to PCI Express x16, which means max throughput of ~16 GB/s)
As you can see, there are M.2 SATA drives and M.2 PCI Express drives. It is essential to distinguish them because it determines in which scenarios the drive will and will not work, and is also an indicator of performance. The M.2 SATA drive won’t be faster than 600 MB/s.
It is good to know that some motherboards run an M.2 slot with only PCI Express x2 speed, which could bottleneck the fastest drives. Also, some older motherboards only support M.2 SATA drives and PCI Express drives won’t work on them at all.
Bottom M.2 slot supports only PCI Express drives – both powering and signaling goes through the PCI Express slot.
Top M.2 slot is for SATA disks only. For them to operate you must connect SATA cable and plug it into the motherboard. In this scenario powering goes through the PCI Express slot, but signaling runs through the SATA cable.
To make things even more confusing, two protocols are used today.
AHCI (Advanced Host Controller Interface) – the older protocol, optimized for standard magnetic drives. Usually you could switch the AHCI disk to use even older IDE (Integrated Drive Electronics) protocol, but that is better avoided. For example, important TRIM function isn’t supported by IDE.
NVMe (Non-Volatile Memory Express) is the new protocol designed for fast SSD drives. If the drive utilizes this standard, it is likely a performance model. NVMe protocol can be used only over PCI Express bus-based drives. If the M.2 drive uses a SATA interface, it can’t be an NVMe model.
Booting the operating system from NVMe drives is hassle-free only on Windows 8.1 and 10. If you’d using Windows 7, you’ll have some fiddling to do. The whole process is described here.
Keep in mind that out-of-the-box booting form an NVMe drive is possible only with X99, Z97 and newer chipsets. If you happen to have a Z87 chipset-based motherboard or older, you should extract NVMe modules from BIOSes of a Z97 motherboard and inject them into the BIOS of your board. That process is described here.
To sum up, if you want to boot from the NVMe drive without modding anything, you’ll need Windows 8.1 or 10 and a Z97 / X99 or newer chipset. NVMe also works fine on the Ryzen platform and on some newer 990FX-based motherboards.
NVMe drives are enthusiast products, so if your computer is on the older side, I’d recommend sticking to AHCI models.
Here’s a side-by-side comparison of AHCI and NVMe protocols.
|Latency||6 µs||2,7 µs|
|Max que depth||1 que with 32 commands per que||65 536 ques with 65 536 commands per que|
I hope this article has shed some light on the complex world of SSDs!
Next week, in the 2nd and final installment, we will talk about adapters, thermal throttling, memory types and backlight.