NVMe: The Next Leap in Memory Technology
Posted on January 15, 2022
The arrival of Solid State Drives (SSDs) turned hard disks from noisy, bulky devices to sleek and silent attachments for the modern computer. Boasting a much faster read-write speed than an old-school hard drive, SSDs became the de-facto memory device for running performance-sensitive applications.
But even though memory drives have evolved, the technology used to interface with them remains the same. Serial ATA, better known as SATA, has been the mainstay data transfer standard for years.
Widespread and reliable, SATA is used to access all kinds of storage, both traditional HDDs as well as SSDs. And while the standard does get the job done, it isn’t exactly optimized for the blazing fast speeds flash memory is capable of.
That’s where NVMe comes in. But what is NVMe? Why is it needed? Is SATA on its way out? Let’s find out.
The Limitations of SATA
When SATA first superseded Parallel ATA (PATA), the primary cause was the physical limitation of electromagnetic memory. Traditional hard disk drives didn’t do well with parallel data transfer or random access, unlike volatile memory devices like RAM.
This is why serialized transfer of data became the preferred method. Processing data in a steady stream reduced the failure rate and gave a much better long-term performance. But Solid State Drives do not work on the same principles.
While non-volatile, their memory units have more similarity with RAM chips than hard disk drives. This means they can easily support parallel data access, apart from being much easier to read and write to. The only thing holding them back is the interface.
SATA’s maximum access speeds fall far short of the limits of an SSD. At 6 GB/s, it barely scratches the edge of what a mass-produced SSD is capable of, creating a bottleneck of sorts. And as SSDs get ever cheaper and faster, this gap will only widen. A new technological standard for accessing these powerful non-volatile memory devices is necessary.
What NVMe Is All About
To address the growing need for parallel access and faster transfer speeds, the Non-Volatile Memory Express or NVMe standard was developed. Basically, it takes full advantage of the parallel architecture of modern SSDs, giving much higher data transfer rates as well as random access.
Older standards are designed with parameters like disk rotation and seek time in mind, which are obsolete with newer storage media. Non-volatile memory devices have distinct memory units which can be accessed independently of one another, providing unprecedented parallelism in secondary computer memory.
NVMe is thus built on a simplified structure that reduces the I/O overhead and thus latency of read-write cycles. Individual SSDs operating directly on the PCI Express had been made earlier, but they were custom creations for specific boards. The NVMe is built to be a universally adhered standard, allowing all operating systems and motherboards to take full advantage of the capabilities of an SSD.
How NVMe Is Implemented
The NVMe standard uses the PCI-E express to achieve the high data transfer speeds necessary for SSDs. It comes in various form factors, with the most common being the flexible M.2 standard.
Earlier known as the Next Generation Form Factor (NGFF), M.2 modules can be ‘keyed’ differently to support all kinds of peripherals, from network cards to storage devices. M.2 slots implementing NVMe can easily offer data transfer speeds upward of 30 GB/s with the appropriate SSD.
With the increasing adoption of M.2, motherboards are moving away from a bunch of specific expansion slots to the more flexible PCIe approach that can support all sorts of extension cards without requiring multiple standards and interfaces. This of course also includes phasing out legacy standards like mSATA in favor of the universal interface.
Is NVMe The Future?
Solid State Drives get cheaper and more powerful by the day. Where once they were the preserve of expensive builds that did not require much memory, they can now be used as the main storage medium for most commercial and industrial applications.
The gains made in speed and smoother functioning are nothing to be scoffed at, especially in applications that operate in real-time. As such, the transition from the slower mSATA to NVMe is a bygone conclusion.
And that’s before factoring in the flexibility of the M.2 form factor. M.2 slots with NVMe controllers can double up as extension slots for virtually any peripheral, giving unprecedented flexibility to embedded computer configurations.
So yes. Any industrial computer setup built today should utilize NVMe compatible memory to remain future-proof, as well as guarantee a significant boost to performance.