当前位置: 首页 > news >正文

ARMv8.x-M架构计算能力概览

1.ARMv8.xM架构提供了哪些计算能力?

        ARMv7-M时代,Cortex-M系列CPU以提供通用计算能力为主。ARMv8-M架构提供了更加多样的计算能力。

        首先,提供Thumb2指令集提供整数通用计算能力。

        其次,ARMv8.x-M架构手册明确列出了更多可选的CPU拓展计算能力。

        The Floating-point Extension,浮点计算能力。ARMv8-M架构提供了单精度,双精度浮点计算能力。ARMv8.1-M架构还提供了半精度浮点计算能力。

        The Digital Signal Processing Extension,DSP计算能力。以Cortex-M33为例,该CPU采用ARMv8-M架构,其DSP拥有下面的拓展计算能力。

        M-Profile Vector Extension。ARM对此有另一个品牌ARM Helium。因为ARMv8架构有NEON的SIMD的计算能力。ARMv7-M架构完全没有这方面的计算能力,而ARMv8.1-M提供了适用于Cortex-M系列的SIMD计算能力。这个技术就是MVE。

        The Custom Datapath Extension。ARMv8.x-M架构的CPU内部可能集成一个名字叫做CDE的模块(比如STM32N6使用的Cortex M55)。该模块支持CPU提供用户定义第三方指令。

        总结一下。

计算需求

对应技术

通用整数计算能力

Thumb2

浮点计算能力

The Floating-point Extension

DSP计算能力

The Digital Signal Processing Extension

SIMD计算能力

MVE (Helium)

第三方定制计算能力

CDE

2.部分ARMv8.x-M架构CPU的计算能力分析

        简单统计了一下,可能有误,仅供参考。

CPU

架构

Thumb2

FP

DSP

MVE

CDE

Cortex M23

ARMv8-M

Yes

No

No

No

No

Cortex M33

ARMv8-M

Yes

Yes

Yes

No

Yes

Cortex M55

ARMv8.1-M

Yes

Yes

Yes

Yes

Yes

Cortex M85

ARMv8.1-M

Yes

Yes

Yes

Yes

Yes

3.Cortex M55的实现

        Cortex M55提供了比较完整的计算能力,其对架构的实现代表了目前ARM对ARMv8.x-M架构的实现方式。

        首先,IFU,DPU和LSU是传统CPU最基础的组成部分,执行的是取指,译码,执行,访存,写回的经典流水线步骤。

        IFU负责取指。

        DPU负责译码,执行。

        LSU负责访存。

        DPU更为常见的名称是EXU。印象里ARM以前的CPU也叫EXU,但是现在确实是DPU了。内部包含的是ALU等典型计算单元。

        另一个与计算密切相关的是PDEPU供电的这一部分。显然,这部分的EPU或CDE都是可选实现。但是如果要实现ARMv8.1-M架构完整的浮点向量计算能力,还是要实现EPU的。如果实现用户定义指令,CDE也需要实现。

相关文章:

  • react路由5和6新增及区别
  • 【论文阅读】FairCLIP - 医疗视觉语言学习中的公平性提升
  • 基于香橙派 KunpengPro学习CANN(2)——Ascend Extension for PyTorch 配置与安装
  • 深度学习框架PyTorch——从入门到精通(5)自动微分
  • Web3游戏行业报告
  • XML转义符详解:如何在XML中正确处理特殊字符
  • Vue3项目匹配PC端和移动端---两套组件
  • 生成式人工智能大模型备案政策深度解读
  • 请大家推荐一款免费的网站模版。
  • 【C++】多参数构造函数使用explict的情形
  • LSM-Tree(Log-Structured Merge-Tree)详解
  • Java 单例模式与线程安全
  • Electron使用WebAssembly实现CRC-16 MAXIM校验
  • jmeter环境搭建及使用
  • 【第9章】亿级电商平台订单系统-整体技术架构设计
  • 【华为OD-E卷 -123 判断一组不等式是否满足约束并输出最大差 100分(python、java、c++、js、c)】
  • AI技术学习笔记系列003:`liger_kernel`、`flashattn2` 和 `unsloth` 介绍
  • 第52届医疗器械博览会盛装启幕,开启AI 赋能驱动医疗装备“新视界”
  • 【k8s004】 Docker 打包 K8s镜像
  • 《灵珠觉醒:从零到算法金仙的C++修炼》卷三·天劫试炼(67)混元无极算素数 - 埃拉托斯特尼筛法
  • 王楚钦球拍受损,乒乓球裁判揭秘大赛球拍检测
  • 证监会:证券公司要处理好功能性和盈利性关系,切实维护好投资者利益
  • 济南一医院救护车未执行紧急任务时违规鸣笛
  • 复旦建校120周年|迎来复旦大学艺术馆开馆
  • 离休干部周惠梅逝世,曾从事多年地下革命工作
  • 央媒:设施老化、应急预案套模板,养老机构消防隐患亟待排查