查看: 986|回复: 0

[分享] 浅析RT1170的功耗管理

[复制链接]
  • TA的每日心情
    慵懒
    昨天 21:19
  • 签到天数: 1210 天

    [LV.10]以坛为家III

    22

    主题

    4763

    帖子

    0

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    8080

    活跃会员

    最后登录
    2024-4-25
    发表于 2021-5-13 09:36:54 | 显示全部楼层 |阅读模式
    序言
    MCU中,功耗管理要解决的问题本质就是省电。
    如果不考虑省电的问题,就可以一直在最高性能的方式运行。
    为了省电,我们最常见手段就是关时钟和关电源。
    对于CPU,可以把CPU停下来,禁止它运行。
    基本概念篇
    概念一:
    RT1170的功耗模式涉及3个方面:
    1.CPU的模式(Run/Wait/Stop/Suspend)
    2.Set point(SP)的模式(0-15)
    3.Stand by模式
    常规MCU是没有SP的,SP是RT1170的一个专有概念。
    SP定义了各个资源的状态,进入到某一个SP,各资源就会按照该SP的定义进入相应的状态,比如是不是关时钟,是不是关电源等。
    而Standby 可以理解为一个超级低功耗模式。
    概念二:
    就是关于资源,有4种属性:Public/Private/Shared/Unassigned.
    这样不同的资源,可以跟随CPU的状态,也可以跟随SP的状态,常见下图。
    Private资源跟随CPU, Public资源跟随SP,Shared资源跟随CPU或者SP。
    1.jpg
    其它基本概念:
    关键术语
    GPC: General Power Control
    CMC: CPU mode control
    SSARC: State save and restore
    UPI: Unified power management interface
    Share Resource 的仲裁算法
    1. 提供目标SP和可接受SP。
    2. 如果目标SP能进,就进目标SP。
    3. 如果目标SP进不去,就在可接受SP里面选。
    4. 选的时候根据优先级配置,优先选高优先级的配置。
    5. 如果优先级一样,选SP编号大的。
    Stand by模式
    Stand by的转换时间比SP的转换时间短
    Stand by由CMC发起。
    CPU只有在Sleep模式下,才能进Stand by。
    SP的转换过程不能被Wake up流程打断,Stand by的转换过程可以Wake up流程被打断。

    功耗状态转换的步骤
    1.配置好目标CPU状态和SP状态
    2.执行WFI/WFE,此时CPU和SP会按1的配置切状态
        -CPU状态切换
            -SSARC保存数据
            -CPU以及private资源关时钟,
            -CPU以及private资源关电源
        -SP状态切换
            -public资源关时钟
            -public资源关电源
    3.系统进入低功耗等待唤醒
    4.唤醒
        -SP状态切换
            -public资源开电源
            -public资源开时钟
        -CPU状态切换
            -CPU以及private资源开电源
            -CPU以及private资源开时钟
            -SSARC恢复数据
    系统的功耗管理框图:
    2.jpg
    CMC支持的RUN/WAIT/STOP/SUSPEND的管理:
    3.jpg
    说明:
    WAIT下CPU时钟关了,外设还能工作。
    STOP下CPU和外设都关了时钟不能工作,但是没有断电,唤醒不需要重新初始化外设。
    SUSPEND要断外设的电,所以外设的状态需要保存,唤醒的时候恢复外设的状态。









    该会员没有填写今日想说内容.
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2024-4-26 08:20 , Processed in 0.108764 second(s), 20 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表