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

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

3天内不再提示

使用嵌入式Linux的动态电源管理策略

星星科技指导员 来源:嵌入式计算设计 作者:Troy Kitch 2022-06-22 11:07 次阅读

设备制造商正面临挑战,因为消费者要求其设备具有完整的功能,而移动设备正变得越来越复杂和功能丰富。除了完整的功能外,消费者还希望获得持久电池寿命的便利。不幸的是,对于设备制造商来说,这两个设计目标只能以相互为代价来实现。当开发人员被拉向这两个不同的方向时,可以做些什么来减轻他们的痛苦?

当设计团队试图将两者都提供给要求苛刻的消费者时,性能与节能的二分法可能会令人抓狂。满足这些要求意味着不断突破性能的界限,同时从其构建中挤出每一点电池寿命。幸运的是,设计团队拥有触手可及的资源,使他们能够做到这一点。以下讨论提供了有关设备制造商如何通过嵌入式 Linux 的动态电源管理功能最大限度地节省手持设备的功耗的见解。

电源管理案例

电源管理是一个系统范围的设计目标,需要硬件、内核和用户空间应用程序的协调与合作。通过在 CPU 处于活动状态以及处于非活动状态时提供节能选项,Linux 为工程师提供了多种工具,使他们能够在设计构建中最大限度地节能。

但为什么电源管理如此重要?首先,电源管理功能是消费者的首要任务。无论设备的最终用途如何,无论是语音、视频、音乐还是 Web 访问,最终用户都希望他们的移动设备具有持久的电池寿命。因为电源管理对于想要在市场上获胜的制造商来说是必不可少的,所以他们必须将长电池寿命作为首要功能。工程师实现这些期望的能力可以在赢得市场和成为失败者之间产生差异。

制定一个可靠的电源管理策略以最大限度地节省功耗是设计过程早期的关键步骤。这个想法是以对最终用户透明的方式来计划节能。鉴于节能方法总是以性能或功能换取能源,因此必须制定明确的战略。一些成功的设计工程师这样做的方法是在处理器不忙时缩减性能,或者在不使用外设时将其置于待机模式。

全球视野

在制定电源管理策略时,重要的是要全面了解功耗,以节省时间并尽可能节省电能。关注系统中所有的耗电大户,而不是对已经提供足够回报的算法进行复杂的优化,从而获得更好的努力回报。

例如,想想普通移动设备的主要功耗来源。细分表明,片上系统 (SoC) 只是整个战略的一个组成部分。完整的功率图包括其他大量能源消耗,包括背光、DC-DC 转换器功率放大器等。

CPU 是嵌入式系统中功耗的主要来源,必须仔细调节其功耗以实现激进的电源管理目标,例如延长电池寿命。CPUfreq 和 CPUidle 是 Linux 内核中的系统,它们通过称为动态电源管理(DPM) 的技术来管理 CPU 电源使用情况。

DPM 的前提是系统在运行期间会遇到不均匀的工作负载。因此,DPM 包含一组技术,通过选择性地关闭系统组件或在它们不是完全必要或满负荷需要时降低它们的性能来实现节能计算。CPUfreq 通过动态调整 CPU 的电压和频率以响应系统不断变化的性能要求,为节能设计提供了框架。CPUidle 控制当 CPU 无工作时进入哪个低功耗空闲状态。

制定计划:先 DPM,然后再深入

动态电源管理可以在设计过程中的两个关键点实现:CPU 处于活动状态和 CPU 处于非活动状态。

· 当 CPU 处于活动状态时:这可以使用称为负载缩放的技术来实现。在执行代码时动态调整处理器的电压/频率可以节省大量电力。使用称为调速器的插件控制算法,可以根据包括工作负载在内的任意数量的指标调整电压/频率。

· 当 CPU 处于非活动状态时:这可以通过另一种称为空闲缩放的技术来完成。空闲缩放涉及在系统空闲时进入处理器的低功耗状态之一,然后在有指令执行时返回到活动状态(由 CPUfreq 控制)。

为了获得最大效果,两种技术可以一起使用。可以想象,当同时应用空闲和负载扩展策略时,节能的潜力是巨大的。这两种策略都被证明是有效的;他们是真正的主力。

更深奥的策略会产生增量改进。这些通常不值得付出努力。当将称为应用程序扩展的策略应用于执行 MPEG-4 播放的嵌入式系统时,仅比负载扩展策略额外节省 4% 的功率。

应用程序缩放需要修改播放应用程序以实现一种称为提前工作的技术。解码完帧后,前处理算法立即开始在较低的操作点解码下一帧。它继续向前工作,在更节能的操作点解码未来的帧,直到它注意到它有错过最后期限的危险,此时它会将系统限制到更高的性能水平以迎头赶上。这种复杂的优化仅在负载缩放策略上实现了很小的功率节省。商业 Linux 解决方案为空闲和负载缩放技术提供了开箱即用的支持,这使设计人员能够自由地研究和降低系统其他部分的功耗。

提前规划电源

对电源管理的需求不会消失。相反,它正在成为移动设备设计中越来越重要的特征。采用强大的电源管理策略构建的设计团队可以利用 Linux 的功能来提供消费者所需的节能,而不必在性能方面做出不可接受的牺牲。

在设计过程的早期制定节能策略,从全局角度了解功耗,并在 CPU 处于活动状态和空闲状态时利用节能效果仅仅是开始。存在关于电源管理这一重要主题的其他注意事项和策略,因此请务必为即将开展的项目进一步研究这项技术。

审核编辑:郭婷

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

    关注

    115

    文章

    6133

    浏览量

    144029
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10794

    浏览量

    210664
  • Linux
    +关注

    关注

    87

    文章

    11191

    浏览量

    208628
收藏 人收藏

    评论

    相关推荐

    【北京迅为】i.mx8mm嵌入式linux开发指南第四篇 嵌入式Linux系统移植篇第六十九章uboot移植

    【北京迅为】i.mx8mm嵌入式linux开发指南第四篇 嵌入式Linux系统移植篇第六十九章uboot移植
    的头像 发表于 10-22 14:46 388次阅读
    【北京迅为】i.mx8mm<b class='flag-5'>嵌入式</b><b class='flag-5'>linux</b>开发指南第四篇 <b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b>系统移植篇第六十九章uboot移植

    【「嵌入式Hypervisor:架构、原理与应用」阅读体验】+全文学习心得

    Hypervisor的高级特性和优化策略。这些特性包括动态迁移、资源热插拔、动态电源管理等,它们为嵌入式
    发表于 10-09 19:11

    嵌入式主板是什么意思?嵌入式主板全面解析

    嵌入式主板,通常被称为嵌入式系统的核心组件,是一种用于控制和数据处理的计算机硬件,其设计旨在嵌入特定设备中执行专门任务。嵌入式主板如同是设备的“大脑”,主要功能是根据需要
    的头像 发表于 09-30 10:05 287次阅读

    嵌入式linux开发的基本步骤有哪些?

    嵌入式Linux开发是一个复杂的过程,涉及到硬件选择、操作系统移植、驱动开发、应用程序开发等多个方面。以下是嵌入式Linux开发的基本步骤,以及每个步骤的说明。 硬件选择 在开始
    的头像 发表于 09-02 09:11 324次阅读

    嵌入式linux开发板怎么操作

    嵌入式Linux开发板是一种基于Linux操作系统的嵌入式系统开发平台。它通常包括一个处理器、内存、存储器、输入/输出接口等硬件组件,以及一个基于L
    的头像 发表于 09-02 09:09 285次阅读

    嵌入式linux开发板芯片的工作原理

    嵌入式Linux开发板是一种基于Linux操作系统的嵌入式系统开发平台,它广泛应用于工业控制、智能家居、智能交通、医疗设备等领域。 嵌入式
    的头像 发表于 09-02 09:07 288次阅读

    学习hypervisor嵌入式产品安全设计

    Hypervisor的设计与实现,涵盖嵌入式Hypervisor架构与核心组件、中断隔离技术、内存隔离技术、循环表调度器、健康监控、分区间通信技术、内核资源管理模型、系统初始化过程、内核服务
    发表于 08-25 09:11

    【出版发行】嵌入式系统原理与开发——基于RISC-V和Linux系统

    【出版发行】嵌入式系统原理与开发——基于RISC-V和Linux系统
    的头像 发表于 07-26 08:36 229次阅读
    【出版发行】<b class='flag-5'>嵌入式</b>系统原理与开发——基于RISC-V和<b class='flag-5'>Linux</b>系统

    专家力荐|《嵌入式系统原理与开发——基于RISC-V和Linux系统》新书发售

    当前,嵌入式系统已成为智能设备的核心之一,RISC-V+Linux的开源力量为嵌入式系统注入强大的创新动力。作为中国RISC-V软硬件生态领导者,赛昉科技与业界专家合作推出《嵌入式系统
    的头像 发表于 07-24 08:20 454次阅读
    专家力荐|《<b class='flag-5'>嵌入式</b>系统原理与开发——基于RISC-V和<b class='flag-5'>Linux</b>系统》新书发售

    嵌入式设备中的4G/5G模块管理

    在高度数字化的智能时代,Linux嵌入式板卡在各个领域都发挥着重要作用,然而,随着4G/5G技术的普及,如何高效、稳定地管理这些嵌入式设备上的无线模块,成为了用户面临的一大挑战——
    发表于 07-13 16:45

    嵌入式软件开发应该掌握哪些知识?

    知识点学习 熟悉 Linux 的基本使用对于嵌入式软件开发至关重要。包括文件系统的管理、用户权限的控制、软件包管理等。嵌入式开发人员需要能够
    发表于 02-19 11:23

    高端嵌入式实验平台

    微处理器、内存芯片组、闪存芯片组和电源管理电路,扩展板则由嵌入式硬件接口、板载功能和扩展功能模块组成。 软件提供嵌入式主流Andriod和Linux
    的头像 发表于 01-29 09:55 467次阅读
    高端<b class='flag-5'>嵌入式</b>实验平台

    嵌入式Linux开发的三种方式

    嵌入式Linux开发主要有三种方式:裸机开发、SDK开发和驱动开发。
    的头像 发表于 01-22 14:22 887次阅读

    嵌入式自学好书推荐

    单片机能为嵌入式系统的开发奠定良好基础。推荐书籍:《新型单片机开关电源的设计与应用》。 4.Linux基础:熟悉Linux源码和架构对嵌入式
    发表于 01-11 15:13

    电源管理策略推动便携设计发展

    电子发烧友网站提供《电源管理策略推动便携设计发展.pdf》资料免费下载
    发表于 11-16 15:00 0次下载
    <b class='flag-5'>电源</b><b class='flag-5'>管理</b><b class='flag-5'>策略</b>推动便携<b class='flag-5'>式</b>设计发展