PCIE電源狀態:L0/L1/L1.1/L1.2/L2
Device電源狀態:D0/D1/D2/D3 hot/D3 cold
nvme電源狀態:PS0~PS4
Device是整個ssd的電源狀態,是對於host來說的整體概念。對於host來說,如果要求ssd在active狀態,那我們就是pcie會在L0,nvme是在PS0。
PCIe鏈路的電源狀態:
-
L0: 這個狀態屬於PCIe設備的工作狀態;
-
L0s: PCIe設備進入Standby狀態;
-
L1: PCIe設備進入比L0s更低功耗的Standby狀態;L1狀態有兩個子狀態L1.1和L1.2;
-
L2/L3 Ready: 這兩個狀態是PCIe設備准備進入L2/L3前的預備狀態;
-
L2: 比L1功耗更低的深度省電狀態;
-
L3: 此時PCIe鏈路出於關閉狀態,PCIe設備的VCC電源也被移除;
-
LDn: 這個狀態不具有實際意義,只是L2/L3返回L0狀態時所需要用的中間過渡狀態;
NVMe Spec中對動態電源管理的描述圖:
1. Host設定性能和功耗: Power Objective和Performance Objective。
2. Host通知Controller更改設備的power state。
NVMe最多支持32個電源狀態(PS, Power State)。NVMe設備可支持的Power State數目可以在Identify Controller Data Structure Byte[263]中查看。
每個Power State對應有一個長度為32Bytes的Power State Descriptor, 里面會描述每個Power State對應的最大功耗(MP), 進入延遲,退出延遲等等。比如,下表中,定義了7個power states。
目前,動態電源管理一般只用在消費級SSD上,對筆記本電腦的續航問題有很大的幫助。在企業級SSD中數據的安全性還是第一位的,不大會考慮功耗的問題。NVMe白皮書對消費級NVMe SSD的Power State建議如下:
上表中,PS0是全速狀態。PS1、PS2是過熱保護時降頻需要過渡的狀態。PS3、PS4是非操作狀態,具有較低的功耗,並且退出延遲很短。
大家知道,目前NVMe SSD都需要PCIe總線的配合,所以,NVMe電源狀態也必須與PCIe鏈路電源狀態相互映襯。