OCP NVME SSD规范解读-2.复位与控制器配置要求-part1

OCP NVME SSD规范解读-2.复位与控制器配置要求-part1_第1张图片

协议文档1-3章节,没什么核心内容,咱们就略过了,直接从第4章节开始。

OCP NVME SSD规范解读-2.复位与控制器配置要求-part1_第2张图片

第4章节中,提供了对设备需要遵守的NVMe基本特性和功能的概述。简要介绍了设备应符合的NVMe规范要求,包括NVMe基础2.0规格、NVM命令集1.0规格和NVMe over PCIe传输1.0规格,或者这些规格的后续版本。

OCP NVME SSD规范解读-2.复位与控制器配置要求-part1_第3张图片

4.2章节规定了nvme复位方式。描述了设备应支持的两种重置方式,即通过NSSRC寄存器进行的NVM子系统重置(NSSR)和通过清除CC.EN到0b进行的NVMe控制器重置。

OCP NVME SSD规范解读-2.复位与控制器配置要求-part1_第4张图片

  1. NVM Subsystem Reset (NSSR) :这是一种高级别的重置操作,用于重置整个非易失性内存(NVM)子系统。这包括NVMe控制器、NVM介质以及其他相关的硬件和软件组件。通过NSSRC寄存器执行NSSR可以清除非易失性存储中的临时状态信息,解决可能由于软件错误、硬件故障或其他问题导致的系统不稳定或挂起状态。

  2. NVMe Controller Reset (CC.EN cleared to 0b):这是一种较低级别的重置操作,只针对NVMe控制器本身。通过清除CC.EN(Controller Enable)位到0b,可以重置控制器的状态,包括其内部寄存器、队列和其他资源。这种重置通常用于解决与控制器特定功能或行为相关的问题,而不影响NVM介质上的数据。

这两种重置机制的存在是为了提供灵活性和故障恢复能力。NSSR可以用于处理更复杂、涉及多个组件的故障情况,而NVMe控制器重置则更适合于解决控制器层面的特定问题。通过支持这两种重置方式,设备能够更好地应对各种可能出现的问题,提高系统的稳定性和可靠性,并减少因设备故障导致的数据丢失或服务中断的风险。

4.3章节,NVMe Controller Configuration and Behavior(NVMe控制器配置和行为):详细列出了设备在控制器配置和行为方面应满足的一系列要求,包括默认仲裁策略、最大数据传输大小、CSTS.CFS报告、最小队列深度、I/O队列对的数量、命名空间的EUI64字段设置、非零NGUID的使用、Doorbell Stride和Controller Power Scope字段的设置、对NVM命令集的支持、最大Submission和Completion Queue Entry Size,以及Memory Page Size Minimum的设定等。

OCP NVME SSD规范解读-2.复位与控制器配置要求-part1_第5张图片

OCP NVME SSD规范解读-2.复位与控制器配置要求-part1_第6张图片

核心总结如下:

4.3章节“NVMe Controller Configuration and Behavior”主要介绍了NVMe控制器的配置和行为要求,以下是一些核心总结点:

  1. Arbitration: 默认的仲裁方式应为Round-Robin(轮询),并支持Weighted Round Robin with Urgent Class Priority(带紧急优先级的加权轮询)。

NVMe Spec中主要定义了两种命令仲裁机制:循环仲裁(Round Robin Arbitration)和加权循环仲裁(Weighted Round Robin Arbitration).

  • 对于循环仲裁,所有主控必须支持。

  • 对于加权循环仲裁,主控可以选择性支持。

  • 除了这两个仲裁机制以外,主控设计人员还可以自行定义仲裁机制。
     

(1)循环仲裁(Round Robin Arbitration)

当NVMe设备选择RR仲裁机制时,所有SQs(包括Admin Command SQ和IO Command SQ)都会执行RR仲裁。此时,所有SQs的级别一样高,按照顺序依次从所有SQs中分别取出一定数目的Commands(如下图).

这里的"一定数目"用参数Arbitration Burst定义,代表了一次从SQ中取Commands的数目。Arbitration Burst的数值可以通过Set feature定义。
 

OCP NVME SSD规范解读-2.复位与控制器配置要求-part1_第7张图片

(2)加权循环仲裁(Weighted Round Robin Arbitration)

加权循环仲裁(WRR)机制定义了3个绝对优先级和3个加权优先级。

  • Admin Class:  只有Admin SQ具有这一最高优先级。也就是说,Admin Command必须最先被执行。

  • Urgent Class: 一人之下,万人之上。优先级仅次于Admin Class。被赋予Urgent Class优先级的IO SQ在Admin SQ中的命令执行后,紧接着执行。

  • WRR Class: 最低绝对优先级。包含了三个加权优先级:High,Medium,Low.用户可以用个set feature命令控制加权优先级中每个优先级的权重,也即每次执行Command的数目。每个加权优先级内部执行RR仲裁机制。

OCP NVME SSD规范解读-2.复位与控制器配置要求-part1_第8张图片

你可能感兴趣的:(OCP,服务器,linux,人工智能,大数据)