0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用市面上首款基于 Arm® Cortex®-M33 的 MCU – 第 1 部分:管理功耗与性能

丫丫119 来源:未知 作者:肖冰 2019-08-02 11:34 次阅读

明确并满足不同的需求

互连产品发展迅速:最初的系统相对简单,最具挑战性的设计需求通常也只涉及通信的某些方面;而如今,设计人员的处境却更为艰难:各个应用领域中,需求组合不断扩展,却几乎不容妥协任何方面。每种应用都要求开发人员根据需要转移重点,以应对该应用独有的挑战。不过,对更高性能和更低功耗的需求却是大多数主流应用领域的共同主题。

例如,智能工厂不仅依赖于低延时、高性能器件(用于信号处理),而且要求降低功耗,以便工厂工程师能在狭小空间中容纳更多器件。消费类可穿戴设备不仅需要低功耗设计以延长电池续航时间,而且面临着不断增长的信号处理需求,以便能够处理更复杂的工作负载。在各个应用领域中,设计人员承受的压力越来越大,需要更有效地响应关于器件、网络和企业资产的漏洞的实际担忧,使其免遭来自个别网络窃贼、犯罪组织甚至国家赞助团体的直接攻击或高级持续性威胁。

为了满足这些不同的需求,开发人员通常需要作出抉择,在设计的某一方面作出妥协。他们可能会选择牺牲应用性能以降低功耗,使用较低性能的处理器、降低时钟速率,或者降低处理器的占空比来支持低功耗状态。然而,为了满足严格的性能要求,他们就可能会采取相反的做法,使用更强大的处理器、更快的时钟速率和更高的占空比,但代价则是功耗剧增。对于计算复杂度较高的应用,他们可能会添加专用数字信号处理器 (DSP) 来加速算法执行,但设计复杂性、成本和系统功耗也会相应增加。即使功耗与性能达到了可接受的平衡,他们往往也需要接受设计成本和复杂性的增加以满足安全要求。

尽管设计人员为满足不同需求而心力交瘁,但对于医疗设备、工业自动化系统、零售支付设备等关键应用,用户可接受的妥协空间越来越小,甚至拒不接受。NXP Semiconductors 的 LPC55S6x 微控制器系列器件架构,既有通用处理器的灵活性,又有新兴应用所需的专门处理能力和安全性,从而免除设计人员的妥协之困。

功能丰富,兼有专用处理内核

NXP Semiconductors 的单核LPC55S66和双核LPC55S69微控制器是市面上首款基于Arm®Cortex®-M33 的通用 MCU,具有 Arm M 系列架构典型的低延时、确定性性能。NXP 的 LPC55S6x 器件在架构上加设了诸多增强功能,包括该公司的高性能 PowerQuad DSP 加速器、CASPER(Cryptographic Accelerator and Signaling Processing Engine with RAM,带 RAM 的加密加速器及信号处理引擎)加密引擎以及全面安全子系统。除了高达 640 KB 的闪存、320 KB 的 SRAM 和 128 KB 的 ROM 外,LPC55S6x 器件还集成了大量功能元件,而这些元件通常需要用于所有深度嵌入式系统设计(图 1)。

图 1:LPC55S6x 微控制器架构在 Arm Cortex-M33 内核的通用处理能力基础上,扩展了专门硬件模块用于执行信号处理、加密、安全存储和密钥管理,同时还提供典型嵌入式设计所需的全套外设。(图片来源:NXP Semiconductors)

在这些功能元件中,LPC55S6x 器件配备了功能全面的定时器子系统、多个串行接口、安全的直接存储器访问 (DMA) 控制器和多达 64 个通用 I/O (GPIO) 引脚。除了这些数字子系统,LPC55S6x 器件还集成了 16 位多通道逐次逼近寄存器 (SAR) 模数转换器 (ADC)、模拟比较器温度传感器。此外,片上可编程逻辑单元 (PLU) 允许开发人员配置 26 个五输入查找表 (LUT) 结构,构建状态机等自定义组合逻辑或时序逻辑。开发人员可以访问 PLU 寄存器,直接对 PLU 编程以实现小型逻辑电路,或使用 NXP 工具实现使用 Verilog 寄存器传输语言 (RTL) 描述的较大型逻辑电路。

为了避免访问多个子系统时出现瓶颈问题,LPC55S6x 器件采用多层总线矩阵,以 Arm 高级微控制器总线架构 (AMBA) 的高级高性能总线 (AHB) 架构构建。AHB 总线矩阵提供总线主控器与外设或存储器之间的直接连接。例如,这种方法允许 DMA 传输以全速运行,而不会影响处理器对存储器的访问性能。事实上,在众多设计需求中,使处理器效率最大化的能力是 LPC55S6x 架构的基础。

在 LPC55S6x 架构中,Cortex-M33 内核提供多种功能来帮助设计人员更轻松地应对不同的设计要求。与其他同类器件一样,LPC55S6x 处理器支持多种低功耗模式。如果器件长时间处于非活动状态,开发人员可以将器件置于省电模式,可以完全保留 SRAM 的内容,但是功耗仅为 15.4 µA;或将器件置于深度省电模式,继续为 4 KB 的 SRAM 部分供电,而功耗只有大约 0.59 µA。休眠模式和深度休眠模式下,处理器关闭,但会为外设和存储器提供不同程度的操作:休眠模式下可进行全面操作,功耗约为 2.7 mA,而深度休眠模式会对外设使用时钟门控,从而将功耗降至约 110 µA。

增强功能

除了低功耗模式外,LPC55S6x 架构还通过集成功能扩展对不同设计需求的支持,从而提高性能和安全性。Cortex-M33 主内核内置的集成功能包括 Arm TrustZone 安全扩展 (SECEXT)、存储器保护单元 (MPU)、IEEE 754 标准浮点运算单元 (FPU) 和嵌入式跟踪宏单元 (ETM)。此外,主内核还包含 CASPER 加密引擎和 PowerQuad 加速器,支持 DSP 和单指令多数据 (SIMD) 操作。

请注意:双核 LPC55S69 微控制器的另一个 Cortex-M33 内核不包含这些附加功能。

对于这些集成子系统和架构特性,每个特性都能提供丰富的功能,相关详细说明远远超出了本文的涵盖范畴。例如,PowerQuad DSP 加速器本身就是精密协处理器,能够独立完成信号处理功能,同时又可作为总线主控器访问存储器。

在内部,PowerQuad 加速器将多个寄存器和接口与一组硬件引擎相结合,用于执行关键信号处理功能,包括快速傅里叶变换 (FFT)、离散余弦变换 (DCT)、无限脉冲响应 (IIR)、有限脉冲响应 (FIR) 以及用于高效计算三角函数的坐标旋转数字计算机 (CORDIC) 算法(图 2)。

图 2:NXP Semiconductors 的 LPC55S6x 微控制器系列集成了该公司的 PowerQuad 协处理器,后者使用专门引擎来加速信号处理应用常用算法的执行。(图片来源:NXP Semiconductors)

借助 PowerQuad 加速器,开发人员可以执行复杂的信号处理运算,而不会影响主机处理器响应实时事件或完成一系列扩展操作。主机处理器只需使用所需的信号处理函数设置 PowerQuad 寄存器,并指定来源、目标和工作存储区的存储器地址。一旦调用,PowerQuad 加速器就会作为真正的协处理器运行,作为总线主控器使用 AHB 矩阵来执行 128 位存储器传输。与此同时,主机处理器可以立即返回执行主处理任务,只需定期轮询 PowerQuad 忙位,或简单响应 PowerQuad 发送的完成中断以访问结果。

不过,对于开发人员而言,PowerQuad 操作大多是透明的。开发人员可使用标准应用程序编程接口 (API) 来调用 Arm Cortex 微控制器软件接口标准 (CMSIS) 的 DSP 库。NXP Semiconductors 的 MCUXpresso 软件开发套件 (SDK) 包含支持 PowerQuad 的 NXP 版 DSP 库。该库通过调用 PowerQuad API 替代软件实现的低级数学函数。

例如,若需计算复数 FFT,开发人员使用标准 CMSIS-DSP 函数arm_cfft_q31(),数据设为 Q 格式,即 32 位定点数用 1 个符号位和 31 个指数位来表示。在纯软件实现中,调用arm_cfft_q31()函数会相应地调用 CMSIS DSP FFT 蝶形运算函数arm_radix4_butterfly_q31()和结束函数arm_cfft_radix4by2_q31();计算复数逆 FFT 时则会调用相应的反函数。

但是,若使用 NXP 的 DSP 库和 PowerQuad,正常调用arm_cfft_q31()却会调用PQ_TransformCFFT(),并在硬件中处理相同的计算。最终,不仅减轻了 Cortex-M33 内核的处理负荷,而且加速了 DSP 函数的执行(图 3)。

图 3:MCUXpresso 软件开发套件可显著加速常用 DSP 算法的执行,同时通过直接调用 PowerQuad 加速器来替代低级 CMSIS-DSP 函数,从而保持与标准 Arm CMSIS DSP 库高级调用的兼容性。(图片来源:NXP Semiconductors)

CASPER 加密引擎作为另一个协处理器,同样能减轻主处理器的负担,使其免于处理与非对称加密算法相关的繁重计算负荷。CASPER 加密引擎执行 Rivest-Shamir-Adleman (RSA) 算法、Diffie-Hellman 算法、椭圆曲线加密法 (ECC) 和椭圆曲线数字签名算法 (ECDSA) 的速度是 Cortex-M33 内核运行同类加密软件的八倍。

为了加速对称算法的执行,LPC55S6x 还集成了硬件模块以支持高级加密标准 256 位加密 (AES-256) 和安全散列算法 2 (SHA-2)。

这些硬件模块与 CASPER 引擎的组合为开发人员提供基于硬件的支持,有利于实现身份验证和数据加密常用的加密算法,满足互连产品保护数据交换的需求。

正如本系列文章第 2 部分所讨论,LPC55S6x 系列对安全性的支持远远超出了基本加密算法;该系列提供基于硬件的安全功能,可满足全生命周期安全性的需求。

系统开发

借助 NXP 的LPC55S69 EVK,开发人员可以快速探索 LPC55S6x 微控制器的加密引擎、DSP 和通用处理能力。LPC55S69 EVK 旨在加速这些器件应用的开发工作,该电路板具有双核 LPC55S69 微控制器、NXP 的MMA8652FCR1加速计LED、按钮、调试接口,并支持ArduinoUNO、MikroElektronicaClick 和DigilentPMod 附加硬件等多种扩展选项。

该电路板具有多个跳线和针座,可让开发人员轻松设置不同的硬件配置并仔细检测性能细节(图 4)。例如,关注功耗的开发人员只需使用电压表测量 P12 针座处的电压降,便可测量 LPC55S69 的供电电流

图 4:NXP Semiconductors 的 LPC55S69 EVK 围绕该公司的双核 LPC55S69 微控制器构建,提供多个跳线和针座,使开发人员可以轻松配置并检测微控制器的电流消耗等性能细节。(图片来源:NXP Semiconductors)

开发应用时,设计人员可将该电路板与 MCUXpresso 集成开发环境 (IDE) 和 SDK 配合使用,该套件使用 PowerQuad 功能(如前所述)等 LPC55S6x 专用硬件。此外,IARKeil IDE 也支持 LPC55S69-EVK。NXP 还提供免费软件包,通过样例代码演示 LPC55S6x 功能使用的主要软件设计模式。

总结

物联网工业自动化、医疗系统、消费类设备等广泛的应用中,开发人员希望取得高性能、低功耗与安全性之间的平衡。如上所述,LPC55S6x 系列微控制器兼有功能强大的通用内核与专用硬件和处理引擎,让开发人员能够更轻松地满足高性能专用功能的需求,同时保持低功耗。

本系列文章第 2 部分介绍如何使用 LPC55S6x 系列来管理器件的全生命周期安全性。

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

    关注

    134

    文章

    9097

    浏览量

    367562
  • 物联网
    +关注

    关注

    2909

    文章

    44635

    浏览量

    373373
收藏 人收藏

    评论

    相关推荐

    MAX32675C超低功耗Arm® Cortex®-M4F MCU

    Analog Devices MAX32675C超低功耗Arm® Cortex®-M4F MCU是高度集成的混合信号微控制器,适用于工业应用
    的头像 发表于 11-28 11:50 384次阅读
    MAX32675C超低<b class='flag-5'>功耗</b><b class='flag-5'>Arm</b>® <b class='flag-5'>Cortex</b>®-<b class='flag-5'>M</b>4F <b class='flag-5'>MCU</b>

    兆易创新推出基于Arm Cortex-M33内核的GD32G5系列高性能微控制器

    近日,业界领先的半导体器件供应商兆易创新GigaDevice (股票代码 603986) 宣布,正式推出基于Arm Cortex-M33内核的GD32G5系列高性能微控制器。
    的头像 发表于 11-13 17:24 710次阅读
    兆易创新推出基于<b class='flag-5'>Arm</b> <b class='flag-5'>Cortex-M33</b>内核的GD32G5系列高<b class='flag-5'>性能</b>微控制器

    树莓派Pico 2发布,搭载RP2350双核RISC-V和Arm Cortex-M33微控制器!

    与 4MB 的外部 QSPI 闪存搭配,高于原始 Pico 的 2MB。它的外形尺寸和电气性能与原始的 Pico 设计兼容。 – 双核 Arm Cortex-M33 或双核 Hazard3 处理器
    发表于 08-13 10:07

    请问Matter Android APP是否支持连接市面上的Matter设备?

    各位大佬们,请教下我基于matter开源的Android App,是否可以连接市面上其他的matter协议设备并且进行控制呢?如果不可以,是需要其他认证码?
    发表于 07-24 07:25

    求助:现在市面上有成熟稳定货源的8k分辨率CMOS吗?

    如题 最近一直在找相关的解决方案,发现市面上已经有了几能编解码8k的视频芯片,但是没有找到合适的CMOS方案。特地注册一个账号来向大家求助!
    发表于 07-23 09:37

    市面上FPGA入门用哪块板子好啊?

    市面上FPGA入门用哪块板子好啊?用的什么开发软件和编程语言的??
    发表于 03-30 11:24

    市面上很火的32位单片机—PY32F030单片机的产品特性介绍

    PY32F030 系列单片机是采用了高性能的 32 位 ARM® Cortex®-M0+ 内核,宽电压工作范围的 MCU
    的头像 发表于 03-22 15:29 1296次阅读

    兆易创新推出GD32F5系列Cortex-M33内核MCU

    兆易创新GigaDevice宣布,正式推出GD32F5系列高性能微控制器,该系列MCU基于Arm® Cortex®-M33内核,旨在满足各类
    的头像 发表于 03-16 09:58 1204次阅读

    Cortex-M3芯片有哪些

    Cortex-M3芯片是一基于ARM架构的低功耗、高性能的嵌入式处理器。目前市面上有众多厂商生
    的头像 发表于 03-11 17:07 1593次阅读

    兆易创新推出GD32F5系列Cortex®-M33内核MCU

    业界领先的半导体器件供应商兆易创新GigaDevice 今日宣布,正式推出基于Arm® Cortex®-M33内核的GD32F5系列高性能微控制器,全面适配于能源电力、光伏储能、工业自
    的头像 发表于 03-07 11:40 851次阅读
    兆易创新推出GD32F5系列<b class='flag-5'>Cortex</b>®-<b class='flag-5'>M33</b>内核<b class='flag-5'>MCU</b>

    业界首基于Arm Cortex-M85处理器的MCU

    所有RA8系列MCU均利用Arm Cortex-M85处理器和Arm的Helium技术所带来的高性能,结合矢量/SIMD指令集扩展,能够在数
    发表于 03-05 14:14 722次阅读
    业界首<b class='flag-5'>款</b>基于<b class='flag-5'>Arm</b> <b class='flag-5'>Cortex-M</b>85处理器的<b class='flag-5'>MCU</b>

    ARM®Cortex®-M23 32位MCU数据表

    电子发烧友网站提供《ARM®Cortex®-M23 32位MCU数据表.pdf》资料免费下载
    发表于 02-22 14:32 0次下载
    <b class='flag-5'>ARM</b>®<b class='flag-5'>Cortex</b>®-<b class='flag-5'>M</b>23 32位<b class='flag-5'>MCU</b>数据表

    市面上常见的滤波器有哪些?

    市面上常见的滤波器有很多种类,它们被广泛应用于各种领域,包括通信、电子设备、音频处理等。
    的头像 发表于 01-23 18:26 1472次阅读

    STM32 Cortex®-M33 MCU编程手册

    本编程手册为应用程序和系统级软件开发人员提供信息。它给出了完整的描述STM32 Cortex-M33处理器编程模型、指令集和核心外设。适用的产品有列在下表中。Cortex-M33处理器是为微控制器
    发表于 01-09 09:50 15次下载

    HOLTEK新推出HT32F67742 Arm® Cortex®-M0+蓝牙5.2低功耗MCU

    Holtek新推出通过BQB(Bluetooth Qualification Body)认证Bluetooth 5.2 Arm Cortex-M0+低功耗蓝牙(Bluetooth Low Energy, BLE)
    的头像 发表于 01-08 15:23 805次阅读