RTOS中降低功耗的策略

Saving Power with an RTOS

介绍

随着绿色节能产品需求的增加,快速增长的移动设备,其电池寿命最受关注,设计者必须要考虑在其设计中如何最大限度的降低功耗。这可以通过选择耗电更低的组件,以及更合理的软件架构去实现。

RTOS调度效率

一个普遍的常识,在嵌入式设计中加入RTOS会产生额外的处理开销,从而导致更高的功耗。对于简单的设计,轮询超循环架构可能是更合适的,但对于更高级、更复杂的设计,使用基于事件机制的调度算法部署RTOS可以显著减少应用程序的处理时间,从而允许选择更小的处理器或增加更多的功能。

在一个基于优先级抢占式RTOS的软件工程中,任务是按照优先级执行的,高优先级任务只要就绪总能获得处理器。在没有任务运行时,如任务等待事件而阻塞,RTOS就会运行后台任务即空闲任务,空闲任务可以做一些后台处理工作。但通常情况下,系统只是保持在空闲任务运行直到某个事件产生以使其阻塞的任务激活。软件设计越高效的利用RTOS,空闲任务消耗处理器的时间就越长。

空闲任务睡眠模式

降低功耗首先要做的就是在系统进入空闲任务后,RTOS使处理器进入低功耗模式。为了保证快速响应,处理器将在中断来临时唤醒,如果没有外部中断触发,则将在下一个RTOS tick中断时唤醒。

在OPENRTOS和SAFERTOS系统中,降低功耗的方式是在空闲任务钩子函数中使处理器进入低功耗模式,见图Figure 1。

SAFERTOS系统的超低功耗模式

tickless睡眠模式进一步扩展了之前提出的降低功耗的策略,通过在空闲期间完全停止RTOS tick中断使系统处于省电模式以达到节省电能,停止tick中断将使处理器保持深度省电模式,直到一个中断发生,或是RTOS重新激活任务的时候,如图Figure 2。

使用SAFERTOS,可以在下述情况进入tickless睡眠模式

  • 只有空闲任务在运行的时候,所有的应用任务均被阻塞或挂起
  • 在内核将应用任务激活时,至少需要N个完整的tick周期,这样做可避免在每次tick时计算和重新配置时钟

在tickless睡眠模式处理器将处于睡眠模式,直到下一个任务阻塞时间到达,或是下一个软件定时器被触发。在下述条件满足时,SAFERTOS将使处理器处于深度睡眠模式直到下一个外部中断到来

  • 软件定时器未被使用,或是定时未到,SAFERTOS在任何时候均不执行定时器的回调函数
  • 所有的应用任务均处于挂起状态或无限超时阻塞状态(超时被设置为portMAX_DELAY),SAFERTOS在任何时候均不激活任务

SAFERTOS知道最长的睡眠时间,没有错过任务阻塞时间超时的风险,或软件定时器的执行。但无法预测何时退出低功耗模式,因为无法预测异步中断何时发生,因此在SAFERTOS退出低功耗模式时,无法假定睡了多久,故无法在调整系统时间前计算出睡眠时长。

freertos低功耗机制

freertos是在系统进入空闲任务时,将处理器设置为低功耗状态,当然rtos节拍时钟频率过高,将会使处理器频繁的进入和退出低功耗状态,这带来的电量损耗可能比正常运行模式时还高,为解决这个问题,freertos引入了tickless低功耗模式,即在系统执行空闲任务时停止系统时钟,在tick中断被激活时重新计算并调整rtos的tick计数值,tickless低功耗模式可使处理器保持在深度省电状态,直到中断发生。

【RTOS】基于RTOS的降低功耗的策略的更多相关文章

  1. 基于 普通及Lambda方式实现策略模式

    什么是策略模式 策略模式代表了解决一类算法的通用解决方案,你可以在运行时选择使用哪种方案.比如如何使用不同的条件(比如苹果的重量,或者颜色 )来筛选库存中的苹果.你可以将这一模式应用到更广泛的领域 , ...

  2. 基于KMeans的指数择时策略

    [导语]:聚类分析是指将物理或者抽象对象的结合分组为由类似对象组成的多个类的分析过程.简单来讲,聚类就是通过一些特征去自动识别一个大群体中的多个子群体,这些子群体中的对象彼此之间相似度高,而子群体之间 ...

  3. 【RTOS】RTOS汇编入门 (1)

    引言 为了提高效率,进行更为底层的操作,RTOS常采用汇编语句,因此了解常用的汇编语句,很有必要 汇编指令 1..equ:类似于c中的#define,表声明常量 例如:.equ PSW 0x10000 ...

  4. winform降低功耗总结

    这里整理了一些网上关于Winform如何降低系统内存占用的资料,供参考: 1.使用性能测试工具dotTrace 3.0,它能够计算出你程序中那些代码占用内存较多2.强制垃圾回收3.多dispose,c ...

  5. 【原/转】ios指令集以及基于指令集的app包压缩策略

    iPhone指令集   本文所讲的内容都是围绕iPhone的CPU指令集(想了解ARM指令集的同学请点击这里),现在先说说不同型号的iPhone都使用的是什么指令集: ARMv8/ARM64 = iP ...

  6. 基于CORS的geoserver同源访问策略

    这个问题理顺整个2天.终于攻克.记录下来. 1.下载文件 首先下载cors压缩包,解压,得到的是org/mortbay/servlets/CrossOriginFilter.class文件,把此文件拷 ...

  7. 90-95年CPU功耗感知调度研究

    最近读了三篇1990-1995年的通过调度来降低cpu能耗的文章[1] [2] [3],简单总结一下该年代单核CPU功耗感知的调度策略. Motivation 随着便携式设备逐渐兴起,人们对降低其功耗 ...

  8. FPGA设计中的电源管理(转载)

    过去,FPGA设计者主要关心时序和面积使用率问题.但随着FPGA不断取代ASSP和ASIC器件,设计者们现正期望能够开发低功耗设计,在设计流程早期就能对功耗进行正确估算,以及管理和对与FPGA相关的各 ...

  9. uC/OS-II内核架构解析(1)---嵌入式RTOS(转)

    uC/OS-II内核架构解析(1)---嵌入式RTOS 1. 嵌入式系统基本模型 2. RTOS设计原则 采用各种算法和策略,始终保持系统行为的可预测性.即在任何情况下,在系统运行的任何时刻,OS的资 ...

  10. Linux之RTOS学习

    Linux之RTOS学习 RTOS: Real time operating system 系统选型 可选方案 RTLinux - FSMLabs, WindRiver Systems - http: ...

随机推荐

  1. CSP_J

  2. git报错解决,warning: could not find UI helper 'git-credential-manager-ui'

    在克隆远程代码时,可能遇到这样的报错 warning: could not find UI helper 'git-credential-manager-ui' 这样的报错经常会在我们换了一台电脑或者 ...

  3. Python——第二章:字符的编码encode和解码decode

    相关阅读:字符集(Character Set)和编码(Encoding)的历史演化 字符集和编码的总结: 1. ASCII编码: 8bit, 1byte => 256(最大可表示)2. GBK编 ...

  4. 记一次windows病毒联合排查全过程

    8月2日通过态势感知平台,发现大量内部DNS服务器有恶意请求,且告警描述为:试图解析僵尸网络C&C服务器xmr-eu2.nanopool.org的地址,通过截图可以看到,用户每5分钟会定期向目 ...

  5. SQL优化案例(2):OR条件优化

    接下来上一篇文章< SQL优化案例(1):隐式转换>的介绍,此处内容围绕OR的优化展开. 在MySQL中,同样的查询条件,如果变换OR在SQL语句中的位置,那么查询的结果也会有差异,在多个 ...

  6. C语言之输出孪生素数

    1.题目内容: 孪生素数是指间隔为 2 的相邻素数,例如最小的孪生素数对是3和5,5和7也是(5虽重复但算作2组). 2.输入格式: 输入N,找出2至N之间的孪生素数的组数. 这里要注意输入的N不要超 ...

  7. Not on FX application thread(八)

    Not on FX application thread(八) JavaFX 从入门到入土系列 当你不在主线程中操作UI时会出现以下异常: Not on FX application thread 可 ...

  8. 基于FPGA的数字钟设计---第三版---郝旭帅电子设计团队

    本篇为各位朋友介绍基于FPGA的数字钟设计---第三版. 功能说明: 在数码管上面显示时分秒(共计六个数码管,前两个显示小时:中间两个显示分钟:最后两个显示秒). 利用按键可以切换24/12小时制(默 ...

  9. vue星星评分

    <template> <div> <div class="xx"> <div v-for="(i, index) in list ...

  10. 《华为云DTSE》期刊2023年第二季—HDC.Cloud 2023专刊

    本文分享自华为云社区<<华为云DTSE>期刊2023年第二季-HDC.Cloud 2023专刊>,作者: HuaweiCloudDeveloper . AI技术风起云涌,百家争 ...