【干货】教你如何以0 MIPS运行你的嵌入式系统
率并不是闻所未闻,这时候就需要采取措施来保持低功耗。
图2显示了传感器管理的两种附加方法。外设反射系统/直接存储器访问(PRS / DMA)方法使CPU在完全不参与的情况下在深度睡眠模式进行ADC采样。而不是RTC唤醒CPU,然后CPU启动ADC进行采样。RTC通过事件系统(如Silicon Labs的PRS)将事件直接发送到ADC。ADC在接收到此事件时自动启动ADC转换。转换完成后,DMA在这种情况下也能够从深度睡眠模式下运行,从ADC获取数据并将其存储在RAM中。 PRS / DMA方法的好处是显著降低了电流消耗。在1 kHz时,系统电流从58μA降低到25μA。
图2 该ADC采样图显示了各种工作方式下的功耗
驱动ADC的更有效的方法是PRS /比较器(CMP)方法,其中RTC仍然通过PRS系统触发ADC,但在这种情况下,ADC立即使用比较功能对样本进行评估,除非发现有需要的数据,否则不使用DMA或CPU。这种方法能够实现1 kHz采样率时系统电流只有3.5μA。
动态ADC比较器
使用PRS/CMP方法,大部分采样数据都被丢弃,CPU只关注需要处理的数据。当信号变化缓慢时,或者需要特定的信号时,这种方法很有效。
当使用比较功能监视信号时,一种方法是测量信号,然后根据这个信号设置阈值,只要信号在阈值范围内,那么当ADC测量信号时,系统可以保持在深度睡眠模式,当然CPU也保持在睡眠模式。
然而,如果信号发生变化,并且超过阈值,系统将知道该信号,并采取适当的措施。在回到睡眠模式之前,ADC阈值将重新配置以适应新的信号值,因此系统可以再次进入睡眠模式,直到下一次信号发生变化。图3显示了这种技术的示例。圆点表示ADC样本,箭头表示每当CPU被唤醒时,它将记录本次变化并重新配置阈值。
图3 当信号超过阈值时,CPU中断动态修改ADC的阈值
使用这种方法,系统实际上将丢失一些信号准确性,因为信号可以在触发器之间的阈值范围内任意移动。然而,益处是功耗显著降低。
如果系统的目标是测量信号的动态值,则PRS / DMA驱动方法是理想的,因为它使所有数据可用,同时仍然可以提供非常有益的节能特性。
自主工作子系统
ADC示例只是众多通过睡眠模式降低应用功耗的方法之一。专注于低功耗应用的新型MCU(如Silicon Labs的EFM32 Gecko MCU)拥有大量功能,可在深度睡眠模式下运行,从而实现高水平的自主行为。
例如,Gecko MCU的LESENSE(低功耗传感)模块可以自动地、周期性地采样多达16个通道,完全不需要CPU参与。它可以实现高频率检测且充电1次就能工作10年。
在许多情况下,单个外设可以自主地履行其职责,但也有许多需要交互的情况。在这种情况下,我们可以利用诸如在当前一些新型MCU中存在的PRS系统这样的外设互连。这些外设互连允许多个外设连接以自主执行更复杂的任务。
图4显示了这样的自主系统示例,其使用事件链来执行其功能:
1. RTC以给定的时间周期性地发送PRS信号至ADC以启动转换。
2. RTC同时启动外部传感器,这样在测量时信号就已经准备好了。
3. ADC完成采样并通知DMA,DMA把数据传送到RAM。
4. 来自ADC的完成PRS信号关闭外部传感器。
5. 当缓冲器满时中断唤醒CPU,或者超过ADC阈值时中断唤醒CPU。
6. 可选项:PRS看门狗监视事件循环,确保它保持运行。
DMA可以从图4所示系统中拿走,通过设置ADC的比较功能来做到更省电。
图4 该自主ADC系统包含周期工作的传感器和看门狗
这些自主子系统具有以下几个主要优点:
1. 显著节能。
2. 即使CPU负载很重时传感器依旧可以稳定工作。
缺点是,并不是所有的MCU都支持这种类型的操作,并且在设置交互时,您会希望像硬件设计人员一样思考。总之,对于许多电池供电型应用来说,其优点明显多于缺点。
结论
通过利用各种节能技术,当传感器测量时,CPU几乎完全脱离工作。对于表1所示的无线应用,这将使总平均功耗从61.6μA降低到37.6μA,降低了39%,从而使电池寿命从大约5个月延长到8个月,增加了64%,或者可以允许电池尺寸减小以改善系统外形。
对于非无线应用,节能将更加显著。表1中的示例,能耗将从29.6μA降低到5.6μA,由CR2032电池供电,理论上寿命
嵌入式系统 mips mcu SiliconLabs 相关文章:
- 嵌入式系统在电源设计中的运用(09-20)
- 基于4G通信的嵌入式数据通信系统设计(10-10)
- 汽车安全性能亟待升级 嵌入式系统把关护航(05-07)
- USB端口找到新居,落户嵌入式系统(02-11)
- 嵌入式系统在电力变压器监测中的应用研究(09-18)
- 基于OMAP架构的嵌入式指纹识别系统设计与应用(04-29)