【导读】清晨6:30,智能手机的闹钟准时响起,提醒您该起床了。在开始工作前,只需发出语音命令,手机即会为您读出全天的会议和预约安排,同时启动咖啡机,为您准备香气四溢的咖啡。收到生日提醒后,您说“打电话给妈妈”,电话就会自动拨出,祝妈妈生日快乐。一切就是这么简单,一早的例行公事完成得井然有序,而这个过程中,您完全无需触碰手机!手机随时随地都在获取您的语音命令,处理信息。
无论是每天早晨的例行公事,还是其他点点滴滴,永远在线(Always-On)蕴含的无限潜力都能助您一臂之力,让生活更加简单便利。移动系统、可穿戴设备和许多其他物联网(IoT)应用都需要这项技术——系统中的一些计算资源永远在线,随时处理音频、视频或其他传感器数据。为了进一步增强电池供电设备的可用性,专门用于Always-On任务的计算资源应经过专门优化;而系统中的其他资源则可保持休眠,直到真正需要时再被唤醒。
毋庸置疑,新一代产品正在重新诠释我们对人机界面的理解,对比短短5年前,现在的用户体验已经变得更加丰富多彩,引人入胜。但这也给设计师带来了全新的挑战:如何在继续为客户营造愉悦体验的前提下,实现响应速度、成本和功耗之间的平衡?本文中,我们将就此问题进行探讨,并介绍如何采用“认知分层”的方法搭建Always-On架构,帮助设计师实现产品设计的最佳平衡。
设计高效节能的Always-On架构
针对特定的IoT应用,片上系统(SoC)由多种模拟器件(例如无线电、低噪声放大器(RX)、电源管理单元和集成功率放大器)及数字器件(例如处理器、数字信号处理器、片上存储器、数字基带硬件组块和丰富的传感器I/O)构成。
包括麦克风、摄像头、加速计、陀螺仪、温度计和压力计等在内的传感器是智能、互联,Always-On设备的核心。传感器对收集到的数据进行数字化处理,并将数字化信息发送到SoC进行分析和解读。
Always-On架构的开发可同时采用多项技术,降低IoT应用的功耗:
●功耗、时钟和数据门控
●传感器融合算法,用于确定设备上下文,并以此为基础实现系统功耗的智能管理
●针对开销巨大的函数进行优化,例如:
●从指令集层面减少时钟周期开销数(cycle)从而降低对频率的需求(MHz)
●在互联级架设通用片上总线旁路
●通过存储分区使流量局部化
●针对语音算法、加密等同类应用,加快通信标准和性能
除上述技术外,认知分层尤其是实现最佳功耗/性能平衡的理想方案。下面,我们将进行更详细的论述。
认知分层:主处理器任务负载卸载
认知分层将任务划分成若干层或状态,分别使用经过专门优化的引擎处理。通过将一些任务转移到经过专门优化的低功耗Always-On处理器,认知分层即可实现主处理器任务分流。图1描述了语音触发应用,每层的处理能力恰好足够支持系统此刻所需的响应速度,且不会浪费资源。采用此方法,延迟、功耗和吞吐量性能都会得到提升。
图1:认知分层可以最大限度地降低功耗
图1中最靠下的环节是低功耗噪声检测,耗能仅为毫微瓦级。从检测触发命令到识别短语,以及当前应用上下文环境下的解读,噪声检测会沿处理链向上触发一系列系统动作。这一系列动作中,后一个动作的功耗总是略高于前一个动作。使用云服务处理完整对话需要访问远程服务器及数据库,并进行交互,因此能耗最高,可以达到数瓦。
在较低层,根据特定的计算和接口要求专门设计并优化过的处理引擎,将取代低效率的通用处理器。相比通用处理器,经过专门优化的处理器在Always-On系统中的性能更高,响应延迟更短,功耗更低。
通过尽可能关闭不必要的系统,认知分层使计算层与数据来源更加接近,系统可以调用最少的活动资源完成当前任务。认知分层可以优化性能和功耗,适用于从惯性导航到计算机视觉,再到本地无线通信等多种IoT应用领域。
优秀Always-On处理器的要素
IoT应用丰富多彩,对处理能力的要求也因应用而异,“一刀切”的作法对Always-On处理器并不适用。基于上述对认知分层的阐释,小型、低功耗、高度专业化的处理器可以承担对认知功能要求较低的工作,减少占用主处理器资源,降低功耗。
例如,经过低功耗语音触发优化的数字信号处理器(DSP)不会处理高耗能的音频编解码工作,而是将之移交专为该用途设计的DSP;与之类似,经过音频编解码优化的DSP,也会将用户和网络交互的任务移交给其他为该用途设计的应用处理器。
图2:低功耗处理器为日趋复杂的信号处理保驾护航
尽管主应用处理器“可以”运行所有算法,但使用经过专门优化的处理器能让设计更加节能。在上述的语音触发示例中,指定使用低功耗Always-On DSP运行语音触发器当然也可以将之用于执行其他低功耗要求的任务,例如传感器数据处理和低分辨率图像处理。如图2所示,可穿戴设备等IoT应用需要具备超低功耗下处理复杂信号的能力。
支持Always-On应用的处理器需要具备以下要素:
●针对关键算法的低指令执行周期,高效的指令集
●执行DSP处理和控制任务的能力
●低功耗设计
●尺寸小,理想情况下可以按需配置,并可以去除冗余的逻辑设计
●按所需的功能范围扩展性能
●用于传感器数据处理的高效浮点运算
面向IoT、可穿戴设备和无线应用的灵活DSP
Cadence公司的Tensilica Fusion DSP就属于单一可扩展DSP,可以满足低功耗及Always-On功能的各项需求。Cadence Tensilica Fusion DSP使用可选择的指令集架构(ISA)扩展,加快多种无线协议和浮点运算的速度;并将增强型32位Xtensa控制处理器与DSP功能及灵活的特定算法加速相结合。作为IoT设备设计师,您可以按需选择个性化的配置,对比配置单一的“一刀切”处理器,Tensilica Fusion DSP的尺寸更小,性能更高,功耗也更低。
图3:Cadence Tensilica Fusion DSP基于Xtensa处理器,由多项可配置元件构成,适用于低功耗Always-On系统。
Tensilica Fusion DSP(图3)的可配置元件包括:
●单精度浮点单元——浮点指令与64位数据读取/写回同时发射。这对使用MATLAB或标准C代码创建算法的软件来说,开发速度可以得到加快。
●音频/语音(AVS)——与TensilicaHiFi DSP共享软件兼容性,由140余个HiFi音频/语音软件包构成的生态系统为其提供支持。
●16位Quad MAC——进一步加速低功耗蓝牙及Wi-Fi等通信标准,同时配有语音编解码器/识别算法。
●为低功耗蓝牙和Wi-Fi AES-128无线操作实现的加密提速
●先进的位处理——加快基带MAC和PHY的设计实现
●适用于高速缓存和/或不同容量的本地内存的、灵活的内存架构
总结
Always-On技术在生活中的运用越来越广泛。设计出成功的Always-On产品充满挑战,特别是如何找到响应速度、成本和功耗的平衡点。
采用认知分层,同时使用可配置的低功耗Always-On DSP,能助您找到这一平衡点。通过将Always-On功能分配给低功耗处理器,系统的主处理器则可以将资源用于处理更复杂的任务,从而优化设计,在不牺牲性能及功能性的前提下,消耗最小的能源执行任务处理。
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理。