MCU,要掀起AI革命了?

发布者:EEWorld资讯最新更新时间:2023-10-26 来源: EEWORLD作者: 王兆楠、付斌关键字:IAR  TinyML 手机看文章 扫描二维码
随时随地手机看文章

昨日,嵌入式界发生了一件大新闻,IAR宣布与Edge Impulse联手为全球客户提供AI与ML整合功能。 


可能,很多人对于这个新闻没什么认知。要知道,Keil和IAR作为嵌入式/单片机开发双雄,IAR在全球拥有超过15万开发人员和4.6万家公司,Edge Impulse这家公司的业务,则是MCU巨头纷纷向往的TinyML。


两家联手,意味着,嵌入式领域,即将掀起一场AI革命。想象一下,未来你所使用的咖啡机,都会使用嵌入式视觉和AI,来帮助制作完美的咖啡。


王兆楠、付斌丨作者

电子工程世界(ID:EEworldbbs)丨出品


MCU未来十年市场,靠TinyML 


Edge Impluse这家公司的名号很多人都听说过,但可能很少深入了解过。这家公司以TinyML(Tiny Machine Learning)为服务,于2019年成立,创始人Zach Shelby和Jan Jongboom都来自Arm,致力于提供最新的机器学习工具,使所有企业都能打造更智能的边缘产品。


Edge Impulse解决方案被广泛应用于健康穿戴设备制造商如Oura、Know Labs和NOWATCH,工业组织如NASA,以及顶尖的芯片供应商,受到超过80000名开发人员的采用,并已成为企业和开发人员信赖的平台。


那么微型机器学习 (TinyML) 是什么?


TinyML是近几年新兴的一个领域,专注于开发可在低功耗、内存受限的设备上运行的算法和模型。TinyML并非单一的具体技术,而是一个概括词,凡能在微控制器(MCU)芯片上实现AI/ML推论工作的,都算是TinyML。


用人话讲,就是用在边缘上的人工智能/机器学习(AI/ML),是比较轻量和很小的AI/ML。举个例子,TinyML涉及的微控制器体积小且能效高,换一次电池能供电很多年,同时这个方案也非常便宜。


为什么要这样做,为什么非TinyML不可?


数据中心功耗和负载已经发展得很可怕了,加之物联网兴起,不可能每做一次任务,就要问一次服务器怎么做,每个点的设备总归是要有自己的想法。所以TinyML就是把AI应用带到边缘设备(如智能手机、可穿戴、汽车和物联网设备等)上的关键。


AI让边缘更智能,边缘让AI无处不在,不难预见,未来十年,TinyML会是MCU最大市场最大的推动力。


厂商近几年结论,便印证上了上述结论MCU界“六大天王”ST、NXP、Microchip、Renesas、TI、Infineon都在加大布局边缘AI:


  1. ST在2019年发布STM32Cube.AI工具,并在2021年收购NanoEdge AI Studio,降低边缘AI开发门槛,在今年使用NVIDIA TAO 工具套件拓展STM32边缘AI生态;

  2. NXP在2018年就推出机器学习软件eIQ®机器学习(ML)软件,并不断加大在AI/ML上的投入;

  3. Microchip在2020年就将Cartesiam(现已被ST收购)、Edge Impulse和Motion Gestures的软件和解决方案接口引入其设计环境;

  4. Renesas在2022年完成对美国从事机器学习模型开发的初创企业Reality AI(以TinyML为业务)的收购;

  5. TI最近几年推出的MCU均在边缘AI领域具有优势,包括高集成可扩展的边缘AI处理器组合;

  6. Infineon今年5月收购瑞典的TinyML和AutoML领域初创公司Imagimob AB。


无独有偶,Gartner也在报告中指出,在2到5年内,具有AI能力将会成为嵌入式产品的标配。 


image.png


Edge Impulse能给IAR带来什么 


Edge Impulse并非唯一的TinyML软件方案商,但相比来说,它拥有比较直观易用的Web界面,说白了,就是开个网页就能用,最重要的是,它对开发人员免费。


值得一提的是,Edge Impulse的特点是具有边缘优化神经(EdgeOptimised Neural, EON)编译程序。根据其官方网站介绍,以该编译程序编译出来的神经网络推论模型,与TFLite Micro相比,可以少使用25~55%的RAM内存与少使用35%的储存空间。


另外Edge Impulse也在其官方Blog上发表技术实证专文,运用他们的数字信号处理区块(DSP Block)来对声音进行推论前的前置处理,可以更快完成推论、更精准推论,以鸟叫声辨识为例,速度快48%,精准度增7%。


Edge Impulse目前支持13款开发板,包括OpenMV H7 、Arduino Nano 33 BLE、ST loT探索套件等,支持的设备可以在几分钟内轻松记录和上传数据集。


虽然打开网页就能使用Edge Impulse,但这一定没有植入到软件中更加易用。


当IAR与Edge Impulse联手,用户随时可以生成经过优化的C/C++代码,并轻松地将其集成到嵌入式应用程序中。这种无缝的Edge Impulse平台与IAR Embedded Workbench的整合将帮助工程师节省时间,缩短产品上市周期,同时提升机器学习工作流程的代码性能。


根据IAR官方介绍,通过这一崭新的商业伙伴合作,全球数百万使用IAR Embedded Workbench的用户将在2023年第四季度获得Edge Impulse的高级附加功能选项,首批解决方案将首发给IAR现有的Arm架构客户。


image.png


IAR,还在变强 


细心的工程师一定会发现,最近几年,IAR越来越好用了。对应的,IAR也频繁出现大动作,包括:logo大改版、网站支持中文、悄悄升级IAR开发工具。


虽然在工程界,编译器拥有多种流派选择,但IAR Embedded Workbench被认为是业内最佳的编译器和调试器工具链之一。可以确信的是:IAR Embedded Workbench可使代码体积更小、更快更智能,同时确保稳健性、安全性、防护能力和高质量,从而满足用户的高标准要求。 


IAR Embedded Workbench有20多种不同的版本,以匹配支持不同类型的处理器。还支持超过14000种器件,包括中国MCU和SoC供应商的产品。在与Arm合作之外,IAR一直在与RISC-V等其他架构合作。我们与IP和工具供应商(比如Codasip)合作以进行定制化处理器设计。


而且,IAR本身,也是拥有AI功能的。最新版本的状态机设计解决方案IAR Visual State增加了对Windows和Linux的跨平台支持,并支持自动生成C、C++、C#或Java代码。


同时,IAR还积极与中国本地厂商合作,共同构建嵌入式领域的生态系统。只今年上半年就先后与国民技术、先楫半导体、兆易创新等多家厂商达成合作。


  1. 6月13日,IAR发布集成开发环境IAR Embedded Workbench for Arm9.40版,已全面支持国民技术N32系列产品,其中包括基于M4内核的N32G452、N32G455、N32G457、N32G4FR、N32WB452、N32G432、N32G435、N32L436、N32L406、N32G43x、N32G40x系列MCU和N32A455系列车规MCU,以及基于M0内核的N32G031、N32G032、N32G003系列MCU,方便全球客户基于N32进行产品开发;

  2. 6月14日,IAR与国产领先高性能MCU厂商先楫半导体(HPMicro)共同宣布达成战略合作协议:IAR最新的Embedded Workbench for RISC-V版本将全面支持先楫HPM6000高性能RISC-V MCU系列,这是IAR首次支持高性能通用RISC-V MCU产品系列;

  3. 7月13日,IAR与业界领先的半导体器件供应商兆易创新(GigaDevice)联合宣布,最新发布的IAR Embedded Workbench for Arm 9.40版本已全面支持兆易创新基于Arm® Cortex®-M7内核的超高性能MCU微控制器——GD32H737/757/759系列,为开发人员提供高效的工具链;

  4. 7月26日,IAR宣布与国内专业RISC-V处理器IP及解决方案公司芯来科技达成战略合作:经 TÜV SÜD 认证的IAR Embedded Workbench for RISC-V功能安全版将全面支持芯来科技NA系列车规级处理器内核;

  5. 10月11日,IAR与普冉半导体宣布达成合作,全面支持普冉半导体32位Arm® Cortex® - M0+/M4系列微控制器;

  6. 10月18日,IAR宣布与中科芯达成生态合作,全面支持其CKS32系列MCU的应用开发。


当AI飞临,就连IAR这样的工具链企业都加入到了战争之中,可见AI革命已经渐深,当边缘设备都具备了AI,我们的生活或许又会发生翻天覆地的新改变。


参考文献

[1] IAR爱亚系统:全新合作联盟:IAR与Edge Impulse联手为全球客户提供AI与ML整合功能.2023.10.26.https://mp.weixin.qq.com/s/0qrToqFVcX8tsfJVmSt-VA

[2] 柴火创客空间:人工智能的下一轮革命?关于TinyML的一切.2022.3.3.https://mp.weixin.qq.com/s/k2f20Ob8ZUu6NmN9ALduCQ

[3] strongerHuang:IAR支持中文了,keil还会远吗?.2023.7.4.https://mp.weixin.qq.com/s/z8mfxGD0lDWTOyUJUu2WbQ

[4] 麦克泰技术:IAR支持8500多种ARM芯片!.2023.5.23.https://mp.weixin.qq.com/s/a4JYZsxs-uDrdQOZT3QnQg

[5] 嵌入式资讯精选:运用Edge Impulse实现MCU机器学习,试试吧~.2021.12.21.https://mp.weixin.qq.com/s/R7AX95bRUajizn39LP4XvQ

[6] IAR官网:https://www.iar.com/news/

[7] AI电堂:MCU巨头们都下场边缘AI了.2023.7.18.https://mp.weixin.qq.com/s/ToTgg9s-c3w4LGEa_LQydg

关键字:IAR  TinyML 引用地址:MCU,要掀起AI革命了?

上一篇:RISC-V 领军企业 SiFive 大裁员:20% 员工被裁,大部分是工程师
下一篇:开放原子校源行走进西部,加速开源人才培养

推荐阅读最新更新时间:2024-11-13 10:22

iar 堆栈设置_IAR MSP430设置合理堆栈大小
最近在MSP430-169LCD(MSP430F169,RAM为2KB)调试一些ucos演示例子,IAR for MSP430默认的堆栈大小是80字节,编译可以通过,运行结果不确定性,调试过程会提示 the stack pointer for stack is outside the stack range ,堆栈溢出。那么,到底设置多大的堆栈够用且不浪费呢。 一、合理设置堆栈大小 首先,查看程序共需要多大的堆栈,生成map文件,方法如下: 图1 生成map文件 生成的map文件在项目目录下的/Debug/List,打开map文件在CALL GRAPH找到找到栈的最大使用量(我的理解是main主函数,用栈最多,所以直
[单片机]
<font color='red'>iar</font> 堆栈设置_<font color='red'>IAR</font> MSP430设置合理堆栈大小
IAR EW430连接仿真器在线仿真
简介: 1,MSP430仿真器和430核心板接线说明 2,仿真调试 3,常用调试命令 硬件连接 (a)首先连接MSP430F149单片机核心板与JTAG线缆 b)接下来我们连接JTAG线缆与仿真器并将USB 方口一端连接仿真器的另一端 d)接下来将USB线的另一端连接到电脑。这样我们就完成了基本的硬件连接 注意: (1) 本USB仿真器仅支持IAR高于3.21版本软件; (2) 当插入仿真器后,仿真器上的MODE指示灯,先交替亮灭,之后指示灯常亮,仿真器进入工作状态。(注意:应该在仿真器进入工作状态后,再操作IAR仿真软件,否则可能会造成仿真器连接错误) (3)若在仿真过程中仿真器MO
[单片机]
<font color='red'>IAR</font> EW430连接仿真器在线仿真
晶心科技和IAR Systems携手力助车用芯片设计领导厂商加速产品上市时程
由IAR Systems与晶心科技提供的整合了功能安全的解决方案可支持最先进的车用芯片的开发 【台湾新竹及瑞典乌普萨拉】2022年3月23日 — 32及64位高效能、低功耗RISC-V处理器核心领导供货商、RISC-V国际协会(RISC-V International)创始首席会员晶心科技及嵌入式开发软件和服务的全球领导者IAR Systems®共同宣布: 来自欧洲及亚洲的IC领导厂商已采用晶心科技RISC-V AndesCore™车用CPU内核,以及IAR Systems已获得功能安全认证的RISC-V开发工具。 这个由晶心科技及IAR Systems所提供的整合性解决方案采用了符合ISO 26262标准的健全的设计方法。用
[汽车电子]
晶心科技和<font color='red'>IAR</font> Systems携手力助车用芯片设计领导厂商加速产品上市时程
关于IAR 里面用JLINK烧写STM32程序的Target reset 错误
今天调程序调了一个通宵。错误的提示是这个, Fri Oct 21 07:18:35 2011: Target reset (没错,错误提示就是这么短,程序一烧进单片机里面,程序就跑飞了,一直没找到原因) 一直在找问题。 后来,通过一行一行地对照代码,发现几乎全部都是一样的。只是别人的程序是所有的设置都一股脑地放在一个函数里面。 而我把里面的设置分了类,然后分成几个函数,然后这几个函数再放进一个总的函数里面,这样程序比较有条理一点。 但是,这样居然就错误了。然后我也像别人一样把函数里面的东西都拿出来全部放进一个函数里面,然后就可以通过了。 我想可能是哪里有一点点不同吧,然后又认真看了很久,试了很久,还是没发现
[单片机]
关于<font color='red'>IAR</font> 里面用JLINK烧写STM32程序的Target reset 错误
MSP430 G2553LAUNCHPAD +WDT 延时或产生方波 IAR
#include msp430.h static unsigned char n=10; void main() { WDTCTL = WDT_MDLY_32; /* 32ms interval (default) */ IE1 |= WDTIE; // Enable WDT interrupt P1DIR |= 0x01; // Set P1.0 to output direction __bis_SR_register(LPM0_bits + GIE); // Enter LPM0 w/ interrupt } #pragma vect
[单片机]
IAR下载时出现的问题及解决办法!
调试过程中难免出现一些问题,许多同学也有类似的问题,现在就把可能出现的bug陆续更新吧! 1.Building configuration: as - Debug Updating build tree... Configuration is up-to-date. 重复make就是这样显示的。如果程序更改后第一次make就会出现。 Building configuration: xx - Debug Updating build tree... main.c Linking Total number of errors: 0 Total number of warnings: 0 2.Disassembly窗口内显示
[单片机]
IAR调试stm32中断偏移的奇怪现象
今天在做STM32F207 bootloader时发生了一个诡异的事情,在IAR中将我的APP函数中断偏移设置为 即偏移了64KB,前64KB用于放置bootloader程序.编译连接最后生成map,查看也没出错 然后在IAR中下载调试(在此之前还没有下载bootloader): 竟然可以找到复位函数的入口,全速运行,程序正常执行. 按照ST官网的手册一般情况下,在复位后程序,程序从地址0x00000000读取堆栈地址,0x00000004取PC指针,0x00000000地址一般情况为0x08000000的映射,, 图中1就是2的别名,他们的数据能容是相同的. 我偏移了0x0001000
[单片机]
在<font color='red'>IAR</font>调试stm32中断偏移的奇怪现象
IAR调试程序时直接跳过断点执行后面程序的解决办法
首先这个问题是IAR编译器设置的优化等级太高了,降低优化等级就可以了。 解决办法: 在options- C/C++compile---- optimization里面,有一个栏是Leval,下面有4个选项None、low、medium、high。 选择Low就可以解决上面的问题。
[单片机]
用<font color='red'>IAR</font>调试程序时直接跳过断点执行后面程序的解决办法
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
更多往期活动
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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