你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

利用 STM32L4 系列微控制器优化功耗和性能

[复制链接]
STMCU小助手 发布时间:2022-7-13 10:25
前言2 z; \- c. F' P% Z$ e4 q
STM32L4 系列的微控制器采用新型结构制造,得益于其高度灵活性和高级外设集,实现了一流的超低功耗性能。 STM32L4 系列产品的性能为应用提供最佳能量效率,在超低功耗领域首屈一指。
0 b* ?' v: i0 K$ G% tSTM32L4xx 器件基于 Cortex®-M4,具有 FPU 内核。它们的工作频率可达 80 MHz,并实现了在 80 MHz 频率下具有 100 DMIPS 的性能,由于集成了 ART Accelerator™,还能同时保持尽可能小的动态功耗。
9 D" c6 \. [; w& I: xSTM32L4 系列产品具有 FlexPowerControl,它提高了功耗模式管理上的灵活性,同时降低了应用的总体功耗。
( D% R" T0 X) U! j* w; Z为了能最大限度地使用电池并 / 或降低其成本,处理器工作模式的选择是很重要的。除了功耗考虑,还必须考虑应用约束条件。因此,微控制器需要能提供多种工作模式,以支持所有的应用,同时要使功耗性能始终接近最佳。
* }6 |8 e/ \8 U' K# G% M在许多超低功耗应用中,微控制器长期处于睡眠中,随后有很短时间的密集工作。/ b) \9 _' T& p0 t4 p; _3 x
本应用笔记提供了定性和定量信息,以便能在开始实现和优化应用之前配置每个工作点 (频率、范围、低功耗模式 ……)。
1 R/ {, J* m! r3 z+ j' I# ]+ s  `本应用笔记采用了来自 EEMBC 工业标准的 ULPBench™ 基准作为参考实例,将计算和仿真与测量结果关联起来。
) W  y/ c$ O7 n1 N4 ]+ q4 d+ y9 {5 m* v' I5 f

6 T  k$ G' N+ M1 ?% L* [! e. z1低功耗应用简介
) M0 [8 K( Y6 k* j; ^; Q& p在关注电池寿命的应用中,必须优化系统,以在最小功耗下提供最大性能和反应性。  L: `+ F! q# J: x
这类应用通常包括两个不同阶段:
( ^% A1 Q  |! L- s- ^• PROCESS 阶段,其中,在规定时间间隔 (RTC)或外部事件 (GPIO,中断 ……)下,需要处理一些传感器或无线电信息。
( l/ U& Z. z* K6 d, b• INACTIVE 阶段,其中,系统处于睡眠,并等待 RTC 或 GPIO 唤醒。( x2 _! u, [  z/ o" b/ e/ _! J

( u7 _: D3 [9 D1 Y0 R- Q1 r {Z}ZA~SD6RPP}C41EGP][`J.png & d# F/ j" u6 e4 e4 Q$ X

- N  B+ N$ g* {( ~; Z8 A
9 d; ^/ _" v1 H+ T
1.1 要考虑的关键参数
) v* q, D* D, c9 w7 b) D1 O3 E) j6 i两个阶段具有不同的性能标准 (除了功耗以外):  J% W% {1 e& I$ \9 E; Z
• PROCESS 阶段要求在给定时间帧内执行一定数量的指令。
- N; D" a% a" B1 u: l3 L( T4 g• INACTIVE 阶段要求能保持一定的最少内容 (数据 RAM 保持)和唤醒能力 (外设,GPIO, RTC……),同时使功耗尽可能低。  j1 F. R0 w' L
而且,两个阶段之间的转换须支持不同的约束条件:
# E3 t- h/ {) E9 ]; {) Z• 睡眠到运行的转换要求在转换时具有快速唤醒时间且峰值电流 (也称为浪涌电流)最小,以便能够设置外部电源。
2 L3 j4 x& D4 S% ~) N• 运行到睡眠的转换不太关心其时间,但需要进行优化以节约能源。
/ `( u) k$ X7 z) |5 ^! C$ L0 D0 V( n3 f+ x2 h
当面临这样突发型操作时,需要考虑四个参数:
5 J. F& B$ \- E+ K) X• 平均功耗。该参数 (Pavg,以 µW 表示)决定了电池大小,以支持所预期的自主性。
9 r% L. m; v1 u- i- V8 {• 最大峰值电流。该参数 (Ipeak,以 µA 表示)决定了可用的电池类型,以及需添加到板上的外部元件的数量和尺寸 (去耦电容)。
5 C9 u  T: v; O+ x" ]$ H, z• PROCESS 阶段的处理性能。该参数以 DMIPS 表示,它与 CPU 频率 (Freq)成比例。6 c0 E- S  m' f& }2 o
• 反应时间。它是唤醒信号源激活和第一条指令执行之间的时间,通常在中断服务程序(ISR)内、上下文被恢复后 (Power,数据空间上下文,时钟 ……)。# t7 ?+ L' b6 C1 E, ^. G

! P; ]" m# q9 B2 j* t% c
1.2 ULPBench™ 说明
( k5 J( A  f6 l/ ~; @$ l9 hEEMBC ULPBench™ 基准非常适合用来评估超低功耗性能。它是一种标准化测试,支持任何 8 位、 16 位和 32 位微控制器的特性。
/ c- T7 s+ R0 K3 y' H& A$ _* @至今,只有 CoreProfile 已经标准化。它支持对下列资源的能效进行评估:2 z9 Q) O* M' {
• CPU, RAM 和闪存
! W( t# j6 a  |+ j* B• RTC 定时器和唤醒机制
$ O) @2 ^/ T: U! R" u% z9 W6 i$ d% Q• 32 kHz LSE
7 V! c( E, ^2 l4 d3 @. _# A! b/ F2 s• 电源管理电路
. ~- n- u/ @1 z7 F& [PROCESS 阶段中, EEMBC ULPBench™ CoreProfile 实现:
  F$ G2 w& x7 V" a- A5 _( z- Y7 p- I• 数据数组操作,包括置换和排序: H' Y0 j4 s5 ^$ e- T$ L( b: M! ~4 G
• 利用 8 位和 16 位数学计算进行简单滤波
. V, j! x8 Y/ U1 D; I* a• 简单状态机
* v$ Z: a' m2 r  H• 简化的 RTOS,称为 TES,能够测试实时事件。  m3 s1 @# s  x# V; e
用来比较不同的微控制器时, ULPBench™ 结果以得分表示,它由平均功耗 (以 µW 表示)除以 1000 得到。
- g8 j, q$ s6 d. X
7 v* D4 M' m  F5 [+ V. l T{)[FO)J`{~FGDLHLQ4E.png - I. K) I" f8 K6 q7 G

* S" J2 h0 P, ]其中 Avg_current (µA)是电流消耗 IDD ,在 VDD = 3.0 V 时测得。& x1 O* i9 I  W  _

& o" w( `! _  ?9 B0 W2 STM32L4 系列产品低功耗特性
9 u7 Y& y4 `- W: c9 w9 M. K4 i2.1 多种低功耗模式
4 r6 p" d! S8 d, P5 X( k4 t) B, f/ G( XSTM32L4 系列的微控制器可实现多种不同的功耗模式,其中 7 种是低功耗的。% o5 O  N$ t, J6 G
除了这些模式,通过选择不同的时钟源和频率,以及关闭不用的外设的时钟,可调节功耗。  V2 Q% |+ Z/ g6 u
在所有这些方法中,除了关机之外,安全功率监测欠压复位 (BOR)和 IWDG 可保持激活,以保证能够安全运行。+ D' l4 A) O. h. i
AN4621 中提供了更多详细内容。
1 o/ z; p: p( L3 ?1 h
/ Q  @: C$ R1 d* c
2.1.1 低功耗运行和低功耗睡眠模式2 y6 F, l! g1 j% K6 ?8 U( X7 [
除了那些能在 STM32Fx 系列产品上实现的模式 (睡眠,停止和待机)外,有两种低功耗活动模式可在 STM32L4 系列产品上使用,它们是低功耗运行和低功耗睡眠。
. c3 m! z' j( i; ~它们为应用提供了具有极低电流消耗的运行和睡眠模式功能,这种情形下一些外设不能关闭,或者 CPU 持续低速工作以使电流变化最小。* n  X8 {; u. Q! r# W+ z
已经实现了多种功能来降低电流消耗:& J: g4 ]: a# H
• 内核逻辑由低功耗稳压器供电,以降低静态电流;
& [1 x. D7 a$ z$ j. A+ n• 在低功耗睡眠模式下,可关闭闪存 (掉电模式和时钟门控)。当处理器从 SRAM1 或SRAM2 执行时,它还可在低功耗运行模式下关闭;
1 z" a* W2 g( l8 Q3 T• 系统时钟频率最大限于 2 MHz。可选择 MSI 内部 RC 振荡器,因为它支持多种频率范围,低功耗睡眠闪存关闭时 MCU 总消耗很小,在 100 kHz 可低至 18 µA。
* A4 N, s: Q* Y. _* X+ T0 i, u) {* E* U# s( j: B: a( R3 m
批采集子模式 (BAM)- {- P' d) j( |' _
STM32L4 微控制器支持功率高效批采集子模式 (BAM),其中数据利用通信外设传输,器
" c& m/ h9 ^* u* p3 u) P件其他部分处于低功耗模式。( l/ V% x' J' \" M" [/ N7 z6 H+ o
这可通过利用以下配置进入睡眠或低功耗睡眠模式来实现:2 i/ O; d( ^1 ?: I; J8 h
• 睡眠 (或低功耗睡眠)模式下,仅 DMA、通信外设和 SRAM1 或 SRAM2 时钟使能;, L" z) p0 x, T& u- P/ J
• 睡眠 (或低功耗睡眠)模式下闪存关闭:闪存掉电,且闪存时钟门控关闭;
8 M9 `7 v5 h3 v3 m) v1 @$ y• 如果系统时钟可限制于 2 MHz 内,则主稳压器关闭 (以进入低功耗睡眠)。
4 b- t# `$ c' J低功耗睡眠模式下, I2C 和 USART/LPUART 外设仍然可由 16 MHz HSI 提供时钟。这允许支持 BAM,且 I2C 或 USART 速度可达 1 Mbps。
& _7 T  X- w' n% q" [
0 m( l/ F; S. h$ W; K5 z
2.1.2 停止模式
$ R, }# x4 }: ]5 YSTM32L4 系列产品实现了两个停止模式,具有完全 SRAM 和外设保持能力,并且由于使用了高达 48 MHz 的 MSI,能够在 4 µs 内唤醒。
6 j" M& j6 w9 W. h1 c0 _' p0 I  l在这些停止模式下,所有高速振荡器 (HSE, MSI, HSI)都停止,而低速振荡器 (LSE,LSI)可保持活动。外设可设置为活动的,需要时可使用 HSI 时钟,能够在一些特定事件(如 UART 字符接收或 I2C 地址识别)下唤醒设备。3 ?& T' v6 K" x- }
Stop2 模式可实现专门机制,使保持电流尽可能低,同时允许非常快速的唤醒,从 SRAM 唤醒需要 5 µs,或从闪存唤醒需要 8 µs。
0 s* \, B5 l! y5 x! B$ ]8 {& `9 K0 C
% R& z5 f- d% ]" X, \
2.1.3 待机模式
, u* b- ~" K- d3 d/ x3 d  W待机模式下, BOR 始终使能,这保证了在供电电压低于所选功能阈值时器件处于复位。默认待机模式下 SRAM 内容丢失。但是,可以保持 SRAM2 的内容 (有 230 nA 的额外电流消耗)。
* R" _* V# {% ~  j在待机模式下可在每个 I/O 上独立地施加上拉和下拉,这能够保持外部器件配置。
  F/ M5 g# h: c: f1 }借助某一个 (共五个)唤醒引脚、复位引脚或独立看门狗,能够从该模式唤醒。由低速振荡器 (LSE 或 LSI)定时的 RTC 在此模式下也是起作用的,具有唤醒功能。7 i. v4 K8 J6 w+ J+ x+ G0 O3 J

- g. [0 l+ Y) L  b0 L. }

& ?" J7 m0 o6 u. a, _5 A/ k  n' W2.1.4 关机模式; k9 d' S: p3 x; l3 F
在 STM32L4xx 器件上实现了新的关机模式,以延长电池供电应用中的电池寿命。1 ^; |7 M( h9 F. |
通过关闭内部稳压器,以及禁用耗电监控,该模式可实现最低电流消耗 (3 V 时消耗为 60 nA)。借助某一个 (共五个)唤醒引脚或复位引脚,能够从该模式唤醒。由低速外部振荡器(LSE)定时的 RTC 在此模式下也是起作用的,具有唤醒功能。: H" q' U) A3 q/ ]) ^8 b

/ r4 R& X/ b$ X$ r  `* _/ _完整版请查看:附件
5 z+ S% l9 S( q6 S5 a, Q

DM00216518_ZHV1.pdf

下载

608.71 KB, 下载次数: 0

赞 收藏 评论0 发布时间:2022-7-13 10:25

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版