power state由于aarch64架構(gòu)有多種不用的電源狀態(tài),不同電源狀態(tài)的功耗和喚醒延遲不同。
如standby狀態(tài)會(huì)關(guān)閉power domain的clock,但并不關(guān)閉電源。因此它雖然消除了門電路翻轉(zhuǎn)引起的動(dòng)態(tài)功耗,但依然存在漏電流等引起的靜態(tài)功耗。故其功耗相對(duì)較大,但相應(yīng)地喚醒延遲就比較低。
而對(duì)于power down狀態(tài),會(huì)斷開對(duì)應(yīng)power domain的電源,因此其不僅消除了動(dòng)態(tài)功耗,還消除了靜態(tài)功耗,相應(yīng)地其喚醒延遲就比較高了。
psci一共為power domain定義了四種power state:
(1)run:電源和時(shí)鐘都打開,該domain正常工作
(2)standby:關(guān)閉時(shí)鐘,但電源處于打開狀態(tài)。其寄存器狀態(tài)得到保存,打開時(shí)鐘后就可繼續(xù)運(yùn)行。功耗相對(duì)較大,但喚醒延遲較低。arm執(zhí)行wfi或wfe指令會(huì)進(jìn)入該狀態(tài)。
(3)retention:它將core的狀態(tài),包括調(diào)試設(shè)置都保存在低功耗結(jié)構(gòu)中,并使其部分關(guān)閉。其狀態(tài)在從低功耗變?yōu)檫\(yùn)行時(shí)能自動(dòng)恢復(fù)。從操作系統(tǒng)角度看,除了進(jìn)入方法、延遲等有區(qū)別外,其它都與standby相同。它的功耗和喚醒延遲都介于standby和power down之間。
(4)power down:關(guān)閉時(shí)鐘和電源。power domain掉電后,所有狀態(tài)都丟失,上電以后軟件必須重新恢復(fù)其狀態(tài)。它的功耗最低,但喚醒延遲也相應(yīng)地最高。
(這里我很好奇怎么和linux的s3、s4對(duì)應(yīng)的。當(dāng)時(shí)測試s3的時(shí)候,對(duì)應(yīng)的是suspend。這里的對(duì)于cpu的有off、on、suspend三種,我覺得這里應(yīng)該就是對(duì)于的standby,因?yàn)橛衱fi或wfe這些指令。那s4就是CPU off了?可以看一下這個(gè)有點(diǎn)認(rèn)識(shí),突然想到psci里面的狀態(tài)是對(duì)于的cpu為對(duì)象,但是linux的電源管理應(yīng)該是對(duì)整個(gè)設(shè)備。)
顯然,power state的睡眠程度從run到power down逐步加深。而高層級(jí)power domain的power
state不應(yīng)低于低層級(jí)power domain。
如以上例子中core 0 – core 2都為power down狀態(tài),而core 3為standby狀態(tài),則cluster 0不能為retention或power down狀態(tài)。同樣若cluster 0為standby狀態(tài),而cluster 1為run狀態(tài),則整個(gè)系統(tǒng)必須為run狀態(tài)。
為了達(dá)到上述約束,不同power domain之間的power state具有以下關(guān)系:
這里解釋了psci那個(gè)源碼文檔里電源樹的概念。
psci實(shí)現(xiàn)了父leve與子level之間的電源關(guān)系協(xié)調(diào),如cluster 0中最后一個(gè)core被設(shè)置為power
down狀態(tài)后,psci就會(huì)將該cluster也設(shè)置為power donw狀態(tài)。若其某一個(gè)core被設(shè)置為run狀態(tài),則psci會(huì)先將其對(duì)應(yīng)cluster的狀態(tài)設(shè)置為run,然后再設(shè)置對(duì)應(yīng)core的電源狀態(tài),這也是psci名字的由來(power state coordinate interface)
-
電源
+關(guān)注
關(guān)注
184文章
17851瀏覽量
252000 -
cpu
+關(guān)注
關(guān)注
68文章
10911瀏覽量
213150 -
Linux
+關(guān)注
關(guān)注
87文章
11351瀏覽量
210512 -
SMP
+關(guān)注
關(guān)注
0文章
76瀏覽量
19758
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
介紹關(guān)于編程的基礎(chǔ)知識(shí)
介紹PLC的原理及基礎(chǔ)知識(shí)
ARM電源管理中的PSCI是什么意思呢
電源的分類和相關(guān)基礎(chǔ)知識(shí)
開關(guān)電源基礎(chǔ)知識(shí)
電源管理基礎(chǔ)知識(shí)電源管理基礎(chǔ)知識(shí)電源管理基礎(chǔ)知識(shí)
![<b class='flag-5'>電源</b>管理<b class='flag-5'>基礎(chǔ)知識(shí)</b><b class='flag-5'>電源</b>管理<b class='flag-5'>基礎(chǔ)知識(shí)</b><b class='flag-5'>電源</b>管理<b class='flag-5'>基礎(chǔ)知識(shí)</b>](https://file.elecfans.com/web2/M00/49/C3/pYYBAGKhvFqABdB4AAAacroJI7Q433.png)
DC-DC電源基礎(chǔ)知識(shí)
![DC-DC<b class='flag-5'>電源</b><b class='flag-5'>基礎(chǔ)知識(shí)</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
開關(guān)電源基礎(chǔ)知識(shí)
![開關(guān)<b class='flag-5'>電源</b><b class='flag-5'>基礎(chǔ)知識(shí)</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評(píng)論