本文共 3515 字,大约阅读时间需要 11 分钟。
PCIe(PCI Express)作为现代计算机体系的重要组成部分,其低功耗状态L1(Low Power State)能够显著降低系统功耗。在本文中,我们将详细探讨PCIe L1状态的相关知识,包括如何进入L1状态、退出L1状态,以及物理层在L1状态下的具体实现。
PCIe L1状态是指PCI Express端口进入低功耗状态的最高级别。在这种状态下,Transmitter(TX)和Receiver(RX)物理层同时进入Electrical Idle(EI)状态,LTSSM(Link Training and Status State Machine)也进入L1状态。
PCIe L1状态的进入主要通过以下两种方法:PCI-PM(PCI Power Management)和ASPM(Active State Power Management)。
PCI-PM方法是PCIe L1状态进入的最常见方式。具体流程如下:
Upstream Component(RC)发送CfgWr写入PMCSR的PowerState:RC通过发送CfgWr命令,配置Downstream Component(EP)的Power Management Controller(PMCSR)。
Downstream Component(EP)接收CfgWr后,LTSSM进入L1状态:EP在接收到CfgWr后,会执行进入L1状态所需的准备工作。
DLLP包的交互:
双方物理层进入Electrical Idle状态:TX和RX同时进入Electrical Idle状态,LTSSM最终进入L1状态。
ASPM方法(Active State Power Management)主要用于PCIe L1状态的快速进入。ASPM方法的具体实现分为以下三种类型:
方法一:支持ASPM L0s,链路空闲一段时间后进入L0s,随后再空闲一段时间后进入L1。这种方法仅需软件配置ASPM相关状态的使能即可。
方法二:支持ASPM L1,链路空闲一段时间后直接进入L1。同样只需软件配置相关状态即可。
方法三:支持ASPM L1,软件通过配置USP的寄存器直接发起DLLP包,不需要等待超时后再发起。
需要注意的是,ASPM方法的具体实现方式取决于USP和DSP之间的协商过程。
无论是PCI-PM方法还是ASPM方法,进入L1状态都需要以下协商过程:
USP发起请求:USP通过上述三种方法中的一种发起请求,执行进入Electrical Idle前的准备工作。
DLLP包的交互:
L1状态确认:双方物理层同时进入Electrical Idle状态,LTSSM进入L1状态。
退出L1状态是指PCIe端口从低功耗状态返回到活动状态的过程。退出L1状态的方法主要有以下两种:
软件发起CfgWr命令:软件配置USP的PMCSR PowerState为D0。
硬件具体过程:
CfgWr成功配置:双方重新link到L0状态,PMCSR中的PowerState配置成功应用到USP(EP)的PMCSR。
USP配置寄存器发起PME Message:USP通过配置寄存器发送PME Message。
硬件具体过程:
PME Message成功发送:双方重新link到L0状态,PME Message成功发送给DSP(RC)。
隐式路由和软件处理:
软件清除配置:软件利用PME Message包中的Requester ID发送CfgRd命令,清除PMCSR中的PME_Status配置,并将PowerState配置为D0。
L1状态下,Transmitter和Receiver同时进入Electrical Idle状态。Electrical Idle状态的具体实现对于Transmitter和Receiver有以下要求:
Transmitter进入Electrical Idle前,需要发送EIOS(Electrical Idle Output Signal),并将TX driver设为输入三态模式。EIOS的具体格式和发送要求可参考PCIe Spec 5.0 Table 4-10和Table 4-11。
对于不同速率的Transmitter,退出Electrical Idle的方式有所不同:
EIEOS的具体格式可参考PCIe Spec 5.0 Table 4-12。
Receiver进入Electrical Idle的过程如下:
Receiver退出Electrical Idle的过程如下:
需要注意的是,在Electrical Idle状态下,Transmitter可以处于高阻抗模式或低阻抗模式,而Receiver必须一直处于低阻抗模式。
通过以上详细分析,可以看出,PCIe L1低功耗状态的实现涉及多个层面的协商和协议交互。理解这些协议和流程对于优化PCIe系统的功耗管理具有重要意义。
转载地址:http://kovfk.baihongyu.com/