高级特性 - 自主电源状态转换 - Command Dword 11 (第308页)
NVME2.0协议解读 1 min read

高级特性 - 自主电源状态转换 - Command Dword 11 (第308页)

Blog Author

NVM Express® Base Specification, revision 2.0b 中,自主电源状态转换(Autonomous Power State Transition) 功能允许控制器根据特定的空闲时间自动切换电源状态。这是提升存储设备能效的关键功能,允许在没有主机干预的情况下,根据使用模式调节电源状态。

自主电源状态转换 - Command Dword 11

功能概述

  • APSTE (Autonomous Power State Transition Enable) 位:该位控制是否启用自主电源状态转换。
  • 设为 '1':启用自主电源状态转换。
  • 设为 '0':禁用该功能,默认设置为 '0'。

数据结构

  • 该功能依赖于 Autonomous Power State Transition 数据结构,每个条目都对应一个电源状态。该数据结构包含 32 个条目,每个条目为 64 位,因此该结构总大小为 256 字节。每个条目描述一个电源状态的转换行为。
  • 数据结构的条目按电源状态的顺序排列,具体而言,第一个条目描述 电源状态 0,第二个条目描述 电源状态 1,以此类推。

每个条目的字段

  1. 保留位(Reserved):位于第 63-32 位,未使用。
  2. 转换前空闲时间(ITPT):该字段指示在当前电源状态下,进入空闲转换电源状态之前需要持续的空闲时间(单位为毫秒)。如果该字段的值为 0h,则禁用该电源状态的自主电源状态转换功能。
  3. 空闲转换电源状态(ITPS):该字段指示当当前电源状态空闲时间超过 ITPT 字段所指定的值时,控制器会自动过渡到的电源状态。此字段指定的电源状态必须是一个非操作电源状态(详见图 276)。如果 ITPT 字段为 0h,则该字段也应为 0h

数据结构的工作方式

  • 控制器根据 ITPT 字段定义的空闲时间来判断是否需要转换到其他电源状态。
  • 如果控制器在当前电源状态下保持空闲时间超过 ITPT 指定的时间,它会自动转换到 ITPS 字段指定的电源状态。这个过程是自主进行的,无需主机干预。

自主电源状态转换与其他功能的交互

自主电源状态转换功能可能与 非操作电源状态配置(Non-Operational Power State Config) 功能相互作用,具体交互如下:

交互说明

  • APSTE 为 1,NOPPME 为 1:允许电源状态转换由 ITPT 空闲计时器主机请求 触发。
  • APSTE 为 0,NOPPME 为 1:允许电源状态转换仅由 主机请求 触发。
  • APSTE 为 1,NOPPME 为 0:禁止在自主空闲计时器触发下进行电源状态转换,但允许由主机请求触发。
  • APSTE 为 0,NOPPME 为 0:禁止电源状态转换,所有操作都需要由主机直接触发。

总结

  • 自主电源状态转换 允许存储控制器根据空闲时间自动进入低功耗状态,以提升设备的能效。
  • 该功能与其他电源管理功能(如 非操作电源状态配置)相互作用,并且控制器根据这些配置决定是否允许进入非操作状态。
  • 主机可以通过 Set FeaturesGet Features 命令来配置和查询此功能。

这种设计提供了灵活性,能够根据存储设备的实际使用情况动态调整功耗,优化存储设备的能效。