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. hdu4847 水题

    题意:       你看了上面很长很长的一片英语课文之后,发现根本不用看,直接看输入输出就行了,就是给你一坨字符串,然后问你里面有几个doge(不区分大小写). 思路:       没啥说的,直接写吧 ...

  2. POJ1466 最大点权独立集

    题意:       给你n个人,再给你每个人都喜欢哪些人,让你找到一个最大的集合数,要求这个集合里面任意两个人都不喜欢彼此. 思路:       直接就是在问最大点权独立集元素个数,没啥解释的一遍二分 ...

  3. hdu5249KPI动态中位数(两个set)

    题意(中问题直接粘题意吧)                                                                      KPI Problem Descr ...

  4. mongoDB常用

    登陆{ 本地的话直接mongo,如果是docker直接就这样docker exec -it 2d71a13e3128 mongo 或者直接这样 mongo 127.0.0.1:27017 } 退出是 ...

  5. Day003 +和字符串使用的问题

    先看一段代码 int a=10; int b=20; System.out.println(""+a+b); System.out.println(a+b+"" ...

  6. 【Linux】在centos中使用命令安装redis

    1.前提centos能够上网 测试方式输入命令,有数据返回即可.如果则先配置centos网络连接. ping www.baidu.com 2.安装gcc 输入命令进行安装 yum install gc ...

  7. Vue.js源码解析-从scripts脚本看vue构建

    目录 1. scripts 脚本构建 1.1 dev 开发环境构建过程 1.1.1 配置文件代码 1.1.2 如何进行代码调试? 1.2 build 生产环境构建过程 1.2.1 scripts/bu ...

  8. [JavaScript之BOM与DOM]

    [JavaScript之BOM与DOM] BOM(Browser Object Model)是指浏览器对象模型,它使 JavaScript 有能力与浏览器进行"对话". DOM ( ...

  9. mysql 格式化 取日期

  10. java并发编程:深入了解synchronized

    简介 synchronized是Java语言的关键字,可用来给对象和方法或者代码块加锁,当它锁定一个方法或者一个代码块的时候,同一时刻最多只有一个线程执行这段代码.同时它还保证了共享变量的内存可见性. ...