Silicon Labs 的 EFM32™ Gecko 32 位微控制器 (MCU) 系列包括 25 设备,这些设备具有高达 128 kB、8–16 kB RAM 的闪存,以及速度高达 32 MHz 的 CPU 的配置。基于强大的 ARM® Cortex®-M3 内核,Gecko 系列采用创新低能耗技术,节能模式唤醒时间缩短,可搭配各种外围设备,是电池驱动应用及其他需要高性能和低功耗系统的理想选择。
特点
- 32 MHz ARM Cortex-M3
高级数学运算功能
内存保护单元 (MPU)
- 高达 128 kB 的闪存和 16 kB RAM 内存
- 多达 90 个 GPIO,驱动强度为 20 mA
- 灵活的能耗管理系统,5 个不同能耗模式
- 硬件 AES,128/256 位加密和解密
- 适用于自主运行的周边反射系统
- 超低功耗的精度和模拟外围设备
12 位、500 ksps DAC
- 可配置 LCD 控制器,最多可驱动 4x40 段 LCD
- 16 外部中断
- 外部总线接口
- 直接存储器存取 (DMA) 控制器
- 高频、低频集成振荡器
- 具有高达 16 Mbps 的 UART 和 SPI 模式的 USART
- 具有 100 nA 接收模式的低能耗 UART
- 具有比较/捕获功能的 16 位定时器/计数器
- 具有可选脉冲输出的低能耗定时器
- 灵活的 24 位实时计数器
- 脉冲计数器
- 具有 8 个输入 MUX 和电容传感功能的模拟比较器
- 片上加电复位和欠压探测器
- 1.85–3.8 V 电压
- 温度范围:–40 至 +85 °C
- 封装:
48 引脚 QFP (7 mm x 7 mm)
64 引脚 QFN (9 mm x 9 mm)
64 引脚 QFP (10 mm x 10 mm)
100 引脚 QFP (14 mm x 14 mm)
112 引脚 BGA (10 mm x 10 mm)
ARM® Cortex®-M3内核
ARM 旗舰 Cortex-M 系列处理器
ARM® Cortex®-M3 处理器具有出色的效率和灵活性,专为响应和功耗敏感型应用而开发。EFM32™ Giant Gecko、Leopard Gecko、Gecko 和 Tiny Gecko 系列利用 Cortex-M3 低功耗和高性能特性,并结合了 Silicon Labs 的独特的低功耗外围设备,从而创建了一个卓越的低功耗嵌入式系统平台。
一、低功耗
专为低功耗运行而设计的 32 位 Cortex-M3
具有 Thumb®-2 指令集的高功率效率
支持集成电源模式的小内核封装
二、高性能
Cortex-M3 运算速率为 1.25 DMIPS/MHz
独立的数据和指令总线
具有 Thumb-2 指令集的高代码密度和性能
出色的每指令时钟周期比率
嵌套向量中断控制器 (NVIC),出色的完成中断处理
高级数学运算功能
Thumb-2 指令集架构 (ISA)
Cortex-M3 支持 Thumb-2 指令集中的 16 和 32 位指令。二者可以混合,同时不会增加复杂性或降低 Cortex-M3 的性能。硬件的除法指令和许多乘法指令为 EFM32 用户提供了高的数据运算吞吐量。
三、基于哈佛架构的三级流水线式内核
ARM Cortex-M3 三级流水线式包括指令提取、指令译码和指令执行。Cortex-M3 还具有独立的指令和数据总线。哈佛架构降低了数据和指令共享总线常见的障碍。
四、快速维护关键任务和中断
EFM32 Cortex-M3 可在 2 μs 内从低能耗模式进入活动模式,并在 Dhrystone 2.1 基准测试时实现 1.25 DMIPS/MHz 的运算速率。NVIC 是 Cortex-M3 处理器的一个完整的组成部分,可确保出色的中断处理能力。可以配置多达 240 个优先级为 1-256 的物理中断,且不可屏蔽中断进一步提高了中断处理能力。对于嵌入式系统,这一增强的决定机制使得在已知的周期数内处理关键任务成为可能。
五、减小 32 位封装
Cortex-M3 的封装较小,降低了系统成本。32 位的高性能缩短了应用的活动期,CPU 在活动期进行数据处理。活动期缩短后,应用的电池寿命得到显著延长,EFM32 可以在多数时间内运行于高效的低能耗模式之下。
高性能节能型 EFM32™ 外围设备
Silicon Labs EFM32™ ARM® Cortex®-M 32 位微控制器 (MCU) 配备诸多旨在低能耗运行的外围设备。低功耗外设可在不牺牲性能的情况下提供高吞吐量和性能,使用创新控制技术和周边反射系统 (PRS),一切皆有可能。外围设备可在任何 CPU 都未介入的情况下响应和对外部或内部触发器的输入信息作出反应。结合使用直接存储器存取 (DMA) 控制器,启用 PRS 的 EFM32 系统会受益于自主行为,进而减少延迟和能源消耗。
一、内存和总线系统
Silicon Labs 的 EFM32 32 位微控制器系列内置低延迟内存系统,采用具有数据保存功能的低功耗闪存和 RAM,可实现极具吸引力的低能耗模式运行。EFM32 包含 4 主内存分段(闪存、RAM、外部总线接口和低延迟外围设备),其可通过 ARM Cortex-M CPU 或 DMA 控制器访问。
二、调试接口
EFM32 Cortex-M 设备采用 ARM CoreSight™ 片上调试和跟踪接口。串行线调试技术,特别是适用于 EFM32 的串行线调试端口,可用作片上调试模块和计算机开发环境之间的接口。EFM32 调试接口使现场重新编程和更新系统变得很容易,并允许使用最少的 I/O 引脚进行调试。
调试和编程亮点包括:
- 2 线串行线调试接口
- 调试/编程
- 1 线串行线查看器输出
- 打印样式调试信息
- 功耗 (PC) 采样
- 固件保护用调试锁定
- 预编程引导加载程序
- 所有 EFM32 中的 UART
- 带 USB 的零部件中的 UART+USB
- 5 线嵌入式跟踪宏单元 (EFM32 Leopard Gecko、Giant Gecko 和 Wonder Gecko)
- 指令和数据跟踪
三、直接存储器存取 (DMA) 控制器
DMA 可在 CPU 未介入的情况下移动数据,从而有效减少能耗和 CPU 工作量。此外围设备可使系统以低能耗模式迁移数据,例如从 USART 迁移到 RAM 或从外部总线接口迁移到 DAC。
- 闪存/RAM 和外围设备间传输
- 多达 12 个通道
- 多个高级传输模式(散集、往复式)
- 减少延迟
时钟管理单元
MCU 的功耗主要来自于时钟和振荡器。时钟管理单元控制 Silicon Labs EFM32 MCU 上的时钟和振荡器,能够单独打开和关闭所有外围设备模块的时钟,并启用/禁用可用的振荡器。结合使用低功耗振荡器和灵活的时钟控制方案即可最大程度减少任何给定应用的能耗。
时钟管理单元具有以下特征:
- 多个时钟源(集成 RC 和晶体振荡器)
- 电流饥饿型振荡器可确保低能耗运行
- 低启动时间
- 动态系统时钟分频
- 32 kHz 外围设备模块时钟预分频器选择
- 时钟门控
- 时钟管理单元概述
稳压器
所有 Silicon Labs EFM32 MCU 均配有片上稳压器,其可在运行时将供电电压转变为正确的内部电源。片上稳压器不受供电电压范围 (1.85–3.8 V) 支配,可产生全部所需电压,从而使得给 EFM32 MCU 供电变得极为容易。
电压比较器
电压比较器会在电源电压达到临界水平后发出警报,简单省事。如果电压电平太低,复位管理单元会自动启动复位,电压比较器会比较电源电压和内部带隙基准电压。也可通过软件调整电压比较器的占空比,进一步减少能耗和功能:
- 64 步骤内的可分 VDD,可选作为正比较器输入值
- 内部 1.25 V 带隙基准电压
- 适用于内部 VDD 和带隙基准电压的低功耗模式
- 可选边缘产生的异步中断
EFM32 MCU 开启后,加电复位会在达到适当的工作电压后监控输入电源电压和信号,确保该 MCU 拥有正确的启动状态。加电复位外围设备采用超低功耗设计,同时监控外加功率,并在复位原因寄存器内设置复位原因,以供软件使用。
欠压检测器
如果电源电压在运行期间跌至阈值电压以下,“欠压”即已发生。然后,欠压检测器会使 MCU 复位,以防止意外程序执行和数据损坏。EFM32 配备两个欠压监测器,一个用于外部非稳压电源,一个用于 1.8 V 稳压导电轨。
注意:欠压监测器模式已在 MCU 的 EM0 – EM3 模式下启用,并且在 EFM32 Leopard Gecko、Giant Gecko 和 Wonder Gecko MCU 的 EM4 模式下亦可用。
六、串行接口
UART
嵌入式系统经常使用串行通信,UART 可与众多外部设备进行高效通信。UART 是一款极为灵活的串行 I/O 模块,支持全双工和半双工异步 UART 通信。
UART 外围设备的特征包括:
- 各种运行模式、帧格式和可编程波特率可供选择
- 可使 UART 在未解决时保持空闲状态的多处理器模式
- 三重缓冲和 DMA 支持,可在 CPU 最小介入的情况下实现高数据传输率
EFM32 低能耗 UART 采用低频 32 kHz 时钟,提供全 UART 通信,并包括必要的硬件支持,可在软件最小介入和最低能耗的情况下实现异步串行通信。低能耗 UART 的优点是其能在 EM2(深度睡眠)模式下运行,同时其他模块关闭,以节约能源。
USART
嵌入式系统经常使用串行通信,USART 可与众多外部设备进行高效通信。USART 外围设备可以处理高速 UART、SPI 总线、智能卡和 IrDA 通信,并具有以下特征:
- 异步和同步 (SPI) 通信
- 全双工和半双工
- 独立的 TX/RX 可使
- 独立的接收/传输 2 级缓存
- 可编程波特率
- 各种异步和同步模式支持
- I2S 支持 (EFM32 Zero Gecko、Tiny Gecko、Leopard Gecko、Giant Gecko 和 Wonder Gecko)
- 首先通过 LSB 或 MSB 传输数据
- 可配置的数据位和停止位数
- 硬件冲突检测
- 多处理器模式
- USART0 上 IrDA 调制器
- 智能卡模式 (ISO7816)
- 环回模式
I2C 接口
I2C 模块可以仅使用一个数据线和一个时钟线在集成电路之间进行简单、可靠和经济高效的通信。借助 DMA 的帮助,I2C 接口可在 CPU 最小介入的情况下进行 I2C 通信。地址识别在所有能耗模式下均可用,可使 MCU 等待 I2C 总线传输的数据,具有 Sub-μA 的电流消耗。
- 多达两台 I2C 外围设备
- I2C 和 SMBus 支持
- 数据速率高达 1 Mbps
- EM3(停止)模式下的硬件地址识别
七、I/O 端口
外部总线接口
外部总线接口是一款多功能异步并行地址/数据总线,其可简化常见外部并行接口设备的访问,如 SRAM、闪存、ADC 和液晶显示器。该接口通过内存映射到 Cortex-M 的地址总线,每次读写时无需 I/O 级存取即可实现无缝软件访问。可通过 DMA 接合外部总线接口,然后在 EM1(睡眠)模式下运行。
- 数据和地址线可进行多路传输,以减少接合外部设备所需的引脚数量
- 每个新品选择库的定时均单独可调,以符合外部设备的规范
- 该接口仅限异步设备使用(无时钟信号可用)
外部中断
Silicon Labs 的 EFM32 MCU I/O 具有 16 个外部中断,可用于发送系统内的事件和状态信号。可以使用嵌套向量中断控制器 (NVIC) 配置外部中断在下降沿/上升沿和不同优先级时触发。Cortex-M 核心处理器支持快速嵌套中断请求,并使系统具备超短响应时间和低延迟能力。
八、定时器和触发器
定时器/计数器
大多数应用都拥有需要在 CPU 极少介入和功耗极低的情况下精确计时的操作。高频定时器/计数器外部设备可以跟踪定时和计数时间,并产生输出波形,触发其他外围设备的定时操作。
周边反射系统 (PRS)
Silicon Labs 的 EFM32 微控制器中的周边反射系统可以在不使用 CPU 的情况下直接连接不同的外围设备。借助此系统,外围设备能够产生其他外围设备可以接收并即刻反应的信号,同时 CPU 依然处于睡眠状态。
低能耗定时器
大部分设备关闭后,可以使用低能耗定时器进行定时和输出生成,从而允许在系统功耗处于绝对最小值时执行简单的任务。低能耗定时器也可以连接到实时计数器 (RTC),并可配置为从 RTC 开始计数以比较匹配。借助缓冲重复和最高值寄存器,低能耗定时器可以提供高达 16 kHz 频率的无干扰波形。
- 16 位计数器、8 位重复
- 从 LFXO/LFRCO 开始计时
- 波形生成
- 外部组件/传感器占空比控制
脉冲计数器
脉冲计数器会在检测到特定数量的脉冲或旋转后中断,以消除定时或 I/O 中断和 CPU 处理需求。外围设备:
- 包括高达 3 8/16 位脉冲计数器,
- 计数输入的上升沿或下降沿,和
- 包括方向中断变更(异步正交解码器)。
实时计数器 (RTC)
许多应用存在几乎不需要执行任何操作的长时间间隔。因而,这些时间间隔应设定在睡眠模式中,以节约能源。RTC 外围设备可确保以低能耗模式进行计时。结合使用低功率 32 kHz 振荡器,RTC 可在 EM2(深度睡眠)模式下运行,并且电流消耗低于 0.6 µA。在 EM2 模式下,核心和高速外围设备会关闭,但可以启用 LCD 控制器、低能耗 UART 和 RTC 等低能耗外围设备。
看门狗定时器
看门狗定时器可以在软件故障或外部事件致使 MCU 无响应的情况下,重置系统以恢复已知的安全状态,从而提高应用程序的可靠性。已启用的看门狗定时器执行可配置的超时期限,如果 CPU 未能在超时发生前重新启动看门狗定时器,将会触发系统全面复位。
- 看门狗的功耗不大,并可使设备在低能耗模式安全保持高达 32 秒。
- 系统故障情况下的定时复位
- 9 至 256k 时钟周期超时
- 从 ULFRCO/LFXO/LFRCO 开始计时
- 锁定以避免意外变更导致启用或禁用选定振荡器
十、模拟接口
模数转换器 (ADC)
模数转换器 (ADC) 用于将模拟信号转换为数字表示:
- 8 外部输入信道
- 12 位 @ 1Msps,电流消耗仅为 350 µA
- 低至 0.5 μA,1000 个 6 位样本/秒
集成输入混合可从 8 个外部引脚和 6 个内部信号中选择输入。使用 PRS 和 DMA 时,ADC 可在 CPU 未介入的情况下运行,从而最大程度减少通电资源的数量。ADC 可进一步调整占空比设置,以减少能耗。
数模转换器 (DAC)
数模转换器 (DAC) 可在仅消耗有限能源的情况下将数字值转换为模拟信号。使用 DMA 和定时器后,DAC 可用于在任何 CPU 均未介入的情况下生成波形。
- 12 位 @ 500 ksps,电流消耗仅为 200 µA
- 2 独立信道
- 持续的采样保持和采样关闭转换模式
- 正弦生成模式
LCD 控制器
EFM32 MCU 包含一个独立的超低功耗 LCD 驱动器,其中配备内部偏置电压电路和升压转换器以最大程度减少外部组件需求。LCD 驱动器在 EM2(深度睡眠)模式下的电流消耗低于 2 µA,能够驱动分段 LCD 显示屏,最高可达 8x36 个分段。
- 低功耗 LCD 驱动器支持在应用中、甚至是能耗苛刻系统中使用 LCD 显示屏。
- 升压功能可使其为 LCD 显示屏输入高于设备电源电压的电压
- 动画功能可以在任何 CPU 均未介入的情况下使用 LCD 显示屏播放自定义动画
- LCD 驱动器可在 EM2 模式下保持活跃,并中断帧计数器工作,以定期唤醒设备,更新数据
模拟比较器
通常仅当应用中的模拟信号超出阈值时,应用才需要知道模拟信号的确切值。模拟比较器可用于比较两个模拟输入电压,然后显示数字输出,以表明哪个输入电压更高。输入既可以是某个可选的内部参考,也可以是外部引脚,并且可以直接将比较器输出发送到 GPIO 或 PRS。
- 高达 2 个模拟输入(一正一负)
- 每个比较器具有 8 个输入引脚
- 可配置的速度/电流
- 4.5 µs / 0.1 µA
- 0.2 µs / 2 µA
- 电容式感应模式
十一、安全
AES 加密加速器
Silicon Labs 的 EFM32 MCU 包括一个硬件 AES 加速器,其可在 CPU 极少或根本未介入的情况下与 128 位区块大小和 128 或 256 位密钥共同使用,以显著减少加密/解密时间。AES 模块是一个 AHB 从模块,可用于高效地访问数据和密钥寄存器。
能源模式——超高效率能耗模式
借助高性能 ARM® Cortex®-M 处理器、高代码密度和自主外围设备,EFM32™ 32 位微控制器 (MCU) 执行应用代码的速度高于 8、16、甚至 32 位解决方案。因此,EFM32 可在多数时间里运行于其所拥有的一些超高效节能模式。几个超低功耗的能耗模式可以调整能耗预算,并显著降低功耗。
Silicon Labs 的 EFM32 MCU 旨在在低能耗模式下实现高度的自主运行。MCU 智能结合了外围设备、低漏电 RAM、数据保持、DMA 和互联能力、低功耗振荡器以及极短的唤醒时间,因此长时间在低能耗模式下的运行效果很具有吸引力,从而降低了能耗。
一、能耗模式 0 — 活动/运行模式
旨在实现超低功耗运行的高性能 CPU 和外围设备
在能耗模式 0 (EM0),ARM Cortex-M CPU 从闪存和 RAM 中取回指令并执行,并能够启用所有的低能耗外围设备。EFM32 具有很高的处理能力,因此可以快速从 EM0 进入一个低能耗模式,并有效地停止 CPU 和闪存。唤醒后,所有低能耗模式将在 2 µs 内返回到 EM0。因此在需要时,可以轻松进入低能耗模式以及返回到 32 位的高性能模式。
EM0 模式功耗:180 µA/MHz
二、能耗模式 1 — 睡眠模式
处于低能耗模式,同时执行高级任务
在能耗模式 1 (EM1),CPU 时钟被禁用,有效地降低了运行时的能源需求,同时保留了所有的低能耗外围设备(包括闪存和 RAM)的功能。系统采用了周边反射系统 (PRS) 和 DMA,可以在没有 CPU 干预的情况下收集并输出外围数据。该自主行为使系统能够长时间运行于 EM1,从而延长了电池寿命。此外,低漏电 RAM 确保了完全的数据保持。
EM1 模式功耗:45 µA/MHz
三、能耗模式 2 — 深度睡眠模式
高级的低功耗和自主运行,无需 CPU 干预
在能耗模式 2 (EM2),EFM32 微控制器进行高度的自主运行,并降低能耗。在 EM2 模式,高频振荡器被关闭,但低能耗外围设备还可以使用 32 kHz 的振荡器和实时时钟。由于 EM2 下 ARM Cortex-M CPU 不运行,因此 MCU 在睡眠模式下执行高级操作。由于模块和内存的智能互连,外围设备能够自主运行,EM0 的唤醒时间仅为 2 μs,低漏电 RAM 确保了 EM2 下的完全的数据保持。
EM2 模式功耗:0.9 µA
四、能耗模式 3 — 停止模式
运行、完全的 RAM 保持和 2 µs 很短的中断唤醒时间
能耗模式 3 (EM3) 定制了 EFM32 的能耗,以保持极短的唤醒时间和对外部中断的响应时间。在 EM3,低频振荡器被禁用,但是低漏电 RAM 确保了完全的数据保持,低功耗模拟比较器或异步外部中断可以唤醒设备。
EM3 模式功耗:0.6 µA
五、能耗模式 4 — 关闭模式
适用于无需 RTC 或 RAM 保持的应用
在能耗模式 4 (EM4) — 具有最深的能耗模式 — EFM32 MCU 被完全关闭,唤醒的唯一方法是重置。这一能耗模式能够使无需 RTC 或 RAM 保持的应用进一步节省能源。可以在选择低能耗外围设备时使用能耗模式 4,包括:
上电复位
外部中断
EM4 模式功耗:20 nA
Silicon Labs 32 位微控制器的 10 大技术特点
Silicon Labs EFM32™ 32 位微控制器系列是世界上最为节能的微控制器,特别适用于低功耗和能源敏感型应用,包括能源、水表和燃气表、楼宇自动化、警报及安防和便携式医疗/健身器材。鉴于探入和成本原因而无法经常更换电池,因而在无外部电源或操作员介入的情况下此类应用的运行时间应尽可能久。Silicon Labs 节能型 EFM32 32 位微控制器优于现有的低功耗 MCU 替代品 — 在此,我们着重强调实现这一性能的 10 个因素。
一、极低的活动模式功耗
节能型 EFM32 微控制器设计显著地降低了活动模式功耗。在 32 MHz 和 3 V 条件下,MCU 运行实际代码时电流消耗为 150 μA/MHz。
二、减少处理时间
Silicon Labs 围绕 32 位 ARM® Cortex®-M 处理器核心构建了 EFM32 微控制器系列产品。Cortex-M 架构的开发用于响应和功耗敏感型应用,比 8 位和 16 位 CPU 处理更高效。因此,执行任务只需更少的时钟周期,极大地缩短工作期。
三、快速唤醒时间
EFM32 MCU 最大程度减小深度睡眠模式与活动模式之间低效的唤醒期。由于工作和睡眠模式不停转换,不能简单地忽略这段时间。EFM32 微控制器以将深度睡眠的唤醒时间降低至 2 μs,确保 CPU 开始处理其任务前,耗能尽可能低。
四、超低的待机电流
EFM32 结合超低功耗技术和高效的功耗管理,在执行基本操作的同时,降低待机模式下的能耗。深度睡眠模式包括 RAM 和 CPU 保持、加电复位、掉电检测安全功能和实时计数器,电流消耗仅为 900 nA。关闭模式仅消耗 20 nA。
五、外设自主操作
除了最低的工作和睡眠模式能耗,EFM32 外围设备在不使用 CPU 时,也可在低能耗模式下运行。使用自主外围设备,应用可以减少功耗,同时仍可执行非常高级的任务。
六、PRS – 周边反射系统
无需使用 CPU,微控制器中的周边反射系统 EFM32 即可直接将一个外围设备与另一个外围设备连接。在 CPU 处于睡眠状态时,外围设备可通过此系统产生信号,其他外围设备可接受此信号并立即对此做出反应。
七、设计良好的能耗模式
EFM32 微控制器具有 5 个节能模式,为系统设计者提供设计灵活性以优化应用,从而获得最高的性能和最长的电池寿命。
八、节能外围设备
EFM32 微控制器与外围设备封装在一起,旨在降低能耗,与其他低功耗 8、16 和 32 位解决方案相比,电池寿命提高了 4 倍。外围设备包括:
- LCD 控制器,驱动 4x40 段,电流消耗仅为 0.55 µA
- 低能耗 UART,通信频率为 32 kHz,电流消耗仅为 100 nA
- 12 位 ADC,速率为 100 万样本/秒,电流消耗仅为 350 µA
- 模拟比较器,电流消耗低至 150 nA
- 硬件加速器,128/256 位 AES 加密和解密,只需 54/75 个周期
九、LESENSE – 低功耗传感器接口
LESENSE 提供一个可配置和节能的方法,可控制最多 16 个外部模拟传感器,无需 Cortex CPU 参与。该通用低能耗传感器工作于 900 nA 的深度睡眠模式,能够对几乎任何类型的模拟传感器控制方式(包括电容式、电感式和电阻式)进行自主监控。例如,可以将 LESENSE 设置为智能监控传感器值,仅当传感器值超过可编程阈值时才通过 PRS 采取行动唤醒 CPU — 无需重复、耗能的 CPU 唤醒操作。
十、Simplicity Studio 和高级能耗监控模块
Simplicity Studio 是一款补充工具套件,能够立即“一键式”访问最新的数据表、应用说明、软件工具、第三方 IDE、示例代码、演示和其他 EFM32 资源。Simplicity Studio 控制台根据用户偏好进行自动配置,并访问唯一的 energyAware Profiler 和高级能耗监控模块 (AEM) 的数据,来创建节能型软件和实时能耗调试模块,该软件和模块能够与所有的 Silicon Labs EFM32 入门套件和开发套件协同工作。
——本文选自电子发烧友网2月《可穿戴技术特刊》“EE Design”栏目,转载请注明出处,违者必究!
评论
查看更多