没有合适的资源?快使用搜索试试~ 我知道了~
首页NVM_Express_Revision_1.3中文翻译.docx
资源详情
资源评论
资源推荐
1 Introduction(介绍)
1.1 Overview(概述)
()是一个允许主机软件与非易失性存储子系统通信的接口。此接口
针对企业和客户机固态驱动器进行了优化,通常作为寄存器级接口连接到 接
口。 注:在开发过程中,本规范被称为企业 。但是,在规范完成之前,
名称被修改为 。此接口用于客户端和企业系统。
有关从版本 到版本 的更改概述,请参阅 以获取描
述新功能的文档,包括控制器遵守版本 的强制性要求。
1.1.1 NVMe over PCIe and NVMe over Fabrics
和 先 前 版 本 定 义 了 一 个 寄 存 器 级 接 口 , 用 于 主 机 软 件 通 过
()与非易失性内存子系统通信。 规范定
义了一个协议接口和 的相关扩展,这些扩展支持通过其他互连(例如,以太网 、
!")进行操作™,光纤通道)。 规范对每个 传输都
有一个 传输绑定(在该规范内或通过引用)。
在本规范中,要求特性可记录为特定于 # 或特定 传输绑定。此
外,对功能和功能的支持要求可能会在基于 的 和基于结构的 之间有所
不同。
为符合 ,控制器应支持图 $% 中标识控制器数据结构中的 子
系统 限定名。
1.2 Scope(范围)
该规范定义了与非易失性存储器子系统通信的寄存器接口。它还定义了一个用于 子
系统的标准命令集。
1.3 Outside of Scope(超出范围)
寄存器接口和命令集是在 的任何使用模型之外指定的,但只指定到 子系统
的通信接口。因此,本规范未指定非易失性存储器系统是否用作固态驱动器、主存储器、
高速缓存存储器、备份存储器、冗余存储器等。特定的使用模式不在范围内,可选且未经
许可。
此接口是在任何非易失性内存管理(如损耗均衡)之上指定的。抽象了 技术
(如 &')的擦除和其他管理任务
此规范不包含任何有关缓存算法或技术的信息。
本规范中提及的其他已发布规范的实现或使用,即使为了符合本规范的要求,也不在
本规范的范围内(例如,、 和 ()。
) *+#,-.操作理论/
是一种可扩展的主机控制器接口,旨在满足使用基于 的
固态驱动器的企业和客户机系统的需要。该接口提供优化的命令提交和完成路径。它
支持多达 0111 个 , 队列,每个 , 队列最多有 0)2 个未完成的命令,从而支持
并行操作。此外,还添加了对许多企业功能的支持,如端到端数据保护(与 33 保
护信息兼容,通常称为 *$' 和 3&'( 标准)、增强的错误报告和虚拟化。
接口具有以下关键属性:
不需要在命令提交或完成路径中读取不可缓存的,((Memory-mapped I/O)
即内存映射 I/O)寄存器。
命令提交路径中最多需要写入一个 , 寄存器
最多支持 0111 个 , 队列,每个 , 队列最多支持 0)2 个未完成的命令。
使用定义良好的仲裁机制与每个 , 队列关联的优先级。
完成 )2! 读取请求的所有信息都包含在 0)! 命令本身中,确保高效的小型 ,
操作
高效、精简的命令设置。
支持 33( 和中断聚合。
支持多个命名空间。
有效支持 34, 等 , 虚拟化体系结构。
强大的错误报告和管理功能。
支持多路径 , 和命名空间共享。
本规范定义了一组精简的寄存器,其功能包括:
控制器能力指示
控制器故障状态(命令状态直接通过 5 处理)
管理队列配置(通过管理命令处理的 , 队列配置)
门铃注册,可扩展提交和完成队列的数量
控制器与单个 功能关联。适用于整个控制器的功能和设置在控制
器功能(&)寄存器和标识控制器数据结构中指示
命名空间是可以格式化为逻辑块的非易失性内存量。 控制器可以支持
使用命名空间 ' 引用的多个命名空间。可以使用命名空间管理和命名空间附件命令创建和
删除命名空间。标识命名空间数据结构指示特定于特定命名空间的功能和设置。命名空间
'6666 的标识名称空间数据结构报告所有名称空间通用的功能和设置
基于成对提交和完成队列机制。命令由主机软件放入提交队列。完成
操作由控制器放入关联的完成队列中。多个提交队列可以使用同一个完成队列。提交和完
成队列在内存中分配。
管理提交和相关的完成队列用于控制器管理和控制(例如,创建和删除 , 提交和完
成队列、中止命令等)。只有属于管理命令集的命令才能提交到管理提交队列。
, 命令集与 , 队列对一起使用。该规范定义了一个 , 命令集,称为 命令集。
主机选择一个用于所有 , 队列对的 , 命令集。
主机软件创建队列,最多可达控制器支持的最大值。通常,创建的命令队列的数量取
决于系统配置和预期的工作负载。例如,在基于四核处理器的系统上,每个核心可能有一
个队列对,以避免锁定,并确保在适当的处理器核心缓存中创建数据结构。图 提供了队
列对机制的图形表示,显示了提交队列和完成队列之间的 7 映射。图 显示了一个示例,
其中多个 , 提交队列在 ! 上使用相同的 , 完成队列。图 和图 显示了管理提交
队列和管理完成队列之间始终存在 7 映射。
提交队列(35)是一个具有固定插槽大小的循环缓冲区,主机软件使用该缓冲区提交
命令供控制器执行。当有 到 个新命令要执行时,主机软件会更新相应的 35 尾门铃寄
存器。当有一个新的门铃寄存器写入时,先前的 35*8 值在控制器中被覆盖。控制器按
顺序从提交队列中获取 35 条目,但是,它可以按任何顺序执行这些命令。
每个提交队列条目都是一个命令。命令的大小为 0) 字节。内存中用于数据传输的物
理内存位置是使用物理区域页(4)条目或散点收集列表指定的。每个命令可以包括两
个 4 条目或一个散点收集列表(39:)段。如果描述数据缓冲区需要两个以上的 4
条目,则提供一个指向描述 4 条目列表的 4 列表的指针。如果需要多个 39: 段来描
述数据缓冲区,则 39: 段提供指向下一个 39: 段的指针。
完成队列(5)是具有固定槽大小的循环缓冲区,用于发布已完成命令的状态。完成
的命令由主机软件分配的关联 35 标识符和命令标识符的组合唯一标识。多个提交队列可
以与单个完成队列相关联。此功能可用于单个工作线程通过一个完成队列处理所有命令完
成的情况,即使这些命令来自多个提交队列。 5 头指针在处理完成后由主机软件更新
指示最后一个空闲 5 插槽的队列条目。在完成队列条目中定义了阶段标记()位,以指
示条目是否在未咨询寄存器的情况下被新发布。这使主机软件能够确定新条目是作为前一
轮或当前一轮完成通知的一部分发布的。具体地说,在完成队列条目的每一轮中,控制器
反转相位标记位。
) 多路径 , 和命名空间共享
本节概述了多路径 , 和命名空间共享。多路径 , 指单个主机和命名空间之间的两
个或多个完全独立的 路径,而命名空间共享指两个或多个主机使用不同的
控制器访问公共共享命名空间的能力。多路径 , 和命名空间共享都要求
子系统包含两个或多个控制器。两个或多个主机对共享命名空间的并发访问需要主机
之间某种形式的协调。用于协调这些主机的过程不在本规范的范围内。
图 显示了一个 子系统,该子系统包含一个 控制器和一个
端口。由于这是单功能 设备, 控制器应与 功能
$ 相关联。控制器可以支持多个名称空间。图 中的控制器支持标记为 3& 和 3! 的两
个名称空间。与每个控制器名称空间关联的是一个名称空间 ',标记为 3' 和 3'
,控制器使用它来引用特定的名称空间。命名空间 ' 与命名空间本身不同,是主机和控
制器用于在命令中指定特定命名空间的句柄。控制器名称空间 ' 的选择不在本规范的范围
内。在此示例中,命名空间 ' 与命名空间 & 关联,命名空间 ' 与命名空间 ! 关联。
这两个命名空间都是控制器专用的,此配置既不支持多路径 ,,也不支持命名空间共享。
图 ) 显示了一个多功能 子系统,其中一个 端口包含两个控制器,一个
控制器与 功能 $ 关联,另一个控制器与 功能 关联。每个控制器都支持单个私有
命名空间和对共享命名空间 ! 的访问。在所有有权访问特定共享命名空间的控制器中,命
名空间 ' 应相同。在本例中,两个控制器都使用命名空间 ' 来访问共享命名空间 !。
每个控制器都有一个唯一的标识控制器数据结构,每个命名空间都有一个唯一的标识
命名空间数据结构。访问共享命名空间的控制器返回与该共享命名空间关联的标识命名空
间数据结构(即,访问同一共享命名空间的所有控制器都返回相同的数据结构内容)。有
一个与命名空间本身关联的全局唯一标识符,可用于确定同一共享命名空间何时存在多个
路径。参见第 ;$ 节。
与共享命名空间关联的控制器可以同时在命名空间上操作。单个控制器执行的操作是
提交命令的控制器的写原子级别的共享命名空间的原子操作(请参阅第 0) 节)。在共享
命名空间的控制器中,不要求写入原子性级别相同。如果向访问共享命名空间的不同控制
器发出的命令之间存在任何排序要求,则需要主机软件或关联的应用程序来强制执行这些
排序要求。
图 1 展示了一个具有两个 端口的 子系统,每个端口都有一个关联
的控制器。两个控制器都映射到对应端口的 功能 $。本例中的每个 端口
完全独立,并具有自己的 基本复位和参考时钟输入。端口的重置仅影响与该
端口关联的控制器,对其他控制器、共享命名空间或其他控制器在共享命名空间上执行的
操作没有影响。本例的功能行为与图 ) 所示的相同。
剩余63页未读,继续阅读
天明cium
- 粉丝: 0
- 资源: 9
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- RTL8188FU-Linux-v5.7.4.2-36687.20200602.tar(20765).gz
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
- SPC统计方法基础知识.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论1