0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一文搞懂ARM SoC功耗控制架构

Linux阅码场 来源: 黑客与摄影师 作者: 黑客与摄影师 2022-11-30 09:05 次阅读

1, 介绍

随着芯片的集成化程度提升,很多模块都做到芯片的内部,比如isp、dspgpu,这样做成片上系统(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的软硬件管理框架

基于ARM的功耗软、硬件管理框图:

d4b1d358-7043-11ed-8abf-dac502259ad0.png

首先用户发起的一些操作,通过用户空间的各service处理,会经过内核提供的sysfs,操作cpu hotplug、device pm、EAS、IPA等。在linux内核中,EAS(energy aware scheduling)通过感知到当前的负载及相应的功耗,经过cpu idle、cpu dvfs及调度选择idle等级、cpu频率及大核或者小核上运行。IPA(intrlligent power allocation)经过与EAS的交互,做热相关的管理。

Linux kernel中发起的操作,会经过电源状态协调接口(Power State Coordination Interface,简称PSCI),由操作系统无关的framework(ARM Trusted Firmware,简称ATF)做相关的处理后,通过系统控制与管理接口(System Control and Management Interface,简称SCMI),向系统控制处理器(system control processor,简称SCP)发起低功耗操作。SCP最终会控制芯片上的sensor、clock、power domain、及板级的pmic做低功耗相关的处理。

2.2 功耗控制框架

在SoC设计中,需要一个硬件模块能够配合操作系统的功耗管理软件或驱动,来完成顶层的功耗控制,这个硬件模块可以是硬件电路,也可以是一个低功耗的处理器。考虑到灵活性,这个硬件模块一般是一个微处理器核(比如cortex-M0)加上一些外围逻辑电路做成的功耗控制单元(SCP)。为了SCP能够完成SoC的功耗管理,又定义了一个功耗控制框架(power control framework,简称PCF),PCF包含了一些接口、组件、协议来配合SCP做整个SoC的功耗管理。

d4d1415c-7043-11ed-8abf-dac502259ad0.png

PCF是用于构建SoC功耗管理所需的标准基础设施组件、接口和相关操作方法集合。其中,标准基础设计组件包括电源、时钟和接口组件。比如:支持SCP通过软件接口编程的电源策略单元(power policy unit,简称PPU),用于低功耗控制的低功耗接口(low power interface,简称LPI)。

1) PPU

PPU实现了软件控制power domain开关控制的功能,SCP向PPU发起对power domain的开、关操作,其中PPU会通过LPI向power domain发起复位/解复位、时钟开/关、电源隔离开/关的操作,然后PPU经由电源控制系统状态机(power control state machine,简称PCSM)控制power domain电的开、关。

d504ef0c-7043-11ed-8abf-dac502259ad0.png

2) LPI

LPI主要是指ARM的Q-channel和P-channel。Q-channel是ARM公司定义的一个低功耗接口,接口很简单,只有四根线。从AXI的低功耗接口演变过来的,其用处是控制设备静止状态时的时钟和电源。

控制器可以根据设备的工作状态或系统状态,发起低功耗请求。设备可以根据自己的工作状态,从而决定是否接受请求。相比Q-channel,P-channel把PACTIVE信号加宽了,不再是一根信号,设备可以传递更多的工作状态给控制器。控制器会额外多发出一组PSTATE信号,描述切换power状态的请求。

d513f538-7043-11ed-8abf-dac502259ad0.png

2.3 电源域和电压域

为了更好地对电进行控制,ARM划分了两个电相关的概念:电源域(power domain)和电压域(voltage domain)。电压域指使用同一个电压源的模块合集,如果几个模块使用相同的电压源,就认为这几个模块属于同一个电压域。电源域指的是在同一个电压域内,共享相同电源开关逻辑的模块合集。即在同一个电源域的模块被相同的电源开关逻辑控制,同时上、下电。一个电压域内的模块,可以根据设计需求,拆分到不同电源域。因此,电压域对应的是功能是dvfs,而电源域的概念对应的是power gating。

如下图,不同颜色表示不同的电压域,VBIG是大核处理器的电源供电,VLITTLE是小核处理器的电源供电,VGPU是图形处理器的电源供电,VSYS是系统电源。虚线框包围的模块表示可以做电源开关处理,比如处理器核。实线框包围的模块表示不能做电源开关,比如SCP。

d5415f50-7043-11ed-8abf-dac502259ad0.png

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ARM
    ARM
    +关注

    关注

    134

    文章

    9073

    浏览量

    367235
  • soc
    soc
    +关注

    关注

    38

    文章

    4149

    浏览量

    218080
  • Linux
    +关注

    关注

    87

    文章

    11261

    浏览量

    209209

原文标题:一文搞懂ARM SoC功耗控制架构

文章出处:【微信号:LinuxDev,微信公众号:Linux阅码场】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Arm SoC芯片低功耗设计分享会在深圳成功举办

    程师了解更多相关低功耗软硬件设计方面的威廉希尔官方网站 。 功耗SoC个核心指标,不管是MCU芯片,还是手机芯片,芯片设计工程师都在想尽办法减少芯片的功耗
    发表于 05-28 09:35 1545次阅读

    ARM内核架构SOC架构相关资料分享

    注:本文资料全部来源于网络或书籍,同时加上个人理解。若有侵权,告知即删。若有错误,留言商讨。0、ARM处理器功能扩展和架构演变1、cortex A9 (ARMv7指令集)-----传说中的CPU2、Exynos4412芯片框图-----传说中的
    发表于 07-01 11:16

    搞懂UPS主要内容

    导读:UPS是系统集成项目中常用到的设备,也是机房必备的设备。本文简单介绍了UPS的种类、功能、原理,品质选择与配置选择方式,基础维护等相关的内容。搞懂UPS本文主要内容:UPS种类、功能
    发表于 09-15 07:49

    萌新求助,求ARM内核架构SOC架构的详细资料

    萌新求助,求ARM内核架构SOC架构的详细资料
    发表于 10-25 06:12

    帮你梳理Cortex与ARMv8等基础概念

    到底什么是Cortex、ARMv8、arm架构ARM指令集、soc帮你梳理基础概念【科普
    发表于 12-14 08:20

    SOC与微架构架构SOC有什么区别?

    读书笔记 SOC与微架构架构SOC有什么区别?指令集和微架构有什么关系?为什么Cortex-M系列没有Chace?现代
    发表于 12-15 06:39

    ARM GIC()之ARM soc中断的处理介绍

    对于ARM的处理器,中断给处理器提供了触觉,使处理器能够感知到外界的变化,从而实时的处理。本系列博,是以ARM cortex-A系列处理器,来介绍ARM
    发表于 04-06 10:12

    Arm 用新的 SoC 和演示板测试安全架构

    Morello SoC.作为这个项目的部分,Arm 公司现在已经使用基于 CHERI 的 Morello 原型架构构建了个系统芯片(
    发表于 06-16 14:44

    Arm CoreSight SoC-600威廉希尔官方网站 参考手册

    。 ·通过架构的细粒度电源控制支持低功耗系统实现开发的组件。 ·用于时钟和电源静止的Q通道接口。 ·可与ARM®CoreLink™LPD-500集成,作为全芯片电源和时钟
    发表于 08-17 07:45

    谈谈Zynq SoCARM NEON SIMD架构扩展集的使用

    在所有Zynq All Programmable SoC 的内部, 你都会发现个双核的ARM Cortex -A9 MPCore处理器,而且Zynq SoC中的这两个处理器中都设有
    发表于 02-10 12:15 2716次阅读
    谈谈Zynq <b class='flag-5'>SoC</b>里<b class='flag-5'>ARM</b> NEON SIMD<b class='flag-5'>架构</b>扩展集的使用

    基于ARM的用户可定制SoC

    SoC使用宽带互联干线链接,在FPGA架构中集成了基于ARM的硬核处理器系统(HPS),包括双核ARM。处理器、外设和存储器控制器。
    发表于 03-22 13:34 7次下载

    看懂arm架构和x86架构有什么区别

    本文主要介绍的是arm架构和x86架构的区别,首先介绍了ARM架构图,其次介绍了x86架构图,最
    的头像 发表于 05-16 14:19 31.2w次阅读
    <b class='flag-5'>一</b><b class='flag-5'>文</b>看懂<b class='flag-5'>arm</b><b class='flag-5'>架构</b>和x86<b class='flag-5'>架构</b>有什么区别

    全新 Arm IP Explorer 平台助力 SoC 架构师与设计厂商加速 IP 选择

    Arm 推出全新 Arm IP Explorer 平台,该平台是套由 Arm 提供的云平台服务,旨在为基于 Arm
    的头像 发表于 07-26 16:25 518次阅读

    英特尔与Arm联手助力初创企业开发Arm架构SoC

    据介绍,此次合作旨在联合推动使用Intel 18A制程工艺研发Arm架构SoC的初创企业发展。英特尔和Arm将携手提供IP和制造及相关金融支持,助力初创企业持续进行创新和增长。这些企业
    的头像 发表于 03-25 15:34 392次阅读

    看懂SoC架构

    SoC 架构图:核心功能和设计目标 SoC 是基于通用处理器这样的思路进行设计的,与 PC 设计思路样。即通用处理器是由 CORE +
    的头像 发表于 11-29 09:57 455次阅读
    <b class='flag-5'>一</b><b class='flag-5'>文</b>看懂<b class='flag-5'>SoC</b>的<b class='flag-5'>架构</b>