1, 介紹
隨著芯片的集成化程度提升,很多模塊都做到芯片的內(nèi)部,比如isp、dsp、gpu,這樣做成片上系統(tǒng)(System on Chip,簡稱SoC),好處是整個系統(tǒng)功能更內(nèi)聚,板級面積會減少,但是芯片的體積卻越來越大。為了減少芯片面積、降低芯片成本、減少芯片功耗,逐漸地提升了芯片的工藝,從而降低了功耗,提升了能耗比。光靠工藝的提升來減少功耗,還不夠。為了更好地功耗管理,ARM提出了功耗控制系統(tǒng)架構(gòu)(power control system architecture,簡稱PCSA),用來規(guī)范芯片功耗控制的邏輯實(shí)現(xiàn)。
PCSA基于ARM的組件實(shí)現(xiàn),規(guī)范包括:電壓、電源和時鐘的劃分;電源的狀態(tài)和模式;ARM電源控制框架和集成規(guī)范;ARM特定組件的電源和時鐘集成;帶有低功耗Q-channel和P-channel接口的IP。
前面的文章講述了linux側(cè)的功耗軟件管理框架(詳見前面的文章《一文搞懂linux電源管理(合集)》),但是這些軟件功耗管理都是基于芯片的相應(yīng)功能實(shí)現(xiàn)的,接下來我們看一看這個PCSA具體由哪些部分組成,通過這些組成與整個功耗控制框架的學(xué)習(xí),了解芯片上的低功耗是如何設(shè)計(jì)的。
2, 框架
2.1 基于ARM的軟硬件管理框架
基于ARM的功耗軟、硬件管理框圖:
首先用戶發(fā)起的一些操作,通過用戶空間的各service處理,會經(jīng)過內(nèi)核提供的sysfs,操作cpu hotplug、device pm、EAS、IPA等。在linux內(nèi)核中,EAS(energy aware scheduling)通過感知到當(dāng)前的負(fù)載及相應(yīng)的功耗,經(jīng)過cpu idle、cpu dvfs及調(diào)度選擇idle等級、cpu頻率及大核或者小核上運(yùn)行。IPA(intrlligent power allocation)經(jīng)過與EAS的交互,做熱相關(guān)的管理。
Linux kernel中發(fā)起的操作,會經(jīng)過電源狀態(tài)協(xié)調(diào)接口(Power State Coordination Interface,簡稱PSCI),由操作系統(tǒng)無關(guān)的framework(ARM Trusted Firmware,簡稱ATF)做相關(guān)的處理后,通過系統(tǒng)控制與管理接口(System Control and Management Interface,簡稱SCMI),向系統(tǒng)控制處理器(system control processor,簡稱SCP)發(fā)起低功耗操作。SCP最終會控制芯片上的sensor、clock、power domain、及板級的pmic做低功耗相關(guān)的處理。
2.2 功耗控制框架
在SoC設(shè)計(jì)中,需要一個硬件模塊能夠配合操作系統(tǒng)的功耗管理軟件或驅(qū)動,來完成頂層的功耗控制,這個硬件模塊可以是硬件電路,也可以是一個低功耗的處理器??紤]到靈活性,這個硬件模塊一般是一個微處理器核(比如cortex-M0)加上一些外圍邏輯電路做成的功耗控制單元(SCP)。為了SCP能夠完成SoC的功耗管理,又定義了一個功耗控制框架(power control framework,簡稱PCF),PCF包含了一些接口、組件、協(xié)議來配合SCP做整個SoC的功耗管理。
PCF是用于構(gòu)建SoC功耗管理所需的標(biāo)準(zhǔn)基礎(chǔ)設(shè)施組件、接口和相關(guān)操作方法集合。其中,標(biāo)準(zhǔn)基礎(chǔ)設(shè)計(jì)組件包括電源、時鐘和接口組件。比如:支持SCP通過軟件接口編程的電源策略單元(power policy unit,簡稱PPU),用于低功耗控制的低功耗接口(low power interface,簡稱LPI)。
1) PPU
PPU實(shí)現(xiàn)了軟件控制power domain開關(guān)控制的功能,SCP向PPU發(fā)起對power domain的開、關(guān)操作,其中PPU會通過LPI向power domain發(fā)起復(fù)位/解復(fù)位、時鐘開/關(guān)、電源隔離開/關(guān)的操作,然后PPU經(jīng)由電源控制系統(tǒng)狀態(tài)機(jī)(power control state machine,簡稱PCSM)控制power domain電的開、關(guān)。
2) LPI
LPI主要是指ARM的Q-channel和P-channel。Q-channel是ARM公司定義的一個低功耗接口,接口很簡單,只有四根線。從AXI的低功耗接口演變過來的,其用處是控制設(shè)備靜止?fàn)顟B(tài)時的時鐘和電源。
控制器可以根據(jù)設(shè)備的工作狀態(tài)或系統(tǒng)狀態(tài),發(fā)起低功耗請求。設(shè)備可以根據(jù)自己的工作狀態(tài),從而決定是否接受請求。相比Q-channel,P-channel把PACTIVE信號加寬了,不再是一根信號,設(shè)備可以傳遞更多的工作狀態(tài)給控制器。控制器會額外多發(fā)出一組PSTATE信號,描述切換power狀態(tài)的請求。
2.3 電源域和電壓域
為了更好地對電進(jìn)行控制,ARM劃分了兩個電相關(guān)的概念:電源域(power domain)和電壓域(voltage domain)。電壓域指使用同一個電壓源的模塊合集,如果幾個模塊使用相同的電壓源,就認(rèn)為這幾個模塊屬于同一個電壓域。電源域指的是在同一個電壓域內(nèi),共享相同電源開關(guān)邏輯的模塊合集。即在同一個電源域的模塊被相同的電源開關(guān)邏輯控制,同時上、下電。一個電壓域內(nèi)的模塊,可以根據(jù)設(shè)計(jì)需求,拆分到不同電源域。因此,電壓域?qū)?yīng)的是功能是dvfs,而電源域的概念對應(yīng)的是power gating。
如下圖,不同顏色表示不同的電壓域,VBIG是大核處理器的電源供電,VLITTLE是小核處理器的電源供電,VGPU是圖形處理器的電源供電,VSYS是系統(tǒng)電源。虛線框包圍的模塊表示可以做電源開關(guān)處理,比如處理器核。實(shí)線框包圍的模塊表示不能做電源開關(guān),比如SCP。
審核編輯:湯梓紅
-
ARM
+關(guān)注
關(guān)注
134文章
9180瀏覽量
369455 -
soc
+關(guān)注
關(guān)注
38文章
4212瀏覽量
219192 -
Linux
+關(guān)注
關(guān)注
87文章
11351瀏覽量
210510
原文標(biāo)題:一文搞懂ARM SoC功耗控制架構(gòu)
文章出處:【微信號:LinuxDev,微信公眾號:Linux閱碼場】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
Arm SoC芯片低功耗設(shè)計(jì)分享會在深圳成功舉辦
ARM內(nèi)核架構(gòu)和SOC架構(gòu)相關(guān)資料分享
一文搞懂UPS主要內(nèi)容
萌新求助,求ARM內(nèi)核架構(gòu)和SOC架構(gòu)的詳細(xì)資料
一文幫你梳理Cortex與ARMv8等基礎(chǔ)概念
SOC與微架構(gòu)微架構(gòu)與SOC有什么區(qū)別?
ARM GIC(一)之ARM soc中斷的處理介紹
Arm 用新的 SoC 和演示板測試安全架構(gòu)
Arm CoreSight SoC-600技術(shù)參考手冊
談?wù)刏ynq SoC里ARM NEON SIMD架構(gòu)擴(kuò)展集的使用
![談?wù)刏ynq <b class='flag-5'>SoC</b>里<b class='flag-5'>ARM</b> NEON SIMD<b class='flag-5'>架構(gòu)</b>擴(kuò)展集的使用](https://file1.elecfans.com//web2/M00/A6/AA/wKgZomUMP3-AX6hUAAAUlfHRrY8632.jpg)
基于ARM的用戶可定制SoC
一文看懂arm架構(gòu)和x86架構(gòu)有什么區(qū)別
![<b class='flag-5'>一</b><b class='flag-5'>文</b>看懂<b class='flag-5'>arm</b><b class='flag-5'>架構(gòu)</b>和x86<b class='flag-5'>架構(gòu)</b>有什么區(qū)別](https://file.elecfans.com/web1/M00/50/D9/o4YBAFr7zl2AGVr8AABPkxqzXZA667.jpg)
全新 Arm IP Explorer 平臺助力 SoC 架構(gòu)師與設(shè)計(jì)廠商加速 IP 選擇
英特爾與Arm聯(lián)手助力初創(chuàng)企業(yè)開發(fā)Arm架構(gòu)SoC
一文看懂SoC的架構(gòu)
![<b class='flag-5'>一</b><b class='flag-5'>文</b>看懂<b class='flag-5'>SoC</b>的<b class='flag-5'>架構(gòu)</b>](https://file1.elecfans.com/web3/M00/00/66/wKgZPGdJIByABM_KAAAhwg7WZ-w882.png)
評論