EDN China > 设计实例 > 嵌入式系统 > 参考设计 > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

低功耗嵌入式系统的设计考量:一般设计考量

Rahul Raj Sharma?? Tushar Rastogi?? Cypress?? 2015年06月09日 ?? 收藏2

2. 固件考量:

a. 减少函数调用:

每次函数调用都将涉及多重冗余运算,比如堆栈上的添加与取出运算(用于重新加载程序的计数器和寄存器)。这些运算的每一次工作都会耗用多个时钟周期,应尽量避免。对于简短函数而言,函数调用可采用能够布置内联代码的宏命令替换。这有助于减少CPU加载,进而降低相同运算所需的功耗。然而,每种方法都有其自身的优缺点。宏命令需要更大的存储器,这对写入高密度固件来说是一个问题,因为它可能会增大系统成本。

b. 为频繁重复的输入值使用查找表:

通常会有一部分输入值的使用频率大于其它输入值。通过创建与这些输入值对应的查找表,在遇到这些输入其中之一时,可缩短计算时间,进而可降低功耗。

这种方法在当完成计算后需要查找值的应用中比较容易看到,比如电机应用中角度正弦与余弦的计算。在这类应用中,会有一系列频繁遇到的值(相比之下,其它值遇到的频率较低)。正弦值或余弦值的计算需要较长的时间,因此对于该频繁重复的角度而言,其正弦及余弦的预计算值可存储在查找表中。每次遇到这些角度中的一种时,处理器便可查找该表,用在此找到的值进行替代,不必计算。

c. 使用中断,无需轮询:

在复杂的嵌入式系统中,CPU会花大部分时间来等待某项工作的完成,然后再进入下一个步骤。当前提供的大多数SoC都提供能在无需CPU干预的情况下完成大多数任务的硬件模块。在需要CPU干预时,它们会以中断的方式发出信号,唤醒CPU。例如一般在采样数据完成后,ADC会发出中断信号。这样就无需轮询来自ADC的数据。因此CPU可以进入低功耗模式,只在数据准备处理时唤醒。

d. 自适应时钟门控和电源门控

一个典型的系统会使用微控制器的多个模块,但在任何给定时间点上,不会同时使用所有的模块。因此可以对这些模块的时钟进行门控,降低这些模块的动态功耗,从而节省电源。此外,这也有助于降低峰值电流需求,这是钮扣电池供电设计的重要考虑因素。PSoC系列器件允许单独禁用未使用的模块。

这个部分我们讨论了创建低功耗嵌入式系统的常见设计考量。在第2部分中,我们不仅将讨论低功耗应用的实例、低功耗与系统性能的权衡取舍,而且还将提供使用上述技巧的低功耗系统设计实例。

第2部分: 低功耗嵌入式系统的设计考量:设计实例及功耗性能权衡

【分页导航】

《电子技术设计》网站版权所有,谢绝转载。


上一页123下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

低功耗? 嵌入式系统? 微控制器?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈