存储硬件设备电源管理

介绍

本文档旨在为在 2019 年 5 月 10 日更新或更高版本的操作系统版本上使用 Microsoft 内置 SATA 和 NVMe 驱动程序的 OEM 和设备制造商提供指南。 Microsoft 的一般指导是提供在平衡性能、响应能力和电源效率方面“正常工作”的内置解决方案。 与整体系统性能一样,性能不佳的设备硬件可能会影响整体效率和电池寿命。 通常,系统会尝试平衡电源效率和性能。

下图说明了 ACPI 定义的设备电源状态 D0(工作)到 D3(关闭)。 请注意,随着设备转换到更深的电源状态,功耗会降低,但延迟会增加。 另请注意,Windows 支持不同的功能状态 (F-States),可用于控制 D0 状态内的细粒度级别功能和电源。 这对于系统需要保持高度响应能力但仍需要节省电量的运行时电源管理很有用。

Power states

ACPI 定义的睡眠状态电源管理

当系统未使用时,Windows 可能会适时地将系统置于 ACPI 定义的睡眠状态以实现省电。 同样,Windows 可能会随着时间的推移选择深度睡眠状态以进一步省电。 例如,系统可能会过渡到 S3 一段时间,并最终过渡到 S4 休眠。 当系统转换为睡眠状态时,一般的经验法则是将设备置于尽可能最深的 D 状态,除非该设备支持唤醒,并且预备唤醒。 在这些条件下,较浅的 D 状态可能是合适的。 同样,当系统唤醒时,设备将转换回 D0。

运行时电源管理

为了实现最高的电源效率,一些组件将实现非常细粒度的空闲逻辑,以确定设备何时可以断电,即使系统处于活动使用状态。 例如,如果驱动程序认为某些功能块在一段时间内没有使用,则高端存储设备可以在运行时禁用这些功能块。 仅当这些功能块可以重新上线并足够快地发挥作用以使用户不会产生明显的延迟时,才会禁用。

新式待机电源管理

当系统不使用时,Windows 可能会适时关闭某些设备的电源以实现省电。 在新式待机中,系统保留在 S0 中。 即使在 S0 中,所有外围设备最终也可能由于空闲超时而断电。 该状态定义为“S0 低功耗空闲”。 一旦所有设备都处于低功耗状态,甚至更多的系统基础结构(例如,总线、定时器等)可能会断电。 一般的经验法则是在设备空闲时将其置于尽可能深的 D 状态,即使系统状态为 S0。 根据处理器复合体和平台设计的实施细节,外围设备可能需要进入 F 状态、D3 热或 D3 冷(断电)。 为了减少对功能驱动程序管理这些实现细节的需求,驱动程序应该进入最深的适当设备状态,以最大限度地延长电池寿命。

D3 支持

当系统不使用时,Windows 可能会适时关闭某些设备的电源以实现省电。 在新式待机中,系统保留在 S0 中。 即使在 S0 中,所有外围设备最终也可能由于空闲超时而断电。 该状态定义为“S0 低功耗空闲”。 一旦所有设备都处于低功耗状态,甚至更多的系统基础结构(例如,总线、定时器等)可能会断电。 一般的经验法则是在设备空闲时将其置于尽可能深的 D 状态,即使系统状态为 S0。 根据处理器复合体和平台设计的实施细节,外围设备可能需要进入 F 状态、D3 热或 D3 冷(断电)。 为了减少对功能驱动程序管理这些实现细节的需求,驱动程序应该进入最深的适当设备状态,以最大限度地延长电池寿命。

ASL Copy  
Name (_DSD, Package () { 
     
          ToUUID("5025030F-842F-4AB4-A561-99A5189762D0"), 
     
            Package () { 
 
                Package (2) {"StorageD3Enable", 1}, // 1 - Enable; 0 - Disable 
 
            } 
        } 
 ) 

上面的 ACPI _DSD 是选择加入或退出 D3 对存储设备的支持的首选方式。 但是,如果需要,还有一个全局注册表项可用于修改 D3 支持。

  • 名称:StorageD3InModernStandby
  • 类型:REG_DWORD
  • 路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Storage\
  • 值:
    • 0 – 禁用 D3 支持
    • 1 – 启用 D3 支持

如果未配置注册表项,则 Storport 将检查 _DSD 配置以确定是否启用 D3。 如果 _DSD 没有实现,Storport 将检查平台是否在 D3 支持的许可名单上。

电源管理的父/子关系

在上电期间,始终对存储设备实施父/子关系。 在掉电期间,唯一不强制执行父/子电源关系的情况是:控制器仅支持 D3Hot,并且设备向 PoFx 报告 F1(即支持 DEVSLP 或者它是新式待机系统中的 SSD),则允许控制器在设备处于 F1 时进入 D3。

本节内容

主题 说明

NVMe

本主题涵盖 NVMe 存储设备的电源管理指南。

SATA/AHCI

本主题涵盖 SATA/AHCI 存储设备的电源管理指南。