[应用相关]

如何降低软件功耗

[复制链接]
2622|37
手机看帖
扫描二维码
随时随地手机跟帖
feiqi1|  楼主 | 2018-3-7 20:55 | 显示全部楼层 |阅读模式
都有哪些方法降低软件功耗啊?
aizaixiyuanqian| | 2018-3-7 20:58 | 显示全部楼层
软件功耗?

使用特权

评论回复
androidbus| | 2018-3-7 21:00 | 显示全部楼层
用查表的方法代替实时的计算,尽量减少CPU的运算量。特别是在没有硬件浮点处理单元的MCU进行浮点处理时,直接用MCU进行浮点处理将会消耗大量的时间。

使用特权

评论回复
litengg| | 2018-3-7 21:01 | 显示全部楼层
将一些运算的结果预先算好,放在Flash中,用查表的方法替代实时的计算,减少CPU的运算工作量,可以有效地降低CPU的功耗。

使用特权

评论回复
qiangweii| | 2018-3-7 21:04 | 显示全部楼层
很多微处理器都有快速有效的查表指令和寻址方式,用于优化查表算法,这种处理方法在离散余弦变换和AD数据采集中能够了带来可观的效率提升。

使用特权

评论回复
shashaa| | 2018-3-7 21:05 | 显示全部楼层
对于不可避免的实时计算,应注意计算的精度,算到精度够了就应立即结束,避免“过度”的计算。

使用特权

评论回复
sourceInsight| | 2018-3-7 21:09 | 显示全部楼层
在精度允许的情况下,使用简单函数代替复杂函作近似运算,也是减少功耗的有效方法。。

使用特权

评论回复
boy1990| | 2018-3-7 21:09 | 显示全部楼层
尽量使用字符型的8位数据代替16位的整型数据。

使用特权

评论回复
CallReceiver| | 2018-3-7 21:13 | 显示全部楼层
尽量使用分数运算而避免浮点运算

使用特权

评论回复
hfdy01| | 2018-3-7 21:13 | 显示全部楼层
可以用移位运算代替乘除运算。

使用特权

评论回复
hfdy01| | 2018-3-7 21:16 | 显示全部楼层
采用MCU计算乘除也是非常耗时的,如果采用左移和右移的办法来实现乘除法运算,将会减少运算时间,注意,除法的移位计算只能针对除数比较特殊的情况。

使用特权

评论回复
xia00| | 2018-3-7 21:17 | 显示全部楼层
数字信号处理中的运算,采用FFT和快速卷积等,可以节省大量运算时间。

使用特权

评论回复
bbapple| | 2018-3-7 21:19 | 显示全部楼层
一个程序使用中断方式还是查询方式,对于很多应用来说并不是那么重要,但在软件低功耗设计特性上却相差甚远。

使用特权

评论回复
handleMessage| | 2018-3-7 21:20 | 显示全部楼层
采用定时器,在程序中可以采用软件延时,但是,如果系统的定时器资源充裕,在需要定时的场合,最好采用硬件定时器,当定时器到定时后,向MCU发出中断请求信号。

使用特权

评论回复
zhouhuanの| | 2018-3-7 21:22 | 显示全部楼层
你是说执行的次数吗?使用汇编语言还可以的。

使用特权

评论回复
wanglaojii| | 2018-3-7 21:23 | 显示全部楼层
将运算的结果预先算好,放在Flash中,尽量减少CPU的运算工作量

使用特权

评论回复
laozhongyi| | 2018-3-7 21:24 | 显示全部楼层
软件功耗,软件有什么功耗呢?

使用特权

评论回复
Edisons| | 2018-3-7 21:24 | 显示全部楼层
尽量降低器件的工作频率。。。。

使用特权

评论回复
aspoke| | 2018-3-7 22:01 | 显示全部楼层
从MCU选型开始

使用特权

评论回复
232321122| | 2018-3-7 22:01 | 显示全部楼层
IO为高电平是上拉电阻不费电

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

423

主题

1615

帖子

1

粉丝