Arm开放指令集,对今后的IoT发展意味着什么?

发布者:EEWorld资讯最新更新时间:2019-10-09 来源: EEWORLD关键字:Arm  IoT  指令集 手机看文章 扫描二维码
随时随地手机看文章

翻译自——staceyoniot及新闻稿件

 

半导体知识产权(IP)提供商Arm,在业界已无人不知,无人不晓。它开发了世界上几乎所有手机处理器都使用的底层架构,现在,Arm进一步开放了该架构以供订制化的需求。Arm表示,将允许合作伙伴定制Arm指令集架构(ISA),以帮助改善合作伙伴终端设备性能和效率。

 

据悉,Arm首席执行官Simon Segars在Arm® TechCon 2019大会中宣布推出Arm Custom Instructions,这是针对Armv8-M架构新增的功能。2020年上半年开始,Arm Custom Instructions初期将在Arm Cortex®-M33 CPU上实施,并且不会对新的或既有授权厂商收取额外费用,同时让SoC设计人员在没有软件碎片化风险下,得以针对特定嵌入式与IoT应用加入自己的指令。

 

Arm资深副总裁暨车用与物联网事业部总经理Dipti Vachani表示:“一个拥有一兆个安全智能设备的世界,将建立在复杂应用场景的多元性上,同时需要增强硬件与软件设计之间的协同综效。”她指出:“我们已经开发出Arm Custom Instructions以带动硬件与软件更密切的共同设计努力,以便实现特定应用的加速,同时开启更大的设备差异化。”

 

CPU:供Arm半导体合作伙伴进行创新的框架

 

不断演进的Armv8-M架构配置了Arm TrustZone™安全技术,作为其一部分,Arm Custom Instructions基于一个简单的指导原则:CPU是供Arm半导体合作伙伴进行创新的框架。这一理念让芯片设计人员藉由把其独特的特定应用功能加入Cortex-M33 CPU中,有机会将性能与效率进一步向上推进。

 

Arm Custom Instructions通过对CPU进行修改、保留编码空间得以实现,帮助设计人员轻易增加客制化数据路径扩展,同时保有既有软件生态系统的完整性。这个功能加上既有的协处理器接口,可以让Cortex-M33 CPU利用针对机器学习(ML)与人工智能(AI)等边缘计算应用场景优化的各类型加速器进行扩展。

 

Arm资深副总裁暨车用与物联网事业部总经理Dipti Vachani表示:“一个拥有一兆个安全智能设备的世界,将建立在复杂应用场景的多元性上,同时需要增强硬件与软件设计之间的协同综效。”她指出:“我们已经开发出Arm Custom Instructions以带动硬件与软件更密切的共同设计努力,以便实现特定应用的加速,同时开启更大的设备差异化。”

 

 

指令集是Arm的核心知识产权,也是它从高通(Qualcomm)、NXP,甚至苹果和谷歌等众多科技巨头获得的收入来源。他们使用这种架构来为自己的芯片授权。

 

说到指令集,先简单科普一下。

 

指令集(ISA)是硅架构的最低层次,它告诉计算机程序员如何处理芯片上的数据流和状态。如今,Arm对其进行了优化,以实现更高的能源效率。这会帮助它在移动电话和作为物联网底层芯片架构方面取得了更成层的进展。

 

随着芯片架构和工艺的不断进步,将会促使Arm指令集的不断修改。

 

芯片世界正在发生着两大转变;需要芯片的设备数量正在增加,它们所做的工作类型被分割成大量的工作负载。这些工作负载的范围可能从降低温度一直到运行计算机视觉的机器学习模型。

 

整个芯片行业都在对这些趋势做出反应。英特尔,x86架构的创造者,正在倡导着其他指令集和可编程芯片。lcomm、NXP和其他传统Arm的客户正在进行整合。英伟达(Nvidia)和西部数据(Western Digital)为专用内部处理器设计了自己的ISA,他们是RISC-V开源指令集的坚决拥护者,这种指令集使它们能够定制芯片,以满足高度个性化的需求。

 

总的来说,这一趋势的核心是针对更多处理能力需求的产生,同时更加强调了能源效率。机器学习需要大量的计算能力,而许多新的芯片家庭是电池供电的。为了提高效率,芯片公司已经采取了各种设计调整,比如分配一个协同处理器来执行一个专门的功能,比如去执行动作检测或唤醒词检测。再例如,苹果公司在Apple Watch中使用了一种协同处理器来进行动作检测,这使得Apple Watch无需使用相对耗电的主处理器就能检测到动作。

 

另一种设计技术是在内存中执行处理,以加快计算速度并提高性能。这在设计用于执行机器学习任务的芯片中变得越来越普遍。但内存处理需要专门设计的芯片,需要定制固件,且只能运行某些软件。构建这样的软件是需要资源的,而且通常会限制这些设备能够运行的应用程序的类型。

 

Arm的这张幻灯片展示了客户试图为机器学习等工作增加处理器速度和效率的典型方式

 

Arm开放指令集的决定,有益于使企业能够利用Arm庞大的软件支持网络,同时也将专用的数学运算嵌入到特定用例的指令集中。Silicon Labs的首席技术官Alessandro Pi0vaccari表示,这种程度的软件支持非常重要,Silicon Labs设计出了若干种定制化的方法。

 

NXP的技术研究员、首席MCU核心平台和安全架构师Joe Cirello说到:“一般情况下,优化通用ISA可以获得更好的性能和更强的能力,但现在出现了一组相对较新的应用程序,它们可能与过去一些比较传统的MCU应用程序有不同的要求。”他说,特别是物联网节点和边缘计算设备需要更高的安全性或机器学习性能,而定制的ISA可以使这些性能受益。

 

这意味着NXP可以开发出一种全新的芯片,它不仅可以作为处理器的一部分,专门用于检测唤醒词,而且还可以运行流行的应用程序。几年来,客户一直在推动Arm让他们定制ISA,在不断变化的环境和RISC-V兴起的压力下,确实如此。

 

虽然没有提到RISC-V,但它显然是最近许多决策的一个考量因素。RISC-V指令集是由伯克利的研究人员开发的,目的是为低功耗计算提供一个开源的架构。RISC-V对于计算机网虫来说是一大福音,但它并没有真正普及开来,直到一家名为SiFive的公司开始构建支持和工具,使用它们来设计RISC-V处理器。

 

在那之前,芯片设计师构建一个RISC-V处理器,而另一组固件和编译器专家可以构建支持软件,让这些在RISC-V处理器上运行,但这种支持只存在于少数公司。此外,早在2012年,甚至是2015年SiFive刚成立之时,这种相结合的设计是有限的。Nvidia使用RISC-V构建了一个芯片来管理游戏处理器上的GPU核心,但它已经有了一个专门的硬件和软件团队去做这件事。

 

市场正在改变。2016年,我与一家名为Greenwaves的公司会面,这家公司有几个芯片设计师正在利用RISC-V ISA为物联网设计一种新芯片,并对其进行改造。他们选择这样的架构是因为它是开源的,而且可以节省几百万的Arm授权费用。由于芯片将成为一个子系统的一部分,而不是运行流行应用程序的通用设备,所以缺乏高级软件并不重要。

 

但英伟达和Greenwaves等举措暴露了Arm业务的弱点。他们必须采取一些措施来满足大客户的需求,并继续吸引那些试图打造下一代硅产品的初创公司。

 

大约两个月前,Arm表示将向试图研发新型硅材料的初创公司和研究人员提供免费许可证。

 

他们的目的是想让他们尝试将基于Arm的处理器应用到新的设计中,这些设计可以针对电源管理进行优化,或者对处理能力进行轻微调整。一旦一项设计进入生产阶段,该公司将支付全部的授权费用,但这给了公司在没有如此高的前期成本的情况下进行试验的空间。

 

今天,随着ISA的开放,Arm为大大小小的客户提供了更多的灵活性。

 

当然,这也是有限制的。Arm已经打开了微控制器M-33处理器上的指令集,它是用于小型电池驱动设备上的。Arm还生产了一系列a级处理器,用于服务器、手机基站和手机处理器。但a类设计没有获得开放指令集的自由。

 

出奇的是,Arm不会对ISA的调整能力收取更高的费用。Trias Research的分析师Kevin Krewell表示,进一步开放市场的决定是必要的,这表明软银在2016年收购Arm的举措正在慢慢改变公司的文化。考虑到当今计算机世界的需求,这些变化是必须的,很高兴看到Arm制造了它们。

 

更强大的生态系统灵活性与差异性

 

Arm Custom Instructions结合最近推出的Arm Flexible Access,突显出Arm强化其提升半导体合作伙伴灵活性与差异性的承诺,支持它们拥抱ML、AI、自动驾驶、5G与IoT等全新边缘计算的机会。为了进一步强化这个承诺,Custom Instructions 在未来的Arm Cortex-M CPU上,将变成标准功能。Arm Cortex-M CPU是Arm历来最成功的CPU之一,Arm的半导体合作伙伴迄今已经出货超过500亿颗基于Cortex-M的芯片。

 

合作伙伴引言:

 

IAR 系统公司总裁兼首席执行官Stefan Skarin表示:“SoC厂商经常需要经过优化的工具以延展他们设计的能力,并且不会在安全性、防护性上打折扣,或危及他们在IAR Embedded Workbench等既有开发工具上的投资。Arm Custom Instructions为他们提供了一个简单却强大的机制,得以应对他们独特的需求,同时保有既有流程的完整性与效率。”

 

恩智浦半导体微控制器部门资深副总裁兼总经理Geoff Lees表示:“Arm全新的Custom Instructions功能让诸如恩智浦半导体等芯片供应商,得以向其客户提供全新程度的特定应用指令集优化,以便为全新与新兴的嵌入式应用提升性能、功率耗散以及静态代码尺寸。此外,所有的这些改良都可以在广阔的Cortex-M生态系统中达成,让客户得以将他们既有的软件投资最大化。”

 

Silicon Labs首席技术官Alessandro Piovaccari表示:“在一个拥有一兆个安全联网设备的世界中,由于对功耗效率要求极高的设备愈来愈多,对半导体设计人员提出许多的挑战。在Cortex-M产品组合上推出的ArmCustom Instructions,将让Silicon Labs得以为各式各样的联网设备,设计出针对特定任务进行了特别优化的系统。”

 

意法半导体微控制器部门总经理Ricardo De Sa Earp表示:“意法半导体基于Arm架构的STM32微控制器,目前已经成为工业、消费与医疗市场数百万个智能对象的核心。针对更高性能、更高功效与安全性持续不断的需求,我们的设计方式需要进化,以便让硬件一开始就与软件一起进行设计。未来的Armv8-M核心有了Arm Custom Instructions后,Arm将让硬件/软件共同设计得以实现。我们的客户利用STM32硬件、软件与工具生态系统设计下一代IoT设备时,意法半导体也将能带来更多的差异性与价值,包括优化的安全性与核心层级的信号处理等功能。”

[1] [2]
关键字:Arm  IoT  指令集 引用地址:Arm开放指令集,对今后的IoT发展意味着什么?

上一篇:平头哥布自研芯片含光800真的能以一敌十?
下一篇:什么是DNN?它对AI发展意味着什么

推荐阅读最新更新时间:2024-11-12 18:22

基于物联网的远程温湿度监测系统(3)机智云代码移植
前言 本项目主要通过使用STM32F103C8T6作为主控MCU,ESP8266作为数据透传模块,接入机智云AIoT云平台,通过在线智能产品,实现了远程联网、温湿度监测、APP控制等功能。 上文介绍了“创建云端产品,烧录Gagent”,“DHT11驱动的编写”。本文主要介绍,机智云代码工程移植、采集数据上发、控制数据下拉、配置入网。 机智云代码工程移植 前面我们有说到,在机智云平台创建产品完成后,生成了一个 MCU 的工程,这个工程是 CubeMX 所创建的,为了保持一致性,我们选择使用 HAL 库进行开发。 1、创建一个新的 CubeMX 工程。 芯片选型为:STM32F103RCTx 2、配置相关外设 2.1
[单片机]
基于<font color='red'>物联网</font>的远程温湿度监测系统(3)机智云代码移植
ARM中的ldr指令发现有些网友说的是错的啊
ARM是RISC结构,数据从内存到CPU之间的移动只能通过L/S指令来完成,也就是ldr/str指令。比如想把数据从内存中某处读取到寄存器中,只能使用ldr比如: ldr r0, 0x12345678 就是把0x12345678这个地址中的值存放到r0中。而mov不能实现这个功能,mov只能在寄存器之间移动数据,或者把立即数移动到寄存器中,这个和x86这种CISC架构的芯片区别最大的地方。x86中没有ldr这种指令,因为x86的mov指令可以将数据从内存中移动到寄存器中。 另外还有一个就是ldr伪指令,虽然ldr伪指令和ARM的ldr指令很像,但是作用不太一样。ldr伪指令可以在立即数前加上=,以表示把一个值(一
[单片机]
jz2440裸机开发与分析:ARM芯片时钟体系2
目标:由上节可知,要想得到FCLK = 400MHz,HCLK = 100MHz,PCLK = 50MHz的时钟需要配置两个寄存器,分别为MPLLCON和CLKDIVN 第一步:先对LOCKTIME初始化 /* LOCKTIME(0x4C000000) = 0xFFFFFFFF */ ldr r0,=0x4C000000 ldr r1,=0xFFFFFFFF str r1, 第二步:对MPLL进行配置,配置为400MHz 由以上公式可以推断: MPLL = (2*(92+8)*12)/((1+2)*2^1) =400 m = 92+8 p=1+2 s=1 再配置也需注意 所以MPLL配置过
[单片机]
jz2440裸机开发与分析:<font color='red'>ARM</font>芯片时钟体系2
ARM学习笔记12——GNU ARM汇编伪操作
1、.section   1.1、语法格式      .section section_name ]]   1.2、作用     定义一个段,每一个段以段名为开始,以下一个段名或者文件结尾为结束。     ELF格式允许的段标志: a:可分配                w:可写段                x:执行段   1.3、举例 .section .mysection   @自定义数据段,段名为“.mysection” 2、预定义段 .text、.data、.bss   2.1、语法格式   .text{subsection} .data{subsection}   
[单片机]
ARM920T看门狗定时器、系统时钟
看门狗定时器 原理:看门狗每隔一定时间【假设为3小时】就会饿,每次饿时都会叫,如果你不想让它叫,只要保证每隔3小时喂一次狗就可以。 递减计数器为0时会自动重启控制器。 用途: 1.用于解决远程控制器在出现电磁干扰、噪声、系统错误等外界条件造成的系统死机等不正常运行问题。 2.可以通过设置产生定时的中断信号。 结论: 1.设置WTCON 设置看门狗定时器的使能; 2.设置WTCON 和 位来设置看门狗控制器的工作频率。 3.设置WTCON 和WTCON 使能产生中断和复位信号。 4.设置WTDAT设置计数值。 --------------------------------------------------------------
[单片机]
基于ARM的智能家居路由系统
前言   智能家居,或称智能住宅,在英文中常用Smart Home。智能家居是以住宅为平台,兼备建筑、网络通信、信息家电、设备自动化,集系统、结构、服务、管理为一体的高效、舒适、安全、便利、环保的居住环境。智能家居可以定义为一个过程或者一个系统。它利用先进的计算机技术、网络通讯技术、综合布线技术、将与家居生活有关的各种子系统,有机地结合在一起,通过统筹管理,让家居生活更加舒适、安全、有效。   在智能家居中,有一个重要系统就是家庭网络,它是在家庭或者小区范围内,将PC、家电、安全系统、照明系统和广域网相连接的一种新技术。当前在家庭网络所采用的连接技术可以分为“有线”和“无线”两大类。有线方案主要包括:双绞线或同轴电缆连接、电话线连
[模拟电子]
ARM中的---汇编指令
一. 带点的(一般都是ARM GNU伪汇编指令) 1. .text 、 .data 、 .bss 依次表示的是“以下是代码段”, “以下是初始化数据段”, “以下是未初始化数据段”。 2. .global 定义一个全局符号,通常是为ld使用。比如经常看到的 .global _start 3. .ascii 、 .byte 、 .short 、 .int 、 .long 、 .word 、 .quad 定义一个字符串,并为它分配空间 定义一个字节,并为它分配空间,占单字节,0x34 定义一个短整型,并为它分配空间,占双字节,0x1234 定义一个整型,并为它分配空间,占四字节,0x12345678 定义一个长整型,并为
[单片机]
<font color='red'>ARM</font>中的---汇编指令
艾睿电子与凌华和微软合作,加快部署工业物联网解决方案
凌华(ADLINK)的机器状态边缘监测平台结合艾睿电子(Arrow Electronics)和Microsoft Azure IoT Central的软硬件结合,实现了全新的机器状态监测平台。 Arrow日前宣布与ADLINK和微软合作推出物联网解决方案,通过实现机器状态监控,帮助工业客户减少代价高昂的计划外停产。 该解决方案是Arrow的物联网聚合计划的最新成果,目前,Arrow正努力帮助工业界完成快速,安全,经济地部署和扩展。ADLINK针对机器状态监测的Edge IoT解决方案包括集成的边缘硬件和实时数据流软件,专为数据采集和振动测量应用而设计,可为旋转机械和设备提供连续的振动监测。 该解决方案将数据采集,振动分析算法,计算
[工业控制]
艾睿电子与凌华和微软合作,加快部署工业<font color='red'>物联网</font>解决方案
小广播
最新物联网文章
换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved