1, 介绍
随着芯片的集成化程度提升,很多模块都做到芯片的内部,比如isp、dsp、gpu,这样做成片上系统(System on Chip,简称SoC),好处是整个系统功能更内聚,板级面积会减少,但是芯片的体积却越来越大。
为了减少芯片面积、降低芯片成本、减少芯片功耗,逐渐地提升了芯片的工艺,从而降低了功耗,提升了能耗比。光靠工艺的提升来减少功耗,还不够。为了更好地功耗管理,ARM提出了功耗控制系统架构(power control system architecture,简称PCSA),用来规范芯片功耗控制的逻辑实现。
PCSA基于ARM的组件实现,规范包括:电压、电源和时钟的划分;电源的状态和模式;ARM电源控制框架和集成规范;ARM特定组件的电源和时钟集成;带有低功耗Q-channel和P-channel接口的IP。
前面的文章讲述了linux侧的功耗软件管理框架(详见前面的文章《一文搞懂linux电源管理(合集)》),但是这些软件功耗管理都是基于芯片的相应功能实现的,接下来我们看一看这个PCSA具体由哪些部分组成,通过这些组成与整个功耗控制框架的学习,了解芯片上的低功耗是如何设计的。
2, 框架
2.1 基于ARM的软硬件管理框架
1) PPU
PPU实现了软件控制power domain开关控制的功能,SCP向PPU发起对power domain的开、关操作,其中PPU会通过LPI向power domain发起复位/解复位、时钟开/关、电源隔离开/关的操作,然后PPU经由电源控制系统状态机(power control state machine,简称PCSM)控制power domain电的开、关。
2.3 电源域和电压域
为了更好地对电进行控制,ARM划分了两个电相关的概念:电源域(power domain)和电压域(voltage domain)。电压域指使用同一个电压源的模块合集,如果几个模块使用相同的电压源,就认为这几个模块属于同一个电压域。电源域指的是在同一个电压域内,共享相同电源开关逻辑的模块合集。即在同一个电源域的模块被相同的电源开关逻辑控制,同时上、下电。一个电压域内的模块,可以根据设计需求,拆分到不同电源域。因此,电压域对应的是功能是dvfs,而电源域的概念对应的是power gating。
如下图,不同颜色表示不同的电压域,VBIG是大核处理器的电源供电,VLITTLE是小核处理器的电源供电,VGPU是图形处理器的电源供电,VSYS是系统电源。虚线框包围的模块表示可以做电源开关处理,比如处理器核。实线框包围的模块表示不能做电源开关,比如SCP。

参考资料:
Low Power Design in SoC Using Arm IP (design-reuse.com)
ARM Cortex-A57 MPCore Processor Technical Reference Manual r1p3
ARM系列 – PCSA(一) – 极术 区 – 连接开发者与智能计算生态 (aijishu.com)
文章知识点与官方知识档案匹配,可进一步学习相关知识CS入门技能树Linux入门初识Linux24799 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!