【方辉专栏】ARM 虚拟硬件加速物联网软件开发
发布时间:2022-07-11

arm架构是智能手机的基石,同时arm架构也是智能物联网及嵌入式的基石。目前基于ARM机构的芯片在2021年已经超过290亿颗,累计出货量超过2250亿颗。


目前物联网设备开发存在的问题:

1.由于物联网的碎片化,模块复用率低,产品设计流程冗长缓慢,要将最新的技术落地到产品中要花费3-5年,甚至更久。

2.由于嵌入式软件开发沿袭几十年一成不变的开发方式,与硬件强绑定,造成软件开发效率相对低下。

3.由于硬件限制缺乏规模化,导致软件和应用开发投入产出比低。


但在移动互联网领域,却存在500万个手机APP,数千种手机型号。试想一下,如果每一个APP开发都需要在数千手机型号上进行适配和测试,那么我们的应用商店里只会有500个APP而不是500万个。



Arm 生态计划颠覆物联网开发,将软硬件解耦,实现接口标准化,提升物联网设备系统开发的效率和速度。Arm虚拟硬件使物联网软件和应用的开发者可以通过无处不在的云环境,在抽象的设备仿真模型上与硬件开发并行。


Arm物联网全面解决方案,通过虚拟硬件将物联网设备的抽象功能、仿真模型通过云交付到数百万的嵌入式开发者。


为什么Arm虚拟硬件(AVH)是IOT开发的理想平台和未来趋势。


当IOT迈入智能IOT的新时代,对开发者来说一个问题变得越来越重要,智能IOT需要怎样新的开发范式?答案是云原生(Cloud-Native)开发范式。


传统开发,首先考虑应用的开发,然后再考虑编译和部署环境的问题。面对当今智能IOT传统流程越来越难以为继。一方面应用软件的更新升级频率越来越快,特别是当IOT引入人工智能和机器学习之后,软件更新可能是以天来计的;另一方面随着IOT应用规模的扩大,开发和部署环境也越来越复杂多变。


云原生开发范式将这样因素都考虑在内,包括模型训练,OTA更新,数据采集,设备管理等等。云原生开发使得开发者在动态多变的云环境中自如的进行研发。主要是解决了以下几个痛点:

1.强健的自动化集成和测试技术,使得开发者能够非常频繁的更新代码,并且让冗余的工作量小化。

2.DevOps/MLOps及使得软件开发充分自动化。并且可以让数据工程师能够独立的调试和更新模型,不需要软件工程师进行手动集成。

3.云原生技术提供了从云到端的全生命周期的解决方案。

3.1 和单纯的云应用不同,IOT应用不能简单的部署在虚拟机上,必须是跟着硬件绑定的。硬件带来的困难是,一很难扩展,IOT板子尽管一般都比较便宜,但为一个大的开发团队搭建并管理大量开发板依然会很昂贵,还需要相应的工程师。当想要提升集成和测试的频率,硬件的搭建和维护一定会称为瓶颈。

3.2采购也会成为问题,特别是当芯片缺货,或者是想在新的处理器上进行测试但芯片还买不到的时候.

3.3在硬件上复现某些特殊的条件和临界状况会比较困难。比如传感器的临界值或者时断时续的网络连接。



ARM 虚拟硬件的优势

1. 很容易部署在云上,并进行扩展。

2. 利用云的高可扩展性,很容易的创建几十,几百甚至上千个实例。进行不同的配置,从而摆脱对实体硬件的依赖。

3. 利用ARM虚拟硬件可以将原来串行的工作流程,并行执行。例如,当您想对一个软件在多种不同的部署环境中进行回归测试的时候,不需要将软件一个个烧录到实体硬件中,而可以在多个ARM虚拟硬件实例上同时进行测试。

4. 很容易的进行临界值的模拟。

5. 不用担心芯片或者某些器件买不到而导致整体进度推迟。


目前ARM虚拟硬件支持Cortex-M处理器和ST /NXP及树莓派等第三方硬件。Arm 虚拟硬件在KEIL MDK开发环境中得到支持。

ARM虚拟硬件目前已经在中国落地。


更多嵌入式咨询,请关注“凯发k8一触即发电子”公众号。