AHCI と NVMe

SSD では、AHCI (Advanced Host Controller Interface) と NVMe (Non-Volatile Memory Express) はどちらも SSD の有効なインターフェイス仕様です。

SATA と PCIe インターフェイス間の基本的な構造層 (図 1 を参照) は、SSD と HOST 間の通信における AHCI および NVMe 標準の役割を強調しています。

 

AHCI

AHCI は、SATA が 3 GB/s インターフェイスをリリースしたときに広く採用されました。従来のメモリ構造とは異なり、AHCI を使用すると、SSD が NCQ (ネイティブ コマンド キューイング) コマンド セットをサポートできるようになります。この特殊性により、AHCI を従来のハードディスク ドライブ (HDD) または市販の民生用 SSD に適用できるようになります。

現在の SSD 市場では、ほとんどの SSD が SATA コネクタなどのバスを使用してコンピュータ システムと通信します。 AHCI は、ソフトウェアと SATA ストレージ デバイス間の通信を可能にするために使用されるハードウェア メカニズムを指定する、Intel によって策定された技術標準です。 AHCI は、ハードウェア開発者がシステム メモリと SATA ストレージ デバイス間でデータを転送するために従うべきメモリ構造の仕様を明確に定義しています。

 

NVMe

NVM Express (NVMe) または不揮発性メモリ ホスト コントローラー インターフェイス仕様 (NVMHCIS) は、PCI Express バス経由で接続された不揮発性ストレージ メディアにアクセスするためのオープン論理インターフェイス仕様です。

当初 HDD 用に設計された AHCI とは異なり、NVMe は SSD がストレージ市場でより広く受け入れられるようになったときに誕生しました。 Intel は、PCIe バス インターフェイスと組み合わせた NVMe 仕様の開発に熱心でした。 NVMe によって接続された PCIe インターフェイスを使用する利点は、SSD がデータ アクセスとコマンド キューの遅延を短縮できることです。また、PCIe NVMe SSD は優れたマルチタスク機能を備えています。

 

AHCIとNVMeの比較

表 1 に、AHCI と NVMe の大きな違いを示します。キューの深さの最大の差は、NVMe を搭載した SSD の IOPS (IOPS = キューの深さ / IO レイテンシ) が高いことを示しています。

 

 

AHCI 標準は、遅延の長い従来のハードディスク ドライブを使用するアプリケーションで最初に採用されました。 SSD のパフォーマンスが向上するにつれて、AHCI 規格がボトルネックになります。したがって、NVMe は SSD パフォーマンスのボトルネックを解消するために作られています。

フィソンの結論

SSD と HOST 間の通信プロトコルは、より高速な NAND フラッシュの開発と同じくらい急速に進化しています。アドバンスト ホスト コントローラー インターフェイス (AHCI) は、当初 SATA デバイス用に作られましたが、高性能 SSD 設計の高まる要件を満たさなくなりました。新しいデータ転送速度を達成するために、SSD のインターフェイスは PCIe バスに接続された NVM Express (NVMe) に徐々に移行します。

 

 

イノベーションを加速する財団™

ja日本語