芯片设计 | 什么是 NVMe?

2024-05-28 04:52
文章标签 设计 芯片 nvme

本文主要是介绍芯片设计 | 什么是 NVMe?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 什么是 NVMe?
  • 什么是固态硬盘?
  • 为什么 NVMe 很重要?
  • NVMe、SAS 和 SATA 之间的区别
  • 只有SSD运行在NVMe上
  • PCIe和NVMe有关系,但它们不是同一个东西
  • NVMe-oF连接SSD到网络
  • NVMe 的工作原理是什么?
    • NVMe SSD 外形尺寸
    • M.2 NVMe 驱动器
    • NVMe 和动态随机存取存储器
  • NVMe 用例
  • 资料来自:

  • 什么是 NVMe?
  • 什么是固态硬盘?
  • 为什么 NVMe 很重要?
  • NVMe、SAS 和 SATA 之间的区别
  • 只有SSD运行在NVMe上
  • PCIe和NVMe有关系,但它们不是同一个东西
  • NVMe-oF连接SSD到网络
  • NVMe 的工作原理是什么?
    • NVMe SSD 外形尺寸
    • M.2 NVMe 驱动器
    • NVMe 和动态随机存取存储器
  • NVMe 用例
  • 参考资料

什么是 NVMe?

NVMe协议标准由NVM Express公司监管,这是一个由100多个组织组成的联盟,这些组织致力于开发更快的协议以提高非易失性存储的性能。该组织由一个13家公司组成的董事会领导,其中包括Cavium、Cisco、Dell EMC、Facebook、英特尔、Micron、Microsemi、微软、NetApp、三星、希捷、东芝内存和Western Digital。

NVMe(非易失性内存主机控制器接口规范)是用于高度并行数据传输的协议,可减少闪存存储和固态硬盘 (SSD) 中使用的每个输入/输出 (I/O) 的系统开销。

由于设备驱动器的更改允许并行和轮询,因此 NVMe SSD 能够提供比传统硬盘驱动器 (HDD) 更快的响应时间。这些改进有助于减少延迟,使其成为企业工作负载以及众多消费者和专业应用程序的理想选择。


 HDD能达到的最高理论速度,与SATA、NVMe最高提供的理论速度对比

NVMe的官方定义将其描述为“一个开放的标准和信息集合,以充分释放非易失性存储在从移动端到数据中心的所有类型的计算环境中能够提供的优势。NVMe从底层开始设计,为当前和未来的NVM技术提供高带宽和低延迟存储访问。”

NVMe是通过PCI Express总线将存储连接到服务器的接口规范,简单来说就是,使SSD与主机系统通信的速度更快。它有助于缓解闪存通过最初为HDD设计的SAS或SATA连接到系统时出现的瓶颈。

UNICACA  ANU24PE16  U.2转接卡 是支持NVMe技术的固态硬盘产品

什么是固态硬盘?

固态硬盘 (SSD) 是基于半导体的存储设备,依靠闪存在计算机系统中存储持久数据。在 SSD 中,每个内存芯片均由包含内存单元(也称为页或扇区)的块构建而成,而内存单元又包含内存位。

与使用磁铁存储数据的磁性存储(例如 HDD 和软盘驱动器)不同,固态硬盘使用 NAND 芯片,这是一种非易失性存储技术,不需要任何电源来维护数据。

HDD 由于盘片旋转和读/写头移动而具有固有的延迟和访问时间,而 SSD 没有移动部件,因此速度更快。SSD 目前已超越 HDD,成为结构化数据工作负载的首选行业标准。

为什么 NVMe 很重要?

NVMe 开发于 2008 年至 2011 年,旨在取代串行高级技术附件 (SATA) 和串行连接 SCSI (SAS) 协议。与竞争对手相比,NVMe 在延迟和性能方面的改进促进了其他重要技术的发展,包括物联网 (IoT)、人工智能 (AI) 和机器学习 (ML)。

如今,用户要求应用程序能够比以往任何时候都更快响应。无论用户部署哪种类型的应用程序,NVMe 协议都旨在提供下一代高性能、高带宽和低延迟体验。

NVMe SSD 主要通过外围组件互连高速 (PCIe) 总线访问闪存存储,该总线可以移除“中间人”控制器,从而减少延迟。但是,NVMe 也可以在任何类型的“架构”互连(例如光纤通道和以太网)上运行,也可以在以太网、iWarp、RoCEv2、iSER 和 NVMe-TCP 内运行。

与使用 SCSI 协议连接的驱动器相比,NVMe SSD 可以运行成千上万个并行命令队列并运行程序,而 SCSI 协议只能部署单个命令队列。连接方式与协议无关;例如,NVMe PCIe 可以通过运行 NVMe 协议的 PCIe 链路连接单个驱动器。

NVMe 专为高性能、非易失性存储介质而构建,非常适合当今要求严格的计算密集型环境,例如图形编辑软件、云计算环境、固件和大型数据库。与 SCSI 相比,NVMe 能够快速高效地处理企业工作负载,且基础架构占用空间更小,功耗更低。

NVMe、SAS 和 SATA 之间的区别

虽然硬盘驱动器 (HDD) 是业界首选的数据存储和访问方法,但 SATA 和 SAS 是合适的解决方案。这两种技术都旨在作为 SCSI 存储接口,以方便数据传入和传出 HDD。

SAS 通过运行 SCSI 协议的 SAS 端口连接单个驱动器,然后连接到 PCIe 链路。SATA 通过运行 ATA 协议的 SATA 端口连接单个驱动器,然后通过 ATA 控制器连接到 PCIe 链路。

直到最近,大多数 SSD 都使用 SAS 或 SATA 与计算机系统的其余部分连接。然而,随着固态技术在整个存储行业的兴起,SAS 和 SATA 变得越来越难以匹配,因为它们旨在与 HDD 配合使用。

根据 International Data Corporation (IDC) 2023 年的一份报告,NVMe 旨在加快通过 PCI Express 连接的系统的数据传输速度,PCI Express 是一种串行扩展总线,是将计算机连接到一个或多个外围设备的标准配置。(2)

除了专为与 SSD 配合使用而设计之外,NVMe 的协议比 SCSI 更加精简,使其成为面向实时应用程序(例如 ML 和 AI)的更好解决方案。随着云计算环境的日益普及,NVMe 凭借内置的高性能和数据保护功能,也能够很好地支持混合云、多云和大型机存储环境。

以下是使用 NVMe 存储相对于 SAS 或 SATA 驱动器的一些优势:

  • 提升性能:NVMe 技术可以使用 PCIe 将 SSD 存储直接连接到服务器或中央处理单元 (CPU)。凭借性能的显著提高,对于游戏玩家、视频编辑器和其他需要比 SAS 或 SATA HDD 更高性能的用户来说,NVMe 技术成为了首选数据存储/传输选项。

  • 速度更快: NVMe 驱动器可以提供比 SAS 或 SATA 驱动器更高的速度,因为它们可以更快地发送和接收 NVMe 命令并提供更好的吞吐量。

  • 提高兼容性:NVMe 被广泛视为比 SAS/SATA 更具兼容性的选项,并且随着 AI、ML 和云计算等快速发展的关键技术的发展而经常更新。NVMe 技术可以与所有现代操作系统无缝协作,包括手机、笔记本电脑和游戏机。

  • 改进的带宽: PCIe 连接比 SAS 或 SATA 端口更宽并且具有更多的带宽。它还随着每一代的改进而改进,带宽是上一代的两倍。SAS 和 SATA 的带宽连接要低得多并且是固定的,因此它们不会随着时间的推移而改进。PCIe 连接脱颖而出的另一个特点是它们在“通道”中可扩展,因此即使在同一代产品中,用户也可以通过两倍的通道数量将带宽加倍。

只有SSD运行在NVMe上

因为NVMe驱动器要比SATA快得多,所以将NVMe与HDD放在一起使用来提高性能似乎是个好主意。但是请记住,NVMe代表非易失性存储接口规范,它是专门为NAND 闪存等非易失性存储设计的(尽管它也可以用于较新的非易失性内存,比如3D XPoint)。

当系统从HDD读取数据时,它一次只能读取一块数据。因为它必须进行旋转以定位到第一个数据块的正确物理位置,然后再次旋转,移动到第二个数据块的正确位置,以此类推。另一方面,闪存和其他非易失性存储技术没有移动部件。这意味着系统可以同时从许多不同的位置读取数据。这就是为什么SSD可以利用NVMe提供的并行性,而HDD不能。

PCIe和NVMe有关系,但它们不是同一个东西

对于很多人来说,NVMe最令人困惑的部分是它与PCIe的关系。一些厂商使用NVMe作为标签来指代他们的SSD,另外一些厂商则使用PCIe标签,还有一些厂商似乎可以互换使用这些术语。

虽然PCIe和NVMe密切相关,但两个术语指的是略有不同的技术。可以将PCIe看作是系统的物理部分。当您将一个NVMe SSD插入服务器时,您需要通过一个PCIe插槽连接它。

相比之下,NVMe是一种协议,是一组允许SSD使用PCIe总线的软硬件标准。可以这么说,NVMe是允许存储设备与服务器连接的语言,而PCIe是实际的物理连接。

NVMe-oF连接SSD到网络

本文主要关注的是标准的NVMe,它将SSD直接连接到服务器,但是NVM Express组织也发布了NVMe over Fabric (NVMe- oF)的规范,它将用于块存储的非易失性存储连接到网络。根据该组织的说法,“NVMe- oF定义了一个通用架构,它支持一系列存储网络结构,用于存储网络结构之上的NVMe块存储协议。”这包括在存储系统中启用前端接口,扩展到大量NVMe设备,并在数据中心内延长NVMe设备和NVMe子系统可访问的距离。

NVMe-oF规范与NVMe规范有大约90%的相同;然而,它确实使用了一种不同的传输映射机制。NVME-oF也有两种不同的变体:一种用于RDMA,另一种用于光纤通道。

NVMe-oF规范也比NVMe规范新得多,尽管一些厂商已经宣布支持这项技术,但实际上很少有厂商销售NVMe的产品。期待这种技术在未来几年变得更加普遍。

NVMe 的工作原理是什么?

在 SSD 和闪存存储出现之前,所有 HDD 存储系统都使用 SATA。然而,随着移动应用程序、视频游戏和 AI 等新技术对计算环境的要求不断提高,SATA 的局限性变得越来越明显。具体来说,SATA 的低速度和低带宽开始减慢大型数据传输速度,而大数据传输对于新应用程序的功能至关重要。

在需要大型数据传输而不减慢处理时间的环境中,NVMe 是一种比 SATA 更好的 SSD 数据存储/传输选项。NVMe 使 SSD 能够使用 PCIe 总线和 M.2 或 U.2 适配器直接连接到 CPU,这一点与 SATA 驱动器相同。NVMe 允许 SSD 直接连接到 CPU 并快速读取和写入大量数据。

为了实现更高的性能,NVMe 为基于 PCIe 的 SSD 定义了寄存器接口、命令集和功能组。通过 PCIe 总线连接后,NVMe 协议可降低延迟并有助于优化每秒 I/O 操作数 (IOPS)。

NVMe 驱动程序支持多种常见的操作系统 (OS),包括 Windows、Linux 和 MacOS。此外,NVMe 协议支持所有类型的 NVM,包括支持 NAND 闪存的 SSD。最后,NVMe 使用并行命令队列和“轮询循环”,而不是其前身基于“中断”的设备驱动程序,从而减少延迟和系统开销,并有助于避免 CPU 瓶颈,例如当显卡工作速度快于底层 CPU 时。

NVMe SSD 外形尺寸

NVMe 规范的另一个重要区别在于外形尺寸,或者说尺寸、配置和物理设计对与其他设备兼容性的影响程度。最近,存储网络行业协会 (SNIA) 召开会议,建立了企业和数据中心标准外形尺寸 (EDSFF),为 SSD 技术创建一个商定的行业级框架。

商定的 SSD 标准外形尺寸为 2.5 英寸,可轻松装入大多数笔记本电脑和台式机的驱动器托架,使 NVMe SSD 与现有技术高度兼容。由于 2.5 英寸驱动器广泛用于消费和商业计算环境,因此对于希望升级系统性能的用户来说,用 NVMeSDD 替换 HDD 非常简单直接。

M.2 NVMe 驱动器

M.2 SSD 是 SSD 中使用的另一种物理外形尺寸或连接器。虽然该术语经常与 NVMe 互换使用,但它们是不同类型的存储技术。虽然 NVMe SSD 连接到主板上的 PCIe Slot,使数据传输速率比竞争对手高得多,但 M.2 驱动器是一种物理外形尺寸或连接器,可在超薄笔记本电脑和平板电脑等功耗受限的小型设备中实现高性能存储。

NVMe 和动态随机存取存储器

动态随机存取存储器 (DRAM) 是个人计算机 (PC)、服务器和工作站所依赖的一种广泛使用的随机存取存储器 (RAM)。NVMe SSD 有 DRAM 和无 DRAM 两种。

具有DRAM 的 NVMe SSD 比无 DRAM 的 SSD 更昂贵且速度更快,对于照片或视频编辑软件等图形密集型应用程序来说,它们是更好的选择。

无DRAM 的 NVMe 价格更实惠,速度也更慢,但仍然比 HDD 或 SATA SSD 快得多,对于不需要运行应用程序的速度或性能的用户来说,它们是不错的选择。

NVMe 用例

NVMe 具有低延迟、低功耗要求,并且能够以比 SAS 和 SATA 驱动器快得多的速率存储和传输数据,因此使其成为面向企业和消费者的常见选择。除了提高性能和数据存储容量之外,NVMe SSD 比 SAS 或 SATA SSD 的应用更为广泛,可以从 Intel 和 Samsung 等信誉良好的消费品公司购买。以下是一些常见的 NVMe 用例:

高性能计算

NVMe 的速度、可编程性和并行处理能力使其成为各种高性能计算应用程序的理想选择,包括高频金融交易、AI 和 ML。

要求严格的应用程序

许多尖端应用程序需要较大的队列深度进行存储。与之前的 SAS/SATA 不同,NVMe 可以容纳多达 65,000 个队列和每个队列的命令,从而允许再执行数千个命令。

数据中心

NVMe SSD 帮助数据中心扩展数据存储容量,并以与 SATA SSD 相当的价格提供更高的性能,因此促使许多现代企业做出转变。根据 Enterprise Strategy Group 的报告,近四分之三的组织正在使用基于 NVMe 的 SSD 存储或计划在未来 12 个月内进行部署。(3)

图形编辑

无论您是编辑家庭团聚的视频还是制作动画电影,NVMe 的快速数据传输速率都能使视频编辑速度显著加快。简而言之,在视频编辑软件中编辑和渲染场景会产生大量数据。NVMe SSD 可以处理所有这些数据,而不会减慢处理速度。

DevOps

在容器化开发运维应用程序中部署 NVMe 缩短了许多开发人员的大型构建时间并加快了编码迭代。NVMe 还可以加快开发速度、降低成本,并帮助团队使用更广泛的工具更快地启动。

关系数据库

NVMe 闪存系统可提高应用程序性能并减少关系数据库所需的物理服务器数量。这使得该系统的执行速度比传统硬盘驱动器更快,从而使操作它们的组织能够更快地运行查询。

资料来自:

  • IBM—https://www.ibm.com/cn-zh/topics/nvme
  • 嘉华—https://www.unicaca.com/info/detail/231.html
  • 百家号—https://baijiahao.baidu.com/s?id=1616207956596122967&wfr=spider&for=pc

这篇关于芯片设计 | 什么是 NVMe?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1009591

相关文章

不懂推荐算法也能设计推荐系统

本文以商业化应用推荐为例,告诉我们不懂推荐算法的产品,也能从产品侧出发, 设计出一款不错的推荐系统。 相信很多新手产品,看到算法二字,多是懵圈的。 什么排序算法、最短路径等都是相对传统的算法(注:传统是指科班出身的产品都会接触过)。但对于推荐算法,多数产品对着网上搜到的资源,都会无从下手。特别当某些推荐算法 和 “AI”扯上关系后,更是加大了理解的难度。 但,不了解推荐算法,就无法做推荐系

怎么让1台电脑共享给7人同时流畅设计

在当今的创意设计与数字内容生产领域,图形工作站以其强大的计算能力、专业的图形处理能力和稳定的系统性能,成为了众多设计师、动画师、视频编辑师等创意工作者的必备工具。 设计团队面临资源有限,比如只有一台高性能电脑时,如何高效地让七人同时流畅地进行设计工作,便成为了一个亟待解决的问题。 一、硬件升级与配置 1.高性能处理器(CPU):选择多核、高线程的处理器,例如Intel的至强系列或AMD的Ry

基于51单片机的自动转向修复系统的设计与实现

文章目录 前言资料获取设计介绍功能介绍设计清单具体实现截图参考文献设计获取 前言 💗博主介绍:✌全网粉丝10W+,CSDN特邀作者、博客专家、CSDN新星计划导师,一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设计 主要对象是咱们电子相关专业的大学生,希望您们都共创辉煌!✌💗 👇🏻 精彩专栏 推荐订阅👇🏻 单片机

SprinBoot+Vue网络商城海鲜市场的设计与实现

目录 1 项目介绍2 项目截图3 核心代码3.1 Controller3.2 Service3.3 Dao3.4 application.yml3.5 SpringbootApplication3.5 Vue 4 数据库表设计5 文档参考6 计算机毕设选题推荐7 源码获取 1 项目介绍 博主个人介绍:CSDN认证博客专家,CSDN平台Java领域优质创作者,全网30w+

单片机毕业设计基于单片机的智能门禁系统的设计与实现

文章目录 前言资料获取设计介绍功能介绍程序代码部分参考 设计清单具体实现截图参考文献设计获取 前言 💗博主介绍:✌全网粉丝10W+,CSDN特邀作者、博客专家、CSDN新星计划导师,一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设计 主要对象是咱们电子相关专业的大学生,希望您们都共创辉煌!✌💗 👇🏻 精彩专栏 推荐订

Spring的设计⽬标——《Spring技术内幕》

读《Spring技术内幕》第二版,计文柯著。 如果我们要简要地描述Spring的设计⽬标,可以这么说,Spring为开发者提供的是⼀个⼀站式的轻量级应⽤开发框架(平台)。 作为平台,Spring抽象了我们在 许多应⽤开发中遇到的共性问题;同时,作为⼀个轻量级的应⽤开发框架,Spring和传统的J2EE开发相⽐,有其⾃⾝的特点。 通过这些⾃⾝的特点,Spring充分体现了它的设计理念:在

开题报告中的研究方法设计:AI能帮你做什么?

AIPaperGPT,论文写作神器~ https://www.aipapergpt.com/ 大家都准备开题报告了吗?研究方法部分是不是已经让你头疼到抓狂? 别急,这可是大多数人都会遇到的难题!尤其是研究方法设计这一块,选定性还是定量,怎么搞才能符合老师的要求? 每次到这儿,头脑一片空白。 好消息是,现在AI工具火得一塌糊涂,比如ChatGPT,居然能帮你在研究方法这块儿上出点主意。是不

创业者该如何设计公司的股权架构

本文来自七八点联合IT橘子和车库咖啡的一系列关于设计公司股权结构的讲座。 主讲人何德文: 在公司发展的不同阶段,创业者都会面临公司股权架构设计问题: 1.合伙人合伙创业第一天,就会面临股权架构设计问题(合伙人股权设计); 2.公司早期要引入天使资金,会面临股权架构设计问题(天使融资); 3.公司有三五十号人,要激励中层管理与重要技术人员和公司长期走下去,会面临股权架构设计问题(员工股权激

分布式文件系统设计

分布式文件系统是分布式领域的一个基础应用,其中最著名的毫无疑问是 HDFS/GFS。如今该领域已经趋向于成熟,但了解它的设计要点和思想,对我们将来面临类似场景 / 问题时,具有借鉴意义。并且,分布式文件系统并非只有 HDFS/GFS 这一种形态,在它之外,还有其他形态各异、各有千秋的产品形态,对它们的了解,也对扩展我们的视野有所俾益。本文试图分析和思考,在分布式文件系统领域,我们要解决哪些问题、有

(入门篇)JavaScript 网页设计案例浅析-简单的交互式图片轮播

网页设计已经成为了每个前端开发者的必备技能,而 JavaScript 作为前端三大基础之一,更是为网页赋予了互动性和动态效果。本篇文章将通过一个简单的 JavaScript 案例,带你了解网页设计中的一些常见技巧和技术原理。今天就说一说一个常见的图片轮播效果。相信大家在各类电商网站、个人博客或者展示页面中,都看到过这种轮播图。它的核心功能是展示多张图片,并且用户可以通过点击按钮,左右切换图片。