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

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

3天内不再提示

RA8 Cortex-M85 Helium技术入门指南(1)

瑞萨MCU小百科 来源:瑞萨嵌入式小百科 2024-05-14 14:30 次阅读

瑞萨电子在2023年10月底推出强大的RA8系列MCU,具备突破性的3000 CoreMark,并可满足客户应用所需的完全确定性、低延迟及实时操作要求。RA8系列MCU同时也是业界首款采用Arm Cortex-M85处理器产品,能够提供卓越的6.39 CoreMark/MHz性能——这一性能水平将使系统设计人员能够使用RA MCU替代应用中常用的微处理器(MPU)。全新系列产品是广受欢迎的基于Arm Cortex-M处理器的RA产品家族中的一员。此外,为其它RA产品构建的现有设计可以轻松移植到新型RA8 MCU上。

新型RA8系列MCU部署了Arm Helium技术,即Arm的M型矢量扩展单元(M-profile Vector Extension——MVE)。MVE是ARM v8.1M架构中非常重要的一部分。目前ARM v8.1M架构下的内核包括Cortex-M52、Cortex-M55、Cortex-M85三种。下面的表格Arm Cortex-M Processor Comparison Table详细展示了从Armv6到Armv8.1M内核之间的不同。可以容易地发现,Cortex-M85是目前性能最强的Arm Cortex-M内核MCU。

c3f1c266-11ba-11ef-a297-92fbcf53809c.jpg

Arm v8.1-M架构是Arm v8-M架构的扩展版本。除了新的矢量指令集架构(Helium)以外,还有几个其他新特性:

循环和分支增强的附加指令集(低开销分支扩展,Low Overhead Branch Extension)。

支持半精度浮点指令。

调试功能增强,包括性能监测单元(Performance Monitoring Unit,PMU)和针对信号处理应用程序开发的调试附加功能支持。

用于FPU的TrustZone管理增强指令集。

非特权调试扩展。

内存保护单元(Memory Protection Unit,MPU)提供了一个新的内存属性,即“特权模式下永不执行”(Privileged eXecute Never,PXN)的属性。这允许当CPU处于特权模式下时阻止执行任意代码,而这些代码可能已经写入了用户空间。这是一个重要的安全特性。

可靠性、可用性及可维护性(Reliability,Availability and Serviceability,RAS)扩展。

引入Helium是为了在Cortex-M内核MCU上实现更高效的DSP类和机器学习操作。它和Cortex-A内核MPU中Neon有很多相似之处。Neon和Helium都使用FPU中的寄存器作为矢量寄存器。两者都使用128位向量,并且许多向量处理指令对于两种体系结构都是通用的。

然而,Helium是一种全新的设计,可在小型处理器中实现高效的信号处理性能。它为嵌入式用例提供了许多新的架构功能,因为它针对面积(成本)和功耗进行了优化,为M-Profile架构带来了类似Neon的功能(Cortex-A的SIMD注指令)。Helium经过优化,可有效利用较小Cortex-M内核中的所有可用硬件。下表详细给出了Helium和Neon之间的对比信息

Helium与Neon对比表

c41d203c-11ba-11ef-a297-92fbcf53809c.jpg

注:SIMD(Single Instruction Multiple Data)即单指令多数据,表示在该硬件中的多个处理单元中可以同时对多个数据项执行相同的操作,也就是说,CPU可以同时执行并行计算,但只有一个指令正在执行。这是数据级的并行。

目前有许多系统将Cortex-M处理器和专用可编程的DSP处理器结合来使用。Helium允许这样的系统只用一个处理器来实现。这样做有如下优点:

从软件开发的角度来看,它允许使用单个工具链,而不是分别对CPU和DSP使用各自的编译器和调试器。这就意味着程序员只需要熟悉一种架构。

消除了对处理器间通信的需求,这点可能非常重要,因为要对实时交互的两个运行时处理器中的不同软件进行调试既困难也耗时。

Cortex-M系列的CPU相比专用DSP而言,更易于编程。

在硬件设计层面,使用一个处理器(而不是两个处理器)可以简化系统,从而减少芯片面积和成本,并缩短开发周期。

在详细介绍Helium之前,我们现在来聊聊标量和矢量的概念。

数学和物理世界中的观点

标量是一个只要大小的量

- 比如纯数字,质量,速率,温度,体积等

矢量是一个有大小而且有方向的量

- 比如速度,加速度,位移,重力,摩擦力等

计算机科学世界中的观点

标量(处理器)是一次性处理一个数据元素的处理器。

- 通常用来处理通用的计算任务,如文字处理和电子表格。

- 功耗低,价格便宜。

矢量(处理器)是一次性对多组数据(每组一般为两个数据)成批地进行同样的运算,得到一批结果的处理器。如一次将100个加数与100个被加数相加,同时得到100个和的运算。

- 对于图像,视频音频数据处理等需要并行处理大量数据的任务特别有用。

- 也可用于科学计算,加速复杂算法的处理。

- 功耗高,价格稍高。

Helium寄存器、数据类型和通道

Helium寄存器是128位的,一共有8个Helium寄存器,寄存器数量不可修改。它和浮点单元(FPU)共同使用。在FPU中使用S0~S31来访问32个单精度(32位)寄存器,同样的硬件寄存器也可看做16个双精度(64位)寄存器D0~D15。例如,D0和S0、S1共用64位相同的硬件寄存器。

在Helium架构中,Helium使用8个矢量寄存器Q0~Q7。这就意味着,Helium寄存器Q0和S0~S3、D0~D1浮点寄存器使用相同的物理寄存器,Q1和S4~S7、D2~D3浮点寄存器使用相同的物理寄存器,其他Helium寄存器以此类推。因为Helium寄存器重用了标量FPU寄存器,所以当发生异常时无须使用额外的资源去保存和恢复这些寄存器(同样不影响中断延迟)。

c439aaea-11ba-11ef-a297-92fbcf53809c.png

每个Helium寄存器都可以划分为8位,16位,32位宽的通道。每个通道可以被一条指令看作:

整型数值(8/16/32位宽)

定点饱和值(Q7/Q15/Q31)

浮点数值(半精度FP16/单精度FP32)

c4601b08-11ba-11ef-a297-92fbcf53809c.png

下图是一个矢量寄存器相加的示例。Helium寄存器q5和q0都是8个int16的元素数据(8个通道),将他们相加的结果存在q0中。

c47c0d54-11ba-11ef-a297-92fbcf53809c.png

Helium允许矢量中的每个通道有条件地执行,这称作通道预测。矢量预测状态和控制寄存器(VPR)保存每个通道的条件值。某些矢量指令(比如矢量比较VCMP)可以改变VPR中的条件值,当这些条件值被设置好以后,接下来就可以使用VPT(矢量条件预测)指令,以每个通道为基础在矢量预测中实现条件执行。



审核编辑:刘清

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

    关注

    68

    文章

    18614

    浏览量

    224619
  • dsp
    dsp
    +关注

    关注

    546

    文章

    7674

    浏览量

    345412
  • 嵌入式
    +关注

    关注

    5017

    文章

    18497

    浏览量

    293283
  • 机器学习
    +关注

    关注

    66

    文章

    8200

    浏览量

    131245
  • Cortex-M85
    +关注

    关注

    0

    文章

    13

    浏览量

    501

原文标题:RA8 Cortex-M85 Helium入门指南(1)

文章出处:【微信号:瑞萨MCU小百科,微信公众号:瑞萨MCU小百科】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    RA8 Cortex-M85 Helium入门指南(2)

    这里介绍的是Helium的汇编语言指令集,虽然大部分程序员不会直接使用这些指令,而是通过C语言或者高级语言编程实现
    的头像 发表于 05-15 14:31 811次阅读
    <b class='flag-5'>RA8</b> <b class='flag-5'>Cortex-M85</b> <b class='flag-5'>Helium</b><b class='flag-5'>入门</b><b class='flag-5'>指南</b>(2)

    【Vision Board创客营连载体验】RA8D1 Vision Board初体验

    1 RA8D1 Vision Board简介 Vision-Board 开发板是 RT-Thread 推出基于瑞萨 Cortex-M85 架构 RA8D1 芯片,拥有
    发表于 04-23 21:53

    Arm Cortex-M处理器—Cortex-M85介绍

    Arm发布了新一代的Cortex-M处理器,Cortex-M85。简单粗暴的打个比方:Cortex-M85Cortex-M7TrustZoneHelium(
    发表于 07-15 14:59

    请问一下Arm Cortex-M85性能的提升是对总线进行了优化吗?

    请问一下Arm Cortex-M85性能的提升是对总线进行了优化吗?
    发表于 09-21 11:28

    请问Arm Cortex-M85内核相对于M7内核有哪些提升

    请问Arm Cortex-M85内核相对于M7内核有哪些提升?有没有哪位大神科普一下
    发表于 09-22 10:37

    IAR为瑞萨RA8系列MCU开发提供支持

    嵌入式开发软件和服务的全球领导者IAR今日宣布,其最新发布的IAR Embedded Workbench for Arm 9.40.2版本中无缝集成了对瑞萨(Renesas)RA8系列MCU的支持,为基于Arm Cortex-M85R
    的头像 发表于 11-02 17:08 783次阅读

    业界首款基于Arm Cortex-M85的超高性能MCU

    瑞萨电子重磅发布了业界首款基于Arm Cortex-M85处理器的全新超高性能MCU:RA8M1系列微处理器。 RA8系列产品具备业界卓越的6.39 CoreMark/MHz测试分数,缩小了MCU与MPU之间的性能差距。
    发表于 11-10 09:44 355次阅读

    新品发布 | 瑞萨推出面向图形显示应用和语音/视觉多模态AI应用的全新RA8 MCU产品群

    的各类图形显示和语音/视觉多模态AI要求。 所有RA8系列MCU均利用Arm Cortex-M85处理器和Arm的Helium 技术所带来的高性能
    的头像 发表于 12-15 16:00 466次阅读
    新品发布 | 瑞萨推出面向图形显示应用和语音/视觉多模态AI应用的全新<b class='flag-5'>RA8</b> MCU产品群

    瑞萨电子推出全新RA MCU家族产品RA8

    瑞萨电子推出的全新RA MCU家族产品RA8,是业界首款搭载Arm Cortex-M85内核超高性能MCU,可满足工业自动化、家电、智能家居、消费电子、楼宇/家庭自动化、医疗和AI领域的各种计算密集型应用。
    的头像 发表于 12-20 12:25 674次阅读
    瑞萨电子推出全新<b class='flag-5'>RA</b> MCU家族产品<b class='flag-5'>RA8</b>

    AMEYA360 | 皇华:瑞萨面向电机控制应用推出性能卓越的RA8 MCU

    AMEYA360 | 皇华:瑞萨面向电机控制应用推出性能卓越的RA8 MCU:全球半导体解决方案供应商 瑞萨 电子今日宣布推出基于Arm® Cortex®-M85处理器的RA8T1微控
    的头像 发表于 02-02 16:02 314次阅读

    瑞萨电子发布业界首款基于Cortex-M85处理器的全新超高性能MCU

    去年10月,瑞萨电子重磅发布了业界首款基于Cortex-M85处理器的全新超高性能MCU:RA8M1系列微处理器。 今年,瑞萨将举办RA8巡回技术研讨会。
    的头像 发表于 02-26 10:27 344次阅读
    瑞萨电子发布业界首款基于<b class='flag-5'>Cortex-M85</b>处理器的全新超高性能MCU

    Cortex-M85内核单片机如何快速上手

    2022年4月,Arm推出了全新的MCU级内核Cortex-M85。截止目前(2024年2月),Cortex-M85是最新、最强的Cortex-M内核。
    发表于 02-29 09:35 397次阅读
    <b class='flag-5'>Cortex-M85</b>内核单片机如何快速上手

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

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

    瑞萨电子RA家族推出RA8系列高算力通用MCU

    瑞萨电子RA家族推出RA8系列高算力通用MCU,是业界首款基于Arm® Cortex®-M85(CM85)内核的32位MCU,主频高达480
    的头像 发表于 04-02 14:14 672次阅读
    瑞萨电子<b class='flag-5'>RA</b>家族推出<b class='flag-5'>RA8</b>系列高算力通用MCU

    RA8 Cortex-M85 Helium入门指南(3)

    我们将通过一个RGBA图像数据中的R(红色),G(绿色),B(蓝色)3种色彩通道数据分离的例子,介绍使用helium原语函数的解交织(deinterleaving)功能。
    的头像 发表于 05-16 14:33 213次阅读
    <b class='flag-5'>RA8</b> <b class='flag-5'>Cortex-M85</b> <b class='flag-5'>Helium</b><b class='flag-5'>入门</b><b class='flag-5'>指南</b>(3)