PCIe 总线的 ASPM 和 PM 机制总结
创作时间:
作者:
@小白创作中心
PCIe 总线的 ASPM 和 PM 机制总结
引用
CSDN
1.
https://blog.csdn.net/weixin_47877869/article/details/144310766
PCIe(Peripheral Component Interconnect Express)总线中的电源管理机制对于优化设备功耗至关重要。本文详细介绍了两种主要的电源管理机制:ASPM(Active State Power Management)和PM(Power Management),并阐述了它们的关系和协同工作方式。
1. ASPM(Active State Power Management)
- 作用范围:链路层(Link)。
- 目标:在保持链路活跃状态的同时,动态调节链路电源,降低空闲时的功耗。
- 机制:
- ASPM 提供了 L0s 和 L1 两种低功耗状态:
- L0s:单方向链路进入低功耗状态,恢复时间最短,功耗减少有限。
- L1:双向链路均进入低功耗状态,恢复时间稍长,功耗降低显著。
- 更高级的 L1 Substates (L1.1, L1.2) 能进一步降低功耗。
- 触发条件:通过硬件自动检测链路空闲状态,无需软件干预。
- 配置方式:
- ASPM 是链路双方(Root Complex 和 Endpoint)协商决定的。
- 操作系统可以通过 pcie_aspm 参数影响 ASPM 设置。
- 优点:
- 实现了透明、硬件自动化的电源管理。
- 不中断数据传输,不需要系统进入深度休眠。
2. PM(Power Management)
- 作用范围:设备和系统层(包括 Function 和整个链路)。
- 目标:通过软件控制设备或整个链路进入低功耗状态。
- 机制:
- 提供了多个电源状态(Power States),包括:
- D0:设备完全运行。
- D1/D2:中等功耗状态(少见)。
- D3hot/D3cold:设备休眠或完全断电。
- 使用 PCI PM Capabilities 和 ACPI 接口实现。
- 触发条件:操作系统或设备驱动通过 ACPI 或 PM 软件接口发送命令。
- 配置方式:
- 操作系统管理设备电源状态。
- 通过 lspci 或设备驱动进行 PM 配置。
- 优点:
- 功耗降低幅度大,适合设备空闲时间较长的情况。
- 可支持设备完全断电。
3. ASPM 和 PM 的关系
特性 | ASPM | PM |
---|---|---|
控制层级 | 硬件(链路自动) | 软件(操作系统、驱动) |
管理范围 | PCIe 链路(Root 和 Endpoint 之间的通道) | PCIe 设备(包括整个链路) |
低功耗模式 | L0s, L1, L1.1, L1.2 | D0, D1, D2, D3hot, D3cold |
触发方式 | 硬件自动检测链路空闲 | 操作系统或驱动通过命令 |
适用场景 | 短时间空闲,快速恢复链路 | 长时间空闲,设备进入深度休眠或断电 |
功耗降低幅度 | 中等,适用于维持链路活跃 | 显著,适用于设备完全下电 |
恢复时间 | 快速(微秒级) | 较慢(毫秒级,视状态而定) |
实现方式 | 硬件协商和自动切换 | 软件命令和 ACPI 协同工作 |
依赖条件 | 双方链路支持 ASPM 并启用 | 设备和操作系统支持 PCI PM 规范 |
组合使用 | ASPM 可与 PM 协同工作,进一步降低功耗。 | ASPM 辅助 PM 机制,在链路空闲时降低功耗。 |
4. ASPM 和 PM 状态的关系列表
PM 状态 | ASPM 状态 | 说明 |
---|---|---|
D0 | L0, L0s, L1, L1.1, L1.2 | 设备完全运行时,链路根据空闲时间动态进入 L0s 或 L1。 可使用 L1 Substates 降低功耗。 |
D1/D2 | L1, L1.1, L1.2 | 当设备处于中等低功耗状态时,链路一般进入更深的 L1 低功耗状态。 |
D3hot | L1, L1.1, L1.2 | 设备在低功耗模式,链路处于低功耗状态,但保持电源连接,便于快速恢复。 |
D3cold | 无(链路关闭) |
4.1 ASPM 和 PM 的协同工作
- 设备短暂空闲:
- PM 保持设备在 D0。
- ASPM 自动调整链路到 L0s 或 L1。
- 设备长期空闲:
- PM 将设备转入 D3hot 或 D3cold。
- 如果是 D3hot,链路仍可能保持 L1 状态。
- 如果是 D3cold,链路完全关闭,无 ASPM 状态。
- 深度节能模式:
- 使用 PM 将设备设置为 D3hot 或 D3cold。
- 如果支持 L1 Substates(L1.1, L1.2),可进一步降低链路功耗。
4.2 实际应用中的协同
- 链路空闲时间较短(短暂数据暂停):
- ASPM 自动激活,进入 L0s 或 L1 状态。
- PM 保持设备在 D0 状态。
- 链路空闲时间较长(设备休眠):
- 操作系统通过 PM 将设备设置为 D3hot/D3cold 状态。
- 此时,ASPM 不再工作,因为链路被完全关闭。
- 链路复用场景:
- 如设备可能频繁进入空闲状态但需要快速恢复,ASPM 是主要机制。
- 如设备在很长一段时间不需要活动,PM 是主要机制。
4.3 重点分析:D3cold 时 ASPM 状态
- 状态描述:
- 设备进入 D3cold 状态时,链路被完全断电,不再存在活动的 ASPM 状态。
- 链路无法维持低功耗状态(如 L1 或 L1.2),因为电源已被切断。
- Vaux 的作用:
- 如果设备支持 Vaux 电源,它可以为某些逻辑(如唤醒功能)提供电力,但这不属于 ASPM 的管理范畴。
热门推荐
日语一到一百怎么读?
C9联盟高校名单及排名一览表(2025最新)
解锁流利口语的秘密:掌握这些技巧,让你英语突飞猛进!
必看!英语二、学位英语、公共英语三级有何不同?
电动汽车充电站需要多少度电?「量子新能」
Sic功率芯片制造工艺技术知识与专家报告分享
灰尘、睫毛……进到眼睛里的异物,去哪儿了?
酸奶必须冷藏保存吗?
数学公式的推导与解析
学习机器人编程对儿童有什么好处?
自动挡车的各档位英文全称是什么
腿沉重乏力怎么回事
女职工退休年龄及社保缴纳相关问题解答
偶尔一次36小时不睡觉有事吗
CPU的核心数与线程数对性能的影响是什么
文学中的包容性语言
暗鹰试射成功!全球安全新挑战!高超音速武器改变未来战争规则?
无人智能化作战:未来战场的新篇章
高级职称对职业晋升有哪些帮助?
东航空乘的合理薪资待遇解析
刷机包如何刷入虚拟机
胡萝卜可以和猪肝一起吃吗
马尔代夫省钱旅行全攻略:巧选居住岛屿与行前准备详解
七擒孟获背后的智慧与意图
来“晋商故里”山西晋中 赴一场“百年之约”
腋下脱毛可以管多久
餐桌上的血管“清道夫”:这些食物助你保持血管健康
寻美海南陵水:数字与文化交融,“双港战略”初结硕果
DNS解析权重设置说明
龟龟互咬大战曝光!教你轻松化解龟龟之间的血腥冲突!