Autor: Marc Sauter

SSD - An overview (2 / 2)

AHCI, M.2, NVMe, PCIe, Sata, U.2 - pros and cons of current SSD types.

Form factors and connectors

The internal form factor that is still prevalent today is 2.5-inch housings with a height of 7 mm. In the early days there were also models with 9.5 mm and sometimes 15 mm, for example the G.Skill Falcon from 2009. Such SSDs were too thick for some notebooks. Today drives with 9.5 mm or higher are almost only used in the server segment, since several boards can be stacked inside.

 A 2.5-inch SSD can be equipped with a Sata or a U.2 connector, more on that later. In any case, they are connected to the mainboard by cable, although a notebook may also have an installation slot with a direct plug connection (and the wiring then runs over the circuit board). 2.5-inch models have the advantage of having a relatively large amount of space physically, which is why these SSDs are currently available with up to 8 TB capacity with a height of 7 mm. Offshoots intended for consumers such as Samsung's 860 Evo, however, only have 4 TB, more memory is reserved for server variants. Technically, 16 TB or 32 TB would be possible at 7 nm with today's NAND flash, such SSDs are not offered by the manufacturers.

SATA connection

The Sata connection consists of two parts, the data and the power connector, each of which requires its own cable - meanwhile there are also combined variants. The same applies to the U.2 connector, which at first glance looks similar, was formerly referred to as SFF-8639. The U.2 masters Sata, SAS and PCIe, in practice PCIe x4 is mostly used. The cable is also split into two for data and power, the former either ending in an HD mini-SAS connector (SFF-8643) or in an adapter for an M.2 slot. Sata Express with PCIe x2 has never really prevailed, whereby U.2 uses the same connector at least on the SSD side, but uses a different port on the mainboard. With mSata there used to be a popular standard for notebooks, but this is no longer used.

M.2 connection

Most ultrabooks and PCs now have motherboards instead, which have at least one slot for an SSD in M.2 design, once simply referred to as NGFF (Next Gen Form Factor). Typical are models in M.2-2280 format, i.e. with 22 mm width and 80 mm length. SSDs with 22110, 2242, and 2230 dimensions are also available commercially, but less frequently. 2242/2230 offshoots in particular are often inexpensive variants without a DRAM cache, for example Western Digital SN520. M.2 boards are usually equipped on one side so that Ultrabooks can be flatter. With M.2 SSDs, the indentations (keys) on the pin strip determine whether it is a Sata or PCIe model. Generally, a B-Key can support Sata or PCIe x2 and an M-Key can handle PCIe x4.

The third form factor is called AIC (Add-in Card). These are plug-in cards for PCIe slots. These are usually designed as HHHL (Half Height Half Length) and designed for PCIe x4, in the server segment there are also variants with PCIe x8. Some plug-in cards are nothing more than adapter boards for M.2 SSDs and not boards with directly soldered controllers, cache and memory.

In the professional segment there is also the Ruler construction alias Enterprise & Datacenter Storage Form Factor (EDSFF). This includes the E1.L (Long) with almost 320 x 38 x 18 mm and up to 40 watts of power consumption. Another form factor is called M.3 alias NF1. These boards are 110 mm long and 30.5 mm wide and therefore accommodate a double row of memory packages. Samsung's PM983 therefore has 15.36 TB.

• 2.5-inch SSDs mostly use Sata or PCIe x4, typical are 7 mm height and up to 4 TB capacity in the consumer segment or up to 30 TB in servers, Sata or U.2 are used as connections.
• M.2 SSDs are mainly available with a length of 80 mm, 42 mm or 30 mm. They are mostly equipped on one side and can run with Sata, PCIe x2 or PCIe x4. The storage space is up to 2 TB.
• Plug-in cards (AICs) are connected via PCIe x4 or PCIe x8, some simply adapters for M.2 SSDs.

AHCI vs NVMe - the protocols

To be able to address an SSD, the operating system must support the appropriate interface: Sata uses AHCI (Advanced Host Controller Interface), which was originally developed for hard drives. Unlike the previous PATA alias IDE, there are improvements like Native Command Queuing (NCQ) to speed up HDDs. A native support for AHCI has been available since Windows Vista and Linux kernel 2.6.19, suitable drivers are required for Windows XP - otherwise there is a blue screen.

 While Sata is set to AHCI as the protocol, PCIe now only uses NVMe (Non Volatile Memory Express) - only a few early models such as Samsung's XP941 ran with AHCI. Current SSDs, whether in M.2, U.2 or AIC format, are therefore controlled with NVMe. The operating system has provided (boot) support for Chrome OS since the beginning of 2014, since Linux kernel 3.3 from 2012, in MacOS since Yosemite v10.10.3 from 2015 and since Windows 8.1, as well as retrospectively via hotfix for Windows 7. So this works, it must be integrated into an installation medium. Intel and Samsung offer their own drivers for Windows 7 and newer, but the (performance) differences to Microsoft's generic ones are minor. However, some of them are required for maintenance tasks such as firmware updates or secure erase.

Unlike AHCI, NVMe was developed from the start with a focus on PCIe-based SSDs and therefore implements many functions that are intended for flash or other non-volatile memory such as Intel's 3DXP: the number of command queues increases from one to 64,000 and that Depth (queue depth) from 32 to 64,000 commands, which means that SSDs are used much better and are not limited by a single processor core. In addition, NMVe requires drastically fewer CPU cycles in the driver stack, which massively reduces latency.

Above all, applications and systems in the server segment benefit from NVMe SSDs, their multiple and deep command queues, the low latency and the high maximum speed due to PCIe. The advantage is immense, especially when there are many random accesses as quickly as possible, for example with virtual machines or databases. Today, all enterprise manufacturers rely on NVMe SSDs, although for some extremely latency-critical scenarios, instead of flash-based drives, the switch to 3D Xpoint-based models has already been made.

• AHCI was once designed for hard drives, while NVMe was developed with a view to PCIe SSDs.
• NVMe has significantly lower latencies, requires fewer CPU cycles, and has more and deeper command queues.
• Drivers are integrated in all common operating systems, but some manufacturers offer their own.

Power saving modes explained

Despite mostly low queue depth, consumer apps tend to run faster because the higher top speed of a PCIe / NVMe SSD speeds up some workloads, such as working in the timeline of video editing software. However, high input / output operations per second and the low latency have so far shown fewer advantages. Notebooks benefit from NVMe SSDs, especially devices like Ultrabooks that are trimmed for battery life.

Due to the better performance compared to Sata SSDs, the performance per watt increases, i.e. the efficiency. In addition, a more economical state is reached again faster, the manufacturers speak of the Race to Idle. Similar to Sata and its DEVSLP (Device Sleep), there are also various sleep modes for PCIe / NVMe SSDs: The Autonomous Power State Transition (APST) from NVMe ensures less energy consumption in (in) active operation and Active State Power Management ( ASPM) of the PCIe links can use modes like the L1.2.

Because M.2-based PCIe / NVMe SSDs generate a lot of heat in a small area (up to about 8 watts), host-controlled thermal management and non-operational power state permissive mode were introduced with the NVMe 1.3 revision. The host system thus has more control over the power modes of the SSD, which can lead to better battery life and a higher average speed.

In practice, however, power consumption and temperature depend heavily on the respective SSD, since the controller and flash memory as well as the interface between the two decide how quickly certain power modes can be reached and at what limit the drive throttles for self-protection. The OEM notebook variants of some SSDs sometimes have different firmware optimizations than their desktop counterparts.

• NVMe and PCIe support various power modes.
• An NVMe / PCIe SSD is usually more energy efficient than a Sata model.
• Temperature limits and throttle behavior depend on the manufacturer.

Related Articles: