Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NVME 是个啥 #204

Open
bingoohuang opened this issue Jul 5, 2021 · 0 comments
Open

NVME 是个啥 #204

bingoohuang opened this issue Jul 5, 2021 · 0 comments

Comments

@bingoohuang
Copy link
Owner

NVME 是个啥

海草分层存储,看到一个 NVME,赶紧补充一下相关知识

  1. AHCI:是一种通讯协议;
  2. NVME:NVM Express(NVMe)是一种通讯协议;
  3. SATA:是一种接口标准,协议层使用AHCI进行通讯,数据通过SATA总线传输;
  4. PCIE:PCI-Express(PCIe) 是一种接口标准,协议上使用NVME进行通讯,数据通过PCIE主线传输;
  5. USB:是一种接口标准,协议上使用USB自己的通讯协议进行通讯 (具体是啥没有查),数据通过USB总线传输;

    注:USB2和USB3不仅是通讯协议不同,硬件接口也不同(针脚数目也不一样)(这也是为什么一个usb接口要么支持2要么支持3,就是因为是硬件接口不同,而不仅仅是协议不同),协议层也不同;

  6. NGFF:全称Next Generation Form Factor,是一种计算机内部扩展卡及相关连接器规范。目的是取代mini PCI-E和mSATA,主要为固态硬盘等准备。现在的名字叫M.2,没错,NGFF就是M.2。总结下,NGFF是一个接口,新的名字叫M.2
  7. M.2:即NGFF,M.2是一种接口标准,协议上支持AHCI和NVME;数据可以通过SATA总线(使用AHCI协议)、PCIL总线(使用NVME协议)、USB总线传输;接口上按缺失位可分为key M和key B(就是某一个引脚缺失而已),俩接口样子不一样,规定使用的通讯协议也不同。
接口 总线 协议 速度
SATA SATA AHCI 理论上限 6 Gb/s,约 500MB/s
M.2 SATA AHCI 理论上限 6 Gb/s,约 500MB/s
M.2 PCI-e NVMe 理论上限 32 Gb/s,约 3200MB/s

M.2 接口

image

  1. 了解 SSD 技术:NVMe、SATA、M.2
  2. NGFF、M.2、NVME、SATA、PCIE、USB的层次和区别:协议?接口?
  3. SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

了解 SSD 技术:NVMe、SATA、M.2

NVMe (Non-Volatile Memory Express) 是一种通信接口和驱动程序,为基于 PCIe 的 SSD 定义了命令集和功能集,目标是提高性能和效率,同时让广泛的企业级系统和客户端系统实现互操作。

NVMe 专为 SSD 设计。它利用高速 PCIe 插槽在存储接口和系统 CPU 之间进行通信,而无论存储器外形尺寸如何。相比采用 AHCI(高级主控接口,SATA SSD 的特性之一)等旧驱动程序的旧存储型号,利用 NVMe 驱动程序执行的输入/输出任务开始速度更快、传输的数据更多、结束速度更快。由于 NVMe 专为 SSD 设计,NVMe 正在成为数据中心服务器和客户端设备(笔记本电脑、台式机,甚至是下一代游戏主机)的新行业标准。

NVMe 技术支持各种外形尺寸,例如 PCIe 卡插槽、M.2 和 U.2。一些 SSD 使用的是采用 AHCI 而非 NVMe 的 SATA、PCIe 插槽和 M.2,而 U.2 是仅用于 NVMe 协议的外形尺寸。

下面的信息图将帮助您了解各种不同类型 SSD 的不同外形尺寸和协议,以及性能上的差异。

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant