低功耗AI芯片的竞争 |
作者:小编 发布时间:2023-02-10 |
随着物联网和下一代智能设备的普及,低功耗电子设备和芯片正在越来越多地进入千家万户,低功耗设计也在变得越来越重要。物联网和智能设备一方面对于设备尺寸有限制,另一方面对于成本也有很高的需求,此外在一些使用场景中对于电池的更换和充电周期有需求(例如需要每个月或更长的电池更换周期),因此对于电池的容量有很高的限制,这要求芯片能使用低功耗设计。 传感器计算:低功耗AI的重要技术路径 在智能设备和物联网应用中的低功耗人工智能需要把功耗降到非常低,从而能实现实时在线(always-on)的人工智能服务。这里所谓的always-on,指的就是人工智能需要永远可用,而不需要用户主动打开后才工作。这一方面需要相关的传感器要一直打开从而实时检测相关模态的信号,另一方面也需要人工智能能做到低功耗。 传统设计中,传感器的功能就是负责高性能信号采集,并且把采集到的信号传输到处理器(SoC或者MCU)上去做进一步计算和处理,而传感器本身并没有计算能力。然而,传统设计的假设是传感器在打开时相关的处理器就要同时打开,而这并不能满足always-on AI的需求,因为SoC和MCU如果一直在运行AI算法的话对于电池的消耗很大。另一方面,从实际角度来看,这类always-on人工智能应用主要是希望人工智能一直运行从而一旦重要的相关事件发生时可以实时响应(例如IMU检测到用户在开车则把智能设备的推送通知关掉等),但是事实上这类相关事件的发生频率并不会很高,如果一直把SoC或者MCU的人工智能模块打开,绝大多数时候AI模型的输出都是“未检测到事件”。 结合这两点,运行在传感器端的计算就在变得越来越得到重视。首先,在always-on的低功耗人工智能中,无论如何传感器是需要一直打开的,因此如果传感器能有人工智能计算能力,那么可以让人工智能模型运行在传感器端,而无需一直打开SoC或者MCU上面的人工智能模块。另外,在传感器端运行人工智能也可以避免传感器和SoC/MCU之间一直传输数据,从而进一步降低功耗。最后,在传感器端的人工智能模块可以做到为传感器量身定制而无需考虑通用性,因此可以为最适合传感器的人工智能算法做定制化优化,从而实现非常高的能效比。 当然,传感器端的人工智能也有其自己的局限。一方面从性能和成本上来说,通常传感器端的计算和存储空间都较小,人工智能模块无法做到支持大模型,因此模型的性能会比较有限。另一方面,如前所述传感器端的人工智能也很难做到支持通用模型,而往往只会支持一些特定的算子和模型结构。 综上所述,传感器端的人工智能可以做到低功耗,但是其模型性能也较为有限;但是另一方面低功耗人工智能场景中,真正需要处理的相关事件的发生频率也并不高。结合这两点,传感器端人工智能最适合运行一些较为专用的小模型,用于过滤掉绝大多数的无关事件;而在传感器端人工智能检测到相关事件后,传感器可以唤醒SoC或MCU上的人工智能进行下一步的确认,从而同时满足低功耗和always-on的需求。 在图像传感器领域,Sony已经推出了IMX500系列传感器,其中把传感器芯片和集成了人工智能计算能力的逻辑芯片做了堆叠,从而可以把像素信号传输给逻辑芯片上的人工智能计算引擎,从而传感器的输出可以是图像,可以是人工智能模型的输出,或者是两者的结合。这样一来,就可以让传感器运行在低功耗always-on状态,而仅仅当其模型输出符合某些特定条件(例如检测到人脸)时才去唤醒MCU或者SoC做下一步动作。我们预计,Sony将会在接下来的传感器芯片中进一步加强其人工智能能力,从而增强在这个领域的领先地位。
传感器和人工智能结合的另一个例子是ST推出的IMU系列产品。ST在拥有相关人工智能特性的IMU中集成了机器学习核(Machine Learning Core)和有限状态机(Finite State Machine),从而可以用非常高效的方式支持IMU上直接进行人工智能计算。ST目前支持的人工智能算法主要是决策树算法,并且可以支持IMU信号的一些重要特征提取(例如信号幅度,信号方差等),从而能在IMU上直接实现用户活动分类(例如静止,行走,骑车,驾驶汽车等等分类),这样能在检测到相关事件时唤醒MCU/SoC进行下一步操作。根据ST公布的资料,MLC的功耗仅仅在微瓦数量级,从而能很好地支持always-on需求。当然,另一方面我们也看到决策树算法事实上的能力有限,难以对于复杂的活动进行建模,因此如同我们之前讨论的,这里的IMU传感器内人工智能适合完成事件的初筛来过滤掉无关事件,而更复杂的分类和确认可以通过运行在MCU或者SoC上的模型来完成。
低功耗人工智能MCU 本文内容转载自:互联网,版权归原作者所有,如有侵权请及时联系删除。
|