AHCI vs NVMe | Difference between AHCI and NVMe

This page compares AHCI vs NVMe and mentions difference between AHCI and NVMe. It mentions benefits of AHCI and NVMe.

What is AHCI ?

This interface enables software to comunicate with SATA devices. These PCI class devices move data between system memory and SATA storage device. The AHCI specification was developed by Intel which defines AHCI functional behavior and AHCI software interface.

AHCI has been supported on various operating systems which include Linux, Vista, OpenBSD, Solaris 10. Windows XP and older OSs do not support AHCI. The latest AHCI specification is version 1.3.1. AHCI uses PCI device. It contains PCI base address register (BAR) to implement native SATA features.

Following are the features or benefits of AHCI.
➨Supports 32 ports
➨64 bit addressing
➨Elimination of master/slave handling
➨Large LBA support
➨Hot Plug
➨Power Management
➨HW assisted native command queuing
➨Staggered spin up
➨Cold device presence detect
➨Serial ATA superset registers
➨Activity LED generation
➨Port Multiplier

What is NVMe ?

NVMe interface is successor to AHCI. The latest NVM express specification is revision a.3 and 1.4. This protocol interface allows host software to communicate with non-volatile memory. It is optimized for enterprise & client SSDs. It is a communication interface developed for NAND flash and SSDs using PCIe. There are other NVMe interconnects such as Ethernet, InfiniBandTM and Fibre Channel.

Following are the features or benefits of NVMe.
➨Supports parallel operation by supporting up to 65535 I/O queues with upto 64K outstanding commands per I/O queue
➨It does not require uncacheable/MMIO register reads in command submission or completion path
➨Efficient small I/O operation
➨Efficient and streamlined command set
➨Support for MSI/MSI-X and interrupt aggregation
➨Support for multiple namespaces
➨Efficient support for I/O virtualization architectures
➨Robust error reporting and management capabilities
➨Support for multi-path I/O and namespace sharing

Difference between AHCI and NVMe

Following table mentions difference between AHCI and NVMe with respect to various parameters.

Parameters AHCI NVMe
Full Form Advanced Host Controller Interface Non Volatile Memory Express
Technology Spinning disk technology Flash technology
Number of Command queues One 64K
Commands per queue 32 64K
CPU cycles High Low
Latency 6 µs 2.8 µs
Communicate with SATA controller System CPU (directly)
Number of IOPs (Input Output Operations Per Second) 100K 1 million

From the table we can conclude that, NVMe is much faster than AHCI, reduces latency and provides better IOPS. NVMe increases number of I/O queues. Refer advantages and disadvantages of NVMe SSD.

Advantages and Disadvantages of other wireless technologies

IrDA    HomeRF    Bluetooth    Radar    RF    Wireless    Internet    Mobile Phone    IoT    Solar Energy    Fiber Optic    Satellite    GPS    RFID    AM and FM    LTE   

what is difference between

difference between FDM and OFDM
Difference between SC-FDMA and OFDM
Difference between SISO and MIMO
Difference between TDD and FDD
Difference between 802.11 standards viz.11-a,11-b,11-g and 11-n
Bluetooth vs zigbee
Fixed wimax vs mobile

RF and Wireless Terminologies