TinyML设备设计的Arm内核

Arm cores designed for TinyML devices

Arm推出了两个新的IP核,旨在为终端设备、物联网设备和其低功耗、成本敏感的应用程序提供机器学习的动力。Cortex-M55微控制器核心率先采用Arm的氦矢量处理技术,而Ethos-U55机器学习加速器则是该公司现有Ethos NPU(神经处理单元)家族的微型版本。两个核心设计为一起使用,尽管也可以单独使用。             

在微控制器和其成本敏感、低功耗资源受限的设备上实现人工智能和机器学习应用被称为tinyML领域。随着5G的兴起,终端设备的智能化趋势开始显现,tinyML有望以指数级的速度成长为一个包含数十亿消费者和工业系统的市场。

“当回首五年后,可能都同意这一次标志着计算领域真正的范式变革,”Arm物联网和嵌入式的高级主管thomasensergueix说。“在几年内就看到了人工智能如何彻底改变了数据分析在云端的运行方式,大多数人口袋里都有一部人工智能增强型智能手机,现在是下一步,为各地的人工智能做好准备。”

智能家居设备,如智能音箱,将越来越能够自己进行机器学习推理

机器学习,包括语音识别和计算机视觉应用,将越来越多地发生在微控制器中。一系列的微控制器替代品如雨后春笋般涌现,基于Arm内核和其处理器,Arm正瞄准这两个新内核。

Ensergueix说:“知道,端点级别的所有数据都不能回到云端。“家庭或智能城市中的摄像机每天都会产生千兆字节的数据,而基础设施并不是为这种上游数据流而建的。确信,需要的是扩展到数十亿或万亿的物联网终端,将需要直接在物联网终端的人工智能推断能力。需要安全。”

Cortex-M55

Cortex M-55是Arm著名的Cortex-M系列微控制器的最新补充,被设计成Arm最具人工智能能力的Cortex-M内核。

M55是第一款使用Arm新的氦矢量处理技术的机型,与前几代Cortex-M相比,该技术的DSP性能提高5倍,ML性能提高15倍。基于Armv8.1-M体系结构,可以创建自定义指令来针对特定的工作负载优化处理器,也许可以压缩掉最后一次断电。

结合M55和U55利用了M55增加的DSP马力,可以用于信号预处理。然而,M55本身可以运行神经网络工作负载。具有INT8数字的专用指令,包括在机器学习应用中常用的点积。

一个成功的AIoT应用“不仅取决于良好的计算性能,而且还取决于能否在正确的时间获得正确的数据、正确的系数和正确的机器学习权重,因此处理器的内存接口已经过优化,能够处理所有进出的数据。在这方面,比其任何Cortex-M核心都更有能力,”Ensergueix说。

Cortex-M55和Ethos-U55的组合对于手势识别、生物识别和语音识别等应用具有足够的处理能力。

Ethos-U55

Ethos-U55被称为Arm的首款“微型NPU”,提供高达0.5的最高加速度(基于16nm或7nm等更小的几何结构,运行频率为1GHz)。Arm还没有公布能效数据(TOPS/W)。是可配置的-可以使用32到256个乘法累加单元(mac)-有一个重量解码器和直接内存访问,用于动态权重解压缩。

Ethos-U55加入了Ethos N77、N57和N37,相比之下,分别提供了4个、2个和1个TOP。性能可以通过使用多个etos内核进行扩展。

Cortex-M55和Ethos-U55设计用于一起使用,但也可以单独使用。

M55和U55这两个新的内核被设计为可以一起使用,可以比任何上一代Cortex-M设备更快地处理ML任务。Arm表示,与单独使用Cortex-M7相比,使用ML的端到端语音助手应用程序的速度提高了50倍,而且功率效率提高了25倍。

Arm机器学习小组副主席史蒂夫·罗迪解释说:“Cortex-M将运行应用系统代码,然后当需要处理神经网络工作负载时,该程序的命令流被放入SRAM中,向U55发出一个中断,这里,开始执行这个命令流。”。“这可能是单一模型的单一推论。U55运行完成,将结果返回SRAM,然后让Cortex-M接管。也可能是在处理流式数据(可能是音频或视频)时连续运行的情况。”

基于这些新核心的硅应该在2021年初上市。

TinyML设备设计的Arm内核的更多相关文章

  1. ARM内核全解析,从ARM7,ARM9到Cortex-A7,A8,A9,A12,A15到Cortex-A53,A57

    转自: ARM内核全解析,从ARM7,ARM9到Cortex-A7,A8,A9,A12,A15到Cortex-A53,A57 前不久ARM正式宣布推出新款ARMv8架构的Cortex-A50处理器系列 ...

  2. ARM内核和架构都是什么意思,它们到底是什么关系?

    ARM产品越来越丰富,命名也越来越多.很多朋友提问: ARM内核和架构都是什么意思?内核和架构的关系是什么?比如ARMv7架构,这个架构指的是什么?小编选出了几个精彩回答!希望对嵌友们在选择设计电路时 ...

  3. 关于ARM内核与架构的解释

    本文摘自某论坛某位大神的一段回复,经典至极,copy来己用! 只要你玩过ARM内核的芯片,那么关于内核和架构,我想应该或多或少的困惑过你,看了下面的介绍,你应该会清楚很多! 好比你盖房子,刚开始因为水 ...

  4. ARM内核和架构

    转:深入浅谈,CPU设计原理          CPU的内部架构和工作原理 推荐一本书:编码的奥秘 一.ARM内核和架构 ARM产品越来越丰富,命名也越来越多.很多朋友提问: ARM内核和架构都是什么 ...

  5. 【ARM】---关于ARM内核与架构的解释

    本文摘自某论坛某位大神的一段回复,经典至极,copy来己用! 只要你玩过ARM内核的芯片,那么关于内核和架构,我想应该或多或少的困惑过你,看了下面的介绍,你应该会清楚很多! 好比你盖房子,刚开始因为水 ...

  6. ARM内核全解析

    前不久ARM正式宣布推出新款ARMv8架构的Cortex-A50处理器系列产品,以此来扩大ARM在高性能与低功耗 领域的领先地位,进一步抢占移动终端市场份额.Cortex-A50是继Cortex-A1 ...

  7. Linux内核剖析(四)为arm内核构建源码树

    前面说到要做linux底层开发或者编写Linux的驱动,必须建立内核源码树,之前我们提到过在本机上构建源码树—-Linux内核剖析(三),其建立的源码树是针对i686平台的,但是我么嵌入式系统用的是a ...

  8. ARM内核全解析,从ARM7,ARM9到Cortex-A7,A8,A9,A12,A15到Cortex-A53,A57【转】

    转自:http://www.myir-tech.com/resource/448.asp 前不久ARM正式宣布推出新款ARMv8架构的Cortex-A50处理器系列产品,以此来扩大ARM在高性能与低功 ...

  9. 手把手教你使用eclipse+qemu+gdb来单步调试ARM内核【学习笔记】

    平台信息:linux4.0 平台:qemu 作者:庄泽彬 说明:笨叔叔的Linux视频的笔记 一.编译linux源码 export CROSS_COMPILE=arm-linux-gnueabi- e ...

随机推荐

  1. 手动脱ORiEN壳实战

    作者:Fly2015 ORiEN这种壳之前没有接触,到底是压缩壳还是加密壳也不知道,只能试一试喽.需要脱壳的程序是吾爱破解脱壳练习第7期的题目. 首先对加壳程序进行查壳,这一步也是程序脱壳的必要的一步 ...

  2. LA3415保守的老师

    题意:       有n个学生,老师要带他们出去玩,但是老师比较保守,怕他们之间萌生爱意,所以带出去的所有同学必须至少满足四个条件中的一组,问最多能带多少人出去玩. 思路:        比较简单二分 ...

  3. W32Dasm缓冲区溢出分析【转载】

    课程简介 在上次课程中与大家一起学习了编写通用的Shellcode,也提到会用一个实例来展示Shellcode的溢出. 那么本次课程中为大家准备了W32Dasm这款软件,并且是存在漏洞的版本.利用它的 ...

  4. NT 内核函数原型大全

    NTSYSAPINTSTATUSNTAPINtAcceptConnectPort(OUT PHANDLE PortHandle,IN PVOID PortIdentifier,IN PPORT_MES ...

  5. 手动添加导入表修改EXE功能

    目标: 改动PE导入表,手工给HelloWorld增加一个功能,就是启动的时候写入一条开机启动项,C:\cmd0000000000000000000000000000.exe 实现方法: 直接在注册相 ...

  6. PHP编程实现多维数组按照某个键值排序的方法

    1.array_multisort()函数对多个数组或多维数组进行排序. //对数组$hotcat按照count键值大小降序进行排序: $hotcat =array(  array('1501'=&g ...

  7. 笔记·RCNN系相关

    这篇博客总述了从RCNN到Mask RCNN的发展过程 https://blog.csdn.net/heavenpeien/article/details/80534963 简单的说,Fast RCN ...

  8. CMMI V2.0丨如何通过CMMI真正在企业中的实施规模化敏捷开发

    在过去的几年中,敏捷开发已经从一个利基概念(利基是指针对企业的优势细分出来的市场,这个市场不大,而且没有得到令人满意的服务.产品推进这个市场,有盈利的基础.)转变为全球许多大公司采用的标准实践. 通过 ...

  9. [Django框架之路由层匹配、有名 无名分组、反向解析、路由分发、名称空间、伪静态、本地虚拟环境、django版本区别]

    [Django框架之路由层匹配.有名 无名分组.反向解析.路由分发.名称空间.伪静态.本地虚拟环境.django版本区别] 路由层 路由即请求地址与视图函数的映射关系,如果把网站比喻成一本书,那路由就 ...

  10. Linux使用gcc编译时设置编码格式

    我们编写 C 程序时,可以使用 ANSI 编码,或是 UTF-8 编码:在编译程序时,可以使用以下的选项告诉编译器: -finput-charset=GB2312 -finput-charset=UT ...