导语:ARM的野心,把内核统一了,现在想要借助物联网的东风来统一软件,太“霸气外露”了!
虽然此次ARM 2014 智能嵌入式开发应用研讨会的主题是物联网,但是给记者印象最深刻的既不是物联网,也不是ARM引以为傲的Cortex-M核,而是ARM的软件平台。为什么呢?还是要先从物联网的盈利模式说起。
图1 ARM高级嵌入式技术专家Joseph Yiu演讲
探索硬件在物联网中的价值
从1999年MIT提出IoT(物联网)到现在,IoT发展到什么程度?到底谁从中获利了呢?飞思卡尔亚区市场及业务拓展总监Edward Tsau的一席话,让我对于物联网的盈利模式有些清晰了,也更加为处理器厂商担忧。Edward说他在之前与一些行业大佬们的交流中了解到,未来硬件产品是送的或者以成本价格卖给用户。未来物联网的收入有两大方面:数据和服务。硬件只是一个媒介,通过把服务给用户而得到数据。我们现在也已经能够从国内外互联网巨头的行业动作中看出端倪。
那么硬件的“价值”是什么?1~2块对客户没有帮助,决定因素不再是低成本和低功耗,而是给客户一个完整的平台来获得服务和数据。物理网生态系统的各个成员都应该思考如何让客户以最低成本增加服务。
野心:统一软件让差异化何去何从?
在微控制器领域,ARM核已经基本上“统一江山”了,业内普遍认为ARM会继续保持它的内核统一战略,并且进一步向高端应用挺进。让记者没有想到的是,ARM的野心不再局限于在内核领域“指点江山”,而是想借助CMSIS把“统一”目标扩大到软件领域,恐怕这也是那些与ARM有紧密合作的处理器厂商始料未及的。
在内核逐渐统一以后,很多处理器厂商的卖点从内核转到了软件,他们希望用软件帮助用户做出差异化产品并提高效率。因此,处理器厂商们对于软件的投资也是越来越大,并且卓有成效。就在他们还满足于ARM核配合其独特的软件所带来的效益时,危机已经到来了。商场如战场,虽然现在一直保持“合作”的形式,但是处理器厂商们也曾经以ARM为竞争对手,后来不得不妥协。如果最后连软件也被ARM牵着鼻子走,他们如何去做差异化呢?我想留给处理器厂商们思考和作出决定的时间并不多。
当然到底CMSIS有没有实力呢?肯定有人会质疑它,我想就跟当时Cortex-M核一样,在质疑声中占领市场可能是ARM的强项。
用CMSIS扩大用户群
要提升硬件价值,特别是在物联网应用中的价值,扩大用户群是必须的。目前,智能手环、手表、智能插座等物联网初期终端产品众多,但功能相对单一,不知道如何拓展。ARM中国区现场应用工程师章政表示:如果这种现象一直维持下去,那么终端用户群太窄,APP也少。在MCU领域,市场千变万化,MCU厂商为不同客户提供不同的板级支持包(BSP),缺乏把一个OS做得非常完善的软件。例如,飞思卡尔、TI有不同的开发工具,但是考虑到厂商开发软件和维护成本高,软件学习昂贵,大厂商可能还可以得到定制化的软件服务,对于小厂商而言,开发环境就不那么乐观了。ARM提出的Cortex微控制器软件接口标准 (CMSIS) 弥补了不同操作系统的差异性,因为CMSIS上层API是一样的,让人们在不同操作系统之间调用、迁徙。可以用Keil、DS-5工具来承载CMSIS标准。总之,ARM的目的就是用CMSIS扩大芯片、应用和中间件的用户群。
ARM CMSIS是 Cortex-M 处理器系列的与供应商无关的硬件抽象层。CMSIS 可实现与处理器和外设之间的一致且简单的软件接口,从而简化软件的重用,缩短微控制器开发人员新手的学习过程,并缩短新设备的上市时间。软件的创建是嵌入式产品行业的一个主要成本因素。通过跨所有 Cortex-M 芯片供应商产品将软件接口标准化(尤其是在创建新项目或将现有软件迁移到新设备时),可以大大降低成本。CMSIS 已与多个主要芯片和软件供应商建立了密切关系。值得一提的是,ARM还提供FPGA级 Cortex-M Prototyping System (原型系统),早期RTL设计时就能调试。
图2 CMSIS与MCU及上层API关系架构图
CMSIS 包含以下组件:
CMSIS-CORE:提供与 Cortex-M0、Cortex-M3、Cortex-M4、SC000 和 SC300 处理器与外围寄存器之间的接口;
CMSIS-DSP:包含以定点(分数 q7、q15、q31)和单精度浮点(32 位)实现的 60 多种函数的 DSP 库;
CMSIS-RTOS API:用于线程控制、资源和时间管理的实时操作系统的标准化编程接口;
CMSIS-SVD:包含完整微控制器系统(包括外设)的程序员视图的系统视图描述 XML 文件。
低功耗大管家
物联网终端产品最大的诉求莫过于低功耗。ARM高级嵌入式技术专家Joseph Yiu 从各个层面解释了Cortex-M核低功耗原理。低功耗取决于物理IP的选择、智能系统设计及处理器选择(程序执行效率、程序密度、智能电源管理)。而处理器功耗最大的消耗来自模拟和接口部分、通信以及存储系统。Cortex-M处理器低功耗秘诀是:小的芯片面积、Artisan物理IP、睡眠模式的低功耗特征、唤醒中断控制器、程序执行的高效、高代码密度和存取优化。
抢食物联网的“大饼”
去年,ARM收购了芬兰物联网软件开发商Sensinode,这也是ARM公司历史第二笔收购,同时,ARM也新成立了IoT事业部门,正式揭开了ARM在物联网领域启航的序幕。 ARM在物联网中的定位是ARM核横跨在传感器和服务器之间,从网络应用到IoT节点,从连接设备到云端。ARM MBED平台(一个开放的在线工具)、Sensinode NanoMesh和Sensinode NanoService(一个端到端的解决方案)是物联网体系中理想的模块,如图3所示。
图3 ARM产品物联网方案
每个产业都有自己的标准,物联网牵涉的东西太多,统一标准不太实际,大家应该共同开发一个开源平台,包括ARM在内的很多公司都在推动这件事情。物联网这个饼太大了,不是一家能吃得下的。应该有人做先锋,不管是不是竞争对手,都可以来做开放平台。例如飞思卡尔和Nest(谷歌花了32亿收购Nest)一起推动的Thread,它是一种基于简化版IPv6的网状网络协议,旨在实现家庭中各种产品间的互联,以及与互联网和云的连接。
过去说RFID、无线传感网、M2M,各自在小领域应用,今天物联网没有大众化,因为大家都在做案例,没有做产品。物联网要达到500亿节点,必须大众化、产品化,这是任重道远的事情。