当前位置: 首页 > 工具软件 > pmu-tools > 使用案例 >

SoC模块中的PMU如何调节为低功耗模式(原理)

卢知
2023-12-01

今天开始看某厂家新Cortext A架构的datasheet,总结下PMU模块的作用。

SoC外围PMU

一般高性能芯片都会提供几个模式,如正常模式和低功耗模式。低功耗模式中,SoC会关闭一些接口资源,内部处理器等。就以CortextA的方案来说,从整体上看,方案耗电的主要包括SoC,DDR,PMU,LCD。而低功耗必然先把SoC的外围芯片和器件的电压和电流降低(DDR会这样做),甚至关闭(如LCD)。这一步通过电源芯片PMU实现,一般SoC会通过I2C去控制PMU,进入相应的低功耗模式。这时候,外围已经睡着了,但是SoC还是醒着,所以SoC的Datasheet会提供一章PMU,虽然名字也是PMU,但这是SoC片内PMU,不是电源管理芯片。

SoC片内PMU

那这个片内PMU是干吗的呢?SoC芯片设计的时候,会把不同的功能分为模块,例如GPU/CPU/SRAM(内部Memory)/CRU(时钟复位器)/PERI(控制外围接口)/Bus内部总线/视频处理模块等。片内PMU的功能是把不需要的部分的电源切断,例如,待机时候,不需要GPU/部分外围IO/视频处理模块/多核CPU可以关闭几个,留一个活口作响应就行。这样,片内PMU的作用就显现了,可以显著降低功耗。

SoC内部功率消耗的模块包括:

1.CPU Core——可以调解频率和核数

2.GPU——同上

3.slew rate——电压转换速率,暂时不清楚其作用

4.GPIO A/B/C/D——这有几十个管脚,省电作用可观。

5.其它——待统计


通过I2C或者SPI等芯片通信接口,控制SoC外部功耗模块

1.DDR

2.PMU

3.LCD

4.WIFI/BlueTooth/2G/3G/4G模块

5.Camera

6.etc——待统计


外部PMU和内部PMU都是通过寄存器配置的,可参考datasheet,写的很清楚,会告诉你 哪个寄存器对应的地址是什么控制器,然后会告诉你这个控制器该填什么值。只不过外部PMU的寄存器地址和内部PMU是不同的,外部PMU寄存器地址可能要参照PMU厂家的。不过现在一般都是厂家根据寄存器写好了驱动,我们可以不管这一块。


通常,这些都是PMU厂家和SoC厂家关注的,对于普通开发者,了解下其原理也好。

 类似资料: