独特的混合信号MCU能够创建更简单但更强大的设计

描述

  STM32G4微控制器系列是有史以来第一个包含 5 个模数转换器、7 个数模转换器、6 个运算放大器和 7 个比较器的微控制器,同时还集成了一个 USB-C 供电控制器,一个 184 皮秒的高分辨率定时器、具有灵活数据速率的 CAN 接口以及加速某些三角函数的数学单元。STM32F4附近 在计算吞吐量方面,STM32G4 通过为数字和模拟应用提供新的优化功能,在“混合信号”MCU 领域独树一帜。其 Cortex-M4 将达到 170 MHz 以获得 213 DMIPS,并在 CoreMark 中获得 550 分,同时其众多架构改进能够创建更简单但更强大的设计。我们还在推出时使用了两种不同的芯片,以便从一开始就提供最广泛的引脚和内存配置。

  这种新架构汲取了 STM32F3 的通用 DNA,但也增加了创新和优化,以满足各种市场的特殊需求。例如,数学加速器使其成为用于磁场定向控制 (FOC) 计算或数字电源的出色 MCU,而其 CAN FD 支持将使工业产品受益。通过在其芯片上集成更多模拟和数字组件,STM32G4 能够为服务器群和更具成本效益的消费产品创建更密集、更强大的电源。此外,它是一种面向未来的设计方式。例如,汽车中碳化硅 (SiC) 器件或氮化镓 (GaN) 晶体管的兴起需要更精确的定时器以适应其更高的开关频率。凭借其 12 通道高分辨率定时器,STM32G4 已经能够驱动基于这些组件的设计,从而塑造未来的电子产品。

  STM32G4的创新

  新的数学加速器

  STM32G4 是第一款具有两个数学加速器的 STM32,一个用于三角计算(坐标旋转数字计算机或 CORDIC),另一个用于滤波功能(滤波器数学加速器或 FMAC)。非常简单,CORDIC 加速器为电机控制、计量、信号处理和许多其他应用中经常出现的三角函数提供硬件加速。另一方面,FMAC 支持在信号处理中实现两个主要的初级滤波器:有限脉冲响应 (FIR) 和无限脉冲响应 (IIR) 数字滤波器。

  在无刷直流电机 (BLDC/PMSM) 中,相位上的电流在两个坐标系(α 轴和 β 轴)中创建定子的参考系。然后 FOC 计算矢量变化以准确控制电机的旋转,这解释了为什么在硬件中求解三角函数的能力显着提高了性能。同样,工程师可以向 IIR 和 FIR 滤波器提供时域,以进一步放大、降低或去除频率,并获得具有更少或没有噪声、混叠或漂移等的新时域信号,从而使应用程序能够与更高质量的数据。

  这两种加速带来的性能提升是显着的。CORDIC 单元计算正弦波的速度比 ARM 软件库快五倍, 而且由于它还卸载了 Cortex-M4 内核,系统可以在数学加速器计算新角度的同时执行其他任务。同样,当使用我们的电机控制库来使用 FOC 控制 BLDC 电机时, 与没有我们新的数学加速器的其他微控制器相比,STM32G4 提供了约 12% 的性能增益,这意味着开发人员可以降低其工作频率和功耗对性能没有负面影响。

  一个高分辨率定时器和三个高级电机控制定时器

  STM32G4 系列极具象征意义,因为它是第一个包含分辨率低于 200 皮秒的定时器的 ST MCU 架构。它的第一个也是最明显的好处是它能够驱动 LLC 谐振拓扑中的高精度电源。由于存在七个时基,开发人员可以将这些时基组合起来以获得非常精细的调制,该定时器还提供了高度灵活的脉宽调制 (PWM)。例如,高分辨率定时器还受益于事件处理程序,以帮助工程师更轻松地配置和调用定时器或使用它来生成中断。

  新的微控制器系列集成了三个 16 位高级电机控制定时器。在它们的众多特性中,它们支持 PWM 模式以更好地控制电源开关,并且它们具有功率级保护系统,可以在发生故障时禁用 PWM 输出。定时器还具有正交编码器和霍尔传感器的不同模式,可自动调整计数方向,从而允许定时器在使用转速计时检测转子的位置或其速度。因此,开发人员可以使用计时器来读取角度或方向,以简化代码并提高应用程序的精度。

  双存储区闪存和安全存储区

  STM32G47x MCU 还具有双存储体闪存形式的关键特性。非常简单,MCU 将闪存组织在两个具有读写 (RWW) 功能的物理存储区中。因此,可以下载、安装、然后运行新固件而不会中断。系统在一个银行上运行,而另一个接收新固件。然后系统可以热交换银行并无缝切换到第二个银行以运行新代码。开发人员甚至可以通过使用 STM32G4 上提供的新安全功能来保护下载操作,例如安全内存区域:一段内存,可以存储密钥或执行软件例程,并且在复位后仅运行一次,然后对用户代码不可见。

  STM32G4的优化

  CCM-SRAM 日常助推器

  STM32G4还借鉴了其他STM32系列的很多创新。例如,与 STM32F3 一样,开发人员可以使用一些可用的 SRAM 作为内核耦合存储器 ( CCM )。ST 还将这项技术称为“例程助推器”,因为程序员可以将一段代码放入内核的 SRAM 中,以加快关键例程的执行并保持其确定性。然后,STM32G4 将能够使用其指令总线调用代码,同时使用数据总线检索信息,从而优化性能,因为代码可以在可用的最高时钟频率和零等待状态下运行。开发人员将 CCM-SRAM 用于实时或计算密集型应用程序,因为它可以防止例程和数据必须共享同一总线时出现的瓶颈。

  受益于 CCM-SRAM 非常简单,因为开发人员只需要定义 CCM-SRAM 的内存地址区域并使用特殊属性标记代码片段,该属性告诉编译器将其移动到耦合的核心存储器。然后,程序员在启动时通过修改启动文件将代码加载到 CCM-SRAM 中,必要时复制主函数中的初始化变量,然后调用相关代码。因此,只需几行代码就可以显着优化应用程序,我们邀请开发人员查看我们关于该主题的应用说明。

  众多外设和优化

  除了众多的模拟外设之外,STM32G4 还集成了对信号处理的优化。例如,模数转换器在硬件中包含增益和偏移补偿,以减轻 CPU 的负担并获得比应用程序在软件中执行所有这些任务时更好的性能。同样,系统还可以自动处理硬件中的奇怪事件,最多连续处理八次。当系统对超出其看门狗窗口的信号进行采样时,通常会设计一个例程对信号进行重新采样,以评估它是否只是故障还是系统问题。由于我们的硬件集成,开发人员可以更有效地享受好奇的事件处理。最终,数据表中列出的大量外设令人印象深刻,但它也隐藏了众多有助于 MCU 在竞争中脱颖而出的硬件优化。

  STM32G4 中存在如此多的模拟和数字功能的一个固有挑战是外部引脚的使用。如果用户必须为每个人使用特定的 pin,几乎不可能使用其所有功能。因此,新系列的 MCU 使用内部互连系统来减少外部引脚的使用。它还允许外围设备传输数据,而不必涉及缓冲区并显着限制性能,从而使整个系统更加实用。这个互连系统所代表的成就很容易被忽视,但由于外围设备很多,在裸片上设计这个网络需要很多独创性。

  如何开始

  开始试验 STM32G4 的最佳方法是使用它的开发板之一。我们正在发布NUCLEO-G474RE和NUCLEO-G431RB以及评估板STM32G474E-EVAL1、STM32G474E-EVAL和STM32G484E-EVAL。它们都有显示器,而 STM32G474E-EVAL1 还具有用于单电机和双电机控制的硬件配置,STM32G484E-EVAL 集成了加密内核和真随机数发生器。最后,我们还提供用于电机控制应用的完整 Nucleo 包 ( P-NUCLEO-IHM03 ),以配合我们新的电机控制软件开发套件X-CUBE-MCSDK新版本的发布它将接收更新以利用 STM32G4 的新数学单元等。

  审核编辑:郭婷

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分