l1ss


每個component必須上報它支持ASPM的程度,以及L0s和L1的退出latency(從L0s/L1到L0所需的時間)。endpoint必須報告它能承受的最差latency,例如因為L0s/L1到L0的轉換時延導致的內部FIFO 溢出(overrun)。 Power management軟件可以利用各component提供的信息來進行合適的aspm。

PM L1ss:

首先得enable PM L1.1或者PM L1.2,在進入L1之后,通過CLKREQ#來進入L1.1或L.2, CLKREQ#也用來退出L1ss。注意CLKREQ#是個open-drain三態雙向端口,當有一端將其拉低,則CLKREQ#為低。如果兩端都不drive CLKREQ#,則為高,表明可以關斷REFCLK。注意進入L1的請求是由upstream端口發起。

當link處在PCI-PM L1.0,且PCI_PM L1.2 enable位已被設置,如果CLKREQ#被拉高,則必須進入L1.2;

當link處在PCI-PM L1.0,且PCI_PM L1.1 enable位已被設置,如果CLKREQ#被拉高且PCI_PM L1.2沒被enable,則必須進入L1.1;

 

支持ASPM L1.2的端口必須支持Latency Tolerance Reporting (LTR)。

當link處在ASPM L1.0,且ASPM L1.2 enable位已被設置,當CLKREQ#被拉高后,如果下面兩個條件都滿足,就會進入ASPM L1.2:

1. 上報的snooped LTR值大於或等於LTR_L1.2_THRESHOLD中的value和scale確定的值,或者沒有snoop service latency的需求;

2. 上報的non-snooped LTR值大於或等於LTR_L1.2_THRESHOLD中的value和scale確定的值,或者沒有non-snoop service latency的需求。

 

當link處在ASPM L1.0,且ASPM L1.1 enable位已被設置,當CLKREQ#被拉高后,如果不滿足進入L1.2的條件,就會進入ASPM L1.1.

 

當進入L1.2的條件已經滿足,則:

1.upstream和downstream端口都必須監測CLKREQ#的邏輯狀態;

2. upstream端口在進入L1.0前不能拉高CLKREQ#;

3. 允許任何端口將CLKREQ#拉低來阻止link進入L1.2;

4. 當CLKREQ#被拉高,端口進入L1.2.Entry.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM